DE102010045528B4 - Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks - Google Patents

Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks Download PDF

Info

Publication number
DE102010045528B4
DE102010045528B4 DE102010045528.8A DE102010045528A DE102010045528B4 DE 102010045528 B4 DE102010045528 B4 DE 102010045528B4 DE 102010045528 A DE102010045528 A DE 102010045528A DE 102010045528 B4 DE102010045528 B4 DE 102010045528B4
Authority
DE
Germany
Prior art keywords
control
robot
dcf
system components
integrated system
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
DE102010045528.8A
Other languages
English (en)
Other versions
DE102010045528A1 (de
Inventor
Adam M. Sanders
Leandro G. Barajas
Frank Noble Permenter
Philip A. Strawser
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.)
GM Global Technology Operations LLC
National Aeronautics and Space Administration NASA
Original Assignee
GM Global Technology Operations LLC
National Aeronautics and Space Administration NASA
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 GM Global Technology Operations LLC, National Aeronautics and Space Administration NASA filed Critical GM Global Technology Operations LLC
Publication of DE102010045528A1 publication Critical patent/DE102010045528A1/de
Application granted granted Critical
Publication of DE102010045528B4 publication Critical patent/DE102010045528B4/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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4141Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by a controller or microprocessor per axis
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4148Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using several processors for different functions, distributed (real-time) systems
    • 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/33Director till display
    • G05B2219/33218Motor encoders, resolvers on common bus with drives, servo controllers

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

Robotersystem, das zum Ausführen einer autonomen Aufgabe betrieben werden kann, wobei das Robotersystem umfasst: einen humanoiden Roboter (10) mit einer Vielzahl integrierter Systemkomponenten, die eine Vielzahl von nachgiebigen Robotergelenken (A, B, C, D, E, F), Stellgliedern, die zum Bewegen der Robotergelenke (A, B, C, D, E, F) ausgelegt sind, und Sensoren umfasst, die zum Messen von Steuerungs- und Rückkopplungsdaten (11) bei einer Vielzahl von Steuerungspunkten der integrierten Systemkomponenten ausgelegt sind; und ein verteiltes Steuerungsgerüst (DCF) (24) mit mehreren Ebenen, das zum Steuern der integrierten Systemkomponenten über mehrere Hochgeschwindigkeitskommunikationsnetzwerke (40, 42, 44) ausgelegt ist, wobei das DCF (24) umfasst: eine Vielzahl erster Controller (29), die jeweils ausgestaltet sind, um die Steuerungs- und Rückkopplungsdaten (11) in mindestens einer der integrierten Systemkomponenten zu verarbeiten und zu steuern; einen zweiten Controller (27), der zum Koordinieren der Funktionalität der integrierten Systemkomponenten über eine Kommunikation mit der Vielzahl erster Controller (29) ausgelegt ist; und einen dritten Controller (25), der zum Übertragen eines Signals ausgelegt ist, welches dem zweiten Controller (27) das Ausführen der autonomen Aufgabe befiehlt; wobei das DCF (24) eine zentralisierte Abstraktionsschicht (50) umfasst, die den Zugriff auf die Steuerungs- und Rückkopplungsdaten (11) an einem einzigen logischen Ort zentralisiert und abstrahiert, wobei die Daten (11) selbst über die verschiedenen Einrichtungen des DCF (24) hinweg verteilt sein können, um eine Steuerung des humanoiden Roboters (10) über die mehreren Hochgeschwindigkeitskommunikationsnetzwerke (40, 42, 44) hinweg zu erleichtern.

