Einrichtzeiten von Industrierobotern drastisch verkürzen:

CAD-Systeme bilden Basis für Offline-Programmierung

02.12.1988

Dr. Frank-Peter Poschmann ist Leitender Berater bei der Enator Deutschland GmbH und ist für die Bereiche CAD/CAM und Robotics zuständig.

Ein Industrieroboter wird nur dann in seiner Arbeit unterbrochen, wenn man ihm neue Aufgaben übertragen will. Bislang erfolgte die Programmierung online und zwang zu langen Standzeiten. Mit einem CAD-System können bei der Fertigungszellen-Konstruktion in der Autoindustrie nicht nur Konstruktionsaufgaben gelöst, sondern auch die Programmsteuerung der eisernen Knechte vorgenommen werden.

Der weitaus größte Teil der Industrieroboter wird heute noch im sogenannten "Teach-In"-Verfahren programmiert. Der Roboter wird dabei von dem Einrichter, dem "Online-Programmierer", mit einem Handbediengerät, der "Teach-Box", zu den Arbeitspunkten gefahren. Die Aufgabe wird dem Roboter "vorgemacht". Ist der Online-Programmierer mit dem Roboterprogramm zufrieden, kann der Industrieroboter seine Aufgaben in einem ewigen Zyklus ohne Ermüdung immer wieder vollbringen, bis eine Änderung des Produktionsablaufs eine Modifikation des Roboterprogramms notwendig macht.

Ein Nachteil des Teach-In-Verfahrens wird deutlich: Bei Änderungen des Roboterprogramms wegen eines Modellwechsels oder aufgrund anderer betrieblicher Anforderungen scheidet die Fertigungszelle oder gar die ganze Fertigungsstraße aus der Produktion aus. Die Programmierung der Industrieroboter in einer komplizierten Fertigungszelle kann mehrere Wochen Zeit beanspruchen. Die Reduzierung dieser Einrichtzeit bedeutet ein großes Einsparungspotential.

Die Idee der "Offline-Programmierung" ist deshalb naheliegend. Das Roboterprogramm soll nicht online, am Gerät selbst also, sondern offline, auf einem anderen Computer erstellt und modifiziert werden. Erst wenn das Roboterprogramm vollständig oder zumindest zum größten Teil fertiggestellt ist, muß der Industrieroboter seine Arbeit unterbrechen, um das neue Programm zu erhalten. Nur noch die Feinabstimmung des Roboterprogramms erfolgt vor Ort.

Es gibt eine Vielzahl von Roboter-Programmiersprachen wie Pasro und Claro, die für die Offline-Programmierung entwickelt wurden. Ähnlich einem Computerprogramm wird hier dem Roboter die Aufgabe beschrieben. Es gibt bedingte Verzweigungen, Schleifen und Unterprogrammtechnik. Diese Form der Offline-Programmierung, die "rein textuelle Offline-Programmierung", erleichtert die Modifizierung von Roboterprogrammen. Die komplette Neuerstellung ist allerdings schwierig (und wird im allgemeinen nicht durchgeführt), da das dreidimensionale Vorstellungsvermögen beschränkt ist.

Ein CAD-System bietet in diesem Fall Unterstützung an. Die Arbeitspunkte sind bereits an mit CAD-Systemen konstruierten Werkstücken vorhanden. Zudem erleichtert die Simulation der Roboterbewegung die Fehlerfindung am offline erstellten Roboterprogramm. Die grafisch unterstützte Offline-Programmierung soll am Beispiel der Automobilindustrie erläutert werden.

Den organisatorischen Ablauf der Fertigungszellenkonstruktion mit Robotereinsatz zeigt das Diagramm in Abbildung 1.

In der Planungsabteilung (Vorplanung) fallt die Entscheidung über den Robotereinsatz. Robotertypen und deren Anzahl werden ausgewählt. Die grundsätzliche Machbarkeit der Aufgabe in der Fertigungszelle wird an dieser Stelle bereits geklärt.

