DE102010045345B4 - Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter - Google Patents

Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter Download PDF

Info

Publication number
DE102010045345B4
DE102010045345B4 DE102010045345A DE102010045345A DE102010045345B4 DE 102010045345 B4 DE102010045345 B4 DE 102010045345B4 DE 102010045345 A DE102010045345 A DE 102010045345A DE 102010045345 A DE102010045345 A DE 102010045345A DE 102010045345 B4 DE102010045345 B4 DE 102010045345B4
Authority
DE
Germany
Prior art keywords
dphm
modules
control
robot
controller
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
DE102010045345A
Other languages
English (en)
Other versions
DE102010045345A1 (de
Inventor
Leandro G. Barajas
Adam M. Sanders
Matthew J. Reiland
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.)
THE U.S.A. AS REPRESENTED BY THE ADMINISTRATOR, US
GM Global Technology Operations LLC
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 DE102010045345A1 publication Critical patent/DE102010045345A1/de
Application granted granted Critical
Publication of DE102010045345B4 publication Critical patent/DE102010045345B4/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/1674Programme controls characterised by safety, monitoring, diagnostic
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39251Autonomous distributed control, joint and link is a subsystem, communication intensive
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40264Human like, type robot arm

Landscapes

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

Abstract

Robotersystem, das umfasst: einen Roboter (10), der eine Vielzahl integrierter Systemkomponenten aufweist, die eine Vielzahl nachgiebiger Robotergelenke, Stellglieder, die jeweils ausgelegt sind, um eines der Robotergelenke zu bewegen, und Sensoren umfassen, die zum Messen von Steuerungs- und Rückkopplungsdaten an einer Vielzahl von Kontrollpunkten des Robotersystems ausgelegt sind; und einen Controller (24) mit verteilten Steuerungsebenen, wobei der Controller (24) ausgestaltet ist, um die integrierten Systemkomponenten über die mehreren verteilten Steuerungsebenen und über mehrere Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44) zu steuern; wobei der Controller (24) eine endliche Zustandsmaschine (FSM) (60), die Hardware (62), Software (64) und Firmware (65) umfasst, sowie eine Vielzahl von eingebetteten Diagnose-, Prognose- und Gesundheitsmanagement-Modulen (DPHM-Modulen) (37) enthält, von denen mindestens eines in jede der integrierten Systemkomponenten vor einem Kommissionieren des Robotersystems eingebettet ist, wobei jedes der DPHM-Module (37) ausgelegt ist, um DPHM-Daten und ein Systemverhalten für eine jeweilige der integrierten Systemkomponenten unter Verwendung mindestens einer FSM (60) zu messen und zu steuern, und um die DPHM-Daten an einer Stelle aufzuzeichnen, die über die Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44) zugänglich ist.

