update acc
This commit is contained in:
parent
3b3e402ffa
commit
e0d4763974
71
docs/lessons/charting/acceleration-challenge.md
Normal file
71
docs/lessons/charting/acceleration-challenge.md
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
# Charting Acceleration: Challenge
|
||||||
|
|
||||||
|
### ~avatar avatar
|
||||||
|
|
||||||
|
Welcome! The activity will teach you how to use the acceleration of the 1st micro:bit and to visualize the acceleration on the 2nd micro:bit. Let's get started!
|
||||||
|
|
||||||
|
### ~
|
||||||
|
Let's measure `acceleration (mg)` and then `send number`. `Acceleration` is measured in **milli-gravities**, so a value of -1000 is equivalent to -1g or -9.81m/s^2. We will be able to get the acceleration value (g-force), in the specified "x" dimension. `Send number` will broadcast a number data packet to other micro:bits connected via radio.
|
||||||
|
|
||||||
|
```blocks
|
||||||
|
radio.sendNumber(input.acceleration(Dimension.X));
|
||||||
|
```
|
||||||
|
### ~
|
||||||
|
We want to display the acceleration forever. In order to do so, we need a `forever` loop. A forever loop will repeat code in the background forever.
|
||||||
|
|
||||||
|
```blocks
|
||||||
|
basic.forever(() => {
|
||||||
|
radio.sendNumber(input.acceleration(Dimension.X));
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
```
|
||||||
|
### ~
|
||||||
|
We want to register code to run when a packet is received over radio. We can implement this code by adding `on data received`.
|
||||||
|
|
||||||
|
```blocks
|
||||||
|
basic.forever(() => {
|
||||||
|
radio.sendNumber(input.acceleration(Dimension.X))
|
||||||
|
})
|
||||||
|
radio.onDataReceived(() => {
|
||||||
|
|
||||||
|
})
|
||||||
|
```
|
||||||
|
### ~
|
||||||
|
Finally, we want to chart the acceleration. So we must first implement `plot bar graph`. `Plot Bar Graph` will display a vertical bar graph based on the value and high value. In order to transfer the receive the number from the 1st micro:bit, we must implement `receive number` to constantly display a vertical bar graph based on the value. Remember, the value will equal to the micro:bit's acceleration in the "x" direction.
|
||||||
|
|
||||||
|
```blocks
|
||||||
|
basic.forever(() => {
|
||||||
|
radio.sendNumber(input.acceleration(Dimension.X))
|
||||||
|
})
|
||||||
|
radio.onDataReceived(() => {
|
||||||
|
led.plotBarGraph(radio.receiveNumber(), 1023)
|
||||||
|
})
|
||||||
|
|
||||||
|
```
|
||||||
|
### ~
|
||||||
|
Notice that moving the micro:bit the farthest direction in the x direction will be -1023 on the charting beneath the simulator. The second observation will be that the LEDs will be full brightness on the 2nd micro:bit. There is a single LED turned on with the 1st micro:bit. Additionally, the graphs will reflect 0 acceleation for the 1st micro:bit. In this scenario, if you are adjusting the acceleration in the simualator, you are also changing your chart that will be produced.
|
||||||
|
|
||||||
|
![](/static/mb/acc.png)
|
||||||
|
|
||||||
|
### ~
|
||||||
|
NOTE: The colors of the charts reflect the color of the micro:bit simulator. In this instance, the micro:bits are blue and green. So the colors of the line graphs reflect the colors of the micro:bit
|
||||||
|
|
||||||
|
### ~
|
||||||
|
After running this simulatation several seconds by moving the micro:bit side to side in the x direction, you are ready to graph or chart the accceleration of the micro:bit. We want a printout of our acceleration on Excel. We will graph the fluctuating acceleration of the simulation experiment.
|
||||||
|
|
||||||
|
![](/static/mb/acc2.png)
|
||||||
|
|
||||||
|
### ~
|
||||||
|
Finally, you must open the Excel CSV file by clicking on the data.xls file that was downloaded to Downloads Folder.
|
||||||
|
|
||||||
|
![](/static/mb/data3.png)
|
||||||
|
|
||||||
|
### ~
|
||||||
|
Have fun reviewing your simulation and analyze the acceleration by chart the Excel data using Excel.
|
||||||
|
|
||||||
|
* Connect the first micro:bit to your computer using your USB cable and run the charting script on it.
|
||||||
|
* Connect the second micro:bit to your computer using your USB cable and run the charting script on it.
|
||||||
|
* The first person and second person take turns tilting the micro:bit in the "x" direction while the other player charts the data on the micro:bit!
|
||||||
|
* Review and analyze the actual micro:bit device acceleration data on Excel
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
# charting acceleration
|
# Charting Acceleration: Activity
|
||||||
|
|
||||||
Measure the acceleration on the micro:bit in the "x" direction.
|
Measure the acceleration on the micro:bit in the "x" direction.
|
||||||
|
|
||||||
@ -49,71 +49,3 @@ The final part of this experiment is opening and reviewing the data in the Excel
|
|||||||
* Connect a micro:bit to your computer using your USB cable; compile; and move the micro:bit in the "x" direction.
|
* Connect a micro:bit to your computer using your USB cable; compile; and move the micro:bit in the "x" direction.
|
||||||
* Review and analyze the actual micro:bit device data on Excel
|
* Review and analyze the actual micro:bit device data on Excel
|
||||||
|
|
||||||
### ~avatar avatar
|
|
||||||
|
|
||||||
Welcome! The activity will teach you how to use the acceleration of the 1st micro:bit and to visualize the acceleration on the 2nd micro:bit. Let's get started!
|
|
||||||
|
|
||||||
### ~
|
|
||||||
Let's measure `acceleration (mg)` and then `send number`. `Acceleration` is measured in **milli-gravities**, so a value of -1000 is equivalent to -1g or -9.81m/s^2. We will be able to get the acceleration value (g-force), in the specified "x" dimension. `Send number` will broadcast a number data packet to other micro:bits connected via radio.
|
|
||||||
|
|
||||||
```blocks
|
|
||||||
radio.sendNumber(input.acceleration(Dimension.X));
|
|
||||||
```
|
|
||||||
### ~
|
|
||||||
We want to display the acceleration forever. In order to do so, we need a `forever` loop. A forever loop will repeat code in the background forever.
|
|
||||||
|
|
||||||
```blocks
|
|
||||||
basic.forever(() => {
|
|
||||||
radio.sendNumber(input.acceleration(Dimension.X));
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
```
|
|
||||||
### ~
|
|
||||||
We want to register code to run when a packet is received over radio. We can implement this code by adding `on data received`.
|
|
||||||
|
|
||||||
```blocks
|
|
||||||
basic.forever(() => {
|
|
||||||
radio.sendNumber(input.acceleration(Dimension.X))
|
|
||||||
})
|
|
||||||
radio.onDataReceived(() => {
|
|
||||||
|
|
||||||
})
|
|
||||||
```
|
|
||||||
### ~
|
|
||||||
Finally, we want to chart the acceleration. So we must first implement `plot bar graph`. `Plot Bar Graph` will display a vertical bar graph based on the value and high value. In order to transfer the receive the number from the 1st micro:bit, we must implement `receive number` to constantly display a vertical bar graph based on the value. Remember, the value will equal to the micro:bit's acceleration in the "x" direction.
|
|
||||||
|
|
||||||
```blocks
|
|
||||||
basic.forever(() => {
|
|
||||||
radio.sendNumber(input.acceleration(Dimension.X))
|
|
||||||
})
|
|
||||||
radio.onDataReceived(() => {
|
|
||||||
led.plotBarGraph(radio.receiveNumber(), 1023)
|
|
||||||
})
|
|
||||||
|
|
||||||
```
|
|
||||||
### ~
|
|
||||||
Notice that moving the micro:bit the farthest direction in the x direction will be -1023 on the charting beneath the simulator. The second observation will be that the LEDs will be full brightness on the 2nd micro:bit. There is a single LED turned on with the 1st micro:bit. Additionally, the graphs will reflect 0 acceleation for the 1st micro:bit. In this scenario, if you are adjusting the acceleration in the simualator, you are also changing your chart that will be produced.
|
|
||||||
|
|
||||||
![](/static/mb/acc.png)
|
|
||||||
|
|
||||||
### ~
|
|
||||||
NOTE: The colors of the charts reflect the color of the micro:bit simulator. In this instance, the micro:bits are blue and green. So the colors of the line graphs reflect the colors of the micro:bit
|
|
||||||
|
|
||||||
### ~
|
|
||||||
After running this simulatation several seconds by moving the micro:bit side to side in the x direction, you are ready to graph or chart the accceleration of the micro:bit. We want a printout of our acceleration on Excel. We will graph the fluctuating acceleration of the simulation experiment.
|
|
||||||
|
|
||||||
![](/static/mb/acc2.png)
|
|
||||||
|
|
||||||
### ~
|
|
||||||
Finally, you must open the Excel CSV file by clicking on the data.xls file that was downloaded to Downloads Folder.
|
|
||||||
|
|
||||||
![](/static/mb/data3.png)
|
|
||||||
|
|
||||||
### ~
|
|
||||||
Have fun reviewing your simulation and analyze the acceleration by chart the Excel data using Excel.
|
|
||||||
|
|
||||||
* Connect the first micro:bit to your computer using your USB cable and run the charting script on it.
|
|
||||||
* Connect the second micro:bit to your computer using your USB cable and run the charting script on it.
|
|
||||||
* The first person and second person take turns tilting the micro:bit in the "x" direction while the other player charts the data on the micro:bit!
|
|
||||||
* Review and analyze the actual micro:bit device acceleration data on Excel
|
|
||||||
|
@ -1,36 +0,0 @@
|
|||||||
# light level lesson
|
|
||||||
|
|
||||||
Create a charting app for simulating and measuring the amount of light measured by the micro:bit
|
|
||||||
|
|
||||||
## Topic
|
|
||||||
|
|
||||||
Acceleration
|
|
||||||
|
|
||||||
## Quick Links
|
|
||||||
|
|
||||||
* [activity](/lessons/charting/activity)
|
|
||||||
|
|
||||||
|
|
||||||
## Prior learning/place of lesson in scheme of work
|
|
||||||
|
|
||||||
Learn the functions of **on data received**, **send number** and **receive number** and chart `plot bar graph` for `acceleration` in the "x" dimension.
|
|
||||||
|
|
||||||
## Documentation
|
|
||||||
|
|
||||||
```cards
|
|
||||||
basic.showNumber(0)
|
|
||||||
input.acceleration(Dimension.X)
|
|
||||||
led.plotBarGraph(0, 1023)
|
|
||||||
radio.onDataReceived(() => {})
|
|
||||||
radio.sendNumber(0)
|
|
||||||
radio.receiveNumber()
|
|
||||||
```
|
|
||||||
|
|
||||||
## Objectives
|
|
||||||
|
|
||||||
* learn how to repeat code in the background forever
|
|
||||||
* learn how to get the acceleration value (g-force), in one of three specified dimensions
|
|
||||||
* learn how to display a vertical bar graph based on the value and high value.
|
|
||||||
* learn how to register code to run when a packet is received over radio
|
|
||||||
* learn how to broadcast a number data packet to other micro:bits connected via radio
|
|
||||||
* learn how to read the next radio packet as a number data packet
|
|
@ -1,36 +0,0 @@
|
|||||||
# charting lesson
|
|
||||||
|
|
||||||
Measure the acceleration on the micro:bit in the "z" direction.
|
|
||||||
|
|
||||||
## Topic
|
|
||||||
|
|
||||||
Acceleration
|
|
||||||
|
|
||||||
## Quick Links
|
|
||||||
|
|
||||||
* [activity](/lessons/charting/activity)
|
|
||||||
|
|
||||||
|
|
||||||
## Prior learning/place of lesson in scheme of work
|
|
||||||
|
|
||||||
Learn the functions of **on data received**, **send number** and **receive number** and chart `plot bar graph` for `acceleration` in the "x" dimension.
|
|
||||||
|
|
||||||
## Documentation
|
|
||||||
|
|
||||||
```cards
|
|
||||||
basic.showNumber(0)
|
|
||||||
input.acceleration(Dimension.X)
|
|
||||||
led.plotBarGraph(0, 1023)
|
|
||||||
radio.onDataReceived(() => {})
|
|
||||||
radio.sendNumber(0)
|
|
||||||
radio.receiveNumber()
|
|
||||||
```
|
|
||||||
|
|
||||||
## Objectives
|
|
||||||
|
|
||||||
* learn how to repeat code in the background forever
|
|
||||||
* learn how to get the acceleration value (g-force), in one of three specified dimensions
|
|
||||||
* learn how to display a vertical bar graph based on the value and high value.
|
|
||||||
* learn how to register code to run when a packet is received over radio
|
|
||||||
* learn how to broadcast a number data packet to other micro:bits connected via radio
|
|
||||||
* learn how to read the next radio packet as a number data packet
|
|
Loading…
Reference in New Issue
Block a user