Hier ist der größte Nutzen der Offline-Programmierung und Simulation von Industrierobotern zu erwarten. Um sicherzustellen, daß die Aufgabe auf jeden Fall erfüllt werden kann, werden eher Roboter mit großer Reichweite und mehr Roboter eingesetzt als zu wenige und zu kleine. Diese "Sicherheitsmarge" kann mit einem Simulationssystem verringert werden.

In der Konstruktionsabteilung der eigentlichen Fertigungszelle wird über den Roboterstandort entschieden. Er beeinflußt häufig nicht nur die Zykluszeit des späteren Roboterprogramms, sondern manchmal sogar die gesamte Aufgabe. Liegt ein Punkt der Roboterbahn nahe einer sogenannten singulären Stellung des Roboters, ist die Aufgabenlösung in Frage gestellt. Nur unter Schwierigkeiten und mit Geschwindigkeitsverlust kann dann das Roboterprogramm vor Ort erstellt werden.

Auch der Konstrukteur benötigt ein Simulationssystem für Industrieroboter. Das System klärt die Erreichbarkeit der Arbeitspunkte und der Bahn oder hilft bei der Wahl des Roboterstandorts.

Die exakten geometrischen Daten des Werkstücks sind bei der Konstruktion zwar wünschenswert, aber nicht unbedingt nötig. Da kein vollständiges Roboterprogramm erstellt wird, reicht im allgemeinen ein ungefähres Abbild des Werkstücks, um die Arbeitspunkte festzulegen und den Standort zu bestimmen. Im nächsten Schritt, der Offline-Programmierung, wird das Roboterprogramm vollständig oder teilweise offline erstellt. Seine Qualität hängt entscheidend von der Genauigkeit des Werkstücks im CAD-System ab. Die geometrischen Daten können entweder direkt von der Entwicklungsabteilung übernommen werden, wenn sie dort bereits mit einem CAD-System erzeugt wurden, oder sie müssen durch Vermessung eines Modells oder Prototyps gewonnen werden.

Bahnplanungsfunktionen im Offline-Programmiersystem helfen dem Programmierer, die optimale Bahn für den Roboter zu bestimmen. Je nachdem wie vollständig der Funktionsumfang der Robotersteuerung im Programmiersystem abgebildet ist, muß das offline erstellte Programm vor Ort modifiziert werden.

Der Vorteil der Offline-Programmierung liegt darin, daß der Roboter seine Arbeit weiterführen kann, bis die Programmierphase abgeschlossen ist und das Programm auf die Robotersteuerung heruntergeladen wird. Bislang laufen hierzu erste Pilotprojekte. Die unterschiedlichen Schnittstellen und der zum Teil enorme Unterschied im Funktionsumfang der Robotersteuerungen stellen dabei noch große Probleme dar.

Auf die Online-Programmierung kann man deswegen noch nicht verzichten. Auch Toleranzen im Werkstück, der Fertigungszelle und der Industrieroboter selbst machen eine Feinabstimmung des offline erstellten Roboterprogramms weiterhin nötig. Dynamikeffekte, die die Simulationssysteme heute noch nicht berücksichtigen, können eine Änderung vor Ort notwendig machen.

Die Durchführung einer Offline-Programmierung und -Simulation kann über ein CAD-Basissystem oder über eine grafische Schnittstelle erfolgen, die in den meisten Planungs- und Konstruktionsabteilungen bereits vorhanden sind. Damit entfällt nicht nur die doppelte Beschaffung von Hardware, sondern es steigt auch die Akzeptanz eines solchen Systems. Die Fertigungszelle wird mit dem CAD-Basissystem konstruiert, und der Wechsel zur Simulation der dort befindlichen Roboter für den Erreichbarkeitstest beispielsweise, findet für den Benutzer problemlos statt.

Ist die Integration in ein CAD-Basissystem nicht möglich, muß zumindest eine grafische Schnittstelle zum Einlesen der Geometriedaten vorhanden sein.