Description

  • Diese Erfindung wurde mit Regierungsunterstützung unter dem NASA Space Act Agreement mit der Nummer SAA-AT-07-003 durchgeführt. Die Regierung kann einige Rechte an der Erfindung besitzen.
  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft die Steuerung eines humanoiden Roboters unter Verwendung eines verteilten Rechnernetzwerks aus flexiblen Rechenmodulen oder Steuerungsknoten.
  • HINTERGRUND DER ERFINDUNG
  • Roboter sind Einrichtungen, die zum Manipulieren von Objekten unter Verwendung einer Reihe starrer Glieder in der Lage sind, welche wiederum über Gelenkverbindungen oder stellgliedgetriebene Robotergelenke, z. B. elektrische, pneumatische usw. miteinander verbunden sind. Jedes Gelenk in einem typischen Roboter stellt eine unabhängige Steuerungsvariable dar, die auch als ein Freiheitsgrad (DOF) bezeichnet wird. Greiforgane sind die speziellen Glieder, die zum Ausführen einer anstehenden Aufgabe verwendet werden, z. B. zum Ergreifen eines Werkezeugs oder eines Objekts. Eine präzise Bewegungssteuerung eines Roboters kann daher durch die Ebene der Aufgabenbeschreibung gegliedert sein: eine Steuerung auf Objektebene, d. h. die Fähigkeit zum Steuern des Verhaltens eines Objekts, das in einem Einzelgriff oder einem zusammenwirkenden Griff eines Roboters gehalten wird, eine Greiforgansteuerung und eine Steuerung auf Gelenkebene. Die verschiedenen Steuerungsebenen arbeiten zusammen, um gemeinsam die erforderliche Beweglichkeit, Geschicklichkeit und arbeitsaufgabenbezogene Funktionalität des Roboters zu erreichen.
  • Humaniode Roboter sind insbesondere Roboter, die eine annähernd menschliche Gestalt oder ein annähernd menschliches Erscheinungsbild aufweisen, sei es ein vollständiger Körper, ein Torso und/oder eine Gliedmaße, wobei die strukturelle Komplexität des humanoiden Roboters zu einem großen Teil vom Wesen der Arbeitsaufgabe abhängt, die ausgeführt wird. Die Verwendung von humanoiden Robotern kann dort bevorzugt sein, wo eine direkte Interaktion mit Einrichtungen oder Systemen notwendig ist, die speziell für den menschlichen Gebrauch hergestellt sind. Aufgrund des breiten Spektrums von Arbeitsaufgaben, die von einem humanoiden Roboter möglicherweise erwartet werden, können verschiedene Steuerungsmodi gleichzeitig benötigt werden. Zum Beispiel muss eine präzise Steuerung in den verschiedenen oben angegebenen Räumen sowie eine Kontrolle über das angewandte Drehmoment oder die angewandte Kraft, die Bewegung und die verschiedenen Grifftypen angewendet werden. Bei herkömmlichen industriellen Robotersteuerungssystemen wird die Roboterhardware durch eine einzige zentrale Steuerungseinheit ununterbrochen überwacht und gewartet. In Ansprechen auf zunehmende Freiheitsgrade und eine zugehörige Steuerungskomplexität kann es sein, dass ein derartiges System auf eine zunehmend ineffiziente Weise arbeitet.
  • Die Druckschrift US 7 103 447 B2 offenbart einen Roboter und ein Steuerungsverfahren, das über eine Verhaltensschicht in der Form einer Baumstruktur verfügt, in der eine Vielzahl von Verhaltensmodulen, die voneinander in hohem Maß unabhängig sind, hierarchisch verbunden ist. Einzelne Module können durch ODER-, UND- und ABFOLGE-Verknüpfungen kombiniert werden, und neue Module können einfach hinzugefügt werden.
  • In der Druckschrift US 6 850 818 B2 ist ein Roboter und ein Steuerungsverfahren offenbart, bei denen der Roboter einzelne asynchron empfangene Wahrnehmungsergebnisse zusammensetzt und an ein Verhaltensmodul weitergibt, wobei ein zeitweises Fehlen von Beobachtungsergebnissen folgenlos bleibt, da die Ergebnisse gespeichert sind. Somit wirken sich Fehler bei Erfassungsvorrichtungen und Sensorrauschen nicht aus.
  • Die Druckschrift JP 2006-171 960 A offenbart ein hierarchisches verteiltes Steuerungssystem für Roboter, bei dem Module aus verschiedenen Hierarchieebenen, die zu einer Funktion gehören, jeweils durch Kommunikationsbusse verbunden sind, um die Kommunikationszeiten und den Verdrahtungsaufwand zu verringern.
  • In der Druckschrift DE 601 26 153 T2 ist eine Gangmustererzeugungsvorrichtung für gehfähige Roboter offenbart, bei der auf die Anforderung zum Ändern der Gangart des Roboters Parameter der momentanen Gangart bestimmt werden und eine neue stabile Gangart vorgeschlagen wird. Die Parameter der momentanen Gangart werden korrigiert und unter Verwendung eines dynamischen Modells wird die neue Gangart erzeugt.
  • Die Druckschrift DE 10 2005 044 412 A1 offenbart ein System zum Erfassen von Abnormalitäten eines Kraftsensors für einen mobilen Schreitroboter, der zwischen Fuß und Bein installiert ist und die Reaktionskraft des Bodens auf den Fuß des Roboters anzeigt. Beim Einschalten des Roboters tritt der Roboter auf der Stelle und die Ausgabe des Kraftsensors wird überwacht. Wenn diese Ausgabe nicht in einem vorbestimmten Bereich liegt, wird der Kraftsensor als abnormal klassifiziert.
  • In der Druckschrift DE 600 12 458 T2 sind auf Beinen laufende Roboter und Steuerungsverfahren dafür offenbart, bei denen im Fall, dass festgestellt wird, dass der Roboter umgefallen ist, ein Aufsteh-Betriebsmuster ausgeführt wird, das eine Verlagerung am Rumpf durch eine vorher festgelegte Bewegung umfasst.
  • Die Aufgabe der Verbindung besteht darin, ein Steuerungsgerüst zur Steuerung eines geschickten humanoiden Roboters bereitzustellen, mit dem die Funktionalität des Roboters leicht skaliert werden kann, und das bei einer Unterbrechung oder einem Ausfall eines Steuerungsmoduls des Steuerungsgerüsts den Roboter in einen sicheren Zustand überführt, d. h. einen ”weichen Ausfall” bereitstellt.
  • Diese Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Folglich wird hier ein verteiltes Steuerungsgerüst (DCF, DCF von Distributed Control Framework) zur Steuerung eines geschickten humanoiden Roboters bereitgestellt. Das DCF verwendet eine Reihe verteilter Controller, die über mehrere Hochgeschwindigkeitsnetzwerke kommunizieren, gemeinsam mit einer zentralisierten Abstraktionsschicht, um alle Steuerungs- und Rückkopplungsdaten zu zentralisieren und zu abstrahieren, welche zur Steuerung der Bewegung und anderer Funktionen des Roboters benötigt werden. Eine nahtlose Kopplung der Roboterkomponenten ermöglicht eine präzise Kontrolle über eine breite Vielfalt von nachgiebigen Robotergelenken und anderen Systemen sowohl externer als auch interner Art, welche die verschiedenen Gelenkservomotoren und Stellglieder umfassen, die die Bewegungskraft in und zwischen allen nachgiebigen Gelenken des humanoiden Roboters bereitstellen.
  • Das DCF enthält mehrere Rechensteuerungsknoten, d. h. eingebettete gedruckte Leiterplattenanordnungen (PCBA) oder Prozessoren, und externe Arbeitsstationsrechner, welche automatisch über die verschiedenen Netzwerke kommunizieren, um Funktionen von verschiedenen integrierten Systemkomponenten zu steuern und zu koordinieren, z. B. von Gelenken, Relais, Lasern, Lichtern, elektromagnetischen Befestigungselementen usw., und um dadurch die Aktionen des Roboters zu steuern. Der geschickte humanoide Roboter weist mehrere synchronisierte Gelenke auf, z. B. Schultern, Ellenbogen, einen Nacken, eine Taille, Handgelenke, Finger, Daumen usw., die sich auf synchrone Weise zusammen bewegen können, um eine spezielle Aktion durchzuführen. Ein derartiger humanoider Roboter kann ein Vielfaches der Anzahl von Freiheitsgraden (DOF) oder Richtungssteuerungsvariablen wie ein herkömmlicher Roboter aufweisen. Als Folge muss jedes Steuerungssystem, das die komplexe dynamische Bewegung eines derartigen Roboters zu koordinieren und zu steuern versucht, Steuerungs- und Rückkopplungsdaten schnell verarbeiten, die ein um Größenordnungen höheres Volumen wie dasjenige aufweisen, das bei herkömmlichen Robotersteuerungssystemen anzutreffen ist.
  • Das hier bereitgestellte DCF ermöglicht, dass eine große Menge an Steuerungs- und Rückkopplungsdaten für eine leichte Manipulation, Speicherung und Abfrage der Daten über das Netzwerk an einem einzigen Ort zentralisiert und abstrahiert werden, der hier als eine ”Abstraktionsschicht” bezeichnet wird. Die Hardware und die Steuerungsknoten können dynamisch konfiguriert werden und Roboterfunktionalität kann leicht skaliert werden, ohne dass eine Kompilierung eines komplexen Programmiercodes oder eine Zustandsmaschinenänderungen notwendig sind. Das heißt, dass die einzelnen Befehlsmodule durch die Dezentralisierung des DCF nach Bedarf leicht auf kurzfristige Weise eingebaut und entfernt werden können, um die benötigte Roboterfunktionalität bereitzustellen.
  • Im Umfang der vorliegenden Erfindung ist das DCF funktional redundant und kann über mehrere serielle Hochgeschwindigkeitsbusse, Ethernet, TCP/IP-Streams und Publisher/Subscriber-Datenlieferungssysteme arbeiten. Eine Sammlung von softwarebasierten Netzwerkkommunikationsmanagern (NCM) dient zum Koordinieren und Priorisieren einer Kommunikation im Roboter. Wenn ein spezielles Befehlsmodul während einer Befehlssitzung unterbrochen wird, kann der NCM ”weich ausfallen” und die Steuerung des Roboters in einen sicheren Zustand überführen, wodurch die Sicherheit des Roboters und seiner Bediener sichergestellt wird. Ein unterbrochenes Befehlsmodul kann bei einem Hardwareausfall automatisch in einen sicheren Zustand umschalten und wird versuchen, seinen Ausfallstatus an eine höhere Steuerungsautorität in der Hierarchie der verteilten Controller zu kommunizieren.
  • Die vorstehend erwähnte zentrale Abstraktionsschicht kann als eine softwaregetriebene Einrichtung ausgeführt sein, die alle Befehls- und Rückkopplungsdaten für den humanoiden Roboter an einem zentralen Ort kapselt oder zentralisiert. Ein derartiger Ort kann eine reale, d. h. eine physikalische Einrichtung sein, wie etwa der hier beschriebene Systembefehlshaber, obwohl der Ort auch ”abstrakt” in dem Sinn sein kann, dass die Daten zwischen den verschiedenen Einrichtungen des DCF ähnlich wie die Weise einer Internetdatenverteilung großflächig verteilt sein können, wobei ein Zugriff auf die Informationen über die vorgesehene Einrichtung bereitgestellt wird.
  • Die NCMs überwachen gemeinsam die Daten, die von den verschiedenen eingebetteten Controllern und einem Echtzeitcontroller oder Hirnstamm des humanoiden Roboters an die und aus der Abstraktionsschicht fließen. Ein Datenvermittlungsknoten oder -router kann mit jedem der verschiedenen Netzwerke verwendet werden, um geplante Aktualisierungen an die eingebetteten Prozessoren einzuhalten, welche für die Hardwaresteuerung verantwortlich sind. Diese zentrale Abstraktionsschicht beinhaltet die Grundsteuerungsfunktionalität des Roboters und ist zum Übergang in einen sicheren Zustand in der Lage, wenn dieser durch gewisse Schwellenwertereignisse wie vorstehend erwähnt ausgelöst wird.
  • Die vorstehenden Merkmale und Vorteile und andere Merkmale und Vorteile der vorliegenden Erfindung ergeben sich leicht aus der folgenden genauen Beschreibung der besten Arten zum Ausführen der Erfindung, wenn sie in Verbindung mit den beiliegenden Zeichnungen gelesen wird.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine schematische Veranschaulichung eines geschickten humanoiden Roboters und eines verteilten Steuerungsgerüsts (DCF) gemäß der Erfindung; und
  • 2 ist eine schematische Veranschaulichung des Datenflusses des DCF zum Steuern des geschickten humanoiden Roboters von 1.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Mit Bezug auf die Zeichnungen, in denen gleiche Bezugszeichen gleiche oder ähnliche Komponenten in den verschiedenen Ansichten bezeichnen, zeigt 1 einen geschickten humanoiden Roboter 10, der zum Ausführen einer oder mehrerer Aufgaben mit mehreren Freiheitsgraden (DOF) ausgelegt ist. Gemäß einer Ausführungsform ist der Roboter 10 mit einer Vielzahl von unabhängigen und voneinander abhängig bewegbaren nachgiebigen Robotergelenken ausgestaltet, wie etwa einem Schultergelenk (Pfeil A), einem Ellenbogengelenk (Pfeil B), einem Handgelenk (Pfeil C), einem Nackengelenk (Pfeil D) und einem Taillengelenk (Pfeil E) sowie den verschiedenen Fingergelenken (Pfeil F), die zwischen den Fingergliedern jedes Roboterfingers 19 positioniert sind, ohne aber darauf beschränkt zu sein.
  • Jedes Robotergelenk kann einen oder mehrere Freiheitsgrade aufweisen. Zum Beispiel können einige Gelenke, wie etwa das Schultergelenk (Pfeil A), das Ellenbogengelenk (Pfeil B) und das Handgelenk (Pfeil C) mindestens zwei Freiheitsgrade in der Gestalt von Nicken und Rollen aufweisen. Auf ähnliche Weise kann das Nackengelenk (Pfeil D) mindestens drei Freiheitsgrade aufweisen, während die Taille und dass Handgelenk (Pfeile E bzw. C) einen oder mehrere Freiheitsgrade aufweisen können. In Abhängigkeit von der Komplexität der Aufgabe kann sich der Roboter 10 mit über 42 Freiheitsgraden bewegen. Obwohl es zur Vereinfachung in 1 nicht gezeigt ist, enthält jedes Robotergelenk eines oder mehrere Stellglieder und wird dadurch angetrieben, z. B. Gelenkmotoren, lineare Stellglieder, rotatorische Stellglieder, elektrisch gesteuerte entgegengesetzt wirkende Sehnen und dergleichen.
  • Die Gelenke des Roboters 10 sind aufgrund der Aufnahme von Federn in allen Gelenken nachgiebig, d. h. im ausreichendem Maße nicht steif, und daher können Positionsmessgeber (nicht gezeigt) für das Stellglied oder die Servomotoren sowie für das Gelenk selbst verwendet werden, d. h. um Informationen über die Kraft bereitzustellen, die gerade auf das Gelenk aufgebracht wird. Zudem können 6-achsige Kraftdrehmomentsensoren zwischen nachgiebigen Gelenken vorhanden sein, die vollständige Kraftinformationen über den Status eines gegebenen nachgiebigen Gelenks aufnehmen.
  • Der humanoide Roboter 10 kann einen Kopf 12, einen Torso 14, eine Taille 15, Arme 16, Hände 18, Finger 19 und Daumen 21 umfassen, wobei die vorstehend angemerkten verschiedenen Gelenke darin oder dazwischen angeordnet sind. In Anhängigkeit von der speziellen Anwendung oder der beabsichtigten Verwendung des Roboters kann der Roboter 10 auch eine für die Aufgabe geeignete Halterung oder Basis (nicht gezeigt) enthalten, wie etwa Beine, Laufflächen oder eine andere bewegliche oder starre Basis. Eine Leistungsversorgung 13 kann am Roboter 10 einstückig montiert sein, z. B. ein wiederaufladbarer Batteriestapel, der auf der Rückseite des Torsos 14 mitgeführt oder getragen wird, oder eine andere geeignete Energieversorgung, die möglicherweise durch ein (nicht gezeigtes) externes Kabel angebracht ist, um genügend elektrische Energie an die verschiedenen Gelenke zur Bewegung derselben bereitzustellen.
  • Ein verteiltes Steuerungsgerüst (DCF) 24 stellt eine präzise Bewegungs- und Systemsteuerung der verschiedenen integrierten Systemkomponenten des humanoiden Roboters 10 bereit, z. B. der verschiedenen nachgiebigen Gelenke, Relais, Laser, Lichter, elektromagnetischen Befestigungselemente und anderen Komponenten, die zur Schaffung einer präzisen Kontrolle über den Roboter 10 benötigt werden, welche eine Kontrolle über die feinen und groben Bewegungen umfasst, die zum Manipulieren eines Objekts 20 benötigt werden, welches von den Fingern 19 und dem Daumen 21 einer oder mehrerer Hände 18 ergriffen sein kann. Das DCF 24 ist zur Steuerung jedes Robotergelenks isoliert von den anderen Gelenken sowie zur vollständigen Koordination der Aktionen von mehreren Gelenken beim Ausführen einer komplexeren Arbeitsaufgabe in der Lage.
  • Das DCF 24 kann mehrere digitale Rechner oder Datenverarbeitungseinrichtungen umfassen, die jeweils einen oder mehrere Mikroprozessoren oder zentrale Verarbeitungseinheiten (CPU), einen Festwertspeicher (ROM), einen Speicher mit wahlfreiem Zugriff (RAM), einen elektrisch programmierbaren Festwertspeicher (EPROM), einen Hochgeschwindigkeitstaktgeber, Analog/Digital-Schaltungen (A/D-Schaltungen), Digital/Analog-Schaltungen (D/A-Schaltungen) und beliebige benötigte Eingabe/Ausgabe-Schaltungen (E/A-Schaltungen), E/A-Einrichtungen und Kommunikationsschnittstellen sowie eine Signalaufbereitungs- und Pufferelektronik aufweisen. Einzelne Steuerungsalgorithmen, die in dem DCF 24 vorhanden sind oder für dieses leicht zugänglich sind, können im ROM gespeichert sein und auf einer oder mehreren verschiedenen Steuerungsebenen automatisch ausgeführt werden, um die jeweilige Steuerungsfunktionalität bereitzustellen.
  • Immer noch mit Bezug auf 1 kann das DCF 24 bei einer Ausführungsform einen ersten Controller oder einen Controller auf oberer Ebene, der hier nachstehend als der Systembefehlshaber 25 bezeichnet wird, und einen zweiten Controller oder einen Echtzeitcontroller auf mittlerer Ebene umfassen, der hier nachstehend als der Hirnstamm 27 bezeichnet wird. Das DCF 24 umfasst auch mehrere eingebettete Gelenkcontroller 29, die jeweils im Roboter 10 nahe bei den Gelenken eingebettet sind, die von ihnen gesteuert werden, wie nachstehend beschrieben ist. Steuerungsdaten und Rückkopplungsdaten, die durch einen Doppelpfeil 11 dargestellt sind, werden zwischen dem Roboter 10 und verschiedenen Ebenen des DCF 24 ausgetauscht, die so erweitert werden können, dass sie zusätzliche Steuerungsebenen umfassen, ohne den beabsichtigten Umfang der Erfindung zu verlassen, um eine präzise komplexe Bewegung- und Systemsteuerung des Roboters 10 sicherzustellen. Das DCF 24 abstrahiert und zentralisiert die kollektiven Daten (Pfeil 11) an einem einzigen Ort, um eine Steuerung des humanoiden Roboters über die mehreren Kommunikationsnetzwerke hinweg zu erleichtern, wie nun mit Bezug auf 2 beschrieben wird.
  • Mit Bezug auf 2 ist das DCF 24 von 1 detaillierter gezeigt. Aufgrund des weiten Bereichs von Arbeitsaufgaben, die von dem geschickten humanoiden Roboter 10 gefordert werden, und der immens gewachsenen Steuerungskomplexität desselben ist die schnelle Verarbeitung und Koordination einer relativ großen Menge von Steuerungs- und Rückkopplungsdaten notwendig. Das DCF 24 ist daher so ausgestaltet, dass es robust ist, d. h. leicht modifizierbar ist, um nach Bedarf zusätzliche Steuerungsdaten und Befehlsmodulhardware und Algorithmen zu akzeptieren und damit zu arbeiten.
  • Wie vorstehend angemerkt wurde, kann ein herkömmliches zentralisiertes Steuerungssystem möglicherweise nicht flexibel genug sein, um einen komplexen humanoiden Roboter des Typs, der in 1 gezeigt ist, zu steuern, welcher in Abhängigkeit von der Komplexität der speziellen Aufgabe, die ausgeführt wird, bis zu 42 Freiheitsgrade oder mehr aufwiesen kann. Ein derartiger Roboter kann ein Sensorfassungsvermögen aufweisen, das um Größenordnungen höher als dasjenige ist, das bei herkömmlichen Robotercontrollern verarbeitet wird.
  • Das DCF 24 stützt sich daher auf eine Steuerungseinrichtung auf oberer Ebene oder einen Systembefehlshaber 25, mindestens einen Echtzeitcontroller auf mittlerer Ebene, der als Hirnstamm 27 bezeichnet wird, Sensorrückkopplungsknoten 28 und eine Vielzahl von eingebetteten Hochgeschwindigkeitsprozessoren auf niedrigerer Ebene oder Gelenkcontrollern 29. Die Gelenkcontroller 29 können jeweils in die Struktur des Roboters 10 in der Nähe des Gelenks eingebettet sein, das dadurch gesteuert wird, z. B. in oder in der Nähe der Arme 16, der Taille 15 und des Nackengelenks (Pfeil D), oder in oder in der Nähe einer anderen integrierten Systemkomponente, die dadurch gesteuert wird.
  • Bei einer Ausführungsform können die Gelenkcontroller 29 als gedruckte Leiterplattenanordnungen (PCBA) ausgestaltet sein, von denen jede einen einzigen Freiheitsgrad (DOF) eines entsprechenden Gelenks steuert. Beispielsweise kann ein Gelenk, das drei Freiheitsgrade aufweist, unter Verwendung von drei Gelenkcontrollern 29 gesteuert werden, von denen jeder zur Steuerung eines Freiheitsgrads bestimmt ist, oder die gemeinsam alle drei Gelenke steuern, wenn eine mechanische Kopplung existiert. In der Praxis können sich jedoch andere Beziehungen zwischen Controller und Freiheitsgrad ergeben. Das heißt, dass es im Umfang der Erfindung drei Haupttypen von Stellgliedern gibt, die zum Bewegen der verschiedenen Gelenke des Roboters 10 verwendet werden können: direkt angetriebene, mechanisch gekoppelte und sehnengetriebene.
  • Direkt angetriebene Gelenke (z. B. ein Ellenbogen) können einen Motor, der mit dem Gelenk direkt verbunden ist, und zwei Messgeber aufweisen, um den Zustand des Systems zu klären, d. h. jeweils einen für die Servoposition und das Gelenk selbst. In diesem Fall werden ein Controllermodul und ein Stellglied ein einziges Gelenk mit einem Freiheitsgrad antreiben. Es sind auch mechanisch gekoppelte Gelenke mit N Freiheitsgraden möglich, z. B. ein Handgelenk, bei dem N Motoren N Freiheitsgrade gemeinsam steuern. In diesem Fall werden Messgeber im Servomotor benötigt, wobei N Halleffekt-Sensoren in dem tatsächlichen Gelenk verwendet werden, um die kombinierte resultierende Position der N Freiheitsgrade zu messen. Schließlich sind sehnengetriebene Gelenke möglich, wobei derartige Gelenke in Gruppen arbeiten, z. B. können drei Finger 19 unter Verwendung von vier Sehnen betätigt werden, die in einer 3-1-Anordnung komplementär sind. So kann bei einer Ausführungsform eine Sehne alle Finger 19 öffnen, während die drei anderen Sehnen zum Schließen der einzelnen Finger dienen. Dieses Prinzip erstreckt sich auf einzelne Finger, Fingerglieder oder Fingergliedergruppen und kann auch verschiedene Freiheitsgrade einer Gruppe von Fingern steuern. Bei einer 2-2-Anordnung beispielsweise kann man gleichzeitig zwei Finger in zwei Freiheitsgraden steuern. In einem derartigen Fall können vier Controller zwei Freiheitsgrade und zwei Finger/Fingerglieder gleichzeitig gemeinsam steuern.
  • Das Handgelenk (Pfeil C) kann zwei Freiheitsgrade aufweisen, die durch zwei Kugelumlaufspindeln gemeinsam gesteuert werden, welche eine gekoppelte Steuerung des komplexen Gelenks bereitstellen. Wenn beide Kugelumlaufspindeln vorwärts betätigt werden, wird sich das Handgelenk nach unten bewegen und umgekehrt. Wenn nur eine Kugelumlaufspindel betätigt wird oder wenn die Kugelumlaufspindeln in Abhängigkeit von der aktuellen Position in unterschiedliche Richtungen betätigt werden, wird sich das Handgelenk entweder nach links oder nach rechts bewegen. Es sollte klar sein, dass die Kombination dieser zwei Aktionen einen Bewegungsbereich in beide Freiheitsgrade erzeugen kann. Das DCF 24 umfasst auch verschiedene Befehlsmodule 30, 32, 34 und 36, die außerhalb des Roboters angeordnet sind, von denen jedes nachstehend beschrieben wird. Die Befehlsmodule stellen eine stringente Datenfluss- und Zeitverlaufsteuerung bereit, welche eine korrekte Weiterleitung und Steuerung für den Roboter 10 in Ansprechen auf die große Menge an Sensoren und Stellgliedern sicherstellt, die von dem Roboter 10 wie vorstehend beschrieben benötigt werden.
  • Zusätzlich zu den vorstehenden Einrichtungen umfasst das DCF 24 eine Sammlung von Netzwerkkommunikationsmanagern (NCM) 38, die zum Priorisieren der Kommunikation zwischen einem gegebenen Netzwerk und einer Einrichtung in dem DCF ausgestaltet sind. Wie der Fachmann versteht, kann das NCM 38 eine Software enthalten, die eine Programmierschnittstelle für die spezielle Hardwareeinrichtung bereitstellt, welche versucht, sich mit einem Netzwerk zu verbinden, wodurch sichergestellt wird, dass sich die Einrichtung in Übereinstimmung mit dem speziellen Kommunikationsprotokoll, das von dem Netzwerk verwendet wird, korrekt verbinden kann.
  • Das DCF 24 umfasst auch eine zentralisierte Abstraktionsschicht 50, die zur Steuerung des Roboters 10 und beliebiger zugehöriger Automatisierungseinrichtungen, z. B. von Förderern, programmierbaren Logikcontrollern und dergleichen, verwendet werden kann. Die Abstraktionsschicht 50 kann eine Datenbank oder ein Datenbankmanagementsystem (DBMS) 52 und eine Datenweiterleitungs- und Managementsoftware (DRM-Software) 54 umfassen, die weiche Ausfallverbindungen zwischen den verschiedenen Befehlsmodulen bereitstellt. An den und von dem Roboter 10 weg geleitete Steuerungs- und Rückkopplungsdaten werden in dem DBMS 52 zentralisiert, das als eine einzige Datenbank oder mehrere Datenbanken ausgestaltet sein kann.
  • Wie vorstehend angemerkt wurde, ist die Abstraktionsschicht 50 in dem Sinn ”abstrakt”, dass ein Zugriff auf die Daten an einer einzigen Quelle bereitgestellt werden kann, zum Beispiel beim Systembefehlshaber 25, während die Daten selbst über die verschiedenen Einrichtungen des DCF 24 hinweg verteilt sein können, sehr ähnlich zu der Art, in der Informationen im Internet weiträumig auf verschiedene Einrichtungen verteilt sind. Derart zentralisierte Steuerungsdaten ermöglichen, dass Hardware und Steuerungsknoten, z. B. die Befehlsmodule 3036, dynamisch konfiguriert werden können, und dass die Roboterfunktionalität leicht skaliert werden kann.
  • In der Abstraktionsschicht 50 zentralisiert oder kapselt die DRM-Software 54 die gesamten Befehls- und Rückkopplungsdaten für den Roboter 10, und jeder NCM 38 überwacht den Datenfluss an die und von der Abstraktionsschicht. Ein (nicht gezeigter) Datenvermittlungsknoten in jedem Netzwerk pflegt geplante Aktualisierungen für die damit verbundenen verschiedenen Einrichtungen. Die Abstraktionsschicht 50 beherbergt auch die grundlegendsten Steuerungsfunktionen des Roboters 10 und ist in der Lage, das gesamte DCF 24 in einen sicheren Zustand zu versetzen, wenn sie durch gewisse Schwellenwertereignisse dazu veranlasst wird.
  • Immer noch mit Bezug auf 2 kann eine Vielzahl von Befehlsmodulen, etwa die Module 3036, über einen NCM 38 und mehrere Netzwerke mit der Abstraktionsschicht 50 verbunden sein. Bei einer Ausführungsform können die Netzwerke eine Ethernet- oder Ethernet/IP-Verbindung 40, einen Mehrpunktbus mit differentieller Niederspannungssignalisierung (M-LVDS-Bus) 42 bzw. eine cPCI-Busplatine 44 umfassen, obwohl im beabsichtigten Umfang der Erfindung auch andere Busse und/oder Rechnernetzwerke verwendet werden können.
  • Bei der Ausführungsform von 2 sind die Befehlsmodule 3036 jeweils mit einem NCM 38 und durch den NCM mit einem Netzwerk, z. B. dem Ethernet 40 verbunden. Jedes Befehlsmodul kann eine fest zugewiesene Funktion auf oberster Ebene aufweisen. Bei einer Ausführungsform kann das Befehlsmodul 30 ausgestaltet sein, um einige periphere sensorische Anwendungen zu steuern, z. B. ein auf Haptik oder Berührung basierendes Erfassungsmodul, und/oder ein Sichterfassungsmodul, das eine auf Laser, Radar und/oder Optik basierende visuelle Wahrnehmungsfähigkeit bereitstellt. Andere Module können ein auf Geräuschen oder Stimmen basierendes Erfassungsmodul, z. B. eine Sprach- oder Geräuscherkennung, ein Anwenderschnittstellenmodul, das einen Anwenderzugriff auf den Roboter 10 bereitstellt, ein Aufgabenplanungsmodul, ein Teleoperationsmodul, ein Schlussfolgerungsmodul und/oder ein Lernmodul zum Trainieren des Roboters und/oder ein beliebiges anderes Modul, das die gewünschte Funktionalität bereitstellt, umfassen.
  • Das Befehlsmodul 32 kann als eine Anwenderschnittstelle ausgestaltet sein, z. B. ein Bediengerät oder eine andere Mensch-Maschine-Schnittstelleneinrichtung (HMI-Einrichtung). Das Modul 32 kann ausgestaltet sein, um einen separaten Zugriff auf den Roboter 10 auf der Betriebs- und Programmierebene zu ermöglichen. Zu diesem Zweck kann das Modul 32 eine graphische Anwenderschnittstelle (GUI) umfassen, die einem Bediener einen intuitiven oder menügesteuerten Satz funktionaler Optionen für eine begrenzte Kontrolle über den Roboter 10 bereitstellt. Das Modul 32 kann auch eine nur bestimmten Gruppen zugängliche Schnittstelle umfassen, die einen Programmierzugriff auf den Roboter 10 durch Entwickler, Programmierer oder anderes zugewiesenes Personal, das die Befugnis zum Verändern des Kernsteuerungscodes des Roboters aufweist, bereitstellt.
  • Die Roboteraufgabenplanung kann sich im Befehlsmodul 34 befinden. Zum Beispiel können automatisierte und/oder autonome Aufgaben im Befehlsmodul 34 programmiert sein. Einige Anwendungen des Roboters 10 können die Anwesenheit aus der Ferne oder Teleoperationen betreffen, bei denen von einem menschlichen Bediener getragene Sensoreinrichtungen verwendet werden können, um die jeweiligen Sinneserfahrungen, die der Roboter 10 erfährt, zu sehen, zu fühlen, zu hören oder auf andere Weise wahrzunehmen, und um dem Roboter auf ähnliche Weise mit speziellen Bewegungen zu befehlen. Auf ähnliche Weise kann eine Aufgabenzuordnungs- und Lernfunktionalität im Modul 36 vorhanden sein. Die im Befehlsmodul 36 vorhandene Funktionalität kann eine Trainings- und/oder Lern-Betriebsartensoftware umfassen, die ermöglicht, dass der Roboter 10 trainiert wird, entweder durch ein physikalisches Bewegen des Roboters durch eine gewünschte Bewegung, ein Teachen des Roboters unter Verwendung eines mathematischen Modells oder einer Softwareplanung, ein hybrides Teachen, d. h. indem man dem Roboter mitteilt, was zu tun ist, es dem Roboter erlaubt, es zu tun, den Roboter korrigiert, und die Sequenz wiederholt, bis sie perfektioniert ist, oder durch Imitations-/Demonstrationsverfahren. Eine logische Schlussfolgerungsfunktionalität kann Teil einer Lernbetriebsart sein oder kann als eine separate Betriebsart ausgeführt werden.
  • Das DCF 24 enthält auch verschiedene Sensorrückkopplungsknoten 28, z. B. Signalsammelknoten, welche ein(e) gemessene(s) Drehung, Position, Geschwindigkeit, Drehmoment oder andere Werte von Gelenksensoren im Roboter 10 betreffen. Die Sensorrückkopplungsknoten 28 sind über einen NCM 38 mit einem Netzwerk, z. B. dem M-LVDS-Bus 42 verbunden. Die eingebettete Hardware oder die Gelenkcontroller 29 können als gedruckte Leiterplattenanordnungen (PCBA) ausgestaltet sein und im Roboter 10 lokal in der Nähe des Gelenks eingebettet sein, das gesteuert wird, etwa in den Armen 16, dem Torso 14, dem Kopf 12 usw. Wie auch die Sensorrückkopplungsknoten 28 sind die Controller 29 über einen NCM 38 mit einem Netzwerk verbunden, z. B. dem M-LVDS-Bus 42.
  • Für die Gesamtsteuerung des Roboters 10 spielt der Echtzeitcontroller oder Hirnstamm 27 eine zentrale Rolle. Die Einrichtung kann tief im Torso 14 des Roboters 10 positioniert sein und kann mit dem Systembefehlshaber 25 und jedem der eingebetteten Controller 29 elektrisch verbunden sein. Jedes Modul 56 kann für die Steuerung eines oder mehrerer Gelenke oder einer oder mehrerer Bewegungen in Abhängigkeit von der speziellen Ausgestaltung und Verwendung der Module 56 bestimmt sein. Eines der Netzwerke des DCF 24 kann die Busplatine 44 sein, eine Einrichtung, die im Hirnstamm 27 positioniert sein kann. Verschiedene Hirnstammmodule (M) 56 sind mit der Busplatine 44 und unter Verwendung eines Kommunikationsmoduls 58 mit einem NCM 38 mit den anderen Netzwerken verbunden, z. B. dem Ethernet 40 und dem M-LVDS-Bus 42.
  • Funktional liefert der Hirnstamm 27 in Ansprechen auf Befehle auf höchster Ebene von dem Systembefehlshaber 25 Reaktionsbefehle über seine Module 56 an die eingebetteten Controller 29. Der Hirnstamm 27 umfasst Steuerungsfunktionen auf niedriger Ebene und lebenswichtige Funktionen, wie etwa die Leistungsregelung. Der Hirnstamm 27 kann Aktionen des Roboters 10 priorisieren, von denen jeder eine benötigte Steuerungs- oder Kommunikationsgeschwindigkeit zugeordnet sein kann, z. B. 400 Hz, 200 Hz, 1 Hz. Aktionen mit höherer Priorität, etwa diejenigen, die zur Verhinderung einer Überhitzung oder Beschädigung des Roboters 10 gedacht sind, können Vorrang vor anderen Befehlen haben und können mit einer höheren Geschwindigkeit ausgeführt werden. Aufgaben können neu priorisiert werden und Module 58 können kurzfristig ausgetauscht oder aktualisiert werden, wie nachstehend erläutert wird.
  • Als Beispiel kann der Systembefehlshaber 25 einen Befehl zum Bewegen des Ellenbogengelenks (Pfeil B) um eine gewisse Anzahl von Graden mit einer speziellen Geschwindigkeit in Ansprechen auf ein Schwellenwertereignis an den Hirnstamm 27 ausgeben. Die speziellen Steuerungsanforderungen zum Ausführen dieser Aktion sind dem Systembefehlshaber 25 nicht bekannt. Stattdessen befinden sich diese Anforderungen im Hirnstamm 27.
  • Der Hirnstamm 27, der nun die unmittelbare Aufgabe, die ausgeführt werden soll, empfangen hat und der die anderen Aufgaben, die von dem Roboter 10 gefordert sind, und deren zugehörige Prioritäten zusammen mit dem aktuellen Zustand des Systems kennt, gibt einen Befehl an so viele der benötigten eingebetteten Controller 29 aus, wie zum Erzielen der benötigten Bewegung notwendig sind. Die eingebetteten Controller 29 steuern ihre zugehörige Hardware, z. B. Gelenkmotoren, lineare Stellglieder usw., um das geforderte Ergebnis zu erzielen, und melden dem Hirnstamm 27 zurück, wenn die Aktion abgeschlossen ist. Der Hirnstamm 27 wiederum informiert den Systembefehlshaber 25, wenn die geforderte Aufgabe abgeschlossen ist.
  • Wenn ein Befehlsmodul 3036 oder ein Modul 56 oder 58 des Hirnstamms 27 während einer speziellen Befehlssitzung unterbrochen wird, kann das DCF 24 ”weich ausfallen” und die Steuerung des Roboters 10 in einen sicheren Zustand versetzen, um die Sicherheit des Roboters und seiner Bediener sicherzustellen. Ein unterbrochenes Befehlsmodul wird während eines Ausfalls des Roboters 10 automatisch in einen sicheren Zustand umschalten und wird versuchen, diesen Ausfall an eine höhere Steuerungsautorität in der Hierarchie der Controller weiterzuleiten. Das heißt, dass ein Ausfall auf der Gelenkebene über den Hirnstamm 27 an den Systembefehlshaber 25 weitergeleitet werden kann, oder ein Ausfall beim Hirnstamm wird an den Systembefehlshaber weitergeleitet, so dass in einen geeigneten sicheren Zustand eingetreten werden kann.
  • Obwohl die besten Arten zum Ausführen der Erfindung im Detail beschrieben wurden, werden Fachleute auf dem Gebiet, das diese Erfindung betrifft, verschiedene alternative Entwürfe und Ausführungsformen zum Umsetzen der Erfindung in die Praxis im Umfang der beigefügten Ansprüche erkennen.

