Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:microbit_und_roboter_programmieren:aufgaben_hof [2023-10-05 07:13] hofgf_informatik:microbit_und_roboter_programmieren:aufgaben_hof [2024-09-30 07:54] (aktuell) – [Aufgabe G6 (Medium): Remote Control] hof
Zeile 360: Zeile 360:
    1. Wie musst du den micro:bit halten und wie musst du dich bewegen?    1. Wie musst du den micro:bit halten und wie musst du dich bewegen?
  
-=== Aufgabe C4 (Advanced) ===+=== Aufgabe C4 ===
  
    1. Schreibe ein Programm, welches die **Gesamtbeschleunigung** misst und den Wert in der Konsole ausgibt. Füge nach jeder Messung wieder eine Pause ein.    1. Schreibe ein Programm, welches die **Gesamtbeschleunigung** misst und den Wert in der Konsole ausgibt. Füge nach jeder Messung wieder eine Pause ein.
    1. Hältst du den micro:bit still, sollten der bekannte Wert $9.81$ (oder zumindest Wert in der Nähe davon) angezeigt werden, unabhängig davon, in welche Richtung der micro:bit zeigt.    1. Hältst du den micro:bit still, sollten der bekannte Wert $9.81$ (oder zumindest Wert in der Nähe davon) angezeigt werden, unabhängig davon, in welche Richtung der micro:bit zeigt.
    1. Bewege den micro:bit nun so, dass du eine möglichst grosse Beschleunigung misst. Beschädige ihn aber nicht!    1. Bewege den micro:bit nun so, dass du eine möglichst grosse Beschleunigung misst. Beschädige ihn aber nicht!
-   1. Mit den Tasten sollst du nun zwischen drei Modi umstellen können:+   1. Erweiterung: Mit den Tasten sollst du nun zwischen drei Modi umstellen können:
       1. Anzeige in mg (z.B. $1018$)       1. Anzeige in mg (z.B. $1018$)
       1. Anzeige in $g$'s (z.B. $1.02$)       1. Anzeige in $g$'s (z.B. $1.02$)
Zeile 492: Zeile 492:
   * shake   * shake
   * freefall   * freefall
 +
 +
 ==== Aufgaben E (Audio) ==== ==== Aufgaben E (Audio) ====
  
Zeile 504: Zeile 506:
  
 === Aufgabe E3 === === Aufgabe E3 ===
-Schreibe ein Programm, das die Umgebungslautstärke auf dem Display angezeigt (`microphone.sound_level()` - [[https://microbit.org/get-started/user-guide/python/#microphone|Dokumentation]]). Je lauter, desto mehr und hellere Punkte sollen leuchten. Wie reagiert der Microbit auf das Programm aus E1 / E2, das auf einem anderen Gerät abgespielt wird?+Schreibe ein Programm, das die Umgebungslautstärke auf dem Display angezeigt (`microphone.sound_level()` - [[https://microbit-micropython.readthedocs.io/en/v2-docs/microphone.html|Dokumentation]]). Je lauter, desto mehr und hellere Punkte sollen leuchten. Wie reagiert der Microbit auf das Programm aus E1 / E2, das auf einem anderen Gerät abgespielt wird?
  
 <nodisp 1> <nodisp 1>
Zeile 532: Zeile 534:
 </code> </code>
 ++++ ++++
 +++++Als Equalizer|
 +<code python>
 +from microbit import *
 +
 +
 +while True:
 +    # Sound level from 0..250
 +    level = microphone.sound_level()
 +    # How many leds do we light up?
 +    leds = int(5 * level / 250)
 +    # How bright ist the last led?
 +    brightness = level % 10
 + 
 +    for x in range(5):
 +        for y in range(5):
 +            if x < 4:
 +                display.set_pixel(x, y, display.get_pixel(x+1,y))
 +            elif 4-y < leds:
 +                display.set_pixel(x, y, 9)
 +            elif 4-y == leds:
 +                display.set_pixel(x, y, brightness)
 +            else:
 +                display.set_pixel(x, y, 0)
 + 
 +    sleep(200)
 +</code>
 +++++
 +
 </nodisp> </nodisp>
 +
 === Zusatzaufgabe E4: Mini-Keyboard === === Zusatzaufgabe E4: Mini-Keyboard ===
 Schreibe ein Programm, um Musik abzuspielen. Verwende das `pin_logo`, `pin1` und `pin2` als berührungsempfindlicher Sensor (`pin1.set_touch_mode(pin1.CAPACITIVE)`). Wieviele Kombinationen der drei Pins gibt es? Das sollte für eine [[wpde>Diatonik|diatonische Tonleiter]] reichen... Schreibe ein Programm, um Musik abzuspielen. Verwende das `pin_logo`, `pin1` und `pin2` als berührungsempfindlicher Sensor (`pin1.set_touch_mode(pin1.CAPACITIVE)`). Wieviele Kombinationen der drei Pins gibt es? Das sollte für eine [[wpde>Diatonik|diatonische Tonleiter]] reichen...
Zeile 818: Zeile 849:
  
 Schreibe ein Programm, das das Display heller werden lässt, je näher der Maqueen zu einem Objekt ist. Betrachte zuerst den Beispiel-Code in der  Theorie zum [[gf_informatik:microbit_programmieren_grundlagen#distanzmesser|Distanzmesser]]. Schreibe ein Programm, das das Display heller werden lässt, je näher der Maqueen zu einem Objekt ist. Betrachte zuerst den Beispiel-Code in der  Theorie zum [[gf_informatik:microbit_programmieren_grundlagen#distanzmesser|Distanzmesser]].
-  * Das Programm soll für einen Distanz-Bereich zwischen 0 und 9 Dezimetern funktionieren.+  * Das Programm soll für einen Distanz-Bereich zwischen 0 und 9 Dezimetern (1 Dezimeter = 10cm) funktionieren.
   * Verwende eine bereits bekannte Methode, um die Display-Helligkeit abhängig von einer Variable zu setzen.   * Verwende eine bereits bekannte Methode, um die Display-Helligkeit abhängig von einer Variable zu setzen.
  
Zeile 896: Zeile 927:
         chassis.stop()         chassis.stop()
 </code> </code>
 +++++
 +</nodisp>
 +<nodisp 1>
 +++++Lösungen|
  
 === G3 === === G3 ===
  • gf_informatik/microbit_und_roboter_programmieren/aufgaben_hof.1696489984.txt.gz
  • Zuletzt geändert: 2023-10-05 07:13
  • von hof