Die geometrischen und technischen Daten der zur Auswahl stehenden Robotertypen und Werkzeuge werden in einer Roboter- und Werkzeugbibliothek abgelegt. Die Werkzeuge werden häufig eigens für eine bestimmte Fertigungszelle konstruiert. Deshalb sollte die Möglichkeit bestehen, der Standardbibliothek neue Werkzeuge und eventuell auch neue Robotertypen hinzuzufügen.

Zu den technischen Daten der Robotertypen gehören Abmessungen und kinematische Daten wie die Denavit-Hartenberg-Parameter, aber auch steuerungsspezifische Parameter wie Interpolationstakt, Achsgeschwindigkeiten,

-beschleunigungen und -begrenzungen.

Erst die möglichst genaue Simulation der Robotersteuerung erleichtert dem Anwender die Arbeit. Ist sie fehlerhaft, sind die Aussagen des Offline-Programmier- und Simulationssystems über die Durchführbarkeit der Aufgabe oder die optimale Roboterposition möglicherweise falsch.

Die Genauigkeit der Steuerungssimulation ist von mehreren Komponenten abhängig: Die Vorwärtstransformation berechnet aus den Gelenkwerten des Roboters die Position und die Orientierung des Werkzeugs. Die Transformation ist eindeutig und für offene Ketten allgemein lösbar. Sie stellt für die Steuerungssimulation kein Problem dar. Die Rückwärtstransformation hingegen ist nicht eindeutig und nicht für beliebige Kinematiken analytisch lösbar. Sie berechnet aus der Position und der Orientierung des Werkzeugs die Gelenkwerte des Roboters.

Analytische Lösung für spezielle Kinematik

Die gängigen Robotertypen erlauben zwar meistens eine analytische Lösung, die dann aber auf eine spezielle Kinematik zugeschnitten ist. Für eine allgemeine Rückwärtstransformation müssen numerische Methoden verwendet werden.

Die Rückwärtstransformation wird direkt für den Erreichbarkeitstest benötigt. Liefert sie für die Gelenkwerte bei der Sollstellung des Werkzeugs keine Lösung, ist der Arbeitspunkt nicht erreichbar.

Die Steuerung der Geschwindigkeit bestimmt den zeitlichen Verlauf der Werkzeugspitze auf der Roboterbahn. Die Beschleunigungs- und Abbremsphasen sowie die Bereiche mit gleichförmiger Geschwindigkeit werden hier berechnet.

Mit der Geschwindigkeitssteuerung wird die Zykluszeit des Roboterprogramms ermittelt. Dynamische Effekte werden hier nicht berücksichtigt, sondern nur die Vorgaben, die die Robotersteuerung an den Regelkreis der Achsmotoren weitergibt.

Die Bahninterpolation schließlich bestimmt den räumlichen Weg der Werkzeugspitze beim Abfahren des Roboterprogramms. Hier werden entweder die Gelenkwerte vom Start- zum Zielpunkt interpoliert (PTP = Point-to-point-lnterpolation) oder es wird die Bahn der Werkzeugspitze als Gerade, Kreis oder Parabel vorgegeben. Die Interpolation der Orientierung des Werkzeugs wird ebenfalls berücksichtigt.

Steuerungssimulation soll herstellerabhängig sein

Soll das Simulationssystem zur Vermeidung von Kollisionen genutzt werden, muß die Bahninterpolation im Simulationssystem der in der Robotersteuerung entsprechen.

Die Steuerungssimulation sollte also herstellerabhängig sein. Unterschiedliche Robotertypen verlangen deshalb verschiedene Steuerungssimulationen.

Da die Steuerungshersteller im allgemeinen nicht bereit sind, ihre Algorithmen offenzulegen, herrscht oft großes Rätselraten über das Verhalten eines speziellen Roboters. Hier können nur Praxistests helfen, die Unklarheiten für die Entwickler von Offline-Programmiersystemen auszuräumen.