Claims (10)

  1. Robotersystem, das zum Ausführen einer autonomen Aufgabe betrieben werden kann, wobei das Robotersystem umfasst: einen humanoiden Roboter (10) mit einer Vielzahl integrierter Systemkomponenten, die eine Vielzahl von nachgiebigen Robotergelenken (A, B, C, D, E, F), Stellgliedern, die zum Bewegen der Robotergelenke (A, B, C, D, E, F) ausgelegt sind, und Sensoren umfasst, die zum Messen von Steuerungs- und Rückkopplungsdaten (11) bei einer Vielzahl von Steuerungspunkten der integrierten Systemkomponenten ausgelegt sind; und ein verteiltes Steuerungsgerüst (DCF) (24) mit mehreren Ebenen, das zum Steuern der integrierten Systemkomponenten über mehrere Hochgeschwindigkeitskommunikationsnetzwerke (40, 42, 44) ausgelegt ist, wobei das DCF (24) umfasst: eine Vielzahl erster Controller (29), die jeweils ausgestaltet sind, um die Steuerungs- und Rückkopplungsdaten (11) in mindestens einer der integrierten Systemkomponenten zu verarbeiten und zu steuern; einen zweiten Controller (27), der zum Koordinieren der Funktionalität der integrierten Systemkomponenten über eine Kommunikation mit der Vielzahl erster Controller (29) ausgelegt ist; und einen dritten Controller (25), der zum Übertragen eines Signals ausgelegt ist, welches dem zweiten Controller (27) das Ausführen der autonomen Aufgabe befiehlt; wobei das DCF (24) eine zentralisierte Abstraktionsschicht (50) umfasst, die den Zugriff auf die Steuerungs- und Rückkopplungsdaten (11) an einem einzigen logischen Ort zentralisiert und abstrahiert, wobei die Daten (11) selbst über die verschiedenen Einrichtungen des DCF (24) hinweg verteilt sein können, um eine Steuerung des humanoiden Roboters (10) über die mehreren Hochgeschwindigkeitskommunikationsnetzwerke (40, 42, 44) hinweg zu erleichtern.
  2. Robotersystem nach Anspruch 1, wobei mindestens eines der Robotergelenke (A, B, C, D, E, F) einen Servomotor umfasst, und wobei die Steuerungs- und Rückkopplungsdaten (11) einen Positionswert des Servomotors umfassen.
  3. Robotersystem nach Anspruch 1, wobei die mehreren Hochgeschwindigkeitsnetzwerke ein Ethernet-Netzwerk (40), eine Busplatine (44) und einen Mehrpunktbus mit differentieller Niederspannungssignalisierung (M-LVDS-Bus) (42) umfassen.
  4. Robotersystem nach Anspruch 1, wobei jeder der Vielzahl erster Controller (29) eine gedruckte Leiterplattenanordnung (PCBA) umfasst, die mindestens einen Freiheitsgrad (DOF) eines zugehörigen der Robotergelenke (A, B, C, D, E, F) steuert.
  5. Verteiltes Steuerungsgerüst (DCF) (24) zur Bewegungssteuerung eines humanoiden Roboters (10), der eine Vielzahl von integrierten Systemkomponenten aufweist, die eine Vielzahl von nachgiebigen Robotergelenken (A, B, C, D, E, F), Stellgliedern, die zum Bewegen der Robotergelenke (A, B, C, D, E, F) ausgelegt sind, und Sensoren umfasst, die zum Messen von Steuerungs- und Rückkopplungsdaten (11) bei einer Vielzahl von Steuerungspunkten der integrierten Systemkomponenten ausgelegt sind, wobei das DCF (24) umfasst: eine Vielzahl unterschiedlicher Hochgeschwindigkeitskommunikationsnetzwerke (40, 42, 44); eine Vielzahl von ersten Controllern (29), die jeweils ausgestaltet sind, um die Steuerungs- und Rückkopplungsdaten (11) von mindestens einer der integrierten Systemkomponenten zu verarbeiten und zu steuern; einen zweiten Controller (27), der zum Koordinieren der Funktionalität der integrierten Systemkomponenten mit Hilfe der Vielzahl von ersten Controllern (29) ausgelegt ist; und einen dritten Controller (25), der zum Übertragen eines Signals ausgelegt ist, welches dem zweiten Controller (27) das Ausführen einer autonomen Aufgabe befiehlt; wobei das DCF (24) eine zentralisierte Abstraktionsschicht (50) umfasst, die den Zugriff auf die Steuerungs- und Rückkopplungsdaten (11) an einem einzigen Ort abstrahiert und zentralisiert, wobei die Daten (11) selbst über die verschiedenen Einrichtungen des DCF (24) hinweg verteilt sein können, um eine Steuerung des humanoiden Roboters (10) über die Hochgeschwindigkeitskommunikationsnetzwerke (40, 42, 44) hinweg zu erleichtern.
  6. DCF (24) nach Anspruch 5, das ferner eine Vielzahl von Netzwerkkommunikationsmanagern (NCM) (38) umfasst, wobei mit jedem der Netzwerke (40, 42, 44) ein NCM (38) verbunden ist und ausgelegt ist, um eine Kommunikation zwischen den Netzwerken (40, 42, 44) zu koordinieren und zu priorisieren.
  7. DCF (24) nach Anspruch 5, das eine Vielzahl von Befehlsmodulen (30, 32, 34, 36) umfasst, die mit jedem der Hochgeschwindigkeitsnetzwerke (40, 42, 44) verbunden sind und ausgelegt sind, um eine festgelegte Funktion des Roboters (10) zu steuern, wobei das vorbestimmte Ereignis auftritt, wenn eines der Befehlsmodule (30, 32, 34, 36) unterbrochen wird.
  8. DCF (24) nach Anspruch 7, wobei die Vielzahl von Befehlsmodulen (30, 32, 34, 36) ein haptisches Erfassungsmodul (30) und/oder ein Sichterfassungsmodul (30) und/oder ein Anwenderschnittstellenmodul (32) und/oder ein Aufgabenplanungsmodul (34) und/oder ein Teleoperationsmodul (36) und/oder ein Schlussfolgerungsmodul (36) und/oder ein Lernmodul (36) umfasst.
  9. Verfahren zum Steuern einer Bewegung eines humanoiden Roboters (10), der eine Vielzahl von integrierten Systemkomponenten aufweist, die eine Vielzahl von nachgiebigen Robotergelenken (A, B, C, D, E, F), Stellgliedern, die zum Bewegen der Robotergelenke (A, B, C, D, E, F) ausgelegt sind, und Sensoren umfasst, die zum Messen von Steuerungs- und Rückkopplungsdaten (11) bei einer Vielzahl von Steuerungspunkten der integrierten Systemkomponenten ausgelegt sind, wobei das Verfahren umfasst, dass: jeder einer Vielzahl von ersten Controller (29) in eine jeweilige der Vielzahl von integrierten Systemkomponenten eingebettet wird; eine Funktion der integrierten Systemkomponenten unter Verwendung eines zweiten Controllers (27) koordiniert wird, wobei der zweite Controller (27) mit jedem der Vielzahl von ersten Controllern (29) in Verbindung steht; die Ausführung einer autonomen Aufgabe befohlen wird, indem ein Signal von einem dritten Controller (25) an den zweiten Controller (27) übertragen wird; und die Steuerungs- und Rückkopplungsdaten (11) unter Verwendung einer zentralisierten Abstraktionsschicht (50) an einem einzigen logischen Ort zentralisiert und abstrahiert werden, wobei die Daten (11) selbst über verschiedene Einrichtungen eines verteilten Steuerungsgerüsts (DCF) (24) hinweg verteilt sein können, um eine Steuerung des Roboters (10) über mehrere Kommunikationsnetzwerke (40, 42, 44) hinweg zu erleichtern.
  10. Verfahren nach Anspruch 9, wobei das Einbetten jedes einer Vielzahl von ersten Controllern (29) in eine jeweilige der Vielzahl von integrierten Systemkomponenten umfasst, dass eine gedruckte Leiterplattenanordnung (PCBA) in jedes der Robotergelenke (A, B, C, D, E, F) eingebettet wird.
