-
Die Erfindung betrifft ein Verfahren mit den Merkmalen des Oberbegriffs von Anspruch 1.
-
Stand der Technik
-
Die Erfindung liegt auf dem technischen Gebiet des Bedruckens von Oberflächen von dreidimensionalen Objekten mittels Tintenstrahl-Technologie (Inkjet). Dabei wird entweder der Inkjet-Druckkopf oder das Objekt oder beide bewegt: bei großen Objekten wie z.B. Karosserieteilen bevorzugt der Druckkopf; bei kleinen Objekten wie z.B. Bällen bevorzugt das Objekt. Die Bewegung wird bevorzugt durch einen Roboter wie z.B. einen Gelenkarm-Roboter bewirkt. Für die Bewegung beim Bedrucken beliebiger, beliebig geformter und/oder wechselnder Objekte kann die Planung einer (Bewegungs-)Bahn erforderlich sein. In den deutschen Patentanmeldungen derselben Patentanmelderin
DE 10 2014 011 301 ,
DE 10 2014 221 103 und
DE 10 2014 008 470 sind gattungsgemäße Verfahren beschrieben.
-
Aus dem Stand der Technik ist bisher die Problematik der Bahnplanung für alternierende Druck- und Trocknungsbahnen oder gar die gemeinsame Anordnung von Druckkopf und Trockner mit unterschiedlichen Winkeln auf einem Träger am Roboterflansch noch nicht bekannt. Bei flächigem Druck oder flächigem Lackieren sind entweder sägezahnförmige oder mäanderförmige Bahnen vorgesehen, je nachdem, ob seitlich aneinandergrenzende Druckbahnen näherungsweise in die gleiche oder die entgegengesetzte Richtung verlaufen.
-
Allerdings gibt es Patentschriften und Literatur zur allgemeinen Problematik der Bahnplanung:
WO 2005/049284 A1 : “Method for optimising the performance of a robot”. Darin geht es um ein Verfahren, ein System, ein Computerprogramm und ein Computer-lesbares Medium oder Mittel zur Performanz-Optimierung eines Roboters, genauer Optimierung der Position und Orientierung einer Aufgabe relativ zu einem Roboter. Dabei werden verschiedene Experimente mit unterschiedlicher Anordnung der Aufgabe relativ zum Roboter unter Einbeziehung der Roboterkinematik gerechnet und die beste Anordnung ausgewählt. Ziel ist die optimale Anordnung einer mit einem Roboter zu bearbeitenden Aufgabe im Arbeitsraum des Roboters. Die Zykluszeit für eine spezifische Aufgabe soll dadurch reduziert werden. Das Verfahren unterscheidet zwischen notwendigem Kriterium der Erreichbarkeit („Possible task placement criterion“), ob alle Punkte erreichbar sind und hinreichendem Kriterium der Realisierbarkeit („Admissible task placement criterion“), dass auch die Bahnübergänge dazwischen realisierbar sind. Die Prüfung der Bahnübergänge bedeutet im Wesentlichen, dass keine Singularitäten auftreten. Eine Polynomfunktion oder andere geeignete Funktion wird zum Approximieren des funktionalen Zusammenhangs zwischen der Lage der Aufgabe und der Zykluszeit genutzt, um auf dieser parametrischen Funktion das Minimum (Optimum) für die Lage bestimmen zu können. Vorgesehen sind quadratische Polynome, die an drei Punkte gefittet werden. Ein Experiment mit voll faktoriellem Design bei 3 Variablen erfordert 27 Tests. Dabei werden auch Abhängigkeiten zwischen den Raumrichtungen in der Approximationsfunktion betrachtet. Beim Box-Behnken-Design reichen bei 3 Variablen 12 Tests aus. Neben dem notwendigen Kriterium können zusätzliche Kriterien verwendet werden, z.B. Teile der Roboterzelle sind belegt oder Kollisionsprüfung mit anderen Robotern oder Geräten. Die Tests werden mit einer simulierten Robotersteuerung vorgesehen, welche die Zykluszeit akkurat bestimmt. Dabei wird auch bestimmt, ob die Bewegung überhaupt ausführbar ist. Wenn nicht, wird der zugehörige Test aus dem Experiment entfernt. Für das Fitting ist die Methode der kleinsten Quadrate vorgesehen. Statt Polynome können auch Spline-Funktionen oder Fourier-Reihen verwendet werden. Abhängig von der Kompliziertheit einzuhaltender zusätzlicher Restriktionen werden z.B. SQP-Verfahren und Gradientenverfahren als Optimierungsverfahren vorgeschlagen. Das Optimum ist nur ein Eignungskandidat und es muss noch geprüft werden, ob das hinreichende Kriterium der Bahnrealisierbarkeit gegeben ist. Wenn nicht, kann durch sequenzielles Rückwärts-Shiften die in Richtung des Optimumsvektors möglichst nahe Lage als Optimum gefunden werden. Nachdem alle Optimumskandidaten geprüft wurden, wird das Minimum der tatsächlichen Tests als reales Optimum selektiert. Das Dokument geht nicht auf die Möglichkeit der Bahnverlaufsvariation ein! Nur PTP oder Gerade kartesische Bahnen werden als Möglichkeit genannt. Tatsächlich sind weitaus mehr Bahnen zwischen gegebenen Punkten möglich.
-
Das Verfahren beschreibt nicht die konkrete Ausführung der Bahnplanung zwischen zwei Punkten, sondern nennt nur die beiden Möglichkeiten der PTP-Bewegung (achssynchrone Bewegung) und der Continuous-Path-Bewegung (im kartesischen Raum geplante Bewegung). Das Verfahren sieht außerdem die präzise Simulation geplanter Bahnen für verschiedene Anordnungen der Aufgabe relativ zum Roboter mit Hilfe einer Robotersteuerung vor und weist folglich selbst wiederholt darauf hin, dass dies lange dauert, d.h. das Verfahren ist langsam.
-
Ramer, C., S. Reitelshöfer und J. Franke: Automatisierte Pfadgenerierung und Kollisionsüberwachung für Sechsachs-Industrieroboter durch 3D-kameragestützte Umgebungserfassung. VDI BERICHTE Nr. 2209, S. 143–146, Düsseldorf: VDI Verlag, 2013. Die Daten einer Time-of-Flight-Kamera werden zur Erstellung eines Umgebungsmodells eines Roboters und „zur automatisierten Generierung eines kollisionsfreien Roboterpfads verwendet. Während der Roboterbewegung führt eine Kollisionsüberwachung auf Basis des aktuellen Arbeitsraummodells und der bekannten Roboterposition hierarchische Abstandsprüfungen zu dynamischen Objekten durch und stellt hiermit die Einhaltung eines Mindestabstands sicher.“ Für die Kollisionsprüfung werden die Objekte durch einfache Hüllkörper approximiert, um den Rechenaufwand zu reduzieren. Die Bahnplanung erfolgt auf Basis der approximativen Zellzerlegung, bei welcher der Raum sukzessive in Octrees zerlegt wird. Es wird zunächst geprüft, ob ein direkter kollisionsfreier Weg zwischen Start- und Zielposition realisierbar ist. Die Zielposition kann manuell eingegeben werden oder mittels eines intuitiven Eingabegeräts. Wählbar ist, ob PTP oder Continuous-Path-Bewegungen ausgeführt werden sollen. Wenn der direkte Weg möglich ist, werden die ermittelten Achswerte an die Robotersteuerung übermittelt. Anderenfalls wird der Arbeitsraum in würfelförmige Zellen zerlegt, um mehrere Stützpunkte für einen kollisionsfreien Pfad zu ermitteln. Verwiesen wird auf die ursprüngliche Vorstellung des angewandten Prinzips der approximativen Zellzerlegung in [Lozano-Perez T (1981) Automatic Planning of Manipulator Transfer Movements. IEEE Transactions on Systems, Man and Cybernetics 11(10), pp 681–698] und als andere mögliche Bahnplanungsansätze die Potentialfeldmethode und die häufig verwendeten stichprobenbasierten Planer ([Latombe J-C (1991) Robot motion planning, Kluwer, Boston] und [LaValle S M (2006) Planning algorithms, Cambridge University Press, Cambridge]).
-
Das Verfahren der Octrees dient allgemein der Planung einer kollisionsfreien Roboterbahn von einer Start- bis zu einer Zielposition. Es erfordert einen erheblichen Rechenaufwand für die einzelne Bahn. Zudem löst es nicht die Problematik unterschiedlich möglicher Achsstellungsmöglichkeiten für die gleiche Start- und Zielposition. Zudem ist bei diesem Verfahren nicht sichergestellt, dass eine Lösung für die Planungsaufgabe gefunden wird, auch wenn eine existiert.
-
WO 2014/022786 A2 : “Systems and methods for robotic surgery”. Die sehr umfangreiche Schrift bezieht sich auf chirurgische Roboter zum Handhaben eines chirurgischen Instruments und eines von dem chirurgischen Instrument ausgehenden Energieapplikators, Verfahren zu deren Steuerung sowie ein chirurgisches System. Vorgesehen ist hier u.a. die Berücksichtigung von Restriktionen z.B. zur Kollisionsvermeidung nach der Potentialfeldmethode.
-
Die Potentialfeldmethode berücksichtigt Restriktionen in Form von abstoßenden Kräften. Auch diese zeigt keine Lösung auf für die spezielle Problematik, dass zu kartesisch geplanten Bearbeitungsbahnen mehrere Achsstellungsverläufe möglich sind.
-
DE 102008046348 A1 : „Verfahren, Gerät und ein entsprechendes Computerprogrammprodukt zur rechnergestützten Bahnplanung eines bewegbaren Geräts, insbesondere eines medizinischen Geräts“. Die Erfindung betrifft ein Verfahren zur rechnergestützten Bahnplanung eines bewegbaren Geräts, insbesondere eines medizinischen Geräts, in einem Raumbereich. In dem erfindungsgemäßen Verfahren werden Bahnen des bewegbaren Geräts in geeigneter Weise mit Hilfe von Risikovolumina charakterisiert, welche bei der Bewegung des Geräts entlang einer jeweiligen Bahn das Risiko von Kollisionen mit anderen Objekten beschreiben. Aus den Risikovolumina wird ein Gesamtrisiko einer Kollision des bewegbaren Geräts mit Objekten im Raumbereich bestimmt und, basierend auf einem Optimierungsverfahren, welches als ein Optimierungsziel ein minimales Kollisionsrisiko enthält, werden rechnergestützt optimale Bahnen bestimmt. In einer bevorzugten Variante der Erfindung wird bei der Bahnplanung ferner die Anordnung von Sensoren zur Detektion von Objekten berücksichtigt, so dass das Verfahren ferner auch eine optimale Sensoranordnung ausgibt. Basierend auf den optimalen Bahnen bzw. der optimalen Sensoranordnung kann das Gerät im Betrieb geeignet bewegt werden, um hierdurch das Risiko von Kollisionen möglichst gering zu halten. Ein bevorzugter Anwendungsbereich der Erfindung ist die Bewegung von medizinischen Geräten, beispielsweise einer Röntgeneinrichtung in der Form eines C-Bogens.
-
Das Verfahren ist speziell dazu ausgelegt, Bahnen unter Unsicherheit zu planen, wie es z.B. bei der Medizintechnik auftreten kann, wenn Raumbereiche von Personen nur mit einer gewissen Wahrscheinlichkeit eingenommen werden. Für die hier vorliegende Aufgabenstellung, bei der sich keine Personen im Arbeitsbereich des Roboters aufhalten, offenbart es keine vorteilhafte Lösung.
-
Erfindung
-
Es ist Aufgabe der Erfindung, ein gegenüber dem Stand der Technik verbessertes Verfahren zu schaffen, welches es ermöglicht, automatisiert, schnell und zuverlässig Bahnplanungen für den Manipulator durchzuführen.
-
Diese Aufgabe wird durch das Verfahren mit den Merkmalen von Anspruch 1 gelöst.
-
Ein erfindungsgemäßes Verfahren zum Bearbeiten der Oberfläche eines dreidimensionalen Objekts, wobei wenigstens ein Werkzeug zum Bearbeiten oder das Objekt von einem Manipulator derart entlang wenigstens einer Bearbeitungsbahn bewegt wird, dass eine Relativbewegung zwischen Werkzeug und Objekt erzeugt wird, und wobei der Manipulator mehrere Achsen mit veränderlichen Achsstellungen aufweist, zeichnet sich dadurch aus, dass ein A-priori-Achsstellungsverlauf für Bearbeitungsbahnen berechnet wird (Schritt 7).
-
Als Werkzeuge können insbesondere Tintenstrahl-Druckköpfe, Trockner, insbesondere UV-Strahlungsstrockner und/oder Plasmadüsen zum Einsatz kommen.
-
Der A-priori-Achsstellungsverlauf für Bearbeitungsbahnen kann auch ein hypothetischer A-priori-Achsstellungsverlauf sein (Begriffserklärungen: siehe folgende vier Absätze).
-
Der Begriff „Achsstellungsverlauf“ beschreibt in dieser Anmeldung den zeitlichen Verlauf der Stellung jeder Achse – der n Achsen, n bevorzugt 1, 2, 3, 4, 5 oder 6 – des Manipulators zwischen einer Anfangs- und Endachsstellung, z.B. in konstanten Zeitabständen. Eine Achsstellung kann bei einem Manipulator mit ausschließlich Drehachsen als Menge von n Winkelwerten, je nach Achsbeschränkung z.B. zwischen –350° und 350°, angegeben sein. Die Achsbeschränkungen können durch mechanische Anschläge und/oder durch Softwareschranken gegeben und für jede Achse unterschiedlich sein. Eine Achsstellung kann bei einem Manipulator mit ausschließlich Linearachsen als Menge von n Längenwerten angegeben sein. Auch „gemischte“ Achsstellungen (Winkelwerte und Längenwerte) sind bei entsprechend ausgestattetem Manipulator möglich.
-
Ein Beispiel für eine Achsstellung aus einem Achsstellungsverlauf eines Manipulators mit sechs Drehachsen: [–106.27, –80.88, 140.40, –222.13, 78.08, –246.21]. Hierbei beschreibt jeder Wert in den Klammern den Winkelwert der Stellung einer der Achsen des Manipulators.
-
Der Begriff „A-Priori“ in Verbindung mit dem Begriff „Achsstellungsverlauf“ beschreibt in dieser Anmeldung den Sachverhalt, dass ein Achsstellungsverlauf berechnet wird, der als Basis bzw. Ausgangs-Achsstellungsverlauf für die weiteren Schritte des erfindungsgemäßen Verfahrens dienen kann.
-
Der Begriff „hypothetisch“ in Verbindung mit dem Begriff „A-Priori-Achsstellungsverlauf“ beschreibt in dieser Anmeldung den Sachverhalt, dass sich der A-Priori Achsstellungsverlauf im Zuge der Durchführung weiterer Verfahrensschritte als – in der Praxis; wegen vorhandener Restriktionen – nicht realisierbar darstellt und daher verworfen oder modifiziert wird.
-
Ein Vorteil der Erfindung ist, dass sie die komplexe Aufgabe einer vollständigen vollautomatischen Bahnplanung für Roboter oder andere Maschinen zur Bebilderung von 3D-Objekten so in Teilaufgaben zerlegt, dass die Bahnplanung ohne nachteiligen Einfluss auf die Bearbeitungsbahnen schnell und zuverlässig ausgeführt werden kann. Dadurch findet sie schnell eine sehr vorteilhafte oder sogar die beste Bahnplanungslösung. Statt die Bahnen entsprechend der Ausführungsreihenfolge sequentiell zu planen, erfolgt erfindungsgemäß erst die Bahnplanung der Bearbeitungsbahnen und dann die der Übergangsbahnen.
-
Ein weiterer Vorteil ist, dass im Gegensatz zum Stand der Technik die Erfindung vorsieht, dass bei detektierter Kollision eines Werkzeugs mit der Oberfläche auf einer Übergangsbahn durch Überlagerung der Ursprungsbahn mit einer parabelförmigen oder kreisförmigen Verschiebung weg von der Oberfläche eine kollisionsfreie Übergangsbahn so geplant wird, dass an der Stelle der größten Annäherung entfernt von Anfangs- und Endpunkt der Bahn gerade der vorgegebene Mindestabstand eingehalten wird.
-
Weitere Vorteile des erfindungsgemäßen Verfahrens sind:
Die Gesamtheit der geplanten Bahnen zwischen einer Anfangsstellung und einer Endstellung des Roboters/Manipulators besteht aus Bearbeitungsbahnen und Übergangsbahnen zwischen Anfangsstellung, den Bearbeitungsbahnen und der Endstellung. Bei den Bearbeitungsbahnen, z.B. Druckbahnen oder Trocknungsbahnen, ist der kartesische Bahnverlauf (Positions- und Orientierungsverlauf) des Werkzeugs direkt relevant für den Prozess (und beeinflusst z.B. das Druckergebnis), bei den Übergangsbahnen höchstens indirekt (z.B. erlauben schneller ausführbare Übergangsbahnen zwischen den Druck- und Trocknungsbahnen größere Druckbahnlängen bei gleicher Trocknungszeit der Tinte und ein sanfter Verlauf der Übergangsbahnen senkt das Risiko unvollständiger Drucke wegen Düsenausfällen).
-
Die Kinematik des Roboters sowie Randbedingungen durch Achsrestriktionen, Kollisionsrestriktionen und ggf. Leitungsrestriktionen sind vorhanden, schränken die kartesisch möglichen Bewegungen ein und werden von dem Verfahren berücksichtigt.
-
Die Bahnen werden nicht sequentiell entsprechend ihrer Ausführungsreihenfolge geplant, sondern erst wird der kartesische Verlauf der Bearbeitungsbahnen geplant, dann wird eine vorteilhafte (möglichst die optimale) Kombination von Achsstellungsverläufen der Bearbeitungsbahnen geplant bzw. ausgewählt und dann werden die Übergangsbahnen geplant. Dabei können Schritte auch mehrfach ausgeführt werden, wenn nach ihrer Ausführung festgestellt wird, dass mit ihrem Ergebnis in den späteren Schritten keine realisierbaren Bahnen geplant werden können.
-
Für die Bestimmung der optimalen bzw. einer vorteilhaften Kombination von Achsstellungsverläufen der Bearbeitungsbahnen wird nicht der tatsächliche Verlauf der Übergangsbahnen berücksichtigt (der da ja noch nicht bekannt ist), sondern ein Kriterium, welches das Durchfahren von Singularitätsstellungen (Achskonfigurationswechsel) und die maximale Achswinkeländerung auf der jeweiligen Übergangsbahn einschließt.
-
Es kann mit Zeitersparnis auf einen aufwändigen Simulationslauf und bei vollständiger Datenbasis auch auf einen Testlauf der generierten Bahnen verzichtet werden.
-
Eine Weiterbildung der Erfindung kann vorsehen, dass mögliche Achsstellungsverläufe für die Bearbeitungsbahnen ermittelt werden (Schritt 8).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass geprüft wird, ob alle Bearbeitungsbahnen realisierbar sind (Schritt 9).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass präferierte Achsstellungsverläufe für jede Bearbeitungsbahn ausgewählt werden (Schritt 10).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass Übergangsbahnen zwischen einer Startstellung und einer Bearbeitungsbahn, zwischen wenigstens zwei Bearbeitungsbahnen oder zwischen einer Bearbeitungsbahn und einer Endstellung eines Werkzeugs oder mehrere Werkzeuge geplant werden (Schritt 11).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass geprüft wird, ob alle Übergangsbahnen gefunden sind (Schritt 12).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass aus den Bearbeitungsbahnen ein Steuerprogramm für den Manipulator erzeugt wird (Schritt 13).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass das Steuerprogramm ausgeführt wird (Schritt 14).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass zuvor 3D-Oberflächendaten und Bilddaten bereitgestellt werden (Schritt 1).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass zuvor Abbildungsparameter festgelegt werden (Schritt 2).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass zuvor Planungsparameter bestimmt werden (Schritt 3).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass zuvor der kartesische Verlauf der Bearbeitungsbahnen geplant wird (Schritt 4).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass zuvor geprüft wird, ob die Bahnplanung zulässig ist (Schritt 5).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass im Falle des Prüfungsergebnisses „nein“ geprüft wird, ob die Planungsparameter optimal sind (Schritt 6).
-
Eine Weiterbildung der Erfindung kann vorsehen, dass der Manipulator höchstens sechs Achsen (Bewegungsfreiheitsgrade) besitzt.
-
Ausführungsbeispiele
-
Die Erfindung und deren vorteilhafte Weiterbildungen werden im Folgenden am Beispiel konkreter Ausführungsformen und mit Bezug zu den Figuren beschrieben. Die Figuren zeigen:
-
1 einen Ablaufplan einer bevorzugen Ausführungsform des erfindungsgemäßen Verfahrens; und
-
2 bis 9 perspektivische Darstellungen einer Kfz-Tür und eines (schematisch und in verschiedenen Positionen dargestellten) Roboters zum Bewegen eines Druckkopfes und eines Trockners.
-
In der bevorzugten Ausführungsform wird die Erfindung für die automatische Bahnplanung und Erzeugung eines Roboterprogramms für einen Tintenstrahldrucker für 3D-Oberflächen genutzt. Der Tintenstrahldrucker besteht dabei zumindest aus einem Roboter oder Manipulator und einem Tintenstrahldruckkopf (Ink-Jet-Kopf) zum Aufsprühen von Farbe (Tinte, Lack) auf die zu bebildernde Oberfläche, kann aber auch weitere Komponenten enthalten, wie zusätzliche Druckköpfe für mehrfarbigen Druck, Pinning-Module, UV-Trockner, IR-Trockner, Grundierungseinrichtungen, Plasma- oder Beflammungsdüsen, Tintenversorgungen. Der Roboter kann den Druckkopf, die Druckköpfe oder anderen Werkzeuge relativ zur 3D-Oberfläche bewegen. Möglich ist, dass der Druckkopf und ggf. weitere Werkzeuge vom Roboter über die 3D-Oberfläche bewegt werden oder der Roboter das Objekt mit der zu bebildernden 3D-Oberfläche relativ zum Druckkopf und ggf. weiteren Werkzeugen bewegt. Bei dem Roboter handelt es sich vorzugsweise um einen Roboter mit 6 Achsen (Bewegungsfreiheitsgraden; vgl. Bezugszeichen 23.1 bis 23.6 der 2), wie einen 6-Achs-Knickarmroboter oder einen Linearroboter mit 3 Linearachsen und 3 zusätzlichen rotatorischen Achsen. Damit ist die Relativposition und Relativorientierung der Werkzeuge zur Oberfläche wählbar.
-
Erfindungsgemäß wird auf Basis eines 3D-Modells der Oberfläche des zu bebildernden Objekts, der Aufgabendefinition zur Platzierung eines Bildes auf der Oberfläche sowie der das Bild beschreibenden Daten automatisiert ein Roboterprogramm erzeugt, das die Bewegungen des Roboters beschreibt und Steuerbefehle für die Komponenten des Tintenstrahldruckers enthält, wie z.B. zur Synchronisierung von Ink-Jet-System und Trockner mit der Roboterbewegung. Dieses Programm kann der Roboter zum Bebildern der Oberfläche des Objekts dann ausführen. Der Begriff Bild schließt auch Schrift ein, so dass die Erfindung auch das Beschriften von 3D-Oberflächen umfasst.
-
Bei den gezeigten Beispielen wurden separate Druckbahnen für das Drucken mit einem Druckkopf und Trocknungsbahnen mit einem Strahlungstrockner geplant, wobei Druckkopf und Trockner in einem direkte Strahlung zwischen Trockner und Druckkopf verhindernden Winkel auf einem gemeinsamen Träger am Flansch eines Roboters montiert sind.
-
Die Bahnplanung erfolgt auf Basis von 3D-Oberflächendaten der zu bebildernden oder zu behandelnden Oberfläche. Diese können z.B. in Form von Dreiecken im STL-Format, durch NURBS oder als CAD-Daten gegeben sein. Um die Roboterbahnen zur Bebilderung der 3D-Oberfläche planen zu können, sind noch die digitalen Bilddaten bereitzustellen und die Lage des Bildes auf der Oberfläche und ggf. weitere Abbildungsparameter festzulegen. Zudem stellt noch die Lage der 3D-Oberfläche relativ zum Roboter einen wesentlichen Planungsparameter dar, welcher durch Verschieben und Verdrehen der 3D-Oberfläche relativ zum Roboter angepasst werden kann.
-
-
In 1 ist ein beispielhafter Ablauf der Bebilderung von 3D-Oberflächen mit restriktionsbasierter Bahnplanung dargestellt. Die folgenden Absätze beschreiben Verfahrensschritte, die der Vorbereitung für die erfindungsrelevanten Verfahrensschritte dienen.
-
3D-Oberflächendaten und Bilddaten bereitstellen (Schritt 1): Anfangs werden die 3D-Daten, welche die Oberfläche beschreiben, z.B. in Form einer STL-Datei mit die Oberfläche definierenden Dreiecken, sowie die Bilddaten bereitgestellt. Bei austauschbarem Bildinhalt beschreiben die Bilddaten zumindest die Größe des Bildes bzw. einen Platzhalter für das Bild.
-
Abbildungsparameter festlegen (Schritt 2): Die Abbildungsparameter legen die auszuführende Aufgabe fest. Sie beschreiben die gewünschte Position und Orientierung des Bildes auf der Oberfläche und ggf. weitere Eigenschaften der Abbildung, wie z.B. Verzerrungen. Diese Festlegungen können z.B. an Hand der visualisierten 3D-Oberflächendaten interaktiv durch den Bediener erfolgen oder automatisch an Hand allgemeiner Vorgaben, welche auf Basis von Eigenschaften des 3D-Modells konkretisiert werden. Das so definierte Ergebnis kann bereits vor der Bahnplanung zur Kontrolle in virtueller Form mit einer geeigneten Software visualisiert werden.
-
Planungsparameter bestimmen (Schritt
3): Da die Bahnplanung zahlreiche Freiheitsgrade aufweist, werden zunächst die Planungsparameter bestimmt, welche die Ausprägung dieser Freiheitsgrade festlegen. Zusammen mit dem Bahnplanungsalgorithmus, den 3D-Oberflächendaten und den Bilddaten resultieren aus den Planungsparametern eindeutige Bahnen. Die Planungsparameter beeinflussen die Qualität der Bearbeitungsbahnen, insbesondere die Druckqualität bei den Druckbahnen. Die Planungsparameter können im einfachsten Fall manuell durch den Bediener festgelegt werden. Ebenso ist es möglich, zumindest einen Teil der Planungsparameter automatisch zu bestimmen, z.B. durch den in
DE 10 2014 008 470 (Planung optimaler Bahnen beim 3D-Inkjet) beschriebenen Algorithmus. Beispiele für Planungsparameter sind die einzuhaltenden Abstände der Werkzeuge zur Oberfläche und die Art der Neigungsanpassung an die Oberfläche auf den Bearbeitungsbahnen, der Kollisionssicherheitsabstand, die Maximalwerte für Geschwindigkeit, Beschleunigung und Ruck der Werkzeuge auf den Bearbeitungs- und Übergangsbahnen, die Verlaufszeit der Tinte zwischen Druck und Trocknung, die Druckstreifenbreiten, die Anzahl der Druckbahnen, die Hauptbewegungsrichtung auf den Bearbeitungsbahnen, die Lage der 3D-Oberfläche zum Manipulator. Neben den leicht veränderlichen Planungsparametern gibt es noch zahlreiche weitere Daten, welche die Bahnplanung beeinflussen, wie die Kinematik des Manipulators, 3D-Modelle der Oberfläche, des Manipulators und ggf. weiterer für die Kollisionsvermeidung zu berücksichtigender Objekte. Als Besonderheit kann die Änderung der Lage der 3D-Oberfläche zum Manipulator manuelle Schritte zum Bewegen von Objekten einschließen.
-
Kartesischen Verlauf der Bearbeitungsbahnen (Messbahnen, Vorbehandlungsbahnen, Druckbahnen, Trocknungsbahnen, etc.) planen (Schritt 4): Mit den 3D-Oberflächendaten, den Bilddaten und den Planungsparametern werden die Bearbeitungsbahnen geplant, d.h. nach einem festgelegten Algorithmus berechnet. Dabei wird zunächst nur der kartesische Positions- und Orientierungsverlauf der Werkzeuge in einem Basiskoordinatensystem entlang der Bearbeitungsbahnen relativ zur 3D-Oberfläche geplant. Ein diese sechs Werte (drei Positionskoordinaten und drei Orientierungswerte) zusammenfassender Vektor wird in der Robotik häufig als Frame bezeichnet. Berechnet wird an dieser Stelle also nur der Frames-Verlauf, während der zugehörige Achswerteverlauf noch nicht berechnet werden braucht. Weil die Berechnung des Achswerteverlaufs aus dem Frames-Verlauf, d.h. die Berechnung der inversen Kinematik, häufig sehr aufwendig ist, wird so beträchtlicher Rechenaufwand vermieden.
-
Wenn die Planungsparameter, z.B. im Rahmen einer Optimierung gemäß der oben genannten
DE 10 2014 008 470 , zumindest teilweise automatisch bestimmt werden und dabei der kartesische Verlauf der Bearbeitungsbahnen im Rahmen der Planungsparameter-Optimierung bereits berechnet wurde, reduziert sich dieser Schritt auf die Auswahl der mit den optimalen Planungsparametern resultierenden Bahnplanung.
-
Prüfung, ob die Bahnplanung zulässig ist (Schritt 5): Wenn mit den Planungsparametern bereits auf Basis der Frames keine zulässige Bahnplanung resultiert, z.B. weil zur Vermeidung von Kollisionen der maximal erlaubte Düsenabstand überschritten würde, dann müssen die Planungsparameter geändert werden. Wurden die Planungsparameter manuell bestimmt, so kann der Bediener die Planungsparameter interaktiv so lange anpassen, bis eine zulässige Bahnplanung resultiert. Sehr vorteilhaft ist dabei die kurze mögliche Zykluszeit dieser Iterationen, da bis zu diesem Punkt keine inverse Kinematik berechnet werden braucht.
-
Prüfung, ob die Planungsparameter optimal sind (Schritt
6): Wurden die Planungsparameter im Rahmen einer Optimierung automatisch bestimmt, z.B. gemäß der oben genannten
DE 10 2014 008 470 , dann wird die Bahnplanung nur in Ausnahmefällen unzulässig sein. Dies kann z.B. auftreten, wenn aufgrund der Abmessungen des Druckkopfes in Verbindung mit einer problematischen Oberflächentopologie die zu bebildernden Bereiche überhaupt nicht erreichbar sind. In diesem Fall ist selbst mit den optimalen Planungsparametern keine zulässige Bahnplanung für die vorgegebene Aufgabe möglich. Durch eine Wahl anderer Abbildungsparameter kann dann z.B. die Bebilderung problematischer Oberflächenbereiche vermieden werden. Auch bei manueller Festlegung der Planungsparameter kann dies erforderlich sein, wenn selbst mit den besten gefundenen Planungsparametern keine zulässige Bahnplanung resultiert.
-
Die folgenden Absätze beschreiben Verfahrensschritte, die die erfindungswesentlichen Verfahrensschritte darstellen:
(Hypothetischen) A priori Achsstellungsverlauf für die Bearbeitungsbahnen berechnen (Schritt 7): Die Druckqualität wird hauptsächlich durch den bis zu diesem Punkt berechneten kartesischen Verlauf der Bearbeitungsbahnen bestimmt. Dabei war es nicht notwendig, die Achsstellungen zu berücksichtigen, wodurch eine aufwendige Berechnung der inversen Kinematik vermieden wurde und die Druckqualität sehr effizient optimiert werden konnte. Eine vollständige automatische Bahnplanung erfordert jedoch auch die Berücksichtigung der Achsbegrenzungen, der Vermeidung von Kollisionen des Roboterarms mit anderen Objekten und ggf. von Einschränkungen durch Leitungen zu bewegten Werkzeugen, z.B. zur Tintenversorgung und Ansteuerung eines Druckkopfes. Dazu ist die Kenntnis der jeweiligen Achsstellungen bei den Frames erforderlich. Mit Hilfe der inversen Kinematik lassen sich Achsstellungen zu den Frames im Arbeitsraum berechnen, wobei diese in der Regel nicht eindeutig sind. So ergeben sich z.B. bei der häufig anzutreffenden symmetrischen Anordnung der Achsen 4–6 (vgl. Bezugszeichen 23.4 bis 23.6 der 2) bei 6-Achs-Knickarmrobotern meist mehrere Möglichkeiten für Stellungen der Achsen 4–6 beim gleichen Frame, die schnell ineinander umgerechnet werden können. So entsprechen z.B. die acht Achsstellungen [–106.27, –80.88, 140.40, –222.13, 78.08, –246.21], [–106.27, –80.88, 140.40, –222.13, 78.08, 113.79], [–106.27, –80.88, 140.40, –42.13, –78.08, –66.21], [–106.27, –80.88, 140.40, –42.13, –78.08, 293.79], [–106.27, –80.88, 140.40, 137.87, 78.08, –246.21], [–106.27, –80.88, 140.40, 137.87, 78.08, 113.79], [–106.27, –80.88, 140.40, 317.87, –78.08, –66.21], [–106.27, –80.88, 140.40, 317.87, –78.08, 293.79] alle der gleichen kartesischen Stellung im Raum (d.h. dem gleichen Frame).
-
Da es für jede Bearbeitungsbahn in der Regel mehrere zu deren kartesischem Verlauf passende Achsstellungsverläufe gibt und für die dazwischen verlaufenden Übergangsbahnen prinzipiell unendlich viele Möglichkeiten zulässiger Bahnverläufe existieren, stellt die vollständige automatische Bahnplanung ein komplexes Planungsproblem dar, dessen Lösung die Voraussetzung für eine wirtschaftliche Losgröße 1-Produktion ist. Nicht nur durch die erforderliche Kenntnis der Achsstellungsverläufe und den häufig großen Aufwand zur Berechnung der inversen Kinematik sind die Berechnung und der Vergleich aller möglichen Bahnkombinationen in der Regel nicht möglich oder mit hohen Planungszeiten verbunden.
-
Zur erfindungsgemäßen Lösung des komplexen Planungsproblems wird die Bahnplanung in Teilprobleme zerlegt, welche es erlauben, die Zahl der erforderlichen Berechnungen der inversen Kinematik und damit die Rechenzeit weitgehend zu reduzieren.
-
Zu dem kartesischen Verlauf jeder Bearbeitungsbahn wird mit Hilfe der inversen Kinematik zunächst ein zugehöriger (hypothetischer) a priori Achsstellungsverlauf ermittelt. Dabei ist die Einhaltung von Restriktionen unerheblich, da es sich in der Regel nicht um den endgültig geplanten Achsstellungsverlauf handelt.
-
Mögliche Achsstellungsverläufe für die Bearbeitungsbahnen ermitteln (Schritt 8): Aus dem (hypothetischen) Achsstellungsverlauf können ohne Berechnung der inversen Kinematik die anderen zum gleichen kartesischen Verlauf gehörigen Achsstellungsverläufe abgeleitet werden. Bei Durchfahren einer Singularitätsstellung auf einer Bearbeitungsbahn würde die Bahngenauigkeit beeinträchtigt und die Bahngeschwindigkeit stark schwanken. Das Ausführungsbeispiel sieht daher vor, Bearbeitungsbahnen mit solchen Achsstellungsverläufen als nicht realisierbar zu klassifizieren. Solange keine Singularitätsstellungen durchfahren werden, ist aufgrund der Stetigkeit des Achsstellungsverlaufes bei einer 6-Achs-Kinematik, wie z.B. einem Knickarm-Roboter, eine Achsstellung durch den zugehörigen Frame und die unmittelbar vorhergehende Achsstellung eindeutig festgelegt. Aus der Anfangsachsstellung des (hypothetischen) Achsstellungsverlaufs und den Achs- und Leitungsrestriktionen lassen sich alle restriktionseinhaltenden Anfangsachsstellungen je Bearbeitungsbahn berechnen. Auch die zugehörigen weiteren Achsstellungsverläufe lassen sich mit dem (hypothetischen) Achsstellungsverlauf dann berechnen. Mögliche Achsstellungsverläufe einer Bearbeitungsbahn sind dann all jene, welche die Restriktionen für die gesamte Bahn einhalten und auch keine Singularitätsstellung durchlaufen.
-
Prüfung, ob alle Bahnen realisierbar sind (Schritt 9): Eine Bearbeitungsbahn ist dann realisierbar, wenn es zumindest einen möglichen Achsstellungsverlauf dazu gibt. Sind nicht alle Bearbeitungsbahnen realisierbar, so sind die Planungsparameter oder ggf. die Abbildungsparameter anzupassen. Wenn eine Bearbeitungsbahn den Arbeitsraum des Manipulators verlässt, kann ggf. durch eine Lageänderung der 3D-Oberfläche zum Manipulator (bzw. der Werkzeuge zum Manipulator bei bewegter Oberfläche) eine günstigere Platzierung der Bearbeitungsbahnen innerhalb des Arbeitsraums des Manipulators erreicht werden, welche eine implizite Änderung der Planungsparameter bedeutet. Durch das erfindungsgemäße Verfahren ist die Realisierbarkeit der Bearbeitungsbahnen bereits frühzeitig bekannt, so dass die Planungszeit auch bei iterativ erforderlichen Parameteränderungen gering bleibt.
-
Präferierten Achsstellungsverlauf für jede Bearbeitungsbahn auswählen (Schritt 10): Wenn verschiedene Achsstellungsverläufe zur Realisierung des kartesischen Verlaufs einer Bearbeitungsbahn möglich sind, dann wird im Ausführungsbeispiel nun der präferierte Verlauf ausgewählt. Dieser Schritt erlaubt es, die Komplexität der weiteren Bahnplanung durch die Auswahl einer Kombinationsmöglichkeit deutlich zu reduzieren und dadurch die Bahnplanung zu beschleunigen.
-
Kriterien zur Auswahl der präferierten Achsstellungsverläufe sind die Vermeidung von Achskonfigurationswechseln (Vermeidung des Durchfahrens von Singularitäten auch auf den Übergangsbahnen) und ein insgesamt möglichst kurzer Bahnverlauf. Da die Länge der Bearbeitungsbahnen bereits feststeht, reicht eine Betrachtung der Übergangsbahnen. Deren Anfangs- und Endachsstellung ist durch die End- und Anfangsachsstellung der Bearbeitungsbahnen sowie die Start- und Endachsstellungen der Gesamtplanung gegeben, von welcher der Manipulator am Anfang startet und bei der er zum Schluss wieder endet.
-
Im ersten Schritt wird versucht, die Menge der Achsstellungsverläufe auf solche mit einheitlicher Achskonfiguration zu reduzieren, nach Möglichkeit mit der Achskonfiguration der Startstellung. Die Achskonfiguration der Achse 5 (vgl. Bezugszeichen 23.5 der 2) zweier Achsstellungen eines üblichen 6-Achs-Knickarmroboters stimmt z.B. überein, wenn die Winkel der Achse 5 das gleiche Vorzeichen haben. Bei gleicher Konfiguration braucht bei der Fahrt zwischen den Achsstelllungen dann keine Singularitätsstellung durchfahren zu werden.
-
Im zweiten Schritt des bevorzugten Ausführungsbeispiels wird die bezüglich einer Gütefunktion am besten bewertete Kombination von Achsstellungsverläufen der Bearbeitungsbahnen gewählt. Weil der konkrete Verlauf der Übergangsbahnen erst später geplant wird, erfolgt die Bewertung an Hand von bereits bekannten Eigenschaften, wie die Häufigkeit erforderlichen Durchfahrens von Singularitätsstellungen, die maximal erforderliche Achsstellungsänderung auf den Übergangsbahnen und ggf. die maximale Leitungsbelastung. Die Leitungsbelastung ist dann relevant, wenn Leitungen, z.B. zur Tintenversorgung, zu durch den Manipulator bewegten Werkzeugen führen. Selbst bei Einhaltung der Leitungsrestriktionen werden Leitungen tendenziell stärker belastet, wenn sie stärker verdreht oder gebogen werden. Leitungsbelastung und die Einhaltung von Leitungsrestriktionen können bei geeigneter Leitungsführung z.B. über die Relativstellung der Achsen 4 und 6 grob bestimmt oder mit Hilfe eines umfassenderen die Leitungsführung einschließenden mechanischen Modells des Manipulators genauer berechnet werden. Mit der maximal erforderlichen Achsstellungsänderung einer Übergangsbahn zwischen der letzten Achsstellung der vorhergehenden Bearbeitungsbahn und der ersten Achsstellung der nachfolgenden Bearbeitungsbahn steigt unter Annahme einer PTP-Bewegung auch die Zeitdauer für die Übergangsbahn. Da der genaue Bahnverlauf der Übergangsbahnen zu diesem Zeitpunkt noch nicht feststeht, ist diese Annahme ein wesentlicher Baustein, die Komplexität der Bahnplanung durch eine gütebasierte Vorabauswahl der Achsstellungsverläufe der Bearbeitungsbahnen zu reduzieren. Folgt auf jede Druckbahn eine separate Trocknungsbahn, z.B. um gedruckte UV-Tinte innerhalb eines begrenzten Verlaufszeitfensters mit einem UV-Strahler zu trocknen, so ist für den Prozess die Zeitdauer der Übergangsbahn zwischen Druckbahn und Trocknungsbahn relevant. Dafür wird im bevorzugten Ausführungsbeispiel die Gewichtung der maximal erforderlichen Achsstellungsänderung dieser Übergangsbahnen in der Gütefunktion höher gewählt als die der anderen Übergangsbahnen, deren Länge ja nur die Gesamtdauer aller Bahnen beeinflusst, nicht jedoch die Prozessqualität.
-
Um die bezüglich der Gütefunktion besten Achsstellungsverläufe für alle Bearbeitungsbahnen auszuwählen, müssen alle Kombinationen möglicher Achsstellungsverläufe berücksichtigt werden. Bei umfangreicheren Planungsaufgaben können sich allerdings sehr viele Kombinationsmöglichkeiten ergeben, bei 10 Druck- mit nachfolgenden Trocknungsbahnen mit je vier möglichen Achsstellungsverläufen z.B. bereits über eine Billion (genau 4 ^ 20 = 1.099.511.627.776). Erfindungsgemäß wird das umfangreiche Planungsproblem deshalb an dieser Stelle wieder in unabhängig lösbare Teilprobleme zerlegt. Abhängig von der Kinematik des Manipulators, der Anordnung der Werkzeuge auf dem Manipulator und der Lage sowie der Orientierung der Oberfläche zum Manipulator (oder bei bewegter Oberfläche der Anordnung der Oberfläche auf dem Manipulator und der Lage sowie der Orientierung der Werkzeuge zum Manipulator), ergibt sich für manche Bearbeitungsbahnen häufig nur ein möglicher Achsstellungsverlauf, während für andere viele Möglichkeiten existieren. Die Erfindung sieht daher vor, Blöcke aufeinanderfolgender Bearbeitungsbahnen mit mehreren möglichen Achsstellungsverläufen zwischen Bearbeitungsbahnen mit nur einem möglichen Achsstellungsverlauf zu bilden und in diesen Blöcken separat die beste Kombination von Achsstellungsverläufen zu ermitteln. Im obigen Beispiel reduzieren sich z.B. die Zahl der zu untersuchenden Kombinationsmöglichkeiten um einen Faktor 838.861 auf 4 ^ 9 + 4 ^ 10 = 1.310.720, falls es für die fünfte Trocknerbahn nur einen möglichen Achsstellungsverlauf gibt. Häufig resultieren sogar Blöcke der Länge 1, wenn etwa durch die Anordnung der unterschiedlichen Werkzeuge auf dem Manipulator für alle Trocknungsbahnen nur jeweils ein Achsstellungsverlauf möglich ist. Trotzdem können sich auch innerhalb der Blöcke sehr viele Kombinationsmöglichkeiten ergeben. Die Erfindung sieht daher vor, dass nur bis zu einem Grenzwert (z.B. 1024) alle möglichen Kombinationen (Brute Force) innerhalb der Blöcke berücksichtigt werden. Übersteigt die Zahl möglicher Kombinationsmöglichkeiten den Grenzwert, dann werden heuristikbasiert nur solche ausgewählt, zu denen erfahrungsgemäß die beste Kombinationsmöglichkeit gehört. Für mehrere näherungsweise in die gleiche Richtung verlaufende Bearbeitungsbahnen, wie sie sich beim Aufbau eines Druckbildes aus seitlich aneinandergrenzenden Bahnen ergeben, werden im bevorzugten Ausführungsbeispiel dann nur jene untersucht, bei denen die Achsstellungen benachbarter Bahnen für das selbe Werkzeug am ähnlichsten sind. Bei abwechselnden Druck- und Trocknungsbahnen reicht es dann aus, alle Kombinationen möglicher Achsstellungsverläufe der ersten Druckbahn und der ersten Trocknungsbahn eines Blockes zu untersuchen und für die weiteren Bearbeitungsbahnen des Blockes nur jenen Achsstellungsverlauf zu kombinieren, bei welchem der Betrag der maximalen Achsstellungsdifferenz zur vorhergehenden Druck- bzw. Trocknungsbahn bei der Anfangsachsstellung am kleinsten ist. Die Zahl der zu untersuchenden Kombinationsmöglichkeiten würde sich bei obigem Beispiel dann um den Faktor 68.719.476.736 auf 16 reduzieren, so dass eine kurze Planungszeit ermöglicht wird, wobei eine nahezu optimale mit hoher Wahrscheinlichkeit sogar die optimale Kombination der Achsstellungsverläufe gefunden wird.
-
Übergangsbahnen zwischen Startstellung, Bearbeitungsbahnen und Endstellung planen (Kartesischer und Achsstellungsverlauf) (Schritt 11): Da nun neben der Startachsstellung und der Endachsstellung, welche der Manipulator am Anfang und Ende des Programms einnimmt, auch der Achsstellungsverlauf aller Bearbeitungsbahnen vorliegt, sind damit die Anfangs- und Endachsstellungen aller Übergangsbahnen festgelegt, so dass diese nun unabhängig voneinander und auf Multiprozessorsystemen sogar parallel geplant werden können. Durch die Unabhängigkeit vereinfacht sich aber vor allem die Komplexität der Bahnplanung wesentlich, da keine Kombination möglicher Übergangsbahnen mit ihren zahlreichen Freiheitsgraden betrachtet werden braucht. Dadurch kann die Planung der Übergangsbahnen schneller erfolgen und auch besser, weil sich Spielraum für den Einsatz fortgeschrittener und aufwendigerer Verfahren eröffnet, welche mehr Rechenaufwand erfordern. Prinzipiell kann eine Übergangsbahn unter Einhaltung der Achs-, Leitungs- und Kollisionsrestriktionen beliebig zwischen ihren Anfangs- und der Endachsstellung verlaufen, so dass sie unendlich viele Freiheitsgrade hat. Um eine hohe Produktivität zu erreichen, ist allerdings eine möglichst kurze (oder schnelle) Übergangsbahn vorteilhaft. Ohne Berücksichtigung des Werkzeugs und der dafür einzuhaltenden dynamischen Restriktionen erlaubt bei Manipulatoren normalerweise eine PTP-Bewegung (Point To Point) die schnellste Bewegung. Dabei bewegen sich die Achsen zwischen einer Beschleunigungs- und einer Bremsphase gleichzeitig mit gleichförmiger Geschwindigkeit zwischen ihrer Anfangs- und Endstellung, wobei über Achsdynamikparameter die Grenzwerte von Geschwindigkeit, Beschleunigung und Ruck vorgegeben werden. Im bevorzugten Ausführungsbeispiel wird als Ausgangspunkt einer möglichen Übergangsbahn der Verlauf einer solchen PTP-Bewegung angenommen, der durch eine hinreichende Zahl von Stützstellen definiert wird, an denen die Achsen den gleichen prozentualen Anteil zwischen der Anfangs- und Endachsstellung zurückgelegt haben. Mit Hilfe der direkten Kinematik kann zu jeder Stützstelle der zugehörige Frame berechnet werden, d.h. die kartesische Position und Orientierung am TCP (Tool Center Point), welche sich bei der jeweiligen Achsstellung ergibt. Falls auf dieser Übergangsbahn Kollisionen des Werkzeugs mit der Oberfläche auftreten würden, wird durch eine Überlagerung der kartesischen Bahn mit einer kreisförmigen, parabelförmigen, Polynom- oder Spline-basierten oder anderen stetigen und nach Möglichkeit zweifach stetig differenzierbaren Verschiebungsfunktion zwischen Anfangs- und Endpunkt die kartesische Bahn gerade so weit von der Oberfläche weg verschoben, dass unter Wahrung eines Sicherheitsabstands eine Kollision vermieden wird. Im Anfangs- und Endpunkt der Bahn ist die Verschiebung durch die Verschiebungsfunktion dabei 0. In den meisten Fällen resultieren dadurch realisierbare Übergangsbahnen, die einer TCP-Bewegung sehr ähnlich kommen und somit kurz sind und schnell ausgeführt werden können. Auch potentielle Kollisionen des Werkzeugs mit anderen erfassten Objekten als der Oberfläche können durch solche Verschiebungsbahnen vermieden werden, wobei die Verschiebungsrichtung dann ggf. anzupassen ist. Um eine Realisierbarkeit sicherzustellen, werden die resultierenden Bahnen auf die Einhaltung aller Achs-, Leitungs- und Kollisionsrestriktionen geprüft, also auch solcher des Manipulators mit der Oberfläche und anderen erfassten Objekten. Erst zu diesem späten Zeitpunkt der Restriktionsprüfung ist die Kenntnis der Achsstellungen der Übergangsbahnen erforderlich, so dass aufwendige Berechnungen der inversen Kinematik auf ein Minimum reduziert werden und die Bahnplanung schnell ausgeführt werden kann. Wenn keine Verschiebung erforderlich ist, kann eine Berechnung der inversen Kinematik an dieser Stelle sogar vollständig entfallen, weil die Achsstellungen ja als Ausgangspunkt der direkten Kinematik bereits bekannt sind. Sollten in seltenen Fällen Restriktionen verletzt sein, so können die Bahnen wiederum mit Verschiebungsfunktionen angepasst oder alternative Bahnverläufe gewählt werden.
-
Unterliegt das Werkzeug starken dynamischen Beschränkungen, z.B. durch die Gefahr von Druckproblemen nach großen Beschleunigungen des Druckkopfes, so wird die Dauer der Übergangsbahnen in erster Linie durch kartesische Dynamikgrenzwerte statt durch die Dynamikgrenzwerte der Achsen bestimmt. Für das Werkzeug kartesisch kurz geplante Bahnen sind dann schneller ausführbar als PTP-Bewegungen. In der bevorzugten Ausführungsform werden deshalb zunächst kurz verlaufende Übergangsbahnen zwischen der Anfangsstellung und der Endstellung berechnet, auf Realisierbarkeit und Einhaltung der geforderten Endachsstellung geprüft und im positiven Fall gewählt. Dabei ergeben sich einige Freiheitsgrade, welche zu alternativen Bahnverläufen führen, die ebenso geprüft werden können, bis eine geeignete Bahn gefunden wurde. Wenn mehrere Werkzeuge für verschiedene Bearbeitungsbahnen vom Manipulator gleichzeitig bewegt werden, z.B. ein Druckkopf und ein Trockner, so kann die kartesische Planung prinzipiell für jedes dieser Werkzeuge erfolgen, am besten aber für einen Werkzeugpunkt, welcher zu einer möglichst geringen Belastung der empfindlichsten Komponente, z.B. des Druckkopfs führt. Ein kurzer Übergang ergibt sich aus einer geraden Verbindung der Anfangsstellung mit der Endstellung, entlang der Stützstellen in geeignetem Abstand berechnet werden können. Die Rotation des Werkzeugs von der kartesischen Anfangs- in die Endorientierung erfolgt entsprechend, so dass zwischen einer Beschleunigungs- und einer Bremsphase eine konstante Bewegungs- und Rotationsgeschwindigkeit resultiert. Für die kartesische Rotation ergeben sich unterschiedliche Drehrichtungsmöglichkeiten und auch Drehungen um mehr als 360° sind möglich. Zulässige Bahnen überführen die Anfangsachsstellung in die korrekte Endachsstellung und halten Kollisions-, Achs- und ggf. Leitungsrestriktionen ein. Sind Kollisionsrestriktionen verletzt, so können die Bahnen wie bei den achsstellungsbasierten Übergangsbahnen oben beschriebenen durch Verschiebungsfunktionen angepasst werden.
-
Die Verletzung von Achsstellungs- oder Leitungsrestriktionen kann eventuell ebenfalls mit Hilfe von Verschiebungsfunktionen eliminiert werden, z.B. wenn auf einer kreisförmigen Übergangsbahn die Achsrestriktionen eingehalten werden, auf einer geraden Übergangsbahn aber nicht. Da es hier sehr viele Möglichkeiten der Anpassung gibt und eine geeignete Anpassung nicht nur von der Roboterkinematik, sondern auch von der Lage der Oberfläche (bzw. der Lage der Werkzeuge bei bewegter Oberfläche) zum Manipulator abhängt, ist die Umsetzung der Anpassung aufwendig. Die bevorzugte Ausführungsform sieht daher vor, dass zunächst nicht angepasste kartesisch geplante gerade Übergangsbahnen geplant werden und falls keine davon alle Restriktionen einhält, dann die oben beschriebenen auf Basis der Achsstellungen geplanten und ggf. mit Verschiebungsfunktionen angepassten Übergangsbahnen geplant werden.
-
Prüfung, ob alle Bahnen gefunden sind (Schritt 12): Bisher wurden beim praktischen Einsatz dieses Verfahrens stets geeignete Übergangsbahnen gefunden. Falls für zumindest eine Übergangsbahn dennoch keine Lösung gefunden würde, kann prinzipiell durch eine Änderung der Planungsparameter oder Abbildungsparameter der Verlauf der Bahnen im Arbeitsbereich des Roboters verändert werden, so dass für diese geänderte Parametrierung Übergangsbahnen gefunden werden. Eine starke Einflussnahme ermöglicht insbesondere eine Lageänderung der 3D-Oberfläche zum Manipulator (bzw. der Werkzeuge zum Manipulator bei bewegter Oberfläche), wenn es eine günstigere Platzierung der Bahnen im Arbeitsbereichs des Manipulators gibt. Praktisch bedeutet dies z.B. eine Verschiebung eines zu bebildernden Autos, welche sich als Translation des 3D-Objekts im Roboterkoordinatensystem in den Planungsparametern niederschlägt.
-
Die folgenden Absätze beschreiben Verfahrensschritte, die der Umsetzung der erfindungswesentlichen Verfahrensschritte bzw. der daraus erhaltenen Ergebnisse auf einem Roboter dienen.
-
Steuerprogramm aus geplanten Bahnen erzeugen (Schritt 13): Wenn auch für alle Übergangsbahnen realisierbare Verläufe gefunden wurden, wird in der bevorzugten Ausführungsform ein Steuerprogramm erzeugt, das alle auszuführenden Bahnen für die Bewegung des Manipulators als Stützstellen von Bewegungsbefehlen vorzugsweise Spline-Befehlen enthält. Dabei werden die Stützstellen vorzugsweise als Frames vorgegeben, welche die Positionen und Orientierungen eines Werkzeugs zusammenfassen oder alternativ als Achsstellungen. Falls Bahnen Singularitätsstellungen durchlaufen oder ihnen sehr nahe kommen, werden diese Bahnen in der bevorzugten Ausführungsform zumindest im Bereich der Singularitätsstellungen durch Achsstellungen vorgegeben und mit Hilfe von achsbasierten Bewegungsbefehlen, wie z.B. PTP Befehlen bei Robotern definiert. Zusätzlich enthält das Steuerprogramm noch weitere Befehle zur Ansteuerung der Werkzeuge und ggf. weiterer Komponenten, wie z.B. zur Synchronisierung der Druckköpfe und des Trockners mit der Roboterbewegung. Die Sprache des Steuerprogramms hängt dabei von der Steuerung ab, welche den Manipulator ansteuert. Insbesondere kann es sich hierbei um ein G-Code-Programm handeln oder ein Roboterprogramm, wenn der Manipulator Teil eines Roboters ist.
-
Steuerprogramm ausführen und 3D-Oberfläche behandeln (Vorbehandeln, Bedrucken, Trocknen, etc.) (Schritt 14): Das fertig generierte Steuerprogramm wird dann je nach zu realisierender Losgröße einmal oder auch mehrmals zur Bebilderung der Oberfläche(n) ausgeführt. Wird das Programm zum Bebildern mehrerer gleicher Objekte mehrmals ausgeführt, müssen diese z.B. durch eine geeignete Halterung in gleicher Lage relativ zum Manipulator platziert werden (bzw. deren bewegte Oberflächen müssen sich in gleicher Lage zum Flansch des Manipulators befinden).
-
In den 3 bis 9 sind beispielhaft Bahnen einer Bebilderungsaufgabe dargestellt, aus denen wesentliche Aspekte des beschriebenen Verfahrens zu erkennen sind. Die Planung erfolgte für einen Manipulator 23 eines 6-Achs-Knickarmroboters mit rein serieller Kinematik. In den Figuren ist das zur Planung verwendete 3D-Modell der Oberfläche 20 (im gezeigten Beispiel: eine Kfz-Tür), die geplante Druckbahn 21 sowie Repräsentationen der Werkzeuge 26, 27 und des Manipulators 23 dargestellt. Der Manipulator 23 ist durch ein schlankes kinematisches Modell dargestellt, das Aufschluss über die Achsstellungen gibt. Der Druckkopf 26 ist durch ein kleineres und der Trockner 27 durch ein größeres Rechteck dargestellt, die jeweils der auf der Bearbeitungsbahn 21 der Oberfläche 20 zugewandten unteren Begrenzungsfläche des Werkzeugs entsprechen. Durch die schlanke Darstellung kann der zeitliche Verlauf besser durch zeitlich aufeinanderfolgende Momentaufnahmen in der gleichen Figur ausgedrückt werden. So ist ein Verständnis der Beispielbahnen ohne Animation möglich.
-
Durch die gewählte, gewinkelte Anordnung von Druckkopf 26 und Trockner 27 auf dem Roboterflansch 28 über je eine mechanische Verbindung 24, 25 (z. B. je einen Träger) wird vermieden, dass direkte UV-Strahlung vom Trockner die Tinte am Druckkopf trocknet und dadurch dessen Düsen verstopfen. Diese Anordnung kann als Beispiel für das gemeinsame Bewegen mehrerer Werkzeuge durch einen Roboter dienen, wobei ein Werkzeugwechsel einfach durch eine andere Roboterstellung realisierbar ist. Durch die stark unterschiedliche Ausrichtung des Werkzeugträgers am Roboterflansch auf den Druckbahnen gegenüber den Trocknungsbahnen wird allerdings aufgrund von Restriktionen das Finden realisierbarer Bahnen deutlich erschwert.
-
2 zeigt die Anfangs- und identische Endstellung des Manipulators 23 in seinem Koordinatensystem, die für alle Beispiele gelten, sowie eine Fahrzeugtür 20 mit einer schräg verlaufenden Druckbahn 21 zwischen den beiden auf der Tür dargestellten Linien 22. Druckkopf 26 und Trockner 27 sind in hinreichendem Abstand am Flansch 28 des Manipulators 23 montiert und werden immer gemeinsam bewegt.
-
In 3 ist die Übergangsbahn von dieser Anfangsstellung bis zur ersten Bearbeitungsbahn durch aufeinanderfolgende Momentaufnahmen dargestellt. Die Planung der dargestellten karthesisch geplanten Übergangsbahn war hier ohne Restriktionsverletzung möglich.
-
4 veranschaulicht zur besseren Übersicht die gleiche Bewegung aber ohne Darstellung des Trockners 27. Im Vergleich dazu wurde der erste Teil der Bahn in 5 als linearer Übergang der Achsstellungen analog einer PTP-Bewegung geplant, so dass Druckkopf 26 und Trockner 27 auf den resultierenden Kurven bewegt werden. Diese Bewegung könnte der Manipulator 23 ohne Berücksichtigung der Dynamikgrenzwerte schneller ausführen, durch die dynamischen Beschränkungen des Druckkopfes 26 ist aber jene in 4 dennoch in kürzerer Zeit und schonender für den Druckkopf 26 ausführbar. Bei einer als linearer Achsübergang geplanten Übergangsbahn resultieren zudem Bewegungsbahnen der Werkzeuge 26, 27 mit erhöhter Kollisionsgefahr. Zur Vermeidung dadurch erforderlicher Bahnanpassungen kann die Übergangsbahn auch wie in 5 gezeigt aus zwei Teilbahnen zusammengesetzt werden. Beim zweiten Teil der Übergangsbahn nähert sich der Druckkopf 26 in 5 orthogonal zur Oberfläche seiner Ausgangsstellung für die erste Druckbahn. Durch diese optional vorgesehene kurze zusätzliche Bewegung kann die Wahrscheinlichkeit für erforderliche Bahnanpassungen zur Kollisionsvermeidung besonders bei anspruchsvollen Planungsaufgaben deutlich reduziert werden.
-
6 zeigt in entsprechender Darstellung den Verlauf der Druckbahn und 8 Fehler! Verweisquelle konnte nicht gefunden werden. den der Trocknungsbahn, wobei hier der Trockner 27 statt dem Druckkopf 26 visualisiert ist.
-
Die Übergangsbahn zwischen diesen beiden Bahnen zeigt 7. In dieser wird der Druckkopf 26 von der Oberfläche 20 weg geschwenkt und der Trockner 27 zu ihr hin geschwenkt. Diese Übergangsbahn wurde als Bahn mit kartesisch geradem Positionsverlauf für den Druckkopf 26 geplant.
-
9 schließlich zeigt die Übergangsbahn zwischen der Trocknungsbahn und der Endstellung mit der Bewegung von Druckkopf 26 und Trockner 27. Auch hier wurde die Bahn des Druckkopfes 26 kartesisch entlang einer Geraden geplant.
-
Die Vorteilhaftigkeit des erfindungsgemäßen Verfahrens wird im Folgenden an Hand der Achsbereichsdaten eines sehr einfachen Beispiels mit einer Druck- und einer Trocknungsbahn besonders deutlich:
-
Für die in 2 bis 9 dargestellte Planungsaufgabe ergeben sich im Schritt 8 „Mögliche Achsstellungsverläufe für die Bearbeitungsbahnen ermitteln“ der 1 für die Druckbahn acht und für die Trocknungsbahn sechs mögliche Varianten für die gleiche sinnvolle Anfangsachsstellung der Achsen 1 bis 3 (Bezugszeichen 23.1, 23.2, 23.3). Diese lauten, jeweils beschrieben durch die Anfangs- und Endachsstellungen:
-
Druckbahn
-
Möglichkeit 1:
-
- [–106.27, –80.88, 140.40, –222.13, 78.08, –246.21] ... [–76.46, –81.12, 123.63, –194.97, 41.89, –243.23]
-
Möglichkeit 2:
-
- [–106.27, –80.88, 140.40, –222.13, 78.08, 113.79] ... [–76.46, –81.12, 123.63, –194.97, 41.89, 116.77]
-
Möglichkeit 3:
-
- [–106.27, –80.88, 140.40, –42.13, –78.08, –66.21] ... [–76.46, –81.12, 123.63, –14.97, –41.89, –63.23]
-
Möglichkeit 4:
-
- [–106.27, –80.88, 140.40, –42.13, –78.08, 293.79] ... [–76.46, –81.12, 123.63, –14.97, –41.89, 296.77]
-
Möglichkeit 5:
-
- [–106.27, –80.88, 140.40, 137.87, 78.08, –246.21] ... [–76.46, –81.12, 123.63, 165.03, 41.89, –243.23]
-
Möglichkeit 6:
-
- [–106.27, –80.88, 140.40, 137.87, 78.08, 113.79] ... [–76.46, –81.12, 123.63, 165.03, 41.89, 116.77]
-
Möglichkeit 7:
-
- [–106.27, –80.88, 140.40, 317.87, –78.08, –66.21] ... [–76.46, –81.12, 123.63, 345.03, –41.89, –63.23]
-
Möglichkeit 8:
-
- [–106.27, –80.88, 140.40, 317.87, –78.08, 293.79] ... [–76.46, –81.12, 123.63, 345.03, –41.89, 296.77]
-
Trocknungsbahn
-
Möglichkeit 1:
-
- [–109.52, –83.91, 144.79, –224.91, 80.17, –5.96] ... [–75.80, –83.92, 126.29, –192.05, 41.13, –5.27]
-
Möglichkeit 2:
-
- [–109.52, –83.91, 144.79, –44.91, –80.17, –185.96] ... [–75.80, –83.92, 126.29, –12.05, –41.13, –185.27]
-
Möglichkeit 3:
-
- [–109.52, –83.91, 144.79, –44.91, –80.17, 174.04] ... [–75.80, –83.92, 126.29, –12.05, –41.13, 174.73]
-
Möglichkeit 4:
-
- [–109.52, –83.91, 144.79, 135.09, 80.17, –5.96] ... [–75.80, –83.92, 126.29, 167.95, 41.13, –5.27]
-
Möglichkeit 5:
-
- [–109.52, –83.91, 144.79, 315.09, –80.17, –185.96] ... [–75.80, –83.92, 126.29, 347.95, –41.13, –185.27]
-
Möglichkeit 6:
-
- [–109.52, –83.91, 144.79, 315.09, –80.17, 174.04] ... [–75.80, –83.92, 126.29, 347.95, –41.13, 174.73]
-
Im Schritt 9 „Prüfung, ob alle Bahnen realisierbar sind“ wird folglich festgestellt, dass Druckbahn und Trocknungsbahn realisierbar sind.
-
Im Schritt 10 „Präferierten Achsstellungsverlauf für jede Bearbeitungsbahn auswählen“ wird zunächst festgestellt, dass beide Bahnen mit gleichem Vorzeichen der Achse 5 wie in der Anfangs- und Endstellung realisierbar sind (in diesem Fall positiv), so dass die anderen Möglichkeiten verworfen werden können.
-
Damit verbleiben 8 mögliche Kombinationen von Druck- und Trocknungsbahn.
-
Ein Vergleich der erforderlichen Achswinkeländerungen auf den Übergangsbahnen ergibt, dass die Kombination von Möglichkeit 2 der Druckbahn und Möglichkeit 1 der Trocknungsbahn am besten und die Kombination von Möglichkeit 5 der Druckbahn und Möglichkeit 1 der Trocknungsbahn am zweitbesten ist.
-
Weil die Trocknungszeit der Tinte zwischen Druck und Trocknung im Beispielprozess beschränkt ist, wird die maximale Achswinkeländerung dieser Übergangsbahn höher gewichtet als jene der anderen Übergangsbahnen.
-
Bei sequentiell gemäß der zeitlichen Ausführungsreihenfolge erfolgender Bahnplanung wäre die Wahl der Möglichkeit 5 der Druckbahn optimal, bei der ja die erste Übergangsbahn besser ist als Möglichkeit 2 der Druckbahn. Dabei ergäben sich aber Nachteile für den Prozess weil die Übergangsbahn zwischen Druck- und Trocknungsbahn länger und für den Druckkopf belastender wäre, was insbesondere auch die maximal druckbare Bahnlänge reduzieren würde. Zudem würde erst sehr spät festgestellt, wenn überhaupt keine realisierbare Lösung für eine Bearbeitungsbahn existiert, so dass sich die mittlere Gesamtplanungszeit wesentlich verlängern würde.
-
Wenn andererseits alle möglichen Bahnkombinationsmöglichkeiten simuliert und verglichen würden, wie z.B. im Stand der Technik gemäß
WO 2005/049284 A1 erwähnt durch Simulation auf einer virtuellen Robotersteuerung, dann wären sehr viel längere Planungsdauern erforderlich, was komplexere Planungsaufgaben mit sehr viel mehr Kombinationsmöglichkeiten aufgrund der dabei resultierenden astronomischen Planungsdauern ganz verbieten würde.
-
Das erfindungsgemäße Verfahren findet dagegen durch Vergleich der möglichen Bearbeitungsbahnkombinationen mit Hilfe der maximalen Achswinkeländerungen auf den Übergangsbahnen trotz kurzer Planungszeit einen sehr vorteilhaften oder sogar den bestmöglichen Bahnverlauf.
-
Bezugszeichenliste
-
- 1 bis 14
- Verfahrensschritte
- 20
- Objekt bzw. dessen zu bedruckende Oberfläche
- 21
- Verarbeitungs-/Druck-/Trocknungsbahn
- 22
- Linien
- 23
- Manipulator
- 23.1 bis 23.6
- Manipulatorachsen
- 24
- Verbindung/Träger
- 25
- Verbindung/Träger
- 26
- Druckkopf
- 27
- Trockner
- 28
- Roboterflansch
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- DE 102014011301 [0002, 0049]
- DE 102014221103 [0002, 0049]
- DE 102014008470 [0002, 0049, 0053, 0055, 0057]
- WO 2005/049284 A1 [0004, 0092]
- WO 2014/022786 A2 [0008]
- DE 102008046348 A1 [0010]
-
Zitierte Nicht-Patentliteratur
-
- C., S. Reitelshöfer und J. Franke: Automatisierte Pfadgenerierung und Kollisionsüberwachung für Sechsachs-Industrieroboter durch 3D-kameragestützte Umgebungserfassung. VDI BERICHTE Nr. 2209, S. 143–146, Düsseldorf: VDI Verlag, 2013 [0006]
- Lozano-Perez T (1981) Automatic Planning of Manipulator Transfer Movements. IEEE Transactions on Systems, Man and Cybernetics 11(10), pp 681–698 [0006]
- Latombe J-C (1991) Robot motion planning, Kluwer, Boston] und [LaValle S M (2006) Planning algorithms, Cambridge University Press, Cambridge [0006]