Description

  • AUSSAGE HINSICHTLICH STAATLICH GEFÖRDERTER FORSCHUNG ODER ENTWICKLUNG
  • 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 und insbesondere die Diagnose, Prognose und das Gesundheitsmanagement (DPHM) eines geschickten humanoiden Roboters.
  • HINTERGRUND DER ERFINDUNG
  • Roboter sind automatisierte, autonome oder fernbediente Einrichtungen, die zum Manipulieren von Objekten unter Verwendung einer Reihe von Gliedern in der Lage sind, welche wiederum über Gelenkverbindungen oder motorgetriebene Robotergelenke 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 Glieder, die zum Ausführen einer anliegenden Aufgabe verwendet werden, z. B. zum Ergreifen eines Werkzeugs oder eines Objekts. Eine präzise Steuerung eines Roboters kann daher durch die Ebene der Aufgabenspezifizierung gestaltet sein: eine Steuerung auf Objektebene, d. h. die Fähigkeit zur Steuerung des Verhaltens eines Objekts, das in einem Einzelgriff oder einem zusammenwirkenden Griff eines Roboters gehalten wird, eine Greiforgansteuerung und eine Gelenksteuerung. Die verschiedenen Steuerungsbereiche arbeiten zusammen, um gemeinsam die benötigte Funktionalität zu erreichen.
  • Humanoide Roboter sind insbesondere mit einer annähernd menschlichen Gestalt, Funktionalität und/oder Erscheinung ausgestaltet, sei es als ein vollständiger Körper, ein Torso und/oder eine Gliedmaße, wobei die strukturelle Komplexität des humanoiden Roboters größtenteils von der Natur der Arbeitsaufgabe abhängt, die ausgeführt wird. Die Verwendung humanoider Roboter kann dort bevorzugt sein, wo eine direkte Interaktion mit Einrichtungen oder Systemen benötigt wird, die speziell für den menschlichen Gebrauch geschaffen sind. Aufgrund des breiten Spektrums von Arbeitsaufgaben, die von einem humanoiden Roboter möglicherweise erwartet werden, kann es sein, dass verschiedene Steuerungsmodi gleichzeitig benötigt werden. Beispielsweise muss eine präzise Positionssteuerung in den verschiedenen vorstehend angegebenen Räumen sowie eine Kontrolle über das angewandte Drehmoment oder die angewandte Kraft, die Bewegung und die verschiedenen Grifftypen angewendet werden.
  • Robotersteuerungsarchitekturen stellen typischerweise nur Diagnoseinformationen auf niedriger Ebene bereit, etwa eine schwellenwertbasierte Störungsdetektion und -isolierung. Derartige Ansätze zur Detektion und Isolierung nach dem Auftreten einer Störung werden hauptsächlich bei der Systemaufstellung oder bei Störungsbehebungsmodi verwendet und stellen daher für ein integriertes Lebenszyklusmanagement möglicherweise nur einen suboptimalen Ansatz bereit. Auf ähnliche Weise können die hohen Kosten des Skalierens und Integrierens einer neuen Steuerungsfunktionalität in ein extrem komplexes elektromechanisches System, wie etwa den hier beschriebenen humanoiden Roboter mit 42+ Freiheitsgraden, besonders problematische Fragen bei der Systementwicklung und Kopplung aufwerfen.
  • Die US 2006/0 214 621 A1 offenbart einen Roboter, der sich auf zwei Beinen fortbewegt und eine Detektion von Störungen in einer zentralen Hauptsteuereinheit mithilfe von Sensorinformationen durchführt, die von Untersteuereinheiten erfasst und an die Hauptsteuereinheit übermittelt werden.
  • In der DE 195 17 852 A1 ist ein Multiblock-Robot offenbart, der aus einzelnen individuell konfigurierbaren ”Multiblocks” zusammengesetzt ist, die je nach Konfiguration selbstoperierende Multiblock-Robot-Funktionen gewährleisten.
  • Die US 2006/0 033 462 A1 offenbart eine Vorrichtung zum Betreiben eines Roboters, bei der ein Zustand des Roboters ermittelt wird und Störungen durch Störungsdetektoren erkannt und von diesen basierend auf dem Zustand des Roboters behoben werden.
  • In der US 2004/0 164 697 A1 ist ein Roboter offenbart, bei dem Kontaktsensoren an nahegelegene Stellgliedmodule angeschlossen werden können. Ausgabesignale der Kontaktsensoren werden von den Stellgliedmodulen verarbeitet und zusammen mit anderen Sensorinformationen des Stellgliedmoduls an ein Steuersystem auf höherer Ebene übertragen.
  • Die EP 0 923 011 A2 offenbart ein modulares Robotersystem, bei dem gleiche und/oder unterschiedliche Einzelmodule mit einer zentralen Verarbeitungseinheit zu einem Roboter zusammengesetzt werden können, der sich selbst konfiguriert. Die zentrale Verarbeitungseinheit kann Ausgaben der Sensoren der Einzelmodule empfangen, um deren Stellglieder zu steuern.
  • In der DE 11 2006 003 044 T5 ist ein Robotersteuersystem mit mehreren vielseitigen Robotersteuermodulen, die ein verteiltes System bilden können, zur autonomen Steuerung von Fahrzeugen offenbart.
  • Die Aufgabe der Erfindung besteht darin, die Überwachung und Steuerung sowie die Wartbarkeit und Erweiterbarkeit eines Robotersystems zu verbessern.
  • Diese Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Folglich wird hier ein Gerüst bereitgestellt, das eine modulare Diagnose-, Prognose- und Gesundheitsmanagement-Funktionalität (DPHM-Funktionalität) in mehreren Ebenen eines verteilten Steuerungssystems entwirft und nahtlos integriert oder einbettet, bevor das Robotersystem kommissioniert wird. Ein derartiger Ansatz eines integrierten Entwurfs von unten nach oben ermöglicht eine systemweite Beobachtung und Steuerung, während die Wartbarkeit und Erweiterbarkeit des Robotersystems auf seinen einzelnen Software- und Hardwareebenen erleichtert wird. Skalierbare Merkmale oder Befehlsmodule können mit variablen Tiefen- und Breitenebenen eingesetzt werden, um Anforderungen und Beschränkungen entstehender Anwendungen zu erfüllen, wodurch letztlich die Kosten der Systementwicklung, Ausführung und Wartung verringert werden.
  • Bei einigen existierenden Robotersteuerungssystemen können statische Bits oder Bitmaps unter Verwendung eines Statusregisters den aktuellen Zustand des Systems darstellen. Außerdem können Nachschlagetabellen verwendet werden, um Fehlerbits in für Menschen lesbare Meldungen umzuwandeln, die einem Anwender dann bei einer Systemdiagnose dargeboten werden. Eine Integration einer DPHM-Funktionalität nach der Auslieferung kann jedoch schnell nicht praktikabel werden, wenn die Systemkomplexität zunimmt. Prognose- und Gesundheitsinformationen des Systems können nicht aufbewahrt werden, falls derartige Daten überhaupt gesammelt werden können. Stattdessen können Daten gesammelt und aufgezeichnet werden, die von durch harte Schwellenwerte ausgelösten Störungs- oder Ausfallzuständen getrieben sind, um eine begrenzte Störungsdetektion und Isolierung nach einem Störungsereignis bereitzustellen. Teilweise, um derartige Einschränkungen anzusprechen, baut die vorliegende Erfindung eine modulare DPHM-Funktionalität direkt in das Robotersystem ein, indem sie einzelne DPHM-Module in jede der verschiedenen Steuerungsebenen eines verteilten Robotercontrollers einbettet.
  • Insbesondere wird hier ein Robotersystem bereitgestellt, das einen Roboter mit einer Vielzahl integrierter Systemkomponenten umfasst, die eine Vielzahl nachgiebiger Robotergelenke, Stellglieder, die jeweils zum Bewegen eines der Robotergelenke ausgelegt sind, und Sensoren umfassen, die zum Messen von Steuerungs- und Rückkopplungsdaten bei einer Vielzahl von Kontrollpunkten des Robotersystems ausgelegt sind. Das Robotersystem enthält auch einen Controller mit mehreren verteilten Steuerungsebenen, wobei der Controller die integrierten Systemkomponenten über die mehreren verteilten Steuerungsebenen und über mehrere Hochgeschwindigkeitskommunikationsnetzwerke steuert.
  • Der Controller enthält eine Vielzahl eingebetteter Diagnose-, Prognose- und Gesundheitsmanagementmodule (DPHM-Module), von denen mindestens eines in jede der integrierten Systemkomponenten eingebettet ist, wobei jedes der DPHM-Module ausgelegt ist, um DPHM-Daten und ein Systemverhalten für eine jeweilige der integrierten Systemkomponenten zu messen und zu steuern, und um die DPHM-Daten an einer Stelle aufzuzeichnen, auf die über die Hochgeschwindigkeitskommunikationsnetzwerke zugegriffen werden kann.
  • Das Robotersystem kann mehrere Rechensteuerungsknoten umfassen, die in Abhängigkeit von der Steuerungsebene als eingebettete gedruckte Leiterplattenanordnungen (PCBA) oder Prozessoren oder externe Arbeitsstationsrechner ausgeführt sein können, welche über verschiedene Netzwerke automatisch kommunizieren, um Funktionen der verschiedenen integrierten Systemkomponenten zu steuern und zu koordinieren, z. B. nachgiebige Gelenke, Relais, Laser, Leuchten, elektromagnetische Befestigungselemente usw. Der Roboter selbst weist mehrere synchronisierte Gelenke auf, z. B. Schultern, Ellenbogen, einen Nacken, eine Taille, Handgelenke, Finger, Daumen usw., die sich auf eine synchrone Weise zusammen bewegen können, um eine spezielle Aktion auszuführen. Ein derartiger humanoider Roboter kann ein Vielfaches der Anzahl der Freiheitsgrade (DOF) oder Richtungssteuerungsvariablen eines herkömmlichen Roboters aufweisen. Als Folge muss jedes Steuerungssystem, das versucht, ein derart komplexes System zu koordinieren und zu steuern, Steuerungs- und Rückkopplungsdaten schnell verarbeiten, die ein um Größenordnungen größeres Volumen als die Daten aufweisen, die bei herkömmlichen Robotersteuerungssystemen vorkommen.
  • Der verteilte Controller ist in dem Sinn ”verteilt”, dass er einen Befehlsebenencontroller zum Übertragen eines Steuerungssignals, das die Durchführung einer autonomen Aufgabe durch den Roboter befiehlt, mehrere eingebettete Controller auf Gelenkebene zum Steuern einer Bewegung eines jeweiligen der Robotergelenke oder einer anderen integrierten Systemkomponente, und einen Controller auf Gelenkkoordinationsebene enthalten kann, um das Befehlssignal vom Befehlsebenencontroller zu empfangen und Aktionen der Robotergelenke und anderer integrierter Systemkomponenten in Ansprechen darauf zu koordinieren. Eine Vielzahl von DPHM-Modulen ist bei den verschiedenen Steuerungsebenen im Robotersystem eingebettet, d. h. in den Controller selbst sowie in den verschiedenen damit verbunden Einrichtungen. Jedes DPHM-Modul ermittelt automatisch DPHM-Informationen für den Controller/die Einrichtung, in den bzw. die das Modul eingebettet ist, wobei die Daten anschließend an einer Stelle aufgezeichnet werden, die über die Kommunikationsnetzwerke oder unter Verwendung einer externen DPHM-Einrichtung leicht zugänglich ist, etwa wenn die verschiedenen Netzwerke temporär nicht zur Verfügung stehen.
  • Außerdem wird hier ein Verfahren bereitgestellt, um einen Roboter zu steuern, der eine Vielzahl integrierter Systemkomponenten aufweist, die nachgiebige Robotergelenke, eine Vielzahl von Stellgliedern und eine Vielzahl von Sensoren umfassen, die zur Ermittlung von Rückkopplungsdaten an einem entsprechenden der Robotergelenke ausgelegt sind. Das Verfahren umfasst, dass eine Vielzahl von DPHM-Modulen in mehrere Steuerungsebenen eines verteilten Controllers, der mehrere Hochgeschwindigkeitskommunikationsnetzwerke aufweist, eingebettet werden, dass die DPHM-Module verwendet werden, um DPHM-Daten in jeder der Steuerungsebenen zu messen, und dass die DPHM-Daten an einer Stelle aufgezeichnet werden, die über zumindest eines der Hochgeschwindigkeitskommunikationsnetzwerke zugänglich ist.
  • Die vorstehenden Merkmale und Vorteile und andere Merkmale und Vorteile der vorliegenden Erfindung ergeben sich leicht aus der folgenden genauen Beschreibung der besten Arten zur Ausführung der Erfindung, wenn sie in Verbindung mit den beiliegenden Zeichnungen gelesen wird.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine schematische Veranschaulichung eines humanoiden Roboters, der ein verteiltes Steuerungsgerüst mit verteilten Diagnose-, Prognose- und Gesundheitsmanagement-Modulen (DPHM-Modulen) aufweist;
  • 2 ist eine schematische Veranschaulichung eines verteilten Steuerungsgerüsts mit DPHM-Modulen, das mit dem humanoiden Roboter von 1 verwendet werden kann;
  • 3 ist eine schematische Veranschaulichung, die eine endliche Zustandsmaschine bzw. einen endlichen Automaten des Typs beschreibt, der mit dem verteilten Steuerungsgerüst von 2 verwendet werden kann; und
  • 4 ist ein schematisches Logikflussdiagramm des verteilten Steuerungsgerüsts von 2.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Mit Bezug auf die Zeichnungen, in denen gleiche Bezugszeichen in den mehreren Ansichten gleiche oder ähnliche Komponenten bezeichnen, zeigt 1 ein Robotersystem mit einem verteilten Steuerungssystem oder Controller (C) 24 und einem geschickten humanoiden Roboter 10, der dadurch gesteuert wird. Der Roboter 10 ist ausgelegt, um eine oder mehrere autonome Aufgaben mit mehreren Freiheitsgraden (DOF) auszuführen. Gemäß einer Ausführungsform ist der Roboter 10 mit einer Vielzahl unabhängig und voneinander abhängig bewegbarer Robotergelenke 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 begrenzt 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 Form von Nicken und Rollen aufweisen. Auf ähnliche Weise kann das Nackengelenk (Pfeil D) mindestens drei Freiheitsgrade aufweisen, während die Taille (Pfeil E) ein oder mehrere Freiheitsgrade aufweisen kann. In Abhängigkeit von der Komplexität der Aufgabe kann sich der Roboter 10 mit über 42 Freiheitsgraden bewegen. Jedes Robotergelenk enthält eines oder mehrere Stellglieder und wird intern dadurch angetrieben, z. B. Gelenkmotoren, serielle elastische Stellglieder, lineare Stellglieder, Drehstellglieder und dergleichen.
  • Der humanoide Roboter 10 kann einen Kopf 12, einen Torso 14, eine Taille 15, Arme 16, Hände 18, Finger 19 und Daumen 21 enthalten, wobei die verschiedenen vorstehend erwähnten Gelenke darin oder dazwischen angeordnet sind. Der Roboter 10 kann in Abhängigkeit von der speziellen Anwendung oder beabsichtigten Verwendung des Roboters auch eine für die Aufgabe geeignete Halterung oder Basis (nicht gezeigt) umfassen, wie etwa Beine, mobile Plattformen, Schienen, Laufflächen, oder eine andere bewegliche oder feste Basis. Eine Leistungsversorgung 13 kann an dem Roboter 10 einstückig montiert sein, z. B. ein wiederaufladbarer Batteriestapel, der auf der Rückseite des Torsos 14 getragen oder mitgeführt wird, oder eine andere geeignete Energieversorgung, oder die Versorgung 13 kann sich außerhalb des Roboters befinden und über Leistungskabel damit verbunden sein, um ausreichend elektrische Energie für die verschiedenen Gelenke zur Bewegung derselben bereitzustellen.
  • Obwohl es der Einfachheit halber in 1 nicht gezeigt ist, enthält jedes Robotergelenk eines oder mehrere Stellglieder und wird durch diese angetrieben, z. B. Gelenkmotoren, lineare Stellglieder, serielle elastische Stellglieder, andere Drehstellglieder, elektrisch gesteuerte einander entgegenwirkende Sehnen und dergleichen. Das Robotersystem enthält mehrere Rechensteuerungsknoten, d. h. eingebettete gedruckte Leiterplattenanordnungen (PCBA) oder Prozessoren und externe Arbeitsstationsrechner, welche über die verschiedenen Netzwerke automatisch kommunizieren, um Funktionen von verschiedenen integrierten Systemkomponenten zu steuern und zu koordinieren, zum Beispiel von nachgiebigen Gelenken, Relais, Lasern, Leuchten, elektromagnetischen Befestigungselementen usw., und um dadurch die Aktionen des Roboters zu steuern.
  • Die Gelenke des Roboters 10 sind nachgiebig, wie oben angemerkt wurde, d. h. sie sind aufgrund des Einschlusses von Federn in einigen oder allen Gelenken in ausreichender Weise nicht steif, und daher können Positionsmessgeber, z. B. Messgeber 69A und 69I von 2, für das Stellglied oder die Servomotoren sowie für das Gelenk selbst verwendet werden, um Informationen über die Kraft bereitzustellen, die auf das Gelenk aufgebracht wird. Außerdem können zwischen nachgiebigen Gelenken sechsachsige Kraftdrehmomentsensoren (nicht gezeigt) vorhanden sein, die vollständige Kraftinformationen über den Zustand eines gegebenen nachgiebigen Gelenks aufnehmen.
  • Der verteilte Controller 24 stellt eine präzise Bewegungs- und Systemsteuerung des humanoiden Roboters 10 bereit, die eine Kontrolle über die feinen und groben Bewegungen umfasst, die zum Manipulieren eines Objekts 20 benötigt werden, das von den Fingern 19 und dem Daumen 21 von einer oder mehreren Händen 18 ergriffen werden kann. Der Controller 24 ist in der Lage, jedes Robotergelenk isoliert von den anderen Robotergelenken unabhängig zu steuern sowie eine Anzahl der Gelenke voneinander abhängig zu steuern, um die Aktionen der mehreren Gelenke beim Ausführen einer relativ komplexen Arbeitsaufgabe vollständig zu koordinieren.
  • Der Controller 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 Signalaufbereitungs- und Pufferelektronik aufweisen. Individuelle Steuerungsalgorithmen, die im Controller 24 vorhanden sind oder für diesen leicht zugänglich sind, können im ROM gespeichert und auf einer oder mehreren verschiedenen Steuerungsebenen automatisch ausgeführt werden, um die jeweilige Steuerungsfunktionalität bereitzustellen.
  • Immer noch mit Bezug auf 1 ist der Controller 24 in dem Sinn ”verteilt”, dass eine Befehlsebenensteuerung auf einer relativen Makroebene bereitgestellt werden kann, welche Gelenk- und Systemkoordinationsaktionen auf einer Zwischenebene steuert, welche wiederum jedes Gelenk oder System, das bei einer speziellen Aufgabe betroffen ist, über mehrere verteilte und eingebettete Controller auf niedriger Ebene steuert. Der Controller 24 kann daher einen Befehlsebenencontroller, der hier als ein Systembefehlshaber 25 bezeichnet wird, und einen Gelenkkoordinationscontroller in Echtzeit enthalten, der hier nachstehend als der Hirnstamm 27 bezeichnet wird. Der Controller 24 enthält auch mehrere eingebettete Controller 29 auf Gelenkebene, welche, wie die Bezeichnung impliziert, jeweils in die Struktur des Roboters 10 nahe bei dem Gelenk eingebettet sind, das dadurch gesteuert wird, wie nachstehend beschrieben wird. Steuerungsdaten und die Rückkopplungsdaten, die durch einen Doppelpfeil 11 dargestellt sind, können zwischen dem Roboter 10 und den verschiedenen Ebenen des Controllers 24 ausgetauscht werden, um eine präzise komplexe Bewegungssteuerung des Roboters sicherzustellen.
  • Der Controller 24 kann mit einer Benutzerschnittstelle 22 ausgestaltet sein, z. B. einem Bediengerät oder einer anderen Mensch-Maschine-Schnittstelleneinrichtung (HMI-Einrichtung). Die Schnittstelle 22 kann ausgestaltet sein, um einen Zugriff auf den Roboter 10 auf den Betriebs- und den Programmierebenen separat zu ermöglichen. Zu diesem Zweck kann die Schnittstelle 22 eine graphische Benutzerschnittstelle (GUI) enthalten, die einem Bediener einen intuitiven oder menügesteuerten Satz von funktionalen Optionen für eine begrenzte Kontrolle über den Roboter 10 bereitstellt. Die Schnittstelle 22 kann auch eine nur bestimmten Gruppen zugängliche Schnittstelle umfassen, die für Entwickler, Programmierer oder anderes befugtes Personal, das über die Erlaubnis verfügt, den Steuerungskerncode des Roboters zu verändern, einen Programmierzugriff auf den Roboter 10 bereitstellt. Wie nun mit Bezug auf 24 erläutert wird, enthält der Controller 24 eine Diagnose-, Prognose- und Gesundheitsmanagementfunktionalität (DPHM-Funktionalität), die als Module vor der Systemkommissionierung bei jeder der verschiedenen Steuerungsebenen, die vorstehend offengelegt sind, eingebettet werden.
  • Mit Bezug auf 2 kann der Controller 24 über mehrere Hochgeschwindigkeitsnetzwerke verteilt sein, um eine präzise Kontrolle über die koordinierte Bewegung der verschiedenen Gelenke in dem vorstehend beschriebenen Roboter 10 bereitzustellen. Das heißt, der Systembefehlshaber (SC) 25 kann von der Schnittstelle 22 über eine Hochgeschwindigkeitskommunikationskopplung 41 beauftragt werden, eine allgemeine Kontrolle über den Roboter 10 auf höchster Ebene bereitzustellen, wobei die Befehle auf höchster Ebene von dem Systembefehlshaber an den Hirnstamm 27 übertragen werden. Zum Beispiel kann der Systembefehlshaber 25 einen aufgabenbasierten Befehl ausgeben, wie etwa ”Ergreife ein Objekt” und ”Bewege das Objekt in drei Sekunden an den Punkt X, Y, Z”. Diese Befehle können über ein erstes Netzwerk 42, welches bei einer Ausführungsform eine Ethernetverbindung oder ein anderes geeignetes Hochgeschwindigkeitsnetzwerk sein kann, über eine Anwendungsprogrammierschnittstelle (API) 48 an die Steuerungseinrichtung auf mittlerer Ebene oder den Hirnstamm 27 übertragen oder weitergeleitet werden. Der Systembefehlshaber 25 kann außerdem über eine Laufzeitmaschine 31 eine Programmiersprache oder einen Code 46 zur Laufzeit ausführen.
  • Der Hirnstamm 27 empfängt den bzw. die Befehle vom Systembefehlshaber 25 über das erste Netzwerk 42 über das API 48 und verarbeitet dann diesen Befehl. Das Verarbeiten auf der Ebene des Hirnstamms 27 kann umfassen, dass die speziellen integrierten Systeme, z. B. das oder die nachgiebigen Gelenke des in 1 gezeigt Roboters 10, die gesteuert werden müssen, um die angeforderte Aufgabe auf die effizienteste Weise auszuführen, identifiziert werden sowie die benötigten Aktivierungsbefehle an das bzw. die Stellglieder, die jedes Gelenk bewegen, ausgegeben werden. Zum Beispiel kann der Hirnstamm 27 ein Signal an ein spezielles Gelenk weiterleiten, welches befiehlt, dass sich das Gelenk mit einer speziellen Geschwindigkeit um 10 Grad bewegt. Dieses Signal kann an jeden eingebetteten Gelenkcontroller (CJ) 29 über ein zweites Netzwerk 42 übertragen werden, z. B. eine Busleiterplatte, die im Hirnstamm 27 eingebaut ist und verschiedene gelenk- und/oder aufgabenspezifische Befehlsmodule (nicht gezeigt) über die Hochgeschwindigkeitsverbindungskopplung 41 miteinander verbindet.
  • Zusätzlich zu den vorstehenden Einrichtungen kann der Controller 24 eine Sammlung von Netzwerkkommunikationsmanagern (NCM) 38 enthalten, die ausgestaltet sind, um die Kommunikation zwischen einem gegebenen Netzwerk und einer Einrichtung zu priorisieren. Wie der Fachmann versteht, kann ein NCM 38 eine Software enthalten, die eine Programmierschnittstelle zu der speziellen Hardwareeinrichtung bereitstellt, die versucht, sich mit einem Netzwerk zu verbinden, welche sicherstellt, dass sich die Einrichtung gemäß dem speziellen Kommunikationsprotokoll, das von dem Netzwerk verwendet wird, korrekt verbinden kann.
  • Der Controller 24 kann auch ein drittes Hochgeschwindigkeitsnetzwerk 44 enthalten, gemäß einer Ausführungsform etwa einen Mehrpunktbus mit differentieller Niederspannungssignalisierung (M-LVDS), das verwendet werden kann, um eine Verbindung mit mehreren verbundenen Anwendungsmodulen (APP) 30 herzustellen. Jedes Modul 30 kann eine Steuerung auf oberster Ebene oder eine aufgabenspezifische Steuerungslogik für verschiedene Roboterfähigkeiten bereitstellen. Bei einer Ausführungsform kann das Modul 30 ausgestaltet sein, um einige periphere Sensoranwendungen zu steuern, z. B. ein auf Haptik oder Berührung basierendes Erfassungsmodul, und/oder ein Bilderfassungsmodul, das eine visuelle Wahrnehmungsfähigkeit auf der Grundlage von Laser, Radar und/oder Optik bereitstellt. Andere Module können ein geräusch- oder stimmbasierendes Erfassungsmodul, z. B. eine Sprach- oder Geräuscherkennung, ein Benutzerschnittstellenmodul, das einen Anwenderzugriff auf den Roboter 10 bereitstellt, ein Aufgabenplanungsmodul, ein Fernbedienungsmodul, ein Schlussfolgerungsmodul und/oder ein Lernmodul zum Trainieren des Roboters und/oder ein beliebiges anderes Modul, das die gewünschte Funktionalität bereitstellt, enthalten. Eine derartige Umgebungserfassungsfähigkeit oder eine andere Funktionalität, welche die Fähigkeiten des Roboters 10 von 1 erweitert, kann über den Systembefehlshaber 25 und die Netzwerke 42, 43 und 44 über die Kopplungen 41, den NCM 38 und eine API 48 an die Gelenkebene weitergeleitet werden.
  • Das in 2 gezeigte Robotersystem kann für jedes nachgiebige Gelenk mindestens drei Messgeber umfassen, die ein Paar absoluter Messgeber 69A und einen inkrementellen Messgeber 69I umfassen. Die absoluten Messgeber 69A können als Messgebereinrichtungen mit relativ hoher Auflösung und niedriger Geschwindigkeit ausgestaltet sein. Der inkrementelle Messgeber 69I kann eine Einrichtung mit relativ niedriger Auflösung und hoher Geschwindigkeit sein. Wie nachstehend beschrieben wird, können Messungen und Lesewerte der Messgeber verwendet werden, um das Vorhandensein einer vorbestimmten Störungsbedingung als Teil der Fähigkeiten des Roboters zur Diagnose und Isolierung von Störungen ermitteln.
  • Eine derartige Bedingung kann einen Sensorlesewert und einen Störungsschwellenwertvergleich umfassen und/oder sie kann umfassen, dass eine Signalsteigung extrahiert wird und die Steigung als eine virtuelle Variable für den Schwellenwertvergleich verwendet wird. Alternativ oder gleichzeitig kann ein binäres Signal verwendet werden, z. B. kann ein Sicherheitsrelais Informationen über den Kommutierungszustand bereitstellen. Ein Näherungssensor oder Endschalter kann ausgestaltet sein, um ein binäres Signal einer diskreten Bedingung bereitzustellen, die erreicht wurde, usw.
  • Immer noch mit Bezug auf 2 verteilt der Controller 24, wie vorstehend angemerkt wurde, Steuerungsfunktionalität auf mehrere Steuerungsebenen über den Systembefehlshaber 25, den Hirnstamm 27 und die mehreren eingebetteten Controller 29 auf Gelenkebene, wie vorstehend angemerkt wurde. Die Erfassung auf Gelenk- oder Systemebene, die Signalverarbeitung und die unmittelbare Stellgliedsteuerung wird auf der Gelenkebene über eine oder mehrere gedruckte Leiterplattenanordnungen (PCBA) ausgeführt, die in die Struktur des Roboters direkt eingebettet sein können, z. B. in den Armen 16 nahe bei dem speziellen Gelenk, das gesteuert wird.
  • Im beabsichtigten Umfang der vorliegenden Erfindung führt der Controller 24 auf ähnliche Weise Diagnose-, Prognose- und Gesundheitsmanagement-Funktionalität (DPHM-Funktionalität) auf den verschiedenen Steuerungsebenen ein und verteilt sie, d. h. bei dem Systembefehlshaber 25, dem Hirnstamm 27 und den Controller 29 auf Gelenkebene, und bei beliebigen der verbundenen Netzwerkeinrichtungen, d. h. der Anwenderschnittstelle 22, der Laufzeitmaschine 44, dem Code 46, dem NCM 38 und den Anwendungsmodulen 30 über eine Reihe von DPHM-Modulen 37. Eine weitere Ebene der Kontrollfunktionalität über den Roboter 10 kann über ein DPHM-Haupt- oder Umgehungsmodul 50 bereitgestellt werden, das gleichermaßen ein DPHM-Modul 37 aufweist und einen globalen Zugriff auf beliebige oder alle DPHM-Module 37 bereitstellt, die über die verschiedenen Ebenen des Controllers 24 hinweg eingebettet sind. Eine derartige eingebettete DPHM-Funktionalität wird nun mit Bezug auf 3 und 4 beschrieben.
  • Mit Bezug auf 3 kann eine Zustandsmaschine 60 in der Architektur des vorstehend beschriebenen Controllers 24 verwendet werden. Da die nachstehend mit Bezug auf 4 offengelegte DPHM-Funktionalität den Ansatz einer endlichen und/oder unendlichen Zustandsmaschine verwendet, ist zur Veranschaulichung eine Zustandsmaschine 60 gezeigt. Wie der Fachmann versteht, ist eine endliche Zustandsmaschine (FSM) eine Technik, die den Entwurf einer sequentiellen Logik- und Steuerungsfunktionalität erleichtert. Eine FSM kann verwendet werden, um Logikschaltungen, Programme, Firmware für einen Mikrocontroller sowie eine Mustererkennung und künstliche Intelligenz zu entwerfen.
  • Vom Konzept her erkennt eine FSM, dass ein Steuerungssystem, wie etwa der Controller 24 von 2, zu einem beliebigen gegebenen Moment in nur einer endlichen Anzahl von Zuständen arbeiten kann, z. B. offen/geschlossen, ein/aus, sich bewegend/angehalten, usw. Eine FSM identifiziert die wesentlichen Zustände eines Systems und stellt die Zustandsübergänge in einer Diagrammform dar. 3 zeigt ein vereinfachtes Zustandsdiagramm mit verschiedenen Zuständen 66A–E, die einen Anfangszustand (INIT) 66A, Ein- und Auszustände 66B bzw. 66C und einen kontinuierlichen Betriebszustand (CT) 66D enthalten. Auch ein Fehlerzustand (ERR) 66E ist gezeigt. Alle Zustände 66A66E sind durch Pfeile 67 verbunden, welche die speziellen Ereignisse darstellen, die eine Zustandsänderung verursachen. Ereignisse können als spezielle Übergangsbedingungen oder Aktionen definiert sein, welche die Zustandsänderung verursachen. In 3 sind außerdem die verschiedenen im Controller 24 implementierten Zustandsmaschinentypen 61 gezeigt, welche Hardware (H/W) 62, Software (S/W) 64 und Firmware (F/W) 65 umfassen. FSM-Techniken können daher nicht nur bei den verschiedenen Steuerungsebenen des Controllers 24, sondern auch als verschiedene Typen in einer speziellen Steuerungsebene eingesetzt werden.
  • Mit Bezug auf 4 ist eine Systemarchitektur 70 gezeigt, um eine DPHM-Funktionalität in jede der verschiedenen Ebenen des Controllers 24 von 2 einzubetten, d. h. über die vorstehend beschriebenen DPHM-Module 37. Der Hirnstamm 27 kann über einen Hochgeschwindigkeits-Hardware/Software-Kommunikationsbus, wie etwa die Kommunikationskopplung 41, mit den verschiedenen eingebetteten Gelenkcontrollern (CJ) 29 über die vorstehend beschriebenen Hochgeschwindigkeitsnetzwerke, z. B. Ethernet, Busleiterplatte, M-LVDS-Bus usw. verbunden sein. Obwohl der Einfachheit halber ein Controller 29 auf Gelenkebene gezeigt ist, versteht es sich, dass der Roboter 10 von 1 mehrere Controller auf Gelenkebene aufweisen würde, gemäß einer Ausführungsform beispielsweise einen Controller 29 für jeden Freiheitsgrad. Ein DPHM-Zugriff auf den Hirnstamm 27 kann über das Modul 50 über die Kopplung 41 bereitgestellt sein. Auf die gleiche Weise kann ein DPHM-Zugriff auf einen beliebigen oder alle Gelenkcontroller 29 über das DPHM-Modul 50 bereitgestellt sein. Alternativ kann ein DPHM-Zugriff über eine Hardwareverbindung 91 mit einem separaten Stück einer externen DPHM-Umgehungshardware 90 bereitgestellt sein, wie nachstehend beschrieben wird.
  • Die verschiedenen Steuerungsfunktionen des Roboters 10 können in eine Anzahl N von Zustandsmaschinen unterteilt sein, wobei die N-te Zustandsmaschine 80 verschiedene Zustandsmaschinen 82 auf Ebene 1 (L1-Zustandsmaschinen) aufweist, die jeweils die Funktionalität eines gegebenen Gelenks auf seinen niedrigsten oder grundlegendsten Ebenen steuert. Jede L1-Zustandsmaschine 82 kann ein Bestandteil einer Zustandsmaschine auf hoher Ebene sein, z. B. einer Zustandsmaschine 84 auf Ebene 2 (L2-Zustandsmaschine). Diese Reihe setzt sich fort bis zu der Zustandsmaschine 80 auf der höchsten Ebene oder der N-ten Zustandsmaschine. Auf jeder Steuerungsebene ermöglicht ein DPHM-Umgehungsmodul, d. h. das DPHM-Umgehungsmodul 50, 81 und/oder 83, und optional die DPHM-Umgehungshardware 90, einen direkten Zugriff auf die verschiedenen Zustandsmaschinen 82, 84 zur Diagnose, Prognose und zum Gesundheitsmanagement unter Verwendung der nachstehend beschriebenen Werkzeuge.
  • Die optionale externe DPHM-Umgehungshardware 90 kann verwendet werden, um eine zu dem DPHM-Modul 50 und den Umgehungssteuerungsebenen, aus denen es zusammengesetzt ist, d. h. dem L1-DPHM-Modul 83 und dem L2-DPHM-Modul 81 im Wesentlichen redundante DPHM-Funktionalität bereitzustellen. Die Verwendung der Hardware 90 kann besonders nützlich sein, wenn die Kommunikationskopplungen 41 unterbrochen oder heruntergefahren sind, ein Ereignis, das andernfalls die Durchführung der DPHM-Funktionen unmöglich machen würde. In einem solchen Fall kann die Hardware 90, z. B. ein Laptopcomputer oder eine mobile elektronische Einrichtung, über eine Hardwareverbindung 91 unter Verwendung einer lokalen Schnittstelle 92 mit einer beliebigen gewünschten Ebene der Zustandsmaschine 80 verbunden werden. Zum Beispiel kann die lokale Schnittstelle 92 als ein serieller RS-232-Kommunikationsanschluss oder ein USB-Anschluss oder ein beliebiger anderer Anschluss ausgestaltet sein, der eine direkte Plug-and-Play-Verbindung zu der Hardware 90 bereitstellt.
  • Die Hardware 90 kann eine Kalibrierungs-GUI 93 enthalten, die eine analoge Parameterkalibrierung und die Fähigkeit zum Setzen von Bits bereitstellt. Eine derartige GUI. kann einen Satz von Optionen zum direkten und intuitiven Zugreifen auf einen oder mehrere Sensoren 94, Stellglieder 95 und Bedienelemente 96 auf Software-, Hardware-, und/oder Firmware-Ebene enthalten, die zur Steuerung des Roboters 10 von 1 auf der Gelenkebene verwendet werden. Beispielsweise kann durch diese intuitiven Optionen ein logischer Zugriff auf die Zustandsmaschinen 82, 84, die vorstehend beschrieben sind, bereitgestellt werden. Die Hardware 90 kann auch willkürlich strukturierte Optionen zur Überwachung und Steuerung komplexer Daten umfassen, um jeden der einzelnen Funktionsbereiche, d. h. Diagnose, Prognose und Gesundheitsmanagement, zu erleichtern. Optionen können beispielsweise den Zugriff auf einen Satz von Kalibrierungskurven 98, Alarm und/oder Fehlerschwellenwertdaten 99 und Fehler/Absturzprotokolle 100 umfassen, auf die alle zugegriffen werden kann, um die relevanten Prognose-, Diagnose- oder Gesundheitsmanagementinformationen zu ermitteln.
  • Immer noch mit Bezug auf 4 können die eingebetteten DPHM-Module und die resultierende Funktionalität über eine Vielfalt von Gebieten angewendet werden, die umfassen: (a) Störungsdetektion, (b) Diagnose, (c) Prognose und (d) Gesundheitsmanagement. In jedem Bereich können verschiedene auf Algorithmen basierende Ansätze verwendet werden, um Daten zu sammeln und zu analysieren, welche umfassen: physikalische oder modellbasierte Ansätze, künstliche Intelligenz, Maschinenlernen, auf Zuverlässigkeit und Wahrscheinlichkeit/Statistiken basierende Ansätze und systemspezifische Ansätze.
  • Im Bereich (a) oder der Störungsdetektion beispielsweise können auf Kinematik basierende Parameter, Grenzen und Zustandsverifikationsmodelle, fallbasierte Schlussfolgerungen (künstliche Intelligenz) oder Clustering (Maschinenlernen) verwendet werden. Mit Bezug auf die Zuverlässigkeit können, Steuerungsdiagramme oder lineare Regressionsverfahren verwendet werden, während auf der Systemebene Signal/Rauschabstände sowie Bitfehlerraten in den verschiedenen Kommunikationskanälen, Fehlerprotokolle usw. automatisch berechnet und aufgezeichnet werden können.
  • Im Bereich (b) oder der Diagnose können Ursache-Wirkungs-Beziehungsmodelle oder endliche/unendliche Zustandsmaschinen (künstliche Intelligenz), wie vorstehend mit Bezug auf 3 erläutert wurde, verwendet werden. Ein Maschinenlernen kann über Entscheidungsbäume bereitgestellt werden. Mit Bezug auf die Zuverlässigkeit können logistische Regressionsverfahren implementiert werden, um detektierte Störungen oder vorbestimmte Störungsbedingungen zu diagnostizieren. Auf der Systemebene können dedizierte Sensoren, Ansätze zur Ausfallsicherheit bei Bitkippen, Hardware und/oder Software-Moment usw. verwendet werden.
  • Ohne spezielle Reihenfolge können Ausfallsicherheitsoperationen umfassen: (i) Protokollieren, Melden und Signalisieren nicht normaler Situationen an ein System auf höherer Ebene oder den Anwender/Bediener, und/oder Aktivieren einer geeigneten visuellen Anzeige, etwa einer lichtemittierenden Diode (LED), die einen Systemstatus anzeigt, (ii) Leistung an ein Stellglied abschalten oder entfernen, (iii) Aktivieren von Parkbremsen, sodass sich ein spezielles Gelenk nicht in eine unsichere Position bewegen wird, (iv) in einen Nachgiebigkeitsmodus wechseln, bei dem die Drehmoment-, Druck- und Näherungssensoren verwendet werden, um ein Gelenk zu simulieren, das einem aufgebrachten Druck keinen Widerstand entgegensetzt, möglicherweise einschließlich eines vorbestimmten Passivitätszustands, z. B. Versetzen eines Gelenks in einen passiven oder halbpassiven Zustand. Ein derartiger Passivitätszustand kann einen Schwerkraftkompensationsmodus oder einen Zustand enthalten, der verhindert, dass der Roboter abschlafft, und/oder (v) Abschalten von speziellen Steuerungsmodulen, die ein erhöhtes Risiko aufweisen können, z. B. ein Überhitzungs- oder Überlastrisiko. Der Schwerkraftkompensationsmodus kann einer externen Kraft, die auf mindestens eines der nachgiebigen Robotergelenke aufgebracht wird, einen vernachlässigbaren Widerstand oder einen Widerstand auf einer Ebene nahe Null entgegensetzen, z. B. einen kalibrierten Betrag an Schwerkraftkompensation für ein Schwellenwertminimalgewicht des humanoiden Roboters an dem speziellen Gelenk aufrecht erhalten, das schwerkraftkompensiert ist.
  • Wie vorstehend angemerkt wurde, kann das Robotersystem mindestens drei Messgeber pro nachgiebigem Gelenk enthalten, die ein Paar von absoluten Messgebern 69A und einen inkrementellen Messgeber 69I umfassen. Die absoluten Messgeber 69A können als Messgebereinrichtungen mit relativ hoher Auflösung und niedriger Geschwindigkeit ausgestaltet sein. Der inkrementelle Messgeber 69I kann eine Einrichtung mit relativ niedriger Auflösung und hoher Geschwindigkeit sein. Bei der Initialisierung des Roboters 10 von 1 oder bei anderen vorbestimmten Ereignissen können die Lesewerte der absoluten Messgeber 69A verglichen werden. Wenn die Differenz zwischen Lesewerten aus einem Schwellenwertbereich herausfällt, kann das Robotersystem in einen Ausfallsicherheitsmodus eintreten, wie vorstehend beschrieben ist.
  • Alle Module/Knoten können mit dem Systembefehlshaber 25 von 2 über einen normalen Steuerungsbefehl und einen Heartbeat-Befehl konstant Meldungen austauschen. Wenn die Live-Verbindung verloren geht, dann können derartige Module in einen Ausfallsicherheitsmodus oder -zustand zurückkehren. Auf der Gelenkebene können Konfigurationsparameter verwendet werden, um die erforderliche Reihe von Bewegungen auszuführen. Jedes Mal, wenn ein neuer Satz von Parametern an die Controller auf unterer Ebene, z. B. die Controller 29, heruntergeladen wird, melden sie einen Paritätscode, um zu ermitteln, ob die Parameter noch gültig sind oder ob sie aus irgendeinem Grund zerstört wurden. Wenn die Steuerungsparameterintegrität nicht beibehalten wird, kann der Knoten in einen Ausfallsicherheitsmodus eintreten.
  • Bei der gegebenen mechanischen und elektrischen Komplexität des in 1 gezeigten humanoiden Roboters 10 ist außerdem ein weiteres Diagnosewerkzeug ein automatisierter Satz von Reparatur-, Inspektions- und Montagepositionen, die es einem Anwender, einem Bediener, oder dem Wartungspersonal ermöglichen, die nachgiebigen Gelenke an geeignete Stellen und/oder Orientierungen zu positionieren, an denen auf die Steuerungsboards zugegriffen werden kann, um sowohl irgendwelche visuellen Signale zu beobachten als auch Module auszutauschen, falls es notwendig ist. Zur Kommunikationsintegrität können voreingestellte Ebenen auf der Grundlage von Verlaufsinformationen gewählt werden, z. B. eine Schwellenwertfehlerrate, um sich verschlechternde Systembedingungen anzuzeigen, zum Beispiel Erdungsprobleme, lose Drähte, lose Verbinder oder ein anderes elektrisches Problem. Trendinformationen können extrapoliert werden, um eine Prognosemetrik der Systemlebenserwartung unter den aktuellen Bedingungen bereitzustellen.
  • Für die Steuerung von Servomotoren, die zum Bewegen der Finger 19 von 1 verwendet werden, können Standardmessgeber durch virtuelle Messgeber ergänzt werden, die von den Kommutierungssignalen in offenen/geschlossenen Regelkreisen getrieben werden, um den Zustand des Systems jederzeit zu diagnostizieren. Als redundantes Merkmal für die Software-Sehnensteuerung können Endschalter verwendet werden, um harte Grenzen für die Stellgliedposition einzustellen im Fall, dass es einen Ausfall oder eine elektrische oder mechanische Überlastung der Einrichtung gibt.
  • Im Prognosebereich können kumulierende Schadensmodelle verwendet werden, während eine Fuzzy-Logik auf der Ebene der künstlichen Intelligenz einen ausreichenden Prognosewert bereitstellen kann. Maschinenlernen kann über temporäres Data Mining, neuronale Netzwerke und dergleichen erreicht werden. Hinsichtlich der Zuverlässigkeit können Flottenmanagementtechniken, Kalman-Filter usw. eingesetzt werden. Auf der Systemebene können ”Kanarienvogelopfer”-Einrichtungen bereitgestellt werden, wie etwa redundante Verdrahtung, redundante Sensoren, redundante integrierte Controller usw.
  • Im Bereich (d) oder dem Gesundheitsmanagement können integrierte Lebenszyklusmanagement-Techniken auf der Ebene der Modelle, der künstlichen Intelligenz, des Maschinenlernens und der Zuverlässigkeit auf der Grundlage der kollektiven Informationen ausgeführt werden, die zur Unterstützung der Störungsdetektions-, Diagnose- und Prognosefunktionen, welche vorstehend beschrieben sind, ermittelt wurden. Auf ähnliche Weise können Systemwartungsmaßnahmen oder Pläne und eine Risikoreaktion optimiert werden, um eine ununterbrochene Betriebsgesundheit des Roboters 10 von 1 sicherzustellen. Aktionen auf Systemebene können beispielsweise ein integriertes Leistungssystemmanagement umfassen, um die Leistungsverteilung und -verwendung über die verschiedenen Bedienelemente und Operationen auf Gelenkebene und höher zu optimieren.
  • 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 erkennen, um die Erfindung im Umfang der beigefügten Ansprüche in die Praxis umzusetzen.