Bei der Gestaltung der Benutzerschnittstelle eines Offline-Programmier- und Simulationssystems muß man berücksichtigen, daß Konstrukteure keine Programmierer sind. Die Programmierung sollte deswegen einfach und nicht den klassischen Programmiersprachen entlehnt sein.

Beispielsweise können die Programmstrukturen (Verzweigungen, Schleifen) grafisch verdeutlicht werden, oder die Funktionen werden statt durch reine Textmenüs über Piktogramme (Icons) aufgerufen. Mindestanforderung ist hier verständliches Deutsch und eine ständig parate und aussagefähige Hilfe-Funktion.

Moderne Steuerungen für Industrieroboter versuchen, möglichst viele Effekte bereits vor dem Regelkreis, der Soll- und Ist-Stellung der Gelenke vergleicht, aufzufangen. So werden die Achsgeschwindigkeiten und Achsbeschleunigungen überwacht. Bei Überschreitung von Grenzwerten bleibt das Gerät stehen. Diese Effekte, die aus der Transformation der Bewegung der Werkzeugspitze auf die Gelenkwerte resultiert, sind im Simulationssystem relativ einfach zu berücksichtigen.

Für die Berücksichtigung der statischen Gewichte, beispielsweise ein gegriffenes Werkstück, und von beschleunigten Massen auf die Zykluszeit des Roboterprogramms ist ein Dynamikmodul erforderlich. Diese Module sind umfangreich und belasten viele Ressourcen. Der Qualitätsgewinn des Roboterprogramms ist dagegen sorgfältig abzuwägen. Im allgemeinen geht man davon aus, daß in der Automobilindustrie für die heutigen Anwendungen ein Dynamikmodul nicht notwendig ist. Für die in Zukunft zu erwartenden Montageaufgaben ist hier aber Entwicklungsbedarf vorhanden.

Offline-Programmier- und Simulationssysteme können mit Hilfe von Optimierungsmodulen Entscheidungen, die bisher aus dem "hohlen Bauch" getroffen werden, jetzt auf eine nachvollziehbare Grundlage stellen.

Es werden beispielsweise für die Roboterauswahl Hilfen angeboten. Die Arbeitspunkte am Werkstück können automatisch zu Gruppen zusammengefaßt und einzelnen Robotern übertragen werden. Es ist möglich, Form und Größe dieser Ballungen von Arbeitspunkten bestimmten Robotertypen zuzuordnen.

Ist über die Aufgabe eines bestimmten Robotertyps entschieden, kann ein Modul automatisch einen Standort des Roboters ermitteln, bei dem alle Arbeitspunkte erreicht werden können. Ein weiteres Modul kann diesen Standort dann nach bestimmten Kriterien optimieren. Kriterien können hier beispielsweise die Zykluszeit des Roboterprogramms oder die Belastung der Gelenke sein.

Auch für die Bahngenerierung stehen Module zur Verfügung, die automatisch kollisionsfreie Bahnen erzeugen und gefährliche Stellungen des Roboterarms (Singularitäten) vermeiden.

All diese mächtigen Funktionen sind auf eine gute Simulation der Steuerung der Industrieroboter angewiesen. Die falsche Vorhersage des Verhaltens des Roboters führt auch zu falschen Ergebnissen der Optimierungsmodule .

Sollen Roboterprogramme offline für den Einsatz vor Ort erstellt werden, ist eine Schnittstelle zur Steuerung der Industrieroboter nötig. Je größer die Übereinstimmung des Funktionsumfangs im Offline-Programmiersystem und der Robotersteuerung ist, desto größer ist die Wahrscheinlichkeit, das offline erstellte Programm auch tatsächlich einsetzen zu können.

Falsche Ergebnisse bei der Optimierung

Für die Modifikation von online erstellten Programmen muß die Schnittstelle in beide Richtungen funktionieren. Die Roboterprogrammiersprache im Offline-Programmiersystem darf deshalb nicht zu abstrakt sein, da sonst eine Hin- und Rückübersetzbarkeit der Roboterprogramme nicht mehr möglich ist.

