Bit:balance:board: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(4 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== [[Datei:Icon_story.png|20px|Icon]] Wer hält die Balance? == | == [[Datei:Icon_story.png|20px|Icon]] Wer hält die Balance? == | ||
[[Datei: balanceboard.png|right|400px|link=| Balanceboard in Aktion]] | [[Datei: balanceboard.png|right|400px|link=| Balanceboard in Aktion]] | ||
Emilia und Max sind begeisterte Surfer. Im Winter trainieren sie ihren Gleichgewichtssinn zuhause auf einem | Emilia und Max sind begeisterte Surfer. Im Winter trainieren sie ihren Gleichgewichtssinn zuhause auf einem Balanceboard (siehe Bilder rechts). Emilia hat sich ein spezielles gekauft, Max verwendet einfach sein altes Longboard und eine Schaumstoff-Gymnastikrolle seiner Mama. | ||
Um das Training spannender zu machen, überlegt sich Emilia etwas. | Um das Training spannender zu machen, überlegt sich Emilia etwas. | ||
"Max, ich fordere dich zu einem Wettbewerb heraus!", sagt sie | "Max, ich fordere dich zu einem Wettbewerb heraus!", sagt sie. "Wer schafft es als Erster '''''5 Sekunden die Balance''''' - also das Brett waagrecht - zu halten?" | ||
"Wie willst du das denn so genau messen?", erwidert Max. | "Wie willst du das denn so genau messen?", erwidert Max. | ||
Zeile 11: | Zeile 11: | ||
"Ich hab da schon eine Idee..." | "Ich hab da schon eine Idee..." | ||
Emilia weiß, dass der BBC micro:bit einen Neigungssensor | Emilia weiß, dass der BBC micro:bit einen Neigungssensor besitzt und beginnt gleich zu recherchieren. | ||
So sieht | So sieht Emilias und Max’ '''bit:balance:board''' aus: | ||
[[Datei:balanceboard_microbit.png|400px|link=|]] | [[Datei:balanceboard_microbit.png|400px|link=|]] | ||
Der Neigungssensor im BBC micro:bit wird auch Beschleunigungssensor genannt und funktioniert wie eine Wasserwaage. | Der Neigungssensor im BBC micro:bit wird auch Beschleunigungssensor genannt und funktioniert wie eine Wasserwaage. | ||
Er hat drei Achsen: x , y und z. | Er hat drei Achsen: x, y und z. | ||
Für dieses Projekt brauchen wir nur die '''''x-Achse''''': | Für dieses Projekt brauchen wir nur die '''''x-Achse''''': | ||
Zeile 24: | Zeile 24: | ||
[[Datei:microbit_x.png|400px|link=|]] | [[Datei:microbit_x.png|400px|link=|]] | ||
Wenn der BBC micro:bit nach rechts Richtung '''+x''' | Wenn sich der BBC micro:bit nach rechts Richtung '''+x''' neigt, wird der gemessene x-Wert immer größer. | ||
Wenn du ihn nach links Richtung '''–x''' neigst, wird der gemessene x-Wert immer kleiner. | Wenn du ihn nach links Richtung '''–x''' neigst, wird der gemessene x-Wert immer kleiner. | ||
Der größte Wert von x ist 1023, der kleinste -1023. | Der größte Wert von x ist 1023, der kleinste -1023. | ||
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung == | == [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung == | ||
* Wenn der BBC micro:bit eingeschaltet wird, wird die Variable '''zähler''' auf 0 gesetzt. | * Wenn der BBC micro:bit eingeschaltet wird, wird die Variable '''zähler''' auf 0 gesetzt. | ||
* Es wird dann dauerhaft überprüft, ob das Balanceboard zu weit rechts, zu weit links oder schön waagrecht ist. | * Es wird dann dauerhaft überprüft, ob das Balanceboard zu weit rechts, zu weit links oder schön waagrecht ist. | ||
* Wenn man zu weit rechts oder links neigt, wird der '''zähler''' wieder auf 0 gesetzt | * Wenn man sich zu weit rechts oder links neigt, wird der '''zähler''' wieder auf 0 gesetzt | ||
* Wenn man das Brett schön waagrecht hält, erhöht sich der '''zähler''' um 1 und der '''zähler''' wird angezeigt. | * Wenn man das Brett schön waagrecht hält, erhöht sich der '''zähler''' um 1 und der '''zähler''' wird angezeigt. | ||
* Wenn der '''zähler''' 5 erreicht hat, hat man gewonnen und ein Pokal wird 5 Sekunden gezeigt. | * Wenn der '''zähler''' 5 erreicht hat, hat man gewonnen und ein Pokal wird 5 Sekunden gezeigt. | ||
* Wichtig: Der BBC micro:bit kann sehr schnell diese Werte überprüfen und zählen, daher muss am Ende der | * Wichtig: Der BBC micro:bit kann sehr schnell diese Werte überprüfen und zählen, daher muss man am Ende der Dauerhaft-Schleife immer eine Sekunde pausieren. | ||
Zeile 44: | Zeile 43: | ||
* BBC micro:bit (mit USB-Kabel und Batterie) | * BBC micro:bit (mit USB-Kabel und Batterie) | ||
* ein Balanceboard (oder ein altes Longboard/Skateboard und eine Gymnastikrolle/ein Rundholz) | * ein Balanceboard (oder ein altes Longboard/Skateboard und eine Gymnastikrolle/ein Rundholz) | ||
* ein Stück (doppelseitiges) Klebeband um den BBC micro:bit am Balanceboard zu befestigen | * ein Stück (doppelseitiges) Klebeband, um den BBC micro:bit am Balanceboard zu befestigen | ||
* Papier-[[Batteriehalter]] | * Papier-[[Batteriehalter]] | ||
Zeile 63: | Zeile 62: | ||
* einen einfachen Zähler als [[Variable]] zu erstellen | * einen einfachen Zähler als [[Variable]] zu erstellen | ||
* mit der Dauerhaft-[[Schleifen|Schleife]] zu arbeiten | * mit der Dauerhaft-[[Schleifen|Schleife]] zu arbeiten | ||
* auf bestimmte Werte des Neigungssensors ( | * auf bestimmte Werte des Neigungssensors (Beschleunigungssensors) zu reagieren | ||
* eine [[Bedingte_Anweisung|Abfrage/Bedingte Anweisung]] zu erstellen, ob der Zähler größer oder kleiner als ein bestimmter Wert ist | * eine [[Bedingte_Anweisung|Abfrage/Bedingte Anweisung]] zu erstellen, ob der Zähler größer oder kleiner als ein bestimmter Wert ist | ||
Zeile 78: | Zeile 77: | ||
* Wenn der BBC micro:bit eingeschaltet wird, wird die Variable '''zähler''' auf 0 gesetzt. | * Wenn der BBC micro:bit eingeschaltet wird, wird die Variable '''zähler''' auf 0 gesetzt. | ||
* In einer | * In einer Dauerhaft-Schleife wird der x-Wert des Beschleunigungssensors abgefragt. | ||
* Wenn dieser | * Wenn dieser | ||
** größer als 100 ist, wird ein Pfeil auf dem Display dargestellt, der anzeigt, in welche Richtung man sich neigen muss, um waagrecht zu sein (also nach links). Der '''zähler''' wird auf 0 zurückgesetzt. | ** größer als 100 ist, wird ein Pfeil auf dem Display dargestellt, der anzeigt, in welche Richtung man sich neigen muss, um waagrecht zu sein (also nach links). Der '''zähler''' wird auf 0 zurückgesetzt. | ||
Zeile 104: | Zeile 103: | ||
* Danach wird überprüft ob der '''zähler''' 5 ist. | * Danach wird überprüft ob der '''zähler''' 5 ist. | ||
* Wenn dem so ist, wird ein Pokal-Symbol am Display angezeigt, 5 Sekunden pausiert und dann (damit das Spiel wieder von vorne losgehen kann) der '''zähler''' wieder auf 0 gesetzt. | * Wenn dem so ist, wird ein Pokal-Symbol am Display angezeigt, 5 Sekunden pausiert und dann (damit das Spiel wieder von vorne losgehen kann) der '''zähler''' wieder auf 0 gesetzt. | ||
* Am Ende der | * Am Ende der Dauerhaft-Schleife soll das Programm eine Sekunde (1000 ms) pausieren. | ||
=== Schritt für Schritt zur Lösung === | === Schritt für Schritt zur Lösung === | ||
Zeile 118: | Zeile 117: | ||
<b>Versuche die Antworten auf folgende Fragen durch Experimentieren und Internet-Recherche herauszufinden.</b> | <b>Versuche die Antworten auf folgende Fragen durch Experimentieren und Internet-Recherche herauszufinden.</b> | ||
* Welche zwei Werte musst du ändern, damit es weniger schwierig ist die Balance zu halten? | * Welche zwei Werte musst du ändern, damit es weniger schwierig ist, die Balance zu halten? | ||
* Welchen Wert musst du ändern, damit man erst mit 10 Sekunden | * Welchen Wert musst du ändern, damit man erst mit 10 Sekunden langem Balancieren gewinnt? | ||
* Was passiert, wenn man die 1-Sekunden-Pause am Ende der | * Was passiert, wenn man die 1-Sekunden-Pause am Ende der Dauerhaft-Schleife entfernt? Probiere es aus! | ||
== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung == | == [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung == | ||
* Passe die Schwierigkeit so an, dass du | * Passe die Schwierigkeit so an, dass du das 5 Sekunden lange Balancieren sicher schaffst. Mache es anschließend ein bisschen schwerer. | ||
* | * [[Animiertes_Micro-Buch|Animation]] statt des statischen Pokalbilds | ||
* Zusätzlich | * Zusätzlich zum visuellen Feedback (Pfeile und Pokal) [[Datei:Iconmonstr-arrow-20re-120.png|20px]] auditives Feedback (Soundeffekt). Verwende dazu den BBC [[Microbit-v2|micro:bit V2]] oder erweitere deinen V1 mit einem Lautsprecher. | ||
<htmlet>makecode_embed</htmlet> | <htmlet>makecode_embed</htmlet> |
Aktuelle Version vom 17. Mai 2022, 07:39 Uhr
Wer hält die Balance?
Emilia und Max sind begeisterte Surfer. Im Winter trainieren sie ihren Gleichgewichtssinn zuhause auf einem Balanceboard (siehe Bilder rechts). Emilia hat sich ein spezielles gekauft, Max verwendet einfach sein altes Longboard und eine Schaumstoff-Gymnastikrolle seiner Mama.
Um das Training spannender zu machen, überlegt sich Emilia etwas.
"Max, ich fordere dich zu einem Wettbewerb heraus!", sagt sie. "Wer schafft es als Erster 5 Sekunden die Balance - also das Brett waagrecht - zu halten?"
"Wie willst du das denn so genau messen?", erwidert Max.
"Ich hab da schon eine Idee..."
Emilia weiß, dass der BBC micro:bit einen Neigungssensor besitzt und beginnt gleich zu recherchieren.
So sieht Emilias und Max’ bit:balance:board aus:
Der Neigungssensor im BBC micro:bit wird auch Beschleunigungssensor genannt und funktioniert wie eine Wasserwaage.
Er hat drei Achsen: x, y und z.
Für dieses Projekt brauchen wir nur die x-Achse:
Wenn sich der BBC micro:bit nach rechts Richtung +x neigt, wird der gemessene x-Wert immer größer.
Wenn du ihn nach links Richtung –x neigst, wird der gemessene x-Wert immer kleiner.
Der größte Wert von x ist 1023, der kleinste -1023.
Aufgabenstellung
- Wenn der BBC micro:bit eingeschaltet wird, wird die Variable zähler auf 0 gesetzt.
- Es wird dann dauerhaft überprüft, ob das Balanceboard zu weit rechts, zu weit links oder schön waagrecht ist.
- Wenn man sich zu weit rechts oder links neigt, wird der zähler wieder auf 0 gesetzt
- Wenn man das Brett schön waagrecht hält, erhöht sich der zähler um 1 und der zähler wird angezeigt.
- Wenn der zähler 5 erreicht hat, hat man gewonnen und ein Pokal wird 5 Sekunden gezeigt.
- Wichtig: Der BBC micro:bit kann sehr schnell diese Werte überprüfen und zählen, daher muss man am Ende der Dauerhaft-Schleife immer eine Sekunde pausieren.
Materialien
- BBC micro:bit (mit USB-Kabel und Batterie)
- ein Balanceboard (oder ein altes Longboard/Skateboard und eine Gymnastikrolle/ein Rundholz)
- ein Stück (doppelseitiges) Klebeband, um den BBC micro:bit am Balanceboard zu befestigen
- Papier-Batteriehalter
Zeitaufwand
- ca. 1 Schulstunde zur Programmierung
- ca. 1 Schulstunde für das Bauen und anschließende Spielen und Experimentieren
Schwierigkeitsgrad
Kompetenzen
Das solltest du bereits können:
- mit negativen und positiven Zahlen umgehen (Mathematik)
- Größer (>) und Kleiner (<)-Zeichen kennen und anwenden können (Mathematik)
Du lernst...
- einen einfachen Zähler als Variable zu erstellen
- mit der Dauerhaft-Schleife zu arbeiten
- auf bestimmte Werte des Neigungssensors (Beschleunigungssensors) zu reagieren
- eine Abfrage/Bedingte Anweisung zu erstellen, ob der Zähler größer oder kleiner als ein bestimmter Wert ist
Unterrichtsfächer
Werkerziehung, Bewegung & Sport, Informatik
Tipps und Hilfestellungen
Erforderliche Programmierblöcke
Ereignissteuerung, Schleife, Variablen, Boolean
Eckpfeiler zur Programmierung
- Wenn der BBC micro:bit eingeschaltet wird, wird die Variable zähler auf 0 gesetzt.
- In einer Dauerhaft-Schleife wird der x-Wert des Beschleunigungssensors abgefragt.
- Wenn dieser
- größer als 100 ist, wird ein Pfeil auf dem Display dargestellt, der anzeigt, in welche Richtung man sich neigen muss, um waagrecht zu sein (also nach links). Der zähler wird auf 0 zurückgesetzt.
- kleiner als -100 ist, zeigt der Pfeil in die andere Richtung und der zähler wird auch auf 0 zurückgesetzt.
- Ansonsten (also wenn der x-Wert zwischen -100 und 100 ist) soll der zähler um 1 erhöht werden und am Display angezeigt werden. <spoiler text="Hinweis">
Verwende zur Abfrage von x > 100 den ersten Block, für x < -100 den zweiten und dann den ansonsten-Block: Also:
wenn x > 100 dann
sonst wenn x < -100
ansonsten
basic.forever(function () { if (true) { } else if (false) { } else { } })
</spoiler>
- Danach wird überprüft ob der zähler 5 ist.
- Wenn dem so ist, wird ein Pokal-Symbol am Display angezeigt, 5 Sekunden pausiert und dann (damit das Spiel wieder von vorne losgehen kann) der zähler wieder auf 0 gesetzt.
- Am Ende der Dauerhaft-Schleife soll das Programm eine Sekunde (1000 ms) pausieren.
Schritt für Schritt zur Lösung
Das Schritt-für-Schritt Tutorial für dieses Projekt findest du hier.
Präsentation und Reflexion
- Stelle dein Ergebnis vor! Was ist dir besonders gut gelungen?
- Was hat dir bei der Entwicklung deines Produkts gefallen?
- Welche Schwierigkeiten hattest du? Wie konntest du diese lösen?
- Erläutere, wie du dein Produkt programmiert hast!
- Was war bei dieser Aufgabe interessant für dich?
Versuche die Antworten auf folgende Fragen durch Experimentieren und Internet-Recherche herauszufinden.
- Welche zwei Werte musst du ändern, damit es weniger schwierig ist, die Balance zu halten?
- Welchen Wert musst du ändern, damit man erst mit 10 Sekunden langem Balancieren gewinnt?
- Was passiert, wenn man die 1-Sekunden-Pause am Ende der Dauerhaft-Schleife entfernt? Probiere es aus!
Weiterentwicklung
- Passe die Schwierigkeit so an, dass du das 5 Sekunden lange Balancieren sicher schaffst. Mache es anschließend ein bisschen schwerer.
- Animation statt des statischen Pokalbilds
- Zusätzlich zum visuellen Feedback (Pfeile und Pokal) auditives Feedback (Soundeffekt). Verwende dazu den BBC micro:bit V2 oder erweitere deinen V1 mit einem Lautsprecher.