Claims (9)

  1. Robotersystem, das umfasst: einen Roboter (10), der eine Vielzahl integrierter Systemkomponenten aufweist, die eine Vielzahl nachgiebiger Robotergelenke, Stellglieder, die jeweils ausgelegt sind, um eines der Robotergelenke zu bewegen, und Sensoren umfassen, die zum Messen von Steuerungs- und Rückkopplungsdaten an einer Vielzahl von Kontrollpunkten des Robotersystems ausgelegt sind; und einen Controller (24) mit verteilten Steuerungsebenen, wobei der Controller (24) ausgestaltet ist, um die integrierten Systemkomponenten über die mehreren verteilten Steuerungsebenen und über mehrere Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44) zu steuern; wobei der Controller (24) eine endliche Zustandsmaschine (FSM) (60), die Hardware (62), Software (64) und Firmware (65) umfasst, sowie eine Vielzahl von eingebetteten Diagnose-, Prognose- und Gesundheitsmanagement-Modulen (DPHM-Modulen) (37) enthält, von denen mindestens eines in jede der integrierten Systemkomponenten vor einem Kommissionieren des Robotersystems eingebettet ist, wobei jedes der DPHM-Module (37) ausgelegt ist, um DPHM-Daten und ein Systemverhalten für eine jeweilige der integrierten Systemkomponenten unter Verwendung mindestens einer FSM (60) zu messen und zu steuern, und um die DPHM-Daten an einer Stelle aufzuzeichnen, die über die Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44) zugänglich ist.
  2. Robotersystem nach Anspruch 1, wobei der Controller (24) zur Verwendung der DPHM-Module (37) ausgestaltet ist, um den Roboter (10) in Ansprechen auf eine vorbestimmte Störungsbedingung automatisch in einen Ausfallsicherheitsmodus zu bringen.
  3. Robotersystem nach Anspruch 2, wobei der Controller (24) unter Verwendung der DPHM-Module (37) und der mindestens einen FSM (60) ausgestaltet ist, um in Ansprechen auf die vorbestimmte Störungsbedingung mindestens eine Maßnahme auszuführen aus: Melden eines Systemstatus, Aktivieren einer Anzeigeeinrichtung, Deaktivieren mindestens einer der integrierten Systemkomponenten, und Verhindern, dass sich mindestens eines der Gelenke zu einer Schwellenwertposition bewegt.
  4. Controller (24) zur Verwendung mit einem humanoiden Roboter (10), der eine Vielzahl integrierter Systemkomponenten aufweist, die eine Vielzahl nachgiebiger Robotergelenke, Stellglieder und Sensoren umfassen, die zur Ermittlung von Steuerungs- und Rückmeldungsdaten bei einer entsprechenden der integrierten Systemkomponenten ausgelegt sind, wobei der Controller (24) umfasst: mehrere verteilte Steuerungsebenen, die jeweils ein Hardwaresteuermodul und eine endliche Zustandsmaschine (FSM) (60), die Hardware (62), Software (64) und Firmware (65) umfasst, aufweisen; und mehrere Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44); wobei jedes Hardwaresteuermodul eine Vielzahl von Diagnose-, Prognose- und Gesundheitsmanagement-Modulen (DPHM-Modulen) (37) in direkter Verbindung mit der FSM (60) umfasst, wobei mindestens eines der DPHM-Module (37) in jede der integrierten Systemkomponenten bei jeder der verteilten Steuerungsebenen eingebettet ist und wobei jedes der Hardwaresteuermodule unter Verwendung eines jeweiligen der DPHM-Module (37) ausgestaltet ist, um DPHM-Daten und ein Systemverhalten für die jeweilige integrierte Systemkomponente zu messen und zu steuern, und um die DPHM-Daten an einer Stelle aufzuzeichnen, die über die Kommunikationsnetzwerke (41, 42, 43, 44) zugänglich ist.
  5. Controller (24) nach Anspruch 4, der ferner eine DPHM-Hardwareeinrichtung (90) umfasst, die zum direkten Zugreifen auf Informationen ausgelegt ist, die in beliebigen der DPHM-Module (37) gespeichert sind, ohne irgendeines der Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44) zu verwenden.
  6. Controller (24) nach Anspruch 4, wobei die Sensoren ein Positionsmessgeberpaar (69A) umfassen und wobei mindestens eines der Hardwaresteuermodule unter Verwendung eines der DPHM-Module (37) ausgelegt ist, um in einen Ausfallsicherheitsmodus einzutreten, wenn eine Differenz bei den Werten des Positionsmessgeberpaars (69A) einen kalibrierten Schwellenwert überschreitet.
  7. Controller (24) nach Anspruch 4, der ferner eine Vielzahl von Steuerungsmodulen umfasst, von denen jedes eine dedizierte Funktion zur Ausführung durch den humanoiden Roboter (10) bereitstellt, wobei eines der DPHM-Module (37) in jedem der Steuerungsmodule eingebettet ist.
  8. Verfahren zum Steuern eines Roboters (10) in einem Robotersystem, das eine Vielzahl integrierter Systemkomponenten aufweist, welche eine Vielzahl nachgiebiger Robotergelenke, Stellglieder und Sensoren umfassen, die zur Ermittlung von Rückmeldungsdaten bei einem entsprechenden der Robotergelenke ausgelegt sind, wobei das Verfahren umfasst, dass: ein Controller (24) mit mehreren Steuerungsebenen und mehreren Hochgeschwindigkeitskommunikationsnetzwerken (41, 42, 43, 44) ausgestaltet wird; ein DPHM-Modul (37) in jede der integrierten Systemkomponenten eingebettet wird; die DPHM-Module (37) verwendet werden, um DPHM-Daten in jeder der Steuerungsebenen zu messen; eine endliche Zustandsmaschine (FSM) (60) bei mindestens einer der Steuerungsebenen verwendet wird, um über die DPHM-Module (37) DPHM-Daten und das Systemverhalten für die integrierten Systemkomponenten zu messen und zu steuern, wobei die FSM (60) Hardware (62), Software (64) und Firmware (65) umfasst und eines der DPHM-Module (37) zur direkten Kopplung mit der FSM (60) verwendet wird; und die DPHM-Daten an einer Stelle aufgezeichnet werden, die über mindestens eines der Hochgeschwindigkeitskommunikationsnetzwerke (41, 42, 43, 44) zugänglich ist.
  9. Verfahren nach Anspruch 8, wobei das Verwenden der DPHM-Module (37) zum Messen von DPHM-Daten umfasst, dass das Robotersystem automatisch in einen Ausfallsicherheitsmodus gebracht wird, wenn das DPHM-Modul (37) das Vorhandensein einer vorbestimmten Störungsbedingung ermittelt.
