Zeitnehmung Lösung: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Wechseln zu: Navigation, Suche
Zeile 1: Zeile 1:
 
== Hilfestellung und Lösung zur Zeitnehmung Aufgabe ==
 
== Hilfestellung und Lösung zur Zeitnehmung Aufgabe ==
=== Wie kannst du mit dem micro:bit die gefahrene Zeit ermitteln? ===
 
 
Baue zuerst zwei Sensor. Prüfe diese mit dem micro:bit. Programmiere zuletzt ein Programm um die gefahrene Zeit zu berechnen.
 
Baue zuerst zwei Sensor. Prüfe diese mit dem micro:bit. Programmiere zuletzt ein Programm um die gefahrene Zeit zu berechnen.
 
====Hinweis 1: Baue einen Sensor, der erkennt ob das Spielzeugauto darüberfahrt ====
 
====Hinweis 1: Baue einen Sensor, der erkennt ob das Spielzeugauto darüberfahrt ====
Zeile 51: Zeile 50:
 
</li>
 
</li>
 
<li>
 
<li>
Im micro:bit ist eine Uhr eingebaut. Diese startet bei 0 wenn der micro:bit eingeschaltet wird.
+
Im micro:bit ist eine Uhr eingebaut. Diese startet bei 0 wenn der micro:bit eingeschaltet wird. Der Befehl '''Laufzeit (ms)''' greift auf diese Uhr zu. Dieser gibt an wie viele Millisekunden seit dem Starten des micro:bits vergangen sind. Das ms steht für Millisekunden. Eine Sekunde besteht aus Tausend Millisekunden.
 
 
 
 
, welche die Zeit angibt, die vergangen ist, seit der micro:bit gestartet wurde. Diese Uhr erhältst du über den die Laufzeit (ms). Die Laufzeit gibt an wie viele Millisekunden seit dem starten des micro:bits vergangen sind. Das ms steht für Millisekunden. Eine Sekunde besteht aus Tausend Millisekunden.
 
 
</li>
 
</li>
 
<li>
 
<li>
Um die Zeit zu erhalten, die das Spielzeugauto vom ersten bis zum 2. Sensor braucht, müssen wir die erste von der zweiten Zeit abziehen.
+
Um die Zeit zu erhalten, die das Spielzeugauto vom ersten bis zum 2. Sensor fährt, zieht der micro:bit die erste von der zweiten Zeit ab.
Zum Beispiel: Das Auto fährt 300 ms nach dem Starten des micro:bits über den ersten Sensor und nach 500 ms über den zweiten Sensor.  Dann musst du 500 – 300 = 200 ms rechnen. Das Auto hat also 200 ms vom ersten Sensor bis zum zweiten Sensor gebraucht.
+
Zum Beispiel: Das Auto fährt 300 ms nach dem Starten des micro:bits über den ersten Sensor und nach 500 ms über den zweiten Sensor.  Dann rechnet er 500 – 300 = 200 ms. Also benötigt das Auto vom ersten bis zum zweiten Sensor 200ms.
 
</li>
 
</li>
 
<li>
 
<li>
Damit sich der micro:bit merkt, wann das Auto über den ersten Sensor gefahren ist musst du die Zeit in eine Variable speichern.
+
Speichere die Zeit in eine Variable, wenn das Auto über den ersten Sensor fährt. Damit merkt sich der micro:bit diese Zeit.
 
<br clear=all>
 
<br clear=all>
 
[[Datei: ZnLsg_ZeitSpeichern.png|left]]
 
[[Datei: ZnLsg_ZeitSpeichern.png|left]]
Zeile 67: Zeile 63:
 
</li>
 
</li>
 
<li>
 
<li>
Wenn er nun über den zweiten Sensor fährt, soll er die aktuelle Zeit von der vorher gespeicherten abziehen. Damit erhalten wir die Fahrtzeit des Autos von Sensor1 zu Sensor2.
+
Ziehe die aktuelle Zeit von der vorher gespeicherten Zeit ab, wenn das Auto über den zweiten Sensor fährt. Dadurch erhält man die Fahrtzeit des Autos von Sensor1 zu Sensor2.
 
</li>
 
</li>
 
<li>
 
<li>
Diese Fahrtzeit können wir nun auf dem micro:bit anzeigen lassen.
+
Zeige diese Fahrtzeit nun auf dem micro:bit an.
 
<br clear=all>
 
<br clear=all>
 
[[Datei: ZnLsg_ZeitAnzeigen.png|left]]
 
[[Datei: ZnLsg_ZeitAnzeigen.png|left]]
Zeile 76: Zeile 72:
 
</li>
 
</li>
 
<li>
 
<li>
Eine Millisekunde ist ein Tausendstel von einer Sekunde. Deswegen werden die Zahlen sehr groß die der micro:bit anzeigt. Um die Zahl besser lesen zu können sollte man die Fahrtzeit durch Tausend rechnen. Dann werden die Sekunden vor dem Punkt und die Millisekunden nach dem Punkt angezeigt.
+
Eine Millisekunde ist ein Tausendstel einer Sekunde. Deswegen zeigt der micro:bit sehr große Zahlen an.  
 +