Die Systeme, die für die Offline-Programmierung und Simulation auf dem Markt erhältlich sind, verfolgen unterschiedliche Ansätze.

Die Hersteller von CAD-Basissystemen bieten häufig Module für die Offline-Programmierung und Simulation von Industrierobotern an (Robotics bei Catia, Dassault).

Die Roboterhersteller verkaufen oft ein Offline-Programmiersystem mit den Robotern (zum Beispiel Olpw von Gmf). Die Simulation der eigenen Roboter ist daher einfach.

Ebenso beschäftigen sich einige Universitäten in Forschungsprojekten mit der Offline-Programmierung und Simulation. Die Systeme, die dabei entstehen, sind allerdings meistens nicht käuflich erhältlich.

Schließlich gibt es auch Anwender, die einige Systeme entwickeln (Volkswagen/Enator mit Robula auf Euclid-Basis). Diese Systeme sind allerdings auf die Anforderungen in den Unternehmen abgestimmt.

Softwarehäuser, die von CAD-Basissystemen unabhängige Offline-Programmier- und Simulationssysteme entwickeln, können auf spezielle und besonders schnelle Hardware zurückgreifen (Robcad von Tecnomatix). Diese Systeme erlauben die Animation der Roboterbewegung manchmal sogar in schattierter Darstellung.

Kürzere Zeiten durch besseren Standort

Ein wesentlicher Vorteil dieser Art von Roboter-Programmierung liegt darin, daß die Fertigungszellen schneller konstruiert werden können, da in den Planungsphasen weniger Fehler auftreten. Die Vorgaben für den Konstrukteur der Fertigungszellen sind von besserer Qualität. Änderungen der Planungsunterlagen treten selten auf.

Der Bau von Prototypen der Fertigungszelle wird reduziert. Das Verhalten der Fertigungszelle ist mit dem Simulationssystem sehr genau vorhersagbar.

Die Modifikation von Roboter- und Peripheriestandorten in der Fertigungszelle sind mit dem Simulationssystem einfach durchzuführen. Bei Änderung der Planung muß nicht die gesamte bereits geleistete Arbeit wiederholt werden, sondern es sind nur geringfügige Modifikationen der vorhandenen Daten nötig, um Aussagen über Machbarkeit und

Zykluszeiten der Aufgabe zu erhalten.

Die Roboterprogramme brauchen darüber hinaus kürzere Zykluszeiten. Dies wird schon durch den besseren Roboterstandort erzielt. Durch die besseren Planungsmöglichkeiten können oft kleinere und damit schnellere Roboter eingesetzt werden. Damit verringert sich ebenfalls die Zykluszeit des Roboterprogramms.

Die Modifikation bereits existierender Roboterprogramme wird vereinfacht. Die Änderung des Roboterstandorts führt nicht mehr zu einer kompletten Neuerstellung des Programms, wie es bei anderen Robotersteuerungen nötig wäre, sondern kann mit dem Offline-Programmiersystem in kurzer Zeit durchgeführt werden.

Schließlich werden die Stillstandszeiten bei der Modifikation von Roboterprogrammen von existierenden Fertigungszellen verringert. Der Roboter kann seine Arbeit weiterführen, bis die Offline-Programmierung abgeschlossen ist und das Programm auf die Robotersteuerung heruntergeladen wird.

Da weniger Zeit für die Online-Programmierung der Industrieroboter aufgebracht werden muß, verringert sich auch das Unfallrisiko.

Die Bewertung der Vorteile hängt von der Problemstellung im Betrieb ab. Modellrechnungen zeigen, daß in der Automobilindustrie bei Schweiß-, Klebe- und Montageaufgaben der Nutzen in der Planungs- und Konstruktionsphase der Fertigungszellen den Nutzen der eigentlichen Offline-Programmierung um das Doppelte übersteigt.