DE102018203078B3 - Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt - Google Patents

Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt Download PDF

Info

Publication number
DE102018203078B3
DE102018203078B3 DE102018203078.2A DE102018203078A DE102018203078B3 DE 102018203078 B3 DE102018203078 B3 DE 102018203078B3 DE 102018203078 A DE102018203078 A DE 102018203078A DE 102018203078 B3 DE102018203078 B3 DE 102018203078B3
Authority
DE
Germany
Prior art keywords
movement
program
machine
instructions
motion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102018203078.2A
Other languages
English (en)
Inventor
Yevgen Kogan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KUKA Deutschland GmbH
Original Assignee
KUKA Deutschland GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KUKA Deutschland GmbH filed Critical KUKA Deutschland GmbH
Priority to DE102018203078.2A priority Critical patent/DE102018203078B3/de
Priority to PCT/EP2019/053689 priority patent/WO2019166229A1/de
Application granted granted Critical
Publication of DE102018203078B3 publication Critical patent/DE102018203078B3/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40519Motion, trajectory planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie (BT) eines Bezugspunktes einer automatisch anzusteuernden Maschine, wobei die Maschine Antriebe (M1-M6) aufweist, die ausgebildet sind, den Bezugspunkt der Maschine im Raum zu bewegen und zwar angesteuert durch eine Steuervorrichtung (1), die ausgebildet ist, die Antriebe (M1-M6) der Maschine auf Grundlage der automatisch erzeugten Bewegungstrajektorie (BT) als Führungsgröße mittels einer Bewegungssteuerung (BS) anzusteuern, wobei die Bewegungstrajektorie (BT) auf Grundlage wenigstens einer in einem Überschleifmodus auszuführenden ersten Bewegungsanweisung (P1) und wenigstens einer der ersten Bewegungsanweisung (P1) folgenden zweiten Bewegungsanweisung (P2.1, P2.2) eines von der Steuervorrichtung (1) ausführenden Maschinenbewegungsprogramms (MP) mittels eines Bahnplanungsprogramms (BP) automatisch erzeugt wird.

