lego mindstorms education - ev3 roboter...der lego mindstorms education ev3 intelligent brick hat...
TRANSCRIPT
Frank Engeln © 2013
2
Vergleich EV3 Education und Home Version:
Vergleich EV3 Education und NXT Education Versionen:
Frank Engeln © 2013
3
Die Funktionen des LEGO MINDSTORMS Education EV3 Intelligent Brick
Starten und Beenden
Es dauert 20 bis 30 Sekunden bis das System startet, weil der LEGO MINDSTORMS Education EV3
Intelligent Brick mit Linux als OS in ARM betrieben wird und ein No Sleep-Modus verfügbar ist
Port View
Der LEGO MINDSTORMS Education EV3 Intelligent Brick hat eine Port View-Funktion, mit der Werte
von Sensoren gemessen werden können.
Folgende Bilder zeigen die EV3 Brick Anzeige und den Wert von einem gemessenen Tastsensor.
Frank Engeln © 2013
4
Motorsteuerung
Mit den Tasten auf LEGO MINDSTORMS Education EV3 Intelligent Brick, können die Motoren
angeschlossenen Motoren gesteuert werden - vorwärts oder rückwärts. Der EV3 erkennt
automatisch an welchem Ausgang ein Motor angeschlossen ist.
Es gibt 2 Anschlüsse Kombinationen, "A und D" und "B und C."
Die Bilder zeigen den EV3 Large Motor Anschluss an A-und einen weiteren an dem D-Port.
Die obere Taste steuert den linken Motor mit A-Anschluss und die rechte Taste steuert den Motor
mit D-Anschluss.
On-Brick Programmierung
On-Brick Programmierung
Programm können auch nur mit dem LEGO MINDSTORMS Education EV3 Intelligent Brick erstellt
werde, also ohne PC.
Folgenden Programme können kombiniert werden: die Bewegung der Motoren, Sensoren,
Wiederholungen etc.
Frank Engeln © 2013
5
On-Brick-Programmierung – was ist zu tun?
1. Wähle "Brick-Programm" im Display.
2. Ein Bildschirm zur On-Brick-Programmierung erscheint. Wähle den Ort, um die
Programmblöcke zu setzen. Mit den Bedientasten auf dem EV3 Brick werden die Blöcke
ausgewählt. Ein Pfeil nach oben erscheint, wenn man richtig gewählt hat.
3. Eine Auswahlliste erscheint, nachdem man den Up-Button auf dem EV3 gedrückt hat. Mit
dem mittleren Button kann man den gewünschten Block auswählen.
* Es gibt viele Programmblöcke (up-Button drücken).
4. In der gleichen Weise, bitte Einschub andere Blöcke ausgewählt und dem Programm
hinzugefügt.
5. Bei einigen Programmblöcken können auch Parameter geändert werden. Durch die nach
oben und unten-Tasten werden Werte geändert. Ist der richtige Block gefunden wird die
mittlere Taste gedrückt.
Frank Engeln © 2013
6
6. Mit dem linken und danach dem mittlerem Button, wird das Programm gestartet und
getestet.
Gespeicherte Programme können in die LEGO Mindstorms Education EV3 Software
übertragen werden.
On-Brick- Datenprotokollierung – was ist zu tun?
Auch Datenlogging ist nur mit dem LEGO MINDSTORMS Education EV3 Brick möglich. Sensorwerte
messen und diese auslesen ist ohne PC möglich.
Es folgt die Erklärung für On-Brick Datenprotokollierung am Beispiel des Ultraschallsensors.
Vorbereitung: Schließe den Ultraschallsensor am Port 3 des EV3 an. 1. Protokollierung: starte Select "Brick Datalog" für die Protokollierung.
2. Protokollierung einrichten. Wähle das Schraubenschlüssel-Symbol in der unteren rechten Ecke, um das Messverfahren des Sensors zu ändern oder die Abtastrate zu ändern. Man kann innerhalb von 1 Abtastung (Sample)/Minute, 0,1 sample/Sekunde, 1 Abtastung/Sekunde, 10 Abtastungen/Sekunde, 100 Abtastungen/Sekunde und 1.000 Samples/Sekunde wählen. 3. Nun startet man mit der Aufzeichnung des Wertes, indem man das runde Symbol neben dem Werkzeug-Symbol aktiviert.
Frank Engeln © 2013
7
Bei einer Abtastrate von 1.000 Abtastungen/Sekunde wird die Grafik auf dem Bildschirm nicht dargestellt, sondern die Daten werden direkt gespeichert. 4. Durch drücken des mittleren Buttons auf dem EV3 werden die Aufzeichnungen gespeichert.
Spezifikationen des LEGO MINDSTORMS Education EV3 Intelligent Brick
Bezeichnung LEGO MINDSTORMS Education EV3
Prozessor ARM9 300MHz
Speicher 16MB Flash 64MB RAM
Betriebssystem Linux basiert
Display 178 x 128 Pixel
Ausgänge 4 Output Ports
Eingänge 4 Input Ports analog digital 460.8Kbit/s
USB Übertragungsgeschwindigkeit
Höchste Übertragung(480Mbit/s)
USB Verbindungen untereinander
Mehrere EV3s können verbunden werden (bis zu 4 EV3s)
Wi-Fi Kommunikations-Dongle ist erhältlich
Frank Engeln © 2013
8
SD Karte Micro SD Karte bis zu 32 Gb wird unterstützt
Anschluss an andere Systeme iOS Android Windows
Benutzeroberfläche 6 Buttons Beleuchtungsfunktion
Programmgröße 0.950KB
Sensoren Kommunikation 1000 Mal/Sekunde 1ms
Data Logging Maximal 1,000 Samples / Sekunde
Bluetooth Kommunikation Bis zu 7 Slaves
Power Wiederaufladbarer Akku DC oder 6 AA Batterien
Akku Informationen
Art der Batterie Lithium Ionen
Kapazität 2050mAh
Kompatibilität mit NXT wiederaufladbare Batterie DC
nicht verfügbar
Batterieladung mit Transformator 10V DC verfügbar
Kann der EV3 mit stärken AA Batterien länger betrieben werden?
Nur wenn es wieder aufladbare Batterien sind
Dauer der Batterieladung 4 Stunden (vollgeladen)
Frank Engeln © 2013
9
Buttons on LEGO MINDSTORMS Education EV3 Intelligent Brick
①zentraler Button ② linke Taste ③ rechte Taste ④Up-Taste ⑤ Down-Taste ⑥ Return-Taste
Firmware
Es gibt keine Kompatibilität zwischen LEGO MINDSTORMS Education EV3 und dem LEGO MINDSTORMS Education NXT. Für den Einsatz von LEGO MINDSTORMS Education EV3, muss die EV3 Firmware heruntergeladen werden. Die Firmware kann nicht auf den NXT heruntergeladen und genutzt werden.
Klang
Premium-Lautsprecher sind eingebaut.
Anzeige
Das Display verbesserte sich von 100x64 Pixel auf 178x128 Pixel. Es gibt keine Hintergrundbeleuchtung.
Micro SD-Card Slot
Man kann nicht auf den Inhalt der SD-Karte als Laufwerk direkt von einem Windows-oder Mac PC zugreifen. Die Speicherkarten sind im Handel erhältlich. Mit der EV3 Software kann man Projekte, die auf der SD-Karte gespeichert sind, zugreifen.
HiTechnic Sensoren
Obwohl die Sensoren von HiTechnic für den EV3 anwendbar sind, haben einige von ihnen nicht die automatische ID-System-Erkennung. Es gibt keine eigenen Blöcke von HiTechnic für die EV3 Software im Augenblick. Dazu nutzt man in der Software des Blockes den "Row Sensor Value", mit dem man einen Wert von dem Sensor selbst erhalten kann.
Frank Engeln © 2013
10
EV3 Farbsensor
Die digitale EV3 Color Sensor unterscheidet zwischen acht verschiedenen Farben. Es dient auch als
Lichtsensor durch Erfassen Lichtintensitäten. Studenten bauen können Farbe Sortier-und Line-
folgenden Roboter, experimentieren mit Lichtreflexion in verschiedenen Farben, und sammeln
Erfahrungen mit einer Technologie, die weit verbreitet in Branchen wie Recycling, Landwirtschaft und
Verpackungen verwendet wird.
Spezifikation des EV3 Farbsensors
Messung reflektiertes Licht von rotem Licht, Umgebungslicht-Intensitäts-Sensor, Farbe
nachweisbaren Farben:
8 Farben (farblos, schwarz, blau, grün, gelb, rot, weiß, braun)
Abtastrate: 1,000 Hz
Entfernung: 15 bis 50mm
Auto-ID in der EV3 Software integriert
Die besondere Qualität von EV3 Color Sensor
(a) über 45 Grad (effektiv messbarer Bereich) (b) über 53 mm (c) über 54 mm (d) über 88 mm Das Bild oben zeigt den Messbereich vom EV3 Farbsensor im „Color“-Modus. (Messwert) Der gelbe Bereich ist der effektive Messbereich, der graue Bereich verursacht Fehlmessungen.
Frank Engeln © 2013
11
(a) über 53 Grad (b) über 53 mm (c) über 71 mm
Dies ist der Messbereich vom EV3 Farbsensor im „Reflected Light Intensity“ Modus. (Messwert)
Gebrauch des EV3 Farbsensor
Beispiel (On-Brick Programmierung)
1) Dies ist ein Programm " warte, bis der EV3 Farbsensor an dem Eingang Port 1 eine rote Farbe
erkennt" mit der On-Brick Programmierung.
Wenn man das Programm ausführt versucht der EV3 Farbsensor die Farben zu erkennen. Bewegt
man nun ein Objekt (rot) in die Nähe des Sensors, wird die Warteschleife beendet und das Programm
geschlossen.
2) Dies ist ein Programm " warte, bis der EV3 Farbsensor an dem Eingang Port 1 eine rote Farbe
erkennt " mit der On-Brick Programmierung.
Frank Engeln © 2013
12
Wenn man zum Beispiel ein weißes Papier etwa 1 cm vor den Sensor hält, wird die Intensität des
reflektierten Lichts über den Wert 50 gehen. Dann wird das Programm gestartet mit diesem Zustand
und das Papier entfernt. Der wartende Prozess wird ausgeführt und das Programm beendet.
Beispiel für die Verwendung des EV3 Color Sensor in der Software
Dies ist ein Programm zum "erkennen der Farben mit dem EV3 Color am Sensor Eingang 1" mit der LEGO MINDSTORMS Education EV3 Software. Das Programm sieht wie folgt aus.
Dieses Programm verwendet 3 Blocks: "Anzeige", "Schleife" und "Farbsensor". Wenn das Programm übertragen und gestartet wird, zeigt das Display an Position X = 5 und Y = 5 (Koordinaten) den erkannten Farbwert als Zahl an. Farbkarte 0 bedeutet transparent. 1 bis 7 jeweils "schwarz", "blau", "grün", "gelb", "rot", "weiß" und entsprechend "braun".
Frank Engeln © 2013
13
EV3 Gyrosensor
EV3 Gyrosensor Spezifikationen
Genauigkeit in Grad +/- 3°
Rate Modus maximal 440 Grad/Sek.
Sampling rate 1,000 Hz
Auto-ID Nur mit der EV3 Software
Beispiel mit der On-Brick Programmierung
Dies ist ein Programm "Warten auf des Gyrosensor, angeschlossen an Eingang 1“, das den Winkel
erkennt (45 Grad).
Nach dem Ausführen des Programms dreht man den Gyrosensor um 45 Grad im Uhrzeigersinn und
wartet bis der Prozess abgeschlossen und das Programm beendet ist.
Gyrosensor Programm
Dieses ist ein Programm zum Messen eines Winkels.
Dieses Programm verwendet 3 Blöcke: "Loop", "Gyrosensor" und "Display".
Wird das Programm ausgeführt, misst der Sensor den Winkel und gibt diesen auf dem Display aus.
Frank Engeln © 2013
14
Der Wert vom Gyrosensor wird mit "0 Grad" unmittelbar nach der Ausführung des Programms
gemessen.
Dreht man den Sensor in die gleichen Richtungen wie das Bild, steigt der Wert im Uhrzeigersinn und
wenn man ihn nach links dreht nimmt der „Wert“ (Winkel) ab.
Vergleich EV3 Gyrosensor und der Gyrosensor von HiTechnic
EV3 Gyrosensor HiTechnic Gyrosensor
Maximale Geschwindigkeit
440 Grad / Sekunde 360 Grad / Sekunde
Anzahl der Messzeiten 1000 Mal / Sekunde 300 Mal / Sekunde
EV3 Tastsensor
Ein Tastsensor funktioniert wie ein normaler Lichtschalter. Durch das Drücken des Tasters
gegen einen leichten mechanischen Federwiderstand wird der Sensorstromkreis geschlossen
und somit der elektrische Impuls abgesetzt. Wird der Taster losgelassen, so wird der
Stromkreis wieder durch die mechanische Feder unterbrochen. Der Tastsensor des EV3
erkennt einmaliges Drücken oder zählt, wie oft die Taste gedrückt wurde.
Kreuzachsenloch auf der Taste Auto-ID in der EV3-Software
Frank Engeln © 2013
15
Beispiel mit der On-Brick Programmierung
Wenn man das Programm ausführt wartet es, bis das Tastsensor gedrückt wird. Wird er gedrückt,
stoppt das Programm und es wird beendet.
Tastsensor Programm
Dies ist ein Programm "Anzeige des Status vom EV3 Tastsensor an Eingang 1".
Dieses Programm verwendet 3 Blocks: "Loop", "Tastsensor“ und den Block "Anzeige" über das
Datenkabel.
Wenn der Taster vom EV3 Tastsensor "off" nicht gedrückt ist, wird "0" auf LEGO MINDSTORMS
Display angezeigt. Wenn der Taster gedrückt wird "on", wird "1" auf dem Bildschirm angezeigt. Die
"Return"-Taste beendet das Programm.
Frank Engeln © 2013
16
EV3 Ultraschallsensor
Der Ultraschallsensor erzeugt Schallwellen und „liest“ deren Echos, um Objekte zu erkennen
und deren Entfernung in cm zu messen.
Viele Tiere, darunter Hunde oder Fledermäuse, können Ultraschallwellen hören. Fledermäuse
selbst können Ultraschallwellen aussenden, um sich zu orientieren, was man auch als
Echoortung bezeichnet. Auf diesem Prinzip beruhen auch die Sensoren, die für Roboter
programmiert werden.
Die Entfernungsmessung mit Ultraschallsensoren beruht auf der Messung der Zeit, die eine
für den Menschen unhörbare Schallwelle braucht, bis sie zurückgeworfen wird.
Spezifikation für den EV3 Ultraschallsensor
Abstandsmessung 3cm bis 250cm
Präzision der Messung +/- 1 cm
Möglichkeiten senden Ultraschallwellen, Blinken: Ultraschallwellensuchen
Auto-ID gilt für EV3 Software
Senden und Empfangen
Der Ultraschallsensor ist augenartig designed. Das linke „Auge“ sendet und das Rechte empfängt.
Kompatibilität der Signale von NXT Ultraschallsensor mit den Signalen vom EV3 Ultraschallsensor
Der EV3 Ultraschallsensor kann im „Listen Mode“ Umgebungstemperaturen und Ultraschallwellen
messen. Der NXT Ultraschallsensor sendet regelmäßig Ultraschallwellen wenn er sich mit dem LEGO
MINDSTORMS Education EV3 verbindet. Im Test, ob es möglich ist Ultraschallwellen vom NXT
Ultraschallsensor wurde folgendes festgestellt. Wie das linke Bild zeigt, wenn der EV3
Ultraschallsensor und der NXT Ultraschallsensor nicht einander zugewandt sind Ultraschallwellen
nicht zu empfangen. Und wie das rechte Bild zeigt, wenn der EV3 Ultraschallsensor und der NXT
Ultraschallsensor einander zugewandt sind, erkennt er Ultraschallwellen als Wert 1 an.
Frank Engeln © 2013
17
Es folgt das Ergebnis der eigentlichen Messung vom messbaren Winkel des EV3 Ultraschallsensors.
(a) um 20 Grad
(b) um 60 cm
(c) um 22 cm
Gemessenen wurde der Abstand zwischen dem Sensor und einem Objekt (ein Karton) , 60 cm vor
dem Sensor. Wenn man von oben auf den Sensor schaut misst er einen Bereich von ca. 20 Grad.
Beispiel mit der On-Brick Programmierung
Frank Engeln © 2013
18
Dies ist ein Programm "Warte bis der Abstand, gemessen mit dem Ultraschalsensor an Port 1, unter
120 cm erkannt wird".
(a) Objekt
(b) Senden
(c) Empfangen
Nach dem Ausführen des Programms wird das Objekt näher an Ultraschall-Sensor, und wenn der
Abstand unter 120 cm wird, schließt der Prozess wartet, und das Programm beendet.
Ultraschallsensor Programm
Dieses Programm zeigt den gemessenen Wert des Ultraschallsensors an Eingang 4. Es werden 3
Blöcke verwendet: "Schleife", "Ultraschallsensor" und "Display".
Der Modus des Ultraschallsensors ist auf "Messdistanz in cm" eingestellt.
Nach dem Ausführen des Programms wird der Abstand in cm auf LEGO MINDSTORMS Education EV3
ausgegeben.
Frank Engeln © 2013
19
Vergleich EV3 und NXT Ultraschallsensor
Art EV3 Ultraschallsensor NXT Ultraschallsensor
Umfang der Abstandsmessung 3 bis 250 cm 3 bis 250 cm
Gemessener Abstand 1 bis etwa 160 cm (tatsächlich gemessen)
1 bis etwa 160 cm (tatsächlich gemessen)
gemessener Winkel Ca. 20 Grad (tatsächliche Messung)
Ca. 20 Grad (tatsächliche Messung)
Präzision für die Messung des Abstands
+/- 1 cm +/- 3 cm
Beleuchtung Licht: Senden von Ultraschallwellen
nein
Blinken: Empfangen von Ultraschallwellen
Ultraschallwellen, die von außerhalb empfangen werden
ja nein
Mess-Modus 3 Modi: Distanz (cm) / Abstand (inch) / Ausstrahlung)
2 Modi: Abstand (cm) / (inch)
Auto-ID In der EV3 Software Wird in der EV3 Software mit Port View angezeigt
EV3 Infrarotsensor
Der digitale EV3 Infrarot Sensor (unten links) erkennt Signale, die in der Nähe von dem Roboter
gesendet (Infrarot Beacon) werden und liest diese aus. Schüler können ferngesteuerte Roboter
entwickeln, navigieren durch Hindernisparcours und erfahren dadurch, wie Infrarot-Technologien in
TV-Fernbedienungen, Überwachungssystemen und sogar in Zielerfassungen (z.B. Waffen) verwendet
werden.
Dieser Baustein (rechts) wurde für die Verwendung mit dem Infrarot-EV3 Sensor konzipiert. Der Stein
sendet ein Infrarot-Signal welches der Sensor aufspüren kann. Er kann auch als Fernbedienung für
den EV3 verwendet werden. Folgende ID werden gesendet:
Frank Engeln © 2013
20
Spezifikation Infrarotsensor
Messbare Bereich Messung von bis zu etwa 50-70 cm
Maximale Entfernung für den Empfang
In bis zu zwei Metern kann IR Sensor Signale, die von Beacon gesendet werden, empfangen.
Kanal Unterstützt vier Signal-Kanäle
Befehl Empfängt IR Remote-Befehle
Auto-ID Auto-ID in der EV3 Software
Spezifikation IR Beacon
Kanal Vier einzelne Kanäle
Schalter und Taster
Enthält ein Sende Button und einen Kippschalter zum aktivieren / deaktivieren
LED Grüne LED die anzeigt, ob der Beacon ist aktiv
Auto power off Automatische Abschaltung, wenn keine Aktion innerhalb einer Stunde gemacht wird
Bereich Arbeitsabstand von bis zu zwei Metern
Leistung Erfordert zwei AAA-Batterien
Frank Engeln © 2013
21
Besondere Eigenschaften für den EV3 Infrarot Sensor
(a) Objekt
(b) Infrarotstrahlung
Mit dem Port View und im Nah-Modus vom EV3 Infrarot Sensor wurden die unten dargestellten
Ergebnisse von mir gemessen. Bei einem Abstand von weniger als 5 cm und mehr als 50 cm ist der
gemessene Wert nicht proportional.
0
10
20
30
40
50
60
70
80
90
1 2 3 4 5 6 7 8 9
gemessene Entfernung (cm)
tatsächliche Entfernung (cm)
Frank Engeln © 2013
22
(a) Infrarotsignal
Im “Beacon-Modus“ ist das Ergebnis einer tatsächlichen Messung proportional zur Entfernung.
Beispiel für die Verwendung des Infrarot-EV3 Seeker Sensors
Dies ist ein Programm "Erfassen eines Signals mit dem EV3 Infrarot Seeker Sensor am Anschluss
Eingang 1" mit der EV3 Software.
Dieses Programm verwendet 3 Blöcke: " Anzeige", "Schleife", "Infrarot-Sensor Seeker".
Der Modus des EV3 Infrarot Seeker Sensors wird auf "Messung der Nähe" gestellt.
EV3 Motoren
Ein leistungsstarker Servomotor mit eingebautem Rotationssensor. Ein spezieller Regelkreis erlaubt es den Motor mit einer bestimmten Drehgeschwindigkeit zu betreiben. Dadurch wird auch die Steuerung mehrerer Motoren erleichtert. Das Motorgehäuse ist so konstruiert, dass sich auch Getriebezüge aus mehreren Zahnrädern mühelos anbauen lassen.
Frank Engeln © 2013
23
Der EV3 Medium Servomotor ist ideal für lastniedrigere Anwendungen mit höheren
Geschwindigkeiten und wenn schnellere Reaktionszeiten und ein kleineres Profil im Roboterdesign
benötigt wird. Auch dieser Motor hat einen eingebauten Rotationssensor.
Spezifikation für den EV3 Motor
EV3 großer Motor
Rückmeldung in einem Winkel von 1 Grad
Anzahl der Umdrehungen 160 bis 170 UpM
Drehmoment für Drehungen 0.21 N*m (30oz*in)
Drehmoment für den Stillstand 0.42 N*m (60oz*in)
Gewicht 76 g
Auto-ID In der EV3 Software
Spezifikation für den EV3 Medium Motor
EV3 Medium Motor
Rückmeldung in einem Winkel von 1 Grad
Anzahl der Umdrehungen 240 bis 250 UpM
Drehmoment für Drehungen 0.08 N*m (11oz*in)
Drehmoment für den Stillstand 0.12 N*m (17oz*in)
Gewicht 36 g
Auto-ID In der EV3 Software
Frank Engeln © 2013
24
Vergleich EV3 Motor und NXT Motor
Nr. item Education EV3 Education NXT
1 Drehgeschwindigkeit 160 bis 170 UpM Bis zu 165 UpM 2 Drehmoment für
Drehungen 0.21 N*m (30 oz*in) 0.21 N*m (30 oz*in)
3 Drehmoment für den Stillstand
0.35 N*m (60 oz*in) -
4 Gewicht 76 g 78 g 5 Auto-ID EV3 Software Wird in der EV3 Software erkannt 6 Tacometer verfügbar verfügbar verfügbar 7 Bemerkungen Er umfasst einen Rotationssensor
und steuert anderer Motoren mit seiner Geschwindigkeit.
Er umfasst einen Rotationssensor und steuert anderer Motoren mit seiner Geschwindigkeit.
Programmierung
Allgemein Anfänger und Fortgeschrittene können die Programmierfunktion in der LEGO MINDSTORMS Education EV3 Software gut nutzen, weil sie vor allem grafisch ist. Mit Blick auf das Programmieren von Blöcken, kann man die Einstellung von Parametern in den Programmierungsblöcken übersichtlicher anzeigen. So hilft es einem, die gesamte Struktur des Programms im Überblick zu halten. Die Einführung von mehreren "Start Bausteinen", um das Programm zu starten, realisiert leicht die parallele Programmverarbeitung (Parallele Tasks). Ist das Programm erstellt und man startet es, wird optisch durch Hervorhebung der Blöcke sichtbar, wo sich das Programm gerade befindet. Man kann in einem Programmblock, durch die Kombination mehrerer Anweisungen von Blöcken, zu einem neuen Block machen. ( Mein Block) Programme erstellen
Frank Engeln © 2013
25
1. Datei wählen → Neues Projekt → Programm 2. Content Editor schließen 3. Programm mit Drag -and-Drop –Symbolen aus der Palette am unteren Rand des Bildschirms erstellen.
Ein Programm für den NXT erstellen
Man kann ein Programm für den LEGO MINDSTORMS Education NXT mit LEGO MINDSTORMS Education EV3 Software erstellen. Aber nicht alle Funktionen werden unterstützt und es gibt Einschränkungen wie die folgenden Tabellen zeigen. Mit der NXT Software können keine Programme für den EV3 erstellt werden.
Werkzeuge
Kategorie Nr. Funktion der EV3 Software Trifft zu oder nicht - beim NXT
Grund-funktionen
1 Eigene Blöcke erstellen -
2 die Funktion zum Einstellen von Anfangswert , Maximum, Minimum
x
3 Firmware aufspielen -
4 Wi-Fi -
5 die Funktion HiTechnic Sensoren und neue Sensor Blöcke zu importieren
x
6 Speichererweiterungen nutzen -
7 Daten Log -File -Manager -
8 Graphen bei der Datenprotokollierung anzeigen -
9 Werte aus dem Datensatz löschen x
10 Datenlogging Programm x
Frank Engeln © 2013
26
Programm Symbole/Blöcke
Kategorie Nr. Funktion der EV3 Software Trifft zu oder nicht - beim NXT
Bewegung 1 Medium Motor x
2 Großer Motor x
3 Lenkung nicht verfügbar
4 Display x
5 Sound x
6 Button Light nicht verfügbar
Flusskontrolle 7 Start x
8 Stand-by x
9 Schleifen x
10 Umschaltung x
11 Abschaltung/unterbrechen x
Sensoren 12 Brick Button x
13 Farbsensor nicht verfügbar
14 Gyrosensor nicht verfügbar
15 Infrarot Such Sensor nicht verfügbar
16 Rotationssensor nicht verfügbar
17 Temperatursensor x
18 Timer x
19 Tastsensor x
20 Ultraschallsensor nicht verfügbar
21 Energie-Messer x
22 Soundsensor x
Daten Operatoren
23 Variablen x
24 Konstanten x
25 Logische Operatoren x
26 Mathematik x
27 runden x
28 vergleichen x
29 Bereiche x
30 Text x
31 Zufallszahlen x
Weiteres 32 Dateizugriff nicht verfügbar nicht verfügbar
33 Data Logging nicht verfügbar
34 Benachrichtigungen nicht verfügbar
35 Bluetooth Verbindung nicht verfügbar
36 Raw Sensor Wert nicht verfügbar
37 Motor umkehren x
38 Stopp-Block x
Eigene Blöcke 39 Eigene Blöcke x
Frank Engeln © 2013
27
Datenlogging
Kategorie Nr. Funktion der EV3 Software Trifft zu oder nicht - beim NXT
Experiment Funktionen
1 Experimentelle Konfiguration (Einstellung der Sampling-Nummer oder welche Sensoren man nutzt)
x
2 Datensatz-Tabelle (eine Tabelle, um temporäre Daten zu speichern)
x
3 Datensatz Berechnung x
4 Graphen programmieren x
Vorhersage 5 Prädiktion (Vorhersage eines Graphen des Experiments)
x
Analyse Werkzeug
6 Punkt-Analyse (eine Funktion, um die Werte einiger Punkte zu untersuchen)
x
7 Bereichs-Analyse (eine Funktion, um Werte eines gewissen Bereiches zu untersuchen)
x
Rechnen Block In der EV3 Software ist der Numerische Block erheblich verstärkt worden.
Eingabe Berechnungsergebnis
Addition A, B A + B
Subtraktion A, B A – B
Division A, B A / B
Multiplikation A, B A * B
absoluter Wert
A wenn a 0 und darüber A ist, und, wenn A kleiner als 0 ist-A. Die Ergebnisse sind immer 0 und vieles mehr.
Quadratwurzel A √A
Exponent A, N A^N
ADV A, B, C, D
Eigene Formeln erstellen mit A, B, C, D.
Berechnungen können individuell bezeichnet werden. Alle Formeln sind mit 4 Variablen möglich.
Frank Engeln © 2013
28
Verschiedene Berechnungsformeln können erstellt werden.
Programmieren mit Blöcken Im gestarteten Programm werden die Blöcke hervorgehoben die gerade durchlaufen werden.
Praxis: nur ein Teil des Programms Um nur einen bestimmten Teil des Programms auszuführen, wird dieser mit der Maus am PC markiert.
Frank Engeln © 2013
29
Klickt man nun auf Start, wird der markierte Programmteil ausgeführt.
Inhalts-Editor (Content Editor) Der Inhalts-Editor wird verwendet um ein Projekt zu dokumentieren. Es können eigene Seiten erstellet werden die Beschreibungen, Fotos, Videos und sogar Bauanleitung enthalten. Jede Seite kann mit verschiedenen Layouts angepasst und mit einer Reihe von „Maßnahmen“, wie beispielsweise das Öffnen spezifischer Programme oder die Hervorhebung eines bestimmten Programmierblocks ausgestattet werden.
Verschiedene Seitenlayouts
Frank Engeln © 2013
30
Sound Editor
Der LEGO MINDSTORMS Education EV3 klingen kann jede Note. Es kann eine Sounddatei mit dem
Sound Editor erstellt werden.
Frank Engeln © 2013
31
Bildeditor
ES können Bilder in hoher Auflösung auf dem Display des EV3 angezeigt werden. Eigene Bilddateien
können mit dem Bild-Editor erstellt werden.
Eine Möglichkeit den EV3 Gyro Sensor durch das Programm zu initialisieren Wenn man den Gyro Sensor initialisieren möchte, wählt man den "Gyro-Sensor" in Programmieren-Block-und "Reset-Modus" aus.
Der Gyro Sensor wird initialisiert, wenn der Gyro-Sensor-Block im Reset Mode ausgeführt wird.
Frank Engeln © 2013
32
Beispiel für die Art der Initialisierung Gyro Sensor Mit dem Drücken des Tast-Sensors ist der Gyro Sensor initialisiert. Nach dem Initialisieren wird 0 im Display des EV3 angezeigt.
Frank Engeln © 2013
33
Experiment
Datenprotokollierung
Es gibt zwei Möglichkeiten um die Datenaufzeichnung durchzuführen. Eine besteht darin, die Datenprotokollierung nur mit dem EV3 (die so genannte "On-Brick Programming") und die Zweite mit der LEGO MINDSTORMS Education EV3 Software. "On-Brick-Programmierung" Die Daten kann man auf dem Display des EV3 einsehen und speichern. Im Falle von autonomen Robotern ohne Verbindung zum PC, können die Daten im EV3 gespeichert und später dann auf den PC via "Memory-Browser-Funktion" übertragen werden. Datenprotokollierung mit der Software Man kann Daten in Form von Graphen, d.h. die Werte von Sensoren durch das Verbinden des EV3 zum PC über USB-Kabel, Bluetooth oder Wi-Fi messen.
Daten-Analyse-Funktion
Datenaufzeichnung
Vorhersage durch verschiedene Funktionen:
Frank Engeln © 2013
34
Punkt-Analyse
In Abschnitt Analyse stehen durchschnittlich, Median, Standardabweichung und angepasste Kurve zur Verfügung. Datenprotokollierung mit der "On-Brick Data Logging"-Funktion 1. Wähle die "Apps-Registerkarte" und dann "Brick Datalog" im Menü-Bildschirm EV3
2. Ändern der Sensor Ports durch Drücken der rechten oder linken Tasten auf dem EV3. 3. Mit dem "Schlüssel" kann die Anzahl der Daten pro Sekunde und Sensor-Modus geändert werden.
4. Die Datenaufzeichnung beginnt, wenn "○" gedrückt wird. Wenn "○" noch einmal gedrückt wird können die Daten gespeichert werden. Die gespeicherten Daten (Datei) können mit der "Speicher-Browser-Funktion" in die EV3 Software übertragen werden (siehe Seite 5).
Frank Engeln © 2013
35
EV3 Software – Datenlogging
1. Den EV3 mit dem PC über USB verbinden.
2. Neues Experiment anlegen durch "Datei" → "Neues Projekt" → "Experiment"
3. Es öffnet sich ein Bildschirm für die Datenprotokollierung. Der Wert von Sensoren oder Motoren wird in Echtzeit gemessen von Auto-ID und "Oszilloskop-Modus" angezeigt
4. Durch klicken auf den Button „Oszilloskop-Modus“ startet die Aufzeichnung.
5. Zeit und Intervall für das Abrufen von Daten des/der Sensors/en einstellen. 6. Das Programm ausführen um die Daten zu erhalten.
Die Daten werden im "Projekt" gespeichert unter der Registerkarte „Dateien". Die gespeicherten Daten auf dem PC können mit der "Memory-Browser-Funktion" in den EV3 geladen werden oder umgekehrt.
Frank Engeln © 2013
36
Werte, die graphisch in der LEGO MINDSTORMS Education EV3 Software aufgezeichnet werden können.
Sensor Messobjekt Ausmaß der Wert Einheit
Farbsensor Farbe 0 bis 8
Umgebungslicht 0 bis 100
Reflexion von Licht 0 bis 100
Gyrosensor Winkel -180 bis 180 Grad
Rate -440 bis 440 d/s
IR Sensor Präsenz 0 bis 100 %
Übertragungsrichtung -25 bis 25 Grad
Übertragungspräsenz 0 bis 100 %
Signale von der Fernbedienung
0 bis 10
Motor Winkel -180 bis 180 Grad
Anzahl der Umdrehungen -100 bis 100 rot
Power 0 bis 100 %
Temperatursensor Celsius -20 bis 120 C
Fahrenheit -65 bis 260 F
Tastsensor Status 0, 1
Ultraschallsensor Abstand (Zentimeter) 0 bis 255 cm
Abstand (inch) 0 bis 100 i n
Ultraschallwellen empfangen 0, 1
Energiemessung Eingangsspannung 0 bis 10 Volt
Eingang elektrischer Strom 0 bis 100 Amp
Eingangsspannung 0 bis 5 Watt
Ausgangsspannung 0 bis 10 Volt
elektrischer Ausgangsstrom 0 bis 100 Amp
elektrischer Ausgangsstrom 0 bis 5 Watt
elektrische Energie 0 bis 100 Joule
NXT Geräuschsensor dB 0 bis 100 dB
dBa 0 bis 100 dBa
Frank Engeln © 2013
37
Grafik Programmierung Mit der EV3 Software können Motoren oder Sounds mit dem von einem Sensor gemessen Wert nach einer sich aus der Datenprotokollierung ergebenen Kurve geschaltet werden. Bsp.: Ein Ton ertönt, wenn der Winkel des Motors über 90 Grad ist. Dies ist nennt sich "Grafische-Programmierung" und es ist eine neue Funktion für die LEGO MINDSTORMS Education EV3 Software. Diese Funktion ist nicht in der Home-Version der EV3 Software enthalten.
V3 Software – Datenlogging - Programmieren
7. Den EV3 mit dem PC über USB verbinden. 8. Neues Experiment anlegen durch "Datei" → "Neues Projekt" → "Experiment"
. 9. Die Zeit und die Intervalle für die Datenprotokollierung einstellen, und den Sensor, den man
verwenden möchte auswählen.
Frank Engeln © 2013
38
10. Auswahl: Graph Programmierung – unten links im Programm.
11. Den Schwellwert durch “☆”, “□”, “○” setzen.
12. In diesem Beispiel ist der “☆” Bereich programmiert. Durch Doppelklick auf die Programmierfläche können Blöcke eingefügt werden.
13. Das Programm herunterladen und ausführen.
Wenn der Wert des Sensors innerhalb der Ausdehnung des Schwellenwertes ist, bewegt er sich, wie
programmiert. Damit ist es möglich, Schwellenwerte für Sensoren einzustellen, um beispielsweise ein
Signal ertönen zu lassen, sobald der Temperatur-Sensor eine bestimmte Temperatur erkennt
Frank Engeln © 2013
39
Aufgaben
Das erste Programm
Für das erste Programm ziehen wir aus der einen Anzeige-Block auf die Bühne. Im Bild Editor erstellen wir einen Smiley und speichern diesen ab.
In dem Programmblock rufen wir dieses Bild auf.
Nun muss noch die Dauer angegeben werden, wie lange das „Bild“ erscheinen soll. Dieses macht
man mit dem Warteblock bzw. Zeitblock.
Die Zeit bitte auf 3 Sekunden einstellen. Nun wird das Programm übertragen und gestartet. Das erste Programm ist geschafft. Hinweis: Ein normaler Block verbraucht keine Zeit, der nächste Block wird sofort aktiv wird, oder das Programm wird nach dem letzten Block sofort beendet. Das Bild wird also auf das Display gebracht und sofort danach ist das Programm zu Ende, wodurch das Display wieder gelöscht wird, wenn man keinen Zeitblock hinzufügt.
Frank Engeln © 2013
40
Sounds und Klänge
Mit dem Klang-Block kann man
eine Klangdatei oder Töne
abspielen. Klangdateien sind im
*.rsf Dateiformat gespeichert. Es
gibt einen Sound-Editor, um eigene
Klänge zu erstellen.
Der Morsecode oder Morsekode
ist ein Verfahren zur Übermittlung
von Buchstaben und Zeichen.
Dabei wird ein konstantes Signal
ein- oder ausgeschaltet.
Der Code verwendet drei Symbole, die Punkt (·), Strich (−) und Pause ( ) genannt werden, gesprochen als Dit, Dah und „Schweigen“. Genauer gilt Folgendes:
Ein Dah ist üblicherweise dreimal so lang wie ein Dit. Die Pause zwischen zwei gesendeten Symbolen ist ein Dit lang. Zwischen Buchstaben in einem Wort wird eine Pause von Dah eingeschoben. Die Pause zwischen Wörtern beträgt sieben Dits.
−− −−− ·−· ··· · / −·−· −−− −·· · M O R S E (space) C O D E Lateinische Buchstaben Buchstabe im Code
A · — J · — — — S · · ·
B — · · · K — · — T —
C — · — · L · — · · U · · —
D — · · M — — V · · · —
E · N — · W · — —
F · · — · O — — — X — · · —
G — — · P · — — · Y — · — —
H · · · · Q — — · — Z — — · ·
I · · R · — ·
Aufgabe:
1. Erstelle ein neues Programm. Speichere dieses mit dem Namen „morsen.ev3“ ab.
2. Programmiert SOS.
3. 2. Was bedeutet: · — · · · — — · — — — / — · — · · — — ?
Frank Engeln © 2013
41
Für die nächsten Aufgaben braucht man einfachen Roboter mit 2 Motoren an Ausgang B
und C.
Motoren
Der EV3 verfügt über vier Motorausgänge mit den Bezeichnungen A, B, C und D.
Roboterfahrzeuge mit zwei Motoren können auch mit dem Hebellenkungs-Block gesteuert werden. Der Hebellenkungs-Block ist mit dem Bewegungslenkungs-Block vergleichbar, allerdings erfolgt die Steuerung bei Wendemanövern auf eine andere Weise.
In dem diesem Beispiel läuft Motor an Port A 2 Sekunden vorwärts, dann 2 Sekunden rückwärts:
Ein Motorblock kann immer nur einen Block zurzeit ansteuern.
Jeder Motor verfügt über einen eingebauten Rotationssensor (Drehsensor), der über den normalen Motoranschluss abgefragt wird. Für eine genauere Kontrolle, z.B. bei Drehungen, sind die Rotationssensor unverzichtbar.
Frank Engeln © 2013
42
Das Rotationssignal beinhaltet zwei Werte:
1. die Drehrichtung des Motors 2. die Anzahl der Drehimpulse. Der EV3-Baustein erhält 360 Drehimpulse. Das entspricht 3600 für eine Umdrehung. Die Motoren drehen sich also solange, bis sie einen bestimmten Drehwinkel erreicht haben. Soll der Roboter aber ein Quadrat fahren, so kann man sich mit Hilfe der Schleife einige Blöcke
sparen, da der Roboter nur 2 Bewegungen wiederholt.
Dieses Programm lässt einen Roboter einen Klang erzeugen, wenn er von Hand so geschoben wird,
dass sich seine Räder ein wenig bewegen:
Aufgabe: Was passiert hier?
Frank Engeln © 2013
43
Aufgaben zur Bewegung
Für alle Aufgaben gilt: speichert alle Programme unter einen sinnvollen Namen ab!
1. Der Roboter soll 3 s vorwärts fahren und dann stehen bleiben.
2. Der Roboter soll 4 Umdrehungen vorwärts fahren und dann wieder zum Start zurück und stehen bleiben.
3. Wie 2. – nur soll der Roboter zwischen vorwärts und rückwärts fahren 1,5 s stehen bleiben.
4. Im Display soll für 3 Sekunden der Text „Jetzt geht´s los“ erscheinen.
5. Der Roboter soll 3 s vorwärts fahren, dann eine ~90° Rechtskurve fahren und dann wieder Umdrehung geradeaus fahren und dann stehen bleiben.
6. Der Roboter soll einen Kreis fahren. (Erst einen großen, dann einen kleinen)
7. Der Roboter soll ein Quadrat fahren. Dann soll er ein Rechteck fahren
8. Erst soll Nr. 4 (Display) ausgeführt werden, dann soll ein Ton erklingen bevor der Roboter startet und der Roboter soll eine Kurve mit großem Radius fahren. Nun soll wieder dieser Ton für 2 Sekunden erklingen.
Frank Engeln © 2013
44
Durchmesser, Radius und Umfang
Radius, Durchmesser und Umdrehung. Diese drei Faktoren sind sehr wichtig in der Robotik. Soll ein
Roboter besonders schnell fahren oder soll er eine Strecke mit Hindernissen (Unebenheiten auf dem
Boden) meistern, ist es ein Fahrzeug für draußen (Off-Road)?
Als Radius (von lat. radius; „Strahl“) (deutsch: Halbmesser) bezeichnet man in der Geometrie den
Abstand zwischen dem Mittelpunkt M eines Kreises und der Kreislinie.
Der Radius r entspricht dem halben Durchmesser d. Zum Kreisumfang U verhält sich der Radius wie
folgt: .
Bei dem EV3 Rad ist das:
Der Durchmesser (griech. Diameter) ist die Entfernung zwischen den Schnittpunkten eines Kreises
mit einer Geraden, die dessen Mittelpunkt schneidet.
Der Umfang ist die Strecke, die das Rad bei einer Umdrehung zurücklegt. Den Umfang errechnet
man mit der Formel:
// Der Durchmesser x Pi = der Umfang
Pi (π) ist eine mathematische Konstante, eine Kreiszahl mit dem unendlichen Wert:
3,14159 26535 89793 23846 26433 83279 50288 41971 69399 37510 58209 74944 59230 78164
06286 20899 86280 34825 34211 70679 …
Der Umfang des Rades bzw. Reifen bedeutet abgewickelt auf die Straße den zurückgelegten Weg.
Bsp.: Ein EV3 Rad mit einem Durchmesser von 5,6 cm hat einen Umfang von 18 cm.
Frank Engeln © 2013
45
Nach einer Umdrehung hat das Rad also 18 cm zurückgelegt. Jetzt ein paar Aufgaben zum Üben. Die
richtige Radgrößenwahl kann manchmal einen Wettbewerb entscheiden!
Aufgaben:
1. Du hast diesen Roboter: Der Durchmesser des Rades beträgt 5,5 cm. Wie weit ist der Roboter gefahren, wenn sich das Rad 8-mal gedreht hat? ________________________ cm
2. Du bereitest dich auf einen Wettkampf vor. Die Aufgabe lautet: Der Roboter soll eine Strecke von
10 m so schnell es geht fahren. Du hast 4 Räder mit folgenden Durchmessern zur Auswahl:
2,86 cm , 3,18 cm , 5,5 cm und 7,94 cm.
Wie viele Umdrehungen muss dein gewähltes Rad machen?
Erstelle eine Tabelle in der du die Umdrehungen vergleichen kannst.
Durchmesser Formel Umdrehungen
2,86 cm __________ . π = __________________
3,18 cm
5,5 cm
7,94 cm
Wenn der Roboter eine bestimmte Streckenlänge fahren soll, er das aber nicht exakt so macht, kann es verschiedene Gründe dafür geben. Manchmal hängt es vom Antrieb deines Roboters, dem Ladezustand der Batterien oder des Akku und von der Art der Oberfläche ab, auf welcher der Roboter läuft. Hier hilft es den Durchschnitt zu errechnen.
Aufgabe:
1. Nimm deinen Roboter und lasse ihn 3 Mal drei Sekunden vorwärts fahren.
Markiere mit Kreide einen Punkt auf den Reifen und zähle die exakten Umdrehungen. Was stellst du fest? Berechne nun den Durchschnitt. Ergebnis 1 + Ergebnis 2 + Ergebnis 3 3
d= 5,5 cm
Der Roboter legt in 3 Sekunden im Durchschnitt eine Strecke von ____________ cm zurück.
Frank Engeln © 2013
46
Sensoren Blöcke
1. Reihe v.l.n.r.: Tasten auf dem EV3 Baustein, Farbsensor, Kreiselsensor,
Infrarotsensor, Motorumdrehung, Temperatursensor, Zeitgeber,
Berührungssensor, Ultraschallsensor, Energiezähler, NXT Geräuschsensor
Sensoren – Ultraschallsensor
Delphine benötigen ihn zur Navigation, Kommunikation, Lokalisierung von Fischen, Fledermäuse zur Navigation und Lokalisierung von Beutetieren. Der Ultraschallsensor.
Mit Ultraschall (US) bezeichnet man Schall mit Frequenzen, die oberhalb des vom Menschen wahrgenommenen Bereiches liegen. Das umfasst Frequenzen zwischen etwa 20 kHz und 1...10 GHz. Der Vorteil eines Ultraschallsensors besteht darin, dass diese Sensoren ohne eine Abtastung des zu vermessenden Objektes materialunabhängig funktionieren. Der Ultraschallsensor ist der einzige digitale Sensor, er besitzt einen integrierten Mikrocontroller, der alle Ultraschallmesswerte zum NXT-Baustein per I2C-Kommunikation sendet. (www.wikipedia.org) Wie funktioniert das? Der Ultraschallsensor eruiert den Abstand zu Gegenständen, indem er 12 Signalstöße bei 40 kHz aussendet und dann die Zeit misst, bis er eine Reflektion des ausgesandten Signals empfängt. Die Zeit zwischen der Emission und dem Empfangen des reflektierten Stoßes ist proportional zum Abstand zwischen Objekt und Sensor. Der messbare Distanzbereich liegt zwischen 0 cm und 255 cm und kann daher durch ein einziges Byte kodiert werden. Der Ultraschallsender benötigt die gelieferten 9 Volt, daher nimmt die Messgenauigkeit mit abnehmender Batteriespannung ab. Aufgaben:
1. Erkläre wie Ultraschall funktioniert. Nenne Beispiele in der Anwendung bei Menschen und suche im Internet nach Beispielen aus der Tierwelt.
2. Erkläre was das folgende Programm macht. Schreibe das Programm ab und übertrage es auf deinen Roboter. Achte darauf, dass der Sensor und die Motoren am richtigen Ausgang/Eingang angeschlossen sind.
3. Der Roboter soll bis zu einem Hindernis fahren und sofort stehen bleiben. 4. Schreibe nun ein Programm für eine Alarmanlage. Sobald ein Hindernis in 25 cm Nähe des
Sensors kommt, soll ein lautes Signal ertönen.
Frank Engeln © 2013
47
Sensoren – Farbsensor als Lichtsensor
Der Farbsensor ist ein digitaler Sensor.
Das Funktionsprinzip basiert auf zwei LED-Leuchten. Eine von ihnen emittiert weißes Licht, um das Objekt zu erhellen, die zweite analysiert seine Farbe.
Er misst reflektiertes rotes Licht und Umgebungslicht sämtlicher Lichtstärken zwischen absoluter Dunkelheit und grellem Sonnenschein.
Abtastrate: 1 kHz Die EV3-Software erkennt den angeschlossenen Sensor automatisch
Wir benötigen eine Testauflage mit der schwarzen Linie und einen Roboter mit Farbensor. Dieser
sollte möglichst nah über den Boden angebracht werden. Das Grundprinzip der „Linie folgen“ ist,
dass der Roboter versucht, auf dem Rand der schwarzen Linie zu bleiben und sich von der hellen
Umgebung abwendet. Der Roboter soll also von vornherein einen Linksbogen fahren. Wenn der
Sensor dann Weiß sieht muss der Roboter einen Rechtsbogen fahren, bis er wieder Schwarz sieht,
worauf er dann erneut den Linksbogen fährt. Die Zahl, die als Grenze zwischen Hell und Dunkel zu
nehmen ist hängt von den Randbedingungen ab, wie z.B. der Helligkeit im Raum. Man muss sie
ausprobieren, dazu klickt man einen der Warteblöcke an und setzt den eingeschalteten Roboter auf
den Untergrund.
Aufgabe: 1. Schreibe ein Programm wobei der Roboter einer schwarzen Linie folgt, aber gegen
den Uhrzeigersinn fährt.
2. Baue einen Roboter, der sich nur innerhalb eines mit dunklen Rand begrenzten
Feldes bewegt.
3. Schreibe ein Programm, welches verhindert dass dein Roboter über die Tischkante
hinausfährt und damit vom Tisch fällt.
4. Der Roboter soll bis zu einer schwarzen Linie fahren und anschließend einen Ton
abgeben.
Frank Engeln © 2013
48
Sensoren – Tastsensor
Der Tastsensor ist der einfachste Sensor. Bei Nichtbetätigung ist der Widerstand, wie bei einem Schalter, unendlich groß. Bei Betätigung hingegen ist der Widerstand ca. 500W groß. Durch die veränderten Widerstandswerte kann der NXT feststellen, ob ein Gegenstand berührt wurde oder nicht. Der Tastsensor wird analog betrieben. Dieser passive Sensor hat eine sehr geringe Stromaufnahme.
(Einstellungen: Druck, Freigabe, Stoß)
Der Tastsensor des NXT erkennt nur zwischen 2 Zuständen.
0 = nicht gedrückt 1 = gedrückt
Aufgabe: Schließe den Tastsensor an Port 3. Der Roboter soll so lange
geradeausfahren, bis er gegen ein Hindernis stößt. Versuche
das Programm zu erarbeiten, indem du den Text unten
durcharbeitest.
- Schreibe ein neues Programm.
- Speichere es unter dem Namen „tastsensor.rbt“ ab.
- Definiere den Sensortyp an Port 3.
- Der Roboter soll nun vorwärtsfahren, so lange bis der Taster gedrückt wird.
- Die Bedingung ist, das der Wert des Sensors = 1sein muss. Das bedeutet, dass der Sensor
gedrückt wurde. Wird der Sensor nicht gedrückt ist der Wert = 0. Trifft der Roboter auf einen
Gegenstand und der Tastsensor wird gedrückt, die Bedingung wird also wahr, wird das
Programm fortgesetzt und der Roboter soll stoppen.
Aufgaben:
1. Der Roboter soll genau beim Hindernis stehen bleiben und einen Ton von sich geben. 2. Der Roboter soll nach drücken des Tastsensors 5 Sekunden lang vorwärts fahren. 3. Der Roboter soll nach drücken des Tastsensors eine Melodie abspielen.
Frank Engeln © 2013
49
Sensoren – Geräuschsensor
Der Geräuschsensor, Tonsensor oder Soundsensor ist dem Lichtsensor in der Handhabung sehr ähnlich. Dieser analoge Sensor misst Schalldruck entweder in dB oder in dBA. Es können Werte im Bereich von 55 dB bis 90 dB gemessen werden. 90 db haben Autohupen oder sind LKW-Fahrgeräusche. Dieser Sensor kann also nur hören wie laut etwas ist. Der Zusatz A gibt an, dass die unterschiedlichen Tonfrequenzen ähnlich dem menschlichen Hörempfinden unterschiedlich bewertet werden, d.h. mittlere Frequenzen (Spitze bei 2 kHz) werden stärker berücksichtigt. Der allgemeine Frequenzbereich reicht von 20 Hz bis 18 kHz. Schalldruckpegel sind extrem schwierig zu messen, also werden die Sensor-Messwerte auf dem MINDSTORMS NXT in Prozent angezeigt [%]. • 4-5% ist wie ein leises Wohnzimmer • 5-10% Menschen die in einem Abstand miteinander sprechen • 10-30% ist normales Gespräch - nah an dem Sensor - oder Musik, die mit einer „normalen“ Zimmerlautstärke gespielt wird • 30-100% ist das Schreien von Menschen oder Musik, die mit hoher Lautstärke gespielt wird.
Aufgaben: 1. Versuche den Roboter an der schwarzen Linie auf Zuruf zum Stehen zu bringen.
2. Lasse den Roboter im Kreis fahren. Wenn geklatscht wird soll er stoppen.
3. Schreibe ein Programm wobei der Roboter 5 Sekunden lang vorwärts fahren soll, wenn ein Mal laut geklatscht wird.
Bauidee: Nachtlicht mit Geräuschsensor
Zusatzaufgabe: Entwickelt ein Nachtlicht mit Geräuschsensor. Wenn das Baby anfängt zu
weinen, schaltet sich das Licht ein und nach ca. 4 Min. wieder aus.
Zur Information - Anwendungsbeispiele: Ein sog. Klatschschalter ist ein Schalter der auf Geräusche reagiert und mit dem man z. B. durch ein- oder zweimaliges Händeklatschen einen Verbraucher, wie z. B. die Beleuchtung ein- und ausschalten kann. Polizei und Militär in den USA gehen zum Lauschangriff über: Sie entwickeln Geräuschsensoren, die
Pistolenschüsse oder Gewehrfeuer automatisch orten können. Die Technik ist noch nicht ausgereift,
hat aber schon zu Fahndungserfolgen geführt. (www.spiegelonline.de)
Frank Engeln © 2013
50
Sensoren - Farbsensor
Der digitale Farbsensor kann acht verschiedene Farben erkennen. Darüber hinaus dient er als Lichtsensor, der die Lichtstärke erkennt. Farbsensoren bestimmten die Farbe in der Regel über den Vergleich zum Referenzwert. Ein Farbsensor vergleicht die Farben – oder besser gesagt, er prüft die Übereinstimmung von Farbwerten. Dabei wird das Messobjekt mit einer Weißlichtquelle (LED) beleuchtet, die reflektierten Farbanteile werden anschließend ausgewertet.
Die Farb-Anzahl wird berechnet, indem der Sensor die Werte etwa 100-mal pro Sekunde aktualisiert.
Das sehen wir: das sieht der Sensor:
Er misst die Helligkeit im Bereich von 0 bis 100%.
Der Farbsensor erkennt nachweisbaren Farben: 8 Farben (farblos, schwarz, blau, grün, gelb, rot, weiß, braun)
Aufgabe:
1. Der Roboter fährt über schwarze und rote Linien, bei einer roten Linie gibt er den Ton „A5“, bei einer schwarzen Linie den Ton „E4“ ab. 2. Besorgt euch drei verschiedene Pappen in verschiedenen Farben (Kunstunterricht). Legt die
Pappen (z.B. rot, gelb, blau) mit einem Abstand auf den Tisch Der Roboter soll nun die rote Pappe
finden. Dazu müßt ihr ihn suchen lassen. Wenn er die rote Pappe gefunden hat, soll er stoppen.
Frank Engeln © 2013
51
Ein automatischer Feuermelder
Früher wohnten Wächter auf hohen Türmen in den Städten, die ein
entstehendes Feuer durch ein Hornsignal zu melden hatten.
Feuermelder in unserer Zeit sehen anders aus. Öffentliche Feuermelder sind der Öffentlichkeit zugänglich und werden von Hand ausgelöst. Beim Betätigen des Feuermelders wird sofort Alarm gegeben; zugleich läuft eine Kontaktscheibe ab und gibt in der Meldezentrale den Standort an, von dem die Meldung kommt. Dennoch kommt es vor, dass die Feuerwehr zu spät an die Brandstelle gelangt. Deshalb hat man automatische Feuermelder gebaut, die bei jeder gefährlichen Temperaturerhöhung in einem Raum, auf einem Schiff, in einem Bergwerk etc. selbständig Alarm geben, ja sogar von sich aus die Brandbekämpfung einleiten.
Aufgaben:
1. Konstruiere einen Feuermelder mit dem EV3.
2. Schreibt ein Programm, wobei bei einer Temperaturerhöhung ein Signalton und eine Lampe
leuchten sollen (Alarm).
Tipp: Als Feuerstelle kannst du ein Teelicht nehmen.
Für Fortgeschrittene:
3. Entwerfe eine Löschvorrichtung und versuche die Kerze zu löschen (Ventilator, oder
Hydraulikpumpe – Wasser)
Frank Engeln © 2013
52
Sensoren – Infrarot/ Ultraschall Messübung
Um die tatsächlichen Werte vom Abstand zu erhalten, sollen folgende Messungen durchgeführt werden:
1x Infrarotsensor, Lineal, Holzbrett oder 1x Ultraschallsensor
Versuchsaufbau:
Der gemessene Abstand soll in einer Tabelle eingetragen werden.
tatsächliche Entfernung (cm) gemessene Entfernung (cm)
0
10
20
30
40
50
60
70
80
Frank Engeln © 2013
53
Wer am Robocup-Junior - Roboterfußball - teilnehmen möchte, der braucht z.Zt. noch den Infrarot-Sucher, da der „Fußball“ Infrarotstrahlen sendet. Der HiTechnic-Infrarotdetektor ermöglicht das Registrieren und Orten von Infrarot-Lichtquellen. Auch dieser Sensor-Block kann von der Internetseite von www.hitechnic.com heruntergeladen werden und muss noch importiert werden.
Blöcke importieren
Um Blöcke zu importieren, diese erst von der entsprechenden Internetseite (z.B.
www.hitechnic.com) downloaden. Oft stehen die Blöcke als *.zip Datei zur Verfügung. Die Datei
entpacken. Dann unter Werkzeuge den Assistent Blöcke importieren wählen. Es öffnet sich dieses
Fenster:
Nach dem Neustart der Software findet man die Blöcke bei den Sensoren:
Frank Engeln © 2013
54
WENN - DANN (if-then) Bedingung
Eine Bedingte Anweisung ist in der Programmierung ein Programmabschnitt, der nur unter einer bestimmten Bedingung ausgeführt wird. Eine Verzweigung legt fest, welcher von zwei (oder mehr) Programmabschnitten, abhängig von einer (oder mehreren) Bedingungen, ausgeführt wird.
Bedingte Anweisungen und Verzweigungen bilden, zusammen mit den Schleifen, die Kontrollstrukturen der Programmiersprachen. Sie gehören zu den wichtigsten Bestandteilen der Programmierung, da durch sie ein Programm auf unterschiedliche Zustände und Eingaben reagieren kann.
Zum Beispiel: WENN der Temperatursensor den WERT X (z.B. Temperatur <25) ermittelt soll der Roboter etwas machen. Was er machen und nicht machen soll, wird in die Bedingung gesetzt. Ist die Temperatur höher, macht er etwas anderes. WENN der Temperatursensor den WERT X (z.B. Temperatur <25) ermittelt macht der Roboter etwas ODER der Lichtsensor hat den WERT X (z.B. Helligkeit >50) ermittelt, dann soll er etwas anderes machen. Ebenso umgekehrt. Wenn der Temperatursensor den WERT X (z.B. Temperatur >25) ermittelt macht der Roboter etwas ODER der Lichtsensor hat den WERT X (z.B. Helligkeit <50) ermittelt, dann soll er etwas anderes machen.
Aufgaben: 1. Der Roboter soll vorwärts fahren; wenn der Tastsensor gedrückt wird, soll er rückwärtsfahren. 2. Baue einen kleinen Hindernis Parcours auf. Stößt der Roboter an ein Hindernis, gibt er einen Ton ab und fährt rückwärts, dreht um 45 Grad nach links und fährt weiter. 3. Der Roboter überprüft den Tastsensor. Ist der Tastsensor bei „Start“ gedrückt, erscheint „Danke für das drücken“ am Display, sonst erscheint „Drück mich“ am Display. 4. Der Roboter soll einer schwarzen Linie nachfahren
Frank Engeln © 2013
55
Schleifen
Eine Schleife ist eine Kontrollstruktur in Programmiersprachen. Sie wiederholt eine Befehlsfolge – den so genannten Schleifenrumpf oder Schleifenkörper – so lange, wie eine Laufbedingung gültig ist oder bis eine Abbruchbedingung (stopp) eintritt. Dies geschieht z.B. bis ein bestimmter Wert erreicht ist (Zähl-Schleife) oder eine Bedingung erfüllt ist. Schleifen, deren Laufbedingung immer erfüllt ist oder die ihre Abbruchbedingung niemals erreichen, und Schleifen, die keine Abbruchbedingungen haben, sind Endlosschleifen.
In der Konfiguration kann man die verschiedenen Arten der Schleifen auswählen: von Endlosschleife, Zeitschleife, Zählschleife und Logiksignal bis Zählen.
Aufgaben: 1. Der Roboter soll ein gleichmäßiges Rechteck fahren. Ändere das Programm so ab, dass er immer in einem anderen Muster fährt. Befestige einen Filzstift an den EV3 und lass deine Figur vom Roboter aufzeichnen. 2. Der Roboter soll bis zum bis zum Hindernis fahren. Er soll alle 2 s einen Ton abgeben, solange, bis das Hindernis weggeräumt wurde und anschließend weiterfahren. 3. Zeichne auf ein großes Stück Pappe 5 schwarze Linien mit einem „Edding“. Der Roboter soll an der 2. schwarzen Linie stehen bleiben. Übt mit dem Programm. Der Roboter soll mal an der 3., an der 4. etc. Linie stehen bleiben. 4. Baue eine Art „Fernbedienung“ für deinen NXT. Die Fernbedienung besteht aus 2 Tastsensoren, die mit langen Kabeln mit dem Roboter verbunden sind. Sind beide gedrückt, fährt er vorwärts, ist der Linke gedrückt, fährt er links, ist der Rechte gedrückt, fährt er rechts. Wird kein Sensor gedrückt, bleibt er stehen.
Frank Engeln © 2013
56
Multitasking
Der Begriff Multitasking bzw. Mehrprozessbetrieb bezeichnet die Fähigkeit mehrere Aufgaben (Tasks) nebenläufig auszuführen. Dabei werden die verschiedenen Prozesse in so kurzen Abständen immer abwechselnd aktiviert, dass der Eindruck der Gleichzeitigkeit entsteht. Man kann eine Parallelreihe erstellen, indem man vor der Parallelreihe eine neue Reihenleitung vom Ausgang des Reihensteckers am Programmierblock zieht: Aufgabe: 1. Baue die Kandidaten „Buzzer“ für eine Quizsendung: 3 Kandidaten bekommen eine Frage gestellt. Wer sie beantworten kann, drückt seinen Knopf. Bei ihm brennt eine Lampe und die anderen Kandidaten werden „gesperrt“.
Variablen
Was sind Variablen? Mit Variablen kann man einen Text, Zahlen oder Logik schreiben und lesen um sie an verschiedenen Programmteilen nutzen zu können. Variablen müssen definiert werden. Nach Ende des Programms werden die Variablen mit den Inhalten gelöscht. In dem EV3- Block Variable kann man Werte speichern und in einem anderen Teil des Programms wieder abfragen. Im Block oben rechts "Variable hinzufügen" kann man eine Variable anlegen und benennen. Besser ist es sinnvolle Namen zu wählen, das erleichtert das Lesen und Suchen von Fehlern. Die Variablen Numerischer und Logischer Wert, Text und Numerisches und Logisches Array sind vordefiniert und im Lese- oder Schreibmodus abrufbar.
Aufgaben: 1. Der Roboter soll zählen, wie oft der Tastsensor gedrückt wurde. 2. Der Roboter soll langsam beschleunigen. 3. Der Roboter soll anfahren und abbremsen.
Frank Engeln © 2013
57
Versuche zur Wärmelehre
Warmwasser
Beschreibung: Um Wasser zu erwärmen werden oft Tauchsieder genutzt. Der Versuch soll erklären,
wie die im Tauchsieder gewonnene Wärmeenergie verschiedene große Wassermengen erwärmt.
Geräte: Becherglas 600 ml, EV3, Temperatursensor, Tauchsieder
Versuchsdurchführung: Erwärme verschiedene große Wassermengen (200, 300 ... 500 ml) in jeweils
gleichen Zeiten (2 Minuten), messt die Temperaturerhöhung und übertragt sie in eine Tabelle.
Aufgaben:
1. Fertigt eine Tabelle an
Wassermenge in ml Wassertemperatur vor dem Versuch in 0C
Wassertemperatur nach 2 Minuten Heizdauer in 0C
Temperatur-Unterschied zwischen
Anfangs- und Endtemperatur in 0C
200
300
2. Wie kann man die Beobachtungen in einem allgemeinen Ergebnissatz zusammenfassen? 3. Führe eine eigene Messreihe durch. Erhitze verschiedene Wassermengen auf ca. 50 0C.
Notiere die Zeit die nötig ist, diese Temperatur zu erreichen.
Wassermenge in ml Zeit in sec.
Frank Engeln © 2013
58
Geräuschpegelmessung im Straßenraum
Durchführung von Geräuschpegelmessungen
Lärmpegel werden in dB(A) gemessen. Dies entspricht etwa der veralteten Einheit Phon. Bei 0
dB(A) liegt die Hörschwelle des Menschen. Ein Motorrad erzeugt im Leerlauf in einem Meter
Abstand ca. 80 dB(A), und die Schmerzgrenze liegt bei etwa 120 dB(A). Die Messungen werden
durch die Schülerinnen/Schüler gruppenweise als außerschulische Arbeit oder im Rahmen von
Exkursionen und in verschiedenen Straßentypen durchgeführt. Die Auswahl ist nach lokalen
Gegebenheiten zu kürzen oder zu erweitern.
Hinweis: Um die Sicherheit im Straßenverkehr zu gewährleisten, ist es angebracht, die Schülerinnen und Schüler auf die Regeln der Verkehrssicherheit hinzuweisen. Aufgaben: 1. Führt an verschiedenen Orten Messungen des Straßenlärms durch. Die Messungen sollen alle 3 Minuten dauern. Das Intervall der Messung kann 5 Sekunden betragen. Zeichnet die Messpunkte in eine Karte. Speichert die Daten auf dem EV3 und wertet diese in der Schule aus. Vergleicht die Werte. 2. Nutze den EV3 als Messgerät. Lege eine Tabelle mit verschiedenen Geräuschen und der
Lautstärke in dB.
Für Fortgeschrittene: Baut eine Lärmampel. Von 0-60 dB grün, 61-90 dB gelb und 91 – 160 dB rot.
Pegelbereiche für Lärm in der Umwelt dB(A) Beispiele Wahrnehmungsbereich
0 Definierte Hörschwelle
10 Blätterrauschen im Wald bei Windstille, Schneefall, normales Atmen
20 Tropfender Wasserhahn, leichter Wind, Blätterrauschen
30 Flüstern (1 m Abstand), Ticken eines Weckers
40 Brummen eines Kühlschranks (1 m Abstand); sehr leise Radiomusik
50 Leise Radiomusik (1 m Abstand)
60 Umgangssprache; PKW in 15 m Abstand
70 Rasenmäher (7 m Abstand), Schreibmaschine (1 m Abstand)
80 Pkw mit 50 km/h 1 m Abstand, max. Sprechlautstärke
90 Lkw-Motor 5 m Abstand; Pkw mit 100 km/h (1 m Abstand)
100 Kreissäge; Lärm in einem Kraftwerk, Posaunenorchester
110 Propellerflugzeug (7 m Abstand), Bohrmaschine; laute Diskothek
120 Verkehrsflugzeug 7 m Abstand, Beginn der Schmerzgrenze
130 Düsenflugzeug (7 m Abstand), Walkman Maximalbelastung Schmerzgrenze
160 Gewehrschuss in Mündungsnähe (Quelle: SEIDEL, 1998; GRIEFAHN; 1988; modifiziert und erweitert von: Ministerium für Umwelt und Forsten Rheinland-Pfalz, Ministerium für Umwelt und Naturschutz des Landes Nordrhein-Westfalen 2004)
Frank Engeln © 2013
59
Wir bauen ein Fernthermometer
Es gibt in der Technik Räume, deren Temperatur von der Ferne her überwacht werden muss. Entweder ist es in ihnen so warm, dass man nicht in unmittelbarer Nähe mit einem Thermometer messen kann, oder die Anwesenheit von Menschen ist aus anderen Gründen unmöglich. In solchen Fällen braucht man ein Fernthermometer. Versuchsdurchführung: Umwickelt das Thermometer des EV3 mit Kupferdraht, so dass ihr so eine Art „Fühler“ habt. Stelle nun eine Kerze im bestimmten Abstand in die Nähe des Drahtes.
Aufgaben:
Wie ist die Wärmeentwicklung im Abstand zum Draht? Lege eine Tabelle an und übertrage die
Werte. Fasse Deine Beobachtungen zusammen.
Lichtmessung mit dem EV3
Aufgabe: Ermittelt die Sensorwerte für die Farbe rot, blau und gelb. Trage die Ergebnisse in die
Tabelle ein und vergleicht eure Werte.
Farbe rot blau gelb weiß schwarz
Wert