DE102010045528.8A 2009-09-22 2010-09-15 Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks Active DE102010045528B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/564,094 2009-09-22
US12/564,094 US9120224B2 (en) 2009-09-22 2009-09-22 Framework and method for controlling a robotic system using a distributed computer network

Publications (2)

Publication Number Publication Date
DE102010045528A1 DE102010045528A1 (de) 2011-08-04
DE102010045528B4 true DE102010045528B4 (de) 2015-06-03

Family

ID=43757329

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010045528.8A Active DE102010045528B4 (de) 2009-09-22 2010-09-15 Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks

Country Status (3)

Country Link
US (1) US9120224B2 (de)
JP (2) JP2011067940A (de)
DE (1) DE102010045528B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020120116B4 (de) 2019-10-17 2023-06-22 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur impedanzbasierten Multi-Tasking Tracking-Regelung, impedanzbasierter Multi-Tasking Tracking-Regler und kraft- und/oder drehmomentgeregelter Roboter

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323250B2 (en) 2011-01-28 2016-04-26 Intouch Technologies, Inc. Time-dependent navigation of telepresence robots
US9098611B2 (en) 2012-11-26 2015-08-04 Intouch Technologies, Inc. Enhanced video interaction for a user interface of a telepresence network
US9459619B2 (en) * 2011-06-29 2016-10-04 Mega Fluid Systems, Inc. Continuous equipment operation in an automated control environment
US8706299B2 (en) * 2011-08-02 2014-04-22 GM Global Technology Operations LLC Method and system for controlling a dexterous robot execution sequence using state classification
US20130096719A1 (en) * 2011-10-13 2013-04-18 The U.S.A. As Represented By The Administrator Of The National Aeronautics And Space Administration Method for dynamic optimization of a robot control interface
CN102431035B (zh) * 2011-11-28 2015-04-22 台达电子企业管理(上海)有限公司 分布式机械手控制系统
KR20130093399A (ko) * 2012-02-14 2013-08-22 한국전자통신연구원 자율행위 로봇 및 그 제어 방법
US9361021B2 (en) 2012-05-22 2016-06-07 Irobot Corporation Graphical user interfaces including touchpad driving interfaces for telemedicine devices
EP2852881A4 (de) 2012-05-22 2016-03-23 Intouch Technologies Inc Grafische benutzerschnittstellen mit touchpad -ansteuerungsschnittstellen für telemedizinische vorrichtungen
EP2933069B1 (de) * 2014-04-17 2019-07-03 Softbank Robotics Europe Humanoider Roboter mit omnidirektionalen Rädern basierend auf linearer prädiktiver Positions- und Geschwindigkeitssteuerung
JP6455050B2 (ja) * 2014-09-30 2019-01-23 セイコーエプソン株式会社 ロボット
CN106073896A (zh) * 2016-06-15 2016-11-09 重庆金山科技(集团)有限公司 一种用于手术机器人的电机控制网络及方法
US10447493B2 (en) 2016-07-26 2019-10-15 Honeywell International Inc. MAC and physical layer techniques for enabling communications on shared physical medium with multi-drop capability
JP6925794B2 (ja) 2016-09-02 2021-08-25 株式会社安川電機 コントローラ、作業制御装置、多軸動作制御装置、及び駆動制御装置
WO2019011416A1 (en) * 2017-07-11 2019-01-17 Telefonaktiebolaget Lm Ericsson (Publ) METHODS AND ARRANGEMENTS FOR CONTROLLING A ROBOT DEVICE IN A CLOUD
KR102486660B1 (ko) 2017-09-29 2023-01-10 삼성전자주식회사 협력하여 작동하는 복수의 전자 장치 및 복수의 전자 장치의 제어 방법
WO2020076472A2 (en) * 2018-09-19 2020-04-16 Sana Rezgui Human-robots: the new specie
US11433534B2 (en) 2019-03-07 2022-09-06 Abb Schweiz Ag Robotic arm including edge computer and cabling arrangement facilitating flexible function advanced distal arm end tooling
CN110757484A (zh) * 2019-11-11 2020-02-07 路邦科技授权有限公司 一种仿生机器人的控制器连接系统
CN112025704B (zh) * 2020-08-25 2021-10-01 杭州湖西云百生科技有限公司 基于内存型数据库的实时分布式机器人控制方法及系统
US11774127B2 (en) 2021-06-15 2023-10-03 Honeywell International Inc. Building system controller with multiple equipment failsafe modes
US20230353640A1 (en) * 2022-04-27 2023-11-02 Viam Inc. Device control system and method
CN117621031A (zh) * 2022-08-09 2024-03-01 深圳忆海原识科技有限公司 控制模组、控制装置及机器人

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850818B2 (en) * 2001-10-22 2005-02-01 Sony Corporation Robot apparatus and control method thereof
DE60012458T2 (de) * 1999-11-24 2005-07-28 Sony Corp. Auf Beinen laufende Roboter und Verfahren für ihre Steuerung
DE102005044412A1 (de) * 2004-09-17 2006-05-04 Honda Motor Co., Ltd. Kraftsensor-Abnormalitätserfassungssystem für einen mobilen Schreitroboter
JP2006171960A (ja) * 2004-12-14 2006-06-29 Ishikawajima Harima Heavy Ind Co Ltd 分散制御システム
US7103447B2 (en) * 2002-09-02 2006-09-05 Sony Corporation Robot apparatus, and behavior controlling method for robot apparatus
DE60126153T2 (de) * 2000-11-17 2007-10-18 Honda Giken Kogyo K.K. Gangmustererzeugungsvorrichtung für beweglichen roboter mit beinen

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02257204A (ja) 1989-03-29 1990-10-18 Yaskawa Electric Mfg Co Ltd 複数ロボット腕の衝突回避制御方式
JPH07334227A (ja) 1994-06-07 1995-12-22 Nippon Telegr & Teleph Corp <Ntt> ロボット離隔制御通信装置及び方法
JPH08293870A (ja) * 1995-04-24 1996-11-05 Nissan Motor Co Ltd 通信設備
JP2873222B2 (ja) * 1997-05-12 1999-03-24 川崎重工業株式会社 ロボット情報処理装置
JPH11331158A (ja) 1998-05-11 1999-11-30 Mitsubishi Electric Corp 監視制御システム
JP3435081B2 (ja) 1998-12-21 2003-08-11 宇宙開発事業団 再構成型宇宙用多肢マニピュレータ・システム
JP2001277163A (ja) * 2000-04-03 2001-10-09 Sony Corp ロボットの制御装置及び制御方法
ITTO20010553A1 (it) * 2001-06-08 2002-12-08 Comau Spa Sistema di controllo per robot.
US20050021704A1 (en) 2003-06-11 2005-01-27 Larson Thane M. Intercoupling apparatus for server computer systems
JP4232627B2 (ja) 2003-12-26 2009-03-04 日本ビクター株式会社 ネットワークロボット及びその制御方法
JP4622527B2 (ja) 2005-01-11 2011-02-02 パナソニック電工株式会社 ゲートウェイ装置及び遠隔監視制御システム
JP2006224276A (ja) 2005-02-21 2006-08-31 Victor Co Of Japan Ltd コミュニケーションシステム
US7904182B2 (en) * 2005-06-08 2011-03-08 Brooks Automation, Inc. Scalable motion control system
JP4953997B2 (ja) 2007-09-14 2012-06-13 山洋電気株式会社 多軸駆動用ドライバ

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60012458T2 (de) * 1999-11-24 2005-07-28 Sony Corp. Auf Beinen laufende Roboter und Verfahren für ihre Steuerung
DE60126153T2 (de) * 2000-11-17 2007-10-18 Honda Giken Kogyo K.K. Gangmustererzeugungsvorrichtung für beweglichen roboter mit beinen
US6850818B2 (en) * 2001-10-22 2005-02-01 Sony Corporation Robot apparatus and control method thereof
US7103447B2 (en) * 2002-09-02 2006-09-05 Sony Corporation Robot apparatus, and behavior controlling method for robot apparatus
DE102005044412A1 (de) * 2004-09-17 2006-05-04 Honda Motor Co., Ltd. Kraftsensor-Abnormalitätserfassungssystem für einen mobilen Schreitroboter
JP2006171960A (ja) * 2004-12-14 2006-06-29 Ishikawajima Harima Heavy Ind Co Ltd 分散制御システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020120116B4 (de) 2019-10-17 2023-06-22 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur impedanzbasierten Multi-Tasking Tracking-Regelung, impedanzbasierter Multi-Tasking Tracking-Regler und kraft- und/oder drehmomentgeregelter Roboter

