-
Die Erfindung betrifft ein Verfahren zur grafikbasierten Roboterprogrammierung eines Mehrachs-Roboters nach dem Oberbegriff des Patentanspruchs 1.
-
Es ist bekannt, Mehrachs-Roboter durch eine grafikbasierte Roboterprogrammierung auf bestimmte Bewegungsabläufe einzurichten.
-
Die gesamten Abrufe der Bewegungssteuerung werden über grafische Symbole gesteuert und programmiert. Vorteil dieser Maßnahme ist, dass keine speziellen Programmierkenntnisse erforderlich sind und lediglich die für sich selbst sprechenden grafischen Icons im Bereich einer grafischen Programmieroberfläche auf eine Programmablauffläche bezogen werden, um somit eine vollständige Bewegungssteuerung des Mehrachs-Roboters zu programmieren.
-
Hierbei ist es bekannt, bei der grafikbasierten Roboterprogrammierung einen geteilten Bildschirm zu verwenden, in dessen oberen Teil der Programmablauf mittels grafischer Icons dargestellt wird, während im unteren Teil des Bildschirms ein Parameterbild eines Positioniersymbols eingeblendet wird. Dort können Parameter wie z. B. Geschwindigkeit, Beschleunigung und Zielposition eingestellt werden.
-
Es können auch neue Funktionen über eine bereitgestellte Funktionsbibliothek eingefügt werden.
-
Eine solche grafikbasierte Roboterprogrammierung bei Mehrachs-Robotern hat sich insbesondere für die Programmierung der Mehrachs-Roboter der Firma Kuka bewährt.
-
Es können jedoch damit nicht nur Mehrachs-Roboter programmiert werden, sondern auch Spritzgiemaschinen, Bearbeitungszentren und Produktionsmaschinen.
-
Besonders hat sich hierbei die grafische Programmiersprache ARBURG SELOGICA bewährt.
-
Damit können beliebige Robotersysteme für die Montage, Logistik und Beschickung programmiert werden, wobei jedem grafischen Icon, welches für die Bewegungssteuerung verwendet wird, ein entsprechender Befehlssatz hinterlegt ist, der bei Ausführung der fertig gestellten Bewegungssteuerung dann ausgeführt wird.
-
Bei der grafikbasierten Roboterprogrammierung entstehen jedoch Grenzen, die mit allein einer auf Icons beruhenden Bewegungssteuerung nicht mehr beherrschbar sind.
-
Beispielsweise kommt es darauf an, sehr genaue und in spezieller Art ablaufende Bewegungsabläufe zu programmieren, was mit der grafischen Roboterprogrammierung und den hierfür verwendeten Icons und den gleichfalls verwendeten Parameterfenstern nicht mehr möglich ist.
-
Die grafikbasierte Roboterprogrammierung stößt also dann an ihre Grenzen, wenn es darum geht, über die grafische Programmieroberfläche hinaus gehende Steuer- und Zustandsbefehle an den Mehrachs-Roboter zu programmieren.
-
Der Erfindung liegt deshalb die Aufgabe zugrunde, ein Verfahren zur grafikbasierten Roboterprogrammierung eines Mehrachs-Roboters so weiterzubilden, dass auch solche Bewegungsabläufe programmiert werden können, die mit einer grafikbasierten Roboterprogrammierung nicht mehr durchführbar sind.
-
Zur Lösung der gestellten Aufgabe ist die Erfindung durch die technische Lehre des Anspruches 1 gekennzeichnet.
-
Der Erfindung gelingt es erstmals, zwei Programmierwelten mittels einer Brückenfunktion (z. B. Schnittstellenprogrammierung) in eine gemeinsame Vernetzung zu bringen. Zwischen zwei unterschiedliche, in sich geschlossene Programmiersysteme, die nicht kompatibel sind bilden wir eine ansteuerbare Verbindung, die es erlaubt, über ein zu aktivierendes Symbol (z. B. Icon) einen dialog-fähigen Verbindungsweg in eine zweite Programmierebene zu bilden
-
Wesentliches Merkmal der Erfindung ist, dass auf der grafischen Programmieroberfläche ein Knopf, z. B. in Form eines grafisch darstellbaren Icons angeordnet ist, mit dessen Aktivierung von der grafischen Programmieroberfläche in eine weitere Programmieroberfläche gesprungen werden kann, mit der eine maschinennähere Programmierung der Bewegungssteuerung durchführbar ist.
-
Damit wird von einer einen hohen Abstraktionsgrad aufweisenden, grafikbasierten Roboterprogrammierung auf eine maschinennahe Roboterprogrammierung umgeschaltet, wobei die Umschaltung durch ein auf der grafischen Programmieroberfläche angeordnetes Icon (Knopf) erfolgt.
-
Das dem Knopf hinterlegte Programm schaltet somit von der grafischen Programmieroberfläche auf eine weitere Programmieroberfläche über, in der eine einen geringeren Abstraktionsgrad aufweisende, maschinennahe Programmierung der Bewegungssteuerung möglich ist.
-
Eine solche maschinennahe Programmierung kann z. B. speicherprogrammierbare Steuerung sein.
-
Es handelt sich dabei um eine Programmieroberfläche zur Steuerung oder Regelung des Mehrachs-Roboters auf digitaler Basis und eine solche speicherprogrammierbare Steuerung kann im einfachsten Fall Eingänge, Ausgänge und Schnittstellen über ein Anwenderprogramm laden und das Anwenderprogramm legt fest, wie die Ausgänge in Abhängigkeit von den Eingängen geschaltet werden sollen.
-
Selbstverständlich umfasst die vorliegende Erfindung auch andere maschinennahe Programmiersprache, wie z. B. die Maschinensprache selbst, Assemblersprachen oder C. Diese erlauben eine hardwarenahe Programmierung, wie es die zweite Programmieroberfläche für die Einschaltung einer maschinennahen Programmierung vorsieht.
-
Derartige CNC-Programmiersprachen dienen der Erzeugung von Steuerungsinformationen für den Mehrachs-Roboter mit einem niedrigen Abstraktionsgrad im Vergleich zu der vorher genannten, einen hohen Abstraktionsgrad aufweisenden grafikbasierten Roboterprogrammierung.
-
Eine solche maschinennahe Programmierung kann auch eine Scriptsprache sein, die zur einfachen Steuerung eines Mehrachs-Roboters als Stapelverarbeitung abläuft.
-
Wichtig bei der Erfindung ist, ausgehend von einer grafikbasierten Roboterprogrammierung eines Mehrachs-Roboters nun einen Übergang in eine maschinennahe Programmierung der Bewegungssteuerung vorhanden ist, dass sich eine vollkommen neue Welt jenseits der grafikbasierten Roboterprogrammierung erschließt.
-
Es kann demzufolge bei Auftreten von Programmierproblemen bei der grafikbasierten Roboterprogrammierung sofort durch Anwählen eines Knopfes oder eines sonstigen grafischen Icons auf der grafischen Programmieroberfläche in die maschinennähere Programmiersprache und die dort zugeordnete Programmieroberfläche umgeschaltet werden, wobei dann maschinennahe Befehle – in den oben genannten Programmiersprachen – eingegeben werden und wenn die möglicherweise komplizierte Ablaufsteuerung mit der maschinennahen Programmierung abgeschlossen ist, kann wieder auf die grafische Programmieroberfläche zurück gesprungen werden und die grafikbasierte Roboterprogrammierung wird fortgesetzt.
-
Damit werden die Möglichkeiten der grafikbasierten Roboterprogrammierung um einen ganze Programmierwelt erweitert, denn für schwierige Programmieraufgaben ist es nun möglich, von der grafikbasierten Roboterprogrammierung in die maschinennahe Programmierung zu springen, dort bestimmte, wenige maschinennahe Steuerungsprogrammierungen vorzunehmen und dann wieder auf die grafikbasierte Roboterprogrammierung zurück zu springen.
-
Bei der Programmierung der Mehrachs-Roboter wird es hierbei bevorzugt, die so genannte KL-Programmiersprache als maschinennahe Programmierung zu verwenden. Es handelt sich hierbei um die UKA-Language.
-
Hierauf ist die Erfindung jedoch nicht beschränkt. Es könne sämtliche vorgenannten maschinennahen Programmiersprachen verwendet werden, insbesondere auch Assembler.
-
Der Erfindungsgegenstand der vorliegenden Erfindung ergibt sich nicht nur aus dem Gegenstand der einzelnen Patentansprüche, sondern auch aus der Kombination der einzelnen Patentansprüche untereinander.
-
Alle in den Unterlagen, einschließlich der Zusammenfassung offenbarten Angaben und Merkmale, insbesondere die in den Zeichnungen dargestellte räumliche Ausbildung, werden als erfindungswesentlich beansprucht, soweit sie einzeln oder in Kombination gegenüber dem Stand der Technik neu sind.
-
Im Folgenden wird die Erfindung anhand von lediglich einen Ausführungsweg darstellenden Zeichnungen näher erläutert. Hierbei gehen aus den Zeichnungen und ihrer Beschreibung weitere erfindungswesentliche Merkmale und Vorteile der Erfindung hervor.
-
Es zeigen:
-
1: Perspektivische Ansicht eines Mehrachs-Roboters, der mit dem Verfahren nach der Erfindung programmiert werden soll
-
2: Ein Beispiel für eine grafische Programmieroberfläche
-
3: Ein weiteres Beispiel für eine grafische Programmieroberfläche mit Einfügung eines grafischen Symbols für den Sprung in eine maschinennahe Programmieroberfläche
-
4: Die Darstellung der maschinennahen Programmieroberfläche
-
5: Die Darstellung eines Parameterfensters
-
6: Eine weitere Darstellung einer maschinennahen Programmieroberfläche
-
7: schematisierte Darstellung des Sprungs von einer grafischen Programmieroberfläche auf eine maschinensprachige Programmieroberfläche
-
In 1 ist allgemein und beispielhaft ein Mehrachs-Roboter 1 dargestellt, der einen Arbeitskopf 2 aufweist und der eine Anzahl von Bewegungsachsen 3a–3e aufweist.
-
Die Erfindung ist nicht auf die Anzahl der vorhandenen Bewegungsachsen 3 des Mehrachs-Roboters 1 beschränkt. Es können beliebig viele Bewegungsachsen 3a–3e vorhanden sein und insbesondere auch weniger Bewegungsachsen als im Ausführungsbeispiel nach 1 gezeigt sind.
-
Zur Programmierung eines derartigen Mehrachs-Roboters 1 ist es bekannt, dass nach 2 eine grafische Programmieroberfläche 4 vorhanden ist, die im Wesentlichen aus einem zweigeteilten Bildschirm besteht, dessen Oberteil ein Ablauffeld 21 ist und dessen unterer Teil als Parameterfeld 9 ausgeführt ist.
-
Rahmenseitig sind eine Vielzahl von Icons vorhanden, die vom Rahmen aus mit einem geeigneten Zeigeinstrument auf das Ablauffeld 21 gezogen werden können, um so hintereinander folgend die Bewegungssteuerung des Mehrachs-Roboters 1 zu programmieren.
-
So sind die Icons 5, 6, 7, 8 auf das grafische Ablauffeld 21 gezogen worden, um einen bestimmten Bewegungsablauf des Mehrachs-Roboters 1 zu programmieren.
-
Bei einigen oder allen Icons 5 öffnet sich dann das Parameterfeld 9 im unteren Teil des Bildschirmes und es lassen sich dann dort pro Icon bestimmte Bewegungsparameter eingeben, wie dies in 2 dargestellt ist.
-
Eine solche grafische Programmieroberfläche 4 hat sich im großen Umfang bewährt, stößt jedoch dann an ihre Grenzen, wenn es darum geht, diffizile Bewegungsabläufe eines Mehrachs-Roboters zu programmieren.
-
Hier setzt die Erfindung mit einer grafischen Programmieroberfläche 4 nach 3 ein.
-
Es ist wiederum dargestellt, dass im Bereich der grafischen Programmieroberfläche 4 im Ablauffeld 21 eine Anzahl von Icons 5–8 zur Bewegungssteuerung angeordnet sind.
-
Wenn es nun darum geht, dass z. B. im Übergang von dem Icon 6 auf das Icon 7 im Bereich einer Verzweigung 10 ein komplizierte Bewegungssteuerung zur Programmierung notwendig ist, wird erfindungsgemäß ein Schaltknopf 12 aufgerufen, der als grafisches Symbol auf dem Ablauffeld 21 angeordnet ist.
-
3 zeigt im Übrigen, dass im Verzweigungsweg 10 auch noch weitere Icons 11 mit dort zu programmierenden Nebenpfaden angeordnet sein können.
-
Wichtig ist jedoch, dass der Schaltknopf 12 Irgendwo im Bereich der Icons oder im Bereich einer Verzweigung angeordnet sein kann, dort angewählt werden kann und dann aufgrund der hinterlegten Befehlsfolge in eine weitere maschinensprachige Programmieroberfläche 14 verzweigt wird.
-
Im gezeigten Ausführungsbeispiel laut 3 ist der erfindungsgemäße Schaltknopf 12 im Verzweigungsweg 13 angeordnet, was jedoch nur als Ausführungsbeispiel zu verstehen ist.
-
Sobald der Schaltknopf 12 nach 3 angewählt wird, öffnet sich gemäß 4 ein Interpreter-Fenster und es ist nun möglich, in dieses Interpreter-Fenster eine Anzahl von maschinennahen Programmierschritten 15, 16, 17 einzugeben.
-
Ebenso ist es natürlich möglich, bei Anwahl des Schaltknopfes 12 auch ein Parameterfeld 9 zu öffnen, wie es in 5 dargestellt ist. Es können dann zusätzliche Parameter eingegeben werden.
-
Wichtig ist, dass die maschinensprachige Programmieroberfläche einen geringen Abstraktionsgrad aufweist und deshalb damit auch sehr komplizierte Steuerungs- und Bewegungsabläufe programmierbar sind, was bisher mit der alleinigen grafikbasierten Programmieroberfläche 4 nicht möglich war.
-
Die 6 zeigt als weiteres Ausführungsbeispiel eine solche maschinensprachige Programmieroberfläche 14, bei der einige, einen geringeren Abstraktionsgrad als vergleichsweise die grafischen Programmiersymbole 5–8 aufweisenden, Programmierschritte 15–17 angeordnet sind.
-
Auch hier steht – wie im rechten Feld dargestellt – eine umfangreiche Befehlsbibliothek zur Verfügung.
-
Sobald der Knopf 12 nach 4 wieder angeklickt wird, schließt sich das Interpreter-Fenster und die vorher in einer maschinennahen Sprache programmierten Programmierbefehle werden in einem Interpreter umgewandelt und können dann insgesamt als Block in einem weiteren grafischen Symbol dargestellt werden.
-
Auf diese Weise können somit grafische Symbole für die Verwendung auf der grafischen Programmieroberfläche 4 verwendet werden, bei denen eine Anzahl von
-
Programmierschritten 15–17 in einer maschinennahen Programmiersprache hinterlegt sind.
-
Die 7 zeigt schematisiert die unterschiedlichen Programmieroberflächen 4, 14 in schematisierter Darstellung parallel und übereinander angeordnet, um darzustellen, dass die grafische Programmieroberfläche 4 einen hohen Abstraktionsgrad und die die maschinennahe Programmieroberfläche 14 einen niedrigen Abstraktionsgrad aufweist.
-
Ausgehend von den Icons 5, 6 auf der grafischen Programmieroberfläche 4 wird beim Icon 11 durch Drücken des Schaltknopfes 12 über den Verzweigungsweg 13 auf die niedrigere maschinensprachige Programmieroberfläche 14 umgeschaltet und dort werden einen Anzahl von Programmierschritten 15–17 programmiert.
-
Nach Fertigstellung dieser maschinennahen Programmierung wird bei Position 20 über den Verzweigungsweg 18 wieder auf die grafische Programmieroberfläche 4 zurück gesprungen und es kann ein Rücksprung-Icon 19 definiert werden, welches auf der grafischen Programmieroberfläche 4 alle vorher auf der maschinennahen Programmieroberfläche 14 programmierten Programmierschritte 15–17 hinterlegt aufweist.
-
Ausgehend von diesem Rücksprung-Icon können dann weitere grafische Programmierbefehle mit weiteren Icons 5–7 auf der grafischen Programmieroberfläche 4 ausgeführt werden.
-
Bezugszeichenliste
-
- 1
- Mehrachs-Roboter
- 2
- Arbeitskopf
- 3
- Bewegungsachse
- 4
- Programmieroberfläche (grafisch)
- 5
- Icon
- 6
- Icon
- 7
- Icon
- 8
- Icon
- 9
- Parameterfeld
- 10
- Verzweigung
- 11
- Icon
- 12
- Schaltknopf
- 13
- Verzweigungsweg
- 14
- Programmieroberfläche (Maschinensprache)
- 15
- Programmierschritt
- 16
- Programmierschritt
- 17
- Programmierschritt
- 18
- Verzweigungsweg
- 19
- Rücksprung-Icon
- 20
- Position
- 21
- Ablauffeld