DE4000348A1 - Vorrichtung und verfahren zum ueberwachen der bewegungen eines vielgelenkigen roboters - Google Patents

Vorrichtung und verfahren zum ueberwachen der bewegungen eines vielgelenkigen roboters

Info

Publication number
DE4000348A1
DE4000348A1 DE4000348A DE4000348A DE4000348A1 DE 4000348 A1 DE4000348 A1 DE 4000348A1 DE 4000348 A DE4000348 A DE 4000348A DE 4000348 A DE4000348 A DE 4000348A DE 4000348 A1 DE4000348 A1 DE 4000348A1
Authority
DE
Germany
Prior art keywords
data
monitoring devices
processor
robot
monitoring
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.)
Withdrawn
Application number
DE4000348A
Other languages
English (en)
Inventor
Gary Babcock Gordon
Carl Alan Myerholtz
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE4000348A1 publication Critical patent/DE4000348A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4062Monitoring servoloop, e.g. overload of servomotor, loss of feedback or reference
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4063Monitoring general control system

Description

Die Erfindung betrifft eine Vorrichtung und ein Verfahren zum Überwachen der Bewegungen eines vielgelenkigen Roboters.
In Anlagen haben Roboter im allgemeinen jeweils eine beweg­ liche Hand oder eine "End-Arbeitsgerätschaft", die über mehrere bewegliche Gelenke mit einer Basis verbunden ist. Normalerweise befindet sich an oder neben jedem Gelenk in solch einem Roboter ein Servomotor, um es der End-Arbeits­ gerätschaft zu erlauben, Teile oder Werkzeuge in gesteuerter Art und Weise zu handhaben. Damit solche Roboter im Arbeits­ betrieb komplexe und sich wandelnde Aufgaben erfüllen kön­ nen, ist es erforderlich, daß sie jeweils mehrere Freiheits­ grade haben. Ferner ist es höchst wünschenswert, daß viel­ gelenkige Roboter koordinierte Bewegungen ausführen können, wobei gleichzeitig jeder einzelne Gelenkantrieb individuell überwacht werden können sollte.
Herkömmliche Roboter-Architekturen sehen vor, daß Mikropro­ zessoren und andere Schaltungen, welche die Gelenkantriebe des Roboters überwachen, normalerweise in einem einzigen Kartengehäuse untergebracht sind, wobei typischerweise sechs bis vierzehn Überwachungsleitungen für die Verbindung je Roboter-Gelenk erforderlich sind. Demzufolge müssen für die Überwachung eines Roboters mit sechs oder mehr Gelenken mindestens vierzig oder mehr elektrische Leitungen durch die Glieder und Gelenke des Roboters geführt werden. Ein solcher herkömmlicher Aufbau ist nicht nur teuer in der Herstellung. Er kann auch die Zuverlässigkeit des Roboters bei gleichzeitiger Betriebskostensteigerung mindern.
Der Erfindung liegt die Aufgabe zugrunde, die Komplexität der bekannten Verbindungs-Architekturen für vielgelenkige Roboter zu senken.
Die gestellte Aufgabe wird erfindungsgemäß mit einer Vor­ richtung nach Anspruch 1 bzw. mit einem Verfahren nach Anspruch 15 gelöst.
Nach der Erfindung sind die Überwachungsschaltungen eines Roboters über den Roboter verteilt und parallel über eine einheitliche Busstruktur miteinander verbunden. Nach einer besonderen Ausführungsform der Erfindung umfaßt die einheit­ liche Busstruktur vier Leitungen, nämlich zwei Energielei­ tungen und zwei Datenleitungen. Vorzugsweise sind die Daten­ leitungen gemeinsam für alle Überwachungsschaltungen, wobei eine bidirektionale Datenübertragung im Zeit-Multiplexbe­ trieb ausgeführt wird. Die einheitliche Busstruktur senkt die Herstellungszeiten und -kosten, steigert die Zuver­ lässigkeit und senkt die Betriebskosten.
Im folgenden ist die Erfindung anhand bevorzugter Ausfüh­ rungsbeispiele unter Bezugnahme auf die Zeichnungen mit weiteren Einzelheiten näher erläutert. Es zeigen:
Fig. 1 eine schematische Ansicht einer Ausführungsform eines Roboters mit einer Vorrichtung zum Über­ wachen der einzelnen Gelenke des Roboters;
Fig. 2 ein funktionelles Blockschaltbild der Über­ wachungsvorrichtung für den Roboter nach Fig. 1;
Fig. 3 ein funktionelles Blockschaltbild des Kinematik- Prozessors nach Fig. 2;
Fig. 4 ein Blockschaltbild, welches detaillierter den Befehls-Prozessor und den Servomechanismus nach Fig. 2 zeigt;
Fig. 5 ein Blockschaltbild der Programmierung des Be­ fehls-Prozessors;
Fig. 6 eine schematische Darstellung des zeit-multiplexen Verarbeitens eines Datenrahmens auf dem Bus in den obigen Zeichnungen; und
Fig. 7 eine schematische Darstellung einer typischen Übertragung, bei der ein Datenrahmen auf den Bus nach den obigen Zeichnungen gegeben wird.
Fig. 1 zeigt einen vielgelenkigen Roboter 1, der zum Zwecke der Überwachung an einen programmierbaren Computer 4 und einen Kinematik-Prozessor 6 angeschlossen ist. Der Computer 4 und der Kinematik-Prozessor 6 steuern gemeinsam koordi­ nierte Bewegungen des Roboters mit seinen End-Arbeitsge­ rätschaften. Wie nachstehend noch näher erläutert ist, ist der Kinematik-Prozessor 6 über einen einheitlichen Energie- und Datenbus 9 mit den Roboter 1 verbunden. Dieser dient der Kommunikation mit mehreren Gelenk-Prozessoren in dem Roboter, wodurch ein intelligentes Netzwerk gebildet ist.
Zum Zwecke der Verdeutlichung ist der Roboter 1 in Fig. 1 von der Gelenkbauart. Er umfaßt eine Basis 10, die auf einem Träger 12 angebracht ist, was horizontale transla­ torische Bewegungen des Roboters mittels eines linearen Gelenkes 14 A (in Fig. 1 nicht zu sehen) erlaubt. Der Roboter 1 umfaßt ferner ein Schulterdrehgelenk 14 B, mit dem ein Arm 16, bestehend aus einem Oberarm 20, einem Unterarm 22 und einer Handwurzel 24 verbunden ist. Der Oberarm 20 und der Unterarm 22 sind miteinander über ein Ellbogendrehgelenk 14 C verbunden. Der Unterarm 22 und die Handwurzel 24 sind über ein Handwurzeldrehgelenk 14 D miteinander verbunden. An dem Ende des Armes 16 verbindet ein Drehgelenk 14 E die Handwurzel mit der Hand 7. Nach der dargestellten bevor­ zugten Ausführungsform ist die Hand 7 von einem Greifer mit zwei einander gegenüberliegenden Teilen gebildet, welche über ein Scherengelenk 14 F miteinander verbunden sind, so daß sie scherenförmige Bewegungen ausführen können.
Beim Betrieb des Roboters 1 nach Fig. 1 werden die Bewe­ gungen der Gelenke 14 A bis 14 F von dem Kinematik-Prozessor 6 in Verbindung mit dem Computer 4 überwacht. Der Computer 4 kann beispielsweise ein Personal-Computer der Hewlett- Packard Vectra Serie sein. Die Verbindung mit dem Kinematik- Prozessor 6 könnte über einen Standard HPIB-Bus realisiert werden. Typischerweise ist der Computer 4 in der Praxis so programmiert, daß er es dem Bediener erlaubt, komplexe schwierige Arbeiten des Roboters 1 zu steuern, wobei der Kinematik-Prozessor 6 so programmiert ist, daß er die Bewe­ gungen der einzelnen Gelenke des Roboters auf der Basis von Befehlen aus dem Computer 4 koordiniert überwacht. Wie noch detailliert beschrieben wird, werden die einzelnen Gelenke 14 A bis 14 F des Roboters 1 jeweils mittels eines separaten Servomechanismus mit einem Befehlsprozessor, einem Gleich­ strom-Servomotor und einem Positionssensor zum Erfassen der Gelenkposition überwacht.
In dem System nach Fig. 2 ist der Kinematik-Prozessor 6 so angeschlossen, daß er in häufigen und regelmäßigen Inter­ vallen Befehle an Befehls-Prozessoren 15 A bis 15 F auf Mikro­ prozessorbasis gibt. Es sei darauf hingewiesen, daß die Be­ fehls-Prozessoren 15 A bis 15 F an oder nahe den entsprechen­ den Gelenken 14 A bis 14 F des Roboters nach Fig. 1 angeord­ net sind. Die Befehls-Prozessoren 15 A bis 15 F sind so ange­ schlossen, daß sie individuell die Servomechanismen 18 A bis 18 F überwachen, welche ihrerseites die entsprechenden Ge­ lenke 14 A bis 14 F betreiben. In der Praxis umfaßt jeder einzelne Befehls-Prozessor einen Ein-Chip-Mikroprozessor, wie etwa Hitachi-Modell 6301, mit einem eingebauten RAM und einem eingebauten ROM, ferner einen Zeitgeber und eine serielle Schnittstelle. Mitunter können auch zwei oder mehr der Gelenk-Servomotoren 18 A bis 18 F von einem einzelnen Mikroprozessor überwacht werden, welcher zentral bezüglich der Gelenke angeordnet ist.
Im Hinblick auf Fig. 2 sei noch darauf hingewiesen, daß sich die Befehls-Prozessoren 15 A bis 15 F den einzigen Bus 9 teilen, der nach einer bevorzugten Ausführungsform einen bidirektionalen Datenbus 9 A umfaßt, so daß der Kinematik- Prozessor 6 Rückmeldesignale von den Befehls-Prozessoren empfangen kann. In der Praxis ist der Bus 9 durch alle Befehls-Prozessorkarten geführt, wobei an jeder Karte Daten von dem Bus abgenommen werden. Der Datenbus 9 A umfaßt vor­ zugsweise ein bidirektionales differentielles Paar ver­ drillter Datenleitungen, welche nach dem RS 485-Standard für ausgeglichene digitale Vielpunktsysteme arbeiten, wobei die Datenübertragungen im Zeit-Multiplexbetrieb erfolgen. Anstelle eines verdrillten Leiterpaares kann der Datenbus 9 A für die bidirektionale Übertragung eine optische Faser umfassen, was eine geringfügige Steigerung der Komplexität und der Kosten bedeutet.
Gemäß Fig. 3 kann der Kinematik-Prozessor 6 als zwei sepa­ rate Module angesehen werden, nämlich ein Modul 44 für die kartesisch trajektorische Berechnung und ein Modul 46 für die Transformation von kartesischen in polare Koordinaten. Die beiden Module 44 und 46 können als ein Mikroprozessor ausgeführt sein, beispielsweise einer der Motorola MC68000- Familie. Im Betrieb berechnet das Modul 44 für die karte­ sisch trajektorische Berechnung eine Sequenz von Koordi­ natenpunkten im kartesischen Raum (x, y, z) für eine jede spezifizierte geradlinige Bewegung eines Robotergelenks innerhalb des Betriebsbereiches des Roboters. Die Koordina­ tenfolgen werden häufig als lineare Bewegungsprofile be­ zeichnet. In der Praxis umfaßt jedes für ein Gelenk berech­ nete Bewegungsprofil typischerweise, daß des Kinematik- Prozessors 6 eine Steigerung der Geschwindigkeit beim Beginn einer Bewegung, ein Konstanthalten der Geschwindigkeit bei Höchstgeschwindigkeit und eine Absenkung der Geschwindigkeit bei Annäherung an die Endposition fordert. Das Modul 46 für die Übertragung vom kartesischen in das polare Koordinaten­ system überträgt die linearen Bewegungsprofile in Polarko­ ordinaten oder "Gelenkraum"-Koordinaten unter Verwendung sphärischer trigonometrischer Funktionen.
Im folgenden ist der Betrieb des Systems nach Fig. 2 und Fig. 3 erläutert. Zu Beginn gibt der Computer 4 komplexe Befehle an den Kinematik-Prozessor 6, wodurch er die Art der gewünschten Bewegung des Roboters bezeichnet. Beispielsweise können komplexe Befehle eine Serie von gradlinigen Bewegun­ gen umfassen, was dazu führt, daß der Roboter eine Teströhre von einem Gestell nimmt und den Inhalt der Teströhre in ein Becherglas schüttet. Der Kinematik-Prozessor 6 übersetzt mittels des kartesisch-trajektorischen Computers 44 die komplexen Befehle in lineare Bewegungsprofile, um es den einzelnen Gelenken zu ermöglichen, die befohlenen Aktionen auszuführen. Dann überträgt das Modul 46 für die Übertragung von kartesischen in polare Koordinaten die linearen Bewe­ gungsprofile in polare Gelenkraum-Koordinaten. In der Praxis werden etwa alle vierzig Millisekunden (40 ms) individuelle Sätze polarer Gelenkraum-Koordinaten von dem Modul 46 be­ rechnet, wobei jeder Satz Koordinatenpunkte eine Position definiert, die zwischen einer Anfangs- und einer End-Ko­ ordinaten-Position liegt. Dann werden die Sätze polarer Koordinaten über den Energie- und Datenbus 9 an die Befehls- Prozessoren 15 A bis 15 F gegeben.
In der Praxis erfordert das Ziel eine gleichmäßige Bewegung eines Roboters, der von einem Kinematik-Prozessor wie oben beschrieben überwacht wird, eine Zerlegung oder Interpola­ tion der polaren Gelenkraum-Koordinaten unter Verwendung von Zeitabschnitten, die kleiner sind als die vorgenannten 40 Millisekunden (40 ms) Intervalle. Gemäß dem System nach Fig. 2 erfolgt die lineare Interpolation der Sätze polarer Koordinaten durch die individuellen Befehls-Prozessoren 15 A bis 15 F. Demzufolge umfaßt das Ausgangssignal jedes Befehls- Prozessors 15 A bis 15 F auf dem Datenbus 9 A eine Folge von Polarkoordinaten in feinen Abständen, die zwischen den Zwischenkoordinaten, welche von dem Modul 46 zur Übertragung der kartesischen in polare Koordinaten erzeugt werden, gleichverteilt sind.
In der Praxis beträgt die Frequenz, mit der Befehle für ein bestimmtes Gelenk von dem Computer 4 an den Kinematik-Pro­ zessor 6 gesendet werden, etwa 1 pro Sekunde, die Frequenz, mit der Befehle für ein bestimmtes Gelenk von dem Kinematik- Prozessor 6 an einen bestimmten Befehls-Prozessor gesendet werden, etwa 10 bis 100 pro Sekunde und die Frequenz, mit der interpolierte Befehle tatsächlich von einem Motor an einem bestimmten Gelenk empfangen werden, etwa 1000 pro Se­ kunde.
Wie ferner in Fig. 2 gezeigt, sind die Servomotoren 18 A bis 18 F und die Befehls-Prozessoren 15 A bis 15 F über einen Energie-Bus 42 und Schaltregler 45 A bis 45 F mit einer Ener­ gieversorgung 30 verbunden. In der Praxis ist die Energie­ versorgung 30 gemeinsam mit dem Kinematik-Prozessor 6 unter­ gebracht, wie durch die gestrichelte rechteckige Einfassung 39 in Fig. 2 angedeutet ist. Die Energieversorgung auf dem Bus 42 ist grob auf 32 Volt (nominell) bei bis zu 6 Ampere geregelt. Bei den einzelnen Befehls-Prozessoren 15 A bis 15 F ist die Spannung höher und wird von einem zugehörigen Schaltregler 45 A bis 45 F geregelt. Die Servomotoren 18 A bis 18 F können jedoch direkt ohne weitere Regelung von dem Energiebus 42 direkt mit Energie versorgt werden. Es sei darauf hingewiesen, daß der Datenbus 9 A und der Energiebus 42 zusammen einen einheitlichen Bus 9 bilden. Ferner sei darauf hingewiesen, daß die Energie- und Datenkanäle mit­ einander kombiniert werden können, indem Daten auf den Energiebus moduliert werden.
Im folgenden wird Bezug genommen auf Fig. 4, welche einen typischen Befehlsprozessor, wie den Befehls-Prozessor 15 B zeigt. Fig. 4 zeigt ferner einen RS485-Transceiver-Chip 48. Dieser stellt eine serielle Datenschnittstelle zu dem Befehls-Prozessor 15 B auf dem Datenbus 9 A dar. In der Praxis umfaßt der RS485-Transceiver-Chip eine einheitliche kompa­ tible physikalische Verbindungsschicht für die Datenübertra­ gung zwischen dem Befehls-Prozessor und dem Kinematik-Pro­ zessor 6 der Fig. 2 und 3. Der RS485-Transceiver-Chip ist im wesentlichen unempfindlich gegen Rauschen durch differenziell Vergleichen der Spannungen auf dem Leitungs­ paar, das den Datenbus 9 A umfaßt.
Ferner ist gemäß Fig. 4 der Befehls-Prozessor 15 B so ange­ schlossen, daß er über einen Stromverstärker 52 B den Gelenk­ antrieb 18 B überwacht. In der Praxis kann die Überwachung von der Art und Weise her entweder eine Pulsbreitenmodu­ lation oder eine Digital-Analog-Wandlung beinhalten. Ferner ist Fig. 4 zu entnehmen, daß ein Inkremental-Meßgeber 54 B mit dem Antrieb 18 B und einem Quadratur-Decoder 56 B verbun­ den ist, so daß eine geschlossene Regelschleife für den Motor gebildet ist. Vorzugsweise ist der Inkremental-Meß­ geber 54 B von demjenigen Typ, der von einer Drehscheibe gebildet ist, die in einander abwechselnde helle und dunkle Segmente geteilt ist, und der zwei Photozellen umfaßt, die um 90° phasenverschoben sind. Ein solcher Inkremental-Meß­ geber ist deshalb bevorzugt, weil er es dem Quadratur-Deco­ der erlaubt, sowohl die relative Größe als auch die Richtung von Positionsänderungen eines Motorankers zu erfassen. Inkremental-Meßgeber und Quadratur-Decoder sind beispiels­ weise von Hewlett-Packard zu beziehen.
Beim Betrieb des Systems nach Fig. 4 empfängt der Befehls- Prozessor 15 B Soll-Positionen auf dem Datenbus 9 A und Folge­ positionen von dem Quadratur-Decoder 56 B. Die Soll- und Folgepositionen werden in entsprechenden Registern 58 B und 60 B gespeichert. Die Register sind in den Befehls-Prozessor 15 B integriert. Auf der Grundlage der gespeicherten Soll­ und Folgepositionen berechnet der Befehls-Prozessor 15 B die Differenz zwischen Positionspaaren. Aus diesen Berechnungen resultieren in Echtzeit Positionsfehler betreffend das entsprechende Gelenk. Daraufhin verwendet der Befehls-Pro­ zessor 15 B die berechneten Positionsfehler dazu, die Größe des Stromes an den Antrieb 15 B entsprechend einem Über­ wachungsalgorithmus zu bestimmen, wie etwa dem Überwachungs­ gesetz, daß die Geschwindigkeit des Gelenkes proportional zum Positionsfehler sein soll. In der bevorzugten Über­ wachungstrategie für eine statische Soll-Position arbeitet der Befehls-Prozessor 15 B in der Weise, daß die Über­ wachungsschleife zwischen dem Überwachungsprozessor 14 B und dem Antrieb 18 B iterativ durchlaufen wird, bis der Posi­ tionsfehler zu Null geworden ist. Demzufolge kann die Ge­ samtüberwachung des Antriebs 18 B als drei einzelne Über­ wachungsschleifen angesehen werden, wobei die innerste die Stromüberwachungs-Schleife, die nächste die Geschwindig­ keitsüberwachungs-Schleife und die äußerste die Positions­ überwachungs-Schleife ist.
Der Befehls-Prozessor 15 B ist im folgenden unter Bezugnahme auf das Blockschaltbild der Programmierung nach Fig. 5 näher erläutert. Der Befehls-Prozessor 15 B umfaßt drei Module: ein Positionsbefehlsmodul 62 B, ein Statusfunktions­ modul 64 B und ein "Haushalt"-Funktionsmodul 66 B. Das Posi­ tionsbefehlsmodul 62 B ist mit einem linearen Interpolierer 70 B verbunden, der, wie oben erwähnt lineare Interpolationen von Koordinatenpositionen der Gelenke in bezug auf Soll- Positionen durchführt. Die Interpolationen können beispiels­ weise 32 Schritte zwischen jeweils zwei Positionsbefehlen umfassen.
Ferner zeigt Fig. 5 ein Servomodul 68, das einen Servoalgo­ rithmus und verschiedene Register umfaßt. Es handelt sich um Register für die Soll-Positionen und für Folgepositionen. Entsprechend den in diesen Registern abgelegten Informa­ tionen gibt das Statusfunktionsmodul 64 B Rückmeldungen an den Kinematik-Prozessor 6 (Fig. 1 und 2), und zwar ent­ sprechend den Positionsbefehlen, die von dem Befehls-Pro­ zessor 15 B empfangen werden. Typischerweise umfassen die Rückmeldungen den Status der Motorposition und des Motor­ stromes. Der Motorstromstatus steht für das Motormoment und zeigt demzufolge an, ob das Glied des Roboters auf ein Hindernis gestoßen ist.
Das Haushalt-Funktionsmodul 66 B nach Fig. 5 dient dazu, den Befehls-Prozessor 15 B mit herkömmlichen Komponenten der Befehlsprozessorplatine zu verbinden. Beispielsweise erlaubt das Modul 66 das Lesen und Schreiben von bzw. in Register(n), welche Servoparameter und Platinenadressen beinhalten. Darüber hinaus gehören das Zurücksetzen und das Initialisieren zu den Funktionen des Moduls 66.
Fig. 6 zeigt ein Beispiel eines Synchronprotokolls für die Zeitlagenzuweisung auf dem Datenbus 9 A. Bei der bevorzugten Betriebsweise werden Zeitlagen auf dem Datenbus 9 A zugewie­ sen, um es dem Kinematik-Prozessor 6 zu erlauben, Positions­ befehle für die Steuerung der Prozessoren 15 A bis 15 F auszu­ geben, und um es allen Befehlsprozessoren zu erlauben, Gelenkwinkel und Positionsfehlermitteilungen an den Kinema­ tik-Prozessor zurückzumelden. Nach dem dargestellten Zuwei­ sungssystem ist jedem Befehls-Prozessor 15 A bis 15 F jeweils eine Soll-Zeitlage zugewiesen, um es ihm zu ermöglichen, Informationen über Soll-Positionen (d.h. Koordinaten von Zielpositionen) empfangen zu können. Nach dem dargestellten Protokoll ist jede Soll-Lage von einer Antwortlage gefolgt, welche dem angesprochenen Gelenkprozessor zugewiesen ist, um es letzterem zu ermöglichen, Antwortsignale an den Kine­ matik-Prozessor 6 zu senden. In der Praxis werden Soll- Lagen und Antwortlagen für die einzelnen Befehlsprozessoren auf dem Bus zusammen als Datenrahmen bezeichnet.
Fig. 7 dient dazu, die Erläuterung der Übertragungsdaten auf dem Bus 9 A zu unterstützen. Eine typische Bus-Übertragung umfaßt, wie beispielhaft dargestellt, einen 24-Bit-Posi­ tionsbefehl und eine Folge von Statusantworten. In der Praxis mit beispielsweise einem Roboter mit sechs Gelenken und einem einzelnen Kinematik-Prozessor wird den sieben Einheiten auf dem Bus jeweils eine einzigartige Adresse zugeordnet. Ferner wird jede Nachricht auf dem Datenbus 9 A durch ein Führungsbyte gekennzeichnet, welches eine Adresse aufweist für die entsprechende Einheit aufweist und ein Leerbyte sowie bis zu acht Datenbytes beinhaltet. Nach dem Beispiel in Fig. 7 umfaßt ein typischer Positionsbefehl die Adresse der Befehlseinheit, den Befehlscode und eine Soll-Position mit drei Byte. Wie ebenfalls dem Beispiel nach Fig. 7 zu entnehmen ist, umfaßt eine typische Antwort die Adresse der antwortenden Einheit, ein Statusbyte, eine Anzeige der Motorposition mit drei Byte, ein Momentbyte und eine Anzeige des Positionsfehlers nit zwei Byte. Für Nach­ richten mit Maximallänge kann ein Rahmen zwanzig Datenbyte enthalten. In der Praxis wird es bevorzugt, die Bytes seri­ ell zu übertragen, wobei noch ein Startbit und ein Stopbit, also insgesamt 10 Bit vorgesehen sind. Diese Praxis beruht auf einem Maximum von 200 Bit pro Busübertragung und etwa 1400 Bit pro Datenblock. Typischerweise verarbeitet der Kinematik-Prozessor 6 25 Datenblocks pro Sekunde, was in einer Gesamtdatenrate von etwa 35 Kilobit pro Sekunde resul­ tiert.
Die in der vorstehenden Beschreibung, den Ansprüchen sowie der Zeichnung offenbarten Merkmale der Erfindung können sowohl einzeln als auch in beliebigen Kombinationen für die Verwirklichung der Erfindung in ihren verschiedenen Ausfüh­ rungsformen wesentlich sein.