Description

  • Die Erfindung betrifft ein Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie eines Bezugspunktes einer automatisch anzusteuernden Maschine, wobei die Maschine Antriebe aufweist, die ausgebildet sind, den Bezugspunkt der Maschine im Raum zu bewegen und zwar angesteuert durch eine Steuervorrichtung, die ausgebildet ist, die Antriebe der Maschine auf Grundlage der automatisch erzeugten Bewegungstrajektorie als Führungsgröße mittels einer Bewegungssteuerung anzusteuern, wobei die Bewegungstrajektorie auf Grundlage wenigstens einer in einem Überschleifmodus auszuführenden ersten Bewegungsanweisung und wenigstens einer der ersten Bewegungsanweisung folgenden zweiten Bewegungsanweisung eines von der Steuervorrichtung ausführenden Maschinenbewegungsprogramms mittels eines Bahnplanungsprogramms automatisch erzeugt wird, wobei im Maschinenbewegungsprogramm in Ablaufrichtung zwischen der ersten Bewegungsanweisung und einer folgenden zweiten Bewegungsanweisung sich eine bedingte Programmabzweigung befindet, die in Abhängigkeit eines auslösenden Ereignisses eine erste Alternative einer zweiten Bewegungsanweisung oder wenigstens eine zweite Alternative einer zweiten Bewegungsanweisung vorgibt. Die Erfindung betrifft außerdem ein zugehöriges Computerprogrammprodukt.
  • Die DE 10 2007 056 117 A1 betrifft einen Industrieroboter und ein Verfahren zum Steuern der Bewegung eines Industrieroboters. Insoweit offenbart dieser nächstliegende Stand der Technik in gattungsgemäßem Sinne ein Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie eines Bezugspunktes einer automatisch anzusteuernden Maschine, wobei die Maschine Antriebe aufweist, die ausgebildet sind, den Bezugspunkt der Maschine im Raum zu bewegen und zwar angesteuert durch eine Steuervorrichtung, die ausgebildet ist, die Antriebe der Maschine auf Grundlage der automatisch erzeugten Bewegungstrajektorie als Führungsgröße mittels einer Bewegungssteuerung anzusteuern, wobei die Bewegungstrajektorie auf Grundlage wenigstens einer in einem Überschleifmodus auszuführenden ersten Bewegungsanweisung und wenigstens einer der ersten Bewegungsanweisung folgenden zweiten Bewegungsanweisung eines von der Steuervorrichtung ausführenden Maschinenbewegungsprogramms mittels eines Bahnplanungsprogramms automatisch erzeugt wird.
  • Die DE 10 2014 226 789 B1 beschreibt ein Verfahren zum bedingten Anhalten zumindest eines Manipulators, wobei der zumindest eine Manipulator eine Bahn abfährt, welche Bahn einen Haltepunkt aufweist. Das dortige Verfahren umfasst ein Berechnen eines dem Haltepunkt zugeordneten Bremspunktes in Abhängigkeit einer Geschwindigkeit des Manipulators, wobei der Bremspunkt ein Punkt der Bahn ist.
  • EP 2 022 608 B1 beschreibt ein Verfahren zum Erzeugen einer Trajektorie eines Bewegungssystems, bei dem eine Trajektorie als eine Folge von einem oder mehreren Pfadsegmenten (Bewegungsschritten) festgelegt ist, wobei ein Ausblenden eines Ausblendgebietes eines ersten Geschwindigkeitsprofils erfolgt und ein Einblenden eines Einblendgebiets eines nachfolgenden zweiten Geschwindigkeitsprofils innerhalb eines dort sogenannten Mischungsradius erfolgt.
  • Ein solches Ausblenden eines ersten Geschwindigkeitsprofils und ein solches Einblenden eines nachfolgenden zweiten Geschwindigkeitsprofils wird im Allgemeinen auch als „Überschleifen“ bezeichnet. Ein Überschleifen wird beispielsweise in der Robotertechnik und bei Werkzeugmaschinen in Rahmen einer sogenannten PTP-Steuerung (engl.: point-to-point) angewendet, bei der als Bewegungsanweisungen beispielsweise Punkt-zu-Punkt-Bewegungsanweisungen ausgeführt werden. Bei der Ausführung von Bewegungsanweisungen wird ein Bezugspunkt der anzusteuernden Maschine (beispielsweise ein Roboterarm oder eine Werkzeugmaschine) schrittweise von einem ersten Raumpunkt zu einem zweiten Raumpunkt und gegebenenfalls nacheinander zu weiteren folgenden Raumpunkten bewegt. Neben einer asynchronen PTP-Steuerung ist eine synchrone PTP-Steuerung allgemein bekannt, bei der nicht nur alleine die anzufahrenden Zielpunkte der einzelnen Bewegungsanweisungen rücktransformiert werden, um die Achsen der Maschine dann allein auf dieser Grundlage auf Achskoordinateneben anzusteuern, sondern auch die Bewegungsprofile von Startpunkt zu Zielpunkt in einem Bahnplanungsprogramm geplant werden und zwar hinsichtlich ihrer Geschwindigkeitsprofile und/oder Beschleunigungsprofile. So kann beispielsweise bei einer Bahnplanung bei Bewegungsanweisungen vorgesehen sein, dass für jeden angetriebenen Freiheitsgrad der Maschine, beispielsweise jedes angetriebene Gelenk eines Roboterarms, die maximale Geschwindigkeit und unter Berücksichtigung von Startpunkt zu Zielpunkt der Bewegung eine Bewegungsdauer für das jeweilige Gelenk berechnet wird, das Gelenk mit der längsten Bewegungsdauer als eine Leitachse definiert wird und die jeweils anderen, verbleibenden Freiheitsgrade oder Gelenke in ihren Geschwindigkeitsprofilen und/oder Beschleunigungsprofilen so angepasst werden, dass alle Freiheitsgrade oder Gelenke gleichzeitig mit ihren individuellen Bewegungen beginnen und auch gleichzeitig mit ihren individuellen Bewegungen enden. Um dies zu ermöglichen werden die Bewegungsanweisungen des Maschinenbewegungsprogramms, welches in einer Ablaufsteuerung implementiert sein kann, an eine Bewegungssteuerung übergeben und dort in einem Bahnplanungsprogramm transformiert in einzelne Geschwindigkeitsprofile und/oder Beschleunigungsprofile der Freiheitsgrade der Maschine oder Gelenke des Roboterarms, um die Antriebe der Maschine bzw. die angetriebenen Gelenke des Roboterarms den Geschwindigkeitsprofilen und/oder den Beschleunigungsprofilen entsprechend von einer Bewegungssteuerung angesteuert zu bewegen. Die Bewegungssteuerung kann insoweit das Bahnplanungsprogramm, d.h. eine Bahnsteuerung umfassen und eine die Bewegungen ausführende Bewegungsausführungssteuerung umfassen. Das Maschinenbewegungsprogramm hingegen kann Teil der Ablaufsteuerung sein. Je nach Systemarchitektur der Steuerung bzw. der Steuerungen können die Bewegungssteuerung und die Ablaufsteuerung separate Steuerungsteile sein oder in einer gemeinsamen Steuerung zusammengefasst sein. Üblicherweise ist die Ablaufsteuerung jedoch in einem vorzugsweise nicht-echtzeitfähigem Steuerungsteil implementiert, wo hingegen zumindest die Bewegungsausführungssteuerung oder die gesamte Bewegungssteuerung, umfassen die Bewegungsausführungssteuerung und die Bahnsteuerung, in einem echtzeitfähigen Steuerungsteil implementiert ist.
  • Maschinenbewegungsprogramme können ganz allgemein bedingte Programmabzweigungen enthalten. Bei einer bedingten Programmabzweigung, die beispielsweise eine IF-Anweisung oder eine WHILE-Anweisung sein kann, ist der als nächster anzufahrende Zielpunkt von dem auslösenden Ereignis abhängig, so dass zeitlich vor dem Eintritt des Ereignisses nicht eindeutig vorbestimmt ist, welcher Zielpunkt von ggf. mehreren alternativ möglichen Zielpunkten tatsächlich zur Anwendung kommen soll. Aufgrund dieser Unbestimmtheit im Vorhinein können Zielpunkte von Bewegungsanweisungen über eine Programmabzweigung hinweg im Allgemeinen nicht angefahren werden. Bekannt ist es, in einem solchen Fall die Planung eines Überschleifens zu unterbrechen, beispielsweise im Rahmen eines sogenannten Vorlaufstopps, d.h. eines Abbruchs einer rechnerischen zeitlichen Vorausplanung von tatsächlich durch den Roboter noch nicht erreichten, aber im Programm vorgesehenen anzufahrenden Punkten, um den letzten vor der bedingten Programmabzweigung liegenden Zielpunkt ohne Überschleifen direkt anzufahren, um nach der bedingten Programmabzweigung eine neue Sequenz eines Überschleifens zu beginnen. In vielen Fällen ist jedoch ein Unterbrechen des Überschleifens nachteilig, da es dadurch zu Zeitverzögerungen, zu Rucken und/oder zu unstetigen Bahnverläufen kommen kann.
  • Aufgabe der Erfindung ist es, ein Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie eines Bezugspunktes einer automatisch anzusteuernden Maschine zu schaffen, mit dem ein Überschleifen der Zielpunkte von Bewegungsanweisungen auch über bedingte Programmabzweigungen hinweg möglich wird.
  • Diese Aufgabe wird erfindungsgemäß gelöst durch Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie eines Bezugspunktes einer automatisch anzusteuernden Maschine, wobei die Maschine Antriebe aufweist, die ausgebildet sind, den Bezugspunkt der Maschine im Raum zu bewegen und zwar angesteuert durch eine Steuervorrichtung, die ausgebildet ist, die Antriebe der Maschine auf Grundlage der automatisch erzeugten Bewegungstrajektorie als Führungsgröße mittels einer Bewegungssteuerung anzusteuern, wobei die Bewegungstrajektorie auf Grundlage wenigstens einer in einem Überschleifmodus auszuführenden ersten Bewegungsanweisung und wenigstens einer der ersten Bewegungsanweisung folgenden zweiten Bewegungsanweisung eines von der Steuervorrichtung auszuführenden Maschinenbewegungsprogramms mittels eines Bahnplanungsprogramms automatisch erzeugt wird, wobei im Maschinenbewegungsprogramm in Ablaufrichtung zwischen der ersten Bewegungsanweisung und der folgenden zweiten Bewegungsanweisung sich eine bedingte Programmabzweigung befindet, die in Abhängigkeit eines auslösenden Ereignisses eine erste Alternative der zweiten Bewegungsanweisung oder wenigstens eine zweite Alternative der zweiten Bewegungsanweisung vorgibt, aufweisend die Schritte:
    • - Bestimmen von Eigenschaften der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, die gemäß der bedingten Programmabzweigung möglich sind,
    • - Bestimmen eines Zeitpunkts, an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss,
    • - Übermitteln der Eigenschaften der ersten Bewegungsanweisung und der zwei oder mehreren alternativen zweiten Bewegungsanweisungen an das Bahnplanungsprogramm, das unter Berücksichtigung des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung den zwei oder mehreren alternativen zweiten Bewegungsanweisungen entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte erstellt,
    • - wenn das auslösende Ereignis für die bedingte Programmabzweigung stattgefunden hat, Auswählen desjenigen vorausgeplanten Bewegungstrajektorien-Abschnitts, welcher der dem auslösenden Ereignis entsprechenden alternativen zweiten Bewegungsanweisung der bedingten Programmabzweigung entspricht, auf die aufgrund des auslösenden Ereignisses abgezweigt wird,
    • - Übermitteln des ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitts an eine Bewegungsausführung zum Ausführen einer Bewegung der Maschine derart, dass sich der Bezugspunkt der Maschine entsprechend dem ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitt automatisch bewegt.
  • Die mittels des Verfahrens automatisch anzusteuernde Maschine kann eine Werkzeugmaschine oder insbesondere ein Roboter sein. Der Roboter kann einen Roboterarm aufweisen, der mehrere Glieder aufweist, die über Gelenke verbunden sind, wobei die Gelenke mittels Antrieben bewegbar sind, um die Glieder des Roboterarms automatisch gemäß eines Roboterprogramms gegeneinander verstellen zu können.
  • Die Antriebe der Maschine, insbesondere des Roboters können insbesondere elektrische Motoren umfassen, die von einer Steuervorrichtung, insbesondere einer Antriebsteuerung der Steuervorrichtung, gesteuert, insbesondere geregelt antreibbar sind. Die Motoren können mit Getrieben versehen sein.
  • Die Steuervorrichtung kann die Antriebsteuerung, eine Bewegungssteuerung und eine Ablaufsteuerung umfassen. Die Steuerungskomponenten können, wie bereits erwähnt, in einer gemeinsamen Steuerungseinheit zusammengefasst sein oder als separate Steuerungskomponenten ausgebildet und über Kommunikationsverbindungen miteinander verbunden sein. Auf der Steuervorrichtung, insbesondere auf der Ablaufsteuerung kann wenigstens ein Maschinenbewegungsprogramm gespeichert und zur Ausführung eingerichtet sein. Insoweit kann die Steuervorrichtung ein Computerprogrammprodukt aufweisen, das einen maschinenlesbaren Träger umfasst, auf dem Programmcode gespeichert ist, der von der Maschine, insbesondere von einer Robotersteuerung des Roboters auslesbar ist, sodass die Maschine bzw. der Roboter ausbildet und/oder einrichtet ist, ein erfindungsgemäßes Verfahren durchzuführen, wenn der Programmcode von der Maschine oder dem Roboter bzw. dessen Steuerung ausgeführt wird.
  • Das Maschinenbewegungsprogramm, das insoweit ein Roboterprogramm sein kann, enthält Bewegungsanweisungen, insbesondere die Bewegungsanweisungen, gemäß denen ein vorab definierter Bezugspunkt im Raum durch die Maschine bzw. den Roboterarm bewegt werden soll. Der Bezugspunkt kann ein Werkzeugbezugspunkt sein, der unter anderem auch als TCP (Tool-Center-Point) bezeichnet wird. Ein Werkzeugbezugspunkt kann ein realer oder virtueller Punkt an einem Werkzeug sein, das von der Maschine, insbesondere dem Roboterarm gehandhabt wird. In einem einfachen Fall kann der Bezugspunkt beispielsweise auch ein mit dem Flansch des Roboterarms fest verbundenes Handflanschkoordinatensystem sein.
  • Das Bahnplanungsprogramm der Bahnsteuerung stellt Algorithmen, Modelle und/oder Rechenvorschriften bereit, die auf Grundlage der im Maschinenbewegungsprogramm enthaltenen Bewegungsanweisungen eine Bewegungstrajektorie für den Bezugspunkt unmittelbar erstellen oder mittelbar dadurch erstellen, dass Bewegungsprofile, insbesondere Geschwindigkeitsprofile und/oder Beschleunigungsprofile achsbezogen oder kartesisch durch das Bahnplanungsprogramm generiert werden. Die entsprechenden Bewegungsprofile, insbesondere Geschwindigkeitsprofile und/oder Beschleunigungsprofile werden dann insbesondere in achsbezogener Form an die Bewegungsausführungssteuerung übergeben, welche ihrerseits die Antriebe d.h. die Motoren der Maschine oder des Roboterarms auch auf Antriebsebene ansteuern oder regeln.
  • Im Falle von Bewegungsanweisungen, die grundsätzlich mit asynchronen Achsbewegungen oder mit synchronen Achsbewegungen durchgeführt werden können, wird die Bahn der Trajektorie zwar nicht in ihrem genauen Bahnverlauf exakt geplant, allerdings findet insoweit eine Bewegungsplanung statt, bei der die Geschwindigkeitsprofile und/oder die Beschleunigungsprofile der einzelnen Achsbewegungen durchaus geplant werden, wodurch sich in Abhängigkeit des jeweiligen Startpunktes und des angenommenem Zielpunktes bzw. der angenommenen mehreren aufeinanderfolgenden Zielpunkten ein reproduzierbarer stetiger Bahnverlauf ergibt. Wie bereits erwähnt, werden in einem Überschleifmodus die von den Bewegungsanweisungen definierten genauen Zielpunkte nicht exakt angefahren, sondern unter Vermeiden eines Anhaltens in einem parametrierbaren Abstandsbereich von dem jeweiligen Zielpunkt umfahren, um eine Bewegungstrajektorie mit einem stetigen Geschwindigkeitsverlauf zu erhalten.
  • Die Bewegungstrajektorie ist eine grafische Repräsentation des Verlaufs der Bewegung, die der Bezugspunkt im Raum durchläuft. Die Bewegungstrajektorie ist insoweit die Spur auf der sich der Bezugspunkt bewegt, wenn die Maschine oder der Roboter gemäß dem Maschinenbewegungsprogramm automatisch angesteuert wird. Die Bewegungstrajektorie kann auch Geschwindigkeitsdaten, insbesondere bezogen auf Interpolationspunkte des Verlaufs der Bewegung bzw. der Spur umfassen.
  • Ein Bewegungstrajektorien-Abschnitt stellt im Allgemeinen eine Teilstrecke der gesamten Bewegungstrajektorie dar. Im Speziellen werden erfindungsgemäß unter den jeweiligen Bewegungstrajektorien-Abschnitten diejenigen Teile von mehreren möglichen Bewegungstrajektorien verstanden, die im Maschinenbewegungsprogramm aufgrund der bedingten Programmabzweigung alternativ auftreten können, solange das für die bedingten Programmabzweigung auslösende Ereignis noch nicht stattgefunden hat und es deshalb noch nicht feststeht, welche der zwei oder mehreren möglichen Bewegungstrajektorien-Abschnitte tatsächlich zur Ausführung kommen.
  • Ein Überschleifen wird beispielsweise in der Robotertechnik und bei Werkzeugmaschinen in Rahmen einer sogenannten PTP-Steuerung angewendet, bei der Bewegungsanweisungen ausgeführt werden. Bei der Ausführung von Bewegungsanweisungen wird ein Bezugspunkt der anzusteuernden Maschine (beispielsweise ein Roboterarm oder eine Werkzeugmaschine) schrittweise von einem ersten Raumpunkt zu einem zweiten Raumpunkt und gegebenenfalls nacheinander zu weiteren folgenden Raumpunkten bewegt, wobei in einem Überschleifmodus die jeweiligen Stützpunkte der Bewegungsanweisungen unter Umständen nicht mehr direkt erreicht werden, sondern unter Vermeiden eines vollständigen Anhaltes der Maschine oder des Roboterarms bzw. dessen Bezugspunktes, der Bezugspunkt lediglich in der Nähe eines solcher überschliffenen Stützpunktes vorbeibewegt wird, um sogleich in Richtung des nächsten Stützpunktes der nächsten Bewegungsanweisung zu fahren. Eine solche Überschleifbewegung kennzeichnet sich also dadurch, dass an solchen Zwischenstellungen (überschleifende Stützpunkte) ohne Anhalten des Bezugspunktes vorbeigefahren wird.
  • Die anzufahrenden Zielpunkte sind zwar durch die jeweilige Bewegungsanweisung fest vorbestimmt, allerdings werden diese Zielpunkte im Überschleifmodus demgemäß oftmals tatsächlich nicht erreicht.
  • Maschinenbewegungsprogramme können ganz allgemein bedingte Programmabzweigungen enthalten. Bei einer bedingten Programmabzweigung, die beispielsweise eine IF-Anweisung oder eine WHILE-Anweisung sein kann, ist der als nächster anzufahrende Zielpunkt von dem auslösenden Ereignis abhängig, so dass zeitlich vor dem Eintritt des Ereignisses nicht eindeutig vorbestimmt ist, welcher Zielpunkt von ggf. mehreren alternativ möglichen Zielpunkten tatsächlich zur Anwendung kommen soll. Aufgrund dieser Unbestimmtheit im Vorhinein können Zielpunkte von Bewegungsanweisungen über eine Programmabzweigung hinweg im Allgemeinen nicht durchgeführt werden. Bekannt ist es, in einem solchen Fall die Planung eines Überschleifens zu unterbrechen, beispielsweise im Rahmen eines sogenannten Vorlaufstopps, um den letzten vor der bedingten Programmabzweigung liegenden Zielpunkt ohne Überschleifen direkt anzufahren, um nach der bedingten Programmabzweigung eine neue Sequenz eines Überschleifens zu beginnen. In vielen Fällen ist jedoch ein Unterbrechen des Überschleifens nachteilig, da es dadurch zu Zeitverzögerungen, zu Rucken und/oder zu unstetigen Bahnverläufen kommen kann.
  • Das auslösende Ereignis kann demgemäß ein physikalisches Ereignis sein, auf welches das Maschinenbewegungsprogramm in programmierter Weise reagieren soll und zwar mittels der bedingten Programmabzweigung. Das auslösende Ereignis ist für das Maschinenbewegungsprogramm insoweit eine beliebige zu prüfende Bedingung, bei deren Eintreten oder Vorhandensein in den jeweils vorgesehen Programmzweig abgezweigt wird. Das auslösende Ereignis muss dabei nicht notwendiger Weise erst kurz vor dem zeitlichen Erreichen der Programmabzweigung eintreten, sondern kann ggf. schon länger vorher eingetreten sein und somit schon weit vor dem Erreichen der Programmabzweigung eingetreten sein. Es kann dann unmittelbar vor der Programmabzweigung oder zeitlich kurz vor der Programmabzweigung das auslösende Ereignis bzw. die zu prüfende Bedingung abgefragt und/oder ausgewertet werden, beispielsweise dahingehend, ob die zu prüfende Bedingung oder das Ereignis immer noch vorliegt. Insoweit kann die zu prüfende Bedingung oder das Ereignis schon weit vorher vorhanden sein, aber erst zum Zeitpunkt bzw. kurz vor dem Zeitpunkt des Erreichens der Programmabzweigung abgefragt werden. Das auslösende Ereignis kann insoweit auch schon allein die Abfrage bzw. die Überprüfung einer bereits vorliegenden Bedingung und/oder eines bereits vorliegenden physikalischen Zustands sein. Die Bedingung und/oder der Zustand kann beispielsweise mittels wenigstens eines Sensors erfasst werden, der im einfachsten Fall einen booleschen Zustand liefert, der einen Parameter für eine Wartefunktion im Maschinenbewegungsprogramm bildet, die ein Ergebnis erst dann liefert, wenn der definierte Zeitpunkt für die Programmabzweigung erreicht ist.
  • Indem das erfindungsgemäße Verfahren die folgenden Schritte vorsieht:
    • - Bestimmen von Eigenschaften der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, die gemäß der bedingten Programmabzweigung möglich sind,
    • - Bestimmen eines Zeitpunkts, an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss,
    • - Übermitteln der Eigenschaften der ersten Bewegungsanweisung und der zwei oder mehreren Zielpunkte der zwei oder mehreren alternativen zweiten Bewegungsanweisungen an ein Bahnplanungsprogramm, das unter Berücksichtigung des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung den zwei oder mehreren alternativen zweiten Bewegungsanweisungen entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte erstellt,
    • - wenn das auslösende Ereignis für die bedingte Programmabzweigung stattgefunden hat, Auswählen desjenigen vorausgeplanten Bewegungstrajektorien-Abschnitts, welcher der dem auslösenden Ereignis entsprechenden alternativen zweiten Bewegungsanweisung der bedingten Programmabzweigung entspricht, auf die aufgrund des auslösenden Ereignisses abgezweigt wird,
    • - Übermitteln des ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitts an die Ablaufsteuerung zum Ausführen einer Bewegung der Maschine derart, dass sich der Bezugspunkt der Maschine dem ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitt entsprechend automatisch bewegt, kann ein Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie eines Bezugspunktes einer automatisch anzusteuernden Maschine bereitgestellt werden, mit dem ein Überschleifen der Zielpunkte von Bewegungsanweisungen auch über bedingte Programmabzweigungen hinweg möglich ist.
  • Das Bestimmen eines Zeitpunkts, an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, und das Übermitteln der Eigenschaften der ersten Bewegungsanweisung und der zwei oder mehreren Zielpunkte der zwei oder mehreren alternativen zweiten Bewegungsanweisungen an ein Bahnplanungsprogramm, das unter Berücksichtigung des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung den zwei oder mehreren alternativen zweiten Bewegungsanweisungen entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte erstellt, können gleichzeitig oder in gewissem Rahmen zeitlich versetzt zueinander ausgeführt werden. Die Reihenfolge kann insoweit nahezu beliebig sein und ggf. auch in der Reihenfolge vertauscht sein.
  • Mit der erfindungsgemäßen Lösung kann die Funktion des Überschleifens bei Bewegungsanweisungen im Rahmen einer adaptiven Bahnführung in einem Onlinebetrieb auch über bedingte Programmabzweigungen hinweg stoppfrei, in einem stetigen Geschwindigkeitsverlauf und/oder ggf. ruckfrei ausgeführt werden.
  • Eine im Allgemeinen mögliche offline-Planung des Überschleifens von Bewegungsanweisungen ist im Falle von bedingten Programmabzweigungen meist nicht möglich, da das die bedingte Programmabzweigung triggernde d.h. auslösende Ereignis im Vorhinein nicht bekannt ist.
  • Mit dem erfindungsgemäßen Verfahren ist auch keine vollständige Planung der Bewegungstrajektorie unter Echtzeitbedingungen nötig. Die mit dem erfindungsgemäßen Verfahren in einer Vorschau über ein, zwei oder mehrere Bewegungsanweisungen hinweg zu planende Überschleifbewegung kann hingegen in einer nicht-echtzeitfähigen Bahnsteuerung erfolgen. Die Bahnsteuerung kann somit auch in einer nicht-echtzeitfähigen Programmiersprache erstellt sein.
  • Die bedingte Programmabzweigung kann in wenigstens einer durch das auslösende Ereignis bestimmten Alternative außer einer zweiten Bewegungsanweisung zusätzlich wenigstens eine weitere Bewegungsanweisung aufweisen, wobei
    • - ein Bestimmen des Zeitpunkts, an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, erfolgt unter Einbeziehen der jeweils weiteren Bewegungsanweisungen zu der jeweiligen zweiten Bewegungsanweisung erfolgt, und
    • - ein Übermitteln der Eigenschaften der zu überschleifenden ersten Bewegungsanweisung und der zwei oder mehreren Zielpunkte der zwei oder mehreren alternativen zweiten Bewegungsanweisungen und der jeweiligen weiteren Bewegungsanweisungen an das Bahnplanungsprogramm erfolgt, wobei das Bahnplanungsprogramm unter Berücksichtigung der Eigenschaften der zu überschleifenden ersten Bewegungsanweisung den zwei oder mehreren alternativen zweiten Bewegungsanweisungen und den jeweils weiteren Bewegungsanweisungen entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte erstellt erfolgt.
  • In dieser Ausführungsvariante wird demgemäß nicht nur die im Programmablauf unmittelbar vor der bedingten Programmabzweigung liegende erste Bewegungsanweisung und die unmittelbar nach der bedingten Programmabzweigung liegende zweite Bewegungsanweisung für den Überschleifmodus über die bedingten Programmabzweigung hinweg berücksichtigt bzw. herangezogen, sondern auch mindestens eine weitere Bewegungsanweisung, also beispielsweise eine dritte Bewegungsanweisung und eine vierte Bewegungsanweisung, die der zweiten Bewegungsanweisung unmittelbar nachfolgen. Die Anzahl der hinzuzuziehenden Bewegungsanweisungen kann sich nach der Zeit richten, die bis zur bedingten Programmabzweigung noch zur Verfügung steht, um die zwei oder mehreren möglichen Bewegungstrajektorien-Abschnitte rechtzeitig vor Erreichen der bedingten Programmabzweigung vorausplanen zu können.
  • Das Bahnplanungsprogramm kann demgemäß eingerichtet sein, außer den zu überschleifenden ersten Stützpunkt der ersten Bewegungsanweisung, zusätzlich wenigstens einen zweiten Stützpunkt der zweiten Bewegungsanweisung und/oder jeden dritten oder weiteren Stützpunkt einer im Programmablauf folgenden, weiteren zweiten Bewegungsanweisung überschleifend zu planen.
  • Eine spezielle Ausführungsform des Verfahren kann gekennzeichnet sein durch ein automatisches oder manuelles Referenzieren im Maschinenbewegungsprogramm der zwei oder mehreren alternativen zweiten Bewegungsanweisungen und/oder der weiteren Bewegungsanweisungen, die der bedingten Programmabzweigung im Maschinenbewegungsprogramm in Ablaufrichtung folgen, in einer in Ablaufrichtung vor der Programmabzweigung auftretenden Bewegungsanweisung, insbesondere vor der ersten Bewegungsanweisung oder in der ersten Bewegungsanweisung, die der bedingten Programmabzweigung im Maschinenbewegungsprogramm in Ablaufrichtung unmittelbar vorausgeht.
  • Ein automatisches Referenzieren beispielsweise kann in einer speziellen Variante des Verfahrens dadurch erfolgen, dass das Maschinenbewegungsprogramm Zugriffsfunktionen oder Zugriffsmethoden aufweist, die formale Parameter umfassen, in welche die zu referenzierenden zweiten Bewegungsanweisungen und/oder weiteren Bewegungsanweisungen als aktuelle Parameter automatisch eingetragen werden, welche aktuellen Parameter virtuelle Rückgabewerte bilden, die durch das Maschinenbewegungsprogramm als virtuelle Aufrufparameter der zweiten Bewegungsanweisungen und/oder weiteren Bewegungsanweisungen vor ihrer eigentlichen Ausführung automatisch auslesbar sind.
  • Das manuelle Referenzieren beispielsweise kann in einer anderen Variante des Verfahrens dadurch erfolgen, dass das Maschinenbewegungsprogramm über editierbare Bewegungsanweisungen verfügt, die Attribute umfassen, in denen die Eigenschaften der zu referenzierenden zweiten Bewegungsanweisungen und/oder der weiteren Bewegungsanweisungen als aktuelle Parameter der Bewegungsanweisungen manuell eingetragen werden können.
  • Generell, d.h. in allen Ausführungsformen können die Eigenschaften der jeweiligen Bewegungsanweisung nicht nur Parameter der Bewegungsanweisung sein, wie beispielsweise die Zielpunkte oder Koordinaten, die geforderten Geschwindigkeiten und/oder Beschleunigungen, sondern können auch andere Spezifikationen der Bewegungsanweisung sein, wie insbesondere die Art der Bewegungsanweisung, so z.B. PTP-Befehl, LIN-Befehl oder CIRC-Befehl als solches.
  • In allen entsprechend geeigneten Ausführungsformen kann das Bestimmen der Eigenschaften der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, die gemäß der bedingten Programmabzweigung möglich sind, dadurch erfolgen, dass die in der ersten Bewegungsanweisung referenzierten zwei oder mehreren alternativen zweiten Bewegungsanweisungen und/oder weiteren Bewegungsanweisungen aufgrund der Verweise in der ersten Bewegungsanweisung ausgelesen werden. So können die im Programmablauf zeitlich hinter der bedingten Programmabzweigung liegenden Bewegungsanweisungen bereits zeitlich vor der bedingten Programmabzweigung ausgelesen und damit in der Vorlaufsteuerung berücksichtigt werden. Im Unterschied zum bisher Bekannten wird jedoch nicht nur ein einzelner prädiktiver weiterer Verlauf der Bewegungstrajektorie im Bahnplanungsprogramm bzw. in der Vorlaufsteuerung geplant, sondern alle gemäß der bedingten Programmabzweigung möglichen weiteren Verläufe der mehreren alternativen Bewegungstrajektorien im Bahnplanungsprogramm bzw. in der Vorlaufsteuerung über ein, zwei oder ggf. weitere Bewegungsanweisungen hinweg vorausgeplant.
  • Generell kann das Bestimmen des Zeitpunkts, an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, dadurch erfolgen, dass für alle individuellen Überschleifbewegungen eine jeweilige Zeitdauer aus den Bahnparametern und den physikalischen Eigenschaften automatisch bestimmt wird, aus allen entsprechenden Zeitdauern der individuellen Überschleifbewegungen der zwei oder mehreren alternativen zweiten Bewegungsanweisungen, die längste Zeitdauer herausselektiert wird, und auf Grundlage des momentanen Zeitpunkts und der herausselektierten längsten Zeitdauer der späteste Zeitpunkt, an dem eine Überschleifbewegung beginnen muss, bestimmt wird.
  • In Kenntnis des spätesten Zeitpunkts, an dem eine Überschleifbewegung beginnen muss und des momentanen Zeitpunkts kann auch festgestellt werden, ob für alle alternativen zweiten Bewegungsanweisungen, die aufgrund der bedingten Programmabzweigung die Ausführung einer Überschleifbewegung noch sichergestellt werden kann. Falls dies nicht der Fall ist, also festgestellt wird, dass der späteste Zeitpunkt, an dem eine Überschleifbewegung beginnen muss zeitlich bereits verstrichen ist, kann steuerungstechnisch und/oder programmtechnisch vorgesehen werden, dass ein laufender Überschleifmodus beendet, d.h. abgebrochen wird oder ein noch nicht begonnener Überschleifmodus erst gar nicht gestartet wird.
  • Es kann ergänzend vorgesehen sein, dass das Übermitteln des ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitts an die Bewegungssteuerung zum Ausführen einer Bewegung der Maschine derart, dass sich der Bezugspunkt der Maschine dem ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitt entsprechend automatisch bewegt, erst unmittelbar vor dem spätesten Zeitpunkt oder lediglich kurz vor dem spätesten Zeitpunkt ausgeführt wird. Alternativ oder ergänzend kann ein Abfragen und/oder ein Auswerten des auslösenden Ereignisses erst unmittelbar vor dem spätesten Zeitpunkt oder lediglich kurz vor dem spätesten Zeitpunkt ausgeführt werden. Das Abfragen kann beispielsweise ein Einlesen eines Sensorsignals in das Bahnplanungsprogramm oder das Maschinenbewegungsprogramm sein. Ein Auswerten kann einen Vorgang umfassen, bei dem ein eingelesenes Sensorsignal beispielsweise umgewandelt wird und/oder beispielsweise mit anderen Sensorsignalen gemeinsam ausgewertet und/oder kombiniert wird. So kann möglichst lange beispielsweise auf das Eingehen externer Signale gewartet werden, die für die weitere Programmausführung ggf. notwendig sind, bspw. um ein vom Roboter bewegtes Werkzeug prozessabhängig ansteuern zu können. Ganz allgemein können diejenigen Bewegungsanweisungen des Maschinenbewegungsprogramms, die von dem an die Bewegungssteuerung zum Ausführen einer Bewegung der Maschine bereits übermittelten, vorausgeplanten Bewegungstrajektorien-Abschnitt erfasst sind, automatisch mit einer Kennzeichnung versehen werden, derart, dass bei geplantem Erreichen dieser Bewegungsanweisungen während des Ablaufs des Maschinenbewegungsprogramms diese Bewegungsanweisungen nicht erneut an das Bahnplanungsprogramm übermittelt werden.
  • In einer Variante kann bei geplantem Erreichen der Bewegungsanweisungen während des Ablaufs des Maschinenbewegungsprogramms, die mit der Kennzeichnung versehen sind, ein Übermitteln der Stützpunkte und/oder Zielpunkte dieser gekennzeichneten Bewegungsanweisungen an das Bahnplanungsprogramm unterbunden werden und statt dessen derjenige vorausgeplante Bewegungstrajektorien-Abschnitt, welcher auf Grundlage dieser gekennzeichneten Bewegungsanweisungen bereits erzeugt wurde, direkt an die Bewegungssteuerung übergeben werden.
  • Die erfindungsgemäße Aufgabe wird außerdem gelöst durch ein Computerprogrammprodukt aufweisend einen maschinenlesbaren Träger, auf dem Programmcode gespeichert ist, der von einer Maschine auslesbar ist und der die Maschine ausbildet und/oder einrichtet, ein Verfahren wie erfindungsgemäße beschrieben durchzuführen, wenn der Programmcode von der Maschine ausgeführt wird.
  • Konkrete Ausführungsbeispiele der Erfindung sind in der nachfolgenden Figurenbeschreibung unter Bezugnahme auf die beigefügten Figuren näher erläutert. Konkrete Merkmale dieser exemplarischen Ausführungsbeispiele können unabhängig davon, in welchem konkreten Zusammenhang sie erwähnt sind, gegebenenfalls auch einzeln oder auch in anderen Kombinationen der Merkmale betrachtet, allgemeine Merkmale der Erfindung darstellen.
  • Die Figuren zeigen:
    • 1 eine schematische Darstellung eines beispielhaften Aufbaus einer Maschinensteuerung, insbesondere Robotersteuerung,
    • 2 eine schematische Darstellung einer beispielhaften Bewegungstrajektorie im Bereich einer bedingten Programmabzweigung,
    • 3 eine schematische Darstellung eines beispielhaften Verfahrens zum Überschleifen über eine bedingte Programmabzweigung hinweg,
    • 4 eine schematische Darstellung eines abgewandelten Verfahrens, bei dem die Zielpunkte der zweiten und weiteren Bewegungsanweisungen automatisch vor die bedingte Programmabzweigung geholt werden, und
    • 5 eine schematische Darstellung eines abgewandelten Verfahrens, bei dem die Zielpunkte der zweiten und weiteren Bewegungsanweisungen manuell vor der bedingten Programmabzweigung manuell in eine erste Bewegungsanweisung editiert werden.
  • In der 1 ist eine beispielhafte Steuervorrichtung 1 und von dieser angesteuerte Antriebe M1-M6 gezeigt.
  • Die Antriebe M1-M6 können insbesondere elektrische Motoren umfassen, die von der Steuervorrichtung 1, insbesondere einer Antriebsteuerung der Steuervorrichtung 1, gesteuert, insbesondere geregelt antreibbar sind.
  • Die Steuervorrichtung 1 umfasst im Falle des vorliegend gezeigten Ausführungsbeispiels der 1 ein Ablaufsteuerung AS und eine Bewegungssteuerung BS. Die Ablaufsteuerung AS umfasst eine Programmsteuerung PS. Die Steuerungskomponenten können in einer gemeinsamen Steuerungseinheit zusammengefasst sein oder als separate Steuerungskomponenten ausgebildet und über Kommunikationsverbindungen miteinander verbunden sein. Auf der Steuervorrichtung 1, insbesondere auf der Programmsteuerung PS kann wenigstens ein Maschinenbewegungsprogramm MP gespeichert und zur Ausführung eingerichtet sein. Insoweit kann die Steuervorrichtung 1 ein Computerprogrammprodukt aufweisen, das einen maschinenlesbaren Träger umfasst, auf dem Programmcode gespeichert ist, der von der Maschine, insbesondere von einer Robotersteuerung des Roboters auslesbar ist, sodass die Maschine bzw. der Roboter ausbildet und/oder einrichtet ist, ein erfindungsgemäßes Verfahren durchzuführen, wenn der Programmcode von der Maschine oder dem Roboter bzw. dessen Steuervorrichtung 1 ausgeführt wird.
  • Das Maschinenbewegungsprogramm MP, das insoweit ein Roboterprogramm sein kann, enthält Bewegungsanweisungen z.B. PTP1, PTP2, PTP3, PTP4, gemäß denen ein vorab definierter Bezugspunkt im Raum durch die Maschine bzw. den Roboterarm bewegt werden soll.
  • Ein Bahnplanungsprogramm BP der Steuervorrichtung 1, insbesondere der Bewegungssteuerung BS stellt Algorithmen, Modelle und/oder Rechenvorschriften bereit, die auf Grundlage der im Maschinenbewegungsprogramm MP enthaltenen Bewegungsanweisungen eine Bewegungstrajektorie T (2) für den Bezugspunkt unmittelbar erstellen oder mittelbar dadurch erstellen, dass Bewegungsprofile, insbesondere Geschwindigkeitsprofile und/oder Beschleunigungsprofile achsbezogen oder kartesisch durch das Bahnplanungsprogramm BP generiert werden. Die entsprechenden Bewegungsprofile, insbesondere Geschwindigkeitsprofile und/oder Beschleunigungsprofile werden dann insbesondere in achsbezogener Form an eine Bewegungsausführung BA übergeben, welche ihrerseits die Antriebe d.h. die Motoren der Maschine oder des Roboterarms auf Antriebsebene mittels Antriebsregler AR ansteuern oder regeln. Insbesondere auf Ebene der Bahnsteuerung BAS kann eine Grobinterpolation GI der anzusteuernden Punkte stattfinden, wo hingegen bereits in der Bewegungsausführung BA und/oder in den Antriebsreglern AR eine weitere Feininterpolation FI durchgeführt werden kann.
  • Im Falle von Bewegungsanweisungen, die grundsätzlich mit asynchronen Achsbewegungen oder mit synchronen Achsbewegungen durchgeführt werden können, wird die Bahn der Trajektorie zwar nicht in ihrem genauen Bahnverlauf exakt geplant, allerdings findet insoweit eine Bewegungsplanung statt, bei der die Geschwindigkeitsprofile und/oder die Beschleunigungsprofile der einzelnen Achsbewegungen durchaus geplant werden, wodurch sich in Abhängigkeit des jeweiligen Startpunktes und des angenommenem Zielpunktes bzw. der angenommenen mehreren aufeinanderfolgenden Zielpunkten ein reproduzierbarer stetiger Bahnverlauf BV ergibt, wie dies durch 2 veranschaulicht ist. Wie bereits erwähnt, werden in einem Überschleifmodus die von den Bewegungsanweisungen definierten genauen Zielpunkte Z nicht exakt angefahren, sondern unter Vermeiden eines Anhaltens in einem parametrierbaren Abstandsbereich von dem jeweiligen Zielpunkt Z umfahren, um eine Bewegungstrajektorie BT mit einem stetigen Geschwindigkeitsverlauf zu erhalten.
  • In der 2 ist die Bewegungstrajektorie BT eine grafische Repräsentation des Verlaufs der Bewegung, die der Bezugspunkt im Raum durchläuft. Die Bewegungstrajektorie BT ist insoweit die Spur auf der sich der Bezugspunkt bewegt, wenn die Maschine oder der Roboter gemäß dem Maschinenbewegungsprogramm MP automatisch angesteuert wird.
  • Ein Bewegungstrajektorien-Abschnitt BA stellt im Allgemeinen eine Teilstrecke der gesamten Bewegungstrajektorie dar. Im Speziellen werden erfindungsgemäß unter den jeweiligen Bewegungstrajektorien-Abschnitten BA1,BA2, BA3 diejenigen Teile von mehreren möglichen Bewegungstrajektorien T2.1, T2.2, T2.3 verstanden, die im Maschinenbewegungsprogramm MP aufgrund der bedingten Programmabzweigung PA (3 - 5) alternativ auftreten können (ALT1, ALT2), solange das für die bedingten Programmabzweigung PA auslösende Ereignis noch nicht stattgefunden hat und es deshalb noch nicht feststeht, welche der zwei oder mehreren möglichen Bewegungstrajektorien-Abschnitte BA1,BA2, BA3 tatsächlich zur Ausführung kommen.
  • Die 2 zeigt schematisch das Bestimmen des frühesten Zeitpunkts t1, an dem eine Überschleifbewegung beginnen muss, aus allen Startzeitpunkten t1, t2, t3 der beispielsweise drei alternativen zweiten Bewegungsanweisungen, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss. Dieses Verfahren erfolgt dadurch, dass für alle individuellen Überschleifbewegungen eine jeweilige Zeitdauer vorab parametriert ist, aus allen entsprechenden Zeitdauern der individuellen Überschleifbewegungen der zwei oder mehreren alternativen zweiten Bewegungsanweisungen der späteste Zeitpunkt herausselektiert wird, und auf Grundlage des momentanen Zeitpunkts t0 und der herausselektierten Zeitdauer t1 der späteste Zeitpunkt, an dem eine Überschleifbewegung beginnen muss, bestimmt wird.
  • Die 3 zeigt schematisch das grundlegende Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie BT eines Bezugspunktes einer automatisch anzusteuernden Maschine, wobei die Maschine Antriebe M1-M6 aufweist, die ausgebildet sind, den Bezugspunkt der Maschine im Raum zu bewegen und zwar angesteuert durch die Steuervorrichtung 1, die ausgebildet ist, die Antriebe M1-M6 der Maschine auf Grundlage der automatisch erzeugten Bewegungstrajektorie BT als Führungsgröße mittels einer Ablaufsteuerung AL anzusteuern, wobei die Bewegungstrajektorie BT auf Grundlage wenigstens einer in einem Überschleifmodus auszuführenden ersten Bewegungsanweisung P1 und wenigstens einer der ersten Bewegungsanweisung P1 folgenden zweiten Bewegungsanweisung P2.1, P2.2 eines von der Steuervorrichtung 1 ausführenden Maschinenbewegungsprogramms MP mittels eines Bahnplanungsprogramms BP automatisch erzeugt wird, wobei im Maschinenbewegungsprogramm MP in Ablaufrichtung zwischen der ersten Bewegungsanweisung P1 und einer folgenden zweiten Bewegungsanweisung P2.1, P2.2 sich eine bedingte Programmabzweigung PA befindet, die in Abhängigkeit eines auslösenden Ereignisses eine erste Alternative ALT1 einer zweiten Bewegungsanweisung P2.1 oder wenigstens eine zweite Alternative ALT2 einer zweiten Bewegungsanweisung P2.2 vorgibt.
  • Das Verfahren umfasst die Schritte des Bestimmens der zwei oder mehreren Zielpunkte aller alternativen zweiten Bewegungsanweisungen P2.1, P3.1, P4.1 und P2.2, P3.2, P4.2, die gemäß der bedingten Programmabzweigung PA möglich sind,
    • - des Bestimmens des frühestens Zeitpunkts t1, an dem eine Überschleifbewegung beginnen muss, aus allen Startzeitpunkten t1, t2, t3 der zwei oder mehreren alternativen zweiten Bewegungsanweisungen P2.1, P2.2, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss,
    • - des Übermittelns des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung P1 und der zwei oder mehreren Zielpunkte der zwei oder mehreren alternativen zweiten Bewegungsanweisungen P2.1, P2.2 an ein Bahnplanungsprogramm BP, das unter Berücksichtigung des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung P1 den zwei oder mehreren alternativen zweiten Bewegungsanweisungen P2.1, P2.2 entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte T2.1, T2.2, T2.3 erstellt,
    • - wenn das auslösende Ereignis für die bedingte Programmabzweigung PA stattgefunden hat, Auswählen desjenigen vorausgeplanten Bewegungstrajektorien-Abschnitts T2.1, welcher der dem auslösenden Ereignis entsprechenden alternativen zweiten Bewegungsanweisung P2.1 der bedingten Programmabzweigung PA entspricht, auf die aufgrund des auslösenden Ereignisses abgezweigt wird,
    • - des Übermittelns des ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitts BA1 an die Ablaufsteuerung AL zum Ausführen einer Bewegung der Maschine derart, dass sich der Bezugspunkt der Maschine dem ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitt BA1 entsprechend automatisch bewegt.
  • Wie aus 3 bis 5 ersichtlich kann die bedingte Programmabzweigung PA in wenigstens einer durch das auslösende Ereignis bestimmten Alternative z.B. ALT1 und/oder ALT2 außer einer zweiten Bewegungsanweisung P2.1, P2.2 zusätzlich beispielsweise eine dritte Bewegungsanweisung P3.1, P3.2 und eine vierte Bewegungsanweisung P4.1, P4.2 aufweisen.
  • Ein Bestimmen des frühesten Zeitpunkts t1, an dem eine Überschleifbewegung beginnen muss, erfolgt dann aus allen Startzeitpunkten t1 und t2 der zwei alternativen zweiten Bewegungsanweisungen P2.1, P2.2, zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, unter Einbeziehen der jeweils weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2 zu der jeweiligen zweiten Bewegungsanweisung P2.1, P2.2.
  • Ein Übermitteln des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung P1 und der zwei oder mehreren Zielpunkte der zwei alternativen zweiten Bewegungsanweisungen P2.1, P2.2 und der jeweiligen weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2 erfolgt dabei an das Bahnplanungsprogramm BP, wobei das Bahnplanungsprogramm BP unter Berücksichtigung des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung P1 den zwei alternativen zweiten Bewegungsanweisungen P2.1, P2.2 und den jeweils weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2 entsprechende zwei vorausgeplante Bewegungstrajektorien-Abschnitte T2.1 und T2.2 erstellt.
  • Das Bahnplanungsprogramm BP kann somit eingerichtet sein, außer den zu überschleifenden ersten Stützpunkt der ersten Bewegungsanweisung P1, zusätzlich wenigstens einen zweiten Stützpunkt der zweiten Bewegungsanweisung P2.1 P2.2 und/oder jeden dritten oder weiteren Stützpunkt einer im Programmablauf folgenden, weiteren Bewegungsanweisung P3.1, P3.2 und P4.1, P4.2 überschleifend zu planen.
  • Die 4 und 5 zeigen eine Variante des Verfahren, gekennzeichnet durch automatisches oder manuelles Referenzieren im Maschinenbewegungsprogramm MP der zwei oder mehreren alternativen zweiten Bewegungsanweisungen P2.1, P2.2 und/oder der weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2, die der bedingten Programmabzweigung PA im Maschinenbewegungsprogramm MP in Ablaufrichtung folgen, in einer in Ablaufrichtung vor der Programmabzweigung PA auftretenden Bewegungsanweisung, insbesondere vor der ersten Bewegungsanweisung P1 oder in der ersten Bewegungsanweisung P1, die der bedingten Programmabzweigung PA im Maschinenbewegungsprogramm MP in Ablaufrichtung unmittelbar vorausgeht.
  • Die 4 zeigt, wie das Referenzieren dadurch erfolgt, dass das Maschinenbewegungsprogramm MP eine Zugriffsfunktion oder Zugriffsmethode Z aufweist, die formale Parameter umfassen, in welche die zu referenzierenden zweiten Bewegungsanweisungen P2.1, P2.2 und/oder weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2 als aktuelle Parameter eingetragen werden, welche aktuellen Parameter virtuelle Rückgabewerte bilden, die durch das Maschinenbewegungsprogramm MP als virtuelle Aufrufparameter der zweiten Bewegungsanweisungen P2.1, P2.2 und/oder weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2 vor ihrer eigentlichen Ausführung automatisch auslesbar machen.
  • Die 5 zeigt, wie das Referenzieren dadurch erfolgt, dass das Maschinenbewegungsprogramm MP über editierbare Bewegungsanweisungen A verfügt, die Attribute umfassen, in denen die Zielpunkte der zu referenzierenden zweiten Bewegungsanweisungen P2.1, P2.2 und/oder der weiteren Bewegungsanweisungen P3.1, P3.2 und P4.1, P4.2 als aktuelle Parameter der Bewegungsanweisung P1 manuell eingetragen werden können.