Also Published As

Publication number Publication date
US9120224B2 (en) 2015-09-01
JP2011067940A (ja) 2011-04-07
JP2013176847A (ja) 2013-09-09
US20110071672A1 (en) 2011-03-24
DE102010045528A1 (de) 2011-08-04

Similar Documents

Publication Publication Date Title
DE102010045528B4 (de) Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks
DE102010045529B4 (de) Interaktives Robotersteuerungssystem und Verwendungsverfahren
DE102010045345B4 (de) Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter
DE102010018438B4 (de) Verfahren und Vorrichtung zur automatischen Steuerung eines humanoiden Roboters
DE102011110902B4 (de) Sicherer Betrieb eines Kraft- oder ImpedanzgesteuertenRoboters im Arbeitsraum
DE102011113590B4 (de) Planen simultaner Pfade mit einem oder mehreren humanoiden Robotern
DE102012218297B4 (de) Verfahren zur dynamischen Optimierung einer Robotersteuerschnittstelle
EP2987592B1 (de) Verfahren zum programmieren eines industrieroboters und zugehöriger industrieroboter
DE102010045554B4 (de) Integriertes Hochgeschwindigkeitsdrehmomentregelsystem für ein Robotergelenk
EP2546711B1 (de) Verfahren zum Programmieren eines Roboters
DE102011117094B4 (de) Robuster betrieb von sehnengetriebenen roboterfingern unter verwendung von kraft- und positionsbasierten steuergesetzen
DE102012213957B4 (de) Schnelle Berechnung von Griffkontakten für einen seriellen Roboter
DE112017003961B4 (de) Steuerung für Parallelverbindungsmechanismus
WO2016087590A1 (de) Verfahren zur bewegungssimulation eines manipulators
EP1402325B1 (de) Verfahren und system zur unterstützung der projektierung von fertigungsanlagen
DE102012213188B4 (de) Verfahren und System zum Steuern einer Ausführungssequenz eines geschickten Roboters unter Verwendung einer Zustandsklassifizierung
EP2324966A1 (de) Verfahren und Vorrichtung zur Planung und/oder Steuerung einer Roboterapplikation
DE102019205651B3 (de) Verfahren und System zum Ausführen von Roboterapplikationen
DE102019211770B3 (de) Verfahren zur rechnergestützten Erfassung und Auswertung eines Arbeitsablaufs, bei dem ein menschlicher Werker und ein robotisches System wechselwirken
EP3356894B1 (de) Verfahren zur automatischen konfiguration eines externen steuerungssystems zur steuerung und/oder regelung eines robotersystems
DE102020200165B4 (de) Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
DE102006036490A1 (de) Verfahren und Vorrichtung zum Steuern eines Handhabungsgeräts
DE102020103854B4 (de) Maschinelles Lernen einer erfolgreich abgeschlossenen Roboteranwendung
DE102019125992B3 (de) Regelung eines Robotermanipulators
DE102015218697A1 (de) Verfahren zur automatischen Konfiguration eines externen Steuerungssystems zur Regelung und/oder Steuerung eines Robotersystems

Legal Events

Date Code Title Description
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final