Download Bedienungsanleitung zu ArmCtrl

Transcript
Bedienungsanleitung
Mobile Arm Simulation 3D
Januar 2012, Heilbronn
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
1 von 19
Inhalt
1 Einleitung........................................................................................................... 3
1.1 Inhalt dieses Dokuments......................................................................................... 3
1.2 Besondere Hinweise...............................................................................................3
2 Überblick............................................................................................................ 4
2.1 Systemstruktur........................................................................................................ 4
2.2 Komponenten.......................................................................................................... 4
Manipulator und Greifer............................................................................................4
2.3 Glossar.................................................................................................................... 5
Kinematik................................................................................................................. 5
Werkzeugmittelpunkt (TCP).....................................................................................6
Arbeitsraum.............................................................................................................. 6
Singularität............................................................................................................... 6
Genauigkeit.............................................................................................................. 6
Einzelachsbewegung............................................................................................... 7
Punkt-zu-Punkt-Bewegung (PTP)............................................................................7
Kartesische Bewegung.............................................................................................7
Lineare Bewegung................................................................................................... 7
Kollision.................................................................................................................... 7
3 Einrichten des Leitrechners................................................................................8
3.1 Windows.................................................................................................................. 8
Installation des Java Runtime Environments............................................................8
Installation der GUI................................................................................................... 8
Einrichten des Netzwerks......................................................................................... 8
4 Erste Schritte.....................................................................................................9
4.1 Verbindungsaufbau.................................................................................................9
Arm........................................................................................................................... 9
Plattform................................................................................................................... 9
Interpreter................................................................................................................. 9
Roboter.................................................................................................................... 9
4.2 Arbeiten mit der mobilen Plattform........................................................................10
Die Anzeige einstellen............................................................................................ 10
Zielstationen anfahren............................................................................................ 11
4.3 Arbeiten mit dem Manipulator................................................................................12
Die Anzeige einstellen............................................................................................ 12
Einzelachsbewegungen......................................................................................... 12
Kartesische Bewegungen.......................................................................................13
Zielpunkte speichern.............................................................................................. 13
Punkt-zu-Punkt-Bewegungen.................................................................................15
Lineare Bewegungen............................................................................................. 15
Pfade abfahren....................................................................................................... 16
5 Eigene Programme schreiben..........................................................................17
5.1 Der Python-Interpreter........................................................................................... 17
5.2 Der externe Client................................................................................................. 18
6 Rechtliche Anmerkungen.................................................................................19
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
2 von 19
1 Einleitung
1.1 Inhalt dieses Dokuments
Diese Bedienungsanleitung erläutert die Arbeit mit der graphischen Bedienoberfläche für
mobile Manipulatoren von Neobotix.
Es gibt zwei Möglichkeiten, die Software zu verwenden, den Simulationsmodus und den
realen Betrieb. Im Simulationsbetrieb ist keine Hardware nötig, trotzdem können alle
Funktionen uneingeschränkt getestet werden. Die normale Steuerungssoftware läuft
dann auf dem Bedienrechner und simuliert sämtliche Sensordaten.
Dieses Dokument erläutert im einzelnen:
Das Zusammenspiel der Neobotix-Softwarebausteine
Das Einrichten des Kontrollrechners und der Netzwerkverbindungen
Einfache, prinzipielle Funktionstests des Systemaufbaus
Grundlegende Funktionen des Systems und entsprechende Tests
Wichtige Kenntnisse für die Arbeit an eigenen Applikationen
Alle oben erwähnten Aktionen sowie die meisten Funktionen der Benutzeroberfläche
werden genau beschrieben. Deshalb sollte dieses Dokument alle notwendigen
Informationen für die meisten Anwender und Einsatzfälle enthalten.
Falls doch weitergehende Informationen, etwa für die Forschung oder zum Einrichten
spezieller Anwendungen, erforderlich sein sollten, konsultieren Sie bitte das „ArmCtrl –
Programmiererhandbuch“, das „PlatformCtrl - Programmiererhandbuch“ oder
kontaktieren Neobotix.
1.2 Besondere Hinweise
Sobald der Roboter entsprechend der Bedienungsanleitung oder der technischen
Beschreibung eingerichtet wurde, ist der Betrieb prinzipiell sicher. Allerdings besteht
aufgrund der Komplexität und Leistungsfähigkeit des Systems die Möglichkeit von
Eigenkollisionen und anderen Beschädigungen. Diese lassen sich leider nicht vollständig
ausschließen, ohne dabei die Funktionsfähigkeit massiv einzuschränken.
Das System sollte daher nur von entsprechend ausgebildeten und befugten
Technikern eingerichtet, getestet und bedient werden.
Die maximale Sicherheit kann nur dann gewährleistet werden, wenn alle Parameter
korrekt eingestellt wurden! Um das Einrichten eines sicheren und effizienten Betriebs zu
erleichtern, weisen die folgenden beiden Symbole auf besonders wichtige Absätze hin:
Das Warndreieck markiert Abschnitte, die die Gefahr von Verletzungen,
Beschädigungen oder beidem behandeln. Bitte lesen Sie diese Hinweise mit
besonderer Aufmerksamkeit!
Die Glühbirne weist auf Absätze hin, die bekannte Probleme, Missverständnisse und
Fehler erwähnen und ist als Hilfe zur Fehlerbeseitigung gedacht.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
3 von 19
2 Überblick
2.1 Systemstruktur
Das Gesamtsystem besteht aus einer Vielzahl von Komponenten, die teilweise auf die
Anforderungen der jeweiligen Anwendung zugeschnitten sind. Das folgende Diagramm
zeigt das Zusammenspiel dieser Komponenten in einem gebräuchlichen Aufbau.
Abb. 1: Strukturdiagramm, allgemeiner Aufbau
Alle Neobotix-Softwaremodule kommunizieren per Ethernet unter Verwendung von
Socket-Schnittstellen. Die Anbindung an kundenspezifische Clients kann wahlweise aber
auch per Modbus erfolgen.
2.2 Komponenten
Mobile Plattform
Eine mobile Plattform von Neobotix fungiert in vielen Fällen als Basis des Manipulators
und positioniert diesen zusammen mit eventueller Ladung autonom im Arbeitsraum.
Es muss jedoch nicht zwingend auf Neobotix-Hardware zurückgegriffen werden. Der Arm
kann auch auf anderen Plattformen, auf Linearachsen, auf Schienensystemen oder auf
einem fest installierten Fundament montiert werden. Die Bewegungssteuerung der Basis
kann dann jedoch unter Umständen nicht durch Software von Neobotix übernommen
werden.
Manipulator und Greifer
Das Modul ArmCtrl kann sowohl mit den Roboterachsen und -armen und den Greifern
der Firma Schunk arbeiten, als auch mit Antriebsverstärkern der Firma Elmo Motion
Control, die in praktisch jeden beliebigen Arm integriert werden können.
Umgebungshardware
Die übrige Hardware ist vom jeweiligen Einsatzfall abhängig. Das mobile System kann
entweder direkt mit der übrigen Hardware interagieren, zum Beispiel über digitale
Schnittstellen oder Funksignale, oder indirekt über den Umweg über ein ClientProgramm.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
4 von 19
PlatformCtrl
Dieses Softwaremodul ist für die Steuerung der mobilen Plattform verantwortlich sowie
für Lokalisierung, Pfadplanung, Hindernisvermeidung und einige andere hardwarenahe
Funktionen. Es läuft immer auf dem Bordrechner der Plattform und besitzt selbst keine
Bedienoberfläche.
PlatformCtrlGUI
Diese graphische Bedienoberfläche stellt die Benutzerschnittstelle zu PlatformCtrl dar
und wird primär zum Einrichten der mobilen Plattform benötigt. Sie ermöglicht die
Erstellung
von
Umgebungskarten,
die
Definition
von
Zielstationen
und
Verbindungspfaden und die Konfiguration der mobilen Plattform.
ArmCtrl
In diesem Modul ist die Ansteuerung der Armachsen und die Bewegungssteuerung für
den Arm implementiert. Das Modul läuft in einer weichen Echtzeitumgebung und besitzt
wie PlatformCtrl keine eigene Bedienoberfläche.
Mobile Arm Simulation 3D
Mit Hilfe dieser Bedienoberfläche kann eine Verbindung zu ArmCtrl hergestellt und der
Arm angesteuert werden. Außerdem lässt sich auch die Plattform ansprechen und
verfahren. Das Gesamtsystem kann schließlich durch Verwendung des integrierten
Python-Interpreters automatisiert gesteuert werden.
Kundenspezifischer Client
Oftmals ist es sinnvoll, ein separates Programm zu schreiben, das sich mit allen übrigen
Systemkomponenten verbindet, diese koordiniert und den Gesamtablauf steuert. Für
einfachere Anwendungen sind zum Beispiel Python-Programme gut geeignet, während
komplexere Systeme oft umfangreichere Clients erfordern. Da alle Neobotix-Module ein
offenes, gut dokumentiertes Protokoll verwenden, ist die Programmierung in den meisten
Fällen kein Problem.
Weitere Komponenten
Der Einsatz verschiedenster anderer Komponenten, vom Funk-Not-Halt über das
Bildverarbeitungssystem bis zur globalen Prozessplanung und Anlagensteuerung, ist
möglich. Dabei sind die Schnittstellen nicht auf die in diesem Dokument erwähnten
Varianten beschränkt, sondern können sehr frei gewählt werden. Noch nicht verfügbare
Schnittstellen können von Neobotix implementiert und vorbereitet werden.
2.3 Glossar
Kinematik
Eine Kinematik beschreibt, wie die einzelnen Achsen (auch Freiheitsgrade genannt)
eines Robotersystems geometrisch und mechanisch zusammenhängen. Je nach
Anordnung und Versatz zwischen den verschiedenen Achsen können bei gleicher
Achsanzahl völlig unterschiedliche Fähigkeiten und Bewegungsmöglichkeiten erreicht
werden.
Darum ist es außerordentlich wichtig, sowohl die der verwendeten Hardware
entsprechende Kinematik auszuwählen, als auch alle benötigten Parameter,
insbesondere bei der Kalibrierung, korrekt einzustellen. Schon geringe Abweichungen
von wenigen Millimetern oder Grad zwischen dem realen Roboter und dem
rechnerischen Modell, können ganz erhebliche Diskrepanzen und Ungenauigkeiten
verursachen.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
5 von 19
Diese Abweichungen beeinflussen jedoch nicht die Wiederholgenauigkeit des Systems.
Werkzeugmittelpunkt (TCP)
Der Werkzeugmittelpunkt (englisch Tool Centre Point, kurz TCP) ist der virtuelle Punkt im
oder am verwendeten Werkzeug, der für die Berechnung bestimmter Bewegungen
genutzt wird.
Standardmäßig liegt dieser Punkt in der Mitte des Roboterhandflansches. Oft ist es aber
sinnvoll, den TCP zu verschieben, so dass zum Beispiel Rotationen automatisch um die
Werkzeugspitze ausgeführt werden.
Arbeitsraum
Der Arbeitsraum eines Roboterarmes unterscheidet sich selbst bei gleicher Achsanzahl
massiv von dem eines menschlichen Armes. Stellungen, die ein menschlicher Arm
problemlos einnehmen kann, sind Robotern oft durch mechanische Einschränkungen,
nicht zulässige Eigenkollisionen und fehlende Flexibilität unmöglich. Außerdem wird oft
vergessen, dass der Fußpunkt eines Roboterarmes fest verankert ist und daher keinerlei
Hilfs- oder Ausweichbewegungen zulässt.
Im Arbeitsraum können mehrere Bereiche unterschieden werden:
Der maximale Arbeitsraum umfasst das Volumen, das der TCP in beliebiger
Orientierung erreichen kann. Je weiter sich der TCP dabei vom Fußpunkt entfernt,
desto schwieriger wird es, alle möglichen Orientierungen anzunehmen, bis
schließlich bei völlig gestrecktem Arm nur noch eine einzige Lösung erreichbar ist.
Ähnliches gilt auch bei der Annäherung an den Fußpunkt und an andere Teile des
Armes selbst.
Der nutzbare Arbeitsraum enthält das Volumen, in dem alle oder zumindest alle für
die vorgesehene Arbeit benötigten Orientierungen erreichbar sind. Dieses Volumen
liegt immer innerhalb des maximalen Arbeitsraumes und ist in den meisten Fällen
deutlich kleiner.
Beim Verlassen des Bereiches kann es passieren, dass sich die erreichte Position
und Orientierung aufgrund der Beschränkungen auch dann verändert, wenn dies
bei der theoretisch vorgegebenen Bewegungsbahn eigentlich nicht der Fall sein
sollte.
Der Bereich, in dem alle theoretisch möglichen Orientierungen angefahren werden
können, ist der kleinste der Arbeitsräume und spielt für die meisten Anwendungen
nur eine untergeordnete Rolle.
Singularität
Als Singularitäten werden Armstellungen bezeichnet, bei denen schon geringe
Bewegungen des TCP zu sehr großen oder sehr schnellen Bewegungen der Achsen
führen. Dies ist zum Beispiel dann der Fall, wenn der ganze Arm oder das Handgelenk
gestreckt sind.
Beim Durchfahren solcher Positionen passiert es häufig, dass die aus einer Fortführung
der TCP-Bewegung resultierenden Achsgeschwindigkeiten die erreichbaren und
zulässigen Grenzwerte weit überschreiten und dadurch zu einem Fehler führen.
Genauigkeit
Die Wiederholgenauigkeit beim Anfahren von Zielpunkten ist prinzipiell unabhängig von
der Kinematik, der Kalibrierung und den eingestellten Parametern und wird lediglich
durch die Qualität der Getriebe, Motoren und Drehgeber bestimmt. Im Allgemeinen liegt
sie bei deutlich weniger als einem Millimeter.
Die Genauigkeit, mit der vorberechnete Soll-Positionen und Bahnen im jeweiligen
Koordinatensystem erreicht werden, ist dagegen in hohem Maße auch von den anderen
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
6 von 19
Einflussgrößen abhängig. Je genauer der Roboter vermessen, kalibriert und in der
Arbeitsumgebung ausgerichtet ist, desto genauer kann er im Koordinatensystem
arbeiten.
Einzelachsbewegung
ArmCtrl bietet die Möglichkeit, einzelne Achsen unter direkter Kontrolle zu verfahren. Mit
dieser Funktion sind einfache Funktionstests möglich. Außerdem lassen sich so die
jeweiligen Endlagen komfortabel bestimmen und Achsen kontrolliert aus kritischen
Situationen heraus fahren.
Punkt-zu-Punkt-Bewegung (PTP)
Bei Punkt-zu-Punkt-Bewegungen verfahren alle Achsen gleichzeitig und synchron vom
aktuellen Winkel auf den Zielwinkel. Die Parameter der Bewegung können weitgehend
frei eingestellt werden und werden auf alle Achsen gleichermaßen angewandt.
Da es sich um einen rein durch die einzelnen Geschwindigkeiten bestimmten Ablauf
handelt, ist die Bahn des TCP nicht vorhersagbar; sie ist jedoch wiederholbar.
Mehrere Punkte können zu kontinuierlichen Bahnen zusammengesetzt werden, wobei
auch in diesem Fall die Bewegung des TCP zwischen den einzelnen Punkten nicht
vorhersehbar aber wiederholbar ist.
Kartesische Bewegung
Wenn die passende Kinematik hinterlegt wurde und diese die Funktion ermöglicht, kann
der TCP auch in kartesischen Koordinaten, also im klassischen, rechtwinkligen
Koordinatensystem, bewegt werden. Im Handbetrieb fährt der Roboter dann die
gewünschte Bewegungsachse entlang beziehungsweise dreht den TCP um diese Achse.
Als Bezugssystem kann dabei entweder das globale Koordinatensystem
Arbeitsraumes oder das lokale Koordinatensystem des TCP verwendet werden.
des
Lineare Bewegung
Im Automatik-Modus können Zielpunkte auch auf geraden Bahnen angefahren werden.
Wie bei den kartesischen Bewegungen ist dazu auch hier eine korrekt konfigurierte
Kinematik notwendig.
Mehrere Stützpunkte lassen sich zu Bahnen kombinieren, deren Ecken mit einstellbarem
Radius verrundet werden können.
Kollision
Ein Roboterarm besitzt normalerweise Software- und Hardware-Endschalter sowie
Endanschläge in jeder Achse. Diese sichern jedoch nur die Endlagen der jeweiligen
Achse ab und haben keine Auswirkung auf Kollisionen zwischen verschiedenen Teilen
des Roboterarmes beziehungsweise zwischen dem Arm und Hindernissen in der
Umgebung.
Momentan ist weder eine permanente Überwachung von Eigenkollisionen noch von
Kollisionen mit der Umgebung möglich. Dies bedeutet, das es insbesondere bei
automatisch berechneten Fahrten, etwa zu dynamisch angepassten Zielpunkten, zu
Kollisionen und damit zu Schäden am Arm oder anderen Systemen kommen kann.
Alle eingelernten Bewegungen müssen vor Beginn des Automatikbetriebs
unter Aufsicht testweise abgefahren werden.
Die Verantwortung für die Kollisionsvermeidung beim Anfahren
automatisch generierten Positionen liegt allein beim Programmierer!
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
von
7 von 19
3 Einrichten des Leitrechners
Als Leitrechner zum Bedienen genügt ein handelsüblicher PC mit Anschluss an das
lokale Netzwerk, in dem auch der Roboter angemeldet ist. Unter Umständen sind
zusätzliche Schnittstellenwandler erforderlich, falls die Kommunikation nicht
ausschließlich über Ethernet erfolgt.
3.1 Windows
Installation des Java Runtime Environments
Die Neobotix Bedienoberfläche wurde in Java programmiert und ist damit
plattformunabhängig. Dies bedeutet aber auch, dass eine Java virtual machine und eine
spezielle 3D-Bibliothek installiert werden müssen, ehe die GUI verwendet werden kann.
Sollte noch keine oder nur eine ältere Version auf dem Leitrechner installiert sein,
verwenden Sie die Dateien im „Java“-Ordner auf der CD aus dem Lieferumfang des
Roboters. Starten Sie beide „.exe“-Dateien und folgen Sie den Installationsanweisungen.
Installation der GUI
Die graphische Bedienoberfläche muss nicht im eigentlichen Sinne installiert werden.
Kopieren Sie einfach den entsprechenden Ordner auf die Festplatte des Leitrechners.
Um die Oberfläche zu starten können Sie entweder direkt auf „start.bat“ doppelklicken
oder eine Verknüpfung auf dem Arbeitsplatz anlegen. Ziehen Sie die Datei dazu mit der
rechten Maustaste auf den Arbeitsplatz und wählen Sie „Verknüpfung hier erstellen“ aus
dem Kontextmenü.
Einrichten des Netzwerks
Ein passendes WLAN-Gerät ist optional im Lieferumfang enthalten und so voreingestellt,
dass eine Verbindung zum Roboter schnell und einfach hergestellt werden kann. Falls die
Netzwerkeinstellungen manuell angepasst werden müssen, verwenden Sie bitte die
Software von der entsprechenden Treiber-CD und greifen direkt auf den Roboter zu, wie
im Kapitel „Wartung – Software“ beschrieben.
Die
Netzwerkeinstellungen
des
„Auslieferungskonfiguration“ hinterlegt.
Robotersystems
sind
im
Dokument
Stellen Sie sicher, dass sich Roboter und Leitrechner im selben Subnetz befinden.
Wenden Sie sich gegebenenfalls an den zuständigen Netzwerk-Administrator.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
8 von 19
4 Erste Schritte
4.1 Verbindungsaufbau
Nach dem Start der MAS3D-Oberfläche muss zuerst eine Verbindung zu den
vorhandenen Robotersystemen aufgebaut werden. Dies kann wahlweise ein einzelner
Arm, eine einzelne Plattform oder ein kompletter Roboter sein.
Arm
Wählen Sie im Hauptmenü den Punkt Arm → Verbindung aufbauen. Es erscheint ein
Dialog, in dem Sie im oberen Teil eine bereits bekannte Verbindung auswählen und
verwenden oder löschen können. Im unteren Teil gibt es die Möglichkeit, eine neue IPAdresse anzugeben. Wenn die Markierung Diesen Server merken gesetzt wurde,
erscheint nach einem Klick auf Verbinden ein weiterer Dialog, in dem der Name
angegeben werden kann, unter dem die neue Verbindung in Zukunft verfügbar sein soll.
Wenn eine Verbindung aufgebaut werden konnte, ändert sich die Farbe der Anzeige in
der rechten oberen Ecke der Bedienoberfläche zu grün.
Abb. 2: Anzeige des Verbindungsstatus
Falls keine Verbindung aufgebaut werden kann, färbt sich die Anzeige rot. Der
Verbindungsversuch kann über den Menüpunkt Arm → Verbindung trennen beendet
werden.
Plattform
Die Verbindung zu einer mobilen Plattform erfolgt analog über den Menüpunkt Plattform
→ Verbindung aufbauen. Während versucht wird, die Verbindung herzustellen, erscheint
ein kleines Nachrichtenfenster, das die Möglichkeit bietet, den Verbindungsversuch
abzubrechen. Klicken Sie dazu einfach auf Abbrechen.
Interpreter
Der Python-Interpreter ist ein Hilfsprogramm zum Erstellen komplexer Abläufe. Er wird
ebenso in die Bedienoberfläche eingebunden wie die Hardware-Komponenten.
Wählen Sie den Menüpunkt Interpreter → Verbindung aufbauen und geben Sie dann die
zugehörige IP-Adresse an oder wählen Sie sie aus der Liste der bekannten
Verbindungen aus.
Eine bestehende Verbindung wird in der rechten oberen Ecke der GUI durch eine grüne
LED symbolisiert.
Roboter
Wenn dem System bereits Roboter bekannt sind, kann eine entsprechende Verbindung
aufgebaut werden, indem einfach über die Auswahl unter dem Menüpunkt Roboter →
Verbindung aufbauen > das gewünschte Ziel ausgewählt wird.
Um einen neuen Eintrag anzulegen, kann über den Menüpunkt Roboter → Verbindungen
bearbeiten ein entsprechendes Fenster geöffnet werden.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
9 von 19
Abb. 3: Der „Verbindungsmanager“
Neue Roboter können durch einen Klick auf Neuen Roboter hinzufügen angelegt werden.
Nachdem ein Eintrag aus der Liste der bekannten Roboter markiert wurde, können die
zugehörigen Einstellungen nach einem Klick auf Angaben ändern geändert werden.
Neben dem Namen des Roboters und seiner IP-Adresse kann dann auch angegeben
werden, welche Komponenten der Roboter besitzt. Mit einem Klick auf Änderungen
speichern werden die Änderungen übernommen.
Sowohl bei einem Klick auf Mit diesem Roboter verbinden als auch bei der weiter oben
beschriebenen Direktanwahl versucht die GUI dann, nacheinander zu allen verfügbaren
Komponenten Verbindungen aufzubauen.
Eine bestehende Verbindung kann über den Menüpunkt Roboter → Verbindung trennen
wieder abgebaut werden.
4.2 Arbeiten mit der mobilen Plattform
Falls eine mobile Plattform von Neobotix Teil des Systems ist, kann sie über die MAS3DOberfläche kommandiert und innerhalb ihrer Umgebungskarte auf vordefinierte
Zielstationen gefahren werden. Außerdem lassen sich die Plattform, die kartierten
Landmarken und die Roadmap in der 3D-Ansicht darstellen und simulieren.
Die Kartierung der Umgebung und das Erstellen von Roadmaps muss im Rahmen der
Einrichtarbeiten über die PlatformCtrlGUI erfolgen, die Teil des Lieferumfangs der
mobilen Plattform ist. MAS3D stellt dazu keine Funktionen bereit, sondern greift nur auf
die jeweils aktive Karte und Roadmap der Plattform zu.
Sobald eine Umgebungskarte und eine Roadmap auf der Plattform hinterlegt wurden, die
Plattform korrekt lokalisiert ist und mit der MAS3D-GUI Verbindung aufgenommen hat,
kann sie in der 3D-Ansicht simuliert und real auf die Zielstationen gefahren werden.
Die Anzeige einstellen
Um mit der Plattform arbeiten zu können, muss zuerst die Ansicht in der MAS3DOberfläche entsprechend eingestellt werden. Wählen Sie im Hauptmenü den Punkt
Ansicht → Plattform-Programmierung um eine 3D-Darstellung der Einsatzumgebung
anzeigen zu lassen.
Nun kann aus der Liste, die unter dem Menüpunkt Simulation → Kinematik laden >
erscheint, das passende Modell geladen werden. Beim ersten Laden und bei der
Verwendung von sehr detaillierten Modellen kann dieser Vorgang etwas länger dauern.
Falls kein passendes Modell verfügbar ist, wird es gerne von Neobotix bereitgestellt.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
10 von 19
Sobald nun eine Verbindung zur Plattform aufgebaut wird, wie im vorigen Kapitel
beschrieben, werden auch die kartierten Landmarken und die Roadmap in die
Bedienoberfläche geladen und entsprechend angezeigt.
Die 3D-Ansicht kann verschoben werden, wenn in dem Popup-Menü, das nach einem
Rechtsklick in das 3D-Fenster erscheint, die Funktion Orbit View aktiviert wird. Durch
Ziehen mit gedrückter linker Maustaste wird die Ansicht geschwenkt, mit der rechten
Maustaste wird sie verschoben. Mit dem Scrollrad kann hinein und hinaus gezoomt
werden.
Abb. 4: 3D-Ansicht der Plattformumgebung inklusive Plattform, Landmarken und Roadmap
Zielstationen anfahren
Das Fenster Bewegung Plattform, das normalerweise links neben der 3D-Ansicht
erscheint, besitzt eine Combobox, mit der die nächste Zielstation angewählt werden
kann, sowie zwei Schaltflächen zum Starten und Stoppen der Automatikfahrt. Als
Zielstationen sind nur die Stationen verfügbar, die zuvor mit Hilfe der PlatformCtrlGUI
definiert und in der auf der Plattform abgelegten Roadmap hinterlegt wurden.
Nach einem Klick auf Punkt anfahren wird die Plattform in den Automatik-Modus
geschaltet und fährt die aktuell ausgewählte Zielstation an.
Das Verhalten der mobilen Plattform wird durch deren Konfiguration bestimmt und kann
in der MAS3D-Oberfläche nicht beeinflusst werden. Bitte verwenden Sie die
PlatformCtrlGUI, um Parameter anzupassen.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
11 von 19
4.3 Arbeiten mit dem Manipulator
Wenn ein unterstützter Manipulator vorhanden ist, kann er über die MAS3D-GUI in der
3D-Ansicht dargestellt und im Handbetrieb verfahren werden. Einzelne Punkte lassen
sich abspeichern und in den verschiedenen Bewegungsmodi anfahren.
Sobald der Arm aufgestellt, angeschlossen und korrekt konfiguriert wurde, kann die
Bedienoberfläche mit ihm verbunden werden.
Die Anzeige einstellen
Wählen Sie im Hauptmenü den Punkt Ansicht → Arm-Simulation, um die entsprechende
3D-Ansicht zu aktivieren. Danach können Sie aus der, unter dem Menüpunkt
Simulation → Kinematik laden > erscheinenden Liste das passende Modell auswählen.
Nachdem die Verbindung zum Arm aufgebaut wurde, wird die Stellung des Modells an
die reale Position angepasst.
Abb. 5: 3D-Ansicht eines KUKA KR 16 KS
Die in der GUI geladene Kinematik hat keinen Einfluss auf die Berechnungen, die in
ArmCtrl ablaufen, der Arm kann also auch ohne 3D-Modell bedient werden. Wenn ein
falsches 3D-Modell geladen wurde, werden dessen Gelenkwinkel an die des realen Arms
angepasst, so dass sich das Modell zwar bewegt, aber keine sinnvolles Ergebnis
darstellt.
Einzelachsbewegungen
Das Fenster Teach dient zum manuellen Verfahren des Roboterarmes. Um einzelne
Achsen zu bewegen wird der Modus single axis in der Auswahlbox markiert und die
gewünschte Geschwindigkeit prozentual über den Schieberegler direkt darunter
eingestellt.
Beginnen Sie immer mit sehr niedrigen Geschwindigkeiten, insbesondere,
wenn sich Achsen schon kurz vor den Endlagen befinden oder Hindernisse in
der Nähe sind.
Die Funktion Langsam reduziert die Geschwindigkeit zusätzlich um den Faktor
Zehn, so dass extrem langsame und exakte Bewegungen möglich sind.
Über die zwanzig Schaltflächen können alle Achsen des Roboterarmes sowie eventuelle
Zusatzachsen mit der gewählten Geschwindigkeit jeweils in positiver und negativer
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
12 von 19
Richtung bewegt werden.
Abb. 6: Teach-Fenster
Alternativ gibt es die Möglichkeit, die Achsen per Tastatur zu verfahren. Dazu muss die
unterste Schaltfläche im Teach-Fenster aktiviert werden. Die erste Achse kann dann über
die beiden Tasten bedient werden, die sich auf der Tastatur unterhalb der Taste „1“
befinden. Bei deutschen Tastaturen sind dies „Q“ und „A“. Die übrigen Achsen werden
entsprechend über die weiter recht gelegenen Tasten bewegt.
Ein Mausklick außerhalb des Teach-Fensters deaktiviert die Funktion.
Kartesische Bewegungen
Wird im Teach-Fenster die Bewegungsart cartesian global oder cartesian local aktiviert,
lässt sich der TCP entlang der Achsen der Koordinatensysteme fahren und drehen.
Cartesian global verwendet dazu das globale Koordinatensystem, das im
Allgemeinen mit dem der Umgebung übereinstimmt. Drehungen werden um
Hilfsachsen ausgeführt, die durch den TCP führen, jedoch parallel zu den globalen
Achsen sind.
Cartesian local verwendet dagegen das Koordinatensystem des Werkzeugs, was
besonders dann hilfreich ist, wenn Teile und Werkzeug direkt interagieren sollen
sollen. Gedreht wird in diesem Fall direkt um die TCP-Achsen.
Achten Sie vor dem Ausführen der Bewegung immer darauf, welches
Koordinatensystem aktiviert wurde, um Kollisionen zu vermeiden.
Zielpunkte speichern
Wenn eine wichtige Position getroffen wurde, kann sie in einer sogenannten Punktliste
abgelegt und später dort wieder ausgelesen und angefahren werden. Es werden zu jeder
Position ihr Name, alle Achswinkel (in Radiant) und die 6D-Koordinaten des TCP im
globalen Koordinatensystem (in Metern bzw. Radiant) gespeichert.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
13 von 19
Abb. 7: Punktliste mit Anzeige aller Parameter
Die Funktionen der Schaltflächen am linken Rand des Fensters sind wie folgt:
Einfügen: Die aktuelle Position wird als neuer Punkt unterhalb der aktuell ausgewählten
Zeile eingefügt.
Kopieren: Eine Kopie des aktuell markierten Punktes wird unterhalb der aktuellen Zeile
eingefügt. Der neue Punkt erhält den gleichen Namen wie das Original, jedoch mit einem
angehängten Sternchen.
Ersetzen: Die Positionswerte des aktuellen Punktes werden mit den momentan
anliegenden Werten überschrieben, der Name aber beibehalten.
Pfeil hoch / runter: Die ausgewählte Zeile wird in der Liste um eine Position hoch oder
runter verschoben.
Löschen: Die markierte Position wird komplett gelöscht.
Leeren: Die gesamt Punktliste wird geleert.
Oberhalb der Liste können die klassischen Funktionen zum Laden, Speichern und
Speichern unter einem neuen Namen genutzt werden. Punktlisten werden immer auf dem
Steuerungsrechner des Armes gespeichert und nicht auf dem Computer, auf dem die
Bedienoberfläche läuft.
In der Combobox rechts davon kann ausgewählt werden, wie viele Informationen
gleichzeitig dargestellt werden sollen.
Um den Namen oder einzelne Werte einer Position zu ändern, doppelklicken Sie einfach
auf den entsprechenden Eintrag. Wenn statt eines Wertes ein Sternchen eingetragen
wird, wird dieser Parameter nicht verwendet, sobald der Punkt aus der Liste ausgelesen
wird. Statt dessen wird der beim Auslesen jeweils aktuell anliegende Wert beibehalten.
Dadurch können zum Beispiel Zusatzachsen, die nur selten verfahren werden, auf einer
fixen Position gehalten werden. Unbeabsichtigte Änderungen, etwa beim späteren
Einlernen von Zwischenpositionen, können so vermieden werden.
Der Doppelpfeil vor dem Index einer Zeile zeigt an, dass sich der TCP gerade an oder
sehr dicht bei diesem Punkt befindet.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
14 von 19
Punkt-zu-Punkt-Bewegungen
Sobald mindestens ein Zielpunkt in der Punktliste gespeichert
wurde, können automatische Fahrten zu diesem Punkt durchgeführt
werden.
Wählen Sie den gewünschten Zielpunkt aus und stellen Sie im
Fenster Motion als Bewegungsart point to point ein. In dem
Eingabefeld darunter können Sie die gewünschte Geschwindigkeit
als prozentualen Anteil der Maximalgeschwindigkeit angeben.
Beginnen Sie Tests immer nur langsam und steigern Sie die
Geschwindigkeit vorsichtig, nachdem sichergestellt ist,
dass es nicht zu Kollisionen kommen wird.
Die wichtigsten Funktionen des Fensters Motion sind die folgenden:
Punkt anfahren: Bewegt den Arm mit der ausgewählten
Bewegungsart und der eingestellten Geschwindigkeit zur
Zielstation.
Nullstellung: Fährt den Arm in die Ausgangslage. Beachten Sie,
dass diese Stellung je nach Umgebung teilweise nicht angefahren
werden kann!
Anhalten: Beendet die laufende Bewegung sofort.
Abb. 8: Motion-Fenster
Zeit: Zeigt die aktuelle Laufzeit der Bewegung an und springt beim Erreichen der
Zielposition auf Null zurück.
Override: Mit diesem Schieberegler kann die eingestellte Geschwindigkeit dynamisch
reduziert werden.
Bei PTP-Bewegungen bewegen sich alle Achsen synchron auf ihre jeweilige Zielstellung,
beginnen und beenden die Bewegung also gleichzeitig und folgen dem gleichen
Geschwindigkeitsprofil. Sie sind jedoch nicht koordiniert, das heißt die resultierende Bahn
des TCP und des gesamten Armes ist nicht vorgegeben und im allgemeinen auch nicht
vorhersehbar.
Lineare Bewegungen
Bei linearen Bewegungen wird die Zielposition wenn möglich auf einer geraden Bahn
angefahren und dabei die Winkeländerung gleichmäßig interpoliert.
Bitte bedenken Sie, dass der Verlauf der Bahn vor der Ausführung nicht automatisch
geprüft wird. Dies kann vor allem aber nicht ausschließlich in zwei Fällen zu Problemen
und eventuell sogar zu Kollisionen führen:
Wenn aus vielen, weit im Arbeitsraum verteilten Punkten automatisch der nächste
Zielpunkt ausgewählt wird. Auch wenn jeder Punkt für sich alleine sicher und ohne
Kollision eingenommen werden kann, ist noch nicht sichergestellt, dass jede
mögliche Verbindung zwischen allen eingelernten Punkten auch tatsächlich
gefahren werden kann.
Auch wenn Positionen dynamisch berechnet werden, zum Beispiel in Abhängigkeit
von einem Füllstand, kann die Steuerung nicht überprüfen, ob die sich daraus
ergebende Bahn problematisch sein wird.
Achten Sie deshalb sehr darauf, dass die resultierenden Bahnen nicht durch Hindernisse
oder gar den Roboter selbst führen. Unter Umständen kann es notwendig sein,
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
15 von 19
Zielpunkte aus bestimmten Ausgangslagen heraus nur unter Verwendung von
Zwischenpositionen anzufahren.
In vielen Fällen hilft es schon, von linearen Bewegungen zurück in den Punkt-zu-PunktModus zu schalten. Vor allem bei Bewegungen die keine Bearbeitung oder Interaktion,
und damit auch keine vorgegebene Ausrichtung des Werkzeugs erfordern, ist dieses
Vorgehen sehr praktisch.
Die Wahl der abzufahrenden Bahnen und die Verantwortung für den sicheren
und kollisionsfreien Betrieb liegen alleine beim Programmierer der
Anwendung.
Pfade abfahren
Sobald mehrere Punkte in der Punktliste gespeichert wurden, können Sie auch zu Pfaden
kombiniert werden. Markieren Sie dazu sowohl den Start- als auch den Endpunkt des
Pfades in der Liste und wählen Sie einen Bewegungsmodus aus.
Nach einem Klick auf die Schaltfläche Pfad abfahren werden ab der Startposition alle
Punkte bis zum Erreichen der Endposition nacheinander durchfahren. Die Funktion Pfad
rückwärts fährt die Bahn in umgekehrter Reihenfolge ab.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
16 von 19
5 Eigene Programme schreiben
Um komplexere Abläufe effizient zu realisieren ist es im Allgemeinen notwendig, ein
übergeordnetes Ablaufprogramm zu erstellen, das zu allen beteiligten Komponenten und
Modulen Verbindung hält und deren Aktionen koordiniert. Unter Umständen fungiert
dieses Programm außerdem noch als übersichtliche Schnittstelle zwischen dem lokalen
Prozessablauf und einer anderen, noch größeren Ablaufsteuerung, etwa der
Fertigungsplanung.
Eine ausführliche Schulung in die Programmierung mit Python und die Verwendung des
Neobotix-Befehlssatzes hilft Ihnen, sich schnell in das System einzuarbeiten und
saubere, gut verwendbare und vor allem wartungsfreundliche Programme zu erstellen.
Sofern Sie nicht bereits über fundierte Kenntnisse im Programmieren verfügen oder die
Möglichkeit haben sich selbst ausführlich mit der Programmierung vertraut zu machen, ist
eine solche Schulung sehr zu empfehlen.
5.1 Der Python-Interpreter
Neobotix stellt ein unabhängiges Programm bereit, mit dessen Hilfe sehr viele
Ablaufprogramme ohne großen Aufwand umgesetzt werden können. Dieses Programm
kann Quellcode entgegennehmen, der in der einfach zu erlernenden
Programmiersprache Python erstellt wurde, übersetzt ihn in das Neobotix-Protokoll und
schickt die entsprechenden Befehle an die einzelnen Module.
Mobile Arm Simulation 3D bietet die Möglichkeit, direkt in der Bedienoberfläche PythonSkripte aus vorbereiteten Blöcken zu erstellen und die Ausführung in Echtzeit zu
beobachten, so dass die Anwendung schnell und einfach optimiert werden kann.
Abb. 9: Das Programmier-Fenster
Die Schaltflächen im oberen Teil des Fensters bieten klassische Dateifunktionen aber
auch Kontrolle über die Ausführung des Programms:
Load: Lädt ein gespeichertes Programm von der Festplatte des Computers, auf dem der
Interpreter läuft.
Save: Speichert das aktuelle Programm.
SaveAs: Speichert das aktuelle Programm unter einem neuen Namen auf der Festplatte
des Computers, auf dem der Interpreter läuft, und setzt die Bearbeitung in dieser neuen
Datei fort.
Start: Startet das aktuelle Programm.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
17 von 19
Stop: Beendet das laufende Programm.
Break: Unterbricht das laufende Programm. Klicken Sie zum Fortsetzen noch einmal auf
Start.
Step: Führt nur den jeweils nächsten Befehl des Programms aus.
Über die vier Karteireiter können bis zu vier parallele Teilprogramme, sogenannte Tasks,
erstellt werden.
Die vier Schaltflächen direkt über dem Programmierfenster bieten Funktionen für die
eigentliche Programmierung:
Indent: Der markierte Bereich wird eingerückt. Python verwendet Einrückungen anstelle
von Schlüsselwörtern oder Klammern, um zusammengehörige Blöcke zu kennzeichnen.
Unindent: Mit dieser Funktion lässt sich eine Einrückung entfernen.
Undo: Die letzte Änderung wird rückgängig gemacht.
Redo: Die zuvor rückgängig gemachte Aktion wird wiederhergestellt.
Um ein Programm zu schreiben, können Sie entweder Quellcode direkt eingeben oder
auf vorbereitete Bausteine mit den wichtigsten Funktionen zurückgreifen. Nach einem
Rechtsklick in das Programmierfenster erscheint dazu ein Popup-Menü, in dem der
gewünschte Befehl oder die benötigte Funktion ausgewählt werden können.
Die meisten Funktionen sind selbsterklärend. Sollten Sie trotzdem nähere Informationen
benötigen, finden Sie diese im „Python Client – Programmiererhandbuch“.
5.2 Der externe Client
In gewissen Fällen, etwa in der Forschung oder bei der Realisierung besonders
komplexer und anspruchsvoller Prozesse, kann es sinnvoll sein, die Ablaufsteuerung in
einer anderen Programmiersprache zu implementieren, die für die jeweilige Anwendung
besser geeignet ist.
Die dazu nötigen Informationen und Beschreibungen der Protokolle finden Sie im
„PlatformCtrl – Programmiererhandbuch“ und im „ArmCtr – Programmiererhandbuch“.
Sollten Sie zusätzliche Unterstützung benötigen, wenden Sie sich einfach an Neobotix.
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
18 von 19
6 Rechtliche Anmerkungen
Versionsinformation
Das vorliegende Dokument ist das Original.
Haftung
Dieses Dokument wurde mit größtmöglicher Sorgfalt verfasst und repräsentiert den Stand
der Technik zum Zeitpunkt seiner Erstellung. Fehler und Irrtümer sind jedoch nicht
auszuschließen. Bitte informieren Sie Neobotix, sollten Sie solche im Dokument
bemerken.
Die Neobotix GmbH ist nicht haftbar für technische oder schriftliche Fehler in diesem
Dokument und behält sich das Recht vor, Änderungen seines Inhalts vorzunehmen, ohne
diese vorher anzukündigen.
Neobotix übernimmt keinerlei Garantie für die in diesem Dokument beschriebenen
Produkteigenschaften. Insbesondere ergibt sich aus dem Inhalt kein Anspruch jedweder
Art, weder auf Eigenschaften des Produkts noch auf seine Eignung für spezielle
Anwendungsfälle.
Die Neobotix GmbH kann nicht für Schäden haftbar gemacht werden, die aus der
unsachgemäßen Nutzung eines oder mehrerer der beschriebenen Produkte resultieren.
CE-Konformitätserklärung
Hiermit bestätigt Neobotix, dass das beschriebene Produkt die relevanten EU-Richtlinien
erfüllt. Falls weitergehende Informationen erforderlich sind, wenden Sie sich bitte direkt
an Neobotix.
Downloads und weitergehende Informationen
Weitergehende Informationen, Datenblätter und Dokumentationen, auch von weiteren
Neobotix-Produkten, finden Sie im Internet unter www.neobotix-roboter.de.
Impressum
Neobotix GmbH
Weipertstraße 8 – 10, 74076 Heilbronn
www.neobotix-roboter.de
Kontakt: Dipl.-Ing. Till May
Tel.: (+49) 7131 / 76 69-300
E-Mail: [email protected]
MAS3D-Bedienungsanleitung.odm, erstellt am 19. Januar 2012 in Heilbronn
MAS3D-Bedienungsanleitung
Neobotix GmbH – alle Rechte vorbehalten
19 von 19