Claims (13)

  1. Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie (BT) eines Bezugspunktes einer automatisch anzusteuernden Maschine, wobei die Maschine Antriebe (M1-M6) aufweist, die ausgebildet sind, den Bezugspunkt der Maschine im Raum zu bewegen und zwar angesteuert durch eine Steuervorrichtung (1), die ausgebildet ist, die Antriebe (M1-M6) der Maschine auf Grundlage der automatisch erzeugten Bewegungstrajektorie (BT) als Führungsgröße mittels einer Bewegungssteuerung (BS) anzusteuern, wobei die Bewegungstrajektorie (BT) auf Grundlage wenigstens einer in einem Überschleifmodus auszuführenden ersten Bewegungsanweisung (P1) und wenigstens einer der ersten Bewegungsanweisung (P1) folgenden zweiten Bewegungsanweisung (P2.1, P2.2) eines von der Steuervorrichtung (1) auszuführenden Maschinenbewegungsprogramms (MP) mittels eines Bahnplanungsprogramms (BP) automatisch erzeugt wird, wobei im Maschinenbewegungsprogramm (MP) in Ablaufrichtung zwischen der ersten Bewegungsanweisung (P1) und der folgenden zweiten Bewegungsanweisung (P2.1, P2.2) sich eine bedingte Programmabzweigung (PA) befindet, die in Abhängigkeit eines auslösenden Ereignisses eine erste Alternative (ALT1) der zweiten Bewegungsanweisung (P2.1) oder wenigstens eine zweite Alternative (ALT2) der zweiten Bewegungsanweisung (P2.2, P2.3) vorgibt, aufweisend die Schritte: - Bestimmen von Eigenschaften der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2, P2.3), die gemäß der bedingten Programmabzweigung (PA) möglich sind, - Bestimmen eines Zeitpunkts (t1), an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten (t1, t2, t3) der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2, P2.3), zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, - Übermitteln der Eigenschaften der ersten Bewegungsanweisung (P1) und der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2, P2.3) an das Bahnplanungsprogramm (BP), das unter Berücksichtigung des zu überschleifenden Stützpunktes der ersten Bewegungsanweisung (P1) den zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2, P2.3) entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte (BA1, BA2, BA3) erstellt, - wenn das auslösende Ereignis für die bedingte Programmabzweigung (PA) stattgefunden hat, Auswählen desjenigen vorausgeplanten Bewegungstrajektorien-Abschnitts (BA1), welcher der dem auslösenden Ereignis entsprechenden alternativen zweiten Bewegungsanweisung (P2.1, P2.2, P2.3) der bedingten Programmabzweigung (PA) entspricht, auf die aufgrund des auslösenden Ereignisses abgezweigt wird, - Übermitteln des ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitts (BA1) an eine Bewegungsausführung (BA) zum Ausführen einer Bewegung der Maschine derart, dass sich der Bezugspunkt der Maschine entsprechend dem ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitt (BA1) automatisch bewegt.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die bedingte Programmabzweigung (PA) in wenigstens einer durch das auslösende Ereignis bestimmten Alternative (ALT1, ALT2) außer einer zweiten Bewegungsanweisung (P2.1,P2.2) zusätzlich wenigstens eine weitere Bewegungsanweisung (P3.1,P3.2, P4.1, P4.2) aufweist und - ein Bestimmen des Zeitpunkts (t1), an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1,P2.2), zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, erfolgt unter Einbeziehen der jeweils weiteren Bewegungsanweisungen (P3.1,P3.2, P4.1, P4.2) zu der jeweiligen zweiten Bewegungsanweisung (P2.1,P2.2), und - ein Übermitteln der Eigenschaften der zu überschleifenden ersten Bewegungsanweisung (P1) und der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2) und der jeweiligen weiteren Bewegungsanweisungen (P3.1, P3.2, P4.1, P4.2) an das Bahnplanungsprogramm (BP) erfolgt, wobei das Bahnplanungsprogramm (BP) unter Berücksichtigung der Eigenschaften der zu überschleifenden ersten Bewegungsanweisung (P1), den zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2) und den jeweils weiteren Bewegungsanweisungen (P3.1, P3.2, P4.1, P4.2) entsprechende wenigstens zwei oder mehrere vorausgeplante Bewegungstrajektorien-Abschnitte (T2.1, T2.2, T2.3) erstellt.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Bahnplanungsprogramm (BP) eingerichtet ist, außer der zu überschleifenden ersten Bewegungsanweisung (P1), zusätzlich wenigstens eine zweite Bewegungsanweisung (P2.1, P2.2) und/oder jede dritte oder weitere im Programmablauf folgende Bewegungsanweisung (P3.1, P3.2, P4.1, P4.2) überschleifend zu planen.
  4. Verfahren nach einem der Ansprüche 1 bis 3, gekennzeichnet durch automatisches oder manuelles Referenzieren im Maschinenbewegungsprogramm (MP) der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2) und/oder der weiteren Bewegungsanweisungen (P3.1, P3.2, P4.1, P4.2), die der bedingten Programmabzweigung (PA) im Maschinenbewegungsprogramm (MP) in Ablaufrichtung folgen, in einer in Ablaufrichtung vor der Programmabzweigung (PA) auftretenden Bewegungsanweisung, insbesondere vor der ersten Bewegungsanweisung (P1) oder in der ersten Bewegungsanweisung (P1), die der bedingten Programmabzweigung (PA) im Maschinenbewegungsprogramm (MP) in Ablaufrichtung unmittelbar vorausgeht.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass das Referenzieren dadurch erfolgt, dass das Maschinenbewegungsprogramm (MP) Zugriffsfunktionen (Z) oder Zugriffsmethoden (Z) aufweist, die formale Parameter umfassen, in welche die zu referenzierenden zweiten Bewegungsanweisungen (P2.1, P2.2) und/oder weiteren Bewegungsanweisungen (P3.1, P3.2, P4.1, P4.2) als aktuelle Parameter eingetragen werden, welche aktuellen Parameter virtuelle Rückgabewerte bilden, die durch das Maschinenbewegungsprogramm (MP) als virtuelle Aufrufparameter der zweiten Bewegungsanweisungen (P2.1, P2.2) und/oder weiteren Bewegungsanweisungen (P3.1, P3.2, P4.1, P4.2) vor ihrer eigentlichen Ausführung automatisch auslesbar sind.
  6. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass das Referenzieren dadurch erfolgt, dass das Maschinenbewegungsprogramm (MP) über editierbare Bewegungsanweisungen (A) verfügt, die Attribute umfassen, in denen die Eigenschaften der zu referenzierenden zweiten Bewegungsanweisungen (P2.1, P2.2) und/oder der weiteren Bewegungsanweisungen (P3.1,P3.2, P4.1, P4.2) als aktuelle Parameter der Bewegungsanweisungen manuell eingetragen werden.
  7. Verfahren nach einem der Ansprüche 4 bis 6, dadurch gekennzeichnet, dass das Bestimmen der Eigenschaften der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2, P3.1, P3.2, P4.1, P4.2), die gemäß der bedingten Programmabzweigung (PA) möglich sind, dadurch erfolgt, dass die in der ersten Bewegungsanweisung (P1) referenzierten zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2) und/oder weiteren Bewegungsanweisungen (P3.1, P3.2, P4.1, P4.2) aufgrund der Verweise in der ersten Bewegungsanweisung (P1) ausgelesen werden.
  8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das Bestimmen des Zeitpunkts (t1), an dem eine Überschleifbewegung spätestens beginnen muss, aus allen Startzeitpunkten (t1, t2, t3) der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2), zu denen die jeweils individuelle Überschleifbewegung spätestens beginnen muss, dadurch erfolgt, dass für alle individuellen Überschleifbewegungen eine jeweilige Zeitdauer aus den Bahnparametern und den physikalischen Eigenschaften automatisch bestimmt wird, aus allen entsprechenden Zeitdauern der individuellen Überschleifbewegungen der zwei oder mehreren alternativen zweiten Bewegungsanweisungen (P2.1, P2.2, P3.1, P3.2, P4.1, P4.2) die längste Zeitdauer herausselektiert wird, und auf Grundlage des momentanen Zeitpunkts und der herausselektierten längsten Zeitdauer der späteste Zeitpunkt (t1), an dem eine Überschleifbewegung beginnen muss, bestimmt wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass das Übermitteln des ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitts (BA1) an die Bewegungssteuerung (BS) zum Ausführen einer Bewegung der Maschine derart, dass sich der Bezugspunkt der Maschine dem ausgewählten, vorausgeplanten Bewegungstrajektorien-Abschnitt (BA1) entsprechend automatisch bewegt, erst unmittelbar vor dem spätesten Zeitpunkt (t1) oder lediglich kurz vor dem spätesten Zeitpunkt (t1) ausgeführt wird.
  10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass ein Abfragen und/oder ein Auswerten des auslösenden Ereignisses erst unmittelbar vor dem spätesten Zeitpunkt (t1) oder lediglich kurz vor dem spätesten Zeitpunkt (t1) ausgeführt wird.
  11. Verfahren nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, dass diejenigen Bewegungsanweisungen des Maschinenbewegungsprogramms (MP), die von dem an die Bewegungssteuerung (AB) zum Ausführen einer Bewegung der Maschine bereits übermittelten, vorausgeplanten Bewegungstrajektorien-Abschnitt (BA1) erfasst sind, automatisch mit einer Kennzeichnung versehen werden, derart, dass bei geplantem Erreichen dieser Bewegungsanweisungen (P2.1, P2.2) während des Ablaufs des Maschinenbewegungsprogramms (MP) diese Bewegungsanweisungen (P2.1, P2.2) nicht erneut an das Bahnplanungsprogramm (BP) übermittelt werden.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass bei geplantem Erreichen der Bewegungsanweisungen während des Ablaufs des Maschinenbewegungsprogramms (MP), die mit der Kennzeichnung versehen sind, ein Übermitteln der Stützpunkte und/oder Zielpunkte dieser gekennzeichneten Bewegungsanweisungen (P2.1, P2.2) an das Bahnplanungsprogramm (BP) unterbunden wird und statt dessen derjenige vorausgeplante Bewegungstrajektorien-Abschnitt (T2.1), welcher auf Grundlage dieser gekennzeichneten Bewegungsanweisungen (P2.1, P2.2) bereits erzeugt wurde, direkt an die Bewegungssteuerung (BS) übergeben wird.
  13. Computerprogrammprodukt aufweisend einen maschinenlesbaren Träger, auf dem Programmcode gespeichert ist, der von einer Maschine auslesbar ist und der die Maschine ausbildet und/oder einrichtet, ein Verfahren nach einem der Ansprüche 1 bis 12 durchzuführen, wenn der Programmcode von der Maschine ausgeführt wird.
