des NXT Brick mit NXC
|
|
- Dorothea Krause
- vor 7 Jahren
- Abrufe
Transkript
1 Angewandte Informationstechnologie LEGO Mindstorms NXT Einführung in die Programmierung des NXT Brick mit NXC Dr. Leander Brandl 2010 it.brgkepler.at
2 1 Allgemeines 1.1 LEGO Mindstorms NXT Im Oktober 2006 hat LEGO mit Mindstorms NXT eine neue Generation von LEGO Robotern auf den Markt gebracht. Begleitend zur weltweiten Verbreitung von LEGO Mindstorms haben diese Roboter längst auch in Schulen einzug gehalten. Schülerinnen und Schülern können mit diesen Möglichkeiten und damit verbundenen Lernkonzepten Naturwissenschaften, Technik, Konstruktion, Programmierkenntnisse und Mathematik durch selbständiges Arbeiten vermittelt werden. Zusätzliche Motivation erfährt die Konstruktion und Programmierung von Robotern durch die Teilnahme an Wettbewerben, wie der First Lego League oder dem RoboCup Junior. 1.2 Erstellung von Programmen mit der grafischen Oberfläche NXT Die mitgelieferte Software ermöglicht die Erstellung von Programmen für NXT Roboter mit einer grafischen Oberfläche. In einer übersichtlichen Darstellung können Ereignisse (Auswertung von Sensoren) und Aktionen (Steuern von Motoren) miteinander verknüpft und auch komplexe Programmabläufe realisiert werden. Die Programme werden in einer Art Baukastensystem zusammengestellt, die Bedienung kann intuitiv erfolgen und es werden keine Programmierkenntnisse vorausgesetzt. Die sehr übersichtliche und einfach zu bedienende Software bietet zwei Programmierbereiche für Einsteiger und Fortgeschrittene. Abbildung Oberfläche der grafischen Programmiersoftware LEGO Mindstorms Seite 2
3 1.3 Die Programmiersprache NXC Möchte man den gesamten Funktionsumfang des NXT Brick nutzen, so muss man auf Programmiersprachen und entsprechende Compiler zurückgreifen mit denen man Programmcode direkt für den im NXT Brick enthaltenen Mikrocontroller erstellen kann. Neben kommerziellen Produkten haben sich auch einige Softwareentwickler daran gemacht eigene Lösungen zur Erstellung von Programmen für den NXT Brick in verschiedenen Programmiersprachen zu erstellen und bieten diese im Internet kostenlos an. Die Programmiersprache NXC - Not exactly C - wurde von John Hansen speziell für die LEGO Roboter entwickelt und basiert in den Grundstrukturen auf der Programmiersprache C. Die eigentliche Arbeit beim Schreiben von Programmen erfolgt in der integrierten Entwicklungsumgebung Bricx Command Center. Diese steht unter der folgenden Adresse zum Download bereit: Die vorliegende Einführung soll dazu dienen auch ohne Vorkenntnisse einer Programmiersprache das Erstellen von Programmen für den NXT Brick mit NXC zu erlernen. 1.4 Der NXT Brick Der NXT Brick verfügt über 4 Eingänge und 3 Ausgänge. An den Eingängen können Sensoren angeschlossen werden, die Ausgänge werden verwendet um Motoren anzuschließen. Zusätzlich steht ein USB-Anschluss zum Übertragen von Programmen von einem Computer zum NXT Brick zur Verfügung. Die Bedienung des NXT Brick erfolgt über die 4 Tasten unter dem Display. Nach dem Übertragen von eigenen Programmen stehen diese unter dem Menüpunkt "My Programs" zur Verfügung, können mit den Pfeiltasten ausgewählt und mit der orangen Taste gestartet werden. Abbildung Anschluss- und Tastenbelegung des NXT Brick Seite 3
4 1.5 Die Motoren Für LEGO Mindstorms wurden neue Servomotoren entwickelt. Diese verfügen auch über integrierte Rotationssensoren, die das genaue Messen von Geschwindigkeiten und Entfernungen ermöglichen und an den NXT Brick zurückmelden. Die Motoren können sehr präzise in 1 - Schritten gesteuert werden. Abbildung Aufbau eines Motors 1.6 Die Sensoren An den Eingängen des NXT Brick können unterschiedliche Sensoren angeschlossen werden. Mittlerweile gibt es zu den von LEGO gelieferten Sensoren auch eine große Anzahl, die von anderen Herstellern entwickelt und mit dem NXT Brick verwendet werden können. Die genaue Funktion und die Einbindung der verschiedenen Senoren in eigene Programme wird in späterer Folge beschrieben. Lichtsensor Berührungssensor Geräuschsensor Abstandsensor Abbildung Standard-Sensoren von LEGO Mindstorms Seite 4
5 2 Das erste Programm 2.1 Die Programmieroberfläche BricxCC Zur Erstellung von Programmen für den NXT Brick bietet sich die Entwicklungsoberfläche Bricx Command Center aufgrund ihrer übersichtlichen Oberfläche und umfangreichen Funktionalität für den Einsatz in der Schule sehr an. Wird dieses Programm gestartet, so muss zunächst angegeben werden welcher programmierbare Roboter-Baustein zum Einsatz kommt (hier NXT), über welche Schnittstelle dieser am Computer angeschlossen ist (hier USB) und welche Firmware auf dem Roboter-Baustein installiert ist. Abbildung Einstellungen beim Start des Bricx Command Centers Zusätzlich zum Editor in dem der Programmcode geschrieben wird, kann damit das erstellte Programm mit dem Klick auf bereitgestellte Schaltflächen compiliert (in einen für den NXT vertändlichen Code übersetzt) und auch über die USB-Schnittstelle zum NXT Brick übertragen werden. Neues Programm Öffnen Speichern Compilieren des Programms Programm auf NXT übertragen Texteditor Abbildung Die Programmieroberfläche Brixc Command Center mit den wichtigsten Bedienelementen Seite 5
6 2.2 Grundstruktur eines NXC-Programms und Steuern von Motoren An den Ausgängen A, B und C können die Motoren angeschlossen werden. Bei den ersten Beispielen kommt ein einfaches Robotermodell mit zwei Motoren zum Einsatz, die an den Ausgängen A und B angeschlossen sind. Programme in NXC bestehen aus Tasks. Jedes Programm muss zumindest einen Task mit dem Namen main() beinhalten. Alle Anweisungen, die zu diesem Task gehören, werden mit geschwungenen Klammern zusammengefasst. Jede Anweisung wird in NXC mit einem Strichpunkt beendet! Quellcode Programmstruktur und Steuern der Motoren an den Ausgängen A und B Die Funktionen OnFwd(Ausgang, Leistung) und OnRev(Ausgang, Leistung) Zum Steuern der Motoren stehen die beiden Funktionen OnFwd(Ausgang, Leistung) und OnRev(Ausgang, Leistung) zur Verfügung. Als Ausgang können entweder ein Ausgang (OUT_A, OUT_B oder OUT_C) oder gleichzeitig mehrere Ausgänge (OUT_AB, OUT_AC, OUT_BC oder OUT_ABC) angegeben werden. Die Leistung, aus der sich die Drehgeschwindigkeit ergibt, kann mit ganzen Zahlen aus dem Bereich von 0 bis 100 zwischen 0% und 100% festgelegt werden. Die Funktion Wait(Millisekunden) Soll das Programm die zuvor angegebenen Anweisungen für eine bestimmte Zeit ausführen, so kann dies an jeder beliebigen Stelle mit der Funktion Wait(Millisekunden) erreicht werden. Die Funktion Off(Ausgang) Zum Ausschalten der Ausgänge verwendet man die Funktion Off(Ausgang). Die möglichen Werte für den Parameter Ausgang sind: OUT_A, OUT_B, OUT_C, OUT_AB, OUT_AC, OUT_BC oder OUT_ABC Zum Programmcode: Zeile 3: Der Motor an Ausgang A dreht sich mit 50% Leistung vorwärts Zeile 4: Der Motor an Ausgang B dreht sich mit 50% Leistung vorwärts Zeile 5: Das Programm wartet an dieser Stelle für zwei Sekunden, der Roboter fährt also zwei Sekunden rückwärts Zeile 6: Der Motor an Ausgang A dreht sich mit 20% Leistung rückwärts Zeile 7: Der Motor an Ausgang B dreht sich mit 20% Leistung rückwärts Zeile 8: Das Programm wartet an dieser Stelle für drei Sekunden, der Roboter fährt also drei Sekunden rückwärts Zeile 9: Die beiden Ausgänge A und B werden abgeschaltet - der Roboter bleibt stehen. Seite 6
7 Programmierung des NXT mit NXC 2.3 Kompilieren des Programms und Übertragen auf den Roboter Nach dem Schreiben des Programmcodes im Editor muss dieser in einen für den NXT Brick verständlichen Code übersetzt werden. Dieser Vorgang wird von einem Compiler ausgeführt und im Brixc Command Center durch einen Klick auf die Schaltfläche mit den beiden Zahlrädern veranlasst. Aufgabe 2.1 Dr. Leander Brandl - it.brgkepler.at Anhang
8 3 Steuern von Motoren und Wiederholung von Programmteilen 3.1 Drehung Soll sich der Roboter drehen, so kann dies durch Ansteuerung beider Motoren in entgegengesetzter Richtung oder durch Einschalten nur eines Motors erfolgen. Je nach Konstruktion und Aufgabenstellung wird entweder die eine oder andere Möglichkeit zum Einsatz kommen. Quellcode Drehung des Roboters um 90 Zum Programmcode: Zeile 3-4: Beide Motoren fahren für zwei Sekunden mit Leistung 50% vorwärts Zeile 5-6: Nur der Motor an Ausgang A fährt für 400 Millisekunden vorwärts Zeile 7-8: Beide Motoren fahren wieder für zwei Sekunden mit Leistung 50% vorwärts Zeile 9: Die Ausgänge A und B werden abgeschaltet Die Kombination der Werte Leistung 50% und 400 Millisekunden ergibt beinahe eine Drehung um 90. Sollte dies nicht der Fall sein, so können die Werte für die Leistung und die Warte-Zeit in Zeile 5 und 6 geändert werden. Aufgabe 3.1 Aufgabe 3.2 Seite 8
9 3.2 Wiederholung von Programmteilen mit repeat() Sollen verschiedene Anweisungen in einem Programm mehrmals hintereinander ausgeführt werden, so müssen diese nicht entsprechend oft hintereinander im Programmcode stehen. Diese Aufgabe übernimmt das repeat - Statement. Quellcode Wiederholung von Programmteilen mit dem repeat-statement Zum Programmcode: Zeile 3: Mit dem repeat-statement wird ein Bereich eingeleitet, der in der Folge mehrmals behandelt werden soll. Der Wert in den runden Klammern gibt an, wie oft der folgende Anweisungs-Block wiederholt wird. Zeile 4-9: Der Anweisungsblock, der zwischen den beiden geschwungenen Klammern steht wird 2 Mal ausgeführt. Aufgabe 3.3 Aufgabe 3.4 Seite 9
10 3.3 Motoren um vorgegebenen Winkel drehen Bei der Steuerung der Motoren ist es nicht nur möglich diese mit unterschiedlichen Geschwindigkeiten vorwärts und rückwärts drehen zu lassen, sondern diese auch sehr exakt zu positionieren. Quellcode Drehung der Motoren um einen vorgegebenen Winkel Die Funktion RotateMotor(Ausgang, Leistung, Drehwinkel) Zum Drehen der Motoren um einen bestimmten Winkel verwendet man die Funktion RotateMotor(Ausgang, Leistung, Drehwinkel). Die möglichen Werte für die Parameter Ausgang und Leistung entsprechen denen der Funktionen OnFwd() und OnRev(). Mit dem Parameter Drehwinkel wird der Winkel angegeben, um den sich der Motor drehen soll: positive Werte - Drehung vorwärts, negative Werte - Drehung rüchwärts Zum Programmcode: Zeile 3: Der Motor an Ausgang A dreht sich mit der Leistung 20% eine Volldrehung (360 ) vorwärts. Zeile 4: Der Motor an Ausgang B dreht sich mit der Leistung von 50% um 120 rückwärts. Seite 1 0
11 4 Sensoren, Entscheidungsabfragen und Textausgabe am Display 4.1 Kontinuierliches Ablaufen von Programmen Möchte man, dass Programme nicht wie bei den bisherigen Beispielen ein einziges Mal durchlaufen, so kann man dies mit einer Endlosschleife innerhalb des Tasks main() erreichen. Diese Schleife läuft solange das Programm im NXT Brick aktiv ist und wir am NXT Brick mit dem Stop-Button beendet. Quellcode Endlosschleife in einem Programm für den NXT Brick Die while - Schleife Soll ein Anweisungsblock solange ausgeführt werden wie eine bestimmte Bedingung erfüllt ist, so verwendet man die while - Schleife. Nach dem Schlüsselwort while wird in runden Klammern eine Bedingung angegeben. Alle Anweisungen, die in dieser Schleife ausgeführt werden sollen, sind mit geschwungenen Klammern zusammengefasst. Zum Programmcode: Zeile 3: Beginn der while-schleife mit der Bedingung (1==1). Diese ist immer erfüllt, die Schleife läuft endlos. Zeile 5-9: Der Roboter fährt ein kleines Kreisstücke und wartet anschließend eine Sekunde. Seite 1 1
12 4.2 Der Berührungssensor Die Sonsoren werden an einem der vier Eingänge des NXT Brick angschlossen. Bevor die Werte der Sonsoren im Programm verwendet werden können, muss gestgelegt werden, welcher Sensor an einem Eingang angeschlossen ist. Quellcode Ausweichmanöver des Roboters bei eine Berührung mit der Stoßstange an der Vorderseite In diesem Programm wird zunächst festgelegt, dass an Eingang 1 ein Berührungssensor angeschlossen ist. In einer Endlosschleife fährt der Roboter gerade aus und macht bei einer Berührung eine Ausweichbewegung nach hinten bevor dieser wieder vorwärts fährt. Die Funktion SetSensorTouch(Eingang) Mit dieser Funktion legt man fest, dass einem Eingang ein Berührungssensor angeschlossen ist. Der Parameter Eingang kann die Werte IN_1, IN_2, IN_3 oder IN_4 annehmen. Die Funktion Sensor(Eingang) Möchte man auf die Werte, die ein Sensor liefert zugreifen, so verwendet man die Funktion Sensor(). Als Parameter übergibt man den jeweiligen Eingang IN_1, IN_2, IN_3 oder IN_4. Ist an einem Eingan ein Berührungssensor angeschlossen, so liefert die Funktion Sensor() die Werte 0 (Taster offen) oder 1 (Taster geschlossen) zurück. Die Entscheidungsabfrage if() Soll das Programm selbstständig Entscheidungen treffen, so steht dafür die if - Abfrage zur Verfügung. Hinter dem Schlüsselwort if wird in runden Klammern eine Bedingung angegeben. Alle Anweisungen, die ausgeführt werden, wenn die Bedingung erfüllt ist, werden mit geschwungenen Klammern zusammengefasst. Sollen Anweisungen ausgeführt werden, wenn die Bedingung nicht erfüllt ist, so werden diese hinter dem Schlüsselwort else angeführt. Seite 1 2
13 Vergleichsoperatoren für Bedingungen In den Bedingungen der if - Abfrage und einer while - Schleife können folgende Operatoren für den Vergleich von zwei Werten verwendet werden: ==... ist gleich if (Sensor(IN_1) == 1) {... }!=... ungleich if (Sensor(IN_3)!= 1) {... } <... kleiner if (Sensor(IN_2) < 4) {... } >... größer if (Sensor(IN_4) > 20) {... } <=... kleiner gleich if (Sensor(IN_4) <= 10) {... } >=... größer gleich if (Sensor(IN_2) >= 25) {... } Verknüpfungsoeratoren für Bedingungen Sollen in einer Bedingung mehrere Bedingungen verknüpft werden, so gibt es dafür die beiden Operatoren && und. Bei einer Verknüpfung mit && (und) ist die Gesamtbedingung erfüllt, wenn beide Bedingung erfüllt sind. Bei einer Verfknüpfung mit (oder) gilt die Gesammtbedingung dann als erfüllt, wenn entweder die eine oder die andere Bedingung erfüllt ist. Verknüpfung mit && (und) if ( (Sensor(IN_1) == 1) && (Sensor(IN_2) ==1) ) {... } Verknüpfung mit (oder) if ( (Sensor(IN_1) == 1) (Sensor(IN_2) ==1) ) {... } Zum Programmcode: Zeile 3: Am Eingang 1 ist ein Berührungssensor angeschlossen. Zeile 4: Die Aufgaben des Roboters laufen in einer Endlosschleife. Zeile 6: Beide Motoren fahren mit der Leistung 40% vorwärts. Zeile 7: Entscheidungsabfrage: Wenn die Funktion Sensor() den Wert 1 zurückliefert, dann fährt der Roboter das Ausweichmanöver. Zeile 9-11: Das Ausweichmanöver: Der Roboter fährt mit unterschiedlichen Geschwindigkeiten beider Motoren für 2 Sekunden nach hinten. Aufgabe 4.1 Aufgabe 4.2 Seite 1 3
14 4.3 Der Lichtssensor Wird ein Lichtsensor an einem Eingang angeschlossen so kann die Intensität des reflektierten Lichts aus dem Sensor ausgelesen werden. Im folgenden Beispiel fährt der Roboter mit einem nach unten gerichteten Lichtsensor auf einer weißen Fläche in Richtung eines schwarzen Strichs. Ist der Lichtsensor über dem schwarzen Strich, so soll der Roboter anhalten. Quellcode Abtasten der Oberfläche mit einem Lichtsensor Die Funktion SetSensorLight(Eingang) Mit dieser Funktion legt man fest, dass einem Eingang ein Lichtsensor angeschlossen ist. Der Parameter Eingang kann die Werte IN_1, IN_2, IN_3 oder IN_4 annehmen. Die Funktion Sensor(Eingang) Möchte man auf die Werte, die ein Sensor liefert zugreifen, so verwendet man auch bei einem Lichtsensor die Funktion Sensor(). Als Parameter übergibt man den jeweiligen Eingang IN_1, IN_2, IN_3 oder IN_4. Im Fall eines Lichtsensors liefert die Funktion Sensor() die Werte zwischen 0 (minimale Intensität) und 100 (maximale Intensität) zurück. Zum Programmcode: Zeile 3: Beide Motoren fahren mit der Leistung 40% vorwärts. Zeile 4: Am Eingang 1 ist ein Lichtsensor angeschlossen. Zeile 5: In einer Endlosschleife wertet das Programm den Wert des Lichtsensors aus. Zeile 7: Entscheidungsabfrage: Wenn der Wert des Lichtsensors kleiner als 40 ist, dann werden beide Ausgänge abgeschaltet. Aufgabe 4.3 Aufgabe 4.4 Aufgabe 4.5 Seite 1 4
15 4.4 Ausgabe von Text und Zahlen Für die Ausgabe von Zahlenwerten und Text stehen unter NXC zwei Funktionen zur Verfügung. Diesen werden die Position der Ausgabe und der auszugebende Text bzw. Wert übergeben. Das folgende Programm zeigt kontinuierlich den Wert eines angeschlossenen Lichtsensors an. Quellcode Ausgabe von Text und Zahlen am Display Die Funktion TextOut(X-Koordinate, Zeile, Text) Mit dieser Funktion wird Text am Display ausgegeben. Der Wert für die X-Koordinate kann zwischen 0 und 99 liegen und für den Parameter Zeile stehen die Werte LCD_LINE1, LCD_LINE2,..., LCD_LINE8 zur Verfügung. Der auszugebende Text wird als Zeichenkette (String) übergeben und muss zwischen zwei doppelten Anführungszeichen stehen. Die Funktion NumOut(X-Koordinate, Zeile, Zahl) Möchte man Zahlenwerte am Display ausgeben, so müssen diese zuerst in Zeichenketten (Strings) umgewandelt werden. Dies übernimmt die Funktion NumOut(), der man die Startposition und den anzuzeigenden Zahlenwert übergibt. Zum Programmcode: Zeile 3: Die Zeichenkette "Lichtsensor: " wird in der Zeile 1 und der X-Koordinate 0 ausgegeben. Zeile 4: Am Eingang 1 ist ein Lichtsensor angeschlossen. Zeile 7: Der Zahlenwert, den die Fuktion Sensor(IN_1) zurückliefert, wird in Zeile 1 und der X-Koordinate 76 angezeigt. Die X-Koordinate 76 gibt hier die Position nach der Zeichenkette "Lichtsensor: " an. Aufgabe 4.6 Seite 1 5
16 Programmierung des NXT mit NXC Anghang A - Referenz der NXC Programmierstrukturen und allgemeine Funktionen Grundstrkutur Anweisung 1; Anweisung 2;... Wiederholung eines Anweisungsblockes Anweisung 1; Anweisung 2;... x gibt die Anzahl der Wiederholungen an Endlosschleife mit while Anweisung 1; Anweisung 2;... Entscheidungsabfrage mit if Anweisung 1; Anweisung 2;... Anweisung 1; Anweisung 2;... Wait(Millisekunden) Der Programmablauf wird an dieser Stelle angehalten Millisekunden: ganze Zahl TextOut(X-Koordinate, Zeile, Text) Ausgabe einer Zeichenkette an einer bestimmten Position am Display X-Koordinate: ganzzahliger Wert zwischen 0 und 99 Zeile: LCD_LINE1, LCD_LINE2,..., LCD_LINE8 Text: Zeichenkette, begrenzt von doppelten Anführungszeichen (z. B. "Hallo NXT!") NumOut(X-Koordinate, Zeile, Zahl) Ausgabe eines Zahlenwerts an einer bestimmten Position am Display X-Koordinate: ganzzahliger Wert zwischen 0 und 99 Zeile: LCD_LINE1, LCD_LINE2,..., LCD_LINE8 Zahl: Zahlenwert oder Name einer Variable, die einen Zahlenwert beinhaltet Dr. Leander Brandl - it.brgkepler.at Anhang
17 Programmierung des NXT mit NXC Anhang B - Referenz der NXT-spezifischen Funktionen Motoren in NXC OnFwd(Ausgang, Leistung) Vorwärtsbewegung der Motoren mit variabler Geschwindigkeit zwischen 0% und 100% Ausgang: OUT_A, OUT_B, OUT_C, OUT_AB, OUT_AC, OUT_BC, OUT_ABC Leistung: ganze Zahl OnRev(Ausgang, Leistung) Rückwärtsbewegung der Motoren mit variabler Geschwindigkeit zwischen 0% und 100% Ausgang: OUT_A, OUT_B, OUT_C, OUT_AB, OUT_AC, OUT_BC, OUT_ABC Leistung: ganze Zahl RotateMotor(Ausgang, Leistung, Drehwinkel) Drehung eines Motors um einen vorgegebenen Winkel Ausgang: OUT_A, OUT_B, OUT_C, OUT_AB, OUT_AC, OUT_BC, OUT_ABC Leistung: ganze Zahl Drehwinkel: ganze Zahl, positiver Wert - Vorwärtsdrehung, negativer Wert - Rückwärtsdrehung Off(Ausgang) Abschalten der Ausgänge Ausgang: OUT_A, OUT_B, OUT_C, OUT_AB, OUT_AC, OUT_BC, OUT_ABC Dr. Leander Brandl - it.brgkepler.at Anhang
18 Anhang C - Referenz der NXT-spezifischen Funktionen Sensoren in NXC SetSensorTouch(Eingang) An dem angegebenen Eingang ist ein Berührungssensor angschlossen Eingang: IN_1, IN_2, IN_3, IN_4 SetSensorLight(Eingang) An dem angegebenen Eingang ist ein Lichtsensor angschlossen Eingang: IN_1, IN_2, IN_3, IN_4 Sensor(Eingang) Diese Funktion liefert den Wert des Sensor am jeweiligen Eingang zurück Eingang: IN_1, IN_2, IN_3, IN_4 Rückgabewert bei einem Berührungssensor: 0 (Taster offen) oder 1 (Taster geschlossen) Rückgabewert bei einem Lichtsensor: 0 (minimale Intensität) bis 100 (maximale Intensität) Seite 1 8
19 Programmierung des NXT mit NXC Anhang D - Aufgabensammlung Aufgabe 2.1 (Roboter mit 2 Motoren) Erstelle ein Programm, mit dem der Roboter fünf Sekunden mit einer Leistung von 50% rückwärts und anschließend mit einer Leistung von 30% zwei Sekunden vorwärts fährt. Aufgabe 3.1 (Roboter mit 2 Motoren) Erstelle ein Programm, mit dem der Roboter aus Kapitel 2 drei Sekunden vorwärts fährt, dann am Stand umdreht und anschließend wieder an den Ausgangspunkt zurückkehrt. Aufgabe 3.2 (Roboter mit 2 Motoren) Erstelle ein Programm, mit dem der Roboter aus Kapitel 2 ein Quadrad abfährt. Die Motorleistung kann dabei beliebig gewählt werden. Aufgabe 3.3 (Roboter mit 2 Motoren) Erstelle ein Programm, mit dem der Roboter ein Quadrat in der dargestellten Richtung viermal hintereinander abfährt und verwende dabei das repeat-statement. Aufgabe 3.4 (Roboter mit 2 Motoren) Erstelle ein Programm, mit dem der Roboter einen Achter abfährt, der aus zwei Quadraten besteht und verwende dabei zwei Anweisungs-Blöcke, die mit repeat() eingeleitet werden. Dr. Leander Brandl - it.brgkepler.at Anhang
20 Programmierung des NXT mit NXC Aufgabe 4.1 (Roboter mit 2 Motoren und einem Berührungssensor vorne) Erstelle zwei Programme, mit denen der Roboter auf ein zylindrisches Hinternis (z. B. PET-Flasche) zufährt. Berührt der Roboter das Hindernis, so soll dieser ein Stück zurück und dann das Hindernis so umfahren, dass er danach seinen Weg wie zuvor fortsetzt. Mit dem ersten Programm soll der Roboter ein Ausweischmanöver auf der rechten, mit dem zweiten Programm ein Ausweichmanöver auf der linken Seite des Hindernis fahren ohne dieses zu berühren. Aufgabe 4.2 (Roboter mit 2 Motoren und einem Berührungssensor vorne) Erstelle zwei Programme, mit denen der Roboter auf ein rechteckiges (z. B. Ziegel) zufährt. Berührt der Roboter das Hindernis, so soll dieser ein Stück zurück und dann das Hindernis so umfahren, dass er danach seinen Weg wie zuvor fortsetzt (siehe Zeichnung). Mit dem ersten Programm soll der Roboter ein Ausweischmanöver auf der rechten, mit dem zweiten Programm ein Ausweichmanöver auf der linken Seite des Hindernis fahren ohne dieses zu berühren. Aufgabe 4.3 (Roboter mit 2 Motoren und einem nach untern gerichteten Lichtsensor) Erstelle ein Programm, mit dem der Roboter auf eine schwarze Linie zusteuert. Erreicht der Lichtsensor die schwarze Linie, so soll der Roboter für zwei Sekunden stehen bleiben. Im Anschluss daran soll dieser wieder vorwärts fahren bis der Sensor die weiße Fläche erreicht. Dort soll der Roboter stehen bleiben. Eine entsprechende Vorlage zum Ausdrucken findet sich am Ende dieses Skriptums. Aufgabe 4.4 (Roboter mit 2 Motoren und einem nach untern gerichteten Lichtsensor) Erstelle ein Programm, mit dem der Roboter auf eine schwarze Linie zusteuert, diese ohne anzuhalten überfährt und stehenbleibt, sobald der Lichtsensor nach dem Passieren der schwarzen Linie wieder die weiße Fläche erreicht. Eine entsprechende Vorlage zum Ausdrucken findet sich am Ende dieses Skriptums. Dr. Leander Brandl - it.brgkepler.at Anhang
21 Programmierung des NXT mit NXC Aufgabe 4.5 (Roboter mit 2 Motoren und einem nach unten gerichteten Lichtsensor) Erstelle ein Programm, mit dem der Roboter auf einen Bereich mit mehreren, parallelen schwarzen Streifen zufährt. Der Roboter soll, wenn sich der Lichtsensor über einer schwarzen Linie befindet, jeweils für zwei Sekunden anhalten und dann weiterfahren. Hat der Roboter die dritte schwarze Linie erreicht, so soll der dort stehen bleiben. Eine entsprechende Vorlage zum Ausdrucken findet sich am Ende dieses Skriptums. Aufgabe 4.6 (Roboter mit 2 Motoren und einem nach unten gerichteten Lichtsensor) Erweitere das Programm aus Aufgabe 4.5 so, dass am Display laufend der aktuelle Wert des Lichtsensors angezeigt wird. Dr. Leander Brandl - it.brgkepler.at Anhang
22
23
NXC-Programmiersprache
Seite 1 von 7 NXC-Programmiersprache Programmbefehle: Strg + N Strg + S Strg + F4 Alt + F4 Strg + P Strg + F Strg + R Strg + G F5 F6 Strg + Z Strg + (nach oben) + Z Strg + X Strg + C Strg + V Strg + Entf
MehrSeite 1/6. ModellFerienPass.pdf).
Seite 1/6 NXC Programme Legomodell Am Ende dieser Doku findest ein Bild des Modells, das im Kurs eingesetzt wird. Alle Beispielprogramme basieren auf diesem Modell. Ein Anleitung zum Bau ist auf der CD
MehrInhaltsverzeichnis. 1 Anfang 2. 2 Erste Schritte 3. 3 Schleifen repeat while(true) Die if()-schleife... 5.
Inhaltsverzeichnis 1 Anfang 2 2 Erste Schritte 3 3 Schleifen 4 3.1 repeat...................................... 4 3.2 while(true).................................... 4 3.3 Die if()-schleife.................................
MehrAufgabe Im Quadrat fahren
Aufgabensammlung LEGO MINDSTORMS NXT Version 4.6.13 Aufgabe Im Quadrat fahren Ziel Sie programmieren den Lego Roboter mit dem Programm LEGO MINDSTORMS Sie kennen Bedingungen und Schleifen Zeitaufwand 20
MehrFakultät für Informatik, Institut für Robotik Laborpraktikum I - Medizinarena Legorobotik in C EV3
Fakultät für Informatik, Institut für Robotik Laborpraktikum I - Medizinarena Legorobotik in C EV3 Ute Ihme Hochschule Mannheim Ute Ihme DAS LEGO MINDSTORMS System Das EV3 System Prinzip von LEGO MINDSTORMS
MehrProgrammierung des Lego NXT in C. Hochschule Mannheim Fakultät für Informatik
Programmierung des Lego NXT in C Hochschule Mannheim Fakultät für Informatik Der NXT Stein Technische Daten 32-bit ARM7 Microcontroller 256 Kbytes FLASH, 64 Kbytes RAM 8-bit AVR microcontroller 4 Kbytes
MehrProgrammieren von Lego Robotern mit NQC
5.1 1. Die Entwicklungsumgebung Die Lego-Mindstorms Roboter werden so wie Karol über ein Programm gesteuert. Ein solches Programm wird in einer Entwicklungsumgebung geschrieben, die einen Texteditor enthält.
Mehrschnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv
Roboter programmieren mit NXC für Lego Mindstorms NXT 1. Auflage Roboter programmieren mit NXC für Lego Mindstorms NXT schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag
MehrFraunhofer IAIS. Lernen mit Robotern. Roberta Grundlagen und Experimente. Roberta-Reihe Band 1 - NXT
Fraunhofer IAIS Lernen mit Robotern Roberta Grundlagen und Experimente Roberta-Reihe Band 1 - NXT Inhaltsverzeichnis Inhaltsverzeichnis Kapitel 1 Einführung 1 Einleitung 3 Roboter in der Bildung 4 LEGO
MehrProgrammieren mit RoboLab Bauen mit Lego
Programmieren mit RoboLab 2.5.2 Bauen mit Lego 1. Doppelstunde Kommunikation zwischen Computer und RCX herstellen können. Motoren im und gegen den Uhrzeigersinn für eine bestimmte Zeit drehen lassen können.
MehrEinführung in die Programmierung des NXT Brick mit NXC
Angewandte Informationstechnologie BRG Kepler Einführung in die Programmierung des NXT Brick mit NXC Johannes Zenz 2010/11 robotik.brgkepler.at Inhaltsverzeichnis 1. Grundlagen & Vorbereitung... 4 1.1
MehrBeim ROBORACE werden jedes Jahr Schüler und Studierende mit einer neuen Aufgabe aus dem Bereich der Technischen Kybernetik herausgefordert.
Beim ROBORACE werden jedes Jahr Schüler und Studierende mit einer neuen Aufgabe aus dem Bereich der Technischen Kybernetik herausgefordert. Die Schüler entwickeln selbstständig vollautonome Roboter auf
MehrArbeit_Roboter. Setze einen Haken bei den Fragen, die du für richtig hältst: Bei Textantworten oder Lückentexten gib jeweils das Ergebnis an.
Arbeit_Roboter drucken neu_sortieren verschicken verschicken_selbsttest Setze einen Haken bei den Fragen, die du für richtig hältst: Bei Textantworten oder Lückentexten gib jeweils das Ergebnis an. Vorname:
MehrRoboter programmieren mit NXC für LEGO MINDSTORMS NXT
Daniel Braun Roboter programmieren mit NXC für LEGO MINDSTORMS NXT mitp Vorwort 13 i NXTundNXC 15 i.i DerNXT 15 1.2 NXC 16 1.2.1 Not exactly С 16 1.2.2 Compiler 17 1.2.3 Zusammenfassung 17 2 BricxCC 19
MehrSystem Design Projekt Einführung in NXC
System Design Projekt Einführung in NXC Karola Rühle, Thomas Lampe, Maximilian Beinhofer Albert-Ludwigs-Universität Freiburg Was ist NXC? Eine C-ähnliche Programmiersprache (Not exactly C) Speziell zur
MehrFakultät für Informatik, Institut für Robotik Laborpraktikum Legorobotik in C EV3
Fakultät für Informatik, Institut für Robotik Laborpraktikum Legorobotik in C EV3 Ute Ihme Hochschule Mannheim Ute Ihme DAS LEGO MINDSTORMS System Das EV3 System Prinzip von LEGO MINDSTORMS Roboter wird
MehrProgrammieren des NXT-Roboters mit LabView 2010
Programmieren des NXT-Roboters mit LabView 2010 Von Alwin Ebermann 1. Voraussetzungen Der Roboter hat die neueste Firmenware LabView 2010 for NXT ist schon installiert (Testversion hier) 2. Programmieren
MehrLego Mindstorms Tutorial
Lego Mindstorms Tutorial Lego Firmware Als allerestes muss eine Firmware auf den Mindstorms Computer (fortan kurz RCX) geladen werden. Dieser Programmcode hat die Funktion, Befehle per Infrarot (IR) entgegenzunehmen
MehrInhaltsverzeichnis. Vorwort NXTundNXC DerNXT NXC Not exactly C Compiler Zusammenfassung 17
Vorwort 13 1 NXTundNXC 15 1.1 DerNXT 15 1.2 NXC 16 1.2.1 Not exactly C 16 1.2.2 Compiler 17 1.2.3 Zusammenfassung 17 2 BricxCC 19 2.1 Installation 19 2.2 Oberfläche 20 2.3 Menüleiste 22 2.3.1 Datei 22
MehrDie Einführung von mehreren "Start Bausteinen", um das Programm zu starten, realisiert leicht die parallele Programmverarbeitung (Parallele Tasks).
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
MehrIntelligente Programme für den NXT
Intelligente Programme für den NXT Dieses Tutorial ist für alle die gedacht, die den Einstieg durch meine Programmiereinführung bereits hinter sich haben und nun intelligente Programme für den NXT schreiben
Mehr1.37 Gyro1 Quadrat fahren Gyro2 Rampe Mehrere Sensoren1 Tischkante Mehrere Sensoren2 Hindernissen ausweichen...
Inhaltsverzeichnis Aufgabenstellungen 3 1.1 Display1 Augen verdrehen.................. 3 1.2 Display2 Herzschlag..................... 4 1.3 Fahren1 Vor und zurück................... 5 1.4 Fahren2 Links
MehrAmpelsteuerung Merkblatt 2 Wie wird der Arduino programmiert?
1 Übersicht Für die Programmierung steht ein Programm zur Verfügung. Hier kann der Quelltext geschrieben, überprüft, kompiliert und anschließend auf den Arduino geladen werden. Wenn ihr das Programm startet,
MehrNXC Minimal Tutorial
NXC Minimal Tutorial Christian Scheuer Helmut-Schmidt-Universität /Universität der Bundeswehr Hamburg Professur für Technische Informatik cscheuer@hsu-hh.de, hildebrandt@hsu-hh.de 30. Mai 2012 Dieses Dokument
MehrInfokarte: Snap4Arduino
Infokarte: Snap4Arduino Ein Arduino-Projekt erstellen Um ein neues Arduino-Projekt in Snap4Arduino zu erstellen, wird das Programm geöffnet. Snap erzeugt automatisch ein neues Projekt. Soll ein bereits
MehrMessungen mit dem Lichtsensor
Messungen mit dem Lichtsensor Für die Programmierung eines Roboters, der einer Linie folgt, brauchen wir für die drei Farben die Helligkeitswerte, die dein Lichtsensor jeweils ausgibt. Arbeite dazu folgende
MehrSoftwarepraktikum Teamrobotik SS 2007
Lego Mindstorms Softwarepraktikum Teamrobotik SS 2007 Thema: - Programmierung von Steuerungsalgorithmen für mobile Roboter Gruppe 1: - Stefanie Müller und Ina Bosse Hardware: LEGO MINDSTORM Programmiersprache:
MehrMess- und Regelungstechnik
Mess- und Regelungstechnik Professor: Dr. Löffler Mang Semester: WS 00/01 Inhaltsverzeichnis 1. Thema 2. Das Mind- Storm- System 2.1 Der RCX 2.2 Die Sensoren 2.2.1 Der Tastsensor 2.2.2 Der Lichtsensor
MehrSoftwarepraktikum Teamrobotik SS 2007 Abschlusspräsentation
Inhalt des Vortrags Softwarepraktikum Teamrobotik SS 27 Abschlusspräsentation von Norman Siemer, Thomas Poltrock und Martin Schemmer Einleitung Aufgabenstellung: Kollisionsfreie Navigation durch einen
MehrVergleich zwischen Open Roberta / NEPO und LEGO MINDSTORMS EV3 / EV3-G. - Übersicht/Fact-Sheet - Programmblöcke - Beispielprogramme
Vergleich zwischen Open Roberta / NEPO und LEGO MINDSTORMS EV3 / EV3-G - Übersicht/Fact-Sheet - Programmblöcke - Beispielprogramme Roberta-Zentrale Fraunhofer IAIS Version 1.0 18.07.2016 Übersicht Open
Mehrmit der gratis erhältlichen Entwicklungsoberfläche BricxCC und der Programmiersprache NXC.
Kepler Robo League Kurzinformation für Schulen Was ist die Kepler Robo League? eine Bildungsinitiative des Bundesrealgymnasiums Keplerstraße zum Einstieg in das Bauen und Programmieren von Robotern ohne
MehrLego Roboter mit NXT-G programmieren. Hochschule Mannheim
Lego Roboter mit NXT-G programmieren Hochschule Mannheim Die Programmiersprache NXT - G Grafische Programmiersprache zur Programmierung von Lego Robotern vom Typ NXT Das Programm Mindstorms NXT-G wird
MehrLEGO WeDo: SCRATCH-Programmierung
LEGO WeDo: SCRATCH-Programmierung Version 1.0 SCRATCH ist eine kostenlose kindergerechte Programmiersprache, die vom MIT entwickelt wurde. Vor kurzem ist die neue Version 2.0 erschienen, die direkt von
MehrWie können See how wir far Enchanting away something mitteilen, is. dass am NXT der Lichtsensor an Port 3 angeschlossen ist?
Wie können See how wir far Enchanting away something mitteilen, is. dass am NXT der Lichtsensor an Port 3 angeschlossen ist? 1. Klicke auf das Fühlen - Menü 2. Klicke auf Sensoren festlegen 3. Suche auf
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrKünstliche Intelligenz - Logische Agenten und Roboter
Künstliche Intelligenz - Logische Agenten und Roboter Wird präsentiert von: Alexander Betker Gregor Biering Thiemo Esch Marko Flod Sascha Schewe Unser Motto: Zu Fünft agiert es sich besser. Übersicht 1.
MehrWichtige Befehle bei der Programmierung von. FISCHER-Technik
Wichtige Befehle bei der Programmierung von FISCHER-Technik 1 7 6 2 3 4 5 1) Interfacediagnose : Bevor du loslegst, teste alle, an den Eingängen E1-E8 angeschlossenen Schalter und Sensoren. Mit der linken
MehrC++ - Einführung in die Programmiersprache Schleifen
C++ - Einführung in die Programmiersprache Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Schleifen Iterationsanweisungen. Wiederholung von Anweisungsblöcken.
MehrInstitut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme
Institut für Computational Science Prof. Dr. H. Hinterberger Praxismodul 1 Einführung in die Programmierung Erste Programme Einführung in die Programmierung 2 Institut für Computational Science, ETH Zürich,
MehrRoboter programmieren
16 mm Grundregeln beim Roboterbau Grundmodelle bauen: vierrädrig, zweirädrig, mit Kettenantrieb Programmiergrundlagen Motoren Konstanten und Datenknoten Schalter, Logik und Operatoren Sensoren und Variablen
MehrEINFÜHRUNG LEGO MINDSTORMS
EINFÜHRUNG LEGO MINDSTORMS LabVIEW 2014 Prof. Dr.-Ing. Dahlkemper 1 NXT DIRECT COMMANDS Es gibt zwei verschiedene Möglichkeiten, die Lego-Roboter zu programmieren: Man kann das Programm direkt auf den
MehrSchleifen: Immer wieder dasselbe tun
Schleifen: Immer wieder dasselbe tun Bei einer Schleife werden Anweisungen immer wieder ausgeführt, solange die Bedingung wahr ist. Dafür muss man eine Variable immer wieder ändern, solange bis eine Überprüfung
MehrGrundlagen der Fortran Sprache
Kapitel 1 Grundlagen der Fortran Sprache Programmieren bezeichnet das Verfahren, in einer bestimmten Sprache (Syntax) Anweisungen (sog. Quellcode) für den Computer zu schreiben. Dieser Programmcode wird
MehrFunktionen in JavaScript
Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Es können ganze Programmteile aufgenommen werden. Mithilfe von Funktionen kann man denselben
MehrProgrammieren Sie einen mobilen Roboter des Typs Lego Mindstorm, so daß dieser einen bedingten Reflex erlernen kann.
UNIVERSITÄT SIEGEN Theorie und Praxis für die Gesellschaft von morgen Fachbereich 12 Elektrotechnik und Informatik Fachgruppe Echtzeit Lernsysteme Prof. Dr.-Ing. K.-D. Kuhnert C-Programmierpraktikum für
MehrBaue deinen ersten Roboter
D3kjd3Di38lk323nnm 2 Baue deinen ersten Roboter In Kapitel 1 hast du gelernt, dass Roboter aus Motoren, Sensoren und dem EV3-Stein bestehen. Damit du besser verstehst, wie diese zusammenarbeiten, setzen
MehrFragen? Wie komme ich effizient zu einem Programm? Wie beschreibe/dokumentiere ich meine Idee?
Fragen? Wie komme ich effizient zu einem Programm? Wie beschreibe/dokumentiere ich meine Idee? Schritte beim Programmieren Idee, was der Roboter tun soll? EVA-Prinzip E: Eingabe Welche Daten werden über
Mehr2. Teil: Programmierung der Roboter
,, 2. Teil: Programmierung der Lego Mindstorms Schulprojekt der Technischen Universität Dänemark Technische Universität Dänemark Institut für Mathematik Januar 2008 , Der Labyrinth- Wettbewerb Lego Mindstorms
MehrEinführung in die Programmierung des NXT mit C
Einführung in die Programmierung des NXT mit C 1. Einführung zu Lego Mindstorms und zur Programmierung in C (NXC) - Einführung - Entwicklungsumgebung - Hallo Welt auf dem NXT - Bau des Roboters 1 2. Grundlegende
MehrLEGO MINDSTORMS NXT Programming
LEGO MINDSTORMS NXT Programming Bernhard Buchli Andreas Schranzhofer Bernhard Buchli, bbuchli@tik.ee.ethz.ch, ETZ G 75, +41 44 63 27038 Andreas Schranzhofer, schranzhofer@tik.ee.ethz.ch, ETZ G 77, +41
MehrProgrammierhandbuch zu NWT Robotics
Programmierhandbuch zu NWT Robotics Kepler Gymnasium Weil der Stadt, Version 1.2 (7. März 2017), Autor: Thomas Jörg While "True" LCD.StopUpdate() LCD.Clear() LCD.Write(0,0, Sensor.GetName(1)) LCD.Write(0,16,
Mehr1 Karol stellt sich vor
Kapitel 1 Karol stell sich vor Seite 1 1 Karol stellt sich vor 1.1 Algorithmus Fritz hat zum Geburtstag einen CD-Player als Geschenk erhalten. Natürlich will er sofort das Geschenk ausprobieren und legt
MehrArbeitsblatt: Wie rede ich mit einem Roboter?
Arbeitsblatt: Wie rede ich mit einem Roboter? Ausgangslage: Ein Roboter besitzt Sensoren, um seine Umgebung wahrzunehmen, und Aktoren, um seine Umgebung zu beeinflussen. Auch Menschen besitzen Sensoren
MehrKapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1
Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte mit Greenfoot 1 Starten Sie Greenfoot. (Wenn Sie Greenfoot das erste Mal öffnen, erscheint ein Dialogfenster,
MehrFunktionen in JavaScript
Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Mithilfe von Funktionen kann man denselben Code von mehreren Stellen des Programms aus aufrufen.
MehrSpaichinger Entwicklungsumgebung 1.1 Zur C-Programmierung und Simulation von ct-bots (Fahrrobotern)
Bedienungsanleitung Spaichinger Entwicklungsumgebung 1.1 Zur C-Programmierung und Simulation von ct-bots (Fahrrobotern) Freeware für Microsoft Windows Dr. Markus Ziegler www.spaichinger-schallpegelmesser.de
MehrÜbersicht Shell-Scripten
!!!! Wichtig: Bei Shell-Scripten enden die Zeilen nicht mit einem Strichpunkt!!!! Erste Zeile eines Shell-Scripts: #! /bin/bash Variablen in Shell-Scripts: Variablennamen müssen mit einem Buchstaben beginnen,
MehrC# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen
C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden
MehrInformatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik
MehrProgrammübersicht Software EV3
Programmübersicht Software EV3 8. 4. 2. 1. 5. 3. 6. 7. 1. Menüliste Reiter: Verwaltung der Projekte 2. Projekteigenschaften: Übersicht des Programms 3. Werkzeugliste: Programm kommentieren 4. Programmblöcke:
Mehr2. Software RoboLab Allgemeine Bedienung Firmware
2. Software RoboLab 2.1. Allgemeine Bedienung Starten und weiter... : Zum Starten Doppelklick auf die RoboLab-Verknüpfung auf dem Desktop Auf Programmer klicken Inventorlevel wählen Fenster (das untere)
MehrFrüh übt sich, wer ein Meister werden will!
Farbige Isolierbänder, Karte LEGO Mindstorms Education EV3 #1 Früh übt sich, wer ein Meister werden will! /lego1 1. Baue ein Standardfahrzeug. Die Anleitung dazu findest du in der LEGO Mindstorms Education
MehrLabor Automatisierungstechnik
Labor Automatisierungstechnik Teilnehmer: Name: Matrikelnr.: Name: Matrikelnr.: Name: Matrikelnr.: Versuch: Robotino Anwendung Philipp Schorr Arduino Anwendung 1 Inhaltsverzeichnis 1. Einleitende Worte...
MehrSie bauen Ihren ersten Roboter
2 Sie bauen Ihren ersten Roboter Wie Sie in Kapitel 1 gesehen haben, besteht ein Roboter aus mehreren wichtigen Bestandteilen. Damit Sie die Funktionsweise der einzelnen Teile mühelos und Schritt für Schritt
MehrFunktionen nur wenn dann
Funktionen nur wenn dann Funktionen können auch nur in bestimmten Fällen angewendet werden. Code wird nur in einem bestimmten Fall ausgeführt Code Ja Code Block wahr if wahr? Nein else Code Block Alternative
MehrArbeiten mit JavaKara
Arbeiten mit JavaKara 1. Programmierumgebung Möchte man ein neues Programm erstellen, so wird einem ein Programmeditor zur Verfügung gestellt, der bereits eine vorgefertigte Schablone darstellt. In der
MehrWelche Roboter kennst du? Wo brauchst du zuhause Roboter?
ROBOTER LÖSUNGEN Roboter Mensch Welche Roboter kennst du? Wo brauchst du zuhause Roboter? Individuelle Antworten: R2-D2 / BB6 / C-3PO (Star Wars), Wall-e, Rodney Copperbottom (Film Robots), Optimus Prime
MehrLEGO MINDSTORMS NXT MIT LABVIEW 2009 PROGRAMMIEREN
LEGO MINDSTORMS NXT MIT LABVIEW 2009 PROGRAMMIEREN Prof. Dr.-Ing. Dahlkemper Fabian Schwartau Patrick Voigt 1 NXT DIRECT COMMANDS Es gibt zwei verschiedene Möglichkeiten, den NXT zu programmieren: Es werden
MehrDas diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen
Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
Mehr2. Die Grundbausteine
. Die Grundbausteine. Die Grundbausteine Inhaltsverzeichnis.. Der Motorbaustein..... Der Klangbaustein... 4.3. Der Anzeigebaustein... 7.4. Der Warte-Baustein... 8 -LEGO Grundbausteine 4.05.0 . Die Grundbausteine:
Mehr06 While-Schleifen. While-Schleifen 1/7 Wiederholung: Schleifen
06 While-Schleifen While-Schleifen 1/7 Wiederholung: Schleifen Eine Schleife ist eine Struktur, welche den Computer anweist, eine Liste von Befehlen mehrmals auszuführen. Falls Du ein Verfahren hast, das
MehrProgrammsteuerung mit PHP - if/else, elseif,switch
Programmsteuerung mit PHP - if/else, elseif,switch Bei der Programmierung geht es meist vor allem darum festzulegen, welche Aktionen wie oft unter welchen Bedingungen ausgeführt werden sollen. Hierzu steht
MehrProgrammierung der Lego Mindstorms NXT- Roboter mit lejos!
Programmierung der Lego Mindstorms NXT- Roboter mit lejos! INSTITUT FÜR ANTHROPOMATIKLEHRSTUHL PROF. DR.-ING. R. DILLMANN Julian Schill Boris Stach schill@kit.edu boris.stach@student.kit.edu KIT Universität
MehrSystem.out.println("TEXT");
Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class
Mehr3. Das erste eigene Programm mit Greenfoot: Litte Crab
Eigenes Programm: Little Crab1, Seite 1 von 5 3. Das erste eigene Programm mit Greenfoot: Litte Crab 3.1. Quelltext bearbeiten Nachdem Sie etwas Erfahrungen in der Bedienung von Greenfoot gewonnen haben,
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)
MehrProgramme erstellen und bearbeiten
3 Programme erstellen und bearbeiten Ihren ersten Roboter haben Sie bereits gebaut. Was er nun jedoch braucht, um funktionieren zu können, ist ein Programm. Ein Programm sagt Ihrem Roboter, was er tun
MehrStarten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein:
Blinken Starten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein: // Projekt 1 - LED Blinker int ledpin = 13; void setup() pinmode(ledpin, OUTPUT); void loop() digitalwrite(ledpin, HIGH);
Mehr01 Einführung in PHP. Einführung in PHP 1/13 PHP in Aktion
01 Einführung in PHP Einführung in PHP 1/13 PHP in Aktion PHP ist eine Programmiersprache, die ganz verschiedene Dinge tun kann: von einem Browser gesendete Formularinhalte auswerten, angepasste Webinhalte
MehrZugang Website:
Posten: Bauen - Die SuS können das NXT Basismodel anhand der Bauanleitung 1:1 nachbauen. ( ) 30 - NXT Baukasten - Anleitung Auftrag: Baue das Basismodel von NXT. Halte dich dabei an die bereitgestellte
MehrLego Mindstorm NXT Tutorial
Lego-Mindstorm NXT Tutorial: Schalter Informatik 2012 1 Lego Mindstorm NXT Tutorial 1. Schleifen Mit dem «Schleifen»-Block kannst du den Roboter veranlassen sich zu wiederholen. Dabei kannst du selber
MehrAktivitäten in C# /.NET umsetzen
Aktivitäten in C# /.NET umsetzen Grundlagen von C# Dr. Beatrice Amrhein Überblick Grundlagen der C# Syntax Visual C# Express Einfache Abläufe umsetzen 2 Grundlagen von C# 3 Merkmale von C# C# besteht aus
MehrProgrammierung der Lego Mindstorms Roboter
Programmierung der Lego Mindstorms Roboter Dipl.-Inform. O. Taminé Gliederung Infrastruktur Aufbau, Vorbereitungen, WWW-Links NQC-Programmierung Vorbereitungen, Kommandozeilen-Programmierung, IDE-Oberflächen
Mehrcagebot control quick start guide trike robot revision 1.3
cagebot control trike robot quick start guide revision 1.3 Anleitung Stand 17.12.2015. Die aktuellste Version finden Sie auf unserer Website: www.cagebot.de Übersicht 1. "cagebot control" laden 3 2. mit
Mehr5. NXT kann hören und Entfernungen erkennen: Test der Sensoren
5. NXT kann hören und Entfernungen erkennen: Test der Sensoren Mit dem NXT werden vier verschiedene Sensoren mitgeliefert. In diesem Kapitel lernst du die Funktion der Sensoren kennen. Im Fenster Robot
MehrHomeMatic -Know-how. Teil 2: Funk-Lichtsteuerung über HomeMatic -Display-Wandtaster. 40 So funktioniert s
40 So funktioniert s HomeMatic -Know-how Teil 2: Funk-Lichtsteuerung über HomeMatic -Display-Wandtaster In unserer neuen Reihe HomeMatic-Know-how zeigen wir anhand von kleinen Detaillösungen, wie man bestimmte
MehrPacman. Projektbeschreibung. Aus was wir Pacman nachgebaut haben. Anpassungen and die physikalische Welt, oder wie wir das
Pacman Projektbeschreibung Übersicht: Unser Projekt Was Pacman eigentlich ist. Aus was wir Pacman nachgebaut haben. Anpassungen and die physikalische Welt, oder wie wir das Pacman-Spiel mit Lego implementiert
Mehrmblock & mbot Roboter Programmierung auf der Basis von Scratch
Roboter Programmierung auf der Basis von Scratch Institut ICT & Medien www.iim.phsg.ch START mbot verbinden mblock mit mbot verbinden Der mbot-roboter kann mit der mblock-software programmiert werden.
MehrDer NXT Baustein mit Aktoren und Sensoren
Der NXT Baustein mit Aktoren und Sensoren Der NXT-Baustein ist ein programmierbarer Kleincomputer mit drei (3) Ausgängen und vier (4) Eingängen Im LEGO Mindstorms NXT Baukasten für Schulen befinden sich
MehrFirmware-Update von ARGUS -Testern
Firmware-Update von ARGUS -Testern Anleitung zum Firmware-Update-Programm (v 1.4) Erstellt von: intec Gesellschaft für Informationstechnik mbh, Lüdenscheid Zuletzt geändert am 16. April 2008 Bei weiteren
MehrRoboterprogrammierung
ReferenceGuide Einführungs Autor: Fachhochschule Südwestfalen Fachbereich Elektrische Energietechnik Campus Soest Hinweise zur Benutzung Dieses Dokument soll die Arbeit während des Praktikums erleichtern,
MehrDLR SchoolLab Lektion 1 Erste Schritte
1 Navigation Die Entwicklungsoberfläche lässt sich durch sechs Buttons am unteren Bildschirmrand bedienen. Alternativ kann man auch über die Tastatur navigieren. Hierfür gibt es folgdende Abkürzungen:
MehrProgrammieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff
Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf
MehrKlasse, Name : Datum : Rad l/r Linienfolger l/r Laderaum ATMEGA 128
HTL_RoboterDKU.odt Übung : Arbeiten mit dem HTL Leonding Roboter Seite : 1 von 7 1. Roboter Peripherie Eingänge Ausgänge DIGITAL ANA- LG DATEN Taster Kante l/r Rad l/r Linienfolger l/r Laderaum Klappe
MehrFragebogen zur Programmierung mit Aseba / VPL
Fragebogen zur Programmierung mit Aseba / VPL Liebe/er Schüler/in Mit diesem Fragebogen möchten wir die Anwendungsmöglichkeiten des Thymio-II Roboter und der Aseba/VPL Software verbessern. Bitte beantworte
MehrBlueBot. Kinder lernen Programmieren
BlueBot Kinder lernen Programmieren Inhalt Was ist der BlueBot?... 2 Downloads... 3 Appstore und Google Play Store... 3 Downloadlink BlueBot App für Windows 10... 3 BlueBot Tac Tile Reader... 4 Blue Bot
MehrRobot Karol - ein Lehrgang
1. Wir steuern Robot Karol mit Maus und Tastatur Du kannst Robot Karol mit der Maus steuern. Klicke dazu einfach auf die Pfeile oder Buchstaben. Wenn Robot Karol deinem Befehl nicht gehorchen kann, dann
MehrFACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung
C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen
Mehrkepler robotik unser Weg
kepler robotik unser Weg Burgenländischer IT-Tag 2017 Robotik für alle Bundesrealgymnasium Keplerstraße Graz kepler robotik unser Weg Matura Wettbewerbe Kurse 1. 5. Klasse 3D Druck Platinenherstellung
Mehr