Rechne die Fahrtzeit durch Tausend um eine lesbare Zahl zu erhalten. Auf der LED-Matrix erschienen dann die Sekunden vor dem Punkt und die Millisekunden nach dem Punkt.
 
</li>
 
</li>
 
<li>
 
<li>
Um zu sehen, dass der erste Sensor angeschlagen hat soll der micro:bit ein Zeichen anzeigen. Das hilft beim Erkennen ob der Sensor auch richtig auslöst.
+
Wenn der erste Sensor anschlägt, zeige ein Zeichen auf der LED-Matrix an. Das hilft beim Erkennen ob der Sensor auch richtig auslöst.
 
</li>
 
</li>
 
</ul>
 
</ul>
Damit erhältst du dein fertiges Programm:
+
Der vollständige Lösungsvorschlag sieht dann so aus:
 
<br clear=all>
 
<br clear=all>
 
[[Datei: ZnLsg_Loesung.png|left]]
 
[[Datei: ZnLsg_Loesung.png|left]]
 
<br clear=all>
 
<br clear=all>
 
[https://makecode.microbit.org/_KxrLyvhxbKL5 Hier kommst du zum fertigen Programm auf makecode.org]
 
[https://makecode.microbit.org/_KxrLyvhxbKL5 Hier kommst du zum fertigen Programm auf makecode.org]

Version vom 3. Dezember 2019, 16:19 Uhr

Hilfestellung und Lösung zur Zeitnehmung Aufgabe

Baue zuerst zwei Sensor. Prüfe diese mit dem micro:bit. Programmiere zuletzt ein Programm um die gefahrene Zeit zu berechnen.

Hinweis 1: Baue einen Sensor, der erkennt ob das Spielzeugauto darüberfahrt

  • Verwende dazu 2 leitende Materialen. Lege diese knapp nebeneinander. Das darüberfahrende Auto verbindet diese.
  • Schreibe zum Testen ein Programm. Dieses schält bestimmte LEDs ein, wenn ein Sensor auslöst.

Hinweis 2: Mach dir einen Plan

  • Die leitenden Materialien müssen mit Ground und einem Pin auf dem micro:bit verbunden werden.

Hinweis 3: Sensoren prüfen

  • Zeige bestimmte Bilder an, wenn die Sensoren aktiviert werden.
    ZnLsg Sensortest.png


  • Verbinde die beiden Sensorteile mit einem Alufolienstück. Überprüfe ob das richtige Bild am micro:bit angezeigt wird.

Hinweis 4: Zeitnehmung programmieren

  • Der micro:bit hat keine eigene Stoppuhr-Funktion. Programmiere eine Stoppuhr mithilfe der eigenen Uhr des micro:bits.
  • Im micro:bit ist eine Uhr eingebaut. Diese startet bei 0 wenn der micro:bit eingeschaltet wird. Der Befehl Laufzeit (ms) greift auf diese Uhr zu. Dieser gibt an wie viele Millisekunden seit dem Starten des micro:bits vergangen sind. Das ms steht für Millisekunden. Eine Sekunde besteht aus Tausend Millisekunden.
  • Um die Zeit zu erhalten, die das Spielzeugauto vom ersten bis zum 2. Sensor fährt, zieht der micro:bit die erste von der zweiten Zeit ab. Zum Beispiel: Das Auto fährt 300 ms nach dem Starten des micro:bits über den ersten Sensor und nach 500 ms über den zweiten Sensor. Dann rechnet er 500 – 300 = 200 ms. Also benötigt das Auto vom ersten bis zum zweiten Sensor 200ms.
  • Speichere die Zeit in eine Variable, wenn das Auto über den ersten Sensor fährt. Damit merkt sich der micro:bit diese Zeit.
    ZnLsg ZeitSpeichern.png


  • Ziehe die aktuelle Zeit von der vorher gespeicherten Zeit ab, wenn das Auto über den zweiten Sensor fährt. Dadurch erhält man die Fahrtzeit des Autos von Sensor1 zu Sensor2.
  • Zeige diese Fahrtzeit nun auf dem micro:bit an.
    ZnLsg ZeitAnzeigen.png


  • Eine Millisekunde ist ein Tausendstel einer Sekunde. Deswegen zeigt der micro:bit sehr große Zahlen an. Rechne die Fahrtzeit durch Tausend um eine lesbare Zahl zu erhalten. Auf der LED-Matrix erschienen dann die Sekunden vor dem Punkt und die Millisekunden nach dem Punkt.
  • Wenn der erste Sensor anschlägt, zeige ein Zeichen auf der LED-Matrix an. Das hilft beim Erkennen ob der Sensor auch richtig auslöst.

Der vollständige Lösungsvorschlag sieht dann so aus:

ZnLsg Loesung.png


Hier kommst du zum fertigen Programm auf makecode.org