* gravity lesson

* Few more edits, not done, gotta go eat

* missing radio package
This commit is contained in:
Peli de Halleux 2018-02-16 07:04:34 -08:00 коммит произвёл GitHub
Родитель 2f6e8bef3c
Коммит 9cdf0078a7
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
11 изменённых файлов: 261 добавлений и 0 удалений

Просмотреть файл

@ -139,6 +139,10 @@
* [Overview](/courses/ucp-science/electricity/overview)
* [Setup and procedure](/courses/ucp-science/electricity/setup-procedure)
* [Resources](/courses/ucp-science/electricity/resources)
* [Gravity, Motion and Waves](/courses/ucp-science/gravity)
* [Overview](/courses/ucp-science/gravity/overview)
* [Setup and procedure](/courses/ucp-science/gravity/setup-procedure)
* [Resources](/courses/ucp-science/gravity/resources)
## #reference

Просмотреть файл

@ -18,6 +18,7 @@ The lesson series includes:
* [Population Trait Data Counter](/courses/ucp-science/population)
* Temperature Data
* Soil Moisture Tester
* [Gravity, Motion and Waves](/courses/ucp-science/gravity)
* Body Electrical & Waves
* Magnetic Forces
* [Electricity - Battery Tester](/courses/ucp-science/electricity)

Просмотреть файл