Claims (15)

1. Vorrichtung zum Überwachen der Bewegungen eines viel­ gelenkigen Roboters (1), gekennzeichnet durch
mehrere Gelenkantriebe (18 A-18 F), die jeweils ein proximales Gelenk (14 A-14 F) des Roboters (1) antreiben;
mehrere Überwachungseinrichtungen (15 A-15 F), die je­ weils einen proximalen Gelenkantrieb (18 A-18 F) über­ wachen;
eine elektrische Energieversorgung (30);
einen Kinematik-Prozessor (6), der eine Folge digital verschlüsselter Sollpositionssignale an jede der Über­ wachungseinrichtungen (15 A-15 F) gibt; und
einen Datenbus (9) zum Verbinden der Energieversorgung (30), des Kinematik-Prozessors (6) und der Überwa­ chungseinrichtungen (15 A-15 F) untereinander derart, daß zum einen Energie an jeden der Gelenkantriebe (18 A- 18 F) gegeben wird und zum anderen zwischen dem Kinema­ tik-Prozessor (6) und einzelnen Überwachungseinrich­ tungen (15 A-15 F) Datenübertragungen stattfinden können.
2. Vorrichtung nach Anspruch 1, dadurch gekenn­ zeichnet, daß die Überwachungseinrichtungen (15 A-15 F) jeweils einen Mikroprozessor umfassen.
3. Vorrichtung nach Anspruch 1 oder 2, dadurch ge­ kennzeichnet, daß der Datenbus (9) zwei Energieleitungen (42) und mindestens eine Datenleitung (9 A) umfaßt.
4. Vorrichtung nach Anspruch 3, dadurch gekenn­ zeichnet, daß mindestens eine Datenleitung (9 A) bidirektional ist und zwei Datenkanäle umfaßt.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Überwachungsein­ richtungen (15 A-15 F) linear arbeiten, um Positionsin­ formationen von dem Kinematik-Prozessor (6) zu inter­ polieren.
6. Vorrichtung nach einem der Ansprüche 3 bis 5, ge­ kennzeichnet durch Mittel zur zeit-multi­ plexen Datenübertragung auf der Datenleitung (9 A).
7. Vorrichtung nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Gelenk­ antriebe (18 A-18 F) jeweils einen Servo-Leistungsver­ stärker (52 A-52 F) umfassen.
8. Vorrichtung nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß mindestens drei Überwachungseinrichtungen (15 A-15 F) vorgesehen sind.
9. Vorrichtung nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der Kine­ matik-Prozessor (6) im Zeit-Multiplexbetrieb über den Datenbus (9) Signale an die Überwachungseinrichtungen (15 A-15 F) überträgt.
10. Vorrichtung nach einem der Ansprüche 4 bis 9, dadurch gekennzeichnet, daß die mindestens eine Datenleitung (9 A) Positionsinformationen von dem Kine­ matik-Prozessor (6) an die Überwachungseinrichtungen (15 A-15 F) und Daten von den Überwachungseinrichtungen (15 A-15 F) an den Kinematik-Prozessor (6) überträgt.
11. Vorrichtung zum Überwachen der Bewegungen eines viel­ gelenkigen Roboters (1), gekennzeichnet durch
einen Kinematik-Prozessor (6);
mehrere Überwachungseinrichtungen (15 A-15 F) für die Gelenke, die jeweils die Bewegungen eines zugehörigen Gelenkes des vielgelenkigen Roboters überwachen; und einen Energie- und Datenbus (9), der sämtliche Über­ wachungseinrichtungen (15 A-15 F) für die Gelenke seriell mit einer Energieversorgung (42) des Energie- und Datenbusses (9) verbindet, wobei den Überwachungsein­ richtungen (15 A-15 F) und einem Datenteil (9 A) des Energie- und Datenbusses Energie zugeführt wird, der Daten zwischen dem Kinematik-Prozessor (6) und jeder der Überwachungseinrichtungen (15 A-15 F) überträgt.
12. Vorrichtung nach Anspruch 11, dadurch gekenn­ zeichnet, daß der Datenteil (9 A) des Energie­ und Datenbusses (9) bidirektional ist und zwei Daten­ kanäle umfaßt.
13. Vorrichtung nach Anspruch 11 oder 12, dadurch ge­ kennzeichnet, daß der Kinematik-Prozessor (6) im Zeit-Multiplexbetrieb über den Datenteil (9 A) des Energie- und Datenbusses (9) Signale an die Über­ wachungseinrichtungen (15 A-15 F) überträgt.
14. Vorrichtung nach Anspruch 12 oder 13, dadurch ge­ kennzeichnet, daß die Datenkanäle Posi­ tionsinformationen von dem Kinematik-Prozessor (6) an die Überwachungseinrichtungen (15 A-15 F) für die Gelenke und Daten von den Überwachungseinrichtungen (15 A-15 F) für die Gelenke an den Kinematik-Prozessor (6) über­ tragen.
15. Verfahren zum Überwachen eines vielgelenkigen Roboters (1), welcher Befehlsprozessoren (15 A-15 F) auf Mikro­ prozessor-Basis proximal zumindestens einigen seiner Gelenke umfaßt, gekennzeichnet durch die folgenden Schritte: Datenaustausch zwischen sämtlichen Befehlsprozessoren (15 A-15 F) auf Mikroprozessor-Basis und einem Kinematik- Prozessor (6) durch Übertragen von Signalen über eine einheitliche Bus-Struktur (9) im Zeit-Multiplexbetrieb; und Übertragen von Energie für die Befehls-Prozessoren (15 A-15 F) auf Mikroprozessor-Basis über die einheit­ liche Bus-Struktur (9).
DE4000348A 1989-03-06 1990-01-08 Vorrichtung und verfahren zum ueberwachen der bewegungen eines vielgelenkigen roboters Withdrawn DE4000348A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US31960689A 1989-03-06 1989-03-06

