Hardware: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Wechseln zu: Navigation, Suche
(Diverse Bausätze)
Zeile 85: Zeile 85:
 
=== Diverse Bausätze ===
 
=== Diverse Bausätze ===
 
[[Datei:Fischer_technik.png|500px]]
 
[[Datei:Fischer_technik.png|500px]]
 
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==
 
 
* 1 Unterrichtseinheit
 
 
== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
 
 
[[Datei:SternGelb.png|30px|borderless]][[Datei:SternLeer.png|30px|borderless]][[Datei:SternLeer.png|30px|borderless]]
 
 
 
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==
 
 
[[Datei:IMG_5764_(1).png|right]]
 
Du solltest bereits
 
* einen Prozentanteil schätzen können
 
* eine Wertetabelle anlegen und auswerten können
 
 
 
Beim Programmieren lernst bzw. übst du
 
 
* [[Variablen]] zu verwenden
 
* [[Operatoren]] zu verwenden
 
* den [[Zufallsgenerator]] zu nutzen
 
* [[Bedingungen]] zu verwenden
 
 
Bei dieser Aufgabe lernst du auch
 
* ein NEUES Programm zu lesen und es zu interpretieren
 
 
== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
 
 
* Mathematik
 
* Informatik
 
* Deutsch
 
 
== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellungen ==
 
 
=== Erforderliche Programmierblöcke ===
 
==== Ziel ====
 
* Der Zufallsgenerator sollte 2 Zustände darstellen: wahr oder falsch
 
* Diese Zustände entsprechen den 2 Möglichkeiten beim Münzwurf
 
* Es sollte jeweils die Anzahl der Treffer für "wahr" und für "falsch" gezählt werden.
 
 
==== Vereinbarung ====
 
* "'''W'''ahr bedeutet Kopf" und "Falsch bedeutet '''Z'''ahl"
 
 
[[Datei:kopf.png|200px ]] ... [[Datei:zahl.png|200px ]]
 
 
==== Blöcke ====
 
 
* Anstelle des Münzwurfs sollte der Zufallsgenerator "wahr" oder "falsch" liefern
 
* Der Zufallsgenerator sollte durch Schütteln des micro:bit aufgerufen werden
 
* Je nach Bedingung "wahr" oder "falsch" sollten verschiedene Aktionen stattfinden
 
<pre id="pre01">
 
input.onGesture(Gesture.Shake, function () {
 
if (true) {
 
 
} else {
 
 
}
 
})
 
</pre>
 
* Bestimmte Tastenereignisse für Taste A, B und A+B - müssen Daten anzeigen <spoiler text="Block">
 
<pre id="pre02">
 
input.onButtonPressed(Button.A, function () {
 
})
 
input.onButtonPressed(Button.AB, function () {
 
 
})
 
input.onButtonPressed(Button.B, function () {
 
 
})
 
</pre>
 
</spoiler>
 
* Daten müssen angezeigt werden <spoiler text="Block">
 
<pre id="pre03">
 
basic.showNumber(0)
 
</pre>
 
</spoiler>
 
* Bei Programmstart durchzuführen <spoiler text="Block"> <pre id="pre03">
 
basic.showNumber(0)
 
</pre></spoiler>
 
* Variablen müssen angelegt und initialisiert werden <spoiler text="Block"><pre id="pre03">
 
let anzahl_kopf = 0
 
let anzahl_zahl = 0
 
</pre></spoiler>
 
* Variablen müssen hochgezählt werden <spoiler text="Block"><pre id="pre03">
 
anzahl_zahl += 1
 
anzahl_kopf += 1
 
</pre></spoiler>
 
* Variablen müssen addiert werden <spoiler text="Block"><pre id="pre03">
 
let varx = anzahl_zahl + 1
 
 
</pre></spoiler>
 
 
=== Eckpfeiler zur Umsetzung ===
 
 
* Programmiere den micro:bit-Zufallsgenerator so, dass durch Schütteln ein Wert "wahr" oder "falsch" ermittelt wird (= Kopf oder Zahl)
 
* Wenn Taster "A" gedrückt wird, soll die Anzahl Kopfwürfe gezeigt werden
 
* Wenn Taster "B" gedrückt wird, soll die Anzahl Zahlwürfe gezeigt werden
 
* Wenn Taster "A+B" gedrückt werden, soll die Summe der Würfe dargestellt werden
 
* Zufallswerte erhält man aus dem Menü Mathematik "Wähle zufälligen Wahr- und Falsch-Wert"
 
* Wird Wahr ermittelt, so soll der Buchstabe "K" für Kopf erscheinen, andernfalls "Z" für Zahl.
 
* Hier benötigt man die logische Verzweigung "Wenn ... dann ... sonst"
 
* Das System sollte über zwei Variablen protokollieren, wie oft Kopf und wie oft Zahl geworfen wurde
 
 
===[[Lösung_zufall|Schritt für Schritt zur Lösung]]===
 
:Hinweise zur Lösungsfindung und auch eine mögliche, komplette Lösung findest du auf der [[Lösung_zufall|Lösungsseite zu diesem Beispiel]]
 
 
==[[Datei:presentation.png|20px|Icon]] Präsentation und Reflexion ==
 
 
===Allgemein===
 
