Fang das Ei: Unterschied zwischen den Versionen
(38 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
Wie funktioniert ein Beschleunigungssensor? Kann man damit den micro:bit steuern und das vielleicht sogar in einem Spiel? | Wie funktioniert ein Beschleunigungssensor? Kann man damit den micro:bit steuern und das vielleicht sogar in einem Spiel? | ||
Der micro:bit hilft uns diese Fragen spielerisch zu beantworten. Du kannst mit dem micro:bit und dem eingebauten Beschleunigungssensor Bewegungen steuern wie z.B. links/ rechts kippen. Damit können wir die Spielsteuerung in einem kleinen Game übernehmen. | Der micro:bit hilft uns diese Fragen spielerisch zu beantworten. Du kannst mit dem micro:bit und dem eingebauten Beschleunigungssensor Bewegungen steuern wie z.B. links/ rechts kippen. Damit können wir die Spielsteuerung in einem kleinen Game übernehmen. | ||
− | == [[Datei:icon_gluehbirne.png|20px|Icon]] | + | == [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung == |
− | Im Game lässt der micro:bit von oben ein Ei (= 1 Pixel LED) herabfallen, das natürlich nicht immer von der selben Position kommen soll. Auf der unteren Zeile befindet sich der Korb (= 1 Pixel LED) den du mit links/ rechts kippen steuern kannst, sodass jedes Ei sicher im Korb landet. <spoiler text="Hinweis">[[Datei:03_fangdasei_kippen.png| | + | Im Game lässt der micro:bit von oben ein Ei (= 1 Pixel LED) herabfallen, das natürlich nicht immer von der selben Position kommen soll. Auf der unteren Zeile befindet sich der Korb (= 1 Pixel LED) den du mit links/ rechts kippen steuern kannst, sodass jedes Ei sicher im Korb landet. <spoiler text="Hinweis">[[Datei:03_fangdasei_kippen.png|300px|border|Neigungssensor - Kippen]]</spoiler> |
Fällt ein Ei daneben, kannst es erneut von vorne versuchen. Probiere es doch selbst. | Fällt ein Ei daneben, kannst es erneut von vorne versuchen. Probiere es doch selbst. | ||
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand == | == [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand == | ||
− | + | ||
+ | Etwa 2 Unterrichtseinheiten zum Programmieren und 2 Unterrichtseinheiten zum anschließendem Experimentieren. | ||
== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad == | == [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad == | ||
− | [[Datei: | + | [[Datei:Icon_puzzle.png|20px|Icon]] |
+ | [[Datei:Icon_puzzle.png|20px|Icon]] | ||
+ | [[Datei:Icon_puzzle.png|20px|Icon]] | ||
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen == | == [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen == | ||
− | |||
− | |||
− | |||
− | |||
Du lernst | Du lernst | ||
− | * | + | *einzelne LEDs (Pixel) der Anzeige ansteuern: zeichnen / (aus)schalten |
− | * | + | *eine Achse (X) des Beschleunigungssensors auslesen |
− | * | + | *Umrechnung der Beschleunigungswerte |
− | * | + | *mathematische Funktion Min / Max zur Begrenzung von Werten verwenden |
+ | *ereignisgesteuerte Programmierung <spoiler text="Hinweis">z.B. "wenn ... dann"</spoiler> | ||
+ | *Anzeige im Display zur besseren Lesbarkeit pausieren | ||
+ | == [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer == | ||
+ | INF | ||
− | + | Beschleunigungssensor in der Digitalen Grundbildung. #digiGB | |
− | |||
− | |||
− | |||
− | == [[Datei: | + | == [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellungen == |
− | |||
− | == [[ | + | === Elemente der Programmierung === |
− | + | [[Ereignissteuerung]], [[Anzeige]], [[LED]] | |
− | |||
+ | === Eckpfeiler zur Umsetzung === | ||
− | + | * Die Henne lässt ihre soeben gelegtes Ei (Bildschirm oberste Zeile) einfach nach unten plumpsen. <spoiler text="Hinweis"><b>Ei von oben: </b>[[Datei:03_fangdasei01.PNG|300px]]</spoiler> | |
− | *Die | + | * Daher sollst du mit einem Korb (Bildschirm unterste Zeile) das Ei auffangen. <spoiler text="Hinweis"><b>Korb - unterste Zeile: </b>[[Datei:03_fangdasei02.png|300px]]</spoiler> |
− | * | + | * Beim Hinunterplumpsen soll als Animation der Schwerkraft das Ei immer eine Zeile weiter nach unten geschoben werden, etwa so. <spoiler text="Hinweis"><b>Animation Ei: immer eine Zeile weiter... </b>[[Datei:03_fangdasei03.png]]</spoiler> |
− | * | + | * Das Ei soll auch nicht immer von der Mitte aus starten, das wäre zu einfach. Außerdem legt ja auch nicht immer dieselbe Henne das nächste Ei. Verändere also nach jedem Durchlauf die Startposition des nächsten Eis in der obersten Zeile. <spoiler text="Hinweis"><b>Animation Ei: veränderte Startposition</b>[[Datei:03_fangdasei04.png|300px]]</spoiler> |
− | * | + | * Die Steuerung des Korbs soll über den Beschleunigungssensor (X-Achse) den Korb in der untersten Zeile links/ rechts verschieben. <spoiler text="Hinweis"><b>Animation Korb kippen: links/ rechts verschieben </b>[[Datei:03_fangdasei_kippen.png|300px]]</spoiler> |
− | * | + | * Zu Beginn kann das Geschicklichkeitsspiel also so aussehen. <spoiler text="Hinweis"><b>mögliche Startpositionen... </b>[[Datei:03_fangdasei_eikorb.PNG|300px]]</spoiler> |
− | Weitere | + | === [[Fang_das_Ei_Loesung|Schritt für Schritt zur Lösung]] === |
− | + | Weitere Informationen, Hinweise und auch eine mögliche, komplette Lösung zum Beispiel findest du auf der [[Fang_das_Ei_Loesung|Lösungsseite zu diesem Beispiel]] | |
− | == Reflexion == | + | == [[Datei:presentation.png|20px|Icon]] Präsentation und Reflexion == |
===Allgemein=== | ===Allgemein=== | ||
* Stelle dein Ergebnis vor! Was kann dein Projekt? | * Stelle dein Ergebnis vor! Was kann dein Projekt? | ||
Zeile 55: | Zeile 54: | ||
===Projektspezifisch=== | ===Projektspezifisch=== | ||
− | * | + | Versuche die Antworten durch Internet-Recherche und Diskussion mit anderen herauszufinden. |
− | * | + | *Warum beginnt der micro:bit mit 0 zu zählen? Siehe Positionsangaben Koordinatensystem. <spoiler text="Koordinaten">[[Datei:03 fangdasei05.png|border|Koordinaten micro:bit]]</spoiler> |
− | * | + | *Ist die Funktion "Random" (wähle ein Zahl zwischen 0 und 4) wirklich zufällig? <spoiler text="Random">[[Datei:03_block_04a.PNG|border]]</spoiler> |
− | * | + | *Wie lautet der Minimal- und Maximalwert den die Beschleunigungsmessung hergibt? Warum? |
+ | *Warum muss die Anzeige für 300 ms pausiert werden? | ||
+ | |||
+ | == [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung == | ||
+ | |||
+ | *Variationen [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Verwende die Tasten A + B (li / re) anstatt / zusätzlich zur Steuerung mit dem Beschleunigungssensor. | ||
+ | *Komplexere Anwendungen [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Kollisionswächter: Überprüfe ob Korb und Ei dieselbe X-Achsenposition haben, wenn sie in der untersten Zeile aufeinander treffen? <br/>Erweitere das Game um einen Zähler (Anzahl Leben) und ziehe jeweils ein Leben ab sofern das Ei daneben plumpst. | ||
+ | *Adaptionen, Neuentwicklungen [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Sieh dir die Blöcke Spiel unter Fortgeschritten näher an. <br/>Du kannst ein Sprite mit Kollisionserkennung verwenden und Spielstände (Leben) verwalten. Experimentiere hier ausgiebig mit den "neuen" Möglichkeiten das Game zu verbessern. | ||
− | == | + | ==[[Datei:Printer.png|20px|Icon]] Aufgabe zum Ausdrucken== |
− | + | TBD | |
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Aktuelle Version vom 22. Mai 2018, 15:29 Uhr
Inhaltsverzeichnis
Fang das Ei
Wie funktioniert ein Beschleunigungssensor? Kann man damit den micro:bit steuern und das vielleicht sogar in einem Spiel? Der micro:bit hilft uns diese Fragen spielerisch zu beantworten. Du kannst mit dem micro:bit und dem eingebauten Beschleunigungssensor Bewegungen steuern wie z.B. links/ rechts kippen. Damit können wir die Spielsteuerung in einem kleinen Game übernehmen.
Aufgabenstellung
Im Game lässt der micro:bit von oben ein Ei (= 1 Pixel LED) herabfallen, das natürlich nicht immer von der selben Position kommen soll. Auf der unteren Zeile befindet sich der Korb (= 1 Pixel LED) den du mit links/ rechts kippen steuern kannst, sodass jedes Ei sicher im Korb landet. Hinweis
Fällt ein Ei daneben, kannst es erneut von vorne versuchen. Probiere es doch selbst.
Zeitaufwand
Etwa 2 Unterrichtseinheiten zum Programmieren und 2 Unterrichtseinheiten zum anschließendem Experimentieren.
Schwierigkeitsgrad
Kompetenzen
Du lernst
- einzelne LEDs (Pixel) der Anzeige ansteuern: zeichnen / (aus)schalten
- eine Achse (X) des Beschleunigungssensors auslesen
- Umrechnung der Beschleunigungswerte
- mathematische Funktion Min / Max zur Begrenzung von Werten verwenden
- ereignisgesteuerte Programmierung Hinweis
- Anzeige im Display zur besseren Lesbarkeit pausieren
Unterrichtsfächer
INF
Beschleunigungssensor in der Digitalen Grundbildung. #digiGB
Tipps und Hilfestellungen
Elemente der Programmierung
Ereignissteuerung, Anzeige, LED
Eckpfeiler zur Umsetzung
- Die Henne lässt ihre soeben gelegtes Ei (Bildschirm oberste Zeile) einfach nach unten plumpsen. Hinweis
- Daher sollst du mit einem Korb (Bildschirm unterste Zeile) das Ei auffangen. Hinweis
- Beim Hinunterplumpsen soll als Animation der Schwerkraft das Ei immer eine Zeile weiter nach unten geschoben werden, etwa so. Hinweis
- Das Ei soll auch nicht immer von der Mitte aus starten, das wäre zu einfach. Außerdem legt ja auch nicht immer dieselbe Henne das nächste Ei. Verändere also nach jedem Durchlauf die Startposition des nächsten Eis in der obersten Zeile. Hinweis
- Die Steuerung des Korbs soll über den Beschleunigungssensor (X-Achse) den Korb in der untersten Zeile links/ rechts verschieben. Hinweis
- Zu Beginn kann das Geschicklichkeitsspiel also so aussehen. Hinweis
Schritt für Schritt zur Lösung
Weitere Informationen, Hinweise und auch eine mögliche, komplette Lösung zum Beispiel findest du auf der Lösungsseite zu diesem Beispiel
Präsentation und Reflexion
Allgemein
- Stelle dein Ergebnis vor! Was kann dein Projekt?
- Was hat dir bei der Entwicklung deines Produkts gefallen?
- Welche Schwierigkeiten hast du gehabt? Wie konntest du diese lösen?
- Erläutere, wie du dein Produkt programmiert hast! (Fachkompetenz stärken)
- Was war bei dieser Aufgabenbearbeitung interessant für dich?
Projektspezifisch
Versuche die Antworten durch Internet-Recherche und Diskussion mit anderen herauszufinden.
- Warum beginnt der micro:bit mit 0 zu zählen? Siehe Positionsangaben Koordinatensystem. Koordinaten
- Ist die Funktion "Random" (wähle ein Zahl zwischen 0 und 4) wirklich zufällig? Random
- Wie lautet der Minimal- und Maximalwert den die Beschleunigungsmessung hergibt? Warum?
- Warum muss die Anzeige für 300 ms pausiert werden?
Weiterentwicklung
- Variationen
Verwende die Tasten A + B (li / re) anstatt / zusätzlich zur Steuerung mit dem Beschleunigungssensor.
- Komplexere Anwendungen
Kollisionswächter: Überprüfe ob Korb und Ei dieselbe X-Achsenposition haben, wenn sie in der untersten Zeile aufeinander treffen?
Erweitere das Game um einen Zähler (Anzahl Leben) und ziehe jeweils ein Leben ab sofern das Ei daneben plumpst. - Adaptionen, Neuentwicklungen
Sieh dir die Blöcke Spiel unter Fortgeschritten näher an.
Du kannst ein Sprite mit Kollisionserkennung verwenden und Spielstände (Leben) verwalten. Experimentiere hier ausgiebig mit den "neuen" Möglichkeiten das Game zu verbessern.
Aufgabe zum Ausdrucken
TBD