DE102010045345A 2009-09-22 2010-09-14 Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter Active DE102010045345B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/564,083 2009-09-22
US12/564,083 US8369992B2 (en) 2009-09-22 2009-09-22 Embedded diagnostic, prognostic, and health management system and method for a humanoid robot

Publications (2)

Publication Number Publication Date
DE102010045345A1 DE102010045345A1 (de) 2011-04-14
DE102010045345B4 true DE102010045345B4 (de) 2013-05-29

Family

ID=43734769

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010045345A Active DE102010045345B4 (de) 2009-09-22 2010-09-14 Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter

Country Status (3)

Country Link
US (1) US8369992B2 (de)
JP (1) JP5567438B2 (de)
DE (1) DE102010045345B4 (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150088043A1 (en) * 2009-07-15 2015-03-26 President And Fellows Of Harvard College Actively controlled wearable orthotic devices and active modular elastomer sleeve for wearable orthotic devices
DE102009054230A1 (de) * 2009-11-23 2011-05-26 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern von Manipulatoren
WO2011103201A1 (en) * 2010-02-16 2011-08-25 Irobot Corporation Internal communication system for a mobile robot
GB201116372D0 (en) * 2011-09-22 2011-11-02 Univ Nottingham Robot
FR2989209B1 (fr) * 2012-04-04 2015-01-23 Aldebaran Robotics Robot apte a integrer des dialogues naturels avec un utilisateur dans ses comportements, procedes de programmation et d'utilisation dudit robot
US9043658B1 (en) * 2012-05-31 2015-05-26 Amazon Technologies, Inc. Automatic testing and remediation based on confidence indicators
WO2015172131A1 (en) * 2014-05-09 2015-11-12 Carnegie Mellon University Systems and methods for modular units in electro-mechanical systems
US9375841B1 (en) 2014-05-28 2016-06-28 Google Inc. Robotic devices with ambient indications of joint status
US9505132B1 (en) * 2015-03-30 2016-11-29 X Development Llc Methods and systems for calibrating a sensor of a robotic device
US10730180B2 (en) * 2015-05-29 2020-08-04 Abb Schweiz Ag User interface for a teleoperated robot
US10350766B2 (en) * 2015-09-21 2019-07-16 GM Global Technology Operations LLC Extended-reach assist device for performing assembly tasks
JP6792390B2 (ja) * 2015-09-25 2020-11-25 Ntn株式会社 リンク作動装置の診断装置
EP3369536B1 (de) * 2015-10-30 2024-08-28 Kawasaki Jukogyo Kabushiki Kaisha Überwachungsvorrichtung für ein robotersystem
DE102015122998B3 (de) * 2015-12-30 2017-01-05 Haddadin Beteiligungs UG (haftungsbeschränkt) Roboter und Verfahren zum Betreiben eines Roboters
US10216182B2 (en) * 2016-03-31 2019-02-26 Avaya Inc. Command and control of a robot by a contact center with third-party monitoring
DE102016004840A1 (de) * 2016-04-24 2017-10-26 Kastanienbaum GmbH Mobiler Roboter
DE102016004836B3 (de) * 2016-04-24 2017-05-18 Haddadin Beteiligungs UG (haftungsbeschränkt) Steuerung eines Robotersystems
US10265844B2 (en) * 2017-03-24 2019-04-23 International Business Machines Corporation Creating assembly plans based on triggering events
CN107053175A (zh) * 2017-04-01 2017-08-18 南京阿凡达机器人科技有限公司 一种基于儿童服务机器人的健康管理平台及管理方法
CN108809676B (zh) * 2017-05-02 2023-07-18 北京米文动力科技有限公司 一种故障检测方法及机器人
WO2018236753A1 (en) 2017-06-19 2018-12-27 Google Llc PREDICTION OF ROBOTIC SEIZURE USING NEURAL NETWORKS AND A GEOMETRY-SENSITIVE REPRESENTATION OF OBJECT
CN107203698A (zh) * 2017-06-28 2017-09-26 上海斐讯数据通信技术有限公司 一种健康数据检测方法及系统
US11640733B2 (en) 2017-12-23 2023-05-02 Tesla, Inc. Autonomous driving system component fault prediction
US11475291B2 (en) 2017-12-27 2022-10-18 X Development Llc Sharing learned information among robots
US11017317B2 (en) 2017-12-27 2021-05-25 X Development Llc Evaluating robot learning
US10730181B1 (en) * 2017-12-27 2020-08-04 X Development Llc Enhancing robot learning
EP3539728A1 (de) * 2018-03-17 2019-09-18 Tata Consultancy Services Limited System und verfahren zur fehlererkennung in robotischer betätigung
JP6909410B2 (ja) 2018-05-08 2021-07-28 オムロン株式会社 ロボット制御装置、保守管理方法、及び保守管理プログラム
EP3876047A1 (de) * 2020-03-04 2021-09-08 Siemens Aktiengesellschaft Verfahren und sicherheitsgerichtete steuerungseinrichtung zur ermittlung und/oder auswahl eines sicheren zustands
WO2022041064A1 (en) * 2020-08-27 2022-03-03 Rethink Robotics Gmbh Method and apparatus for robot joint status monitoring
CN113204221B (zh) * 2021-04-29 2022-07-29 中电科机器人有限公司 基于光通信的多关节电机驱控与通信系统
CN116061233B (zh) * 2023-02-06 2024-07-23 杭州亿恒科技有限公司 在役工业关节机器人的健康监测方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19517852A1 (de) * 1995-05-16 1995-12-14 Uwe Kochanneck Multiblock Robot
EP0923011A2 (de) * 1997-11-30 1999-06-16 Sony Corporation Roboter System und Methode zum Antreiben eines Roboters
US20040164697A1 (en) * 2002-12-11 2004-08-26 Sony Corporation Legged mobile robot and actuator device applicable to join shaft of the robot
US20060033462A1 (en) * 2004-08-11 2006-02-16 Tomohisa Moridaira Device and method of controlling operation of robot apparatus
US20060214621A1 (en) * 2003-02-14 2006-09-28 Honda Giken Kogyo Kabushike Kaisha Abnormality detector of moving robot
DE112006003044T5 (de) * 2005-10-21 2008-10-23 Deere & Company, Moline Vielseitiges Robotersteuermodul

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4925312A (en) * 1988-03-21 1990-05-15 Staubli International Ag Robot control system having adaptive feedforward torque control for improved accuracy
JP2001150374A (ja) * 1999-11-25 2001-06-05 Sony Corp ロボットの故障診断システム
JP3811072B2 (ja) 2002-01-18 2006-08-16 本田技研工業株式会社 移動ロボットの異常検知装置
JP2006000966A (ja) 2004-06-17 2006-01-05 Sony Corp ロボット装置及びその制御方法
JP4480010B2 (ja) 2004-12-14 2010-06-16 株式会社Ihi 分散制御システム
JP5043839B2 (ja) * 2005-07-11 2012-10-10 ブルックス オートメーション インコーポレイテッド 予知保全用インテリジェント状態監視及び障害診断システム
US8317730B2 (en) * 2007-02-16 2012-11-27 Rehabtek Llc Robotic rehabilitation apparatus and method
JP2009037424A (ja) 2007-08-01 2009-02-19 Hitachi Ltd 制御システムおよび制御方法
US20130165945A9 (en) * 2007-08-14 2013-06-27 Hansen Medical, Inc. Methods and devices for controlling a shapeable instrument
KR100945884B1 (ko) 2007-11-14 2010-03-05 삼성중공업 주식회사 내장형 로봇 제어 시스템
US9046892B2 (en) * 2009-06-05 2015-06-02 The Boeing Company Supervision and control of heterogeneous autonomous operations
JP5219956B2 (ja) * 2009-07-23 2013-06-26 本田技研工業株式会社 移動体の制御装置
US8460236B2 (en) * 2010-06-24 2013-06-11 Hansen Medical, Inc. Fiber optic instrument sensing system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19517852A1 (de) * 1995-05-16 1995-12-14 Uwe Kochanneck Multiblock Robot
EP0923011A2 (de) * 1997-11-30 1999-06-16 Sony Corporation Roboter System und Methode zum Antreiben eines Roboters
US20040164697A1 (en) * 2002-12-11 2004-08-26 Sony Corporation Legged mobile robot and actuator device applicable to join shaft of the robot
US20060214621A1 (en) * 2003-02-14 2006-09-28 Honda Giken Kogyo Kabushike Kaisha Abnormality detector of moving robot
US20060033462A1 (en) * 2004-08-11 2006-02-16 Tomohisa Moridaira Device and method of controlling operation of robot apparatus
DE112006003044T5 (de) * 2005-10-21 2008-10-23 Deere & Company, Moline Vielseitiges Robotersteuermodul

Also Published As

Publication number Publication date
US8369992B2 (en) 2013-02-05
DE102010045345A1 (de) 2011-04-14
JP5567438B2 (ja) 2014-08-06
JP2011067942A (ja) 2011-04-07
US20110071679A1 (en) 2011-03-24

Similar Documents

Publication Publication Date Title
DE102010045345B4 (de) Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter
DE102010045528B4 (de) Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks
DE102010045529B4 (de) Interaktives Robotersteuerungssystem und Verwendungsverfahren
DE112010000775B4 (de) Industrierobotersystem
EP0893746B1 (de) Prozessdiagnosesystem und -Verfahren
EP2972607B1 (de) Verfahren zur behandlung von fehlern in einem zentralen steuergerät sowie steuergerät
Miyagi et al. Modeling and analysis of fault-tolerant systems for machining operations based on Petri nets
EP1703350B1 (de) Diagnose eines Automatisierungssystems
EP1628875A1 (de) Automation trägersystem schiff
DE102012110802A1 (de) Verfahren zur Überwachung, Steuerung und Datenerfassung von Systemkomponenten eines Service-orientierten Automatisierungssystems sowie Automatisierungssystem zur Durchführung des Verfahrens
DE102012213188B4 (de) Verfahren und System zum Steuern einer Ausführungssequenz eines geschickten Roboters unter Verwendung einer Zustandsklassifizierung
EP1402325B1 (de) Verfahren und system zur unterstützung der projektierung von fertigungsanlagen
WO2008090216A1 (de) Automatisierungssystem mit implementierter engineering-umgebung
WO2001067196A1 (de) Betriebsnetzwerksystem
DE102020201398B3 (de) Betreiben einer Applikation eines Robotersystems
DE102019211770B3 (de) Verfahren zur rechnergestützten Erfassung und Auswertung eines Arbeitsablaufs, bei dem ein menschlicher Werker und ein robotisches System wechselwirken
Hu et al. Two diagnostic models for PLC controlled flexible manufacturing systems
EP1947568A1 (de) Verfahren zur Beobachtung eines Steuergeräts
EP1672446B1 (de) Sichere Eingabe-/Ausgabe-Baugruppen für eine Steuerung
WO2013076071A1 (de) Verfahren zum semi-automatischen erstellen eines simulationsmodells für ein mechatronisches system
WO2024079318A1 (de) System und verfahren zur sicherheitsgerichteten überwachung einer technischen anlage
Shan et al. Key technologies of real-time visualization system for intelligent manufacturing equipment operating state under IIOT environment
Camarinha-Matos et al. Execution monitoring in assembly with learning capabilities
DE102020117935A1 (de) Automatisierungssystem und steuerung zur verschleisserkennung
Ismail et al. Cobot fleet management system using cloud and edge computing

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: THE U.S.A. AS REPRESENTED BY THE ADMINISTRATOR, US

Owner name: GM GLOBAL TECHNOLOGY OPERATIONS LLC , ( N. D. , US

R081 Change of applicant/patentee

Owner name: GM GLOBAL TECHNOLOGY OPERATIONS LLC (N. D. GES, US

Free format text: FORMER OWNERS: GM GLOBAL TECHNOLOGY OPERATIONS LLC (N. D. GESETZEN DES STAATES DELAWARE), DETROIT, MICH., US; THE U.S.A. AS REPRESENTED BY THE ADMINISTRATOR OF THE NATIONAL AERONAUTICS AND SPACE ADMINISTRATION, WASHINGTON, D.C., US

Effective date: 20110321

Owner name: THE U.S.A. AS REPRESENTED BY THE ADMINISTRATOR, US

Free format text: FORMER OWNERS: GM GLOBAL TECHNOLOGY OPERATIONS LLC (N. D. GESETZEN DES STAATES DELAWARE), DETROIT, MICH., US; THE U.S.A. AS REPRESENTED BY THE ADMINISTRATOR OF THE NATIONAL AERONAUTICS AND SPACE ADMINISTRATION, WASHINGTON, D.C., US

Effective date: 20110321

Owner name: GM GLOBAL TECHNOLOGY OPERATIONS LLC (N. D. GES, US

Free format text: FORMER OWNER: GM GLOBAL TECHNOLOGY OPERATIONS, THE U.S.A. AS REPRESENTED BY TH, , US

Effective date: 20110321

Owner name: THE U.S.A. AS REPRESENTED BY THE ADMINISTRATOR, US

Free format text: FORMER OWNER: GM GLOBAL TECHNOLOGY OPERATIONS, THE U.S.A. AS REPRESENTED BY TH, , US

Effective date: 20110321

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

Effective date: 20130830