* Stelle dein Ergebnis vor! Was kann dein Produkt?
 
* Was hat dir bei der Entwicklung deines Produkts gefallen?
 
* Welche Schwierigkeiten hattest? Wie konntest du diese lösen?
 
* Erläutere, wie du dein Produkt programmiert hast!
 
* Was war bei dieser Aufgabe interessant für dich?
 
 
===Projektspezifisch===
 
 
* Welche Regeln wurden für Kopf und Zahl festgelegt? Welche andere Regeln für "Kopf oder Zahl" gäbe es noch?
 
* Welche Diskussionspunkte ergaben sich während des Spiels?
 
* Wo wird im Alltag der Wirtschaft mit Zufallsgenerator gearbeitet?
 
* Wo braucht man bei einem Computerspiel den Zufallsgenerator.
 
* Wo war bei diesem Beispiel der Vorteil des Computers zu sehen, wo war er eher ein Nachteil?
 
* Bei welcher Erweiterungsstufe war es am schwierigsten, einen Programmcode zu erstellen.
 
 
==[[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==
 
 
* Schleife: Du kannst mit einer Schleife nicht nur jeweils einen Wurf produzieren, sondern gleich 100 oder gar 1000 Würfe
 
* Das bedeutet: Wenn einmal geschüttelt wird, werden gleich 1000 Würfe simuliert
 
* Nütze dabei den Vorteil des Computers &ndash; er kann sehr schnell rechnen
 
 
=== Noch eine Erweiterungsaufgabe ===
 
'''Analyse eines fremden Programmcodes:'''<br>
 
 
* Was stellt dieser Programmcode dar?
 
[[Datei:Lesen_prg.png|800px]]
 
 
Dieses Programm ist hier aufrufbar:
 
[https://makecode.microbit.org/#pub:_XdWYVaPe8WUk Link]
 
<htmlet>makecode_embed</htmlet>
 

Version vom 13. Oktober 2021, 13:30 Uhr

Icon Vorstellung des Micro:bit V2

Mb v2 vorne.png Mb v2 hinten.png

  • Der neue Micro:bit hat einige wichtige Verbesserung zu Version 1.0

Einige Daten:

  • Schnellerer Prozessor
  • RAM x 8: statt 16 kB nun 128 kB
  • Flashspeicher x 2: statt 256 kB und 512 kB
  • Max. Stromaufnahme: statt 90 mA nun 200 mA
  • Editor hat nun erweiterte Befehlssatz für 2.0:
  • Neue Soundeffekte
  • Neue Melodien
  • ...

Icon Aufgabenstellung

Icon Erweiterung Materialien zu Micro:bit

Erweiterungsboards

Board ohne Stromversorgung

  • Damit werden die Pins des Micro:bit auf Stifte herausgeführt - speziell für Breadboard-Arbeit

Board einfach.png

Board für die Vorsorung mit 5 Volt:

  • Damit gelingt eine Ansteuerung von vielen Erweiterungssensoren und Aktoren

Erweiterung 5volt.png Servo winkel.png

Motordriverboard zur Ansteuerung von Getriebemotoren

  • Motoren, ausgenommen Servormotoren, benötigen ein Motordriverboard

Kitronik motot driver.png Getriebemotor.png

Motoren

Servomoren:

  • Bei Servomotoren gibt es vorrangig 2 Typen, die für Micro:bit im niedrigen Preisbereich in Frage kommen.

Hier ist genau darauf zu achten, ob man einen Rotationsmotor oder eine Winkel-Motor benötigt

  • Die dargestellten Motoren sind auch mit 3 Volt betreibbar, wenn auch mit langsamer Geschwindkigkeit. Besser ist die Stromversorgung mit mind. 4,5 Volt, dann habe diese Motoren auch eine schnelle Ansprechgeschwindigkeit und Performance.

a) Servo-Winkelmotor: Drehwinkel 0 - 180 Grad

Servo winkel.png

b) Servo-Rotationsmotor: 0 - 180 gibt die Geschwindigkeit der Drehung an

Servo rotation.png


Getriebemotoren

  • Getriebemotoren benötigen ein Motorboard und auch mind. 5 Volt für den Betrieb, dafür verleihen sie den Modellen eine große Kraft bzw. Geschwindigkeit.

Getriebemotor.png

Bemerkung zu Motoren: Micro:bit wird mit 3 Volt betrieben. Das reicht für sehr viele Anwendungen völlig aus. Wir jedoch zusätzliche Hardware, wie Motoren verwendet, dann empfielt sich immer einen Stromversorgung mit 5 bis 6 Volt (USB-Ausgang, 3 bis 4 1,5 Volt-Batterien doer optimalerweise eine Powerbank vom Handy). Wenn dan auch noch Sensorrten betrieben werden, wird man ein zusätzliches Board nutzen.

Ultraschallsensoren

  • Der Ultraschallsensor sollte unbedingt auch mit 3,3 Volt betreibbar sein - wie dieser.

Ultraschall.png

Lichtgestaltung

Neopixel 01.png Neopxiel 02.png

Breadboard

Breadboard.jpg

Diverse Bausätze

Fischer technik.png