Labor Automatisierungstechnik Teilnehmer: Name: Matrikelnr.: Name: Matrikelnr.: Name: Matrikelnr.: Versuch: Robotino Anwendung Philipp Schorr Arduino Anwendung 1
Inhaltsverzeichnis 1. Einleitende Worte... 3 2. Was der Robotino... 3 3. Versuchsaufbau... 4 4. Vorbereitung zur Durchführung... 4 5. Aufgabenstellung... 7 5.1. Web Interface... 7 5.2. Ansteuerung der Motoren... 7 5.3. Variablen Einbinden... 7 5.4. Steuern mit Steuerungsfeld und Kamera... 8 5.5. Verwendung von Timer... 8 5.6. Robotino Tanzt... 8 5.7. Pendel... 8 5.8. Auslesen der Abstandssensoren... 9 5.9. Explorer... 9 5.10. Fahrerloses Transportsystem... 9 5.11. Objektsuche... 10 6. Hilfe... 11 7. Befehlserläuterungen... 11 8.Kritik... 12 9. Abbildungsverzeichnis... 12 Philipp Schorr Arduino Anwendung 2
1. Einleitende Worte Ziel des Versuchs Robotino Anwendung ist es Ihnen die Funktionsweise eines autonomen Roboters, hier des Robotino der Firma FESTO, durch verschiedene praktische Anwendungen näher zu bringen. Des Weiteren ist eine schriftliche Versuchsausarbeitung zu erstellen. Der entwickelte Programmcode ist kommentiert auf einer CD-ROM mit abzugeben und wird mitbewertet. 2. Was der Robotino Der Robotino ist ein Wireless mobiles Robotersystem mit omnidirektionalen Antrieben. Das bedeutet, dass er sich über drei gleiche Antriebseinheiten in alle Richtungen bewegen lässt. Darüber hinaus besitzt der Roboter eine Webcam, die dazu genutzt werden kann, um Livebilder auf einem PC oder ähnlichen Wiedergabegeräten darzustellen. Diese Livebilder können für eine Bildverarbeitung verwendet werden, um beispielsweise eine Linienverfolgung zu realisieren. Der Robotino besitzt mehrere Arten von Sensoren, welche ein analoges Signal für z.b. Abstandsmessungen erzeugen, binäre Signale für den Kollisionsschutz und digitale Signale zur Überprüfung der Geschwindigkeit. Abbildung 1 Robotino der Firma FESTO Philipp Schorr Arduino Anwendung 3
3. Versuchsaufbau Der Versuchsaufbau besteht aus einem Robotino, mit daran angeschlossener Webcam, einem Laptop mit der benötigten Software und einer Lauffläche mit verschiedenen Anforderungen für den Robotino. Abbildung 2 Versuchsaufbau 4. Vorbereitung zur Durchführung Der Versuchsaufbau ist bereits aufgebaut und muss ausschließlich programmiert werden. Dennoch wird ein gewisses Maß an Feingefühl in Bezug auf den Umgang mit der Elektronik erwartet. Zur Programmierung wird ein Laptop bereitgestellt, der bereits mit der korrekten Software bestückt ist. Dennoch kann zur Durchführung der eigene Laptop verwendet werden. Falls der eigene Laptop verwendet wird, ist die Verwendung der Lan-Schnittstelle empfohlen. Ist an dem eigenen Gerät keine solche Schnittstelle vorhanden wird die Verwendung des bereitgestellten Laptops empfohlen. Des Weiteren werden rudimentäre Kenntnisse in Bildverarbeitung und flussorientierter Programmierung benötigt. Philipp Schorr Arduino Anwendung 4
Start der Software: Die genutzte Software Robotino View 3.1.2 ist eine Freeware, daher ist es Ihnen frei überlassen sich das Programm auf Ihren eigenen Geräten zu installieren oder die von uns bereitgestellten Rechner zu nutzten. Nach dem Start der Software erscheint folgendes Fenster: Abbildung 3 Robotino View 3 Als ersten Schritt geben Sie die richtige IP-Adresse ein. Verbindungsaufbau IP-Adresse des Robotino Funktionsblockbibliothek Abbildung 4 Programmoberfläche Philipp Schorr Arduino Anwendung 5
Um eine Verbindung mit einem LAN-Kabel herzustellen stecken Sie dieses in die entsprechende Schnittstelle des Laptops und des Robotino. Verwendung der LAN-Schnittstelle IP-Adresse des Robotino: 172.27.1.1 Um eine Verbindung per WLAN herstellen zu können muss zunächst die externe WLAN-Antenne angeschlossen werden. Stecken Sie dazu die WLAN-Antenne in einen der USB-Ports des Robotino und warten Sie eine kurze Zeit bis die Gerätetreiber der Antenne installiert wurden. Anschließend können sie sich mit dem WLAN des Robotino verbinden. Das dort benötigte Passwort erhalten Sie von den Laborbetreuern. Verwendung der WLAN -Schnittstelle IP-Adresse des Robotino: 172.26.1.1 Anschließend erfolgt der Verbindungsaufbau. Dazu drücken Sie auf den entsprechenden Button (siehe Abbildung 4). Ein gesamtes Programm besteht aus einem Hauptprogramm (Abbildung 5) mit mehreren Unterprogrammen (Step1). Das Hauptprogramm wird auf der Benutzeroberfläche in Form eines Programmablaufplans dargestellt. Beim Starten des Programms wird das Hauptprogramm durchlaufen, das die jeweiligen Unterprogramme aufruft. Die eigentliche Programmierung findet in den Unterprogrammen statt. In der Funktionsblockbibliothek (Abbildung 4) werden Blöcke zur Bildverarbeitung, Mathematische Blöcke, Logische Blöcke und viele weitere Blöcke zur Verfügung gestellt. Mit Hilfe des LUA- Script können eigene Funktionsblöcke programmiert werden. Abbildung 5 Hauptprogramm Philipp Schorr Arduino Anwendung 6
5. Aufgabenstellung 5.1. Web Interface Der Anwender soll sich in den integrierten Webserver des Robotino einbuchen und sich mit der Umgebung vertraut machen. Dazu gehört die Möglichkeit des Programm Up-, Download und Fernsteuerung. Das Passwort wird vom Laborbetreuer auf Nachfrage mitgeteilt. Geben Sie dazu die IP Adresse des Robotino in der Navigationsleiste eines Internetbrowsers ein. Verwendung der LAN-Schnittstelle IP-Adresse des Robotino: 172.27.1.1 Verwendung der WLAN -Schnittstelle IP-Adresse des Robotino: 172.26.1.1 5.2. Ansteuerung der Motoren Der Anwender soll ein Programm entwickeln, welches den Roboter bewegt. Dabei sollen zwei Motoren durch die Eingabe einer Geschwindigkeit angesteuert werden. Des Weiteren soll eine Stoßleiste hinzugeführt werden, die die Bewegung des Roboters stoppt, sobald er an ein Hindernis stößt. Hinweis: Machen Sie sich mit der Programmierung vertraut. Schauen Sie sich die Hilfe dazu an. Achten Sie auf die Eingabe der Geschwindigkeit und wie der Robotino darauf reagiert. Notieren Sie Ihre Ergebnisse. 5.3. Variablen Einbinden Der Anwender soll ein Programm entwickeln, dass den Roboter bewegt. Dabei sollen alle drei Motoren durch die Eingabe einer Geschwindigkeit angesteuert werden. Die Stoßleiste soll hier auf eine Variable Ausschalten geschaltet werden, die im Hauptprogramm abgefragt werden soll. Wird die Stoßleiste angestoßen, so stoppt der Roboter und die Ablaufsteuerung wird beendet (Terminate). Hinweis: Machen Sie sich mit der Einbindung von Variablen vertraut (Anlegen und Nutzung). Erstellen Sie einen Programmablaufplan. Philipp Schorr Arduino Anwendung 7
5.4. Steuern mit Steuerungsfeld und Kamera Der Anwender soll ein Programm entwickeln, dass den Roboter mittels Steuerungsfeld bewegt. Binden Sie zusätzlich die Stoßleiste sowie eine Kamera ein, um die Bewegung des Roboters zu überwachen. Die Stoßleiste soll auch hier über eine Variable im Hauptprogramm überprüft werden. Hinweis: Machen Sie sich mit der Einbindung einer Kamera sowie des Steuerungsfelds vertraut. 5.5. Verwendung von Timer Der Anwender soll ein Programm entwickeln, dass den Roboter mittels Timer Vorwärts und Rückwärts bewegt. Dabei soll der Roboter zu Beginn 5 Sekunden Vorwärts fahren, dann 2 Sekunden stehen bleiben und anschließend sich 5 Sekunden Rückwärts bewegen. Binden Sie zusätzlich die Stoßleiste sowie eine Kamera ein, um die Bewegung des Roboters zu überwachen. Hier soll ein Unterprogramm beendet werden, wenn entweder die Zeit abgelaufen oder die Stoßleiste gesetzt ist. Hinweis: Machen Sie sich mit der Einbindung von Timern vertraut. Sowie die Erstellung eines Ablaufplans. 5.6. Robotino Tanzt Der Anwender soll ein Programm entwickeln, dass den Roboter Tanzen lässt. Dabei soll der Roboter jeweils 2 Sekunden nach vorne, hinten, links und rechts sich bewegen. Achten Sie auf den richtigen Ablauf. Erstellen Sie einen Programmablaufplan. 5.7. Pendel Der Anwender soll ein Programm entwickeln, dass der Robotino alle 5 Sekunden seine Drehrichtung ändert. D.h. die ersten 5 Sekunden im Uhrzeigersinn drehen anschließend 5 Sekunden gegen den Uhrzeigersinn drehen. Dabei soll die Drehgeschwindigkeit nicht mehr als 15 überschreiten. Das Programm soll mittels der angeschlossenen Taster gestartet und gestoppt werden. Hinweis: Machen Sie sich mit der Einbindung von Digitalen Eingängen vertraut. Philipp Schorr Arduino Anwendung 8
5.8. Auslesen der Abstandssensoren Der Anwender soll ein Programm entwickeln, welches die Abstandssensoren des Robotino verwendet. Erstellen Sie eine Tabelle, in der Sie die Spannung zum jeweiligen Abstand eintragen. Lesen Sie mindestens drei verschiedene Sensoren aus. Frage: Wie viele Abstandssensoren sind im Robotino vorhanden. Wie verhält sich die Spannung im Verhältnis zum Abstand? Erstellen Sie eine Skizze wo sich welcher Sensor des Robotino befindet. 5.9. Explorer Der Anwender soll mithilfe des Robotino eine Erkundungssoftware entwickeln. Durch diese soll der Robotino in der Lage sein seine Umgebung berührungslos zu erkunden. Dazu können alle Sensoren des Robotino verwendet werden. Dabei soll bei Annährung ein Hindernis zunächst die Geschwindigkeit reduziert werden, bevor die Richtung geändert werden soll. Wird nun plötzlich ein Objekt im direkten Umfeld erkannt, z.b. eine Hand, soll der Robotino sofort stoppen. Dieser darf erst weiterfahren, wenn das Objekt aus der Umgebung entfernt ist. Das Programm soll mittels der angeschlossenen Taster gestartet und gestoppt werden. 5.10. Fahrerloses Transportsystem Der Anwender soll mithilfe des Robotino ein Fahrerloses Transportsystem entwickeln. Dieses soll in der Lage sein seine Umgebung berührungslos zu durchlaufen und dabei einer fest vorgegebenen Route zu folgen. Dazu können alle Sensoren des Robotino verwendet werden. Empfohlen wird die Verwendung der angeschlossenen Webcam zur Erkennung der vorgegebenen Strecke. Es ist bereits eine Strecke auf der Platte sowie auf dem Boden aufgebracht. Die Abstandssensoren sollten wie zuvor in der Aufgabe 5.3 verwendet werden. Das Programm soll mittels der angeschlossenen Taster gestartet und gestoppt werden. Philipp Schorr Arduino Anwendung 9
5.11. Objektsuche Der Anwender soll mithilfe des Robotino eine Suchsoftware entwickeln, die in der Lage ist einen Ball einer vorgegebenen Farbe in einem Raum zu finden. Dabei darf der Robotino keine Hindernisse berühren, sondern soll diesen Ausweichen. Bei Annährung an Hindernisse soll zunächst die Geschwindigkeit reduziert werden. Hat der Robotino den Ball gefunden soll er sich dem Ball nähren und kurz davor zum Stehen kommen. Das Programm soll mittels der angeschlossenen Taster gestartet und gestoppt werden. Anmerkung: Alle Programme sind auf den Robotino zu laden um diese auch über den Webserver des Robotino starten zu können. Philipp Schorr Arduino Anwendung 10
6. Hilfe Weiter Hilfen sind zu finden unter: http://www.festo-didactic.com/de-de/lernsysteme/robotino-forschen-und-lernen-mit-robotern/ Der Versuch ist auch auf dem eigenen Gerät möglich. Hierzu brauchen Sie nur die Robotino View 3 Software. Diese finden Sie unter: http://www.festo-didactic.com/de-de/service/robotino/programmierung/robotino-view/ 7. Befehlserläuterungen Alle verfügbaren Befehle die in der Entwicklungsumgebung Robotino View vorhanden sind werden ausführlich in der Hilfe des Programms beschrieben. Abbildung 6 Aufrufen der Hilfe von Robotino View 3 Philipp Schorr Arduino Anwendung 11
Abbildung 7 Beispiel einer Befehlserläuterung mit Programmbeispiel 8.Kritik Bitte fügen Sie Ihrer Ausarbeitung auch konstruktive Kritik zum Versuch bei. Dies beinhaltet den Aufbau an sich als auch die Anleitung und Aufgabenstellungen. Vielen Dank. 9. Abbildungsverzeichnis Abbildung 1 Robotino der Firma FESTO... 3 Abbildung 2 Versuchsaufbau... 4 Abbildung 3 Robotino View 3... 5 Abbildung 4 Programmoberfläche... 5 Abbildung 5 Hauptprogramm... 6 Abbildung 7 Aufrufen der Hilfe von Robotino View 3... 11 Abbildung 8 Beispiel einer Befehlserläuterung mit Programmbeispiel... 12 Philipp Schorr Arduino Anwendung 12