@ -0,0 +1,18 @@
# Gravity, Motion, and Waves
![earthquake data](/static/courses/ucp-science/gravity/earthquake.png)
Give students real world experience with coding, collecting data, analyzing data, and reporting results using [MakeCode for micro:bit Windows App](https://www.microsoft.com/store/productId/9PJC7SV48LCX) and a microbit with its sensors.
## Contents
* [Overview](/courses/ucp-science/gravity/overview)
* [Setup and procedure](/courses/ucp-science/gravity/setup-procedure)
* [Resources](/courses/ucp-science/gravity/resources)
<br/>
| | | |
|-|-|-|
| Adapted from "[Gravity, Motion, and Waves](https://drive.google.com/open?id=1Z8S-W3n1jX6drC8ALj8Wh1Rjc0CyP0Afs3acnIjDYes)" by [C Lyman](http://utahcoding.org) | | [![CC BY-NC-SA](https://licensebuttons.net/l/by-nc-sa/4.0/80x15.png)](https://creativecommons.org/licenses/by-nc-sa/4.0/) |

Просмотреть файл

@ -0,0 +1,45 @@
# Overview
## Science Concept
### Gravity and Inertia
Develop and use a model to describe the role of gravity and inertia in orbital motions of objects
in our solar system. As you read, focus on systems, an organized group of related objects. In this
section, it is important to examine how the objects in our solar system are affected by gravity and inertia.Most of the objects that are part of our solar system are constantly orbiting the Sun, the
star of our solar system. Mass is a measure of the amount of matter in an object. Everything that has mass also has gravity. Gravity is the attraction of one particle or body to another. You have gravity. Your pencil has gravity. Larger masses have a stronger gravitational force, or the measurement of the pull of gravity, than smaller masses.
![Two micro:bit showing 0 and 6](/static/courses/ucp-science/gravity/06.png)
The greater the mass of an object, the greater the gravitational pull it has on other objects. (ck12.org. Sixth Grade Science, p 26) https://eq.uen.org/emedia/items/dae58176-b839-4b26-87e4-09ca5ed98875/1/Grade6RS.pdf)
## Project Goal
Give students real world experience with coding, collecting data, analyzing data, and reporting results using MakeCodes block programming and a microbit with its sensors.
## Prior Knowledge
Students need to have a basic knowledge of how to code using block style programming (Microbit using the [Windows 10 MakeCode app](https://www.microsoft.com/store/productId/9PJC7SV48LCX)) and download a program to a microbit.
## Student Outcomes
Students will:
* create experiments to collect data using microbits and the acceleration sensor on them.
* setup different experiments to observe the gravity effect.
* code the microbits to collect data remotely over the microbit radios.
* analyze the data collected.
### Materials Needed
* 2 microbits with batteries connected
* A longer USB microbit cable
* [MakeCode for micro:bit Windows App](https://www.microsoft.com/store/productId/9PJC7SV48LCX)
* Spreadsheet for data analysis
* Padding for one microbit for gravity testing
<br/>
| | | |
|-|-|-|
| Adapted from "[Gravity, Motion, and Waves](https://drive.google.com/open?id=1Z8S-W3n1jX6drC8ALj8Wh1Rjc0CyP0Afs3acnIjDYes)" by [C Lyman](http://utahcoding.org) | | [![CC BY-NC-SA](https://licensebuttons.net/l/by-nc-sa/4.0/80x15.png)](https://creativecommons.org/licenses/by-nc-sa/4.0/) |

Просмотреть файл

@ -0,0 +1,75 @@
# Resources
# CSTA Standards
Computer Science Teachers Association (CSTA) Standards 2017.
http://www.csteachers.org/page/standards.
### Level 2 (Grades 6-8)
#### Computing Systems
* 02 — Design projects that combine hardware and software components to collect and exchange data.
* 03 — Systematically identify and fix problems with computing devices and their components.
#### Networks & the Internet
* 04 — Model the role of protocols in transmitting data across networks and the Internet.
#### Data & Analysis
* 07 — Represent data using multiple encoding schemes.
* 08 — Collect data using computational tools and transform the data to make it more useful and reliable.
* 09 — Refine computational models based on the data they have generated.
#### Algorithms & Programming
* 11 — Create clearly named variables that represent different data types and perform operations on their values.
* 12 — Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals.
* 13 — Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
* 17 — Systematically test and refine programs using a range of test cases.
* 19 — Document programs in order to make them easier to follow, test, and debug.
## Utah Science with Engineering Education (SEEd)
* [Utah Science Website](https://schools.utah.gov/curr/science)
* [Utah Grades 6-8 SEEd Standards](https://schools.utah.gov/file/265a0b53-b6a7-48fb-b253-b6a5f38ffe19)
* [Sixth grade OER Science text](https://eq.uen.org/emedia/items/dae58176-b839-4b26-87e4-09ca5ed98875/1/Grade6RS.pdf)
* [Seventh grade OER Science text](https://eq.uen.org/emedia/items/afd89ff1-054c-4ac5-a712-67f4c6029644/1/Grade7RS.pdf)
* [Eighth grade OER Science text](https://eq.uen.org/emedia/items/e5219302-32b9-4c2f-ad65-38f303da6654/1/Grade8RS.pdf)
## NGSS - Utah SEEd
### Strand 6.1: Structure and Motion within the Solar System
The solar system consists of the Sun, planets, and other objects within Suns gravitational influence. Gravity is the force of attraction between masses...
* Standard 6.1.2
>Develop and use a model to describe the role of gravity and inertia in ... motions of objects …
* Standard 6.1.3
>Use computational thinking to analyze data and determine the scale and properties of objects in the solar system…. Data sources could include Earth ...-based instruments ... Types of data could include graphs, data tables, ...
### Strand 7.1: Forces are Interactions between Matter
Forces are push or pull interactions between two objects. Changes in motion, balance and stability, and transfers of energy are all facilitated by forces on matter. Forces, including electric, magnetic, and gravitational forces, can act on objects that are not in contact with each other. Scientists use data from many sources to examine the cause and effect relationships determined by different forces.
* Standard 7.1.1
>Carry out an investigation which provides evidence that a change in an objects motion is dependent on the mass of the object ... Various experimental designs should be evaluated to determine how well the investigation measures an objects motion.
## micro:bit
* [Microbit.org](http://microbit.org)
* [MakeCode.com](https://makecode.com)
* [Utah Coding Project](http://utahcoding.org)
* [Blog entry on Windows 10 MakeCode app](https://sites.google.com/view/utahcodingproject/blog/2018-jan-makecode-app)
<br/>
| | | |
|-|-|-|
| Adapted from "[Gravity, Motion, and Waves](https://drive.google.com/open?id=1Z8S-W3n1jX6drC8ALj8Wh1Rjc0CyP0Afs3acnIjDYes)" by [C Lyman](http://utahcoding.org) | | [![CC BY-NC-SA](https://licensebuttons.net/l/by-nc-sa/4.0/80x15.png)](https://creativecommons.org/licenses/by-nc-sa/4.0/) |

Просмотреть файл

@ -0,0 +1,118 @@
# Setup & Procedure
## Setup
1. Plan and design the experiments.
2. Plan and design data collection documents.
3. Program the @boardname@s.
4. Experiment with different data collections scenarios.
## Code
This project will use to @boardname@s to collect and record data using the Windows 10 MakeCode app as described in the Data Collection - Option 3 at the end of this document.
### “Sender” @boardname@ code
1. Code the first @boardname@ using MakeCode for Microbits.
2. Name the project, “Gravity Sender”.
3. The “on Start” event will display the title and function of the @boardname@ in all caps, “GRAVITY SENDER”.
4. Add comments to the “on Start” event: Name the project, creator, and date created.
5. Set up a radio group using the “radio set group”. Both @boardname@s need the same radio group.
```blocks
basic.showString("GRAVITY SENDER")
radio.setGroup(99)
```
6. The “forever” event will constantly monitor the “strength” of the acceleration and send the value to any other @boardname@s that might be receiving radio signals in the same radio group.
7. Open the pull down menu in the acceleration block and and change the “x” value to the “strength” value. This maximizes the x, y, and z dimensions of the acceleration into 1 value.
8. Add a ``||led:toggle||`` block to indicate that data is coming out
```blocks
basic.showString("GRAVITY SENDER")
radio.setGroup(99)
basic.forever(() => {
radio.sendNumber(input.acceleration(Dimension.Strength))
led.toggle(0, 0)
})
```
### “Receiver” @boardname@ code
1. Using the [Windows 10 MakeCode app](https://www.microsoft.com/store/productId/9PJC7SV48LCX) setup and code the second @boardname@.
2. This @boardname@ will remain connected to the computer through the USB cable and the Windows 10 MakeCode app to monitor the data being received.
3. Name the project, “Gravity Receiver”.
4. The “on Start” event will display the title and function of the @boardname@ in all caps, “GRAVITY RECEIVER”.
5. Add comments to the “on Start” event: Name the project, creator, and date created.
6. Set up a radio group using the “radio set group”. Both @boardname@s need the same radio group.
```blocks
basic.showString("GRAVITY RECEIVER")
radio.setGroup(99)
```
7. The “on Radio Received” event will constantly monitor radio signals from the radio group.
8. When a value is received from the group it is stored in the “gravity” variable.
9. The “serial write Value” sends 2 pieces of data back to the MakeCode app through the USB cable. First it sends a label “gravity” and then the value received as gravity from the acceleration method from the first @boardname@.
10. Add a ``led.toggle`` to indicate that data has been received. Change ``x`` to 1 so that another LED blinks.
```blocks
basic.showString("GRAVITY RECEIVER")
radio.setGroup(99)
radio.onDataPacketReceived( ({ receivedNumber: gravity }) => {
serial.writeValue("gravity", gravity)
led.toggle(1,0)
})
```
## Monitoring the data
1. With the @boardname@ code downloaded from the MakeCode app to the @boardname@ and the USB cable connected it will start receiving data from the first @boardname@.
2. Under the simulator in the app a purple outlined button shows up “Show data Device”.
3. By clicking on the “Show data Device” button a window opens up to the right showing values and graph of the gravity data being received. (The dips in the graph are 3 tosses of the @boardname@ in the air.)
4. The “Download” button in the red highlighted box allows the downloading of about the last 20 seconds of recorded data as a CSV file.
![Toss sensor data](/static/courses/ucp-science/gravity/toss.png)
5. When the data recorded is downloaded as a CSV spreadsheet file. It is named “data.csv”. (It will usually open in a spreadsheet but sometimes doesnt and it can be hard to find. A search of the C:\ drive may need to be made to find it.)
![Toss sensor data](/static/courses/ucp-science/gravity/export.png)
Additional analysis and graphing can be done in a spreadsheet.
## Data Collection:
There are several ways to collect data from an experiment. The simplest is having the data display on the LED screen and manually record the data on a paper. Data can also be collected using the Windows 10 MakeCode app. The third way is using 2 @boardname@s with one observing the data and then radioing the results to a second @boardname@ can allow the remote collection of data.
For additional information on data collection see [Data Collection](/courses/ucp-science/data-collection).
## Extensions
### Sound Wave Sensor.
Sound causes vibrations which can be detected with the Microbit accelerator. Connect 2 @boardname@s using radio signals. Data Collection - Option 3. The “Gravity Sender” @boardname@ can be placed on or near a speaker. It will send a signal to the “Gravity Receiver” @boardname@ which can be connected to the Windows 10 MakeCode app. When the “Gravity Receiver” @boardname@ receives a gravity number it is sent to the monitoring data collection using the command “serial write value (“gravity”, gravity)”. The sound can be observed in the “Show data Device”.
![Sound vibrations](/static/courses/ucp-science/gravity/soundvibrations.png)
### Earthquake Detector
Earthquakes cause vibrations which can be detected with the Microbit accelerator. By placing the Gravity Sending” sending @boardname@ on a flat surface and having it “feel” minor changes in acceleration it can detect earthquakes or other vibrations in the earth. Connect 2 @boardname@s using radio signals. Data Collection - Option 3. The “Gravity Sender” @boardname@ can be placed on or near a speaker. It will send a signal to the “Gravity Receiver” @boardname@ which can be connected to the Windows 10 MakeCode app. When the “Gravity Receiver” @boardname@ receives a gravity number it is sent to the monitoring data collection using the command “serial write value (“gravity”, gravity)”. The movement of the object connected to the Earth can be observed in the “Show data Device”. Using a conditional statement that detects changes in the received gravity could be implemented to play “music” sound as an alarm when changes in movement are detected.
![Earthquake vibrations](/static/courses/ucp-science/gravity/earthquake.png)
### Skate Park Data or Pinewood Derby.
Use the @boardname@s to record data from a skater at a skate park or acceleration down a ramp like a Pinewood Derby car.
<br/>
| | | |
|-|-|-|
| Adapted from "[Gravity, Motion, and Waves](https://drive.google.com/open?id=1Z8S-W3n1jX6drC8ALj8Wh1Rjc0CyP0Afs3acnIjDYes)" by [C Lyman](http://utahcoding.org) | | [![CC BY-NC-SA](https://licensebuttons.net/l/by-nc-sa/4.0/80x15.png)](https://creativecommons.org/licenses/by-nc-sa/4.0/) |
```package
radio
```

Двоичные данные
docs/static/courses/ucp-science/gravity/06.png поставляемый Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 8.8 KiB

Двоичные данные
docs/static/courses/ucp-science/gravity/earthquake.png поставляемый Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 21 KiB

Двоичные данные
docs/static/courses/ucp-science/gravity/export.png поставляемый Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 18 KiB

Двоичные данные
docs/static/courses/ucp-science/gravity/soundvibrations.png поставляемый Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 36 KiB

Двоичные данные
docs/static/courses/ucp-science/gravity/toss.png поставляемый Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 27 KiB