DE102010045752B4 - Visuelles Wahrnehmungssystem und -verfahren für einen humanoiden Roboter - Google Patents

Visuelles Wahrnehmungssystem und -verfahren für einen humanoiden Roboter Download PDF

Info

Publication number
DE102010045752B4
DE102010045752B4 DE102010045752.3A DE102010045752A DE102010045752B4 DE 102010045752 B4 DE102010045752 B4 DE 102010045752B4 DE 102010045752 A DE102010045752 A DE 102010045752A DE 102010045752 B4 DE102010045752 B4 DE 102010045752B4
Authority
DE
Germany
Prior art keywords
interest
robot
image
area
vpm
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
DE102010045752.3A
Other languages
English (en)
Other versions
DE102010045752A1 (de
Inventor
James W. Wells
Neil David Mc Kay
Suhas E. Chelian
Douglas Martin Linn
Charles W. Wampler II.
Lyndon Bridgwater
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 DE102010045752A1 publication Critical patent/DE102010045752A1/de
Application granted granted Critical
Publication of DE102010045752B4 publication Critical patent/DE102010045752B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/245Aligning, centring, orientation detection or correction of the image by locating a pattern; Special marks for positioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • H04N23/11Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths for generating image signals from visible and infrared light wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manipulator (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

Robotersystem, das umfasst:einen humanoiden Roboter (10) mit einer Vielzahl von Robotergelenken, die jeweils unter Verwendung mindestens eines Stellglieds bewegbar sind; undeinen verteilten Controller (24), der zur Steuerung der Bewegung jedes der Robotergelenke ausgestaltet ist, wobei der Controller (24) ein visuelles Wahrnehmungsmodul (VPM) (30V) umfasst, das ausgelegt ist, um ein Objekt (20) im Gesichtsfeld des Roboters (10) bei vorbestimmten Schwellenwertbedingungen der Umgebungsbeleuchtung visuell zu identifizieren und zu verfolgen;wobei das VPM (30V) umfasst:eine Vielzahl von optischen Einrichtungen (34, 34A, 34B) zum Aufnehmen eines Bilds des Objekts (20);eine Lasereinrichtung (42) und/oder eine Entfernungsbildgebungseinrichtung (36) zum Detektieren von Positionsinformationen des Objekts (20); undeine Hostmaschine (32), die ausgestaltet ist, um:das Bild und die Positionsinformationen zu verarbeiten, um das Objekt (20) dadurch visuell zu identifizieren und zu verfolgen;eine Belichtungszeit der optischen Einrichtungen (34, 34A, 34B) automatisch anzupassen, um einen Merkmalsdatenverlust des Bilds unter den Schwellenwertbedingungen der Beleuchtung zu verhindern; undum ein interessierendes Merkmal an dem Objekt (20) entweder Schwarz auf Schwarz oder Weiß auf Weiß zu unterscheiden, indem:ein kleines interessierendes Gebiet im Bild automatisch ausgewertet wird;ein Histogramm verwendet wird, um das Ausmaß des Beleuchtungsbereichs des interessierenden Gebiets zu bestimmen, unddann der Beleuchtungsbereich unter Verwendung der Hostmaschine (32) verarbeitet wird, um dadurch die interessierenden Merkmale zu identifizieren, wobeider Beleuchtungsbereich des interessierenden Gebiets proportional ausgedehnt und dann auf das interessierende Gebiet angewendet wird, um den Kontrast zu verbessern.

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 ein System und ein Verfahren zum automatischen Auffinden, Verfolgen und Messen verschiedener Merkmale und/oder Objekte im Gesichtsfeld des humanoiden Roboters.
  • HINTERGRUND DER ERFINDUNG
  • Roboter sind automatisierte oder autonome Einrichtungen, die zur Manipulation von Objekten unter Verwendung einer Reihe von starren 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 speziellen Glieder, die zum Ausführen einer anstehenden Aufgabe verwendet werden, z.B. zum Ergreifen eines Arbeitswerkzeugs oder eines anderen Objekts. Daher kann eine präzise Bewegungssteuerung eines Roboters 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 wirken zusammen, um gemeinsam die benötigte Mobilität, Geschicklichkeit und arbeitsaufgabenbezogene Funktionalität des Roboters zu erreichen.
  • Humanoide Roboter weisen insbesondere eine annähernd menschliche Gestalt, Funktion und/oder ein annähernd menschliches Erscheinungsbild auf, sei es ein vollständiger Körper, ein Torso und/oder eine oder mehrere Gliedmaßen, wobei die benötigte strukturelle Komplexität des humanoiden Roboters zu einem großen Teil vom Wesen der Arbeitsaufgabe abhängt, die ausgeführt wird. Die Verwendung humanoider Roboter kann dort bevorzugt sein, wo eine direkte Interaktion mit Objekten, Werkzeugen oder Systemen benötigt wird, die speziell für den menschlichen Gebrauch gedacht sind. Aufgrund des weiten Spektrums potentieller 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 erwähnten Steuerungsräumen sowie über ein aufgebrachtes Drehmoment, eine aufgebrachte Kraft oder eine resultierende Gelenkbewegung angewendet werden.
  • Herkömmliche Robotersysteme können sich auf aufgabenspezifische Greiforgane, Teilehalterungen und Montagegestelle stützen, um einen Montageprozess zu implementieren. In einigen Fällen können maschinelle Sichtsysteme implementiert und abgestimmt sein, um ein spezielles Teil zu lokalisieren und/oder um den Abschluss einer Montageaufgabe oder eines sequentiellen Schritts derselben zu bestätigen. Das Einrichten eines derartigen Systems kann relativ zeitaufwendig sein und erfordert oft eine umfassende Kalibrierung, Roboterprogrammierung und Kompilierung eines Codes auf Maschinenebene. Maschinelle Sichtsysteme nach dem Stand der Technik können zweidimensionale oder dreidimensionale Sichtsysteme und strukturierte/technische Beleuchtungstechniken einsetzen. Das resultierende Montagesystem kann tendenziell spezifisch für nur einen Satz von gleichen Aufgaben und Arbeitsbedingungen sein. Gleichermaßen kann das Einrichten, das Kommissionieren und der Support des Roboters aufgrund von normalerweise benötigter Haltevorrichtungs-, Werkzeugs- und/oder verschiedener Materialhandhabungsausrüstung relativ problematisch und zeitaufwendig sein, was somit zu zusätzlichen Entwicklungs-, Installations- und anderen Aufwänden führt.
  • Die US 2009/0 059 033 A1 offenbart einen Belichtungscontroller für eine an einem Roboter montierte Kamera, der ein Helligkeitshistogramm eines erfassten Bildes erzeugt und basierend darauf Belichtungsparameter einstellt. Wenn die eingestellten Belichtungsparameter nicht innerhalb eines vorbestimmten Bereichs liegen und zudem ein Bildbereich mit hoher Helligkeit vorhanden ist, wird dieser ggf. aus dem Bild entfernt.
  • In der EP 1 653 397 A2 ist eine Robotervorrichtung und ein Steuerungsverfahren für diese offenbart, die Handlungen und Verhaltensmuster, beispielsweise von Menschen lernt und nachahmt.
  • Die EP 0 963 816 A2 offenbart ein Verfahren zum Erfassen und Kompensieren von kinematischen Veränderungen eines Roboters, bei dem ein Objekt in einem Griff des Roboters im Gesichtsfeld einer optischen Einrichtung positioniert wird und Gelenkwinkel von Robotergelenken gemessen werden. Diese Istwerte werden mit Sollwerten abgeglichen, die auf einem Modell beruhen, um Abweichungen zu kompensieren.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Entsprechend werden hier ein flexibles visuelles Wahrnehmungssystem und -verfahren bereitgestellt, die es einem humanoiden Roboter mit vielen Freiheitsgraden, z.B. den über 42 Freiheitsgraden eines speziellen hier beschriebenen humanoiden Roboters, ermöglichen, eine Vielzahl von Merkmalen und/oder Objekten im Gesichtsfeld des Roboters, d.h. im Gesichtsfeld einer Matrix aus verschiedenen optischen, Laser- und/oder Infrarotsensoren desselben, automatisch zu finden, zu verfolgen und zu messen. Der humanoide Roboter umfasst mehrere Robotergelenke, die jeweils unter Verwendung mindestens eines Gelenkmotors oder eines oder mehrerer Stellglieder auf Gelenkebene durch einen oder mehrere Freiheitsgrade bewegbar sind, und er kann auch Drehmoment-, Positions- und/oder andere Sensoren umfassen, die zum Messen beliebiger benötigter Steuerungs- und Rückkopplungsdaten in den Robotergelenken und anderen integrierten Systemkomponenten ausgelegt sind.
  • Ein verteilter Controller kann ausgelegt sein, um die verschiedenen Robotergelenke und andere integrierte Systemkomponenten, die zum Ausführen einer speziellen Sequenz gebraucht werden, einschließlich eines visuellen Wahrnehmungsmoduls (VPM), wie es nachstehend beschrieben wird, zu steuern, indem Steuerungsdaten über mehrere Hochgeschwindigkeitskommunikationsnetzwerke weitergeleitet werden. Der Controller kann einen Controller auf Befehlsebene, um ein Steuerungssignal zu übertragen, das die Ausführung einer automatisierten oder autonomen Aufgabe oder eines automatisierten oder autonomen Schritts durch den Roboter befiehlt, mehrere eingebettete Controller auf Gelenk- und Systemebene, von denen jeder die Arbeitsweise einer jeweiligen integrierten Systemkomponenten direkt steuert, z.B. eines der Robotergelenke, und einen Controller auf Gelenkkoordinationsebene zum Koordinieren der Steuerung der verschiedenen integrierten Systemkomponenten umfassen, die für eine spezielle Sequenz in Ansprechen auf das Steuerungssignal verwendet werden.
  • Ein Abschnitt des verteilten Controllers, d.h. das VPM, versorgt den humanoiden Roboter über einen Satz von Sensoren, z.B. optische Sensoren, wie etwa maschinelle Sichtkameras mit hoher Auflösung, universelle Entfernungsmessungssensoren und/oder Entfernungsmessungssensoren für Umgebungsbeleuchtung, wie etwa eine Bildgebungseinrichtung im Kurzstreckeninfrarotbereich, und/oder Lasereinrichtungen zur Extraktion von Positionsdaten des Objekts, und über eine oder mehrere Hardware/Software-Einrichtungen zur Bildverarbeitung, d.h. einer jeweiligen Hostmaschine und einem Bildverarbeitungsalgorithmus, mit der Fähigkeit zur präzisen visuellen Wahrnehmung. Es wird eine Automatisierung ermöglicht, die das Stützen des humanoiden Roboters auf eine Haltevorrichtungs- und/oder eine andere mechanische Stützstruktur für seine grundlegende Arbeitsweise wesentlich verringert, was die Erledigung von Aufgaben unter Verwendung von Werkzeugen und einer Infrastruktur ermöglicht, die denjenigen ähneln, die für einen vollständig manuellen Prozess verwendet werden.
  • Der Controller umfasst das VPM, welches eine Hostmaschine, einen Server oder eine andere geeignete Verarbeitungseinrichtung umfassen kann, sowie einen Bildverarbeitungsalgorithmus, der das Verfahren der vorliegenden Erfindung ausführt, und eine Vielzahl von Sensoren, die zum Aufnehmen der benötigten Bild- und/oder Entfernungsbilddaten ausgestaltet sind, welche schließlich unter Verwendung der Hostmaschine verarbeitet werden. Das VPM kann auch ein Hilfsbeleuchtungssystem umfassen, das eine Automatisierung ohne den Bedarf für anwendungsspezifische technische Beleuchtungssysteme des in der Technik bekannten Typs ermöglicht. Durch das Ausführen des Algorithmus, wie er hier offengelegt wird, stellt das VPM für einen Bereich von Teilen, die beim Ausführen einer speziellen automatisierten oder autonomen Aufgabe angetroffen werden können, eine präzise Objekt/Merkmals-Lokalisierung und Führung bei problematischen Schwellenwertbedingungen der Umgebungsbeleuchtung bereit, d.h. bei Schwellenwertbedingungen mit niedrigem Kontrast mit schwarz auf schwarz oder weiß auf weiß.
  • Der Algorithmus passt die Belichtungszeit eines Satzes von optischen Kameras automatisch an, um einen Merkmalsdatenverlust eines aufgenommenen Bildes in dunklen oder hellen Schwellenwertgebieten zu verhindern. Wie vorstehend angemerkt, stellt der Algorithmus auch die Fähigkeit zur Merkmalsfindung bei schwarz auf schwarz oder weiß auf weiß von Flächen mit ähnlichem Kontrast unter den Schwellenwertbedingungen der Umgebungsbeleuchtung bereit. Dies ermöglicht die Optimierung des dynamischen Helligkeitsbereichs der Sensoren auf der Grundlage der Notwendigkeit, dass die Anwendung im Gesichtsfeld sehr dunkle oder helle Merkmale erkennt. Außerdem kann das VPM verwendet werden, um dem humanoiden Roboter neue automatisierte Aufgabensequenzen zu „teachen“ oder zu „zeigen“, z.B. indem dem Roboter verschiedene Datenpunkte, Teile, Posen, Merkmale in der Umgebung, Kalibrierungsgegenstände und/oder sequentielle Strecken in einem speziellen Arbeitsgebiet oder einer Arbeitsumgrenzung gezeigt werden. Diese und andere Bildverarbeitungsfähigkeiten werden hier in weiterem Detail offengelegt.
  • Insbesondere wird ein Robotersystem bereitgestellt, das einen humanoiden Roboter mit einer Vielzahl von Robotergelenken aufweist, die jeweils unter Verwendung mindestens eines einer Vielzahl von Stellgliedern bewegbar sind. Das System umfasst auch ein visuelles Wahrnehmungsmodul (VPM). Das VPM ist ausgelegt, um ein Objekt im Gesichtsfeld des Roboters unter Schwellenwertbedingungen der Umgebungsbeleuchtung visuell zu identifizieren und zu verfolgen, und es umfasst eine Vielzahl von optischen Einrichtungen, die zum Aufnehmen eines Bilds des Objekts ausgelegt sind, mindestens eine Positionsextraktionseinrichtung, wie etwa eine Lasereinrichtung und eine Entfernungsbildgebungseinrichtung, die zum Extrahieren von Positionsinformationen des Objekts ausgelegt ist, eine Hostmaschine und einen Bildverarbeitungsalgorithmus. Der Algorithmus wird mithilfe der Hostmaschine ausgeführt, um eine Belichtungszeit der optischen Einrichtung automatisch anzupassen, um sowohl für sehr dunkle aus auch sehr helle interessierende Merkmale bei den Extremwerten des Helligkeitsbereichs des Sensors einen Merkmalsdatenverlust eines aufgenommenen Bilds des Objekts unter den Schwellenwertbedingungen der Umgebungsbeleuchtung zu verhindern.
  • Es wird auch ein Verfahren bereitgestellt, um ein Objekt im Gesichtsfeld des humanoiden Roboters unter den gleichen Schwellenwertbedingungen der Umgebungsbeleuchtung zu identifizieren und zu verfolgen. Das Verfahren umfasst, dass optische Einrichtungen verwendet werden, um ein Bild des Objekts unter Verwendung der laser- und/oder radarbasierten Entfernungsbildgebungseinrichtungen zur Extraktion von Positionsinformationen des Objekts aufzunehmen, und dass die Bild- und Positionsinformationen unter Verwendung einer Hostmaschine verarbeitet werden. Das Verfahren umfasst auch, dass die Hostmaschine verwendet wird, um die Bild- und Positionsinformationen unter Verwendung eines Bildverarbeitungsalgorithmus zu verarbeiten, um eine Belichtungszeit der optischen Einrichtungen automatisch anzupassen, und um dadurch einen Merkmalsdatenverlust des Bilds unter den Schellenwertbedingungen der Umgebungsbeleuchtung zu verhindern.
  • 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.
  • Figurenliste
    • 1 ist eine schematische Veranschaulichung eines Robotersystems mit einem visuellen Wahrnehmungsmodul (VPM) gemäß der vorliegenden Erfindung;
    • 2 ist eine schematische Veranschaulichung des VPM, das in 1 gezeigt ist;
    • 3 ist ein graphisches Flussdiagramm, das einen Abschnitt eines Algorithmus des in 2 gezeigten VPM beschreibt;
    • 4 ist ein graphisches Flussdiagramm, das einen weiteren Abschnitt eines Algorithmus des in 2 gezeigten VPM beschreibt;
    • 5 ist eine schematische Veranschaulichung des humanoiden Roboters von 1, der ein Objekt durch mehrere Ansichten oder Winkel betrachtet;
    • 6 ist eine schematische perspektivische Ansichtsdarstellung eines Kalibrierungsgegenstands oder -objekts, der bzw. das an einer Hand des in 1 gezeigten Roboters montiert sein kann; und
    • 7 ist eine schematische perspektivische Ansichtsdarstellung eines Punkt/Posen-Zeigerteachwerkzeugs, das für ein sichtbasiertes Aufgabentraining des Roboters von 1 verwendet werden kann.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Mit Bezug auf die Zeichnungen, in denen gleiche Bezugszeichen in den verschiedenen Ansichten gleiche oder ähnliche Komponenten bezeichnen, zeigt 1 ein Robotersystem, das einen geschickten humanoiden Roboter 10 umfasst, welcher wiederum über ein verteiltes Steuerungssystem oder einen Controller (C) 24 gesteuert wird. Der Roboter 10 ist ausgelegt, um eine oder mehrere automatisierte oder autonome Aufgaben mit mehreren Freiheitsgraden (DOF) auszuführen. Gemäß einer Ausführungsform ist der Roboter 10 mit einer Vielzahl von unabhängig und voneinander abhängig bewegbaren Robotergelenken ausgestaltet, wie etwa einem Schultergelenk, dessen Position allgemein durch Pfeil A angezeigt ist, 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, ist aber nicht darauf beschränkt.
  • 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) einen 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 ein oder mehrere Stellglieder, z.B. Gelenkmotoren, lineare Stellglieder, serielle elastische Stellglieder, andere Drehstellglieder und dergleichen, und wird intern dadurch angetrieben.
  • 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 verschiedenen vorstehend erwähnten Gelenke darin oder dazwischen angeordnet sind. Der Roboter 10 kann in Abhängigkeit von der speziellen Anwendung oder der beabsichtigten Verwendung des Roboters auch eine für die Aufgabe geeignete Halterung oder Basis (nicht gezeigt) umfassen, wie etwa Beine, Laufflächen oder eine andere bewegliche oder starre Basis. Eine Leistungsversorgung 13 kann an dem Roboter 10 einstückig montiert sein, z.B. ein wiederaufladbarer Batteriestapel, der an der Rückseite des Torsos 14 mitgeführt oder getragen wird, oder eine andere geeignete Energieversorgung, oder sie kann sich außerhalb des Roboters befinden und über elektrische Kabel verbunden sein, um ausreichend elektrische Energie an den Controller und die Stellglieder der verschiedenen Gelenke und andere integrierte Systemkomponenten zu liefern.
  • Der verteilte Controller 24 stellt eine präzise Bewegungs- und Systemsteuerung des humanoiden Roboters 10 bereit, d.h. über die verschiedenen Gelenke und die anderen integrierten Systemkomponenten, wie etwa Relais, Module, interne oder externe Schaltungskomponenten usw., einschließlich einer Kontrolle über die feinen und groben Bewegungen, die zum Manipulieren eines Werkstücks, eines Werkzeugs oder eines anderen Objekts 20 benötigt werden, das von den Fingern 19 und dem Daumen 21 von einer oder mehreren Händen 18 ergriffen sein kann. Der Controller 24 ist zur unabhängigen Steuerung jedes Robotergelenks isoliert von den anderen Gelenken in der Lage, sowie zur voneinander abhängigen Steuerung einer Anzahl der Gelenke, um die Aktionen der mehreren Gelenke beim Ausführen einer relativ komplexen Arbeitsaufgabe vollständig zu koordinieren.
  • Der Controller 24 kann mehrere digitale Computer oder Datenverarbeitungseinrichtungen umfassen, die jeweils einen oder mehrere Mikroprozessoren oder zentrale Verarbeitungseinheiten (CPU), einen Festwertspeicher (ROM), einen Speicher mit wahrfreiem 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 und Einrichtungen (E/A-Schaltungen) sowie Signalaufbereitungs- und Pufferelektronik aufweisen. Einzelne Steuerungsalgorithmen, die im Controller 24 vorhanden sind oder für diesen 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.
  • Der Controller 24 kann über mehrere Kommunikationsknoten oder Verbindungspunkte hinweg und über mehrere Hochgeschwindigkeitskommunikationsnetzwerke kommunizieren, z.B. Ethernet, Mehrpunktniederspannungsbusse mit differentieller Signalisierung (M-LVDS), Busplatinen und dergleichen. Die Knoten können als die verschiedenen Modems, Hubs, Brücken, Computer, Datenrouter, Arbeitsstationen, Server usw. ausgeführt sein, welche den Informationsfluss im Robotersystem steuern.
  • Immer noch mit Bezug auf 1 ist der Roboter 24 insofern „verteilt“, als eine Steuerung auf Befehlsebene auf einer obersten oder einer Makroebene bereitgestellt sein kann, wobei eine Gelenkkoordinationssteuerung auf einer niedrigeren oder Zwischenebene bereitgestellt ist. Der Controller auf Zwischenebene wiederum steuert jedes Gelenk, das an der Steuerung einer speziellen Aufgabe oder Bewegung beteiligt ist, und führt dies über eine direkte Kommunikation mit mehreren Controllern auf niedriger Ebene durch.
  • Der Controller 24 kann daher einen Controller auf Befehlsebene, der hier als ein Systembefehlshaber 25 bezeichnet wird, und einen Gelenk- und Systemkoordinationscontroller in Echtzeit umfassen, der hier nachstehend als der Hirnstamm 27 bezeichnet wird. Der Controller 24 kann auch mehrere eingebettete Controller 29 auf Gelenkebene umfassen, welche, wie die Beschreibung impliziert, jeweils in die Struktur des Roboters 10 eingebettet sind, z.B. in die Arme 16, nahe bei dem speziellen Gelenk oder einer anderen integrierten Systemkomponente, die dadurch gesteuert wird. Die Controller 29 auf Gelenkebene können als eine oder mehrere gedruckte Leiterplattenanordnungen (PCBA) ausgestaltet sein, die eine Gelenkerfassung, Signalverarbeitung und unmittelbare Stellgliedsteuerung bereitstellen.
  • Immer noch mit Bezug auf 1 können Steuerungsdaten und die Rückkopplungsdaten, die durch den Doppelpfeil 11 dargestellt sind, zwischen dem humanoiden Roboter 10 und den verschiedenen Ebenen des Controllers 24, einschließlich einem visuellen Wahrnehmungsmodul (VPM) 30V, das nachstehend beschrieben wird, ausgetauscht werden, um eine präzise komplexe Bewegung und Systemsteuerung des Roboters sicherzustellen. Der Controller 24 kann eine Anwenderschnittstelle 22 umfassen, z.B. ein Bediengerät, einen Anzeigebildschirm und/oder eine andere Mensch-Maschine-Schnittstelleneinrichtung (HMI-Einrichtung). Die Anwenderschnittstelle 22 kann ausgestaltet sein, um einen Zugriff auf den humanoiden Roboter 10 auf der Betriebs- und der Programmierebene separat zu ermöglichen.
  • Im Umfang der vorliegenden Erfindung kann der Controller 24 auch Anwendungsmodule 30 umfassen. Jedes Anwendungsmodul ist ausgestaltet, um eine gewisse Umgebungs- oder Peripheriesensoranwendung zu steuern. Bei einer Ausführungsform ist eines der Befehlsmodule als das VPM 30V ausgestaltet, welches den Roboter 10 mit einer flexiblen visuellen Wahrnehmungsfähigkeit zur Unterstützung geschickter Aufgaben versorgt. Eine derartige Umgebungswahrnehmungs-/Erfassungsfähigkeit oder eine andere verwandte Steuerungsfunktionalität des VPM 30V kann mithilfe der mehreren vorstehend beschriebenen Hochgeschwindigkeitsnetzwerke von den verschiedenen Steuerungsebenen des Controllers 24 weitergeleitet werden.
  • Mit Bezug auf 2 umfasst das VPM 30V Hardware, Software und Sensoren, die alle mit dem Roboter 10 von 1 gekoppelt sind. Das VPM 30V ermöglicht eine sichtbasierte Arbeitsweise des Roboters 10, ohne dass anwendungsspezifische technische Beleuchtungssysteme benötigt werden, um das Arbeitsgebiet und/oder beliebige Objekte zu beleuchten, auf die durch den Roboter eingewirkt wird. Das VPM 30V stellt eine Lokalisierung und Führung von Objekten oder Merkmalen unter Bedingungen mit problematischem Licht, Bedingungen mit niedrigem Oberflächenkontrast usw. bereit, ohne eine herkömmliche Halterung oder andere Infrastruktur zu benötigen.
  • Gemäß einer Ausführungsform kann das VPM 30V einen Prozessor oder eine Hostmaschine 32, Software in der Form eines Bildverarbeitungsalgorithmus 100 und Sensoren in der Form von optischen Sensoren oder Kameras 34 und einer oder mehreren Positionsdatenextraktionseinrichtungen umfassen, z.B. einen Entfernungsmessungssensor oder ein Infrarotentfernungsbildgerät 36 (IR-Entfernungsbildgerät) und/oder Laserprojektoren 42. Gemäß einer Ausführungsform können die Kameras 34 als hoch auflösende Kameras mit mindestens etwa fünf Megapixeln ausgestaltet sein, obwohl auch andere Kameras, die andere geeignete Auflösungen bereitstellen, verwendet werden können, um ein ähnliches Ergebnis zu erzielen.
  • Die Hostmaschine 32 kann als ein Digitalrechner mit einem oder mehreren Mikroprozessoren oder zentralen Verarbeitungseinheiten (CPU), einem Festwertspeicher (ROM), einem Speicher mit wahlfreiem Zugriff (RAM), einem elektrisch programmierbaren Festwertspeicher (EPROM), einem Hochgeschwindigkeitstaktgeber, Analog/Digital-Schaltungen (A/D-Schaltungen), Digital/Analog-Schaltungen (D/A-Schaltungen) und beliebigen benötigten Eingabe/Ausgabe-Schaltungen und Einrichtungen (E/A-Schaltungen) sowie Signalaufbereitungs- und Pufferelektronik ausgestaltet sein. Der Algorithmus 100 kann im ROM in der Hostmaschine 32 oder an einer anderen für die Hostmaschine zugänglichen Stelle gespeichert sein und automatisch durch diese ausgeführt werden, um die jeweilige visuelle Wahrnehmungsfunktionalität bereitzustellen, wie nachstehend offengelegt wird.
  • Die Hostmaschine 32 kann mit den Kameras 34 und dem IR-Entfernungsbildgerät 36 über eine Hochgeschwindigkeitsverbindung 37 und jeweilige Hubs 38A, 38B gekoppelt sein. Bei einer Ausführungsform kann der Hub 38A als ein Ethernet-Hub ausgestaltet sein, während der Hub 38B als ein Universeller Serieller Bus-Hub (USB-Hub) ausgestaltet sein kann, obwohl auch andere Hubausgestaltungen verwendet werden können, ohne den beabsichtigten Umfang der Erfindung zu verlassen. Die Kameras 34, das IR-Entfernungsbildgerät 36 und die Laserprojektoren 42 können im Kopf 12 des Roboters 10 enthalten oder eingeschlossen sein, wobei ein Paar der Kameras durch eine kalibrierte Distanz getrennt ist, um eine dreidimensionale (3D) Stereoansicht eines Objekts 20 (siehe 1) bereitzustellen, das an einem Fokuspunkt 40 im Robotergesichtsfeld positioniert ist.
  • Das VPM 30V kann auch eine Hilfsbeleuchtungseinrichtung 44 umfassen, welche die nachstehend beschriebene Funktionalität aufweist. Die Projektoren 42 und die Beleuchtungseinrichtung 44 können mit Bezug auf ein Gerüst 46 montiert sein, das auf ähnliche Weise im Kopf 12 des in 1 gezeigten Roboters 10 eingeschlossen ist. Ein derartiges Gerüst 46 kann auch ausgestaltet sein, um das IR-Entfernungsbildgerät 36 und jede der Kameras 34 abzustützen. Auf diese Weise wird die Datenverarbeitung von der Hostmaschine 32 ausgeführt, während die Kameras 34, das IR-Entfernungsbildgerät 36, die Beleuchtungseinrichtung 44 und die Laserprojektoren 42 sicher im Kopf 12 positioniert sind.
  • Immer noch mit Bezug auf 2 umfasst das VPM 30V eine vierachsige redundante Blicksteuerungseinheit (GCU) 48, einschließlich einer Achse, die durch die Taille 15 von 1 bereitgestellt wird. Der Kopf 12 ist mit mindestens zwei Freiheitsgraden bewegbar, d.h. Drehung und Höhe. Ein oder mehrere Stellglieder 50, z.B. Gelenkmotoren, serielle elastische Stellglieder, Drehstellglieder und/oder lineare Stellglieder ermöglichen, dass sich der Kopf 12 nach Bedarf dreht oder neigt, um den Fokuspunkt 40 zu verstellen. Eine präzise Bewegungssteuerung des Blicks wird über den Controller 24 von 1 und die GCU 48 von 2 bereitgestellt, wobei ein Controller 19 auf Gelenkebene im Nackengelenk des Roboters 10 von 1 eingebettet ist und zum Bereitstellen von Sensor- und Datenverarbeitung für mindestens einen Freiheitsgrad des Gelenks bestimmt ist.
  • Das VPM 30V von 2, das in Verbindung mit dem in 1 gezeigten humanoiden Roboter 10 mit 42+ Freiheitsgraden verwendet wird, stellt Automatisierungsfähigkeiten bereit, welche das Stützen auf Halterungen und mechanische Strukturen erheblich verringern können, wie vorstehend angemerkt wurde. Diese Fähigkeit kann die Ausführung einer automatisierten Aufgabe mit einem Satz von nur wenig mehr oder nicht mehr Anforderungen an die Infrastruktur ermöglichen als es ein vollständig manueller Prozess würde. Eine Führung durch Wahrnehmung statt durch Halterungen kann ermöglichen, dass die Mobilität des Roboters hinsichtlich der Wiederholbarkeit und Genauigkeit wesentlich erleichterte Anforderungen aufweist und kann die Fähigkeit der aufgabenbezogenen Führung durch Wahrnehmung ausnutzen. Die durch das VPM 30V bereitgestellte flexible Roboterwahrnehmungsfähigkeit wendet eine Strategie an, die hochgradig flexible Roboter/ Greiforgane, Merkmalswahrnehmung und Einbindung von menschlichen Anwendern oder Bedienern, die manuelle Arbeitsaufgaben ausführen, umfasst. Ein visuelles Wahrnehmungssystem, das über ein Feld von automatisierten Anwendungen hinweg flexibel ist, kann die Zuordnung des Roboters 10 zu einem speziellen Satz von Aufgaben erleichtern, die durch die Mischproduktion und Geschäftsnotwendigkeiten benötigt wird.
  • Mit Bezug auf 3 in Verbindung mit der Struktur von 1 und 2 umfasst der Algorithmus 100 von 2 einen Abschnitt oder Algorithmus 100A, der versucht, korrekt belichtete Bilder von einer oder mehreren Kameras 34 zur Verwendung bei Sichtaufgaben zu beschaffen. Der Algorithmus 100A startet bei Schritt 102, bei dem Belichtungszeiten zur Verwendung durch die Kameras 34 beim Aufnehmen von Bildern beschafft werden. Bei einer Ausführungsform können die beschafften Belichtungszeitwerte Belichtungszeiten sein, die zuvor von dem gleichen Algorithmus 100A verwendet wurden, da diese Werte korrekt belichtete Bilder erzeugen werden, wenn sich die Beleuchtungsbedingungen nicht verändert haben.
  • Der Algorithmus 100A geht dann zu Schritt 104 weiter, bei dem Bildbelichtungszeiten für die Kameras 34 eingestellt werden. Nach dem Einstellen geht der Algorithmus 100A zu Schritt 106 weiter, bei welchem Bilder des Objekts 20, z.B. eines Werkstücks, eines Werkzeugs oder eines anderen Objekts, auf das durch den Roboter 10 eingewirkt wird, von dem VPM 30V unter Verwendung der Kameras 34 aufgenommen werden.
  • Eine Zeitsteuerung der Bildaufnahme kann entweder durch Software oder durch ein externes Hardwaresignal gesteuert werden. Wenn mehrere Kameras verwendet werden, wird das Synchronisationssignal an alle Kameras gleichzeitig gesendet. Dies ermöglicht, dass genaue Stereosichtberechnungen ausgeführt werden, da die Aufnahme der zwei Bilder von beiden Stereokameras zum gleichen Augenblick ausgelöst wurde. Das Synchronisationssignal kann auch das Aufzeichnen von anderen Informationen auslösen, etwa der Position des Roboters 10 entweder im Gelenkraum oder kartesischen Raum. Alternativ kann der Bildaufnahmeprozess die Zeitpunkte aufzeichnen, an denen die Bilder aufgenommen wurden, sodass beispielsweise eine nachfolgende Verarbeitung eine Roboterbewegung zwischen Aufnahmen einzelner Bilder kompensieren kann.
  • Die Bilder werden temporär im Speicher der Hostmaschine 32 aufgezeichnet. Eine Bilddatenkonservierungs-Belichtungssteuerung kann dadurch bereitgestellt sein, dass die oberen und unteren Intensitätskomponenten der aufgenommenen Bilder automatisch verarbeitet und analysiert werden. Der Algorithmus 100A geht dann zu Schritt 108 weiter.
  • Bei Schritt 108 kann die Bildhelligkeit unter Verwendung der Hostmaschine 32 berechnet werden. Die Bildhelligkeit kann auf der Grundlage einer einzigen Kamera 34 berechnet werden, oder sie kann auf gleichzeitigen Bildern von zwei oder mehr Kameras beruhen. Im letzteren Fall kann die gemessene Helligkeit in allen Bildern einzeln berechnet werden oder sie kann eine mathematische Kombination (wie etwa ein Mittelwert) der Helligkeit der einzelnen Bilder sein. Wenn ermittelt wird, dass die Helligkeit für die anstehende Aufgabe zufriedenstellend ist, dann geht der Algorithmus 100A zu Schritt 112 weiter, andernfalls geht er zu Schritt 110 weiter, bei dem Belichtungszeiten nach Bedarf verstellt werden.
  • Im Umfang der vorliegenden Erfindung hängt das Wesen der vorstehend erwähnten Bildhelligkeitsberechnung von der Aufgabe ab. Wenn beispielsweise dunkle Merkmale auf einem dunklen Bild verarbeitet werden, kann die Helligkeit des Bilds gemessen werden, indem ein Histogramm der Intensität der Pixel im gesamten Bild aufgenommen wird, ein starrer Prozentsatz der dunkelsten Pixel ignoriert wird, zum Beispiel das dunkelste Prozent, und dann die verbleibenden dunkelsten Pixel betrachtet werden.
  • Wenn der Intensitätswert dieser Pixel in einem akzeptablen Bereich liegt, dann kann das ganze Bild als akzeptabel betrachtet werden. Ähnliche Berechnungen können für eine Verarbeitung von weiß auf weiß durchführt werden, mit der Ausnahme, dass das Helligkeitsmaß beschafft würde, indem das hellste Prozent der Pixel im Bild ignoriert wird.
  • Wenn bei Schritt 106 ermittelt wird, dass die Bildhelligkeit nicht akzeptabel ist, dann geht der Algorithmus 100A zu Schritt 110 weiter, bei dem die Belichtungszeit verstellt wird, z.B. werden neue Belichtungszeiten berechnet. Die Belichtungszeiten können nach Bedarf in Abhängigkeit davon erhöht oder verringert werden, ob das Bild zu dunkel bzw. zu hell ist. Diese Berechnung kann den Betrag, um welchen die Bilder zu hell oder zu dunkel sind, die Verteilung von Pixelintensitäten und durch die Kamera vorgegebene Grenzen für die Belichtungszeiten berücksichtigen.
  • Wenn mehr als eine Kamera 34 verwendet wird, können die Belichtungszeiten für die Kameras auf der Grundlage der Helligkeit der Bilder, die durch diese Kamera aufgenommen wurden, einzeln verstellt werden, oder sie können in einer festen Beziehung zueinander gehalten werden. In letzterem Fall können die Belichtungszeiten auf einer einzigen Kamera 34 oder mehreren derartigen Kameras beruhen, wie bei Schritt 108. Ein Halten der Belichtungszeiten bei festen Beziehungen kompensiert unterschiedliche Kameraverstärkungseinstellungen, Blendenöffnungen oder andere Faktoren, welche die Bildhelligkeit beeinflussen. Die Beziehung zwischen Kamerabelichtungszeiten kann typischerweise als ein Verhältnis der Belichtungszeiten ausgedrückt werden, wobei das Verhältnis unter Verwendung einer Kalibrierungsprozedur beschafft wird, welche die relative Helligkeit der Bilder misst, die aufgenommen werden, wenn die Kameras 34 auf identische Szenen gerichtet sind. Wenn angenommen wird, dass die Kameras 34 identisch sind, dann kann dieses Verhältnis gleich eins angenommen werden, sodass alle Kameras identische Belichtungszeiten aufweisen.
  • Da die Beleuchtungsbedingungen häufig über den Zeitrahmen, in welchem mehrere Bilder von den Kameras 34 aufgenommen werden, größtenteils stabil sein können, kann bei Schritt 112 die letzte konvergierte Belichtungszeit an den nachfolgenden Bildaufnahmezyklus weitergeleitet werden. Die Weiterleitung der Belichtungszeit stellt einen optimalen Anfangswert für die Belichtungszeit bereit und erhöht die Wahrscheinlichkeit, dass nur ein zusätzlicher Bildaufnahmezyklus benötigt werden wird, um ein nachfolgendes verwendbares Bild zu beschaffen.
  • Mit Bezug auf 4 kann der Algorithmus 100 von 2 auch einen Abschnitt oder einen Algorithmus 100B zur Analyse von im Wesentlichen schwarz auf schwarz Bildern zum Zweck der Lokalisierung einiger Merkmale an einfarbigen Objekten umfassen, z.B. eine schwarze Vertiefung an einem schwarzen Werkstück. Diese Fähigkeit stützt sich auf die Verwendung der vorstehend erwähnten Bilddatenkonservierungs-Belichtungssteuerung, d.h. den Algorithmus 100A von 3, um sicherzustellen, dass Bilddaten nicht aufgrund übermäßig kurzer oder langer Belichtüngszeiten verloren gehen.
  • Der Algorithmus 100B beginnt mit Schritt 114, bei dem ein maximales interessierendes Schwellenwertgebiet in einem größeren Bild zur weiteren Auswertung gewählt wird, d.h. dem Bild, das bei Schritt 102 von Algorithmus 100A aufgenommen wurde. Bei Schritt 116 wird das gewählte Gebiet unter Verwendung eines Histogramms automatisch bewertet, um dadurch das Ausmaß des Beleuchtungsbereichs des interessierenden Gebiets zu bestimmen. Der Algorithmus 100B geht dann zu Schritt 118 weiter.
  • Bei Schritt 118 kann der ausgewertete Bereich proportional ausgedehnt werden und auf das Testgebiet oder das interessierende Gebiet angewandt werden, um den Kontrast zu verbessern. Ein Histogramm der Intensitätsniveaus im Testgebiet wird auf der Grundlage des Bereichs und der Verteilung der Intensitäten ausgewertet. Auf der Grundlage der oberen und unteren Grenzen der Verteilung, welche häufig eine Untermenge der verfügbaren Dynamikbereichs des Bilds ist, kann der Bereich der Verteilung erweitert werden, indem zu dem Anfangswerten Intensitätsversätze linear addiert werden, sodass sich die Verteilung abflacht und den gesamten Dynamikbereich von verfügbaren Intensitätswerten füllt. Diese Technik flacht ab und verbessert auf effektive Weise den Kontrast für die Bedingungen des Testgebiets, wo die Intensität größtenteils dunkel oder größtenteils hell ist.
  • Der Algorithmus 100B geht dann zu Schritt 120 weiter, bei dem Bildgradienten derart detektiert werden, dass Merkmale im Bild nun unterschieden werden können. Auch andere Bildverarbeitungsschritte können bei diesem Schritt durchgeführt werden, um gewählte Bilddaten loszuwerden, die Operationen in nachfolgenden Schritten stören können. Diese Operationen können umfassen, sind aber nicht beschränkt auf ein „Begrenzen“ des Bilds in einen gewissen Wertebereich und ein „Blob-Processing“ des interessierenden Gebiets auf der Grundlage der Formen der Schwellenwertgebiete, so wie der Begriff „Blob-Processing“ in der Technik verstanden wird.
  • Bei Schritt 122 kann dies umfassen, ist aber nicht beschränkt auf Operationen, die nun mit dem vereinfachten Bild arbeiten, welches das Produkt der vorherigen Verarbeitungen in den Schritten 118 und 120 ist. In dem vereinfachten Bild erscheinende interessierende Merkmale können auf der Grundlage von Konturmodellen oder anderen geeigneten Mitteln abgeglichen werden. Auf diese Weise werden die Robustheit und die Geschwindigkeit der Merkmalserkennung und/oder anderer Operationen durch die in den vorhergehenden Schritten ausgeführten Vereinfachungen wesentlich erleichtert.
  • Mit Bezug auf 5 ist der Roboter 10 so gezeigt, dass er ein Objekt 20 in einer Hand 18 hält, z.B. einen ein Drehmoment erfassenden Befestigungsschlüssel oder ein anderes Arbeitswerkzeug. Die meisten Sensoren des VPM 30V (siehe 2) sind, wie vorstehend erwähnt, im Kopf 12 des Roboters 10 eingeschlossen. Zusätzliche Kameras 34A und 34B können jeweils an einem Vorderarm, einer Handfläche oder einem Brustbereich des Roboters 10 und an einer Überkopfstruktur 45, z.B. einer Decke, einer Wand, einer Stütze oder einer anderen hinreichend stabilen Überkopffläche oder -stelle in einer Roboterarbeitszelle oder einer Roboterarbeitsumgrenzung montiert sein. Die Kamera 34B kann zum Beispiel zur Bestimmung eines Fördererstatus oder einer globalen Vorgangserkennung verwendet werden. Überkopfkameras stellen eine grobe Lokalisierung von interessierenden Objekten oder den Status des Prozesses bereit, etwa ohne Einschränkung diejenige beliebiger gewünschter Teile.
  • Im Umfang der Erfindung wird eine automatische Integration von verschiedenen Ansichten einer Aufgabe bereitgestellt, welche mit Bezug auf das Objekt 20 ausgeführt wird, um eine optimale Perspektive bereitzustellen. Eine der wichtigeren Ansichten, über die man verfügen kann, ist die Perspektive einer Handfläche der Hand 18, die zu dem Objekt 20 hin weist. Diese spezielle Ansicht ermöglicht eine präzisere Zentrierung bei der Annäherung der Hand 18 für den Griff, bevor ein Kontakt mit dem Objekt 20 hergestellt wird, und bevor irgendwelche taktilen Sinne des Roboters 10 verwendet werden können. In diese Techniken mit eingeschlossen ist die Koregistrierung der Bereiche und Gesichtsfelder der verschiedenen Sensoren.
  • Wie der Fachmann erkennt, ist die Verarbeitung großer Mengen von Matrixdaten nicht nur zeitraubend, sondern kann auch zu für die Aufgabe irrelevanten oder falschen Übereinstimmungen führen. Andererseits können räumliche Beachtungsmechanismen begrenzte Rechenressourcen zu Gebieten des Suchraums führen, die für die Aufgabe relevant sind und bei denen es auch weniger wahrscheinlich ist, dass sie falsche Übereinstimmungen liefern. Bei der Verwendung hierin kann der Begriff räumliche Beachtungsmechanismen Bereichshinweistechniken, Epipolar-/ Stereogeometrie-Hinweistechniken und/oder das Gebiet der Blickhinweistechniken bezeichnen.
  • Wieder mit Bezug auf 2 verwendet der Bereichshinweis relativ schnelle Sensoren mit niedriger Auflösung, um langsamere Sensoren mit höherer Auflösung zu Gebieten eines Suchraums zu lenken, die für die Aufgabe relevant sind oder die mögliche Übereinstimmungen enthalten. Bei einer Ausführungsform kann ein schneller Sensor mit niedriger Auflösung in der Form des IR-Entfernungsbildgeräts 36 verwendet werden, um Time-Of-Flight-Daten (TOF-Daten) bereitzustellen, welche den schnelleren Stereokameras mit hoher Auflösung, d.h. den Kameras 34, Hinweise geben, welche wiederum nach Bedarf auf die Platzierung von strukturiertem Licht von der Hilfsgebietsbeleuchtungseinrichtung 44 hinweisen können.
  • Ein Beispiel von Bereichshinweisen auf der Grundlage der Aufgabenrelevanz wäre es, Gebiete zu ignorieren, die sich außerhalb der Arbeitsumgrenzung des Roboters 10 befinden, und die anschließende Identifikation mit hoher Auflösung eines Merkmals zu segmentieren, wenn diese Stelle im Bereichsbild in das Gesichtsfeld der hoch auflösenden Kameras 34 verschoben wird. Ein Beispiel von Bereichshinweisen auf der Grundlage von möglichen Übereinstimmungen wäre das Ignorieren von Volumina, die durch andere Objekte, welche sich bei einer näheren Entfernung zu den Sensoren befinden, verborgen sind.
  • Zudem bieten das IR-Entfernungsbildgerät 36 und die Kameras 34 komplementäre Merkmale an, etwa die Fähigkeit des IR-Entfernungsbildgeräts, merkmalslose Oberflächen zu lokalisieren. Dies kann durch strukturiertes Licht von der Hilfsbeleuchtungseinrichtung 44 weiter verfeinert werden, was eine Aufgabe ist, welche die Stereokameras 34 allein nicht durchführen können, und die Fähigkeit der Stereokameras 34, große Mengen an IR-Beleuchtung zu bewältigen, z.B. Bedingungen, bei denen das Aufgabengebiet durch direktes Sonnenlicht beleuchtet wird, welches die strukturierte IR-Lichtquelle vom IR-Entfernungsbildgerät überwältigt, was zum Verlust der Ausgabe der Bildentfernung vom Sensor führt.
  • Epipolare Hinweise wenden Triangulationsbeschränkungen auf direkte Suchvorgänge vom Gesichtsfeld einer Kamera 34 auf nur eine Handvoll von Zeilen in deren Schwesterkamera an, d.h. die andere Kamera 34. Die Breite der Suchzeilen kann weiter begrenzt werden, wenn die näherungsweise Tiefe, welche vom IR-Entfernungsbildgerät 36 bereitgestellt sein kann, oder die Größe des interessierenden Objekts bekannt ist. Gesichtsfeldhinweise bezeichnen das Lokalisieren kleinerer Merkmale oder Objekte aufgrund ihrer relativen Position zu größeren Merkmalen oder Objekten.
  • Beispielsweise kann das Lokalisieren der Spitze eines Kabels oder des Positionsgeberlochs einer Komponente über das gesamte Gesichtsfeld hinweg rechentechnisch aufwendig und anfällig für falsche Übereinstimmungen sein. Eine Suche nach der gleichen Kabelspitze oder dem gleichen Positionsgeber nach der Verwendung eines Versatzes von einem Kabelknebel oder einem Komponentenrand kann jedoch zu schnelleren und möglicherweise zuverlässigeren Übereinstimmungen führen. Die Suche nach einem kleinen Merkmal oder Objekt im Gesichtsfeld einer Kamera kann dann die Stereotriangulation auf der Grundlage einer näherungsweisen Tiefe, welche von dem IR-Entfernungsbildgerät 36 bereitgestellt sein kann, oder der Größe des interessierenden Objekts leiten. In diesen Hinweistechniken ist implizit die Koregistration von Sensorbereichen und Gesichtsfeldern enthalten.
  • Mit Bezug auf 6 in Verbindung mit 5 kann eine Augen-Hand-Kalibrierung bereitgestellt werden, indem ein an einem Greiforgan montiertes Objekt 220 mit einem geometrischen Muster 60 verwendet wird, um den 3D-Aufenthaltsort und die Pose mit 6 Freiheitsgraden einer Hand 18 des Roboters 10 zu extrahieren. Dieses Kalibrierungsobjekt 220, vorzugsweise ein Objekt mit leicht unterscheidbaren Hochkontrastmarkierungen 62, wie in 6 gezeigt, kann über Befestigungslöcher 63 am Mittelpunkt eines Greiforgangriffs, d.h. einer Handfläche einer Hand 18, befestigt sein oder zuverlässig im Griff des Roboters 10 mit bekannter dimensionaler Wiederholbarkeit gehalten werden. Dies ermöglicht die Instrumentierung des Aufenthaltsorts eines Greiforgans, das im visuellen Gesichtsfeld des VPM 30V positioniert ist.
  • Der 3D-Aufenthaltsort der Position und Orientierung (Pose mit 6 Freiheitsgraden) des Objekts 220 mit Bezug auf den Kopf 12 kann von dem VPM 30V vorzugsweise unter Verwendung hoch auflösender stereoskopischer Bildgebungstechniken bestimmt werden. Um eine Kalibrierung durchzuführen, kann der Roboter 10 angewiesen werden, das Kalibrierungsobjekt 220 an mehrere Orte in seinem Gesichtsfeld zu bewegen und seinen Blick auf das Kalibrierungsobjekt zu fixieren. An jedem Ort können Gelenkwinkel aufgezeichnet werden, die von den internen Winkelsensoren des Roboters gemessen werden, wie es die Pose mit 6 Freiheitsgraden des Kalibrierungsobjekts 220 in einem Koordinatengerüst ist, das im Kopf 12 fixiert ist.
  • Es kann ein (nicht gezeigter) Kalibrierungsalgorithmus ausgeführt werden, um den Gesichtsraum des Roboters 10 auf den geometrischen Bewegungsraum auszurichten, vorzugsweise unter Verwendung einer Kleinste-Quadrate-Approximation, um die Vorhersagen eines kinematischen Modells der Auge-Hand-Beziehung mit den verschiedenen gemessenen Posen des Kalibrierungsobjekts 220 abzugleichen. Alternativ können andere Fehlermessewerte, wie etwa die Summe eines Absolutwerts von Fehlerkomponenten statt der Summe der Quadrate minimiert werden. Bei einer Ausführungsform können die kalibrierten Parameter Nullpunktversätze der gemessenen Gelenkwinkel in einer kinematischen Kette umfassen, die von der Roboterhand 18 den Arm 16 hinauf (siehe 1) und entlang des Nackens des Roboters 10 zu dem Gerüst 46 (siehe 2) führt. Nach dem Messen einer ausreichenden Anzahl von Posen mit ausreichender Genauigkeit ist es auch möglich, Feineinstellungen an den kinematischen Modellen der Glieder des Roboters vorzunehmen. Diese Technik nutzt die Messtechnikfähigkeiten des VPM 30V und vermeidet den Bedarf für weitere Hilfsmesstechnikeinrichtungen, um die Kalibrierung durchzuführen oder zu prüfen.
  • Die Auge-Hand-Kalibrierung kann auf beide Hände 18 erweitert werden und auch so erweitert werden, dass sie eine Koordination mit extern montierten Kameras, wie etwa der Kamera 34B, umfasst. Um die Kalibrierung auf die zweite Hand zu erweitern, wird das Kalibrierungsobjekt in die zweite Hand bewegt und ein weiterer Datensatz, der Gelenkwinkel und die entsprechende visuelle Messung der Objektpose umfasst, wird aufgenommen, wieder an mehreren Handorten. Die Abschnitte der kinematischen Kette, die den zwei Ketten von Hand zu Auge gemeinsam sind, nämlich die Nackengelenke und irgendwelche dazwischen liegenden Glieder, können kalibriert werden, indem eine Kleinste-Quadrate-Minimierung auf die Sammlung von Messwerten von beiden Armen angewandt wird.
  • Um den Rest der kinematischen Kette des Roboters zu kalibrieren, etwa das Taillengelenk 15 oder andere untere Extremitäten, kann das Kalibrierungsobjekt 220 an einem bekannten Ort an einem beliebigen Glied platziert werden, der bzw. das vom Kopf 12 topologisch weiter entfernt ist, sodass die kinematische Kette vom Kopf zum Kalibrierungsobjekt das zu messende Gelenk umfasst. Wenn sich das topologisch entfernte Glied in Reichweite des Roboters 10 befindet, kann die Platzierung des Kalibrierungsobjekts 220 an dem Glied vom Roboter automatisch bewerkstelligt werden, andernfalls kann die Intervention eines menschlichen Bedieners notwendig sein.
  • Um schließlich eine beliebige extern montierte Kamera, z.B. die Kamera 34B, zu kalibrieren, kann der Roboter 10 das Kalibrierungsobjekt 220 der bzw. den extern montierten Kameras zeigen, wobei sowohl die intern gemessenen Gelenkwinkel als auch der Ort des Kalibrierungsobjekts, wie er von der externen Kamera gemessen wird, aufgezeichnet werden. Ein Vergleich der intern berechneten Pose des Kalibrierungsobjekts 220 unter Verwendung des zuvor kalibrierten von Auge-Hand-Kinematikmodells mit der Pose, wie sie durch die externe Kamera, z.B. 34B, gemessen wird, offenbart die 3D-Position und Orientierung der externen Kamera mit Bezug zum Roboter 10. Messwerte von mehreren derartigen Posen können unter Verwendung der kleinsten Quadrate geklärt werden, um die Genauigkeit der Kalibrierung zu verbessern. Auf diese Weise können nachfolgende Messwerte von dieser Kamera von anderen Objekten oder interessierenden Merkmalen im internen Referenzgerüst des Roboters genau interpretiert werden, wodurch eine genaue Bewegung mit Bezug zu diesen ermöglicht wird, wie sie benötigt würde, um ein derartiges Objekt aufzunehmen oder auf andere Weise damit zu interagieren.
  • Mit Bezug auf 7 kann ein 3D-Zeigerwerkzeug 66 zum Teachen von Posen mit 6 Freiheitsgraden ermöglichen, dass dem Roboter 10 verschiedene Systemorte und/oder Posen im Gesichtsfeld des Roboters „eingeteacht“ oder „gezeigt“ werden. Dieses Zeigerwerkzeug 66 kann auf eine beliebige notwendige praktische Größe skaliert sein, die mit dem anstehenden Prozess kompatibel ist. Das Zeigerwerkzeug 66 kann einen Zeigerkopf 64 und einen Griff 68 umfassen, welche über einen Verbindungsabschnitt 65, z.B. einen Stab, eine Stange oder eine andere starre Erweiterung verbunden sind. Eine Reihe von Bildkoordinatenmarkierungen 162 zur visuellen Verfolgung ist an dem Kopf angeordnet. Eine Verwendung des Zeigerwerkzeugs 66 kann ein schnelles und leichtes Punktteachen von verschiedenen Punkten und/oder Posen im kartesischen Raum ohne die Notwendigkeit, die unmittelbare Arbeitsumgrenzung des Roboters 10 zu betreten, ermöglichen. Sobald ein Bediener das Zeigerwerkzeug 66 auf ein interessierendes Gebiet richtet, d.h. einen Punkt 140, wird wie vorstehend beschrieben ein Bild aufgenommen und verarbeitet, und der Mittelpunktort und die Pose des Zeigerkopfs 64 wird in einem räumlich kalibrierten Gesichtsfeld der Kameras 34 bestimmt.
  • Dieser Ort und diese Pose können mathematisch durch einen bekannten Versatz auf der Grundlage der physikalischen Konstruktion des Zeigerkopfs 64 auf eine Spitze des Zeigerwerkzeugs 66 umgesetzt werden. Dieser Ort und diese Pose, auf die das Zeigerwerkzeug 66 zeigt, werden an den Controller 24 zur weiteren Verwendung als ein „Teachpunkt“ zurückgegeben, den das Robotersystem von 1 bei nachfolgenden Operationen verwenden kann. Kontinuierliche Aktualisierungen des Zeigerorts bei hohen Bildfrequenzen führen zur Erfassung einer Strecke, die auch verwendet werden kann, um einer Geometrie zu folgen oder diese anderweitig zu beschreiben, welche für eine künftige Verwendung durch das Robotersystem gespeichert wird. Dies nutzt die Messtechnikfähigkeit des flexiblen Wahrnehmungssystems aus, um das Einrichten und Konfigurieren des Systems für neue Aufgaben wesentlich zu erleichtern.
  • Wieder mit Bezug auf 2 kann ein integriertes strukturiertes Lichtsystem über die Hilfsbeleuchtungseinrichtung 44 bereitgestellt werden. Doppelte sich schneidende Ebenen aus Laserlicht von den Laserprojektoren 42 können verwendet werden, um Positionsinformationen aus einem Objekt 20 zu extrahieren, das relativ merkmalslose Oberflächen und Konturen aufweist, bei dem herkömmliche Stereounterscheidungstechniken nicht verwendet werden können. Eine Entfernungsfunktion kann unterstützt werden, indem der Mittelpunkt der Schnittstelle der zwei Lichtebenen sowohl bei einem rechten als auch einem linken Bild gesucht wird und dann eine binokulare Kalibrierung und die Schnittsichtlinien auf den ausgeprägten Merkmalsort der Lichtebenenschnittstelle angewendet wird, um den 3D-Ort der Oberfläche zu bestimmen, wo das reflektierte Licht beobachtet wird.
  • Eine 3D-Abtastung und eine instrumentierte Oberflächenmodellrekonstruktion können bewerkstelligt werden, indem ein Laserlichtstreifen mit der 4-achsigen redundanten GCU 48 über eine Oberfläche geschwenkt wird, die Streifenposition mit kalibrierten Kameras aufgezeichnet wird und ein Bildmodell rekonstruiert wird. Die GCU 48 kann auch verwendet werden, um mehrere Ansichten von im Wesentlichen der gleichen Szene zu gewinnen. Eine Auswertung dieser verschiedenen Ansichten kann auch einen adaptiven Zielblickbefehl für die alternativen Perspektiven bereitstellen. Dies ermöglicht eine aktive Blicksteuerungssicht für die Implementierung von Objektabgrenzungstechniken, eine Entfernungskalibrierungsprüfung über einer bekannten Kamerapositionsbewegung, und eine Auflösung von Verdeckungen durch eine Blicksteuerung mit „nochmal versuchen“.
  • Die Kenntnis des Aufenthaltsorts eines Objekts 20, das ein Roboter in seinem Greiforgan ergriffen hat, z.B. in einer Hand 18, ist wichtig, wenn das Greiforgan nicht in der Lage ist, das Objekt in seinem Griff präzise festzuhalten. Ein Ziel eines flexiblen Greiforgans besteht darin, das Objekt 20 zumindest so zu kontrollieren, dass das Objekt nicht aus dem anfänglichen Greifpunkt verrutscht. Da der präzise Aufenthaltsort des Objekts 20, das im Griff gehalten wird, nicht bekannt ist, unterscheidet sich dies ein wenig von einem Haltegriff. Da Objekte in der Gestalt von Werkzeugen bei der Ausführung einiger Arbeitsaufgaben andauernd wiederverwendet werden, können Markierungen zu den sichtbaren Gebieten des Objekts 20 hinzugefügt werden, um die zuverlässige Bestimmung des Aufenthaltsorts oder der Pose im Gesichtsfeld des VPM 30V zu erleichtern. Diese Markierungen können für jedes Objekt 20 einzigartig sein und sie können auch in jeder Pose des Objekts einzigartig sein, um die Erzeugung eines Annäherungspfads und einer Greifstrategie für den aufgefundenen zufälligen Aufenthaltsort des Objekts im Arbeitsraum zu erleichtern.
  • Im Umfang der Erfindung wird eine hohe Bildfrequenz, das Nachführen dualer Kameras mit hoher Auflösung, d.h. das Nachführen der im Kopf 12 eingeschlossenen Kameras 34, ermöglicht, indem eine der Kameras mit einer niedrigeren Auflösung und einer höheren Bildfrequenz als die andere betrieben wird. Das Bild von der ersten Kamera kann verwendet werden, um ein gewünschtes Suchgebiet in einem Gesichtsfeld zu segmentieren und um eine „grobe Arretierung“ auf den Ort des Ziels für nachfolgende Bildaktualisierungen und inkrementelle Veränderungen des Orts im Gesichtsfeld bereitzustellen. Der Ort dieser Zielsegmentierung kann in die Bildebene der zweiten hoch auflösenden Kamera für eine Bildverarbeitung durch die Hostmaschine 32 übertragen werden, welche eine detaillierte Analyse und Lokalisierung kleinerer Merkmale im gleichen Gesichtsfeld umfasst.
  • Diese Praxis kann eine schnellere und besser gelenkte Anwendung von Bildanalyseaufgaben bei einer höheren Auflösung ermöglichen, als es normalerweise möglich wäre, wenn das gesamte Gesichtsfeld für die gleiche Aufgabe ausgewertet werden müsste. Die Nachführung mit hoher Frequenz kann bezüglich der Bilderfassung mit hoher Präzision asynchron ablaufen. Bilder können zum Zeitpunkt der Aufnahme mit einem Zeitstempel versehen werden und die Ergebnisse können zum Bewertungszeitpunkt synchronisiert werden, um eine reagierende und robuste Objektverfolgung mit präzisen Ergebnissen zu ermöglichen. Das Abtasten von kartesischen oder Gelenkpositionsrückkopplungen kann auch derart mit Zeitstempeln versehen werden, dass die Ausrichtung der Bilddaten mit dem geringsten Zeitabstand erreicht werden kann. Diese Technik kann auch angewendet werden, wenn eine oder mehrere Kameras 34 durch ein dediziertes Signal derart ausgelöst werden, dass es eine enge Koordination von Bilderfassung und dem aufgezeichneten Zeitstempel für dieses Bild und andere Daten gibt. Dies stellt die möglichst genaue Synchronisation von Bildern und der gegenwärtigen Position des Roboters und anderen zugehörigen Daten bereit.
  • Der Prozess der Bildsegmentierung durch einen Graustufenwert oder durch Farbe bezieht sich auf das Lokalisieren kleinerer Merkmale oder Objekte auf der Grundlage der Relativposition dieses Merkmals oder Objekts zu größeren Merkmalen oder Objekten. Zum Beispiel kann das Lokalisieren einer Spitze einer Schraube über das gesamte Gesichtsfeld des Roboters 10 hinweg rechentechnisch aufwendig und anfällig für falsche Übereinstimmungen sein. Das Suchen der gleichen Schraubenspitze jedoch, nachdem beispielsweise ein Versatz von einem gelben Leistungsbohrer/ Schraubenzieher für dunkle Bildregionen verwendet wird, führt zu schnelleren und potentiell zuverlässigeren Übereinstimmungen.
  • Darüber hinaus kann das Verwenden des IR-Entfernungsbildgeräts 36 eine multispektrale Komponente bereitstellen, die man bei herkömmlichen Maschinensichtsystemen typischerweise nicht antrifft, z.B. zwei Oberflächen können im sichtbaren Abschnitt des elektromagnetischen Spektrums ähnlich erscheinen, während sie im IR-Abschnitt des elektromagnetischen Spektrums klarer unterscheidbar sind; der Wärme- und Wassergehalt sind zwei Fälle, bei denen die IR-Bildgebung helfen kann. In diesen Hinweistechniken ist die Kalibrierung eines Weißabgleichpunkts eines Sensors implizit enthalten. Diese Kalibrierung würde sich auf Grundlage von Umgebungsbeleuchtungsbedingungen verändern, z.B. unterschiedlichen Mengen von Sonnenlicht über den Tag hinweg oder unterschiedliche Deckenleuchten, die in verschiedenen Teilen einer Fabrik verwendet werden, und kann unter Verwendung eines Kalibrierungsgegenstands mit bekanntem Reflexionsgrad erleichtert werden, z.B. eines Macbeth Color Checkers oder eines anderen geeigneten Kalibrierungsgegenstands.
  • Ein Teil der Flexibilität des in 2 gezeigten VPM 30V erfordert, dass die visuellen Wahrnehmungsfähigkeiten des VPM bei sich verändernden Umgebungsbeleuchtungsbedingungen zuverlässig bleiben. Es kann sein, dass strenge Bedingungen einer strukturierten oder technisierten Beleuchtung für ein Robotersystem nicht praktikabel sind, welches viele sichtbasierte Funktionen für eine Reihe diverser komplexer Montageaufgaben bereitstellt. Daher wird eine adaptive Schwellenwerttechnik bereitstellt, welche die teilweise Kenntnis der Bedingungen im Gesichtsfeld ausnutzt und diese Informationen dann verwendet, um die korrekten Schwellenwerte zu extrahieren, die bei der weiteren Segmentierung des Bilds für Schritte eines nachfolgenden Algorithmus verwendet werden sollen.
  • Das VPM 30V lokalisiert interessierende Gebiete im Bild für die Objekte, die segmentiert werden sollen. Diese kleinen Gebiete werden wegen ihrer repräsentativen Graustufen- oder Farbintensitätswerte auf der Grundlage der Auswertung der dominanten Spitze des Histogramms des Gebiets gewählt. Diese Informationen werden dann verwendet, um das Schwellenwertniveau zu berechnen, welches das Objektgebiet vom Hintergrund oder anderen Objekten im Gesichtsfeld unterscheidet.
  • Die GCU 48 spielt eine wichtige Rolle beim Richten der Sensoren und Beleuchtungseinrichtungen in die Richtung des gewünschten Gesichtsfelds. Die servogesteuerten „Kopf“- und „Nacken“-Komponenten des Roboters 10 können mit Programmsteuerung auf spezifische vordefinierte Orte oder auf Such- und/oder Nachverfolgungsmerkmale im Gesichtsfeld gerichtet werden, wie es für die anstehende Aufgabe notwendig ist. Eine Automatikblickfunktionalität kann auch den Bedarf für eine explizite Programmierung der Orientierung und Ausgestaltung der Kopf- und Nackenachsen verringern, da eine Interaktion zwischen Merkmalen, die im Gesichtsfeld des Roboters 10 gefunden und/oder verfolgt werden, verwendet werden kann, um den Kopf und den Nacken durch die erfolgte kinematische Kalibrierung des Roboters und das räumliche Bezugsgerüst des VPM 30V zu lenken.
  • Aufgrund einer weniger strukturierten Aufgabenumgebung des Roboters 10 kann nur eine näherungsweise Ortsbeziehung angenommen werden, wenn anfänglich nach Merkmalen oder Objekten im Gesichtsfeld gesucht wird. Bei der ersten Segmentierung der Suche wird ein leicht zu findendes Referenzmerkmal, das mit detaillierten Zielmerkmalen verbunden ist, irgendwo im Gesichtsfeld lokalisiert. Wenn es nicht lokalisiert wird, dann kann ein Aufgabenfehler erzeugt werden oder eine Blickveränderung befohlen werden und die Suche kann mit dem bzw. den neuen Bildern wiederholt werden. Auf der Grundlage der anstehenden Aufgabe können die detaillierten Merkmale gefunden werden oder der Blick kann derart befohlen werden, dass die Zielmerkmale in einem spezifischen Gebiet des Gesichtsfelds zu sehen sind.
  • Dies kann in dem Fall nützlich sein, wenn die Zielmerkmale gefunden wurden, es aber beispielsweise gewünscht ist, dass sie auf der linken Seite des Bilds zu sehen sind, sodass auch andere Merkmale auf der rechten Seite des Bilds zu sehen sind, sodass zur weiteren Lokalisierung oder Posenbestimmung eine Distanz gemessen werden kann oder ein Objekt von beiden Kameras 34 gleichzeitig in Stereo gesehen werden kann. Dies kann in der vorschreitenden Sequenz mit nur ein paar Bildern und Blicksteuerungsbefehlen oder mit einer Nachverfolgung mit hoher Bildfrequenz eines sich bewegenden Ziels und einem kontinuierlichen Blickverfolgungsservo erledigt werden. Der kontinuierliche Blickverfolgungsservo von Zielmerkmalen ist wichtig, sodass sich bewegende Ziele im Gesichtsfeld bleiben können und/oder eine strukturierte oder technische Beleuchtung die interessierenden Merkmale auch zuverlässig verfolgen kann.
  • Ein wirklich flexibles Greiforgan kann eine Vielzahl von Klauen oder Fingern aufweisen, z.B. die Finger 19, welche mehrere Freiheitsgrade aufweisen können, wie sie zum Ausführen eines Bereichs von Greifaufgaben benötigt werden. Diese Greifkomponenten können servogesteuert sein und durch ein Gestänge oder durch eine beliebige Kombination von Implementierungstechniken betätigt werden, wie vorstehend erläutert wurde. Winkelbeziehungen oder Versatzbeziehungen der Greiforganfreiheitsgrade und Positionsrückkopplungseinrichtungen sollten auf ihren tatsächlichen mechanischen absoluten Ort korrekt kalibriert sein.
  • Das VPM 30V kann verwendet werden, um diese Kalibrierungsfunktion zu unterstützen, indem die Pose und die Bewegung einzelner Greifkomponenten mit Bezug auf eine sich nicht bewegende Referenz an der Greiforganstruktur beobachtet werden. Ausrichtungsmarken oder Greifgliedkomponenten können im Bild aufgefunden werden und deren geometrische Beziehung kann visuell bestimmt werden, während das Greiforgan in einer günstigen Pose im Gesichtsfeld gehalten wird.
  • Bei der Navigierung und ebenso beim Heranfahren können Hindernisvermeidungstechniken verwendet werden, um eine Beschädigung des Roboters 10 und/oder eines Objekts 20 sowie einen unbeabsichtigten Kontakt mit anderen Objekten oder Bedienern zu vermeiden. Die Hindernisvermeidung ist ein dynamischer Prozess, da sowohl eine Eigenbewegung als auch eine externe Bewegung möglich sind. Während sich frühere Hindernisvermeidungstechniken auf die unmittelbare Umgebung des Roboters fokussieren, betrachtet das VPM 30V ein Netzwerk von interagierenden Agenten mit Sensoren von verschiedenen, sich möglicherweise nicht überschneidenden Domänen. Der Roboter 10, eine statische Montagezellenkamera, ein menschlicher Bediener und ein Teilelieferungssystem oder Fahrzeug sind Beispiele dieser Agenten.
  • Hindernisvermeidungswarnungen von einer entfernten Verarbeitung können über die Hostmaschine 32 zum Roboter 10 gelangen und veranlassen, dass er die maximale Trajektoriengeschwindigkeit verringert, weniger Moment, wenn eine Kollision auftritt, oder die Nachgiebigkeit von Gelenken ändert, Bewegungspfade begrenzt usw. Zudem kann die Hostmaschine 32 gegenwärtige und beabsichtigte Bewegungspfade des Roboters 10 weiterleiten, um einen Verkehr aus Sicherheits- und/oder Effizienzgründen zu koordinieren, z.B. durch Aktivierung eines hörbaren und/oder visuellen Signals zur menschlichen Sicherheit oder ein Einreihen von Teilebausätzen.
  • Allen auf maschinellem Sehen basierenden Aufgaben des VPM 30V ist eine radiometrische Kalibrierung unterlegt. Überlegungen umfassen: Entfernen der Auswirkung von toten Pixeln, Entfernung der Auswirkung von dunklen Strömen, Normieren von Pixelantwortkurven, Kompensierung der Vignettierung, Modellierung thermischer Effekte usw. Frühere Kalibrierungsverfahren betrachten typischerweise einen Sensor durch sich selbst, z.B. eine einzelne Kamera 34, aber die vorliegende Erfindung kann auch eine Verschmelzung von Informationen von komplementären Sensoren betrachten, z.B. mehrere Kameras 34, 34A, 34B, das IR-Entfernungsbildgerät 36 usw.
  • Wenn beispielsweise eine Kamera 34 an Temperatureffekten leidet, können Pixelwerte auf der Grundlage eines Temperaturmodells zuerst normiert werden und bei der Grenze von extremen Temperatureffekten von ihrer Schwester- oder Montagekamera genommen und verarbeitet werden, um eine neue algorithmische Fehlertoleranz zu liefern. Eine radiometrische Kalibrierung würde auch lineare Antwortkurven für den vorstehend erwähnten dynamischen Belichtungsalgorithmus liefern, welche die Suchzeit bei der Jagd nach einer gewünschten Belichtung zu einem großen Teil verringern oder möglicherweise beseitigen könnten. Um beispielsweise ein doppelt zu helles Bild zu erhalten, kann ohne Kalibrierung das 1,7- oder 2,4-fache der Belichtungszeit erforderlich sein; nach der Kalibrierung kann eine neue Belichtungszeit direkt berechnet werden.
  • 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 im Umfang der beigefügten Ansprüche erkennen.

Claims (7)

  1. Robotersystem, das umfasst: einen humanoiden Roboter (10) mit einer Vielzahl von Robotergelenken, die jeweils unter Verwendung mindestens eines Stellglieds bewegbar sind; und einen verteilten Controller (24), der zur Steuerung der Bewegung jedes der Robotergelenke ausgestaltet ist, wobei der Controller (24) ein visuelles Wahrnehmungsmodul (VPM) (30V) umfasst, das ausgelegt ist, um ein Objekt (20) im Gesichtsfeld des Roboters (10) bei vorbestimmten Schwellenwertbedingungen der Umgebungsbeleuchtung visuell zu identifizieren und zu verfolgen; wobei das VPM (30V) umfasst: eine Vielzahl von optischen Einrichtungen (34, 34A, 34B) zum Aufnehmen eines Bilds des Objekts (20); eine Lasereinrichtung (42) und/oder eine Entfernungsbildgebungseinrichtung (36) zum Detektieren von Positionsinformationen des Objekts (20); und eine Hostmaschine (32), die ausgestaltet ist, um: das Bild und die Positionsinformationen zu verarbeiten, um das Objekt (20) dadurch visuell zu identifizieren und zu verfolgen; eine Belichtungszeit der optischen Einrichtungen (34, 34A, 34B) automatisch anzupassen, um einen Merkmalsdatenverlust des Bilds unter den Schwellenwertbedingungen der Beleuchtung zu verhindern; und um ein interessierendes Merkmal an dem Objekt (20) entweder Schwarz auf Schwarz oder Weiß auf Weiß zu unterscheiden, indem: ein kleines interessierendes Gebiet im Bild automatisch ausgewertet wird; ein Histogramm verwendet wird, um das Ausmaß des Beleuchtungsbereichs des interessierenden Gebiets zu bestimmen, und dann der Beleuchtungsbereich unter Verwendung der Hostmaschine (32) verarbeitet wird, um dadurch die interessierenden Merkmale zu identifizieren, wobei der Beleuchtungsbereich des interessierenden Gebiets proportional ausgedehnt und dann auf das interessierende Gebiet angewendet wird, um den Kontrast zu verbessern.
  2. Robotersystem nach Anspruch 1, wobei der humanoide Roboter (10) einen bewegbaren Kopf (12), der die optischen Einrichtungen (34), die Lasereinrichtung (42) und die Entfernungsbildgebungseinrichtung (36) einschließt, und ferner eine Blicksteuerungseinheit (48) umfasst, um den bewegbaren Kopf (12) durch mindestens vier Bewegungsachsen zu steuern.
  3. Robotersystem nach Anspruch 1, wobei das VPM (30V) zum Trainieren des humanoiden Roboters (10) mit Bezug auf eine neue automatisierte Aufgabe ausgelegt ist, indem dem Roboter (10) eine Arbeitssequenz und/oder eine Arbeitspose in einer zugeordneten Arbeitsumgrenzung gezeigt werden.
  4. Visuelles Wahrnehmungsmodul (VPM) (30V), das zur visuellen Identifizierung und Verfolgung eines Objekts (20) im Gesichtsfeld eines humanoiden Roboters (10) unter vorbestimmten Schwellenwertbedingungen der Umgebungsbeleuchtung ausgelegt ist, wobei das VPM (30V) umfasst: eine Vielzahl von optischen Einrichtungen (34, 34A, 34B), die zum Aufnehmen eines Bilds des Objekts (20) ausgestaltet sind; eine Positionsextraktionseinrichtung, die eine Lasereinrichtung (42) und/oder eine Entfernungsbildgebungseinrichtung (36) umfasst, wobei die Positionsextraktionseinrichtung ausgestaltet ist, um Positionsdaten des Objekts (20) zu extrahieren; und eine Hostmaschine (32), die ausgestaltet ist, um: die Bild- und Positionsdaten zu verarbeiten, um dadurch eine Belichtungszeit der optischen Einrichtungen (34, 34A, 34B) automatisch anzupassen und um dadurch einen Merkmalsdatenverlust eines aufgenommenen Bildes eines Objekts (20) unter den Schwellenwertbedingungen der Umgebungsbeleuchtung zu verhindern; und ein interessierendes Merkmal an dem Objekt (20) entweder Schwarz auf Schwarz oder Weiß auf Weiß zu unterscheiden, indem ein kleines interessierendes Gebiet im Bild automatisch ausgewertet wird, ein Histogramm verwendet wird, um das Ausmaß des Beleuchtungsbereich des interessierenden Gebiets zu bestimmen, und dann der Beleuchtungsbereich unter Verwendung der Hostmaschine (32) verarbeitet wird, um dadurch die interessierenden Merkmale zu identifizieren, wobei der Beleuchtungsbereich des interessierenden Gebiets proportional ausgedehnt und dann auf das interessierende Gebiet angewendet wird, um den Kontrast zu verbessern.
  5. Verfahren zum visuellen Identifizieren und Verfolgen eines Objekts (20) im Gesichtsfeld eines humanoiden Roboters (10) unter Schwellenwertbeleuchtungsbedingungen, wobei das Verfahren umfasst, dass: eine Vielzahl von optischen Einrichtungen (34, 34A, 34B) verwendet wird, um ein Bild des Objekts (20) aufzunehmen; eine Lasereinrichtung (42) und/oder eine Entfernungsbildgebungseinrichtung (36) verwendet werden, um Positionsinformationen des Objekts (20) zu extrahieren; und die Bild- und Positionsinformationen unter Verwendung einer Hostmaschine (32) eines visuellen Wahrnehmungsmoduls (VPM) (30V) verarbeitet werden, was umfasst, dass ein interessierendes Merkmal an dem Objekt (20) entweder Schwarz auf Schwarz oder Weiß auf Weiß unterschieden wird, indem: ein kleines interessierendes Gebiet im Bild automatisch ausgewertet wird; ein Histogramm verwendet wird, um das Ausmaß des Beleuchtungsbereichs des interessierenden Gebiets zu bestimmen; und dann der Beleuchtungsbereich unter Verwendung der Hostmaschine (32) verarbeitet wird, um dadurch die interessierenden Merkmale zu identifizieren, wobei der Beleuchtungsbereich des interessierenden Gebiets proportional ausgedehnt und dann auf das interessierende Gebiet angewendet wird, um den Kontrast zu verbessern; und wobei die Hostmaschine (32) ausgestaltet ist, um eine Belichtungszeit der optischen Einrichtungen (34, 34A, 34B) automatisch anzupassen, um dadurch einen Merkmalsdatenverlust des Bilds unter den Schwellenwertbeleuchtungsbedingungen zu verhindern.
  6. Verfahren nach Anspruch 5, das ferner umfasst, dass der humanoide Roboter (10) mit Bezug auf eine neue automatisierte Aufgabe trainiert wird, indem dem Roboter (10) eine Arbeitssequenz und/oder eine Arbeitspose in einer zugeordneten Arbeitsumgrenzung gezeigt werden.
  7. Verfahren nach Anspruch 5, wobei der humanoide Roboter (10) eine Vielzahl von nachgiebigen Gelenken umfasst, die jeweils einen messbaren Gelenkwinkel aufweisen, wobei das Verfahren ferner umfasst, dass: das Objekt (20) in einem Griff und in ein Gesichtsfeld des humanoiden Roboters (10) positioniert wird; der humanoide Roboter (10) und das Objekt (20) durch eine Reihe von Posen bewegt wird; die Hostmaschine (32) verwendet wird, um das Objekt (20) zu verfolgen, während es sich durch die Reihe von Posen bewegt, was umfasst, dass jeder der Gelenkwinkel gemessen wird; und die Gelenkwinkel unter Verwendung der Hostmaschine (32) aufgezeichnet werden; und die aufgezeichneten Gelenkwinkel verwendet werden, um dadurch eine Augen-Hand-Koordination des humanoiden Roboters (10) zu kalibrieren.
DE102010045752.3A 2009-09-22 2010-09-17 Visuelles Wahrnehmungssystem und -verfahren für einen humanoiden Roboter Active DE102010045752B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/564,074 2009-09-22
US12/564,074 US8244402B2 (en) 2009-09-22 2009-09-22 Visual perception system and method for a humanoid robot

Publications (2)

Publication Number Publication Date
DE102010045752A1 DE102010045752A1 (de) 2011-06-01
DE102010045752B4 true DE102010045752B4 (de) 2018-10-31

Family

ID=43757332

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010045752.3A Active DE102010045752B4 (de) 2009-09-22 2010-09-17 Visuelles Wahrnehmungssystem und -verfahren für einen humanoiden Roboter

Country Status (3)

Country Link
US (1) US8244402B2 (de)
JP (1) JP5606241B2 (de)
DE (1) DE102010045752B4 (de)

Families Citing this family (142)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8944070B2 (en) 1999-04-07 2015-02-03 Intuitive Surgical Operations, Inc. Non-force reflecting method for providing tool force information to a user of a telesurgical system
US20040162637A1 (en) 2002-07-25 2004-08-19 Yulun Wang Medical tele-robotic system with a master remote station with an arbitrator
US7813836B2 (en) 2003-12-09 2010-10-12 Intouch Technologies, Inc. Protocol for a remotely controlled videoconferencing robot
US8077963B2 (en) 2004-07-13 2011-12-13 Yulun Wang Mobile robot with a head-based movement mapping scheme
US9789608B2 (en) 2006-06-29 2017-10-17 Intuitive Surgical Operations, Inc. Synthetic representation of a surgical robot
US9198728B2 (en) 2005-09-30 2015-12-01 Intouch Technologies, Inc. Multi-camera mobile teleconferencing platform
SE529849C2 (sv) * 2006-04-28 2007-12-11 Sics Swedish Inst Of Comp Scie Accesstyrsystem och förfarande för att driva systemet
US20080064931A1 (en) 2006-06-13 2008-03-13 Intuitive Surgical, Inc. Minimally invasive surgical illumination
US8849679B2 (en) 2006-06-15 2014-09-30 Intouch Technologies, Inc. Remote controlled robot system that provides medical images
US9718190B2 (en) 2006-06-29 2017-08-01 Intuitive Surgical Operations, Inc. Tool position and identification indicator displayed in a boundary area of a computer display screen
US10008017B2 (en) 2006-06-29 2018-06-26 Intuitive Surgical Operations, Inc. Rendering tool information as graphic overlays on displayed images of tools
US20090192523A1 (en) 2006-06-29 2009-07-30 Intuitive Surgical, Inc. Synthetic representation of a surgical instrument
US10258425B2 (en) * 2008-06-27 2019-04-16 Intuitive Surgical Operations, Inc. Medical robotic system providing an auxiliary view of articulatable instruments extending out of a distal end of an entry guide
US9160783B2 (en) 2007-05-09 2015-10-13 Intouch Technologies, Inc. Robot system that operates through a network firewall
US9089256B2 (en) 2008-06-27 2015-07-28 Intuitive Surgical Operations, Inc. Medical robotic system providing an auxiliary view including range of motion limitations for articulatable instruments extending out of a distal end of an entry guide
US9084623B2 (en) 2009-08-15 2015-07-21 Intuitive Surgical Operations, Inc. Controller assisted reconfiguration of an articulated instrument during movement into and out of an entry guide
US8903546B2 (en) * 2009-08-15 2014-12-02 Intuitive Surgical Operations, Inc. Smooth control of an articulated instrument across areas with different work space conditions
US9138129B2 (en) 2007-06-13 2015-09-22 Intuitive Surgical Operations, Inc. Method and system for moving a plurality of articulated instruments in tandem back towards an entry guide
US8620473B2 (en) 2007-06-13 2013-12-31 Intuitive Surgical Operations, Inc. Medical robotic system with coupled control modes
US9469034B2 (en) 2007-06-13 2016-10-18 Intuitive Surgical Operations, Inc. Method and system for switching modes of a robotic system
US10875182B2 (en) 2008-03-20 2020-12-29 Teladoc Health, Inc. Remote presence system mounted to operating room hardware
US8179418B2 (en) 2008-04-14 2012-05-15 Intouch Technologies, Inc. Robotic based health care system
US8170241B2 (en) 2008-04-17 2012-05-01 Intouch Technologies, Inc. Mobile tele-presence system with a microphone system
US8864652B2 (en) 2008-06-27 2014-10-21 Intuitive Surgical Operations, Inc. Medical robotic system providing computer generated auxiliary views of a camera instrument for controlling the positioning and orienting of its tip
US9193065B2 (en) 2008-07-10 2015-11-24 Intouch Technologies, Inc. Docking system for a tele-presence robot
US9842192B2 (en) 2008-07-11 2017-12-12 Intouch Technologies, Inc. Tele-presence robot system with multi-cast features
US8340819B2 (en) 2008-09-18 2012-12-25 Intouch Technologies, Inc. Mobile videoconferencing robot system with network adaptive driving
US8996165B2 (en) 2008-10-21 2015-03-31 Intouch Technologies, Inc. Telepresence robot with a camera boom
US8463435B2 (en) 2008-11-25 2013-06-11 Intouch Technologies, Inc. Server connectivity control for tele-presence robot
US9138891B2 (en) 2008-11-25 2015-09-22 Intouch Technologies, Inc. Server connectivity control for tele-presence robot
US8849680B2 (en) 2009-01-29 2014-09-30 Intouch Technologies, Inc. Documentation through a remote presence robot
US8897920B2 (en) 2009-04-17 2014-11-25 Intouch Technologies, Inc. Tele-presence robot system with software modularity, projector and laser pointer
US9492927B2 (en) 2009-08-15 2016-11-15 Intuitive Surgical Operations, Inc. Application of force feedback on an input device to urge its operator to command an articulated instrument to a preferred pose
US8918211B2 (en) 2010-02-12 2014-12-23 Intuitive Surgical Operations, Inc. Medical robotic system providing sensory feedback indicating a difference between a commanded state and a preferred pose of an articulated instrument
US11399153B2 (en) 2009-08-26 2022-07-26 Teladoc Health, Inc. Portable telepresence apparatus
US8384755B2 (en) 2009-08-26 2013-02-26 Intouch Technologies, Inc. Portable remote presence robot
KR20110033679A (ko) * 2009-09-25 2011-03-31 삼성전자주식회사 네트워크 기반 로봇의 영상 전송 시스템 및 그 방법
US8941726B2 (en) * 2009-12-10 2015-01-27 Mitsubishi Electric Research Laboratories, Inc. Method and system for segmenting moving objects from images using foreground extraction
US11154981B2 (en) 2010-02-04 2021-10-26 Teladoc Health, Inc. Robot user interface for telepresence robot system
US8670017B2 (en) 2010-03-04 2014-03-11 Intouch Technologies, Inc. Remote presence system including a cart that supports a robot face and an overhead camera
US10343283B2 (en) 2010-05-24 2019-07-09 Intouch Technologies, Inc. Telepresence robot system that can be accessed by a cellular phone
US10808882B2 (en) 2010-05-26 2020-10-20 Intouch Technologies, Inc. Tele-robotic system with a robot face placed on a chair
JP5671281B2 (ja) * 2010-08-20 2015-02-18 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測装置の制御方法及びプログラム
JP5573537B2 (ja) * 2010-09-17 2014-08-20 株式会社デンソーウェーブ ロボットのティーチングシステム
KR101743926B1 (ko) * 2010-09-20 2017-06-08 삼성전자주식회사 로봇 및 그 제어방법
US9172913B1 (en) * 2010-09-24 2015-10-27 Jetprotect Corporation Automatic counter-surveillance detection camera and software
KR101778030B1 (ko) * 2010-09-27 2017-09-26 삼성전자주식회사 로봇 및 그 제어방법
US9264664B2 (en) 2010-12-03 2016-02-16 Intouch Technologies, Inc. Systems and methods for dynamic bandwidth allocation
KR101761314B1 (ko) * 2010-12-03 2017-07-26 삼성전자주식회사 생체 신호 측정 로봇 및 그 제어방법
US8777818B1 (en) * 2010-12-22 2014-07-15 Larry E. Tate, Jr. Training device
US8718837B2 (en) 2011-01-28 2014-05-06 Intouch Technologies Interfacing with a mobile telepresence robot
US9323250B2 (en) 2011-01-28 2016-04-26 Intouch Technologies, Inc. Time-dependent navigation of telepresence robots
US9665767B2 (en) * 2011-02-28 2017-05-30 Aic Innovations Group, Inc. Method and apparatus for pattern tracking
US8965563B2 (en) * 2011-04-04 2015-02-24 Palo Alto Research Incorporated High throughput parcel handling
US10769739B2 (en) 2011-04-25 2020-09-08 Intouch Technologies, Inc. Systems and methods for management of information among medical providers and facilities
US9098611B2 (en) 2012-11-26 2015-08-04 Intouch Technologies, Inc. Enhanced video interaction for a user interface of a telepresence network
US20140139616A1 (en) 2012-01-27 2014-05-22 Intouch Technologies, Inc. Enhanced Diagnostics for a Telepresence Robot
DE102011084976A1 (de) 2011-10-21 2013-04-25 Robert Bosch Gmbh Vorrichtung und Verfahren zum optimalen Belichten von Pixeln bei einer indirekten Time-of-flight-Messung
US8836751B2 (en) 2011-11-08 2014-09-16 Intouch Technologies, Inc. Tele-presence system with a user interface that displays different communication links
US9072929B1 (en) * 2011-12-01 2015-07-07 Nebraska Global Investment Company, LLC Image capture system
US9498401B2 (en) 2011-12-20 2016-11-22 Massachusetts Institute Of Technology Robotic system for simulating a wearable device and method of use
CN102514011A (zh) * 2011-12-28 2012-06-27 王鹏勃 一种精确生物感知控制的多自由度机器人及其实现方法
US9014857B2 (en) * 2012-01-13 2015-04-21 Toyota Motor Engineering & Manufacturing North America, Inc. Methods and computer-program products for generating grasp patterns for use by a robot
US9014850B2 (en) * 2012-01-13 2015-04-21 Toyota Motor Engineering & Manufacturing North America, Inc. Methods and computer-program products for evaluating grasp patterns, and robots incorporating the same
US9682005B2 (en) * 2012-02-24 2017-06-20 Massachusetts Institute Of Technology Elastic element exoskeleton and method of using same
US8902278B2 (en) 2012-04-11 2014-12-02 Intouch Technologies, Inc. Systems and methods for visualizing and managing telepresence devices in healthcare networks
US9251313B2 (en) 2012-04-11 2016-02-02 Intouch Technologies, Inc. Systems and methods for visualizing and managing telepresence devices in healthcare networks
EP2852475A4 (de) 2012-05-22 2016-01-20 Intouch Technologies Inc Sozialverhaltensregeln für einen medizinischen telepräsenzroboter
US9361021B2 (en) 2012-05-22 2016-06-07 Irobot Corporation Graphical user interfaces including touchpad driving interfaces for telemedicine devices
US9321173B2 (en) 2012-06-22 2016-04-26 Microsoft Technology Licensing, Llc Tracking and following people with a mobile robotic device
US8798357B2 (en) 2012-07-09 2014-08-05 Microsoft Corporation Image-based localization
US9753453B2 (en) 2012-07-09 2017-09-05 Deep Learning Robotics Ltd. Natural machine interface system
JP6051021B2 (ja) * 2012-08-09 2016-12-21 日本電産サンキョー株式会社 産業用ロボットおよび産業用ロボットの制御方法
US9186793B1 (en) 2012-08-31 2015-11-17 Brain Corporation Apparatus and methods for controlling attention of a robot
WO2014067000A1 (en) 2012-10-29 2014-05-08 7D Surgical Inc. Integrated illumination and optical surface topology detection system and methods of use thereof
US10507066B2 (en) 2013-02-15 2019-12-17 Intuitive Surgical Operations, Inc. Providing information of tools by filtering image areas adjacent to or on displayed images of the tools
JP5776716B2 (ja) * 2013-03-15 2015-09-09 株式会社安川電機 ロボットシステム及び被作業物の製造方法
DE102014107143B4 (de) * 2013-05-22 2021-03-04 Cognex Corp. System und Verfahren zur Messung der Verschiebung einer Objektoberfläche
US9605950B2 (en) 2013-05-22 2017-03-28 Cognex Corporation System and method for efficient surface measurement using a laser displacement sensor
JP2016536150A (ja) * 2013-10-11 2016-11-24 リシンク ロボティクス インコーポレイテッド 向上した正確度を伴うロボット配置および操作
CN105339840B (zh) 2013-12-06 2019-06-14 华为终端有限公司 双镜头设备的拍照方法及双镜头设备
EP3067746B1 (de) 2013-12-06 2019-08-21 Huawei Device Co., Ltd. Fotografieverfahren für doppelkameravorrichtung und doppelkameravorrichtung
US9505133B2 (en) * 2013-12-13 2016-11-29 Canon Kabushiki Kaisha Robot apparatus, robot controlling method, program and recording medium
CN106029039B (zh) 2013-12-16 2018-03-27 麻省理工学院 下肢外骨骼或矫形器的最佳设计
CN104797033A (zh) * 2014-01-17 2015-07-22 苏州宝时得电动工具有限公司 自动工作设备
US10759634B2 (en) * 2014-08-08 2020-09-01 GM Global Technology Operations LLC Electromechanical system for interaction with an operator
JP6572535B2 (ja) * 2014-12-10 2019-09-11 株式会社リコー 画像認識システム、サーバ装置及び画像認識方法
US11972586B2 (en) 2015-02-13 2024-04-30 Carnegie Mellon University Agile depth sensing using triangulation light curtains
US11747135B2 (en) * 2015-02-13 2023-09-05 Carnegie Mellon University Energy optimized imaging system with synchronized dynamic control of directable beam light source and reconfigurably masked photo-sensor
US9555846B1 (en) 2015-03-20 2017-01-31 Google Inc. Pelvis structure for humanoid robot
WO2016196512A1 (en) * 2015-05-29 2016-12-08 Abb Technology Ag Method and system for robotic adaptive production
US9390346B1 (en) * 2015-06-10 2016-07-12 Robert Edwin Sheets, Jr. Object location using a mobile device
US11935256B1 (en) * 2015-08-23 2024-03-19 AI Incorporated Remote distance estimation system and method
US9616568B1 (en) 2015-08-25 2017-04-11 X Development Llc Generating a grasp affordance for an object based on a thermal image of the object that is captured following human manipulation of the object
JP6652292B2 (ja) * 2015-09-24 2020-02-19 キヤノン株式会社 制御方法、制御プログラム、ロボットシステム、回転駆動装置の制御方法、およびロボット装置
US10589428B1 (en) 2015-10-01 2020-03-17 Verily Life Sciences Llc Automatic distribution of control functions between multiple knob controllers based on proximity and relative positioning of the knobs
EP3387885B1 (de) 2015-12-11 2024-03-27 Lutron Technology Company LLC Laststeuerungssystem mit sichtbarem lichtsensor
US11006856B2 (en) * 2016-05-17 2021-05-18 Harshavardhana Narayana Kikkeri Method and program product for multi-joint tracking combining embedded sensors and an external sensor
US10131053B1 (en) * 2016-09-14 2018-11-20 X Development Llc Real time robot collision avoidance
US11166770B2 (en) * 2016-09-19 2021-11-09 Intuitive Surgical Operations, Inc. Base positioning system for a controllable arm and related methods
US10821614B2 (en) 2016-11-11 2020-11-03 Sarcos Corp. Clutched joint modules having a quasi-passive elastic actuator for a robotic assembly
US10796608B2 (en) * 2016-11-18 2020-10-06 Gaumard Scientific Comapny, Inc. Interactive education system
CN114501721A (zh) 2016-12-09 2022-05-13 路创技术有限责任公司 具有可见光传感器的负载控制系统
CN106863302B (zh) * 2017-02-28 2023-07-25 广东工业大学 一种机器人充电装置及其实现方法
JP6850639B2 (ja) * 2017-03-09 2021-03-31 本田技研工業株式会社 ロボット
US10664993B1 (en) * 2017-03-13 2020-05-26 Occipital, Inc. System for determining a pose of an object
US10319109B2 (en) * 2017-03-31 2019-06-11 Honda Motor Co., Ltd. Interaction with physical objects as proxy objects representing virtual objects
US11862302B2 (en) 2017-04-24 2024-01-02 Teladoc Health, Inc. Automated transcription and documentation of tele-health encounters
DE102017209838A1 (de) * 2017-06-12 2018-12-13 Krones Ag Behälterbehandlungsanlage zum Behandeln von Behältern
US10483007B2 (en) 2017-07-25 2019-11-19 Intouch Technologies, Inc. Modular telehealth cart with thermal imaging and touch screen user interface
US10978187B2 (en) 2017-08-10 2021-04-13 Nuance Communications, Inc. Automated clinical documentation system and method
US11316865B2 (en) 2017-08-10 2022-04-26 Nuance Communications, Inc. Ambient cooperative intelligence system and method
US11636944B2 (en) 2017-08-25 2023-04-25 Teladoc Health, Inc. Connectivity infrastructure for a telehealth platform
WO2019079598A1 (en) 2017-10-18 2019-04-25 Brown University PROBABILISTIC PROBABILISTIC OBJECTS-ROBUST AND REPRODUCIBLE PLACEMENT
CN109754425B (zh) * 2017-11-01 2023-07-28 浙江舜宇智能光学技术有限公司 Tof摄像模组的标定设备及其标定方法
US10792809B2 (en) * 2017-12-12 2020-10-06 X Development Llc Robot grip detection using non-contact sensors
DE102018101162B4 (de) * 2018-01-19 2023-09-21 Hochschule Reutlingen Messsystem und Verfahren zur extrinsischen Kalibrierung
US11222716B2 (en) 2018-03-05 2022-01-11 Nuance Communications System and method for review of automated clinical documentation from recorded audio
WO2019173333A1 (en) 2018-03-05 2019-09-12 Nuance Communications, Inc. Automated clinical documentation system and method
US11250383B2 (en) 2018-03-05 2022-02-15 Nuance Communications, Inc. Automated clinical documentation system and method
US11162241B2 (en) * 2018-03-27 2021-11-02 Deere & Company Controlling mobile machines with a robotic attachment
JP6888580B2 (ja) * 2018-04-05 2021-06-16 オムロン株式会社 情報処理装置、情報処理方法、及びプログラム
US10617299B2 (en) 2018-04-27 2020-04-14 Intouch Technologies, Inc. Telehealth cart that supports a removable tablet with seamless audio/video switching
GB2573164B (en) * 2018-04-27 2023-01-04 Sony Interactive Entertainment Inc Apparatus control system and method
US10926416B2 (en) * 2018-11-21 2021-02-23 Ford Global Technologies, Llc Robotic manipulation using an independently actuated vision system, an adversarial control scheme, and a multi-tasking deep learning architecture
CN110033487A (zh) * 2019-02-25 2019-07-19 上海交通大学 基于深度联想感知算法的受遮挡蔬果采收方法
US11227679B2 (en) 2019-06-14 2022-01-18 Nuance Communications, Inc. Ambient clinical intelligence system and method
US11216480B2 (en) 2019-06-14 2022-01-04 Nuance Communications, Inc. System and method for querying data points from graph data structures
US11043207B2 (en) 2019-06-14 2021-06-22 Nuance Communications, Inc. System and method for array data simulation and customized acoustic modeling for ambient ASR
US11531807B2 (en) 2019-06-28 2022-12-20 Nuance Communications, Inc. System and method for customized text macros
CN110328648A (zh) * 2019-08-06 2019-10-15 米召礼 一种人机同步运动的工作机
US11670408B2 (en) 2019-09-30 2023-06-06 Nuance Communications, Inc. System and method for review of automated clinical documentation
US11440198B2 (en) * 2020-04-28 2022-09-13 Ubtech Robotics Corp Ltd Control system and method for movement of neck mechanism for robot
US11222103B1 (en) 2020-10-29 2022-01-11 Nuance Communications, Inc. Ambient cooperative intelligence system and method
US11833676B2 (en) 2020-12-07 2023-12-05 Sarcos Corp. Combining sensor output data to prevent unsafe operation of an exoskeleton
CN113359461B (zh) * 2021-06-25 2022-12-27 北京理工大学 一种适用于仿生眼系统的运动学标定方法
CN113925742B (zh) * 2021-10-20 2022-06-21 南通大学 一种目标驱动式的上肢外骨骼康复机器人的控制方法及其控制系统
CN113954072B (zh) * 2021-11-05 2024-05-28 中国矿业大学 一种视觉引导的木门工件智能识别定位系统及方法
US11826907B1 (en) 2022-08-17 2023-11-28 Sarcos Corp. Robotic joint system with length adapter
US11717956B1 (en) 2022-08-29 2023-08-08 Sarcos Corp. Robotic joint system with integrated safety
US11897132B1 (en) 2022-11-17 2024-02-13 Sarcos Corp. Systems and methods for redundant network communication in a robot
US11924023B1 (en) 2022-11-17 2024-03-05 Sarcos Corp. Systems and methods for redundant network communication in a robot

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0963816A2 (de) 1998-06-12 1999-12-15 AMATEC GmbH Verfahren zum Erfassen und Kompensieren von kinematischen Veränderungen eines Roboters
EP1653397A2 (de) 2004-09-14 2006-05-03 Sony Corporation Robotereinrichtung und Verhaltensteuerungsverfahren
US20090059033A1 (en) 2007-08-30 2009-03-05 Honda Motor Co., Ltd. Camera exposure controller

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0732994B2 (ja) * 1987-05-07 1995-04-12 ファナック株式会社 ロボットの環境教示方式
JPH05126521A (ja) * 1991-11-08 1993-05-21 Toshiba Corp 遠隔操作マニピユレータ用位置測定装置
JP3021202B2 (ja) * 1992-08-25 2000-03-15 三菱重工業株式会社 ロボットの位置姿勢の誘導方法
US5405337A (en) * 1993-02-24 1995-04-11 The Board Of Trustees Of The Leland Stanford Junior University Spatially distributed SMA actuator film providing unrestricted movement in three dimensional space
JP2000153476A (ja) * 1998-09-14 2000-06-06 Honda Motor Co Ltd 脚式移動ロボット
JP4472165B2 (ja) * 1999-12-24 2010-06-02 本田技研工業株式会社 移動ロボットの制御装置
US6587835B1 (en) * 2000-02-09 2003-07-01 G. Victor Treyz Shopping assistance with handheld computing device
JP4476468B2 (ja) * 2000-11-13 2010-06-09 本田技研工業株式会社 脚式移動ロボット
US7206753B2 (en) * 2001-05-04 2007-04-17 Axxon Robotics, Llc Methods for facilitating a retail environment
AU2002357040A1 (en) * 2001-11-28 2003-06-10 Evolution Robotics, Inc. Sensor and actuator abstraction and aggregation in a hardware abstraction layer for a robot
JP2003200377A (ja) * 2001-12-26 2003-07-15 Sony Corp ロボット,ロボットによる測距方法
JP2003274374A (ja) * 2002-03-18 2003-09-26 Sony Corp 画像伝送装置及び方法、送信装置及び方法、受信装置及び方法、並びにロボット装置
US7127326B2 (en) * 2002-11-15 2006-10-24 Iguana Robotics, Inc. Certain principles of biomorphic robots including foot placement selection using non-geometric visual properties
JP2004299025A (ja) * 2003-04-01 2004-10-28 Honda Motor Co Ltd 移動ロボット制御装置、移動ロボット制御方法及び移動ロボット制御プログラム
US7372977B2 (en) * 2003-05-29 2008-05-13 Honda Motor Co., Ltd. Visual tracking using depth data
US7336299B2 (en) * 2003-07-03 2008-02-26 Physical Optics Corporation Panoramic video system with real-time distortion-free imaging
JP2005028468A (ja) * 2003-07-08 2005-02-03 National Institute Of Advanced Industrial & Technology ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置
US7428997B2 (en) * 2003-07-29 2008-09-30 Microvision, Inc. Method and apparatus for illuminating a field-of-view and capturing an image
WO2006006624A1 (ja) * 2004-07-13 2006-01-19 Matsushita Electric Industrial Co., Ltd. 物品保持システム、ロボット及びロボット制御方法
JP4198676B2 (ja) * 2004-12-28 2008-12-17 株式会社東芝 ロボット装置、ロボット装置の移動追従方法、および、プログラム
JP2006289508A (ja) * 2005-04-05 2006-10-26 Sony Corp ロボット装置及びその表情制御方法
JP2007160482A (ja) * 2005-12-16 2007-06-28 Ixs Research:Kk 首部関節機構及びそれを具備するロボット
US7539557B2 (en) * 2005-12-30 2009-05-26 Irobot Corporation Autonomous mobile robot
US7438451B2 (en) * 2006-02-07 2008-10-21 Nissan Technical Center North America, Inc. Ambient light based illumination control
US8014047B2 (en) * 2006-02-17 2011-09-06 Marvell International Technology Ltd. Sheet media stack imaging system
JP4325627B2 (ja) * 2006-02-21 2009-09-02 ソニー株式会社 画像表示方法および画像表示装置並びに撮像装置
JP2007319938A (ja) * 2006-05-30 2007-12-13 Toyota Motor Corp ロボット装置及び物体の三次元形状の取得方法
JP4658891B2 (ja) * 2006-10-02 2011-03-23 本田技研工業株式会社 ロボットの制御装置
JP2008112349A (ja) * 2006-10-31 2008-05-15 Alpine Electronics Inc 移動物体検知装置
JP2008148180A (ja) * 2006-12-13 2008-06-26 Sony Corp 撮像装置、画像処理装置、および方法、並びにコンピュータ・プログラム
JP2009056529A (ja) * 2007-08-30 2009-03-19 Honda Motor Co Ltd 脚式移動ロボット
JP4847420B2 (ja) * 2007-08-30 2011-12-28 本田技研工業株式会社 脚式移動ロボット
JP2009113190A (ja) * 2007-11-09 2009-05-28 Toyota Motor Corp 自律動作型ロボットおよび自律動作型ロボットの動作制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0963816A2 (de) 1998-06-12 1999-12-15 AMATEC GmbH Verfahren zum Erfassen und Kompensieren von kinematischen Veränderungen eines Roboters
EP1653397A2 (de) 2004-09-14 2006-05-03 Sony Corporation Robotereinrichtung und Verhaltensteuerungsverfahren
US20090059033A1 (en) 2007-08-30 2009-03-05 Honda Motor Co., Ltd. Camera exposure controller

Also Published As

Publication number Publication date
US8244402B2 (en) 2012-08-14
US20110071675A1 (en) 2011-03-24
DE102010045752A1 (de) 2011-06-01
JP5606241B2 (ja) 2014-10-15
JP2011067941A (ja) 2011-04-07

Similar Documents

Publication Publication Date Title
DE102010045752B4 (de) Visuelles Wahrnehmungssystem und -verfahren für einen humanoiden Roboter
DE102015101710B4 (de) Verfahren zum Kalibrieren eines beweglichen Greiforgans unter Verwendung einer entfernten Digitalkamera
DE102019130046B4 (de) Robotersytem mit verbessertem Abtastmechanismus
Kofman et al. Teleoperation of a robot manipulator using a vision-based human-robot interface
DE112011101730B4 (de) System und Verfahren zur robusten Kalibrierung zwischen einem Bildverarbeitungssystem und einem Roboter
Katz et al. Manipulating articulated objects with interactive perception
DE102015002760B4 (de) Robotersimulationssystem, das den Prozess des Entnehmens von Werkstücken simuliert
DE102013203381B4 (de) Verfahren und system zum trainieren eines roboters unter verwendung einer von menschen unterstützten aufgabendemonstration
DE102009034529B4 (de) Automatisches Führungs- und Erkennungssystem sowie Verfahren für dieses
DE112019004517T5 (de) Roboterkalibrierung für ar (augmented reality) und digitaler zwilling
DE602004008131T2 (de) Automatisches Arbeitsgerät und automatisches Arbeitskontrollprogramm
DE102017128543B4 (de) Störbereich-einstellvorrichtung für einen mobilen roboter
WO2011065035A1 (ja) ロボットの教示データを作成する方法およびロボット教示システム
CN108161931A (zh) 基于视觉的工件自动识别及智能抓取系统
Hebert et al. Combined shape, appearance and silhouette for simultaneous manipulator and object tracking
JP2021167060A (ja) 人間の実演によるロボット教示
EP3426444A1 (de) Industrieroboter mit mindestens zwei bilderfassungseinrichtungen
DE102021109332B4 (de) Vorrichtung und Verfahren zum Steuern eines Roboters zum Einsetzen eines Objekts in eine Einsetzstelle
DE102021103726B4 (de) Messparameter-Optimierungsverfahren und -vorrichtung sowie Computersteuerprogramm
Gratal et al. Visual servoing on unknown objects
CN110170996A (zh) 一种基于立体视觉的机器人快速示教系统
CN116766194A (zh) 基于双目视觉的盘类工件定位与抓取系统和方法
Yang et al. Visual servoing control of baxter robot arms with obstacle avoidance using kinematic redundancy
Gratal et al. Scene representation and object grasping using active vision
EP1915239B1 (de) Verfahren zum erzeugen eines umgebungsbildes

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final