Sprachinteraktion als Bestandteil einer intuitiven Programmierumgebung für Industrieroboter 42. Sitzung des VDI/VDE-GMA-FA 4.13 Oberpfaffenhofen Fraunhofer Institut Produktionstechnik und Automatisierung Abteilung Robotersysteme Dipl.-Inform. Telefon 07 11 / 970-10 95 Fax 07 11 / 970-10 08 E-Mail hollmann@ipa.fraunhofer.de 20. Januar 2009
Überblick Motivation Intuitive Programmierumgebung InTeach Realisierung der Sprachschnittstelle Industrietauglichkeit der Sprachsteuerung Von Steuerung zu Interaktion Zusammenfassung und Ausblick Seite 2
Motivation Bedarf am Einsatz von Industrierobotern auch in der Kleinserien-Fertigung Ziele Hindernis bisher: zeitaufwendige Programmierung, die Expertenkenntnisse erfodert Verkürzung der Programmierzeit Bessere Zugänglichkeit der Roboterprogrammierung für Prozessexperten durch intuitivere Bediener-Schnittstellen Test und Evaluierung im Projekt SMErobot in Zusammenarbeit mit KMUs Stahlbau Schreinerei Systemtest bei Maschinenbau Treffler Seite 3
Intuitive Programmierumgebung InTeach Methodischer Ansatz: Programming by Demonstration Speziell für bahnbezogene Programmieraufgaben Dichtmittelauftrag Schweißen Multimodale Interaktions- Schnittstellen Handführung Graphische Benutzer-Oberfläche Sprachsteuerung Versuchs-Platform: Schweißroboterzelle Seite 4
Systemkomponenten Robot Interface Auslesen der Ist-Position sowie Senden von Korrektur-Werten Force Torque Sensor Auslesen der gemessenen Kräfte und Momente (F x, F y, F z, M x, My, M z ) Echtzeit-Schnittstelle Robot Sensor Interface (RSI) KUKA.EthernetRSIXML (ERX) Movement Controller Steuerung des Roboters/DKP sowie Aufnahme der geführten Roboter- Trajektorie Kraft-Momenten Sensor Communication Server TCP/IP-Schnittstelle zu den Benutzer- Schnittstellen Sprach-Interaktion Graphische Oberfläche Seite 5
Interaktions-Stufen Programmierung Handführung + Sprache Direkte Interaktion mit dem Roboter Graphik Anzeige Systemzustand und alternative Eingabemöglichkeit Nachbearbeitung Graphik Definition der Prozessparameter und Simulation Ausführung Keine Interaktion KRL-Programm Positionsdaten Seite 6
Realisierung der Sprachschnittstelle Implementierung basiert auf open source framework Sphinx4 [1] Erkennungsrate in ruhiger Umgebung nahe 100% Seite 7 [1] Walker et al. (2004): Sphinx-4: A Flexible Open Source Framework for Speech Recognition. Sun Microsystems Technical Report, No. TR-2004-139. November 2004.
Grammatiken Seite 8
Industrietauglichkeit Vorteile Ortsunabhängig dank bluetooth-technologie Ermöglicht direkte Interaktion am Roboter ohne Einsatz der Hände Flexibler Befehlssatz implementierbar ohne zusätliche HW-Kosten Keine störenden Komponenten am Roboter, welche während Ausführung des Prozesses abgenommen werden müssen Herausforderungen Robustheit gegenüber lauten Hintergrundgeräuschen Kurze Reaktionszeiten Seite 9
Untersuchung anhand der Geräuschkulisse einer Schreinerei Teils kritische Lärmpegel während laufender Bearbeitungs- Prozesse Besondere Herausforderung ist hohe Dynamik der Geräuschkulisse Seite 10
Kehlkopf-Mikrofon Anstatt von Druckwellen werden Vibrationen des Kehlkopfes gemessen Vorteil: Hohe Robusheit gegenüber Hintergrundgeräuschen Problem: Frequenzspektrum unterscheidet sich signifikant von Standard-Mikrofonen Seite 11
Detektion aktiver Signalabschnitte Dynamisch veränderliche Hintergrundgeräusche erschweren die Unterscheidung zwischen relevanten Signalabschnitten und reiner Geräuschkulisse. Eine zuverlässige Unterscheidung wird durch das Kehlkopfmikrofon- Signal ermöglicht. Seite 12
Spectral Subtraction Werden Sprachsignal und Hintergrundgeräusch als unkorreliert vorausgesetzt, gilt: Signal Sprache Hintergrund y( n) s( n) d( n) Das Leistungsspektrum des sauberen Sprachsignals wird angenähert durch Sˆ ( k) 2 Y( k) 2 Dˆ ( k) 2 Da aus dem Kehlkopfmikrofon-Signal die genaue Position der Sprachbefehle bekannt ist, lässt sich Spektrum der Hintergrundgeräusche dynamisch anpassen. Seite 13
Erkennungsrate (%) Ergebnisse Optimierung einer multi-band Version [2] des klassischen spectral subtraction Algorithmus unter Verwendung des Kehlkopfmikrofon-Signals: 100 90 80 70 60 50 40 30 20 10 0 Schleifen Lackieren Fräsen Sägen Original-Signal Nach Multiband Spectral Subtraction Unter Verwendung des Kehlkopfmirkofons Seite 14 [2] Kamath et al. (2002): A Multi-Band Spectral Subtraction Method for Enhancing Speech Corrupted by Colored Noise
Mensch-Maschine Interaktion Aktuell: Mensch steuert das System System reagiert Aktiv Reaktiv Ziel: Zusätzliche System-Intelligenz System generiert aktiv Vorschläge für nächste Aktion und zeigt Fehlerquellen auf Mensch kontrolliert Vorschlag, stimmt zu oder lehnt ab Aktiv Reaktiv Aktiv Reaktiv Seite 15
Lösungsansatz Y 1 Y 2 Y 3 Y 4 Modellierung als Hidden Markov Model X 1 X 2 X 3 X 4 Sequenz X: Verdeckte Zustände (Q) Nutzer-Eingaben (Bewegungssteuerung, Bahn-Aufnahme) Punkte der Schweißnaht (Anfahrtspunkt, Startpunkt, Zwischenpunkt, Endpunkt, Abfahrtspunkt) Sequenz Y: Beobachtungen (E) Roboter-Positionsdaten Sensor-Daten (KMS, 2D Laser-Scanner) pklm P( X t 1 m X t l, X t 1 k) k, l, m Übergangswahrscheinlichkeiten mit ek ( b) P( Yi b X i k) k Q, b Emissionswahrscheinlichkeiten mit Q E Seite 16
Schätzung der internen Zustände Übergangs- sowie Emissionswahrscheinlichkeiten werden aus Beispieldaten gewonnen und mit jeder Neuprogrammierung adaptiert Vorhersage der nächsten Aktion Berechnung der Viterbi-Variablen v l ( i) für alle l vl ( i) el ( Xi)max k Q( vk ( i 1) pklm ) Vorgeschlagene nächste Aktion = arg max l Q ( v l Q ( i)) Y 1 Y 2 Y 3 Y 4 ˆX 1 ˆX 2 ˆX 3? Vorschlag Nutzereingabe Dekodierung einer aufgenommenen Bewegungsbahn Zeiger auf wahrscheinlichste Vorgänger-Zustände ptri ( m) arg max k Q( vk ( i 1) pklm ) werden zurückverfolgt ˆ i 1 X ptr ( Xˆ i i ) Y 1 Y 2 Y 3 Y 4? ˆX 2 ˆX 3 ˆX 4 Automatisches Setzen der Schweißnähte und -parameter Seite 17
Zusammenfassung und Ausblick Programmierumgebung InTeach Programmieren durch Vormachen Interaktion mittels Kraft-Momenten Sensorik, Sprache und Graphik Sprachsteuerung Industrietauglichkeit durch Einsatz von Kehlkopfmikrofon Ausblick: mapping der features von Standardmikrofon-Signalen zum alleinigen Einsatz des Kehlkopfmikrofons Von der Steuerung zur Interaktion Adaptives Wahrscheinlichkeitsmodell der zeitlichen Abfolge von Aktionen Generierung von Vorschlägen sowie automatisches Setzen von Paramtern Seite 18