DE102018203078.2A 2018-03-01 2018-03-01 Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt Active DE102018203078B3 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102018203078.2A DE102018203078B3 (de) 2018-03-01 2018-03-01 Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt
PCT/EP2019/053689 WO2019166229A1 (de) 2018-03-01 2019-02-14 Verfahren zum automatischen erzeugen einer bewegungstrajektorie und zugehöriges computerprogrammprodukt

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018203078.2A DE102018203078B3 (de) 2018-03-01 2018-03-01 Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt

Publications (1)

Publication Number Publication Date
DE102018203078B3 true DE102018203078B3 (de) 2019-05-09

Family

ID=65440972

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018203078.2A Active DE102018203078B3 (de) 2018-03-01 2018-03-01 Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt

Country Status (2)

Country Link
DE (1) DE102018203078B3 (de)
WO (1) WO2019166229A1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3797937A1 (de) * 2019-09-27 2021-03-31 Siemens Aktiengesellschaft Anhalten einer produktionsmaschine auf kollisionsfreier bahn
WO2021110254A1 (en) * 2019-12-04 2021-06-10 Abb Schweiz Ag Method of controlling industrial actuator, control system and actuator system
DE102021204004B3 (de) 2021-04-21 2022-07-07 Kuka Deutschland Gmbh Erstellen eines Roboterprogramms und Betreiben eines Roboters
DE102021125628B3 (de) 2021-10-04 2022-10-13 Physik Instrumente (PI) GmbH & Co KG Geschwindigkeitsvorgaben zur Trajektorienbestimmung von Kinematiken

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2022608A2 (de) 2007-07-31 2009-02-11 Rockwell Automation Technologies, Inc. Verbesserter Mischalgorithmus für Trajektorienplanung
DE102007056117A1 (de) 2007-11-15 2009-05-28 Kuka Roboter Gmbh Industrieroboter und Verfahren zum Steuern der Bewegung eines Industrieroboters
DE102014226789A1 (de) 2014-12-22 2016-07-07 Kuka Roboter Gmbh Verfahren und Manipulatoranordnung zum bedingten Anhalten zumindest eines Manipulators auf einer Bahn

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6216058B1 (en) * 1999-05-28 2001-04-10 Brooks Automation, Inc. System of trajectory planning for robotic manipulators based on pre-defined time-optimum trajectory shapes
WO2008119383A1 (en) * 2007-03-30 2008-10-09 Abb Technology Ab Method and apparatus for programming an industrial robot
DE102015204641B4 (de) * 2014-06-03 2021-03-25 ArtiMinds Robotics GmbH Verfahren und System zur Programmierung eines Roboters
ES2830799T3 (es) * 2014-07-10 2021-06-04 Siemens Ag Procedimiento para el control automático de un aparato manipulador

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2022608A2 (de) 2007-07-31 2009-02-11 Rockwell Automation Technologies, Inc. Verbesserter Mischalgorithmus für Trajektorienplanung
DE102007056117A1 (de) 2007-11-15 2009-05-28 Kuka Roboter Gmbh Industrieroboter und Verfahren zum Steuern der Bewegung eines Industrieroboters
DE102014226789A1 (de) 2014-12-22 2016-07-07 Kuka Roboter Gmbh Verfahren und Manipulatoranordnung zum bedingten Anhalten zumindest eines Manipulators auf einer Bahn

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3797937A1 (de) * 2019-09-27 2021-03-31 Siemens Aktiengesellschaft Anhalten einer produktionsmaschine auf kollisionsfreier bahn
WO2021058201A1 (de) * 2019-09-27 2021-04-01 Siemens Aktiengesellschaft Anhalten einer produktionsmaschine auf kollisionsfreier bahn
CN114450644A (zh) * 2019-09-27 2022-05-06 西门子股份公司 生产机器在无碰撞的轨迹上的停止
WO2021110254A1 (en) * 2019-12-04 2021-06-10 Abb Schweiz Ag Method of controlling industrial actuator, control system and actuator system
DE102021204004B3 (de) 2021-04-21 2022-07-07 Kuka Deutschland Gmbh Erstellen eines Roboterprogramms und Betreiben eines Roboters
DE102021125628B3 (de) 2021-10-04 2022-10-13 Physik Instrumente (PI) GmbH & Co KG Geschwindigkeitsvorgaben zur Trajektorienbestimmung von Kinematiken