Publications (1)

Publication Number Publication Date
DE4000348A1 true DE4000348A1 (de) 1990-09-13

Family

ID=23242960

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4000348A Withdrawn DE4000348A1 (de) 1989-03-06 1990-01-08 Vorrichtung und verfahren zum ueberwachen der bewegungen eines vielgelenkigen roboters

Country Status (3)

Country Link
US (1) US5130631A (de)
JP (1) JPH02273806A (de)
DE (1) DE4000348A1 (de)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4211835A1 (de) * 1991-04-09 1992-10-15 Toyota Motor Co Ltd Roboter mit einer vielzahl von manipulatoren
EP0910150A2 (de) * 1997-10-17 1999-04-21 Dr. Johannes Heidenhain GmbH Verfahren und Schaltungsanordnung zur sicheren Überwachung der Regelbarkeit von Elektromotoren
WO2001038047A2 (de) * 1999-11-22 2001-05-31 Wittenstein Ag Greif- oder betätigungsarm
DE102006022817A1 (de) * 2006-05-13 2007-11-15 INGENIEURBüRO CAT M. ZIPPERER GMBH Vorrichtung zur kostengünstigen Probenhandhabung im Labor
DE102010013617A1 (de) 2010-04-01 2011-10-06 Festo Ag & Co. Kg Modular aufgebauter Roboter
DE102009056578B4 (de) * 2009-12-01 2014-02-27 Kuka Laboratories Gmbh Industrieroboter
CN104898707A (zh) * 2015-04-30 2015-09-09 合肥林晨信息科技有限公司 一种曲线轨道移动监控云台系统

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274311A (en) * 1991-11-13 1993-12-28 Quest Technologies, Inc. Control system network structure
DE19722318A1 (de) 1997-05-28 1998-12-03 Kuka Roboter Gmbh Einrichtung zur Leistungsversorgung von Motoren eines Roboters
JPH115133A (ja) * 1997-06-12 1999-01-12 Toyotomi Kiko Kk 複合型物品搬送装置
FR2768275B1 (fr) * 1997-09-11 1999-11-05 Eaton Sa Monaco Actionneur electromecanique pas a pas asservi en position
JP2000042971A (ja) * 1998-07-29 2000-02-15 Janome Sewing Mach Co Ltd 水平多関節ロボット
DE10046322A1 (de) * 2000-09-19 2002-04-11 Siemens Ag Verfahren zum Ermitteln einer Kenngröße
US20060177295A1 (en) * 2001-04-22 2006-08-10 Hansrued Frueh Buckling arm robot
ITVI20020053A1 (it) * 2002-03-22 2003-09-22 Qem Srl Sistema integrato di controllo degli assi di macchinari industriali
US7254453B2 (en) * 2002-11-21 2007-08-07 Advanced Micro Devices, Inc. Secondary process controller for supplementing a primary process controller
JP4735795B2 (ja) * 2003-12-26 2011-07-27 独立行政法人 宇宙航空研究開発機構 冗長マニピュレータの制御方法
JP4483306B2 (ja) * 2004-01-16 2010-06-16 トヨタ自動車株式会社 タンデムプレス装置
WO2006017254A1 (en) * 2004-07-12 2006-02-16 Immersion Corporation System and method for increasing sensor resolution using interpolation
DE602007013793D1 (de) 2006-11-13 2011-05-19 Raytheon Co Anpassbare spuranordnung für einen raupenroboter
WO2008076192A2 (en) * 2006-11-13 2008-06-26 Raytheon Sarcos Llc Versatile endless track for lightweight mobile robots
US8185241B2 (en) 2006-11-13 2012-05-22 Raytheon Company Tracked robotic crawler having a moveable arm
US8002716B2 (en) 2007-05-07 2011-08-23 Raytheon Company Method for manufacturing a complex structure
WO2009009673A2 (en) 2007-07-10 2009-01-15 Raytheon Sarcos, Llc Modular robotic crawler
US8392036B2 (en) 2009-01-08 2013-03-05 Raytheon Company Point and go navigation system and method
US8935014B2 (en) 2009-06-11 2015-01-13 Sarcos, Lc Method and system for deploying a surveillance network
WO2010144820A2 (en) 2009-06-11 2010-12-16 Raytheon Sarcos, Llc Amphibious robotic crawler
DE202009015682U1 (de) * 2009-12-01 2011-04-14 Kuka Systems Gmbh Transporteinrichtung
US8393422B1 (en) 2012-05-25 2013-03-12 Raytheon Company Serpentine robotic crawler
US9031698B2 (en) 2012-10-31 2015-05-12 Sarcos Lc Serpentine robotic crawler
US9409292B2 (en) 2013-09-13 2016-08-09 Sarcos Lc Serpentine robotic crawler for performing dexterous operations
US9566711B2 (en) 2014-03-04 2017-02-14 Sarcos Lc Coordinated robotic control
CN104972287A (zh) * 2015-08-06 2015-10-14 北京航天数控系统有限公司 一种三自由度机械臂运动控制装置
US10071303B2 (en) 2015-08-26 2018-09-11 Malibu Innovations, LLC Mobilized cooler device with fork hanger assembly
US10807659B2 (en) 2016-05-27 2020-10-20 Joseph L. Pikulski Motorized platforms

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3731704A1 (de) * 1986-09-29 1988-03-31 Asea Ab Verfahren und anordnung zur eichung eines an der hand eines industrieroboters montierten sensors

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3531758A (en) * 1968-03-27 1970-09-29 Leon Blumkin Bus bar assembly
GB1169318A (en) * 1968-07-22 1969-11-05 British Lighting Ind Ltd Track for Distribution of Electrcity
DE1805145A1 (de) * 1968-10-25 1970-09-03 Gema Ag Appbau Einrichtung mit Spritzpistole
DE7022809U (de) * 1970-06-18 1972-01-27 Reininghaus & Co Beleuchtungsvorrichtung
US4201937A (en) * 1978-04-07 1980-05-06 Unimation, Inc. Control apparatus for programmable manipulator
JPS5840761B2 (ja) * 1978-12-20 1983-09-07 工業技術院長 人間腕形マニピュレ−タの制御装置
US4245874A (en) * 1979-03-05 1981-01-20 Mcgraw-Edison Flexible connector assembly for track lighting system
US4420812A (en) * 1979-09-14 1983-12-13 Tokico, Ltd. Teaching- playback robot
JPS5856785A (ja) * 1981-09-30 1983-04-04 株式会社三協精機製作所 工業用ロボツトの動作制御装置
JPS5858607A (ja) * 1981-10-05 1983-04-07 Sankyo Seiki Mfg Co Ltd プリセツト式ロボツトにおけるポイント測定方式
US4467436A (en) * 1981-10-26 1984-08-21 United States Robots, Inc. Robot arm controller with common bus memory
JPS58143981A (ja) * 1982-02-19 1983-08-26 株式会社日立製作所 産業用ロボツトの制御方法
KR900003637B1 (ko) * 1982-11-26 1990-05-28 가부시기가이샤 히다찌 세이사꾸쇼 로보트의 동작제어장치
JPS59114609A (ja) * 1982-12-22 1984-07-02 Hitachi Ltd ロボットの制御装置
JPS59175987A (ja) * 1983-03-26 1984-10-05 株式会社東芝 多関節ロボツト装置
JPS59218513A (ja) * 1983-05-26 1984-12-08 Fanuc Ltd 工業用ロボツトの円弧制御法
US4617502A (en) * 1983-06-30 1986-10-14 Hitachi, Ltd. Method and apparatus for controlling a robot hand along a predetermined path
JPS6085885A (ja) * 1983-10-17 1985-05-15 株式会社日立製作所 多関節機構の制御装置
US4689756A (en) * 1984-06-29 1987-08-25 Shin Meiwa Industry Co., Ltd. Robot interpolation control method
JPS6119593A (ja) * 1984-07-04 1986-01-28 フアナツク株式会社 内圧防爆ロボツトの安全装置
DE3569290D1 (en) * 1984-10-11 1989-05-11 Toshiba Kk Robot joint angle detecting system
JP2713899B2 (ja) * 1987-03-30 1998-02-16 株式会社日立製作所 ロボツト装置
JPH0820894B2 (ja) * 1987-07-01 1996-03-04 株式会社日立製作所 産業用ロボツトの動作制御方法
US4804897A (en) * 1987-08-19 1989-02-14 Hewlett-Packard Company Orientation-dependant robot controller
JP2786225B2 (ja) * 1989-02-01 1998-08-13 株式会社日立製作所 工業用ロボットの制御方法及び装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3731704A1 (de) * 1986-09-29 1988-03-31 Asea Ab Verfahren und anordnung zur eichung eines an der hand eines industrieroboters montierten sensors

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4211835A1 (de) * 1991-04-09 1992-10-15 Toyota Motor Co Ltd Roboter mit einer vielzahl von manipulatoren
EP0910150A2 (de) * 1997-10-17 1999-04-21 Dr. Johannes Heidenhain GmbH Verfahren und Schaltungsanordnung zur sicheren Überwachung der Regelbarkeit von Elektromotoren
EP0910150A3 (de) * 1997-10-17 2000-04-05 Dr. Johannes Heidenhain GmbH Verfahren und Schaltungsanordnung zur sicheren Überwachung der Regelbarkeit von Elektromotoren
WO2001038047A2 (de) * 1999-11-22 2001-05-31 Wittenstein Ag Greif- oder betätigungsarm
DE19956176A1 (de) * 1999-11-22 2001-10-18 Wittenstein Gmbh & Co Kg Greif- oder Betätigungsarm
WO2001038047A3 (de) * 1999-11-22 2002-04-11 Wittenstein Gmbh & Co Kg Greif- oder betätigungsarm
DE102006022817A1 (de) * 2006-05-13 2007-11-15 INGENIEURBüRO CAT M. ZIPPERER GMBH Vorrichtung zur kostengünstigen Probenhandhabung im Labor
DE102006022817B4 (de) * 2006-05-13 2011-09-15 INGENIEURBüRO CAT M. ZIPPERER GMBH Vorrichtung zur kostengünstigen Probenhandhabung im Labor
DE102009056578B4 (de) * 2009-12-01 2014-02-27 Kuka Laboratories Gmbh Industrieroboter
DE102010013617A1 (de) 2010-04-01 2011-10-06 Festo Ag & Co. Kg Modular aufgebauter Roboter
DE102010013617B4 (de) * 2010-04-01 2014-06-12 Festo Ag & Co. Kg Modular aufgebauter Roboter
CN104898707A (zh) * 2015-04-30 2015-09-09 合肥林晨信息科技有限公司 一种曲线轨道移动监控云台系统
CN104898707B (zh) * 2015-04-30 2017-08-25 合肥龙泊信息科技有限公司 一种曲线轨道移动监控云台系统

