Conrad MIKROE-1883 Operation Manual [de]

Internet der Dinge
Lernpaket zur Programmierung einer smarten Welt.
?
Licht ging an.
Internet der Dinge, Denition:
Unter dem Internet der Dinge versteht man die Verbindung der realen Welt mit der digitalen Welt. Daten aus der realen Welt werden gesammelt und lösen ein Ereignis in der digitalen Welt aus. Ein Ereignis in der digitalen Welt kann auch zu ei­nem Ereignis in der realen Welt führen.
Das Internet der Dinge
WISSEN
Gerätehersteller haben das Internet für ihre Geräte entdeckt, und viele neue Pro­dukte werden mit Netzwerkanschluss ausgestattet. Dank IPv6 mangelt es nicht an verfügbaren IP-Adressen, denn hier stehen 128 Bit für die IP-Adresse zur Verfü­gung, statt der 32 Bit von IPv4. Geräte wie Smartphones, Autos, Lampen oder auch Kühlschränke kommunizieren, ganz ohne menschliches Eingreifen, miteinander. Damit wird die physikalische Welt mit der digitalen Welt verbunden. So stellt sich die Industrie das Internet der Dinge (In­ternet of Things, abgekürzt IoT) vor. Op­timisten sprechen schon vom Internet of Everywhere. Die einzelnen Marktforscher überschlagen sich dabei mit Zahlen: Gart­ner rechnet bis 2020 mit 26 Milliarden vernetzbaren Geräten, IDC sogar mit 212 Milliarden.
Geräte sprechen miteinander
2
Die FlowPaw-Platine
Das FlowPaw-Board hat vier Claws für ein Click-Board, im Bild ist Claw 3 zu sehen.
Das Gehirn der FlowPaw-Platine.
Das FlowPaw-Board hat vier Taster (T1, T2, T3 und T4) und vier LEDs (LED1, LED2, LED3 und LED4) die in FlowStone genutzt werden können.
Der USB-Anschluss des FlowPaw-Boards dient der Spannungsversorgung und wird zur Programmierung genutzt.
3
Click-Boards
7-Segment-Anzeige.
Beschriftung: 7seg click Modulname in FlowStone: 7 Segment LED Claw
Mit diesem Click-Board steht eine Sieben-Segment­Anzeige mit zwei Stellen zur Verfügung.
8x8-LED-Matrix.
Beschriftung: 8x8 R click Modulname in FlowStone: 8x8 LED Claw
Mit diesem Click-Board steht eine LED-Matrix mit 64 roten LEDs, aufgeteilt in 8 Spalten und 8 Zeilen, zur Verfügung.
Beschleunigungssensor.
Beschriftung: Accel click Modulname in FlowStone: Accel-Claw
Mit diesem Click-Board steht ein Drei-Achsen­Beschleunigungssensor zur Verfügung.
4
Bluetooth-Modul.
Beschriftung: BlueTooth click Modulname in FlowStone: –
Wird zur Kommunikation mit FlowStone verwendet und kann nicht in eigenen Programmen genutzt werden.
Dieses Click-Board ermöglicht es, dass das FlowPaw-Board über Bluetooth mit dem FlowStone-Rechner kommuniziert.
Click-Boards
Summer.
Beschriftung: BUZZ click Modulname in FlowStone: Buzzer Claw
Mit diesem Click-Board steht ein Piezosummer zur Verfügung.
Infrarottemperatursensor.
Beschriftung: IrThermo click Modulname in FlowStone: IR-Thermo-Claw
Mit diesem Click-Board steht ein Infrarotthermometer zur Verfügung. Das Modul kann Objekttemperaturen zwischen -70 °C und +380 °C messen und arbeitet zuverlässig bei einer Umgebungstemperatur zwischen
-40 °C und +85 °C.
Näherungssensor.
Beschriftung: Proximity click Modulname in FlowStone: Proximity Claw
Mit diesem Click-Board steht ein Näherungssensor für die Messung einer Distanz bis 20 cm zur Verfügung.
Relais.
Beschriftung: RELAY click Modulname in FlowStone: Relay Claw
Mit diesem Click-Board stehen zwei Relais zur Realisierung von Schaltvorgängen zur Verfügung, z.B. Anschalten von Licht.
WARNHINWEIS:
Achtung! Keine Spannungen über 48 V verwenden! Beim Umgang mit Netz­spannung besteht Lebensgefahr! Obwohl die Relais für Netzspannung zugelassen sind, verbietet sich der Einsatz hoher Spannungen wegen der offenen Bauweise der Platine.
Click-Boards
5
Die digitale Welt
4
Ablaufplanebenen
3
Werkzeugkiste
1
6
Statuszeile
Abbildung 1: Die Bereiche der Entwicklungsumgebung FlowStone
Um auf Ereignisse in der realen Welt zu reagieren,
oder auch Ereignisse auszulösen, steht die grasche
Entwicklungsumgebung FlowStone zur Verfügung. In FlowStone wird der Ablaufplan für das Programm er­stellt. FlowStone besteht aus insgesamt fünf Bereichen:
werden.
2
Ablaufplan vergrößern und verkleinern
6
angezeigt.
5
Menüzeile
Arbeitsbereich
1
• Im Arbeitsbereich des auszuführenden Programms erstellt, dieser kann vergrößert und verkleinert
• Elemente für den Ablaufplan werden in der Werkzeugkiste in den Ablaufplan gezogen.
• Ein Ablaufplan besteht aus mehreren Ebenen, die über den Bereich der Ablaufplanebenen erreichbar sind.
• Funktionen von FlowStone werden über die Menüzeile
• Meldungen werden in der Statuszeile
wird der Ablaufplan
2
3
ausgewählt und mit der Maus
5
aufgerufen.
Hintergrundwissen:
Ein Computer führt eine Funktion immer in Form eines Programms aus. Ein allseits bekanntes Computerpro­gramm ist der Internetbrowser, z. B. Google Chrome. Ein Computerprogramm wird in einer Programmiersprache geschrieben. Die Erstellung wird als Programmierung bezeichnet. Zumeist erfolgt die Programmierung in ein­er Entwicklungsumgebung, auch als IDE (Integrated Development Environment) bekannt. Es gibt grund­sätzlich zwei Arten von Entwicklungsumgebungen: eine textbasierte Entwicklungsumgebung (z. B. Microsoft Visual Studio) und eine grasche Entwicklungsumge­bung (z. B. FlowStone).
4
6
FlowStone
Erstellung eines Ablaufplans
Für die Erstellung des Ablaufplans stellt die Werk­zeugkiste eine Reihe unterschiedlicher Funktions­blöcke zur Verfügung. Einfache Funktionsblöcke in ei­nem Ablaufplan werden als Komponenten
1
bezeich-
net. Einzelne Komponenten können zu einem Modul
2
zusammengefasst werden, diese Module werden über einen eigenen Ablaufplan erstellt en und Module besitzen Ein- und Ausgänge
3
. Komponent-
4
. Ein Ablaufplan entsteht dadurch, dass diese Ein-/Ausgänge über einen Link
5
miteinander verbunden werden.
Werkzeugkiste bedienen
Die Funktionsblöcke der Werkzeugkiste geholt, sie sind in Kategorien
6
für den Ablaufplan werden aus
7
unterteilt. Die Kategorien können auf- und zugeklappt werden dus verändert werden. Durch Klick auf den Bleistift
8
. Kategorien können im Bearbeitungsmo-
9
wird dieser Modus gestartet und es können Kategorien hinzugefügt
10
oder auch gelöscht werden 11. Ein Funk­tionsblock kann einer oder mehreren Kategorien zuge­wiesen werden sehr groß ist, stehen eine Volltextsuche
Suchlter
12
. Da die Anzahl der Funktionsblöcke
13
und auch
14
zum schnelleren Aufnden zur Verfügung.
Programm und Ablaufplan
Wie im Hintergrundwissen erklärt, wird eine Funktion auf einem Computer als Programm ausgeführt, so auch in FlowStone. Über den Menüpunkt Datei/Neu wird ein neues Programm erzeugt und über Datei/Öffnen kann ein vorhandenes FlowStone-Programm geöff­net werden. Solch ein Programm hat die Dateiendung .fsm, dies ist die Abkürzung für FlowStone Module. Beschrieben wird ein Programm in FlowStone durch
den graschen Ablaufplan.
1 2
Komponenten.
Sprung in den Ablaufplan
3 3
Über das Modulmenü kann in
den Ablaufplan gesprungen werden.
4
Eingang
Der Pfeil einer Verbindung zeigt die Richtung an,
in die die Daten ießen.
10
11
Modul.
Module können beliebig komplizierte
Ablaufpläne haben.
Kategorie hinzufügen Kategorie löschen
4
5
Ausgang
Link
9
Kategorien bearbeiten
8
Auf-/ Zuklappen der Kategorien
7
Kategorien
Funktionen der Werkzeugkiste.
Ablaufplan für das Modul
3
Nach dem Öffnen des Ablaufplans kann auch wieder zum Hauptablauf­plan gesprungen werden.
13
Suche
14
Suchlter
Funktions-
6
blöcke
12
Komponente zu einer Kategorie hinzufügen
Eigene Kategorien in der Werkzeugkiste hinzufügen.
FlowStone
77
Informationen speichern und verarbeiten
Wahrheitswerte
8
Aufbau für Buzzer-Projekt auf Seite 11.
WISSEN
Wahrheitswerte im täglichen Leben
Im normalen Leben trifft man Wahrheits­werte an all den Stellen an, bei denen es um Ein- und Ausschaltvorgänge geht - etwa beim Licht, das durch den Lichtschalter ein­geschaltet wird, bei der Spülmaschine, die durch den Einschaltknopf in Gang gesetzt wird, oder auch der Waschmaschine, die ebenfalls über einen Ein-/Ausschalter verfügt.
Ein Computer verarbeitet Informationen in der Einheit Bit. Ein Bit kann dabei zwei Werte haben, 0 und 1. Um größere Daten zu speichern, werden mehrere Bits
aneinandergereiht. Der Wert 0 wird häug auch mit
Aus oder Falsch gleichgesetzt und der Wert 1 mit Ein oder Wahr. Wenn es in der Datenverarbeitung nur um Ein/Aus oder Wahr/Falsch geht, spricht man vom
Wahrheitswert oder in der Fachsprache vom Boolean.
Da die meisten Programmiersprachen in englischer Sprache gehalten sind, ist der Fachausdruck für Wahr der englische Begriff True und für Falsch der englische Begriff False.
Das wird für das Projekt benötigt
Buzzer-Click
Summer
Dauer:
1 Unterrichtseinheit
Projektdatei:
wahrheitswert_code.fsm
Wahrheitswerte
9
Rechnen mit Wahrheitswerten
Für die Darstellung eines Wahrheitswerts existiert der Funktionsblock Wahrheitswert in der Kategorie Element. Per Klick in das weiße Feld schaltet der Wahrheitswert von False auf True oder von True auf False um
1
Wahrheitswert mit dem
Wert False (Aus, Falsch).
Wahrheitswerte miteinander verbinden
Wahrheitswerte können über logische Operatoren miteinander verbunden werden, dabei gelten folgende drei Regeln:
2
.
1
, dieser bendet sich
2
Wahrheitswert mit dem
Wert True (Ein, Richtig).
Regel 1: Wahr und Wahr = Wahr
Regel 2: Wahr und Falsch = Falsch
Regel 3: Wahr oder Falsch = Wahr
In FlowStone stehen die logischen Operatoren über Funktionsblöcke zur Verfügung. Das logische Und heißt
3
in FlowStone Logisches Und heißt Logisches Oder werte werden über Links mit dem logischen Operator
TIPP
5
.
verbunden
3
Logisches Und.
5
Link mit dem Operator herstellen.
Ein neues Programm in FlowStone wird über den Menüpunkt Datei/Neu oder das Tastaturkürzel [Strg]+[N] erstellt.
4
4
Logisches Oder.
. Das logische Oder
. Die einzelnen Wahrheits-
ÜBUNG
1) Verknüpfen Sie zwei Wahrheitswerte mit einem logischen Und und zeigen das Ergebnis mit einem neuen Wahrheitswert an
Lösung: wahrheitswert_und.fsm
6
Zwei Wahrheitswerte über ein logisches Und miteinander verknüpfen.
10
Wahrheitswerte
Schwierigkeit: Schwierigkeit:
6
.
2) Verknüpfen Sie zwei Wahrheitswerte mit einem logischen Oder und zeigen das Ergebnis mit einem neuen Wahrheitswert an
Lösung: wahrheitswert_oder.fsm
7
Zwei Wahrheitswerte über ein logisches Oder miteinander verknüpfen.
7
.
LEDs auf dem FlowPaw-Board zum Leuchten bringen
Nun sollen die einzelnen Lichter, beschriftet mit LED1, LED2, LED3 und LED4, über Wahrheitswerte zum Leuchten gebracht werden.
Dauer: 1/2 Unterrichtseinheit
Datei: owpaw_leds_wahrheit.fsm
Schritt 5:
Die LED wird über einen Wahrheitswert eingeschaltet und mit dem Eingang LED1 verbunden
3
. Nach Klick
auf den Wahrheitswert schaltet dieser auf Tru e um und die LED1 auf dem FlowPaw-Board leuchtet. Um direkt alle vier LEDs anzuschalten, wird der Ausgang des Wahrheitswertes mit LED1, LED2, LED3 und LED4 verbunden
4
.
Schritt 6:
Nun soll noch der Wert des Knopfes T1 eingelesen werden. Hierfür wird der Ausgang B1 des Funktions­blocks FlowPaw mit dem Eingang eines Wahrheits­wertes verbunden
5
.
Schritt 1:
Das FlowPaw-Board wird mit dem Computer verbund­en und die LEDs gehen reihum an und wieder aus.
Schritt 2:
Neues Programm über den Menüpunkt Datei/Neu erstellen.
Schritt 3:
Nun wird der Funktionsblock FlowPaw
1
Funktionsblock FlowPaw.
1
eingebunden.
Schritt 4:
Um mit dem FlowPaw-Board zu kommunizieren, muss der Funktionsblock Trigger-Knopf
2
mit dem Eingang Verbin-
den verbunden werden. Nach Klick auf das rote Feld,
hören die LEDs auf dem FlowPaw-Board auf zu leuchten.
3
Eine LED über Wahrheitswert schalten.
4
Alle vier LEDs über einen Wahrheitswert schalten.
ÜBUNG
1) Nun soll ein ein verschachtelter Wahrheitswert eingegeben werden. Hierfür ist das FlowPaw-Board gemäß der Anleitung auf  Seite 9 aufzubauen und
5
Knopf T1 auswerten.
Schritt 7:
Nach Drücken des Knopfes T1 auf der Platine schaltet der Wahrheitswert im Ablaufplan auf den Wert True.
TIPP
Die Einbindung der einzelnen Funktionsblöcke geschieht am schnellsten über die Volltextsuche. Schon nach Eingabe eines Buchstabens wird ein Ergebnis angezeigt, d.h. es muss gar nicht das ganze Wort eingegeben werden.
die Projektdatei wahrheitswert_code.fsm in Flow­Stone zu laden.
Schwierigkeit:
2
Trigger-Knopf mit FlowPaw verbinden.
Übungsdatei wahrheitswert_code.fsm.
Wahrheitswerte
11
Zahlensysteme
2731
542
326
11853
769130
0113277
732598
Zahlensysteme
12
16
WISSEN
WISSEN
Zahlensysteme im täglichen Leben
Das in unserem täglichen Leben am häu-
gsten verwendete Zahlensystem ist das
Dezimalsystem. Um Mengen zu beschreiben, benötigen wir Zahlen. Das Gewicht von Leb­ensmitteln wird mit Zahlen in Verbindung mit der Maßeinheit Gramm verwendet, also z.B. 1000 Gramm = 1 Kilogramm Äpfel. Noch
häuger kommt das Dezimalsystem bei Geld
zum Einsatz, z.B. 70 Euro.
Aufbau für Zahlensystem-Projekt auf Seite 15.
Das wird für das Projekt benötigt
8x8-LED-Click-Board
LED-Matrix
Dauer:
1 Unterrichtseinheit
7-Segment-Click-Board
7-Segment-Anzeige
Projektdatei:
zahlensysteme_uebung.fsm
Zahlensysteme
13
16
2
10
Mathematik der Stellenwertsysteme
Im Alltag ist man sich gar nicht darüber bewusst, dass unterschiedliche Zahlensysteme existieren – mit dem genutzten Dezimalsystem verwendet man aber bereits ein solches Zahlensystem. Dieses gehört zu den Stel­lenwertsystemen und ist dabei nur ein Zahlensystem
unter vielen. Jedes Zahlensystem deniert Regeln dazu,
welche Ziffern (Zahlen und Zeichen) verwendet werden dürfen. Die Anzahl der möglichen Ziffern wird dabei als Basis des Stellenwertsystems bezeichnet. Im Dezimal­system sind das zehn Ziffern: 0, 1, 2, 3, 4, 5, 6, 7, 8 und
9. Um nun größere Zahlen als 9 darzustellen, werden die Ziffern aneinandergereiht. Der einzelne Wert wird dann wie folgt berechnet: Die Basiszahl wird mit der Stellenzahl potenziert und mit der Ziffer multipliziert. Am Ende werden die Ergebnisse für die einzelnen Stel­len addiert. Die Ziffer ganz rechts, hat den Stellenwert 0.
BEISPIEL:
1 2 5 3
3
1*10
+ 2*102 + 5*101 + 3*10
Ein Computer speichert seine Informationen im Binärsystem ab. Dies ist ein Stellenwertsystem mit der Basis 2 und hat als mögliche Ziffern 0 und 1. Zur Darstellung von großen Zahlen werden im Binärsystem viele Ziffern benötigt, für eine verkürzte Schreibweise
kommt daher häug das Hexadezimalsystem mit einer
Basis von 16 zum Einsatz. Nachfolgende Tabelle zeigt das Dezimalsystem, das Hexadezimalsystem und das Binärsystem im Vergleich.
0
Dezimalsystem
10
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 A 1010
11 B 1011
12 C 1100
13 D 1101
14 E 1110
15 F 1111
Umrechnungstabelle zwischen den Stellenwertsystemen Dezimalsystem, Hexadezimalsystem und Binärsystem.
Hexadezimal-
system
16
Binärsystem
2
Zahlensysteme
14
Zahlensysteme in FlowStone nutzen
Dauer: 1/2 Unterrichtseinheit
Datei: zahlensysteme.fsm
In diesem Beispiel soll die Nutzung von Zahlensyste­men in FlowStone gezeigt werden. Hierfür wird ein Programm erstellt, um Dezimalzahlen in Binärzahlen und in Hexadezimalzahlen umzurechnen.
Schritt 1:
Neues Programm in FlowStone über den Menüpunkt
Datei/Neu erstellen.
Schritt 2:
In Ablaufplan werden die Funktionsblöcke Ganzzahl
1
und Zeichenkette 2 hinzugefügt.
Schritt 3:
Die beiden Funktionsblöcke werden über den Funk-
3
tionsblock Ganze Zahl zu Hexadezimal
mitein-
ander gekoppelt.
3
Dezimal zu Hexadezimal.
Schritt 4:
Nun soll der Weg andersherum auch noch umgesetzt werden. Hierfür werden nochmals der Funktionsblock Zeichenkette und auch der Funktionsblock Ganzzahl zum Ablaufplan hinzugefügt und über den Funktions­block Hexadezimal zu Ganzzahl
4
miteinander ver-
bunden.
4
Hexadezimal zu Dezimal.
Schritt 5:
Jetzt soll auch noch der binäre Wert für die hexadezi­male Eingabe ausgegeben werden. Hierfür wird erneut der Funktionsblock Zeichenkette für die Anzeige einge­fügt und über den Funktionsblock Hexadezimal zu Binär mit dem Eingabeblock verbunden
5
Hexadezimal zu Dezimal und Binär.
5
.
1
Ganzzahl.
2
Zeichenkette.
ÜBUNG
1) Nun soll eigenständig mit Zahlensystemen gearbeitet werden und insgesamt vier Aufgaben gelöst werden. Hierfür ist das FlowPaw-Board gemäß der Anleitung auf  Seite 13 aufzubauen und die Projektdatei
zahlensysteme_uebung.fsm in FlowStone zu laden.
Hinweis:
Die LED-Matrix zeigt den binären Wert an. Dabei ist der Wert von links nach rechts (Richtung schwarzer Pro­zessor) zu lesen. Eine leuchtende LED ist 1, ansonsten 0.
Übungsdatei
zahlensysteme_uebung.fsm
Anzeige des Wertes im Binärsystem
Anzeige des Wertes im Hexadezimalsystem
Zahlensysteme
15
Internet der Dinge
Sensoren und Aktoren
16
WISSEN
Sensoren im täglichen Leben
Beschleunigungssensoren werden in vielen Bereichen
eingesetzt, wie z. B. bei
Federungssystemen in Fahr-
zeugen, Steuerung von
Videospielen (Nintendo Wii) oder auch bei der
Messung von Vibrationen an Gebäuden.
Bei einem Smartphone können mit einem Beschleunigungssensor Bewegungen des Handys erkannt und ausgewertet werden. Apps zur Navigation oder auch Spiele nut­zen diesen Sensor, um die Navigation auch ohne Positionssignal (GPS) im Tunnel fortführen zu kön­nen oder die Spielsteuerung mit der Bewegung des Smarphones zu ermögli­chen. Aber auch eine der Standardfunktionen mod­erner Smartphones – das Ändern des Displayinhalts von Quer- auf Hochformat und andersherum – greift auf den Beschleunigungs­sensor zurück.
Das wird für das Projekt benötigt
IR-Thermo-Click-Board
Temperatursensor
7-Segment-Click-Board
7-Segment-Anzeige
Dauer: 3 Unterrichtseinheiten Projektdatei: iot_projekt.fsm
Relay-Click-Board
Relais
Buzzer-Click-Board
Summer
Aufbau für IoT-Projekt auf Seite 20.
Accel-Click-Board
Beschleunigungssensor
Sensoren und Aktoren
17
Bewegung im Raum messen
Dauer: 2 Unterrichtseinheiten
WISSEN
Summer in FlowStone
Schritt 2: Der Summer, beschriftet mit BUZZ click,
wird in Steckplatz 4 gesteckt.
Schwierigkeit:
Datei: accel_projekt.fsm
In diesem Projekt wird die Nutzung des Beschleuni­gungssensors gezeigt und dessen Daten werden genutzt, um ein zweites Click-Board, den Summer, anzusteuern.
WISSEN
WISSEN
Click-Boards in FlowStone
Das Modul FlowPaw in FlowStone besitzt für jeden Click-Board­Steckplatz einen Eingang. Diese sind mit Zahlen beschriftet.
Um ein Click-Board in FlowStone anzusprechen, muss dieses mit dem entsprechenden Eingang verbunden werden. Jedes Click-Board-Modul in FlowStone hat einen Eingang (beschriftet mit FlowPaw) für das FlowPaw-Modul.
Für die Ansteuerung des Summers muss das Modul Buzzer Claw verwendet werden. Das Modul hat vier Eingänge und einen Ausgang.
Über den Eingang FlowPaw wird das Modul mit FlowPaw verbunden. Über Frequenz kann eine Tonfrequenz zwischen 50 und 8.000 Hertz angegeben werden. Bei Sequenz kann zwischen 9 verschiedenen Sequenzen ausgewählt werden, 1 ist dabei die erste Sequenz. Über Play wird die Tonfrequenz oder die Sequenz abgespielt, hier muss ein Impuls anliegen, z. B. durch den Wechsel eines Wahrheitswerts (False auf True oder True auf False).
Schritt 1: Der Beschleunigungssensor, beschriftet mit Accel click, wird in Steckplatz 3 gesteckt.
Schritt 3:
In diesem Schritt soll die Beschleunigung angezeigt werden. Dafür wird das FlowPaw-Board mit dem Accel- click verbunden. Und die drei Ausgänge (X, Y und Z) werden jeweils mit der Komponente Dezimalzahl ver- bunden
1
.
WISSEN
WISSEN
Beschleunigungssensor in FlowStone
Um den Beschleunigungs­sensor auszulesen, muss das Modul Accel-Claw verwendet und über den Eingang FlowPaw mit dem Modul FlowPaw verbunden werden. Das
Modul liefert dann drei Werte zurück: Beschleunigung in X-, Y- und Z-Rich­tung. Der Wertebereich reicht von -1 bis 1.
Sensoren und Aktoren
18
1
Anzeige der Beschleunigungswerte.
Schritt 4:
Das Programm kann jetzt bereits getestet werden. Nach einem Klick auf Trigger werden die Beschleuni- gungswerte angezeigt. Sobald das Board bewegt wird, ändern sich die Werte.
Schritt 5:
Nun wird der Funktionsblock Buzzer Claw mit Eingang 4 von FlowPaw verbunden
2
.
Schritt 7:
WISSEN
Mathematische Bedin­gungen in FlowStone
Für die Berechnung von mathematischen Bedin­gungen stehen vier Funktionsblöcke zur Verfügung: Größer Gleich
5
, Größer-Gleich 6, Kleiner 7, Kleiner-
8
und Gleich 9. Jeder dieser Funktions­blöcke hat zwei Eingänge und das Ergebnis wird in Form eines Wahrheitswertes weitergegeben. Als Eingang können ganze Zahlen, Dezimalzahlen und auch eine Menge von Zahlen (als Array bezeichnet) verwendet werden.
10
Bedingung für Beschleunigung in X-Richtung.
Schritt 8:
WISSEN
Wahrheitstrigger in FlowStone
2
Buzzer Claw verbinden.
Schritt 6:
Der Eingang Sequenz
3
wird mit einem Funktions-
block Ganzzahl verbunden, als Wert wird 5 vorgege­ben. Damit spielt der Summer dann die Sequenz 5 ab, sobald an Play der Wahrheitswert Tr u e anliegt. Dies kann sehr einfach getestet werden: Ein Funktionsblock Wahrheitswert wird mit Play verbunden und nach Klick auf Trigger wird die Sequenz abgespielt, sobald der Wahrheitswert wechselt – dies erreicht man durch Klick mit der Maus in das weiße Feld des Wahrheits-
4
wertes
3
4
.
Sequenz 5 für Summer einstellen.
Wahrheitswert mit Play verbinden.
5 6
87
9
Nun soll das Abspielen der Sequenz um eine Bedingung erweitert werden. Diese Aufgabe wird in zwei Schritten umgesetzt. Zunächst wird der Beschleunigungssensor um eine Größer-Bedingung ergänzt. Sobald die Be­schleunigung in X-Richtung den Wert 0,1 übersteigt, soll ein Wahrheitswert auf Tr u e gesetzt werden, hierfür kommt der Funktionsblock Größer zum Einsatz. Der X-Wert wird mit einem vorgegebenen Wert verglichen, hier wird ein Funktionsblock Dezimalzahl hinzugefügt. Der Ausgang wird mit einem Wahrheitswert verbunden
10
.
In FlowStone stehen zwei Wahrheitstrigger für die Programmierung bereit: der Wahr-Trigger der Falsch-Trigger
12
. Ein Wahr-Trigger sendet ein-
11
und
en Impuls, sobald am Eingang ein True anliegt, und ein Falsch-Trigger, sobald am Eingang ein False anliegt.
11
12
Nun wird noch der Summer in die Bedingung einge­bunden. Hierfür wird der Funktionsblock Wahr-Trigger eingesetzt, damit der Summer nur dann die Sequenz abspielt, wenn auch die Bedingung erfüllt ist. Der Aus­gang des Wahr-Triggers wird mit dem Summer (Ein- gang: Play) verbunden
13
Summer spielt Sequenz bei bestimmter Bewegung
in X-Richtung.
13
.
Sensoren und Aktoren
19
Internet der Dinge
Dauer: 1 Unterrichtseinheit
Schwierigkeit:
Datei: iot_projekt.fsm
Das bisher erlernte Wissen wird nun zusammenge­bracht, um damit ein Beispielprojekt für das Internet der Dinge umzusetzen. Es werden Daten gelesen (Tem­peratur) und auf einem Display angezeigt. Über das Internet wird ein Temperaturwert als Schwellenwert vorgegeben und dazu genutzt, ein Relais anzusteuern.
WISSEN
Temperatursensor in FlowStone
Um den Infrarot-Tem­peratursensor auszu­lesen muss das Modul IR-Thermo-Claw verwendet werden und über den Eingang FlowPaw mit dem
Modul FlowPaw verbunden werden. Das Modul liefert dann zwei Werte zurück: Objekttempera­tur (Ausgang: Temp) und Umgebungstemperatur (Ausgang: Umgebung).
WISSEN
Relais in FlowStone
Um das Relais anzu­steuern muss das Mod­ul Relais-Claw ver­wendet und über den Eingang FlowPaw mit dem Modul FlowPaw verbunden werden. Die
beiden Relais auf dem Click-Board können über die Eingänge 1 und 2 geschaltet werden, hierfür muss der Wahrheitswert Tru e angelegt werden.
Schritt 1:
Das FlowPaw-Board ist wie auf  Seite 17 abgebildet aufzubauen.
Schritt 2:
Das Projekt iot_projekt.fsm
1
ist in FlowStone zu laden
Schritt 3:
Das Programm wird per Klick auf Trigger gestartet
2
Die LEDs (LED1 – LED4) auf dem FlowPaw-Board leucht­en nicht mehr. Im Ablaufplan leuchtet die mit Connected beschriftete Lampe.
1
Übungsdatei iot_projekt.fsm
Schritt 4:
Die Temperatur kann über eine Weboberäche
eingestellt werden. Hierfür ist eine Webadresse (URL genannt) erforderlich. Jedes FlowPaw-Board hat eine eindeutige Nummer (ID
3
), unter der es identiziert
werden kann. Diese wird beim Programmstart ermit­telt, und daraus wird die URL gebildet
3
ID des FlowPaw-Boards.
4
.
4
Webadresse.
.
WISSEN
7-Segment-Anzeige in FlowStone
Um die 7-Segment-An­zeige anzusteuern, muss das Modul 7-seg. LED-Claw verwendet werden und über den Eingang FlowPaw mit dem Modul FlowPaw
verbunden werden. Für die Anzeige von Werten stehen die Eingänge Wert (Wertebereich: 0 - 99) und Hex (Wertebereich: 0 – FF) zur Verfügung.
Sensoren und Aktoren
20
1
Übungsdatei iot_projekt.fsm
Schritt 5:
Über den Ablaufplan kann direkt der Internetbrows­er geöffnet werden. Hierfür muss auf den Trigger am rechten Rand des Ablaufplans geklickt werden
Nun öffnet sich die Weboberäche
6
im Browser, al-
5
ternativ kann in einem Browser auch die angezeigte
Webadresse eingetippt werden. Die Oberäche zeigt
zwei Diagramme. Button1 zeigt an, ob der Knopf T1 auf dem FlowPaw-Board gerade gedrückt wird, und Temp(C) zeigt die gemessene Temperatur an. In die­sem Diagramm kann mit der Maus der Schwellenwert eingestellt werden, dafür muss die dünne grüne Linie nach oben oder unten gezogen werden. Während des Verschiebevorgangs wird der Schwellenwert an der Linie angezeigt
5
Direkter Aufruf des Internetbrowsers.
7
.
.
7
Schwellenwert für Temperatur einstellen.
Schritt 6:
Im Ablaufplan wird die Temperatur vom Tempera­tursensor ausgewertet und mit dem Schwellenwert verglichen
8
. Sollte der Schwellenwert erreicht sein, schaltet das Relais. Dies kann sehr einfach getestet werden: Hierfür sollte ein niedriger Schwellwert, z.B. 23, gewählt und die Hand nah über den Sensor gelegt werden. Der Wert geht über 23, und das Relais schaltet.
Kein Internet
Ist kein Internet vorhanden, ist statt des obigen
Projekts das Projekt iot_ohne_internet.fsm zu laden
9
. Das Projekt hat den gleichen Hardwareaufbau wie obiges Projekt. Die Temperatur wird aber im Quellcode eingestellt, hier muss nur die Zahl entsprechend ange­passt werden
9
Ablaufplan für Projekt ohne Internet.
10
. Standardmäßig steht der Wert auf 26.
6
Die Weboberäche.
8
Vergleich des Schwellenwertes erfolgt
über einen Codeblock.
10
Schwellenwert im Code einstellen.
Sensoren und Aktoren
21
Lernerfolge messen
Lernkontrollsystem
22
Lernerfolge messen
In FlowStone ist es möglich, Aufgaben mit einer Lern­kontrolle direkt in den Ablaufplan zu integrieren. Damit kann kontrolliert werden, ob der Lehrstoff von den Schülern verstanden wurde und an welchen Stellen noch weitere Übungen erforderlich sind.
Ablaufpläne mit Kontrollsystem
Zwei der beiliegenden Ablaufpläne haben solch ein System direkt integriert:
- wahrheitswert_code.fsm (Seite 9)
- zahlensysteme_uebung.fsm (Seite 13)
Anzeige der Lernkontrolle
Beim Öffnen des Ablaufplans wird die Lernkontrolle im Ablaufplan angezeigt und steht bei 0%
1
. Sobald alle Lernziele erfolgreich erreicht sind, wird dies mit einem Haken angezeigt
2
. Enthält ein Projekt mehr
als ein Lernziel, wird auch das Erreichen von Teilzielen
3
angezeigt.
Sobald ein Projekt mit Lernzielen abgespeichert wird, ist der Lernzielstand mitgespeichert und kann auch nicht mehr zurückgesetzt werden.
Auswertung der Ergebnisse
Um eine Auswertung durchführen zu können, müs­sen die mit dem Lernkontrollsystem versehenen Pro­gramme der Schüler in einer bestimmten Verzeich­nisstruktur vorliegen. FlowStone gibt keine konkrete Struktur vor, es bietet sich aber der in Aufbau an. In einem Basisverzeichnis terschiedlichen Jahrgangsstufen, z. B. Jg. 7 in
4
dargestellte
5
liegen die un-
6
. Inner­halb der Jahrgangsstufen liegen die einzelnen Klassen, die am besten mit dem Namen des Lehrers benannt sind, z. B. Hr. Huber in nisses ist ein Verzeichnis pro Schüler vorgesehen
7
. Innerhalb dieses Verzeich-
8
Im jeweiligen Schülerverzeichnis, z. B. Markus Müller
9
in
, liegen dann die einzelnen Ablaufpläne.
5
Basis-
7
Klasse
verzeichnis
8
Schüler
6
Jahrgangsstufe
Auswertungssystem in FlowStone laden
Für die Auswertung der Lernerfolge muss das Flow­Stone-Programm Lernerfolg.fsm aufgerufen werden. Nach dem Start werden Sie nur das Auswertungssys-
10
sehen, aber noch ohne Auswertung und mit ein-
tem er Fehlermeldung
11
und einem Hinweis 12, der besagt
das noch keine Dateien geladen sind.
12
Keine Dateien geladen
.
11
Fehlermeldung
10
Das Auswertungssystem zeigt nach dem Laden noch keine
Daten an.
1
Ablaufplan mit einem Lernziel.
2
Alle Lernziele im Ablaufplan sind erreicht.
3
Eines von vier Lernzielen im Ablaufplan ist erreicht.
4
Empfohlene Verzeichnisstruktur für das Lernkontrollsystem.
9
Ablaufpläne des Schülers Markus Müller.
Lernkontrollsystem
23
Verzeichnis setzen
Es muss erst noch das Verzeichnis für die Programm­dateien der Schüler gesetzt werden. Über einen Dop­pelklick öffnet sich die Modulansicht. Hier stehen zwei
13
Felder
für die Verzeichniseinstellung zur Verfügung. Das rechte Feld gibt die Einstellung an das Lernkon­trollsystem weiter, deswegen muss das gewünschte Verzeichnis zuerst im linken Feld eingegeben werden. Eine Änderung im rechten Feld würde zur sofortigen Änderung führen und damit ungewollte Fehler hervor­rufen. Nach Eingabe des Verzeichnisses im linken Feld
14
muss eine Verbindung (ein Link 15) mit dem rechten Feld hergestellt werden. Bei der Eingabe des Verzeich­nisses ist es wichtig, dass als Trennzeichen für das Ver­zeichnis ein doppelter Backslash (\\) verwendet wird
16
. Nun kann der Ablaufplan über den Menüpunkt Datei/Speichern abgespeichert werden. Über die Ab­laufplanebenen kann zur ursprünglichen Ansicht zu­rückgewechselt werden. Um das Verzeichnis wieder zu ändern, muss die Verknüpfung zwischen den beiden Feldern erst wieder gelöst werden. Hier muss der Link ausgewählt werden und über die rechte Maustaste öff­net sich das Kontextmenü. Über den Befehl Verknüp- fung löschen
17
, wird die Verbindung gelöst.
17
Link zwischen zwei Funktionsblöcken wieder lösen.
Ergebnisse auswerten
Nachdem das Verzeichnis richtig gesetzt ist, können die abgelegten Ergebnisse ausgewertet werden
18
. Die Pro-
grammoberäche ist dabei in zwei Bereiche unterteilt:
Menübereich
19
und Auswertungsbereich 20. Im Menü­bereich wird die zuvor ausgewählte Jahrgangsstufe an­gezeigt, im Bild Auswahlmenü
18
mit Jg. 7 21 bezeichnet. Über das
22
kann zwischen den Klassen gewech­selt werden. Einzelne Schüler werden durch Anklick­en ihres Namens
23
ausgewählt. Sobald ein Schüler ausgewählt ist, werden dessen Ergebnisse im Aus­wertungsbereich werden der Name des Schülers
20
angezeigt. Als Spaltenüberschrift
24
, der prozentuale
Grad der Zielerreichung 25, die Gesamtzeit 26 und eine Durchschnittszeit pro erreichtem Prozent angezeigt
27
Über diese Durchschnittszeit kann die Arbeitsgeschwin­digkeit einzelner Schüler verglichen werden.
Einzelne Lernziele auswerten
Ein Ablaufplan
28
kann mehrere Lernziele 29 enthalten. Für jedes Lernziel wird angegeben, ob dieses geschafft wurde oder nicht. Im Fall des Erreichens des Lernziels wird die dafür benötigte Zeit ausgegeben. Farblich ist der Status für jeden einzelnen Ablaufplan angegeben
30
. Ein grüner Kreis vermittelt, dass der Schüler alle Lernziele innerhalb des Ablaufplans erreicht hat. Ein gelber Kreis zeigt, dass nur einige Lernziele erreicht wurden. Ein roter Kreis zeigt, dass keines der Lernziele erreicht wurde.
Neue Dateien in die Auswertung übernehmen
Wird eine neue Programmdatei eines Schülers im Ver­zeichnis abgelegt, muss für die Auswertung die Schalt-
31
äche Refresh tungen können die Ergebnisse über Export CSV…
betätigt werden. Für andere Auswer-
32
auch als CSV-Datei exportiert und in Microsoft Excel verarbeitet werden.
.
13
Zwei Felder für die Konguration des Verzeichnisses.
16
Verzeichnistrenner
14
Den Link zwischen den Feldern erst nach der
vollständigen Eingabe erzeugen.
Lernkontrollsystem
24
15
Link
Auswahl
der Klasse
Auswahl
des Schülers
Menübereich
Verzeichnis
neu einlesen
Auswertung als
Exceldatei exportieren
Jahrgangs-
stufe
21 24
22
23
19
31
32
18
Oberäche für die Auswertung.
Schüler-
name
Ablauf-
plan
12
Status
Ziel-
erreichung
25
28 29 30
Lernziel Zeit für
Ziel-
erreichung
Gesamt-
zeit
26
Zeit pro Prozent
27
20
Auswertungsbereich
Loading...