Also Published As

Publication number Publication date
WO2019166229A1 (de) 2019-09-06

Similar Documents

Publication Publication Date Title
DE102018203078B3 (de) Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt
DE102015004932B4 (de) Simulationsvorrichtung für mehrere Roboter
DE102009048252B4 (de) In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung
DE102018122376B3 (de) Verfahren und Vorrichtung zur kollisionsfreien Bewegungsplanung eines Manipulators
DE102017004366B4 (de) Numerische Steuervorrichtung
DE102014103370B4 (de) Verfahren und Vorrichtung zur zeitdiskreten Steuerung eines Manipulators
DE102009004285A1 (de) Verfahren und Vorrichtung zur Optimierung, Überwachung oder Analyse eines Prozesses
EP2212753A1 (de) Verfahren zum abfahren einer vorgegebenen bahn durch einen manipulator, sowie steuervorrichtung zur durchführung eines solchen verfahrens
DE3317263A1 (de) Manipulator mit adaptiver geschwindigkeitsgesteuerter bahnbewegung
DE102006061752A1 (de) Roboter und Verfahren zum Programmieren eines Roboters
DE102011108282A1 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
WO2010040493A1 (de) Industrieroboter und bahnplanungsverfahren zum steuern der bewegung eines industrieroboters
EP0530401B1 (de) Verfahren zum Auslösen von positionsbezogenen Schaltvorgängen während eines von einem Roboter oder einer Werkzeugmaschine ausgeführten Bearbeitungsvorganges
EP2072195B2 (de) Verfahren zum Steuern der Bewegung eines Roboters innerhalb eines Arbeitsraums
DE102005037779A1 (de) Numerische Steuereinheit
DE102010064308A1 (de) Steuerung für eine Werkzeugmaschine
DE102015116522B3 (de) Synchronisierung mehrerer Roboter
EP2796952A1 (de) Numerische Steuerung mit Möglichkeit zur Änderung des Teileprogramms
EP2209596B1 (de) Industrieroboter und verfahren zum steuern der bewegung eines industrieroboters
DE102015103451A1 (de) Verfahren zum zeitdiskreten Kontrollieren antreibbarer Achsen, Computerprogrammprodukt und Vorrichtung zur Durchführung eines derartigen Verfahrens
EP3037221A2 (de) Verfahren und manipulatoranordnung zum bedingten anhalten zumindest eines manipulators auf einer bahn
DE102020124734A1 (de) Simulationsgerät
EP2656980A2 (de) Verfahren und Mittel zum Vorgeben und/oder Steuern eines Manipulatorprozesses
DE102016211470A1 (de) Verfahren zur planung einer bewegungsbahn eines manipulators
WO2017063887A1 (de) Synchronisierung mehrerer roboter

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R082 Change of representative

Representative=s name: BOESS, DIETER ALEXANDER, DIPL.-ING. (UNIV.), DE

R020 Patent grant now final