Also Published As

Publication number Publication date
US5130631A (en) 1992-07-14
JPH02273806A (ja) 1990-11-08

Similar Documents

Publication Publication Date Title
DE4000348A1 (de) Vorrichtung und verfahren zum ueberwachen der bewegungen eines vielgelenkigen roboters
DE2330054C2 (de) Vorrichtung zur Steuerung der Bewegung eines Arbeitselementes eines Roboterarmes
DE3317263A1 (de) Manipulator mit adaptiver geschwindigkeitsgesteuerter bahnbewegung
EP0824231B1 (de) Fertigungsanlage
DE112013003209B4 (de) Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
DE2712169C2 (de) Verfahren zur Ausführung einer komplexen Bewegung durch einen Industrieroboter
DE4411426B4 (de) Multitask-Steuersystem
EP2285537B1 (de) Vorrichtung und verfahren zur rechnergestützten generierung einer manipulatorbahn
DE3236320A1 (de) Vorrichtung zum bewegen eines werkzeugmittelpunktes eines funktionselementes, insbesondere eines roboterarms
DE3249273T1 (de) Robotersystem
DE3344633C2 (de)
DE112019006713B4 (de) Ein Verfahren zur Steuerung einer Bewegung, eine Bewegungssteuereinrichtung und ein System sowie ein Speichermedium desselben
WO2003007097A1 (de) Verfahren und system zur elektronischen bereitstellung von diensten für maschinen über eine datenkommunikationsverbindung
DE2557464A1 (de) Steuersystem fuer eine automatische maschine, insbesondere fuer den arm eines roboters
DE112012003218B4 (de) Laststeuersystem und Lastantriebssystem
DE102008033354A1 (de) Kommunikationsgerät für Roboter
DE102017120221B4 (de) Steuereinheit
EP0196483B1 (de) Lageregelsystem für rechnergesteuerte Arbeitsmaschinen
EP0782722B1 (de) Verfahren und vorrichtung zur steuerung und aktivierung von miteinander mittels eines bussystems vernetzten sensoren und/oder aktuatoren
DE10393527T5 (de) Systeme und Verfahren zur Darstellung komplexer n-Kurven für die Direktsteuerung einer Werkzeugbewegung
DE69913033T2 (de) Steuerungssystem mit Schnittstelle für Ein/Ausgabekarte
DE1908757B2 (de) Steuersystem fuer eine werkzeugmaschine mit einer werkzeugmaschinensteuerung zum auswerten von teilbefehlen zur steuerung der betriebsweise der werkzeugmaschine
EP1692579B1 (de) Verfahren und vorrichtung zum betreiben zusammenarbeitender, unterschiedlicher geräte
EP0903654B1 (de) Steuerungssystem für eine Palettieranlage
EP0825502B1 (de) Steuerungssystem

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8139 Disposal/non-payment of the annual fee