Heisse Kartoffel: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen
Klemens.frick (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „== 20px|Icon Lass dein Federpenal überwachen == right|400px|border| 2 micro:bits A und B Leon greift zum F…“
 
Maria.grandl (Diskussion | Beiträge)
 
(20 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== [[Datei:Icon_story.png|20px|Icon]] Lass dein Federpenal überwachen ==
== [[Datei:Icon_story.png|20px|Icon]] Spiel für die Geburtstagsfeier ==
[[Datei:04_alarm_v2.jpg |right|400px|border| 2 micro:bits A und B]]
[[Datei: Potato-hand_microbit.png |right|400px|link=| Heißer BBC micro:bit]]
Leon greift zum Federpenal und will den Radiergummi herausnehmen, aber er findet ihn nicht. Wo ist er nur?
Dominic und Ceyda planen ihre gemeinsame Geburtstagsfeier und wollen unbedingt ein spannendes Gemeinschaftsspiel spielen. Am besten eines, das es so noch nicht gegeben hat, das möglichst einfach selbst zu machen ist, das weder ein altmodisches Brettspiel noch ein Computerspiel ist, und bei dem alle mitspielen können.
:Er fragt seine Nachbarin Emma: „Hast du meinen Radiergummi gesehen?“ Sie zuckt nur mit den Achseln.
:Ihre Ansprüche sind hoch, doch Ceyda hat da schon eine Idee:
Kann es sein, dass sich jemand etwas ausgeborgt hat, ohne Leon zu fragen? Da kommt ihm ein Gedankenblitz – der micro:bit könnte helfen ... Wenn er ihn das Federpenal überwachen lässt und dazu einen Lautsprecher anschließt, könnte er so etwas rasch entdecken. Jede Bewegung löst dann sofort einen Alarm aus und schlägt Radau. Probier es doch auch!
Sie möchte das Partyspiel '''''Heiße Kartoffel''''' auf dem BBC micro:bit programmieren. Sie erklärt Dominic kurz den Spielablauf:
:„Bei dem Spiel '''''Heiße Kartoffel''''' geht es darum, dass ein Gegenstand – also die heiße Kartoffel - in einer Gruppe von Spielerinnen und Spielern schnell herumgereicht wird, bis es ein Stopp-Signal gibt. Im Originalspiel wird im Hintergrund eine laufende Musik von der Spielleiterin / vom Spielleiter ausgeschaltet. Die Person, die zum Zeitpunkt des Ausschaltens die Kartoffel in der Hand hält, scheidet aus. Gewonnen hat die Person, die am Ende übrigbleibt.“
 
„Das Spiel kann man gut mit dem BBC micro:bit umsetzen und ist dazu viel fairer als mit Spielleiterin oder Spielleiter!
 


== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung ==
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung ==
Der micro:bit soll bei jeglicher Bewegung ein Programm auslösen, das einen lauten Alarm abspielt, und so die Aufmerksamkeit aller in der Nähe befindlichen Personen auf sich ziehen.
* In der BBC micro:bit-Version von die '''''Heiße Kartoffel''''' ist der BBC micro:bit die heiße Kartoffel und fungiert auch als Spielleiter, der das Stopp-Signal gibt.
Dazu wird der micro:bit z.B. mit dem Federpenal verbunden, es reichen fürs Erste auch Gummibänder. Sobald jemand das Federpenal bewegt, löst das den Alarm aus und es ist eine Sirene zu hören.
* Wenn man das Start-Signal gibt (Button A drücken), geht der Zähler los.
* Der BBC micro:bit meldet den Start des Zählers mit einem Symbol auf dem Display.
* Die Startzeit des Zählers soll bei jedem Durchgang anders (zufällig) sein, um es spannender zu machen.
* Der Zähler zählt dann im Hintergrund (also nicht auf dem BBC micro:bit-Display sichtbar) herunter bis 0. Wichtig ist hier, dass der BBC micro:bit sehr schnell herunterzählen kann, er muss daher bei jedem Schritt eine Sekunde pausiert werden, 1000 ms sind das im Spiel.
* Wenn der Zähler 0 ist, meldet das der BBC micro:bit mit einem Symbol auf dem Display. Die Person, die den BBC micro:bit zu dem Zeitpunkt hält, scheidet aus.
* Das Programm und auch die erste Runde sind jetzt zu Ende.
* Durch Drücken des Button A wird die nächste Runde gestartet usw., bis nur noch eine Person übrigbleibt.


Da der micro:bit selbst keinen Lautsprecher besitzt, ist ein kleiner Piezo-Lautsprecher o.Ä. notwendig, um den Alarm hören zu können.
Weiters werden zur Verbindung des Lautsprechers mit dem micro:bit zwei Kabel mit jeweils zwei&nbsp;Krokodilklemmen benötigt. <spoiler text="Hinweis">Wie das genau geht, siehst du am besten hier: [[Hack_deine_Kopfhörer]]</spoiler>
Du kannst fürs Erste das Beispiel auch völlig ohne Lautsprecher/Kopfhörer erstellen und testen. <spoiler text="Hinweis">Wenn du dieses Beispiel im Online-Editor http://makecode.microbit.org erstellst, wird auch ein Lautsprecher/Kopfhörer im Computer simuliert.</spoiler>
== [[Datei:icon_material.png|20px|Icon]] Materialien ==
== [[Datei:icon_material.png|20px|Icon]] Materialien ==


* BBC micro:bit (enthält Platine, Kabel, Batterie)
* BBC micro:bit (mit USB-Kabel und Batterie)
* 2 Kabel mit Krokodilklemmen (z.B. rot/schwarz)
* Papier-[[Batteriehalter]]
* 1 Piezo-Lautsprecher <spoiler text="Hinweis">Achte auf die Polung beim Lautsprecher: schwarz auf GND und rot auf PIN 0.</spoiler>
 
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==


* ca. 1 Schulstunde zur Programmierung
* ca. 1 Schulstunde zur Programmierung
* ca. 1 Schulstunde für das anschließende Experimentieren
* ca. 1 Schulstunde für das anschließende Spielen und Experimentieren


== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
:[[Datei:SternGelb.png|30px|borderless]][[Datei:SternGelb.png|30px|borderless]][[Datei:SternLeer.png|30px|borderless]]
:[[Datei:SternGelb.png|30px|borderless]][[Datei:SternLeer.png|30px|borderless]][[Datei:SternLeer.png|30px|borderless]]


== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==
Du solltest bereits:
* eine [[Variable]] erstellen können
Du lernst
Du lernst
*externe Verbindungen mit micro:bit und Krokodilklemmen herzustellen.
* einer Variablen einen zufälligen Wert zuzuweisen
*Lautsprecher anzuschließen. <spoiler text="Hinweis">Achte auf die Polung beim Lautsprecher: schwarz auf GND und rot auf PIN 0.</spoiler>
* eine Variable in einer Schleife herunterzuzählen (bei jedem Durchlauf minus 1)
*die ereignisgesteuerte Programmierung. <spoiler text="Hinweis">z.B. „wenn geschüttlet“</spoiler>
* die ereignisgesteuerte Programmierung. <spoiler text="Hinweis">„wenn Knopf A gedrückt“</spoiler>
*Tonhöhe und Tondauer einzuschätzen, anzuwenden und zu verändern.
*Tonintervall eines Alarmsignals einzuschätzen, anzuwenden und zu verändern.


== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
Informatik, Musikerziehung, Physik
Bewegung & Sport, Informatik, Klassenvorstandstunde


== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellungen ==
== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellungen ==


=== Erforderliche Programmierblöcke ===
=== Erforderliche Programmierblöcke ===
[[Ereignissteuerung]], [[Schleifen#Befehlsblöcke|Schleife]], [[Bedingte_Anweisungen#Wenn-Dann|Bedingungen]], [[Boolean]], [[Musik]]
[[Ereignissteuerung]], [[Schleifen#Befehlsblöcke|Schleife]], [[Variablen]], [[Boolean]]


=== Eckpfeiler zur Programmierung ===
=== Eckpfeiler zur Programmierung ===
Sieh dir das Beispiel [[Hack_deine_Kopfhörer]] nochmal genau an, das ist die Grundlage für dieses Beispiel.
*Setze die [[Ereignisse#Weitere_Möglichkeiten_für_Ereignisse|Ereignissteuerung]] „wenn geschüttelt“ ein, um den Alarm zu starten.
*Der Alarm soll fortwährend eine Art Sirene mit dem micro:bit spielen. <spoiler text="Hinweis">Verwende dazu die [[Schleife]] „während wahr ... mache“.</spoiler>
*Überlege dir einen Alarm mit 2 Tönen aus dem Bereich [[Musik]].
::Versuche verschiedene Tonhöhen <spoiler text="Hinweis">Vorschlag: abwechselnd ein mittlerer und ein hoher Ton.</spoiler>
::Versuche verschiedene Tonlängen <spoiler text="Hinweis">Vorschlag: z.B. 1/2 Takt.</spoiler>


=== [[Audioalarm_Loesung|Schritt für Schritt zur Lösung]] ===
* Zum Start einer Runde verwende die Ereignissteuerung '''Wenn Knopf A gedrückt''' <spoiler text="Hinweis">
Weitere Informationen, Hinweise und auch eine mögliche, komplette Lösung findest du auf der [[Audioalarm_Loesung|Lösungsseite zu diesem Beispiel]].
<pre id="3">
input.onButtonPressed(Button.A, function () {
})
</pre>
</spoiler>
* Erstelle eine [[Variable]] '''zaehler''' und speichere eine zufällige Zahl zwischen 5 und 15 darin <spoiler text="Hinweis">
<pre id="3">
input.onButtonPressed(Button.A, function () {
// @highlight
zaehler = randint(5, 15)
})
</pre>
</spoiler>
* Solange die [[Variable]] '''zaehler''' größer als 0 ist soll sie um 1 vermindert werden und eine Sekunde gewartet werden <spoiler text="Hinweis">
<pre id="3">
input.onButtonPressed(Button.A, function () {
zaehler = randint(5, 15)
// @highlight
while (zaehler > 0) {
zaehler += -1
basic.pause(1000)
}
})
</pre>
</spoiler>
=== Schritt für Schritt zur Lösung ===
Das Schritt-für-Schritt Tutorial für dieses Projekt findest du [https://makecode.microbit.org/#tutorial:github:jimsio/dlpl2-tutorials/heisse-kartoffel hier].


== [[Datei:presentation.png|20px|Icon]] Präsentation und Reflexion ==
== [[Datei:presentation.png|20px|Icon]] Präsentation und Reflexion ==
Zeile 62: Zeile 89:


<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>
*Ab wann schlägt der Beschleunigungssensor/Bewegungsmelder an? Was kann hier verändert oder verbessert werden?
* Was passiert, wenn man bei jedem Schleifendurchlauf die Pause (1000 ms) weglässt?
*Welche Töne bzw. Tonfolgen eignen sich besonders für einen Alarm?
* Welchen Wert musst du ändern, damit die zufällige Zeit zum Spielen länger wird?
*Wie kann das Programm beendet werden? Gibt es eine bessere Möglichkeit, den Alarm zu beenden?
*Was passiert, wenn der Piezo-Lautsprecher umgekehrt gepolt wird? Warum?


== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==
== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==
*Variationen [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Explosion im Display oder Ähnliches - grafische Erweiterung, zusätzlich zum Audioalarm
*Grafisches Feedback [[Datei:Iconmonstr-arrow-20re-120.png|20px]] beim Stopp-Signal: [[Animiertes_Micro-Buch|Animation]] am Display statt nur ein Bild
*Komplexere Anwendungen [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Türalarm mit Beschleunigungssensor
*Sound-Feedback [[Datei:Iconmonstr-arrow-20re-120.png|20px]] spiele beim Stopp-Signal zusätzlich auch einen Sound ab. Verwende dazu den BBC [[Microbit-v2|micro:bit V2]] oder erweitere deinen V1 mit einem Lautsprecher.
*Adaptionen, Neuentwicklungen [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Schwarm Alarmanlage (ein Empfänger mit Lautsprecher, viele Sender über Bluetooth)
*Case-Design 3D-Druck [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Schaue im Internet nach BBC micro:bit Cases, die auch die Batterie gut befestigen. 3D-Druck in der Schule oder einer anderen Werkstätte (z.B. Happylab)


<htmlet>makecode_embed</htmlet>
<htmlet>makecode_embed</htmlet>

Aktuelle Version vom 19. Mai 2022, 13:21 Uhr

Icon Spiel für die Geburtstagsfeier

Heißer BBC micro:bit
Heißer BBC micro:bit

Dominic und Ceyda planen ihre gemeinsame Geburtstagsfeier und wollen unbedingt ein spannendes Gemeinschaftsspiel spielen. Am besten eines, das es so noch nicht gegeben hat, das möglichst einfach selbst zu machen ist, das weder ein altmodisches Brettspiel noch ein Computerspiel ist, und bei dem alle mitspielen können.

Ihre Ansprüche sind hoch, doch Ceyda hat da schon eine Idee:

Sie möchte das Partyspiel Heiße Kartoffel auf dem BBC micro:bit programmieren. Sie erklärt Dominic kurz den Spielablauf:

„Bei dem Spiel Heiße Kartoffel geht es darum, dass ein Gegenstand – also die heiße Kartoffel - in einer Gruppe von Spielerinnen und Spielern schnell herumgereicht wird, bis es ein Stopp-Signal gibt. Im Originalspiel wird im Hintergrund eine laufende Musik von der Spielleiterin / vom Spielleiter ausgeschaltet. Die Person, die zum Zeitpunkt des Ausschaltens die Kartoffel in der Hand hält, scheidet aus. Gewonnen hat die Person, die am Ende übrigbleibt.“

„Das Spiel kann man gut mit dem BBC micro:bit umsetzen und ist dazu viel fairer als mit Spielleiterin oder Spielleiter!“


Icon Aufgabenstellung

  • In der BBC micro:bit-Version von die Heiße Kartoffel ist der BBC micro:bit die heiße Kartoffel und fungiert auch als Spielleiter, der das Stopp-Signal gibt.
  • Wenn man das Start-Signal gibt (Button A drücken), geht der Zähler los.
  • Der BBC micro:bit meldet den Start des Zählers mit einem Symbol auf dem Display.
  • Die Startzeit des Zählers soll bei jedem Durchgang anders (zufällig) sein, um es spannender zu machen.
  • Der Zähler zählt dann im Hintergrund (also nicht auf dem BBC micro:bit-Display sichtbar) herunter bis 0. Wichtig ist hier, dass der BBC micro:bit sehr schnell herunterzählen kann, er muss daher bei jedem Schritt eine Sekunde pausiert werden, 1000 ms sind das im Spiel.
  • Wenn der Zähler 0 ist, meldet das der BBC micro:bit mit einem Symbol auf dem Display. Die Person, die den BBC micro:bit zu dem Zeitpunkt hält, scheidet aus.
  • Das Programm und auch die erste Runde sind jetzt zu Ende.
  • Durch Drücken des Button A wird die nächste Runde gestartet usw., bis nur noch eine Person übrigbleibt.

Icon Materialien

Icon Zeitaufwand

  • ca. 1 Schulstunde zur Programmierung
  • ca. 1 Schulstunde für das anschließende Spielen und Experimentieren

Icon Schwierigkeitsgrad

borderlessborderlessborderless

Icon Kompetenzen

Du solltest bereits:

Du lernst

  • einer Variablen einen zufälligen Wert zuzuweisen
  • eine Variable in einer Schleife herunterzuzählen (bei jedem Durchlauf minus 1)
  • die ereignisgesteuerte Programmierung. <spoiler text="Hinweis">„wenn Knopf A gedrückt“</spoiler>

Icon Unterrichtsfächer

Bewegung & Sport, Informatik, Klassenvorstandstunde

Icon Tipps und Hilfestellungen

Erforderliche Programmierblöcke

Ereignissteuerung, Schleife, Variablen, Boolean

Eckpfeiler zur Programmierung

  • Zum Start einer Runde verwende die Ereignissteuerung Wenn Knopf A gedrückt <spoiler text="Hinweis">
input.onButtonPressed(Button.A, function () {
})

</spoiler>

  • Erstelle eine Variable zaehler und speichere eine zufällige Zahl zwischen 5 und 15 darin <spoiler text="Hinweis">
input.onButtonPressed(Button.A, function () {
// @highlight
zaehler = randint(5, 15)
})

</spoiler>

  • Solange die Variable zaehler größer als 0 ist soll sie um 1 vermindert werden und eine Sekunde gewartet werden <spoiler text="Hinweis">
input.onButtonPressed(Button.A, function () {
zaehler = randint(5, 15)
// @highlight
while (zaehler > 0) {
zaehler += -1
basic.pause(1000)
}
})

</spoiler>

Schritt für Schritt zur Lösung

Das Schritt-für-Schritt Tutorial für dieses Projekt findest du hier.

Icon 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.

  • Was passiert, wenn man bei jedem Schleifendurchlauf die Pause (1000 ms) weglässt?
  • Welchen Wert musst du ändern, damit die zufällige Zeit zum Spielen länger wird?

Icon Weiterentwicklung

  • Grafisches Feedback beim Stopp-Signal: Animation am Display statt nur ein Bild
  • Sound-Feedback spiele beim Stopp-Signal zusätzlich auch einen Sound ab. Verwende dazu den BBC micro:bit V2 oder erweitere deinen V1 mit einem Lautsprecher.
  • Case-Design 3D-Druck Schaue im Internet nach BBC micro:bit Cases, die auch die Batterie gut befestigen. 3D-Druck in der Schule oder einer anderen Werkstätte (z.B. Happylab)