DE112016001831B4 - Verfahren und Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks - Google Patents

Verfahren und Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks Download PDF

Info

Publication number
DE112016001831B4
DE112016001831B4 DE112016001831.2T DE112016001831T DE112016001831B4 DE 112016001831 B4 DE112016001831 B4 DE 112016001831B4 DE 112016001831 T DE112016001831 T DE 112016001831T DE 112016001831 B4 DE112016001831 B4 DE 112016001831B4
Authority
DE
Germany
Prior art keywords
error
sensor
torque
robot joint
detecting
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.)
Expired - Fee Related
Application number
DE112016001831.2T
Other languages
English (en)
Other versions
DE112016001831A5 (de
Inventor
Sami Haddadin
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.)
Kastanienbaum GmbH
Original Assignee
Kastanienbaum GmbH
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 Kastanienbaum GmbH filed Critical Kastanienbaum GmbH
Publication of DE112016001831A5 publication Critical patent/DE112016001831A5/de
Application granted granted Critical
Publication of DE112016001831B4 publication Critical patent/DE112016001831B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24182Redundancy
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39001Robot, manipulator control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Feedback Control In General (AREA)

Abstract

Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm(t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird. Das vorgeschlagene Verfahren umfasst folgende Schritte: Bereitstellen (101) der Messwerte θm(t),ik,1(t),τJ(t),q(t), Prüfen (102) auf Vorliegen eines Fehlers durch den ersten Fehlerdetektor, der das Vorliegen eines Fehlers dann detektiert, wenn die Messwerte θm(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen, und Prüfen (103) auf Vorliegen eines Fehlers durch den zweiten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t),τJ(t),q(t) einer Prozessmodell-gestützten Methode ermittelt, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen, und entweder Bereitstellen (104a) der Messwerte τJ(t) an einen dritten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis einer Signal-gestützten Methode detektiert, wobei ein Fehler dann detektiert wird, wenn Signalgrößen, wie beispielsweise Amplituden und/oder charakteristische Frequenzen, der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen, oder Ermitteln (104b) eines Drehmoments τJ,2(t) im Abtriebsstrang mit einem zweiten Drehmomentsensor oder mit einer redundant ausgelegten Sensorelektronik des ersten Drehmomentsensors und Detektieren eines Fehlers durch einen vierten Fehlerdetektor dann, wenn ein Vergleich von rJ,1(t) und τJ,2(t) vierten Grenzwertbedingungen nicht genügt, und sofern von einem der vorhandenen Fehlerdetektoren ein Fehler detektiert wird, Erzeugen (105a) eines Warnsignals und/oder Ansteuern (105b) des Elektromotors mit Stellgrößen τ m F ( t ) ,
Figure DE112016001831B4_0001
die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern, und/oder Aktivieren (105c) eines mechanischen Mechanismus zum Bremsen einer Bewegung des Robotergelenks.

Description

  • Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks mit einer Fehlererkennung und entsprechenden Reaktionen.
  • Verfahren und Vorrichtungen zur Steuerung/Regelung eines aktorisch angetriebenen Roboters mit einer Fehlererkennung sind unter anderem aus folgenden Druckschriften bekannt: DE 10 2013 016 019 B3 , DE 10 2008 054 312 A1 , DE 10 2004 026 185 A1 , US 2014/0067124 A1 , US 2013 / 0 245 825 A1 und US 8 036 776 B2 .
  • Die Aufgabe der Erfindung ist es, ein Verfahren und eine Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks anzugeben, wobei eine robuste Fehlererkennung beim Betrieb des Robotergelenks mit einer 1-Fehlersicherheit kostengünstig ermöglicht werden soll.
  • Die Erfindung ergibt sich aus den Merkmalen der unabhängigen Ansprüche. Vorteilhafte Weiterbildungen und Ausgestaltungen sind Gegenstand der abhängigen Ansprüche. Weitere Merkmale, Anwendungsmöglichkeiten und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung, sowie der Erläuterung von Ausführungsbeispielen der Erfindung, die in den Figuren dargestellt sind.
  • Ein erster Aspekt der Erfindung betrifft ein Verfahren zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm(t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird. Dabei ist unter dem Begriff „Sensorelektronik“ vorliegend eine Sensor- Mess- und Kommunikationselektronik zu verstehen.
  • Das vorgeschlagene Verfahren umfasst folgende Schritte. In einem Schritt erfolgt ein Bereitstellen der Messwerte θm(t),ik,1(t),τJ(t),q(t).
  • In einem weiteren Schritt erfolgt ein Prüfen auf Vorliegen eines Fehlers durch den ersten Fehlerdetektor, der das Vorliegen eines Fehlers dann detektiert, wenn die Messwerte θm(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen. Vorteilhaft werden mindestens die erste und die zweite Zeitableitung der jeweiligen Messwerte ermittelt. Die ersten Grenzwertbedingungen können die Messwerte θm(t),ik,1(t),τJ(t),q(t), deren Zeitableitungen und/oder daraus abgeleitete (gefilterte, interpolierte, beobachtete etc.) Größen betreffen.
  • In einem weiteren Schritt erfolgt ein Prüfen auf Vorliegen eines Fehlers durch den zweiten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t),τJ(t),q(t) einer Prozessmodell-gestützten Methode ermittelt, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen. Dabei werden je nach Prozessmodell-gestützter Methode beispielsweise Zeitableitungen der Messwerte θm(t),ik,1(t),τJ(t),q(t) und/oder aus den Messwerten θm(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen abgeleitete Größen genutzt. Zur Ermittlung eines Vorliegen eines Fehlers können je nach Prozessmodell auch ein oder mehrere der Messwerte θm(t),ik,1(t),τJ(t),q(t) ungenutzt bleiben.
  • In einem weiteren Schritt erfolgt entweder ein Bereitstellen der Messwerte τJ(t) an einen dritten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis einer Signal-gestützten Methode detektiert, wobei ein Fehler dann detektiert wird, wenn Signalgrößen, wie Amplituden und/oder charakteristische Frequenzen, der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen, oder ein Ermitteln eines Drehmoments τJ,2(t) im Abtriebsstrang mit einem zweiten Drehmomentsensor oder mit einer redundant ausgelegten Sensorelektronik des ersten Drehmomentsensors und Detektieren eines Fehlers durch einen vierten Fehlerdetektor dann, wenn ein Vergleich von τJ,1(t) und τJ,2(t) vierten Grenzwertbedingungen nicht genügt. Sofern das Robotergelenk einen zweiten Drehmomentsensor oder einen ersten Drehmomentsensor mit einer redundant ausgelegten Sensorelektronik aufweist, erfolgt in diesem Schritt vorteilhaft lediglich die Auswertung der Drehmomente τJ,1(t) und τJ,2(t).
  • In einem weiteren Schritt erfolgt, sofern von einem der am Robotergelenk vorhandenen Fehlerdetektoren ein Fehler detektiert wird, ein Erzeugen eines Warnsignals und/oder ein Ansteuern des Elektromotors mit Stellgrößen τ m F ( t ) ,
    Figure DE112016001831B4_0002
    die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern, und/oder ein Aktivieren eines mechanischen Mechanismus zum Bremsen einer Bewegung des Robotergelenks. Bei letzterem kann das Bremsen aktiv oder durch Sicherheitsbremsen erfolgen.
  • Vorteilhaft wird das Warnsignal optisch und/oder akustisch ausgegeben.
  • Eine vorteilhafte Weiterbildung des vorgeschlagenen Verfahrens zeichnet sich dadurch aus, dass der erste Stromsensor eine zur ersten Sensorelektronik redundante zweite Sensorelektronik zur Ermittlung eines zweiten Betriebsstroms ik,2(t) des Elektromotors aufweist, mit k = 1, 2, ..., wobei durch einen fünften Fehlerdetektor ein Fehler dann detektiert wird, wenn ein Vergleich von ik,1(t) und ik,2(t) fünften Grenzwertbedingungen nicht genügt.
  • Vorteilhaft sind einige oder alle der mit den Sensoren des Robotergelenks verbundenen Fehlerdetektoren derart eingerichtet und ausgeführt, dass jeweils eine Art des jeweils detektierten Fehlers (insbesondere Arten von Fehlern, wie sie der nachfolgenden Beschreibung entnommen werden können) ermittelt wird.
  • Vorteilhaft hängen die Stellgrößen τ m F ( t )
    Figure DE112016001831B4_0003
    und/oder der Fehlerzustand FZ von der Art des detektierten Fehlers F ab. So sind beispielsweise für verschiedene Arten von Fehlern verschiedene Fehlerzustände FZ vorgebbar bzw. die Stellgrößen τ m F ( t )
    Figure DE112016001831B4_0004
    können für verschiedene Arten von Fehlern F unterschiedlich vorgegeben werden. Mit anderen Worten kann eine von der Art des detektierten Fehlers abhängige Reaktion vorgegeben werden.
  • Vorteilhaft nutzt der zweite Fehlerdetektor zur Fehlerdetektion eine Parameterschätzung auf Basis des Modells und/oder einen Zustandsgrößenbeobachter und/oder einen Kalmanfilter und/oder einen „extended“ Kalmanfilter und/oder einen „unscented“ Kalmanfilter und/oder eine Fehlerdetektion auf Basis von Paritätsgleichungen, (insbesondere wie sie in der nach folgenden Beschreibung angegeben sind) und/oder einen Störgrößenbeobachter und/oder einen reduzierten Störgrößenbeobachter und/oder einen reduzierten Zustandsgrößenbeobachter, dabei sind Störgrößenbeobachter im Grunde nichts anderes als Zustandsbeobachter. Besonders bevorzugt nutzt der zweite Fehlerdetektor zur Fehlerdetektion eine Kombination von Paritätsgleichungen und eines oder mehrere Zustandsbeobachter, wie sie der nachfolgenden Beschreibung genommen werden kann.
  • Vorteilhaft nutzt der dritte Fehlerdetektor zur Fehlerdetektion eine Fast Fourier Transformation und/oder ein Leistungsdichtespektrum und/oder eine Modalanalyse und/oder Korrelationsanalyse und/oder ein neuronales Netz und/oder einen statistischen Schätzer.
  • Die Erfindung betrifft weiterhin ein Computersystem, mit einer Datenverarbeitungsvorrichtung, wobei die Datenverarbeitungsvorrichtung derart ausgestaltet ist, dass ein Verfahren, wie vorstehend beschrieben, auf der Datenverarbeitungsvorrichtung ausgeführt wird.
  • Die Erfindung betrifft weiterhin ein digitales Speichermedium mit elektronisch auslesbaren Steuersignalen, wobei die Steuersignale so mit einem programmierbaren Computersystem zusammenwirken können, dass ein Verfahren, wie vorstehend beschrieben, ausgeführt wird.
  • Die Erfindung betrifft weiterhin ein Computer-Programm-Produkt mit auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des Verfahrens, wie vorstehend beschrieben, wenn der Programmcode auf einer Datenverarbeitungsvorrichtung ausgeführt wird.
  • Die Erfindung betrifft weiterhin ein Computer-Programm mit Programmcodes zur Durchführung des Verfahrens, wie vorstehend beschrieben, wenn das Programm auf einer Datenverarbeitungsvorrichtung abläuft.
  • Die Erfindung betrifft weiterhin eine Vorrichtung zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm(t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor von einer Steuer- und Regeleinheit auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird. Die vorgeschlagene Vorrichtung umfasst eine Schnittstelle zum Bereitstellen der Messwerte θm(t),ik,1(t),τJ(t),q(t); einen ersten Fehlerdetektor zum Prüfen auf Vorliegen eines Fehlers, wobei der erste Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehlers dann detektiert wird, wenn die Messwerte θm(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen; einen zweiten Fehlerdetektor zum Prüfen auf Vorliegen eines Fehlers, wobei der der zweite Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t),τJ(t),q(t) und einer Prozessmodell-gestützten Methode ermittelt wird, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen θm(t),ik,1(t),τJ(t),q(t) und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen.
  • Weiterhin umfasst die Vorrichtung entweder einen dritten Fehlerdetektor zum Prüfen auf Vorliegen eines Fehlers, wobei der dritte Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehlers auf Basis der Messwerte τJ(t) und einer Signal-gestützten Methode ermittelt wird, wobei ein Fehler dann detektiert wird, wenn Amplituden und/oder charakteristische Frequenzen der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen, oder einen zweiten Drehmomentsensor zum Erfassen eines Drehmoments τJ,2(t) im Abtriebsstrang und einen vierten Fehlerdetektor zum Prüfen auf Vorliegen eines Fehlers, wobei der vierte Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehler auf Basis der Messwerte τJ,1(t) und τJ,2(t) ermittelt wird, wobei ein Fehler dann detektiert wird wenn ein Vergleich von τJ,1(t) und τJ,2(t) vierten Grenzwertbedingungen nicht genügt. Die Steuer- und Regeleinheit der Vorrichtung ist derart ausgeführt, dass sofern von einem der vorhandenen Fehlerdetektoren ein Fehler detektiert wird, ein Warnsignal erzeugt wird und/oder der Elektromotor Stellgrößen τ m F ( t )
    Figure DE112016001831B4_0005
    angesteuert wird, die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern, und/oder ein am Robotergelenk vorhandener mechanischer Mechanismus zum Bremsen einer Bewegung des Robotergelenks aktiviert wird.
  • Vorteile und vorteilhafte Weiterbildungen der vorgeschlagenen Vorrichtung ergeben sich durch analoge und sinngemäße Übertragung der zum vorgeschlagenen Verfahren gemachten vorstehenden Ausführungen.
  • Die Erfindung betrifft weiterhin einen Robotermanipulator mit einer Vorrichtung wie vorstehend beschrieben. Die Erfindung betrifft schließlich einen Roboter mit einer Vorrichtung, wie vorstehend beschrieben.
  • Die vorgeschlagene Vorrichtung ermöglicht eine 1-Fehlersicherheit bei der Detektion von Fehlern während des Betriebs des Robotergelenks und die Auslösung von Reaktionen, sofern ein Fehler detektiert wurde, beispielsweise auf mechanischem Level beispielsweise „Aktivieren mechanischer Bremsen“ oder „Einleiten eines geregelten Stopps“) sowie auf Softwareebene, insbesondere multimodale Kommunikation eines Fehlerzustandes an einen Benutzer. Die vorgeschlagene Vorrichtung ist vorteilhaft eingesetzt bei Robotergelenken von Robotern, insbesondere bei humanoiden Systemen, Manipulatoren, fliegenden Systemen oder potentiell heterogenen Multirobotersystemen, welche über eine Daten-Cloud und entsprechender Datenbank miteinander in Verbindung stehen. Diese Systeme sind pro Antriebseinheit(Elektromotor) und/oder Gelenk jeweils mit einer Anzahl > 1 von verschiedenen und/oder unabhängigen Sensoren ausgestattet.
  • Eine bevorzugte Konfiguration des Robotergelenks umfasst folgende elektromechanische Antriebseinheiten auf Drehmomentsensorbasis: einen Antriebspositionssensor zur Erfassung einer Antriebsposition θm, ein Abtriebspositionssensor zur Erfassung einer Abtriebsposition q, eine Anzahl von Stromsensoren, die typischerweise je nach Phasigkeit des Motors gewählt wird (Anzahl der Motorphasen: bspw. 3), zur Erfassung des jeweiligen Phasenstroms ik, sowie einen Drehmomentsensor τJ. Die Erfindung erlaubt in jeder Antriebseinheit (Elektromoter) eine separate Fehlererkennung und -isolation, sowie dadurch natürlich im gesamten Roboter. Der Erfindungsgedanke erlaubt insbesondere die Umsetzung einer 1-Fehlersicherheit ohne explizite 2-Kanaligkeit aller Sensoren.
  • Das Ziel der Fehlerdetektion ist die Erkennung der Inkorrektheit der roboter-relevanten mechanischen und/oder elektrischen und/oder thermischen Variablen und Messgrößen wie z.B. Motorposition, Gelenkdrehmoment, Motormoment, Motorstrom, Abtriebsposition, Abtriebsbeschleunigung, insbesondere durch Veränderung einer und/oder mehrerer Beobachtungsgrößen. Diese Inkorrektheit kann durch genau einen Fehler verursacht werden. Insbesondere ist mit der vorgeschlagenen Vorrichtung sowie dem vorgeschlagenen Verfahren die Unterscheidung zwischen fehlerfreien nominellen Veränderungen der Variablen und entsprechenden fehlerinduzierten Veränderungen mit einer hohen garantierten Sicherheit und Robustheit möglich.
  • Fehlerfreie Veränderungen umfassen insbesondere Rauschen oder Quantisierung bzw. Modellungenauigkeiten der Daten und gewollte Veränderungen der Variablen z.B. aufgrund des gewünschten Regelverhaltens wie insbesondere das Folgeverhalten einer Position im Modus „Positionsregelung“. Das Prinzip der Fehlererkennung/Fehlerdetektion basiert auf dem Vergleich mit mindestens einem fehlerfreien Variablenwert. Dieser könnte durch einen zweiten Sensor (dieselbe prinzipielle Messgröße, jedoch nicht zwingend notwendig dasselbe Messprinzip) erreicht werden, was jedoch dem klassischen Weg im Stand der Technik entspricht.
  • Für den Vergleich mit einem fehlerfreien Variablenwert eignen sich:
    1. a) die Nutzung von Vorwissen über das Verhalten bzw. den zu erwartenden Wertebereich einer Größe
    2. b) Verfahren, die eine Schätzung des fehlerfreien Variablenwertes beinhalten und so zum Vergleich herangezogen werden können.
  • Vorwissen
  • Zu den Verfahren die Vorwissen über das Verhalten/ den zu erwartenden Wertebereich nutzen zählen insbesondere Begrenzungen des erwarteten fehlerfreien Wertebereichs der Variablen (insbesondere konstante Begrenzungen, wie im nachfolgenden Kapitel 4 beschrieben, jedoch sind dynamische Begrenzungen genauso möglich).
  • Schätzung
  • Da eine 1-Fehlersicherheit erfüllt sein soll, kann der Vergleich insbesondere mit einem oder mehreren Schätzwerten durchgeführt werden, die aus den anderen Variablen berechnet werden. Solange eben nur 1 Fehler vorliegt, muss das System diesen dadurch erkennen können, dass ein Unterschied zwischen der gemessenen und der geschätzten Größe vorliegt und in die Berechnungen zur Erkennung einfließt. Dabei ist zu beachten, dass nicht zwangsläufig eine direkte Differenz zwischen dem gemessenen und dem geschätzten Wert gebildet werden muss, sondern andere zweckhafte mathematisch/physikalische Zusammenhänge herangezogen werden können. Es können gemäß einer anderen bevorzugten Weiterbildung Berechnungen verwendet werden, die anzeigen, dass ein Unterschied zwischen dem gemessenen und dem geschätzten Wert vorliegt, der nicht auf eine fehlerfreie Veränderung der Variablen (insbesondere Rauschen oder gewollte Veränderung der Variablen) zurückzuführen ist, mit anderen Worten eine nicht-nominelle Ursache haben.
  • Zu den vorgeschlagenen Schätz-Verfahren der fehlerfreien Variablenwerte zählen insbesondere Observer- und Paritätsgleichungen, die im nachfolgenden Kapitel 4 beschrieben werden. Weitere alternative bevorzugte Schätz-Verfahren basieren auf Kovarianz- oder Korrelationsverfahren. Auch informationstheoretische Hintergründe wie die Entropie oder das Maß des Information-Gains können gemäß einer vorteilhaften Weiterbildung als Schätzverfahren herangezogen werden. Im Grunde handelt es sich bei jeder dieser Größen um ein im entsprechenden Kontext zu interpretierendes Fehlermaß.
  • Die beschriebene Fehlererkennung erfordert entweder Vorwissen über die beschriebenen Sensoren oder Berechnungen für die Schätzung der beschriebenen Sensoren.
  • Vorwissen kann insbesondere durch Datenblätter/ Herstellerangaben und/oder Identifikationsversuche unter möglichst fehlerfreien Bedingungen erzielt werden. Komplexere Verfahren wie speziell auf diese Zwecke ausgelegte Algorithmen mit oder ohne Roboterinbetriebnahme können ebenfalls bevorzugt angewendet werden. Hinzu kommt die Möglichkeit, Variablen über Modellwissen des Roboters auch parallel auszurechnen (siehe Ausführungsbeispiel unten). Es werden dazu insbesondere zwei unterschiedliche Rechenwege verwendet, die jedoch das zumindest approximativ äquivalente Robotermodell wiederspiegeln.
  • Die Schätzung eines der genannten Sensorwerte unter Nutzung einer oder mehrerer anderer Sensorwerte erfolgt insbesondere durch den Einsatz von Modelwissen über das partikuläre Robotergelenk. Wichtig ist hierbei die Aufstellung/ Bereitstellung und Umformung von Modelgleichungen in einer Art und Weise, dass jeweils die Schätzung eines spezifischen Sensorwertes möglich ist, ohne jedoch die gemessenen Werte des zugehörigen Sensors direkt oder indirekt in die Gleichung(en) der Schätzung einfließen zu lassen. Dies bedeutet insbesondere, dass andere Variablen (sensorabhängig und sensorunabhängig sowie andere Sensorwerte) in der Gleichung für den spezifischen Sensorwert unabhängig von dem gemessenen Wert der zu schätzenden spezifischen Variable sein müssen. Es kann auch gemäß einer vorteilhaften Weiterbildung sinnvoll sein, mehrere marginale Unabhängigkeiten gleichzeitig zu verwenden, und somit auch zuzulassen um die 1-Fehlersicherheit zu gewährleisten. Offensichtlich kann die Detektion der Fehler bestimmten sinnhaften Fehlerklassen zugeordnet werden.
  • Das für eine Beobachtung zu Grunde liegende Model des jeweiligen Robotergelenks muss nicht einheitlich für jede beobachtete Größe sein, sondern ist dem Zweck jeweils anzupassen, so dass die entsprechend nötige Abstraktion und Effizienz/Kompaktheit der Darstellung gegeben ist. Dies ist insbesondere im Kontext der erforderlichen Rechenzeit von Relevanz. In den nachfolgenden Kapiteln wird als bevorzugtes Ausführungsbeispiel das Gelenkreibungsmodel des Roboters anhand unterschiedlicher mathematischer Abstraktionen/Modelle hinreichend genau beschrieben werden.
  • Das gewählte Model der Fehlererkennung determiniert die Möglichkeiten der Fehlerisolierung / Fehlerklassifikation und ermöglicht damit auch eine entsprechende Menge an sinnvollen bewegungs- und/oder softwaretechnischen Reaktion des Roboters.
  • Je genauer bzw. realistischer das Gelenk-Model definiert ist, desto genauer ist in der Regel auch die Fehlererkennung und Isolation. Eine exakte Wiedergabe des tatsächlichen Robotergelenkverhaltens ist jedoch in der Regel nur approximativ möglich. Daher wird ein entsprechendes Model benötigt, welches die wichtigsten Robotergelenkeigenschaften hinsichtlich des Ziels der Fehlererkennung, Fehlerisolierung und Reaktion beinhaltet. Hierfür können insbesondere folgende Aspekte berücksichtigt werden:
    1. 1. Zusammenfassung wichtiger Intertialkörper zu einem starren Körper (wenn möglich)
    2. 2. Zusammenfassung wichtiger Elastizitäten im System zu resultierenden Elastizitäten an sinnvollen Stellen (insbesondere Gelenknachgiebigkeit nach dem Getriebe anzunehmen und nicht davor, also auf Motorseite).
    3. 3. Sinnvolle Annahmen über die Kinematik des Roboters, wie insbesondere Denavit-Hartenberg-Konventionen.
    4. 4. Zusammenfassung wichtiger Reibungseffekte in einem gemeinsamen Drehmomentvektor statt jeden Effekt einem eigenen Intertialkörper oder ähnlichem zuzuweisen.
  • Anhand eines bevorzugten Ausführungsbeispiels sei dies anhand der Paritätsgleichungen erläutert. Paritätsgleichungen sind in der Regel besser geeignet für Drift-behaftete Systeme als konstante Schwellwerte typischerweise aus Differenzbildung zweier zu vergleichender Größen (v.a. in der Praxis wichtig). Ähnliche Ergebnisse sind den nachfolgenden Kapiteln für Limit und Paritätsgleichungen zu entnehmen, wobei nur sprunghafte Änderungen dargestellt sind. Grundlegende Methoden, die hier Anwendung finden können sind beispielhaft Verfahren insbesondere nach „Generalized likelihood test for FDI in redundant sensor configurations“ (Daly, Kevin C and Gai, Eliezer and Harrison, James V) und Gleichungen insbesondere nach „Springer Handbook of Robotics“, Kapitel 13.1 „Robots with flexible joints“, die jedoch auf eine Art und Weise umgestellt wurden, um die beschriebene Art der Schätzung zu erzielen.
  • Bevorzugte Ausführungsbeispiele der der Fehlerdetektion zu Grunde liegenden Erfindung Modellgleichungen (des Robotergelenks) mit entsprechenden Alternativen können in insbesondere Kapitel 4 entnommen werden.
  • Ein zentrales bevorzugtes Ausführungsbeispiel, um Variablen parallel auszurechnen sei nun für die Berechnung des sogenannten Gelenkdrehmoments τJ für einen Mehrachsmanipulator angeführt:
    1. 1. Linkseitig/Abtriebseitige Rechnung: M(q)*q" + c(q,q') + g(q) + ggf. tau_ext oder tau_friction_link + oder tau_disturbance_link
    2. 2. Antriebseitige Rechnung: B*theta" - tau_m (controller input) + ggf tau_friction_motor
    3. 3. Kopplung beider Gleichungen durch: tau_J = K*(theta-q)
  • Hierbei haben die Zeichen folgende Bedeutung:
    M(q): Trägheits- bzw. Massenmatrix des Manipulators in Abhänigkeit der Abtriebsposition
    q": Abtriebsgeschleunigung
    c(q,q'): Coriolisvector des Manipulators
    g(q): Gravitationsvektor des Manipulators
    tau_ext: Externes Gelenkdrehmoment (z.B. aufgrund von Kollision)
    tau_friction_link: Abtriebsseitige Reibung
    tau_disturbance_link: Abtiebsseitiges Störmoment (z.B Getrieberipple)
    B: Motorträgheit
    theta": Motorbeschleunigung
    tau_m: kommandiertes Motormoment (in der Regel über die Motorkonstante mit dem Motorstrom verbunden)
    tau_friction_motor: Motorseitiges Reibmoment
    K: Matrix der Gelenkseitigkeiten
    theta: Motorposition
    q: Abtriebsposition
  • Eine gewisse Annahme/Einschränkung erlaubt eine redundante/unabhängige Berechnung von tau_J auf 2 Arten: Sofern gewisse Größen, wie Störung oder Reibungsterme, bzw. die echte Beschleunigung nicht vorhanden sind, können gewisse Abschätzungen getroffen werden. Dieses erlaubt nun nicht mehr tau_J exakt zu berechnen, jedoch ist es möglich einen Bereich mit einer oder mehrerer der oben genannten Möglichkeiten zu berechnen, um so auf die Konsistenz des real gemessenen Gelenkdrehmoments tau_J zu schließen. Gerade diese „Quasi“-Zweikanaligkeit ermöglicht es auf weitere (redundante) Sensoren zu verzichten, jedoch dem echten gemessenen Wert des Koppeldrehmoments zu vertrauen, sofern das gemessene Drehmoment die oben genannten Grenzen, welche durch die Abschätzung aufgestellt werden, nicht verlässt.
  • Im Bestfall ist eine Fehlerisolation möglich, andernfalls erfolgt vorteilhaft Fehlerklassifikation zur Weiterverarbeitung in der Reaktion des Roboters. Die Fehlerisolation kann nun insbesondere durch die Invertierung der Fehlerkausalität hergestellt werden. Die in der Fehlererkennung/Fehlerdetektion beschriebenen Gleichungen werden vorteilhaft genutzt, um den Fehler zu isolieren, mit anderen Worten seinen Ursprung zu erkennen. Das bedeutet insbesondere, dass die Berechnungen Abweichungen zwischen den erwarteten (durch Fehlermaß oder Schätzung) und den gemessenen Werten feststellen. Dabei handelt es sich nicht zwingend um eine direkte Differenzbildung, sondern um die beschriebenen Berechnungen/mathematisch-physikalische Maße, die entsprechende Abweichungen signalisieren und durch die Überschreitung entsprechender Schwellen indiziert werden.
  • Wie bereits beschrieben, determiniert das gewählte Model der Fehlererkennung die Möglichkeiten der Fehlerisolierung / Fehlerklassifikation und hierdurch wiederum bestimmte sinnhaftige Reaktionen des Roboters (Ansteuerung des Elektromotors mit einer Soll-Stellgröße) wie insbesondere das geregelte Anhalten oder Umschalten im Sensorrückkopplung für die Regelung auf eine reine unabhängige Schätzgröße. Hinzu kommt, dass im realen Robotergelenk nicht nur die genannten Sensoren fehlerhaft sein können, sondern auch andere Störfaktoren auftreten können. Insbesondere die in Kapitel 1 genannten Fehler sind hinsichtlich des Ziels der Fehlererkennung, Fehlerisolierung und Reaktion relevant. Grundsätzlich gilt natürlich, je unabhängiger das Fehlermaß, bzw. die Schätzung für einen spezifischen Sensorwert von allen anderen Störgrößen ist (also auch andere Fehlerquellen als die anderen Sensoren), desto leichter ist auch die Isolation. In der Realität werden jedoch vorwiegend Fehlerklassen gebildet, die zwar nur einen der genannten Sensorausfälle beinhalten, jedoch auch andere Fehlerquellen beinhalten können. Das zur Isolation beschriebene erfindungsgemäße Verfahren kann also analog auf Fehlerklassen angewendet werden, wie sie insbesondere in Kapitel 4 beschrieben sind.
  • Die auf eine Fehlermeldung folgende Reaktion des Roboters (durch entsprechende Ansteuerung des Elektromotors des Gelenks) basiert nach Möglichkeit auf der Isolierung eines einzigen Sensorfehlers, ansonsten auf der Meldung des Auftretens einer Fehlerklasse.
  • Zusätzlich können weitere Fehlerklassen gebildet werden, die die gleiche Reaktion/ gleiche Reaktionen auslösen. Dabei kann ein Fehler bzw. die Meldung einer fehlerbedingten Veränderung der Robotergelenk-relevanten Variable auch mehreren möglicherweise disjunkten Fehlerklassen zugeordnet sein, die jeweils eine an den Fehler gebundene, oder über eine entsprechende Planungskomponente ausgewählte Reaktion auslösen. Insbesondere können zwei Fehlerklassen gebildet werden, die jeweils Fehler im Antrieb (Klasse 1) oder im Abtrieb (Klasse 2) anzeigen. Die Information, zu welcher der beiden Klassen ein aufgetretener Fehler zählt, wird dem Nutzer oder der Planungskomponente gemeldet. Dieser/diese kann allein aus dieser Information den Fehler wiederum eingrenzen.
  • Mögliche Vorgehensweisen zur Isolation sind typischerweise in folgende Klassen einzuteilen:
    • • Logisch: Wechselseitiger Ausschluss oder auch Entscheidungsbäume mit Schwellwerten basierend auf Beobachter- und Messwerten, sowie Vorwissen
    • • Wahrscheinlichkeitsbasierte Ansätze (z.B. Hidden Markov-Modelle, Gauß-Prozesse o.ä.)
    • • heuristische Ansätze wie z.B. Fuzzy-Logik.
  • Bevorzugte Ausführungsformen hierzu finden sich in Kapitel 5:
    Beispielhaft kann in Table für den Fehler „shutdown theta_m“ gesehen werden, dass kein Fehler entdeckt wird, solange die Berechnung mit der geschätzten Variable theta_m verwendet wird (Spalte „isolating theta_m“). Die anderen drei Berechnungen, die den fehlerhaften Wert von theta_m nutzen „schlagen aus“ und zeigen somit den Fehler an. Das zeigt an, dass der Fehler hier bei theta_m liegt.
  • Die beschriebene erfindungsgemäße Fehlererkennung ermöglicht einerseits die beschriebene Fehlerisolation bzw. Fehlerklassifikation, sowie eine Reaktion des Roboters, die bei Bedarf auch über das pure Abbremsen im Falle eines Fehlers hinausgehen kann. Da der Fehler bzw. die Fehlerklasse nun bekannt ist, kann insbesondere auch eine sicherheitsgerichtete Reaktion erfolgen. Das bedeutet, dass im Falle eines risikoreichen/ risikoreicheren Fehlers eine Reaktion ausgewählt und ausgeführt wird, die das Risiko minimiert. Das gilt insbesondere für das mögliche Risiko von Personenschäden bei Mensch-Roboter-Interaktionen, aber auch für materielle Schäden, insbesondere bei Sensorproblemen die nicht anderweitig kompensiert werden können (insbesondere durch die beschriebenen Werte zum Vergleich wie Schätzwerte oder Alternativrechnungen). In risikoreichen/ risikoreicheren Fällen wird gemäß einer bevorzugten Weiterbildung eine mechanische Reaktionen wie eine direkte Bremsung ausgelöst, die eine rein mechanische und/oder geregelte oder eine Kombination aus beiden ist. In anderen Fällen (je nach Sensorausfall und Risiko) kann ein langsames Runterbremsen/ ein geregelter Stop ausgelöst werden.
  • Wenn die Verwendung eines Ersatzes (insbesondere temporär Verwendung eines geschätzten Signals mit Hilfe anderer Sensoren, Verwendung eines anderen Reglers) möglich ist, erfolgt gemäß einer bevorzugen Weiterbildung ein (temporärer) weiterer Betrieb.
  • Hinzu kommt die Möglichkeit, den Nutzer zu involvieren und ihm den Fehler zu signalisieren (z.B. Kommunikation, E-Abschalten, rote Lampe, Signal zum Menschen). Dabei kann gemäß einer bevorzugen Weiterbildung allgemein ein Fehler signalisiert werden, aber auch genauere Information (genauer Fehler, Fehlerklasse, ...). weitergegeben werden. Die Möglichkeit kann gemäß einer bevorzugen Weiterbildung zusätzlich in Betracht gezogen werden oder aber auch allein. In beiden Fällen kann der Nutzer weiteres Vorgehen (zumindest teilweise) entscheiden. Je mehr Informationen für den Nutzer vorliegen und desto risikoärmer der Fehler, desto mehr kann der Nutzer selbst entscheiden.
  • In allen Fällen ist es von Vorteil, genauere Informationen über die Art des Fehlers bzw. den Fehler selbst zu haben, da Anzahl der möglichen Reaktionen sinnvoll eingeschränkt werden kann. So kann die Sicherheit erhöht werden, da mögliche Risiken nun in Abhängigkeit der Fehlers/ der Fehlerklassen reduziert werden können. Dies gilt auch im Falle von Nutzer-Interaktionen, da auch hier auf Grund der vorliegenden Informationen über den Fehler/ die Fehlerklassen gerade für weniger erfahrene Roboter-Nutzer die Auswahlmöglichkeit der Reaktionen eingeschränkt werden kann. So können risiko-steigernde Maßnahmen dem Nutzer gar nicht erst zur Auswahl gestellt werden.
    Bei allen beschriebenen Fällen ist zu beachten, dass die Reaktionen auf Fehler oder FehlerKlassen je nach Bedarf (z.B. Roboter, Anwendung, Beachtung von möglichen Mensch-Roboter-Interaktionen) angepasst werden kann.
  • Nachfolgend wird in Kapiteln 1-5 die Erfindungsidee nochmals im Detail ausgeführt und an konkreten Beispielen erläutert.
  • Kapitel 1
  • Begriffe und Definitionen
  • Das engl. „Technical Committee on Fault Detection, Supervision and Safety for Technical Processes“ (SAFEPROCESS) der engl. „International Federation of Automatic Control“ (IFAC) hat eine Liste häufig verwendeter Begriffe zum Thema „Fehler/Fehlerdetektion etc.“ erstellt und diverse Definitionen festgelegt:
  • Zustände und Signale
  • Die verschiedenen Zustände und Signale sind wie folgt definiert.
  • Fehler
  • Eine unerlaubte Abweichung mindestens einer charakteristischen Eigenschaft oder eines Parameters des Systems von der akzeptablen / üblichen / Standard- Kondition.
  • Ausfall
  • Eine permanente Unterbrechung der Fähigkeit des Systems eine geforderte Funkti- on unter spezifizierten Betriebsbedingungen ausführen zu können.
  • Fehlfunktion
  • Eine diskontinuierliche Unregelmäßigkeit bei der Ausführung einer gewünschten Funktion des Systems.
  • Error
  • Eine Abweichung zwischen einem gemessenen oder errechneten Wert (einer Ausgangsvariable) und dem wahren, spezifizierten oder theoretisch korrekten Wert.
  • Unruhe
  • Ein unbekannter (und unkontrollierter) Eingang, der sich auf das System auswirkt.
  • Störung
  • Ein Eingang, der sich auf das System auswirkt und eine temporäre Abweichung vom aktuellen Zustand hervorruft.
  • Residuum
  • Ein Fehlerindikator, basierend auf der Abweichung zwischen Messungen und Berechnungen aus Modelgleichungen.
  • Symptom
  • Eine Änderung einer beobachtbaren Menge vom normalen Verhalten.
  • Funktionen
  • Eine Überwachung und Verwaltung des Systemverhaltens kann mithilfe verschiedener Funktionen erreicht werden.
  • Fehlererkennung
  • Bestimmung der Präsenz eines Fehlers und des Zeitpunktes der Detektion.
  • Fehlerisolierung
  • Bestimmung von Art, Ort und Zeitpunkt der Detektion des Fehlers. Folgt der Fehlererkennung.
  • Fehleridentifikation
  • Bestimmung der Größe und des zeitlichen Verhaltens des Fehlers. Folgt der Fehlerisolierung.
  • Fehlerdiagnose
  • Bestimmung von Art, Größe, Ort und Zeitpunkt der Detektion des Fehlers. Folgt der Fehlererkennung. Beinhaltet Fehlerisolierung und -identifikation.
  • Beobachtung
  • Eine kontinuierliche Tätigkeit in Echtzeit zur Bestimmung der Zustände eines physikalischen Systems durch Aufzeichnung von Informationen und Erkennen und An- zeigen von Verhaltensauffälligkeiten.
  • Überwachung
  • Beobachtung eines physikalischen Systems und Einleitung passender Maßnahmen um den Betrieb im Fehlerfall beizubehalten.
  • Schutz
  • Maßnahmen, durch welche potentiell gefährliches Verhalten des Systems wenn möglich unterdrückt wird, oder durch welche Konsequenzen von gefährlichem Ver- halten vermieden werden.
  • Modelle
  • Ein zugrunde liegendes Systemmodell kann, abhängig von den Beziehungen zwischen Systemvariablen, auf verschiedene Weisen beschrieben werden.
  • Quantitatives Modell
  • Der Gebrauch von statischen, sowie dynamischen Beziehungen zwischen System- variablen und -parametern um das Verhalten eines Systems mathematisch quantitativ auszudrücken.
  • Qualitatives Modell
  • Der Gebrauch von statischen, sowie dynamischen Beziehungen zwischen System- variablen und -parametern um das Verhalten eines Systems mathematisch qualitativ auszudrücken. Zum Beispiel durch Kausalitäten oder wenn-dann-Regeln.
  • Diagnostisches Modell
  • Ein Set statischer oder dynamischer Beziehungen, welche spezifische Eingangs- variablen - die Symptome - mit spezifischen Ausgangsvariablen - die Fehler - in Verbindung setzen.
  • Analytische Redundanz
  • Der Gebrauch von zwei oder mehr (aber nicht unbedingt identischen) Wegen um eine Variable zu bestimmen, wobei einer der Wege ein mathematisches Prozessmodell in analytischer Form verwendet.
  • Systemeigenschaften
  • Es können nicht nur Aussagen über einzelne Zustände und Signale eines Systems getroffen werden, sondern auch über das gesamte System selbst.
  • Zuverlässigkeit
  • Fähigkeit eines Systems unter gegebenen Bedingungen in einer gewissen Zeitspanne und einem gewissen Rahmen zu arbeiten. Messe die Durchschnittszeit zwischen Ausfällen (MTBF) mit Ausfallrate λ (z.B. Ausfälle pro Jahr), sodass gilt: M T B F = 1 λ
    Figure DE112016001831B4_0006
  • Sicherheit
  • Fähigkeit des Systems keine Gefahr für Personen, Ausrüstung oder Umwelt zu verursachen.
  • Verfügbarkeit
  • Wahrscheinlichkeit, dass ein System oder ein Ausrüstungsgegenstand zu jedem Zeitpunkt zufriedenstellend und effektiv funktioniert. Ein Maß erhält man mit A = M T B F M T B F + M T T R
    Figure DE112016001831B4_0007
  • Mit der Durchschnittszeit zwischen Reperaturen (MTTR = 1/µ) und der Reparaturrate µ.
  • Abhängigkeit
  • Eine Form der Verfügbarkeit, mit der Eigenschaft immer verfügbar zu sein, wenn es gebraucht wird. Es ist der Grad, zu welchem das System betriebsbereit ist und die Fähigkeit besitzt seine notwendigen Funktionen zu jedem zufälligen Zeitpunkt und in der festgelegten Ausführungszeit ausführen zu können. Vorausgesetzt ist, dass der Gegenstand zum Start der Periode verfügbar ist. Die Abhängigkeit ist gegeben durch D = T V T V + T R
    Figure DE112016001831B4_0008
  • TV ist die verfügbare Zeit und TR die benötigte Zeit.
  • Strategien der Fehlererkennung und -klassifizierung
  • 1.1. zeigt hierzu ein Schema der Fehlererkennung, der Fehlerdiagnose und des Fehlermanagements. Üblicherweise wird zur Fehlererkennung und der korrekten Reaktion darauf folgender drei-Punkte-Plan verwendet:
    1. 1. Fehlererkennung (engl. Fault Detection)
    2. 2. Fehlerdiagnose (engl. Fault Diagnosis)
    3. 3. Reaktion auf Fehler (engl. Fault Management)
  • Die Umsetzung dieses drei-Stufen-Plans kann mit Hilfe verschiedener Vorgehensweisen realisiert werden. Das folgende Kapitel zeigt einige der gebräuchlichsten Methoden auf.
  • Model-basierte Fehlererkennung
  • Model-basierte Methoden benötigen Kenntnisse über ein zugrunde liegendes Model um Unregelmäßigkeiten zu detektieren. Dabei kann es sich zum Beispiel um ein Model mit der physikalischen Struktur des Roboters handeln, oder um ein Model eines Signals, wel ches bestimmte Eigenschaften, wie eine gewisse Standardabweichung, besitzt.
  • Prozess-Model-basierte Methoden
  • Prozess-Model-basierte Methoden benötigen ein in der Regel dynamisches Prozessmodel in Form einer mathematischen Struktur mit bestimmten Parametern. Die Umsetzung erfolgt durch mit Hilfe von Messungen der Eingangsvariablen U(t) und der Ausgangsvariablen Y(t) des Systems.
  • Paritätsgleichungen
  • Basierend auf dem Wissen über die Struktur eines linearen mathematischen Models mit Ordnung n, können die Zustandsgleichungen wie folgt aufgestellt werden: x _ ( t ) = A x _ ( t ) + B u _ ( t ) ,
    Figure DE112016001831B4_0009
    y _ ( t ) = C x _ ( t ) .
    Figure DE112016001831B4_0010
  • Einsetzen von (1.1) in (1.2) und p-maliges Differenzieren (p ≤ n) führt zu Gleichungen (1.3) und (1.4). Das optimale p kann durch einen Beobachtbarkeitstest bestimmt werden. [ y _ ( t ) y _ ˙ ( t ) y _ ¨ ( t ) ] = [ C CA CA 2 ] x _ ( t ) + [ 0 0 0 CB 0 0 CAB CB 0 ] [ u _ ( t ) u _ ˙ ( t ) u _ ¨ ( t ) ]
    Figure DE112016001831B4_0011
    Y _ ( t ) = T x _ ( t ) + Q U _ ( t )
    Figure DE112016001831B4_0012
  • Im nicht linearen Fall wird Gleichung (1.4) mit Matrix W multipliziert, wobei W die Bedingung erfüllen muss W T = 0 _ .
    Figure DE112016001831B4_0013
  • Mit diesem Schritt wird Gleichung (1.4) unabhängig vom Zustandsvektor x(t), welcher unbekannt sein kann. Weiter folgt die Paritätsbeziehung mit r _ ( t ) = W Y _ ( t ) W Q U _ ( t ) .
    Figure DE112016001831B4_0014
  • Im fehlerfreien Fall ändern sich die Parameter nicht. Somit kann ein Fehler durch Beobachten des sogenannten Residuums r(t) detektiert werden:
    • • r(t) = 0 → fehlerfrei
    • • r(t) ≠ 0 → ein Fehler ist aufgetreten
  • Durch kleinere Effekte, wie Rauschen oder andere Unsicherheiten, kann die Gleichung im fehlerfreien Fall auch ausgeweitet werden zu r(t) ≈ 0.
  • Zustands- und Ausgangsbeobachter
  • Wie der Name bereits andeutet, so kann ein klassischer Zustandsbeobachter Fehler detektieren, indem Änderungen der Zustandsvariablen Δxi erkannt werden. Das Prozessmodel ist definiert als: x ˙ ( t ) = A x ( t ) + F v ( t ) + L f L ( t )
    Figure DE112016001831B4_0015
    y ( t ) = C x ( t ) + N n ( t ) + M f M ( t ) ,
    Figure DE112016001831B4_0016
    wobei v(t) und n(t) Störsignale darstellen und fL(t) und fM(t) additive Fehlersignale sind. Weiter ergeben sich die resultierenden Gleichungen für Zustandsbeobachter (vgl. 1.2) zu x ˙ ^ ( t ) = A x ^ ( t ) + B u ( t ) + H e ( t ) ,
    Figure DE112016001831B4_0017
    e ( t ) = y ( t ) C x ^ ( t ) .
    Figure DE112016001831B4_0018
  • Ähnlich den Paritätsgleichungen sind Residuen von Nöten um das Auftreten eines Fehlers zu detektieren. Für Zustandsbeobachter können diese mit Δx(t) = x(t) - x0(t), e(t) oder r(t) = We(t) beschrieben werden.
  • Im Falle von Multi-Output Prozessen, empfehlen sich spezielle Anordnungen der Beobachter. Beispielsweise kann ein Beobachter durch ein Sensorsignal betrieben werden. Die anderen Signale werden dabei rekonstruiert und mit den gemessenen Signalen verglichen. Dies erlaubt die Erkennung von Einzel-Sensor-Fehlern. Des weiteren ist auch der Betrieb einer Bank an Beobachtern möglich, angetrieben durch alle Outputs. Hierbei wird jeder Beobachter für ein konkretes Fehlersignal entworfen und durch alle Ausgangssignale angetrieben. Die Bank an Beobachtern kann ebenso durch einzelne Ausgangssignale angeregt werden, wobei jeder Beobachter nur ein Sensorsignal verwendet und geschätzte Ausgangssignale wiederum mit den Gemessenen verglichen werden. Eine weitere Möglichkeit ist es die Bank der Beobachter so zu betreiben, dass jeweils alle Ausgangssignale außer eines verwendet werden. Auf diese Weise können ebenfalls mehrere Fehler detektiert werden. Eine andere Herangehensweise ist die Anwendung fehlersensitiver Filter. Hier wird das Feedback H so gewählt, dass sich bestimmte Fehlersignale fL(t) in eine bestimmte Richtung ändern und Fehlersignale fM(t) in einer bestimmten Ebene.
  • Ist der Eingang unbekannt oder die Rekonstruktion der Zustandsvariablen x(t) nicht von Interesse, so eignen sich besonders Ausgangsbeobachter. Eine Lineartransformation führt zu neuen Zustandsvariablen ξ(t) = T1x(t) und Beobachtergleichungen (vgl. )
  • Benötigte Gleichungen zur Transformation sind: T 1 A A ξ T 1 = H ξ C ,
    Figure DE112016001831B4_0019
    B ξ = T 1 B ,
    Figure DE112016001831B4_0020
    T 1 V = 0,
    Figure DE112016001831B4_0021
    C ξ T 1 T 2 C = 0 .
    Figure DE112016001831B4_0022
  • Resultierende Residuen r(t) sind gegeben durch: r ( t ) = C ξ ξ ( t ) T 2 M f M ( t ) .
    Figure DE112016001831B4_0023
  • Offensichtlich sind die Residuen unabhängig von x(t) und u(t) und hängen nur von fL(t) und fM(t) ab.
  • Identifikation und Parameterschätzung
  • Im Anwendungsfall sind die Parameter oft nur teilweise oder gar nicht bekannt. Ist allerdings eine einfache Modelstruktur vorhanden, so können Parameter abgeschätzt werden durch das Messen von Ein- und Ausgangssignalen. Hierbei gibt es im wesentlichen zwei Ansätze; einmal die Minimierung des Gleichungsfehlers und einmal die Minimierung des Ausgangsfehlers.
  • Für die Minimierung des Gleichungsfehlers (vgl. ), ist jener folgendermaßen definiert e ( t ) = y ( t ) Ψ _ T ( t ) Θ _ ,
    Figure DE112016001831B4_0024
    äquivalent zu: e ( s ) = B ^ ( s ) u ( s ) A ^ ( s ) y ( s ) .
    Figure DE112016001831B4_0025
  • Nach Abtasten mit der diskreten Zeit k = t/T0 = 0, 1, 2 ... mit Abtastzeit T0, ergibt sich für die Summe der kleinsten Fehlerquadrate [17] V = k = 1 N e 2 ( k ) = e _ T e _
    Figure DE112016001831B4_0026
    mit d V d Θ = 0
    Figure DE112016001831B4_0027
  • Da diese Methode linear ist, können die Parameter nun direkt bestimmt werden. Die Abschätzung kann entweder nicht rekursiv Θ ^ _ ( N ) = [ Ψ _ T Ψ _ ] 1 Ψ _ T y _
    Figure DE112016001831B4_0028
    oder rekursiv Θ _ ^ ( k + 1 ) = Θ _ ^ ( k ) + γ ( k ) e ( k + 1 )
    Figure DE112016001831B4_0029
    ausgeführt werden. Für die Minimierung des Ausgangsfehlers (1.5) wird der Ausgangsfehler e ' ( t ) = y ( t ) y M ( Θ ^ , t )
    Figure DE112016001831B4_0030
    benötigt mit Modellausgang: y M ( Θ ^ , s ) = B ^ ( s ) A ^ ( s ) u ( s )
    Figure DE112016001831B4_0031
  • Da e'(t) nichtlinear ist, ist keine direkte Berechnung der Parameterabschätzung Θ möglich. Deshalb wird die Verlustfunktion (1.20) durch numerische Optimierungsmethoden minimiert. Dies bedeutet jedoch einen höheren Rechenaufwand. 1.5 zeigt ein Schema der Minimierung des Ausgangsfehlers bei der Parameterschätzung.
  • Signal-Model-basierte Methoden
  • Für Signal-Model-basierte Methoden ist kein Wissen über das zugrunde liegende Prozessmodel notwendig. Lediglich der Systemausgang y(t) wird analysiert. Bei Systemen mit periodischem Ausgang wird davon Ausgegangen, dass das Ausgangssignale aus einem verwendbaren Anteil yu(t) und einem Rauschanteil n(t) besteht. y ( t ) = y u ( t ) + n ( t )
    Figure DE112016001831B4_0032
  • Das verwendbare Signal soll dabei untersucht werden, wobei davon ausgegangen wird, dass der Mittelwert des Rauschens 0 beträgt und die beiden Signale unkorreliert sind. Nach der Theorie der Fourier-Reihen, kann jedes periodische Signal durch die Superposition harmonischer Komponenten ausgedrückt werden. y u ( t ) = v = 1 N y 0 v e d v t sin ( ω v t + φ v )
    Figure DE112016001831B4_0033
  • Jede Komponente ist definiert durch die Amplitude y0v, die Frequenz ωv, den Phasenwinkel ϕv und den Dämpfungsfaktor dv. Die Bestimmung dieser Parameter kann bereits einen ersten Hinweis auf ein fehlerbehaftetes Signal liefern. Weiter Methoden um Anomalien bekannter Signalmodelle zu erkennen werden im Folgenden beschrieben.
  • Bandpass Filter
  • Um sicher zu gehen, dass sich das Ausgangssignal in einem gewissen Frequenzbereich aufhält, können auch Bandpass Filter zur Fehlererkennung eingesetzt werden. Diese können sowohl in analoger, als auch in digitaler Form umgesetzt werden. Einige Filteranordnungen erlauben es zudem das Leistungsspektrum zu beobachten. Das Signal wird dabei quadriert und integriert, um die Durchschnittsleistung zu berechnen. Nimmt man nun die Quadratwurzel, so erhält man die RMS-Amplitude. 1.6 zeigt das Schema einer gestuften Filteranordnung.
  • Spektralanalyse (Fast Fourier-Transformation)
  • Mit der „Fast Fourier-Transformation, FFT“ können die Spektren von Signalen hinsichtlich Fehler untersucht werden.
  • Maximum-Entropie Schätzung
  • Diese Methode ist ähnlich der Spektralanalyse. Sind allerdings nur wenige Frequenzen von Interesse, so führt diese Methode zu präziseren Ergebnissen als die FFT.
  • Andere
  • Abweichungen vom normalen Verhalten eines Systems können auch durch andere Methoden erkannt werden. Beispielsweise weisen Änderungen des Durchschnittswerts oder der Varianz eines zufälligen Signals auf Fehler hin, oder Parameteränderungen einer statischen Wahrscheinlichkeitsdichtefunktion ändern sich plötzlich [35].
  • Methoden zur Fehlerdiagnose
  • Die Aufgabe der Fehlerdiagnose besteht darin, Typ, Ausmaß, Ort und Zeitpunkt eines detektierten Fehlers genauer zu bestimmen. Ändern sich mehrere Symptome unterschiedlich für einen bestimmen Fehler, so können Klassifizierungsmethoden angewandt werden, welche auf Änderungen von Symptom-Vektoren beruhen. Gebräuchliche Methoden zur Klassifizierung sind geometrische Abstands- und Wahrscheinlichkeitsmethoden, künstliche neuronale Netze oder „Fuzzy Clustering“. Ist mehr über die Zusammenhänge zwischen Symptomen und Fehlern bekannt, so können auch diagnostische Entscheidungsmodelle, wie ein Entscheidungsbaum, verwendet werden. Zusammenhänge können dann durch simple WENN-DANN Regeln ausgedrückt werden. Beispiel für „approximate-reasoning“-Methoden sind wahrscheinliches Denken und Denken mit künstlichen neuronalen Netzwerken.
  • Kapitel 2
  • Fehler eines flexiblen Robotergelenks
  • Robotersysteme werden verschiedensten äußeren Einflüssen ausgesetzt, wie Hitze, Feuchtigkeit oder elektromagnetischer Strahlung. Ebenso können auch interne Probleme auftreten, wie Undichtigkeiten, fehlende Schmierung oder Kurzschlüssen. Dies kann zu Änderungen internen Prozessparameter oder Zustandsvariablen führen, was oft in ein Fehlverhalten des Roboters resultiert. Wie bereits erwähnt, werden diese Änderungen Fehler genannt. Im Folgenden werden nun eine Reihe möglicher Fehler eines flexiblen Robotergelenks mit dem Versuch einer Kategorisierung präsentiert.
  • Fehler Kategorisierung
  • Fehler können entweder nach ihrer Form, ihrem zeitlichen Verhalten, oder ihrem Ausmaß kategorisiert werden.
  • Form
  • Die Form eines Fehlers kann entweder systematisch oder zufällig sein. Sind die Struktur und Parameter eines Systems bekannt, so kann ein systematischer Fehler vorhergesagt werden. Dazu zählen auch Fehler, die eine Folge anderer Fehler darstellen, oder einfach nach einer gewissen Zeit eintreten (Verschleiß). Zufällige Fehler können jederzeit auftreten und sind nicht vorhersagbar.
  • Zeitliches Verhalten
  • Eine weitere Variante der Kategorisierung stellen verschiedenen zeitliche Verhaltensmuster dar. Grob unterscheidet man hier zwischen abrupten und driftenden Fehlern. Abrupte, oder abgestufter Fehler, entfaltet plötzlich sein volles Ausmaß und können dann als konstant betrachtet werden (2.1), während sich ein driftender Fehler langsam immer stärker ausprägt (2.2). Eine Spezial- form des abrupten Fehlers ist der intermittierende Fehler, welcher zwischenzeitlich Aussetzer haben kann und bei Wiedereintritt seine Amplitude variieren kann (2.3). Ein Beispiel wäre hier der klassische Wackelkontakt.
  • Ausmaß
  • Eine Kategorisierung nach dem Ausmaß ist sehr einfach. Die Effekte eines Fehlers können sich entweder im System-Internen auswirken (lokal) oder im Externen (global). In Robotersystemen wäre ein lokales Ausmaß lediglich die Erhöhung der Temperatur im Inneren, welche innere Komponenten beeinflusst, während ein Fehler mit globalen Ausmaß die Interaktion des Roboters mit seiner Umwelt verhindert.
  • Sammlung möglicher Fehler
  • Nachfolgend wird eine nicht abschließende Liste möglicher Fehler aufgeführt, welche in einem Robotergelenk auftreten können.
  • Lagerabnutzung und -Fehler
  • In jedem Konzept mechanischer Aktoren spielen Lager eine signifikante Rolle um beispielsweise Rotationsenergie möglichst verlustarm auf weitere Komponenten zu übertragen. Rotationsachsen werden hierbei exakt in Position gehalten um konzentrische Rotationen zu ermöglichen. Aus der Sicht der Fehleranalyse, stellen Lager den häufigsten Störungsgrund für Robotersysteme dar. 51% aller Störungen in Wechselstrom-Motor-Systemen lassen sich auf Lagerfehler zurückführen. Folgende Fehler können auftreten:
  • Lagerabnutzung: Da bei einem Lager die Komponenten aneinander schleifen, sind Abschabungen an diesen Stellen unvermeidbar. Diese mögen mit bloßem Auge kaum sichtbar sein, können sich jedoch gravierend auf das System auswirken. Eine Abnutzung kann sich im Betrieb durch Vibrationen, und somit auch durch erhöhtes Rauschen verschiedener Sensoren, einer Reduktion des übertragenen Moments bzw. der Geschwindigkeit oder Moment-Riffel äußern. Die Abnutzung wird durch unzureichende oder fehlende Schmierung, Überlastung, Stößen, Fremdpartikel oder schlechtes Gelenksdesign beschleunigt.
  • Lagerbruch: Komponenten wie der Lagerkäfig oder der innere oder äußere Ring können unter hoher mechanischer Belastung schnell brechen. Die Auswirkungen sind im Grunde dieselben wie bei der Abnutzung, jedoch in weitaus größerem Ausmaß bis hin zur kompletten Blockade des Gelenks.
  • Getriebefehler
  • In Robotergelenken kommen Getriebe zum Einsatz um die schnellen Bewegungen des Motors in langsamere, jedoch Drehmoment-stärkere Bewegungen des nächsten Gliedes umzusetzen. Durch ihr kompaktes Design kommen dabei häufig Harmonic Drive (HD) zum Einsatz. Mögliche Getriebefehler sind:
  • Wave-Generator Lagerabnutzung: Wie bereits erwähnt, können sich auch im Wave-Generator des HD Abnutzungserscheinungen bemerkbar machen.
  • Ratcheting-Effekt: Der Ratcheting-Effekt tritt in der Regel bei Überschreitung des maximalen Drehmoments auf. Dabei kommt es zu einer kurzzeitigen Moment-Entlastung und der Circular-Spine und der Flex-Spine verschieben sich zueinander um einige Zähne. Dies kommt einem kleinen Offset zwischen Antriebs- und Abtriebsseite gleich. Bei häufigerem Auftreten des Effekts können sich die Zähne verformen, was zu Vibrationen oder sogar dem Bruch der Flex-Spine führt.
  • „Flex spine breakage“: Beim Überschreiten des zulässigen Maximalmoments, kann das Flex-Spine brechen, was die Kraftübertragung über das Getriebe verhindert.
  • Kabelbrüche
  • Elektronische Komponenten arbeiten häufig nicht ordnungsgemäß oder gar nicht, wenn Kabel gebrochen oder nicht richtig eingesteckt sind. Signale können dabei verloren gehen, oder die Komponenten schalten sich aufgrund fehlender Stromzufuhr komplett ab.
  • BLDC Fehler
  • Durch mehrere Vorzüge finden in der Robotik oft bürstenlose Gleichstrommotoren (BLDC) Einsatz. Neben den bereits angesprochenen mechanischen Fehlern, können folgende Fehler auftreten:
  • Seitenströme: Bei schlechter Isolierung können zusätzlich Ströme zwischen einer Phase des BLDC und seinem Gehäuse fließen. Das äußert sich in erhöhten Phasenströmen und die Phasenströme addieren sich nicht mehr zu null. Im schlimmsten Fall werden durch einen Kurzschluss andere Komponenten, wie beispielsweise die Stromsensoren, beschädigt oder Menschen in der Nähe der Maschine verletzt.
  • Phasenbruch: Ein Materialschaden, ausgelöst durch mechanische oder thermische Belastung oder zu hohen Strömen, kann zum Bruch einer Phase des Motors führen, was einem Leerlauf gleich kommt. Dadurch sind nur noch zwei der drei Phasen betriebsbereit, was zur Reduktion des erzeugten Drehmoments, sowie zu erhöhten Moment-Rippeln führt. Manchmal handelt es sich bei einem vermuteten Phasenbruch lediglich um ein loses Kabel.
  • Windungsschluss: Ein Windungsschluss ist ein Kurzschluss zwischen zwei Windungen in einer Spule einer Phase, zwischen Wicklungen zweier Spulen einer Phase oder zwischen zwei Spulen verschiedener Phasen.
  • Phasenschluss: Bei einem Phasenschluss besteht ein Kurzschluss zwischen zwei Phasen des Motors. Das kann den Motor daran hindern anzulaufen.
  • Fehler an einem ADC
  • Jeder zu messende reale Prozess spielt sich in der analogen Welt ab. Um das Signal nun für den Einsatz von Mikrocontrollern oder DSPs nutzbar zu machen, ist die Verwendung von Analog-zu-digital-Konverter (ADC) nötig. Diese können entweder im Prozessor oder den Sensoren integriert sein oder als eigenständiges Bauteil exisitieren. Der Nachteil bei ADCs besteht im unvermeidbaren Quantisierungsrauschen (2.4). Daher muss immer eine ausreichende Auflösung gewählt werden.
  • Ein wahrscheinlicher Fehler für einen ADC wäre der Verlust eines Bits. Dabei verliert der ADC die Kontrolle über ein oder mehrere Bits am Ausgang. Diese bleiben dann auf ihrem Zustand (HIGH oder LOW) stehen. Dies führt zu einem permanenten Offset oder einem Überspringen einiger Quantisierungsstufen.
  • Allgemeine Sensorfehler
  • Einige Fehler sind für alle Sensoren gültig, unabhängig davon, was gemessen wird. Lediglich die Ursache des Fehlers kann von Sensor zu Sensor variieren.
  • Einzelspitze: Ein einziges Sample kann plötzlich einen zufälligen Wert annehmen, der sich von den anderen Werten stark unterscheidet (2.5).
  • Rauschen: Durch elektromagnetische Strahlung oder andere Einflüsse kann ein Signal rauschen (zusätzlich zum Quantisierungsrauschen). Das bedeutet, dass das Signal in einem gewissen Bereich um den eigentlichen Wert schwankt (2.6).
  • Konstanter Fehler: Ein konstanter Fehler ist permanent und höchstwahrscheinlich falscher Kalibrierung oder Anbringung des Sensors geschuldet. Der Wert des Signals hat da- bei einen falschen Offset oder eine falsche Verstärkung.
  • Fehler der Stromsensoren
  • Es gibt in der Regel einen Stromsensor für jede der drei Phasen des BLDC. Zusätzlich zu den allgemeinen Sensorfehlern, können diese auch noch durchbrennen. Dies zerstört einen Sensor komplett und wird durch zu hohe Temperaturen im System oder zu hohe Ströme verursacht.
  • Fehler der Positionssensoren
  • Für diese Art der Positionssensoren sind folgende Fehler möglich:
  • Schleichende Verschiebung der Position: Ist der Sensor schlecht montiert worden, so kann dieser langsam verrutschen, was zu einem driftenden Offset führt. Dieser Vorgang wird durch Vibrationen und harte Stöße begünstigt.
  • Quantisierungseffekte: Quantisierungsrauschen ist streng genommen kein Fehler. Da dieses jedoch großen Einfluss auf das System und weitere Komponenten (Controller, etc.) hat, sei es an dieser Stelle noch einmal erwähnt.
  • Verlust von Signal „A“, „B“ oder „Z“: Ein Positionssensor mit Inkrementalgeber stützt sich in der Regel auf die drei Signale „A“, „B“ und „Z“. Verliert man eines oder mehrere dieser Signale (vor allem „A“ und „B“), gibt der Sensor falsche Werte aus. Der temporäre Verlust der Signale kann auch durch bspw. durch Verschmutzung auf der Inkrementenscheibe hervorgerufen werden.
  • Fehler des Drehmomentsensors
  • Durch die große Vielfalt an Konzepten eines Drehmomentsensors, ist es schwer spezifische Fehler festzulegen. Allgemeine Fehler werden in angesprochen. Exemplarisch werden hier einige aufgezählt:
  • Positionierungsfehler: Ist der Sensor nicht korrekt montiert oder sich Achsen nicht richtig ausgerichtet sind, werden die Messungen ungenau.
  • Überschreiten des maximalen Drehmoments: Hierbei kann der Sensoraufbau entwe- der brechen oder sich verformen, was zu einem Offset oder einer Verstärkung der Werte führt (Erweichen/Verhärten von Material).
  • Fehlerhafte Spannungsquelle
  • Folgendes kann für eine Spannungsquelle nicht in Ordnung sein:
  • Rauschen: Die Versorgungsspannung kann ebenfalls rauschen. Ist das Rauschen zu stark, können elektronische Bauteile durch Überspannung beschädigt werden oder durch eine Unterversorgung zeitweise Ausfallen. In der Regel ist die Versorgungsspannung allerdings als konstant anzusehen.
  • Komplettausfall: Fällt die Spannungsquelle aus, funktioniert keines der elektronischen Komponenten mehr, die Notbremsen greifen und der Roboter steht still.
  • Fehler des Wechselrichters
  • Der Wechselrichter steuert den Stromfluss durch den BLDC. Vorliegend ist ohne Beschränkung des Erfindergedankens von einem drei-Phasen-Wechselrichter die Rede. Er besteht aus drei Zweigen mit jeweils einem Schalter für den oberen und den unteren Teil. Typischerweise werden MOSFETs als Schalter verwendet (2.7). Es können folgende Fehler auftreten:
  • „Inverter shutdown“: Ein Totalausfall des Wechselrichters (2.8 a)) führt dazu, dass alle Schalter offen bleiben und kein Strom fließt. Der Motor kann somit nicht ge- steuert werden.
  • „Single switch open“: Einer der Schalter bleibt permanent geöffnet (2.8 b)). Der Motor kann zwar betrieben werden, was allerdings zu einem unsteten Drehmoment führt. Das ist vor allem beim Anfahren des Motors problematisch.
  • „Single phase short circuit“: Einer der Schalter bleibt immer geschlossen (2.8 c)). Dabei handelt es sich dabei um einen schwerwiegenden Fehler. Die sehr hohen Ströme können sogar eine Entmagnetisierung der Rotormagnete bewirken.
  • „Balanced short circuit“: Drei der Schalter bleiben stets geschlossen, allerdings entweder alle oberen oder alle unteren (2.8 d)). Hier kommt es auch wieder zu hohen Strömen, allerdings ist dieser Fehler nicht so schwerwiegend, wie der „Single phase short circuit“. Der Motor kann betrieben werden.
  • „Single Phase Open Circuit“: Hier fehlt ein MOSFET (2.8 e)). Eine Phase kann nun nur noch in eine Richtung betrieben werden.
  • Kapitel 3
  • Simulation eines Robotergelenks
  • Vorliegend wird FDI auf Gelenksebene betrachtet. Deshalb soll ein einzelnes Gelenk, wie in 3.1 schematisch dargestellt, untersucht werden.
  • Modellierung eines flexiblen Robotergelenks
  • Das Gelenk sei als Simulink-Model gegeben und kann grob in den Controller, das physikalische Model und die Sensorik unterteilt werden (3.2). Einige Signale dieser Simulationen existieren sowohl als „realer“ Wert, als auch als „gemessener“ Wert. Werden beide Versionen einer Variablen im selben Kontext genannt, so ist der „reale“ Wert mit einem „*“markiert, um Verwechslungen vorzubeugen. So handelt es sich beispielsweise θ m *
    Figure DE112016001831B4_0034
    um die tatsächliche Position des Motors, und θm ist die gemessene Variante, also der Output des Positionssensors. Da der Controller hier nicht von größerer Bedeutung ist, wird dieser nicht bis ins Detail beschrieben, vielmehr wird hierzu auf den Stand der Technik verwiesen. Er berechnet lediglich das benötigte Drehmoment des Motors um einer ihm vorgegebenen Trajektorie folgen zu können. Dafür stehen ihm die Ausgänge der Sensoren zur Verfügung. Der Controller gibt aus, wie der Wechselrichter schalten muss um den Motor mit dem gewünschten Drehmoment zu betreiben. Diese Schaltzustände sind als Vektor S = [ s 1 , s 2 , s 3 ] T
    Figure DE112016001831B4_0035
    gegeben, mit möglichen Zuständen wie in 3.3 gezeigt.
  • Das physikalische Model ist aufgeteilt in den Wechselrichter, ein Model des BLDC und ein mechanisches Model (3.4). Beim Wechselrichter handelt es sich um einen drei-Phasen-Wechselrichter, welcher, wie mit 2.7 beschrieben, als Simscape-Model rea lisiert ist. Das Wechselrichter-Model gibt die berechneten Phasenspannungen vab, vbc, und vca an das Model des BLDC weiter, welcher als Dreiecksschaltung umgesetzt ist. Mit Hilfe der „realen“ Geschwindigkeit θ ˙ m *
    Figure DE112016001831B4_0036
    und Position θ m *
    Figure DE112016001831B4_0037
    des Motors, werden die induzierten Spannungen eab, ebc und eca berechnet: e p a h s e ( θ e ) = θ ˙ m * k m λ p h a s e ( θ e )
    Figure DE112016001831B4_0038
    mit dem elektrischen Winkel θ e = p θ m m o d   2 π
    Figure DE112016001831B4_0039
    wobei p die Anzahl der Polpaare darstellt. Die genormte BEMF λphase ist das Ergebnisse vorhergegangener Messungen an einem realen Motor (3.5). Mit bekannten Parametern L (Induktivität) und R (Widerstand) und den induzierten Spannungen, können nun die Phasenströme iab, ibc und ica berechnet werden. Die Netzströme, welche anschließend noch gemessen werden, ergeben sich aus i l i n e * = [ i 1 * i 2 * i 3 * ] = [ 1 0 1 1 1 0 0 1 1 ] [ i a b i b c i c a ] .
    Figure DE112016001831B4_0040
  • Das BLDC-Model gibt außerdem das Motormoment τ m = k m i p h a s e T λ p h a s e + τ C
    Figure DE112016001831B4_0041
    aus, mit der Momentkonstanten km und Rastmoment τC. Das Rastmoment hängt nur von θm ab und kann einer lookup-Tabelle entnommen werden, welche zuvor mit Messergebnissen befüllt worden ist.
  • Das mechanische Model berechnet die Motorposition θ m *   und m geschwindigkeit  θ ˙ m J * ,
    Figure DE112016001831B4_0042
    die Koppelposition q* und -geschwindigkeit q̇* sowie das Kupplungsmoment τ J * .
    Figure DE112016001831B4_0043
    Da das Gelenk stets aus der Nullposition startet, kann die Motorposition und -geschwindigkeit mit θ ¨ m * = 1 B m ( τ m τ J * N τ D N τ f )
    Figure DE112016001831B4_0044
    berechnet werden; mit Motorträgheit Bm in Motorkoordinaten, Getriebeübersetzung N, Dämpfungsmoment τD τ D = d ( θ ˙ m * N q ˙ )
    Figure DE112016001831B4_0045
    mit Dämpfungskonstante d und dem Reibungsmoment τf. Für die Abtriebsseite gilt die Gleichung q ¨ = 1 M ( τ J + τ D τ f τ e x t )
    Figure DE112016001831B4_0046
    mit abtriebsseitiger Trägheit M. Das externe Drehmoment τext besteht aus dem Schwerkraftmoment τg und dem Lastmoment τL.
  • Das Reibungsmodel basiert auf einem Lund-Grenoble-Model [1] und kann mit y τ f = σ 0 z + σ 1 z ˙ + σ 2 θ ˙ m ,
    Figure DE112016001831B4_0047
    z ˙ = θ ˙ m σ 0 | θ ˙ m | g ( θ ˙ m ) ,
    Figure DE112016001831B4_0048
    g ( θ ˙ m ) = τ C + ( τ S τ C ) e ( θ ˙ m / θ ˙ m ) 2
    Figure DE112016001831B4_0049
    ausgedrückt werden. Das Gelenksmoment wird berechnet mit Hilfe der Steifigkeits-Koeffizienten a1, a2 und a3 und Gleichungen τ J = a 1 ( Δ θ ) + a 2 ( Δ θ ) 3 + a 3 ( Δ θ ) 5 + τ h ,
    Figure DE112016001831B4_0050
    τ ˙ h = α | Δ θ ˙ | τ h + A Δ θ ˙ ,
    Figure DE112016001831B4_0051
    Δ θ = θ m N q .
    Figure DE112016001831B4_0052
  • τh ist das Hysterese-Moment mit Koeffizienten A und α (nach [10]).
  • Die Sensormodelle werden mit den „realen „Werten gespeist , m   m
    Figure DE112016001831B4_0053
    welche im mechanischen und im BLDC-Model berechnet werden. Implementierte Sensoren sind unter anderem zwei Positionssensoren, welche aus den Positionen q* und θ* die gemessenen Positionen q und θm sowie die gemessenen Geschwindigkeiten q̇ und θ̇·ermitteln. Diese beiden Sensoren verwenden ein Messgeber-Model nach [14]. Hierbei wird ein Inkrementalgeber simuliert, welcher positionsabhängig zwei Signale A und B, die um 90° zueinander verschoben sind, emuliert. Dadurch können sowohl die aktuelle Position, als auch die Bewegungsrichtung ermittelt werden. Zusätzlich wird noch ein Indexsignal Zgeneriert, welches einen Nulldurchgang des Gelenks signalisiert. Ein weiterer implementierter Sensor ist der Drehmomentsensor, welcher das „reale“ τ J
    Figure DE112016001831B4_0054
    misst und τJ ausgibt. Hierbei wird zunächst ein zusätzliches Rauschen addiert und anschließend das Signal quantisiert und gesättigt. Zu guter Letzt werden noch die Netzströme i1*, i2* und i3* gemessen. Die Vorgehensweise ist hier Deckungsgleich mit der des Drehmomentsensors.
  • Dem Controller wird eine Trajektorie vorgegeben, der das Gelenk folgen soll. Im Folgenden ist diese definiert als q i d = 5 s i n ( t 2 2 π ) ,
    Figure DE112016001831B4_0055
    mit Referenzposition qid in [°] und Zeit t. Der Controller versucht die Abweichung Δq = qid - q zu minimieren. Die Motorposition in abtriebsseitigen Koordinaten θ sei definiert als θ = θ m N
    Figure DE112016001831B4_0056
    mit Getriebeübersetzung N. 3.7 zeigt hierzu Messgeber-Signale und berechnete Positionen. In einem fehlerfreien Lauf mit Laufzeit t = 3 s sehen die Outputs des physikalischen Models aus wie dargestellt in 3.8, 3.9, 3.10 und 3.11. Hier sind θ und q nahezu deckungsgleich. Durch Trägheit, Verzögerungen und Einstellungen des Controllers hinkt die aktuelle Position der Wunschposition immer etwas hinterher. Das Rauschen der Sensorik ist hier so klein gewählt, dass mit dem bloßen Auge im Vergleich zu den tatsächlichen Werten kein Unterschied festzustellen ist.
  • Fehlermodellierung
  • Um eine Fehlererkennung in der Simulation testen zu können, wurden Fehler in Simulink implementiert. Alle Fehler können in einem „parameter Skript“ eingestellt und zu jedem Zeitpunkt ein- bzw. ausgeschaltet werden. Der Controller bleibt unangetastet, wohingegen Fehler im physikalischen und im Sensormodel eingebaut werden. Im folgenden steht der Index id (zum Beispiel in qid) für ideal und beschreibt den Verlauf einer Variable im fehlerfreien Fall.
  • Sensor Fehler
  • 3.12 zeigt ein Schema der Signalmanipulation für allgemeine Sensorfehler. Fehlerblöcke der Sensoren sitzen direkt hinter den Sensormodellen (3.12). Messergebnisse werden manipuliert und anschließend an den Controller weitergeleitet. Ein Schema der Signalmanipulation zeigt 3.13.
  • Allgemeine Sensorfehler
  • Verstärkung: Der Sensorwert wird mit einem bestimmten Wert multipliziert. 3.14 zeigt einen fehlerbehafteten Positionssensor q mit einer Verstärkung von 2 für 0.5 s ≤ t < 1.5 s. q ist der Sensormesswert, q* die „reale“ Position und qid die Position ohne Fehler. q* weicht von qid ab, da der Controller mit falschen Werten rechnet.
  • Offset: Addieren bzw. Subtrahieren eines bestimmten Wertes vom Sensormesswert. Z.B. fehlerbehafteter Positionssensor q mit einem Offset von 0.02 rad für 0.5 s ≤ t < 1.5 s ( 3.15).
  • Rauschen: Zusätzlich zum normalen Rauschen des Sensors wird ein weiteres Rauschen addiert. Hier wird eine Rauschverstärkung eingestellt. Ist der eingestellt Wert 0, so verschwindet nur das zusätzliche Rauschen, jedoch nicht das Standardrauschen. Ein Beispiel gibt 3.16 mit Rauschen (verstärkt um Faktor 1) für 0.5 s ≤ t < 2 s.
  • „Hold/Shutdown“: Je nachdem, wie der Controller eingestellt ist, kann ein Verbindungsverlust zu einem Sensor auf zwei verschiedene Weisen gehandhabt werden. Entweder wird der Sensormesswert einfach auf 0 gesetzt („Shutdown“) oder der letzte gültige Wert wird behalten bis die Verbindung wieder hergestellt wird und ein neuer gültiger Wert erfasst wird („Hold“). Zu sehen am Beispiel eines defekten Positionssensors q ( 3.17) mit Hold aktiv für 0.5 s ≤ t < 0.75 s und „Shutdown“ aktiv für 1.5 s ≤ t < 1.75 s.
  • Das obige Schema (3.13) wird für jedes der Sensormodelle angewandt. Durch ihre spezifischen Eigenschaften wurden für einige Sensoren noch zusätzliche Fehler implementiert.
  • Positionssensoren
  • Inkrement-Skip: Wie bereits beschrieben können bei Positionssensoren auch Inkremente überspringen werden. Wenn dieser Fehler aktiv ist, kann keine weitere Änderung des Positionssignals detektiert werden. Wird dieser Fehler wieder deaktiviert, bleibt ein Offset auf dem Signal. Eine steigende Flanke von Signal Zsetzt diesen Offset wieder zurück. 3.18 zeigt diesen Fehler für 0.25 s ≤ t < 0.5 s.
  • Normalerweise werden nicht so viele Inkremente übersprungen, jedoch ist der Effekt des Fehlers so deutlicher zu sehen.
  • Verlust der Signale A, B oder Z: Zusätzlich zum Standard Fehlerblock ist ein weiterer Fehlerblock in den Positionssensoren implementiert, welcher die Signale A, B und Z abfängt und nur weitergibt, falls keiner dieser Fehler aktiv ist. 3.20 zeigt den Verlust von A für 0.25 s ≤ t < 0.5 s. Im Gegensatz zu „Hold“ wird der entstehende Offset nicht durch Z zurückgesetzt.
  • Stromsensoren
  • Für die Stromsensoren wurden keine weiteren Fehler implementiert. Jeder der allgemeinen Sensorfehler kann für jeden der Stromsensoren einzeln eingestellt werden.
  • Drehmoment-Sensor
  • Außer den allgemeinen Sensorfehlern wurden keine weiteren Fehler für diesen Sensor eingepflegt.
  • Fehler des Wechselrichters
  • Folgende Fehler wurden für den Wechselrichter eingebunden:
  • „Shutdown“: Alle Schalter sind offen. Dieser Fehler ist in 2.8 a) skizziert. 3.21, 3.22 und 3.23 zeigen die Auswirkungen des Fehlers auf das Gelenk. Das System kommt nicht direkt zum Stillstand. Durch restliche kinetische Energie und die Schwerkraft pendelt sich das Gelenk langsam aus, bis es wieder in der Nullposition ankommt. Abgebremst wird das Gelenk nur durch Reibung τf und durch BEMF induziertes Motormoment τm. Die induzierten Ströme sind in 3.22 für t ≥ 0.1 s dargestellt.
  • „Single open“: Ein Schalter bleibt stets geöffnet, wie in 2.8 b) dargestellt. Dieser Fehler kann für jeden der sechs MOSFETs eingestellt werden. Das Verhalten des Gelenks wird hier kaum beeinflusst, vgl. mit 3.24, in der MOSFET eins für t ≥ 0.1 s geöffnet bleibt.
  • „Single closed“: Einer der Schalter bleibt geschlossen. Die Auswirkungen dieses Fehlers sind mit bloßem Auge kaum zu erkennen. 3.25 und 3.26 zeigen den Effekt des Fehlers für t ≥ 0.1 s.
  • „Balanced closed“: Drei der sechs Schalter bleiben geschlossen (entweder die oberen oder die unteren). Die Auswirkungen decken sich weitestgehend mit denen des Fehlers single switch closed“.
  • „Single short“: Einer der MOSFETs wird überbrückt. Der Fehler ist weitestgehend äquivalent zu „single switch closed“.
  • „Balanced short“: Drei der sechs MOSFETs werden überbrückt. Der Fehler ist äquivalent zu „balanced closed“.
  • „Single idle“: Einer der MOSFETs wird komplett entfernt, was zu einem Leerlauf an dessen Stelle führt. Dieser Fehler ist somit äquivalent zu „single switch open“ (abgesehen von der Freilauf-Diode). Keine zusätzlichen Effekte ergeben sich durch diesen Fehler.
  • Fehler des BLDC
  • Die implementierten Fehler des BLDC umfassen folgendes:
  • Phasenbruch: Einer der Phasenströme wird auf 0 gesetzt. 3.27zeigt die Auswirkungen beim Bruch von Phase 1 für t ≥ 0.1 s. Im Gelenksmoment können nur kleine Abweichungen beobachtet werden (3.28).
  • Phasenschluss: Zwei der drei Phasen werden gebrückt. Es ergeben sich dabei drei mögliche Kombinationen. Dieser Fehler ist im Model des Wechselrichters implementiert. 3.29, 3.29, 3.31 und 3.30 zeigen die Folgen dieses Fehlers (vab = 0) für t ≥ 0.1 s. Ist der Fehler in diesem Beispiel aktiv, wird der Phasenstrom iab lediglich durch die BEMF erzeugt.
  • Mechanische Fehler
  • Mechanische Fehler umfassen:
  • Getriebebruch: Motor und Rest des Gelenks sind komplett entkoppelt. Das Gelenkmoment τJ* und das Dämpfungsmoment τD sind gleich 0. Das Gelenk oszilliert um die Nullposition, abgebremst durch die Reibung τf. In 3.32 und 3.33 bricht das Getriebe ab 0.1 s.
  • Blockiertes Gelenk: Die Gelenksgeschwindigkeit wird auf 0 gesetzt und das Getriebe verhält sich wie eine Feder gegen die der Motor arbeitet. Die Folge ist ein hohes Gelenksdrehmoment. Durch diese hohen Drehmomente kann das Getriebe auch schnell brechen. Üblicherweise fällt dieses Szenario nicht unter den Aspekt der FDI, sondern wird von der Kollisionserkennung abgedeckt. In 3.34 und 3.35 wird das Gelenk ab t ≥ 0.1 s blockiert.
  • Blockierter Motor: Die Geschwindigkeit des Motors wird auf 0 gesetzt. Blockieren des Motors bringt das gesamte Gelenk zum Stillstand. Da das Getriebe wie eine Feder wirkt, schwingt das Gelenk allerdings noch kurz nach. In 3.36 und 3.37 blockiert der Motor für t ≥ 0.1 s.
  • Erhöhung der Reibung: Eine Erhöhung der Reibung führt zu höheren Strömen, da der Motor nun mehr Kraft benötigt um das Gelenk zu bewegen. In 3.38 wird die Reibung auf das 100-fache erhöht für t ≥ 0.5 s.
  • Momentwelligkeit: Drehmoment-Rippel sind als Erhöhung der Reibung in Abhängigkeit von der Motorposition in der Simulation umgesetzt. Die Position und Breite der Rippel kann eingestellt werden. 3.39 zeigt die Drehmomentwelligkeit für t ≥ 1.5 s.
  • Kapitel 4
  • Implementierung von FDI-Methoden in der Simulation
  • Ziel ist es hierbei die implementierten Fehler, welche zuvor beschrieben wurden, während der laufenden Simulation des Robotergelenks zu detektieren. Dabei gibt es verschiedene Ansätze, welchen eine Zahl an Sensorsignalen zur Verfügung steht. Diese Sensorsignale umfassen Ausgaben der Positionssensoren θm und q, sowie der Stromsensoren i1, i2 und i3, und des Drehmomentsensors τj. Zusätzlich besteht auch die Möglichkeit einige Signale der Regelung ab zugreifen, da Regelung und Fehlererkennung später auf ein und demselben Chip implementiert werden sollen. Zur Fehlererkennung in der Simulation werden zudem folgende Parameter benötigt (Tab. 4.1):
    Beschreibung Variable
    Getriebeübersetzung N
    Gelenk-Steifigkeit K
    Antriebs seitige Trägheit Bm
    Abtriebs seitige Trägheit M
    Beobachter gain (friction observer) Lf
    Dämpfungskonstante d
    Versorgungsspannung Udc
    Anzahl Polpaare (BLDC) p
    Induktivität des Motors L
    Mutual Inductance Mind
    Drehmomentkonstante km
    Form der BEMF (normiert) λ(θm)
  • Die vorgestellten Methoden sind so gewählt, dass sie möglichst einfach und ressourcenschonend sind, sodass es zu keinen Störungen oder Verzögerungen im Regler kommt, wenn diese auf dem selben DSP laufen.
  • Limit Checking
  • Die einfachste und zugleich ressourcenschonendste Methode ist das „limit checking“. Hierbei wird überprüft, ob sich der Wert eines Sensorsignals y innerhalb eines Grenzwerts ε befindet. Wird der Grenzwert ε über-/unterschritten, so wird ein Fehler signalisiert. ε y , m i n < y < ε y , m i n
    Figure DE112016001831B4_0057
  • Oft ist es unnötig sowohl einen unteren als auch einen oberen Grenzwert festzulegen, und man kann sich auf einen Grenzwert für den Betrag des Sensorsignals festlegen. | y | < ε .
    Figure DE112016001831B4_0058
  • Die in diesem Fall überprüften Sensorsignale sind die Signale der einzelnen Stromsensoren ik (∀k ∈ {1, 2, 3}), das Drehmoment τJ und die antriebs-/abtriebsseitigen Geschwindigkeiten θ̇ und q̇, mit den jeweils einem eigenen Grenzwert: | i k | < ε i l i n e
    Figure DE112016001831B4_0059
    | τ J | < ε τ J
    Figure DE112016001831B4_0060
    | q ˙ | < ε q ˙
    Figure DE112016001831B4_0061
    | θ ˙ | < ε θ ˙
    Figure DE112016001831B4_0062
  • Die Positionen θ and q werden nicht direkt überprüft, da sie in absoluten Winkeln angegeben werden und somit nicht an die Grenzen von ±360° gebunden sind. Eine weitere Charakteristik des Systems ist, dass sich alle Ströme zu Null addieren. i 1 + i 2 + i 3 = 0
    Figure DE112016001831B4_0063
  • Durch Rauschen der Sensorsignale ist die Summe natürlich nie genau Null, und es kann ein weiterer Grenzwert zur Fehlererkennung eingeführt werden. | i 1 + i 2 + i 3 | < ε i l i n e , s u m .
    Figure DE112016001831B4_0064
  • Jeder Grenzwert muss individuell eingestellt werden und ist abhängig von der Stärke des Rauschens, sowie des Messbereichs und des zugrunde liegenden physikalischen Models. Diese Einstellungen sollten so vorgenommen worden sein, dass im fehlerfreien Fall kein Fehlalarm ausgelöst wird („zero false positive“), gleichzeitig jedoch auftretende Fehler zuverlässig erkannt werden („zero false negative“).
    Limit-gecheckte Werte Detektierte Fehler
    q ̇ noise gain (sensor q) Verstärkung (sensor q) offset (sensor q) shutdown (sensor q)
    θ ̇ noise gain (sensor θm) Verstärkung (sensor θm) offset (sensor θm) shutdown (sensor θm)
    τJ blockiertes Gelenk
    iline keine zuverlässige Erfassung
    sum iline noise gain (jeder Stromsensor) Verstärkung (jeder Stromsensor) offset (jeder Stromsensor) hold/shutdown (jeder Stromsensor)
  • Offensichtlich lassen sich mit diesen einfachen Methoden nicht alle Fehler erkennen. Da sie jedoch sehr ressourcenschonend sind, können sie eine nützliche Ergänzung zu komplizierteren Methoden darstellen. Nichtsdestotrotz konnten auch mit diesen rudimentären Methoden einige Fehler erkannt werden. Unter anderem werden abrupte Änderungen in den Positionssignalen detektiert. Beim überprüfen des Drehmoments konnte lediglich der Fehler „blockiertes Gelenk“ detektiert werden. Dies ist somit eine einfache Version der Kollisionserkennung. Mithilfe der Summe der Ströme können auch die meisten Fehler der Stromsensoren erkannt werden. Die vorstehende Tabelle zeigt eine Liste von erkannten Fehlern zu jedem nach Grenzwerten überprüften Sensorsignal.
  • Parameterschätzung
  • Sobald das zugrundeliegende Prozess-Model des Gelenks bekannt ist, können einige Prozessparameter geschätzt und mit zuvor gemessenen oder eingestellten werten verglichen werden.
  • Ein Prozess Model kann wie folgt geschrieben werden: y ( t ) = Ψ _ T ( t ) Θ _
    Figure DE112016001831B4_0065
  • Die geschätzten Parameter sind somit Θ _ ^ = [ Ψ _ T Ψ _ ] 1 Ψ _ T y _ _
    Figure DE112016001831B4_0066
  • Um nun mögliche Fehler zu detektieren, wird für jeden Parameter Θ ein Residuum gebildet mit r = Θ ^ Θ
    Figure DE112016001831B4_0067
  • Wird wiederum ein Grenzwert ε überschritten, wird ein Fehler signalisiert. | r | < ε
    Figure DE112016001831B4_0068
  • Im vorliegendem Gelenkmodel ist für die meisten Parameter schwierig eine Gleichung zu finden, die sich leicht und Kostengünstig lösen lässt. Da die Ressourcen später im realen Roboter begrenzt sind, werden im Folgenden lediglich zwei sehr simple Parameter abgeschätzt um das Prinzip zu verdeutlichen. Geschätzte Parameter sind die Steifigkeit des Roboters K ^ = τ J ( θ m N q ) 1
    Figure DE112016001831B4_0069
    mit der Getriebeübersetzung N ^ = θ m ( τ J K + q ) 1
    Figure DE112016001831B4_0070
  • Die geschätzten Parameter K ̂ und N ̂ müssen sich wiederum in einem vordefinierten Wertebereich um die bekannten realen Parameter befinden. | K ^ K | < ε K
    Figure DE112016001831B4_0071
    | N ^ N | < ε N
    Figure DE112016001831B4_0072
  • Die gewählten Parameter sind in diesem Fall für die Fehlererkennung ungeeignet. Da hier durch verrauschte Signale geteilt wird, ist auch die Abschätzung der Parameter sehr verrauscht (vgl. 4.2 und 4.3). Die Wahl anderer Parameter zur Abschätzung wäre unter Umständen wesentlich komplexer und könnte später auf der Hardware zu rechenintensiv sein.
  • Beobachter
  • Eine weitere Möglichkeit zur Fehlererkennung besteht darin, einen Zustand zu beobachten, zu dem man keinen Vergleichswert hat. Diese Beobachter eignen sich in dem Moment zur FDI, wenn die Fehler den Verlauf der Beobachtung extrem verändern oder der beobachtete Wert durch den Fehler Werte annimmt, die mit dem bekannten physikalischen Model nicht mehr vereinbar sind.
  • Die beobachteten Zustände beinhalten:
    • • das Dämpfungsmoment τD
    • • das Motormoment τm
    • • das Reibungsmoment τf
    • • und das externe Drehmoment τext.
  • Eine Beobachtung des Dämpfungsmomentes τD wird erreicht durch τ ^ D = d ( θ ˙ m N q ˙ )
    Figure DE112016001831B4_0073
    mit der Dämpfungskonstanten d. Für die Berechnung des Motormoments ist eine d/q-Transformation notwendig. Dafür benötigen wir die elektrische Position θe des Motors, sowie die Phasenströme iphase. Mit der Anzahl der Polpaare p ergibt sich für die elektrische Position θe θ e = ( p θ m ) mod 2 π .
    Figure DE112016001831B4_0074
    i p h a s e = [ i a b i b c i c a ] = [ 1 0 1 1 1 0 1 2 0 ] 1 [ i 1 i 2 i 3 ]
    Figure DE112016001831B4_0075
    angenähert werden.
  • Die Phasenströme iphase werden zu id und iq transformiert (d/q-Transformation). Das Motormoment τ̂m ergibt sich somit zu τ ^ m = k m i q
    Figure DE112016001831B4_0076
    mit Momentkonstante km.
  • Das Reibungsmoment τf kann beobachtet werden mit τ ^ = L f ( ( τ ^ m τ J τ ^ f ) d t B m θ ˙ m )
    Figure DE112016001831B4_0077
  • Dabei ist L der Beobachter gain, Bm die Motorträgheit, τJ das gemessene Drehmoment und θ̇m die gemessene Motorgeschwindigkeit. τ̂m ergibt sich aus dem Beobachter des Motormoments. Nimmt man nun die Beobachter des Reibungs- und des Dämpfungsmoments zu Hilfe, so lässt sich auch das externe Moment beobachten. τ ^ e x t = τ J + τ ^ D τ ^ f M q ¨
    Figure DE112016001831B4_0078
  • Die Beschleunigung q ̈ erhält man durch Ableiten der gemessenen Geschwindigkeit q ̇. Da man das Positionssignal somit zweimal ableiten muss, um die Beschleunigung zu erhalten, braucht man einen sehr genauen, rauscharmen Positionssensor, da q ̈ sonst durch starkes Rauschen unbrauchbar wird. In der Simulation stellt dies natürlich kein Problem dar. Wenn keine zusätzliche Last am Gelenk wirkt, besteht das externe Drehmoment ausschließlich aus dem Gravitationsmoment, welches allein durch das Eigengewicht des Roboters hervorgerufen wird.
  • Eine weitere Möglichkeit der Detektion von Fehlern ist es, die Sensorsignale selbst zu beobachten und anschließend mit den gemessenen Werten zu vergleichen. Die abtriebsseitige Position kann beobachtet werden durch q ^ = θ m N τ J N
    Figure DE112016001831B4_0079
  • Im fehlerfreien Fall sollte sich das Residuum r wiederum innerhalb eines bestimmten Wertebereichs befinden. | q ^ q | < ε q
    Figure DE112016001831B4_0080
  • Sobald Gleichung 4.24 verwendet wird, ist es nicht mehr nötig auch θm und τJ zu beobachten. Durch die starken Abhängigkeiten zwischen diesen drei Signalen, schlägt das Residuum aus sobald eines dieser Signale fehlerhaft ist. Letztlich bleiben nun noch die Ströme i1, i2 und i3 zur Beobachtung übrig. Dies ist ein wenig aufwendiger und benötigt zusätzlich das Signal S vom Regler, welches den Inverter schaltet und mit dessen Hilfe man die Phasenspannungen vphase berechnen kann (vgl. 3.3). v p h a s e = [ v a b v b c v c a ] = S [ 1 1 0 0 1 1 1 0 1 ] U d c
    Figure DE112016001831B4_0081
  • Ebenso wird die BEMF vBEMF benötigt, welche zuvor gemessen, normiert und als λ(θm) in einem „lookup-table“ gespeichert wurde. v B E M F = θ ˙ m k m λ ( θ m )
    Figure DE112016001831B4_0082
  • km ist die Momentkonstante des Motors. Die Phasenströme iab, ibc und ica werden berechnet durch lösen des Zustandsraumes: x ˙ = A x + B u
    Figure DE112016001831B4_0083
    y = C x + d u
    Figure DE112016001831B4_0084
    x = i ^ p h a s e = [ i a b i b c i c a ]
    Figure DE112016001831B4_0085
    u = ( v p h a s e v B E M F )
    Figure DE112016001831B4_0086
    A = [ R L M i n d 0 0 0 R L M i n d 0 0 0 R L M i n d ]
    Figure DE112016001831B4_0087
    B = [ 1 L M i n d 0 0 0 1 L M i n d 0 0 0 1 L M i n d ]
    Figure DE112016001831B4_0088
    C = [ 1 0 0 0 1 0 0 0 1 ]
    Figure DE112016001831B4_0089
    d = 0
    Figure DE112016001831B4_0090
  • Die beobachteten Ströme îline sind somit i ^ l i n e = [ 1 0 1 1 1 0 0 1 1 ] i ^ p h a s e
    Figure DE112016001831B4_0091
  • Auch hier sollen sich die Residuen im fehlerfreien Fall in einem gewissen Wertebereich bewegen. | i ^ k i k | < ε i l i n e , o b s   k { 1,2,3 }
    Figure DE112016001831B4_0092
  • In der Praxis hat sich herausgestellt, dass die präsentierten Beobachter für τm und τf nicht besonders gut geeignet sind um Fehler zu detektieren. Jedoch werden sie benötigt um andere Zustände zu beobachten. Der Beobachter des externen Drehmoments eignet sich lediglich zur Kollisionserkennung (blockiertes Gelenk). Vielversprechender sind dagegen die Beobachter von Gelenkposition q und der Ströme iline. In der Simulation konnten mit Hilfe von Gleichung 4.24 jegliche Fehler beider Positionssensoren erkannt werden. Ebenso konnten durch Gleichung 4.36 alle getesteten Fehler des BLDC, sowie der Stromsensoren und des Inverters entdeckt werden.
  • Beobachteter Wert Detektierte Fehler
  • Tabelle: Liste der von Beobachtern erkannten Fehler
    τm keine Zuverlässige Erkennung
    τD jeder Fehler des Positionssensors θm jeder Fehler des Positionssensors q Kollision Getriebebruch
    τf keine zuverlässige Erkennung
    Text plötzliche, starke Änderungen in Signal q Kollision
    q jeder Fehler des Positionssensors q jeder Fehler des Positionssensors ein
    iline jeder Fehler der Stromsensoren jeder Fehler des Inverters jeder Fehler des BLDC
  • Paritätsgleichungen und Isolation einzelner Sensorsignale
  • Diese Methode basiert auf der Theorie der Paritätsgleichungen kombiniert mit Beobachtern. Das zugrundeliegende Modell liefert B m θ ¨ m + τ J N + τ ^ D N + τ ^ f τ ^ m = 0.
    Figure DE112016001831B4_0093
  • Durch verschiedene Unsicherheiten wird wiederum ein gültiger Wertebereich mit einem Grenzwert ε festgelegt. B m θ ¨ m + τ J N + τ ^ D N + τ ^ f τ ^ m < ε
    Figure DE112016001831B4_0094
  • Abhängigkeiten zwischen einzelner Summanden der Gleichung 4.38 und den Sensorsignalen werden in der nachfolgenden Tabelle aufgeführt. Die Tabelle zeigt Abhängigkeiten zwischen Summanden der Paritätsgleichung und Sensorsignalen ohne Isolierung einzelner Signale. Im Folgenden wird nun jeweils ein Sensorsignal isoliert und durch einen Beobachter ersetzt. Die Idee hierbei ist, dass die Residuen der damit entstehenden verschiedenen Paritätsgleichungen verschiedene Abhängigkeiten zu
    Figure DE112016001831B4_0095
    den Sensorsignalen besitzen. Somit kann anhand der Veränderung der Residuen ein Fehler nicht nur detektiert, sonder auch grob lokalisiert werden. Schlagen beispielsweise alle Residuen außer einem aus, so liegt der Verdacht nahe, dass der Fehler in jenem Signal liegt, das im unveränderten Residuum isoliert wird. Manchmal schlägt ein Residuum je- doch auch aus, obwohl das fehlerbehaftete Signal isoliert wird. Dies ist auf Nebeneffekte zurückzuführen, die durch ein fehlerhaftes Signal im Regler ausgelöst werden. Bereits ohne Isolation der Signale, können mithilfe von (4.38) Fehler erkannt werden (vgl. 4.4). In der Simulation ist es mit dieser Gleichung möglich, plötzliche Änderungen im Positionssignal q zu detektieren, welche für kurze Zeit zu hohen Geschwindigkeiten q ̇führen. Ebenso konnten alle getesteten Fehler des Positionssignal θm und der Stromsensoren detektiert werden, ebenso wie starkes Rauschen, falsche Verstärkung oder Offset des Signals τJ, ein Phase-zu-Phase-Kurzschluss, ein blockierter Motor und eine Kollision.
  • Isolation von Strompfaden (Line Currents)
  • Für die Ströme gilt die Beziehung: i 1 + i 2 + i 3 = 0.
    Figure DE112016001831B4_0096
  • Somit kann jeweils einer der Ströme durch die beiden anderen ausgedrückt werden, i ^ 1 = i 2 i 3
    Figure DE112016001831B4_0097
    i ^ 2 = i 1 i 3
    Figure DE112016001831B4_0098
    i ^ 3 = i 1 i 2
    Figure DE112016001831B4_0099
  • Dies führt zu drei verschiedenen Versionen des Stromvektors îline [ i ^ 1 i 2 i 3 ] , [ i 1 i ^ 2 i 3 ] , [ i 1 i 2 i ^ 3 ]
    Figure DE112016001831B4_0100
  • Das Residuum kann nun, wie mit Gleichung 4.38 beschrieben gebildet werden. ε > B m θ ¨ m + τ J N + τ ^ D N + τ ^ f τ ^ m
    Figure DE112016001831B4_0101
    τ ^ m = k m i ^ q
    Figure DE112016001831B4_0102
    wobei îq durch d/q-Transformation von îline berechnet wird. Hier können ebenso plötzliche Änderungen der Signals q, sowie jegliche Fehler des Signals θm oder der Stromsensoren und falsche Verstärkung oder Offset des Drehmomentsensors τJ auftreten. Ebenso detektierbar sind Phase-zu-Phase-Kurzschluss, ein blockierter Motor und eine Kollision. Wie vorher bereits angesprochen schlägt hier das Residuum auch bei Fehlern des Signals i1 aus, ob wohl dieses isoliert wird. Das ist darauf zurückzuführen, dass das fehlerbehaftete Signal im Regler Seiteneffekte auslöst, auf die wiederum das Residuum reagiert (vgl. 4.5).
  • Isolation des Positionssignals q
  • Das Positionssignal kann auch ersetzt werden durch q ^ = θ m N τ J K
    Figure DE112016001831B4_0103
  • Die Geschwindigkeit q ˙ ^
    Figure DE112016001831B4_0104
    erhält man durch Ableiten der beobachteten Position q ̂, was zur Paritätsgleichung ε > B m θ ¨ m + τ J N + τ ^ D N + τ ^ f τ ^ m ,
    Figure DE112016001831B4_0105
    führt, mit τ ^ D = d ( θ ˙ m N q ˙ ^ ) .
    Figure DE112016001831B4_0106
  • Das Reibungsmoment τf und das Motormoment τm erhält man mit Gleichungen 4.21 und 4.20. Mit Isolation von q ändern sich auch die Abhängigkeiten zwischen Residuum und Sensorsignalen (vgl. nachfolgende Tabelle). Trotz alledem gleicht das Ergebnis dieser Simulation auch in diesem Fall den Ergebnissen von oben. Selbst Fehler des Signals q konnten detektiert werden, da der Regler offensichtlich stark darauf reagiert.
  • Isolation des Positionssignals θm
  • Die Position θm kann ersetzt werden durch θ ^ m = N ( q + τ J K ) .
    Figure DE112016001831B4_0107
  • Geschwindigkeit θ ˙ ^ m
    Figure DE112016001831B4_0108
    und Beschleunigung θ ¨ ^ m
    Figure DE112016001831B4_0109
    erhält man durch ableiten der beobachteten Position θ̂m und Strom îq mittels d/q-Transformation von i1, i2, i3 und der beobachteten Position θ̂m. Die Partitätsgleichung ist somit gegeben durch ε > B m θ ¨ ^ m + τ J N + τ ^ D N + τ ^ f τ ^ m
    Figure DE112016001831B4_0110
    mit τ ^ D = d ( θ ˙ ^ m N q )
    Figure DE112016001831B4_0111
    τ ^ m = k m i ^ q
    Figure DE112016001831B4_0112
    τ ^ f = L f ( ( τ ^ m τ J τ ^ f ) d t B m θ ˙ ^ m )
    Figure DE112016001831B4_0113
    Figure DE112016001831B4_0114
  • In der Simulation wird eine Getriebeübersetzung N von 160 verwendet, was zusammen mit Gleichung 4.49 dazu führt, dass die beobachtete Position θ̂m eine wesentlich geringere Auflösung besitzt als das tatsächliche Signal. Diese erhöhten Unsicherheiten pflanzen sich auch in den Ableitungen θ ˙ ^ m  und  θ ¨ ^ m
    Figure DE112016001831B4_0115
    fort. Dadurch ist das Residuum in diesem Fall unbrauchbar. Selbst im fehlerfreien Fall stellt sich eine Wahrscheinlichkeit von über 25% für Fehlalarme ein (4.6).
  • Isolation des Drehmoments TJ
  • Bei Isolierung von TJ, kann das Drehmoment angenähert werden durch τ ^ J = K ( θ m N q )
    Figure DE112016001831B4_0116
  • Für das Residuum ergibt sich somit ε > B m θ ¨ m + τ ^ J N + τ ^ D N + τ ^ f τ ^ m
    Figure DE112016001831B4_0117
    mit τ ^ f = L f ( ( τ ^ m τ ^ J τ ^ f ) d t B m θ ˙ m ) .
    Figure DE112016001831B4_0118
  • Diese Version des Residuums reagiert im Grunde genauso, wie die bei Isolation eines Stromsensors oder der Position q. Die detektierten Fehler sind dieselben.
    Figure DE112016001831B4_0119
    Figure DE112016001831B4_0120
  • Kapitel 5
  • Evaluierung von Fehlererkennungsmethoden an einem Prototypen eines flexiblen Robotergelenks
  • Um die Ergebnisse der Simulation zu bestätigen wurden die vorgestellten Methoden zur Fehlererkennung an einem Prototypen eines flexiblen Robotergelenks getestet. Herzu zeigt 5.1 einen zugrunde liegenden Gelenkaufbau.
  • Bei dem Prototypen des flexiblen Robotergelenks handelt es sich um ein Gelenk mit einem Freiheitsgrad. Mittels eines BLDC wird das erzeugte Drehmoment über ein HD mit Übertragungsrate N auf das nächste Glied übertragen (vgl. 5.1). Verwendete Sensoren sind ein motorseitiger Positionssensor θm, ein abtriebsseitiger Positionssensor q und ein Drehmomentsensor TJ, welcher im HD integriert ist und das Moment in abtriebsseitigen Koordinaten misst. Abtriebsseitig ist zudem ein zweiter Motor montiert, welcher eine konstante Last simuliert. Gesteuert wird der Aufbau über einen digitaler Signalprozessor (DSP), dessen Platine außerdem noch Stromsensoren beherbergt, mit deren Hilfe der Motorstrom ausgelesen werden kann. Da der DSP bereits den q-Strom iq (nach d/q-Transformation) berechnet, wird zur Fehlererkennung auch dieser genutzt anstatt der Phasenströme. Alle Sensorsignale werden vom DSP an einen weiteren PC gesendet, der diese graphisch darstellt und eine Trajektorie, welche abgefahren werden soll, wiederum an den DSP zurückschickt. Als Trajektorie sind drei unterschiedliche Winkel des abtriebsseitigen Gliedes vorgegeben (vgl. 5.2). Diese Punkte werden nacheinander in einer weichen Kurve abgefahren. Tabelle: Liste der benötigten Parameter zum Testen der Fehlererkennungsmethoden an einem Gelenkprototypen
    Beschreibung Variable
    Getriebeübersetzung N
    Steifigkeit des Gelenks K
    Antriebsseitige Trägheit Bm
    Abtriebsseitige Trägheit M
    Observer gain (Reibungsmoment) Lf
    Dämpfungskonstante d
    Momentskonstante km
  • Getestete FDI-Methoden am Gelenkprototypen
  • Zur Validierung der Fehlererkennungsmethoden, wurden die meisten der vorgestellten Vorgehensweisen aus Kapitel 4 auch im Prototypen des flexiblen Robotergelenks implementiert. Zu aller erst wird „limit checking“ getestet. Hier werden die Geschwindigkeiten q̇ und θ̇m, sowie das Drehmoment τJ überwacht. Anstelle der Phasenströme wird allerdings der Strom iq überprüft. Ebenso sind auch Beobachter umgesetzt worden, beginnend mit dem Beobachter für das Motormoment τ ^ m = k m i q
    Figure DE112016001831B4_0121
    mit Momentkonstanter km. Zudem wird das Reibungmoment τ ^ f = L f ( ( τ ^ m τ J τ ^ f ) d t B m θ ˙ m ) ,
    Figure DE112016001831B4_0122
    beobachtet mit Beobachter gain Lf, genau so wie das Dämpfungsmoment τ ^ D = d ( θ ˙ m N q ˙ )
    Figure DE112016001831B4_0123
    mit Dämpfungskonstanter d und das externe Moment τ ˜ e x t = τ J + τ ^ D τ ^ f M q ¨
    Figure DE112016001831B4_0124
  • Weiter wird auch die abtriebsseitige Position q angenähert mittels q ^ = θ m N τ J N .
    Figure DE112016001831B4_0125
  • Die geschätzte Position q̂ sollte im fehlerfreien Betrieb nicht groß von den Messungen des eigentlichen Positionssensors abweichen. | Δ q | = | q ^ q | < ε
    Figure DE112016001831B4_0126
  • Der Methode der Sensorisolierung liegt abermals die Paritätsgleichung | B m θ ¨ m + τ J N + τ ^ D N + τ ^ f τ ^ m | < ε
    Figure DE112016001831B4_0127
    zugrunde. Dieses Verfahren der Sensorisolierung (oder auch Paritätsgleichungen) ist im Grunde wie zuvor beschrieben umgesetzt. Es besteht lediglich die Ausnahme, dass die Isolierung der Phasenströme nicht realisiert wurde, da anstelle dieser Strom der Strom iq in der Fehlererkennung Verwendung findet. Die Fehlererkennung ist eigenständig und führt erworbene Erkenntnisse nicht zur Regelung zurück (vgl. 5.3).
  • Getestete Fehler
  • In einer Simulation kann nahezu jeder Fehler ohne großen Aufwand realisiert werden, wohingegen die Umsetzung der Fehlersimulation in der Hardware einige Beschränkun- gen mit sich bringt. Es werden daher nur ausgewählte Fehler an dem Prototypen getestet. Eine Abdeckung aller möglichen Fehler würde den Rahmen dieser Arbeit sprengen. Softwareseitig sind Sensorfehler implementiert, indem eingehende Sensorsignale erst manipuliert und danach erst durch die FDI ausgewertet werden. Diese manipulierten Signale werden allerdings nicht erneut der Regelung zugeführt. 5.3 zeigt noch einmal die Funktionsweise der Sensorsignal-Manipulation. Eingehende Signale sind die beiden Positionen q und θm, sowie das Drehmoment TJ und der Strom iq. Für jedes dieser Signale kann ein Offset beziehungsweise eine Verstärkung eingestellt werden und der Fehler „Shutdown“ setzt das Signal auf 0. Auf der Hardware-Seite ist der Fehler „Shutdown“ ebenfalls realisiert, indem einfach die Stecker der Sensoren (außer Stromsensor) gezogen werden. In diesem Fall erhält sogar der Controller ein fehlerhaftes Signal. Zudem kann höhere Reibung umgesetzt werden durch Abbremsen des Motors mittels einer externen Kraft. Nachteile der „realen“ Hardwarefehler sind, dass es schwierig ist den genauen Auftrittszeitpunkt der Fehler festzulegen, sowie eine Messung der Qualität der Störung durchzuführen (z.B. Reibungsmoment in Nm). Eine Liste der getesteten Fehler kann auch nachfolgender Tabelle entnommen werden. Tabelle: Liste der am Gelenkprototypen getesteten Fehler mit Ort der Umsetzung. Hardwarefehler beeinflussen auch den Controller.
    Realized in
    Fault software hardware
    shutdown q / θm / TJ
    shutdown iq -
    amplify q / θm / TJ / iq -
    offset q / θm / TJ / iq -
    friction gain -
  • Ergebnisse der Versuche am Gelenkprototypen
  • Versuche mit den FDI-Methoden am realen Gelenk, brachte ähnliche Ergebnisse wie zuvor die Simulation. Fehler, welche mithilfe von „Limit Checking“ detektiert werden konnten, sind nachfolgender Tabelle aufgeführt. Plötzliche Änderungen der Positionen führen zu kurzfristigen Spitzen in den zugehörigen Geschwindigkeiten. Natürlich hängt die Detektion auch davon ab, wann der Fehler Auftritt. Zieht man beispielsweise den Stecker eines Positionssensors während das Gelenk bereits in seiner Nullposition ruht, wird selbstverständlich kein Fehler angezeigt.
  • Was die Beobachter angeht, so konnte mit den Beobachtern des Motormoments und der Reibung keiner der getesteten Fehler erkannt werden. Eine Erhöhung der Reibung löste keinen Alarm beim zugehörigen Beobachter aus, da der Grenzwert sehr hoch gewählt war. Mit Hilfe des Beobachters des Dämpfungsmoments konnten alle Fehler der Positionssensoren detektiert werden. Das Selbe gilt für den Beobachter des externen Drehmoments, sowie die geschätzte Position q̂ (bzw. Δq = q̂ - q), mit dem einzigen Unterschied, dass mit Beobachtung des externen Moments anstelle des gezogenen Steckers von θm das Ziehen des Steckers von TJ detektiert wird, und der Beobachter q diese beiden Fälle erkennt. Die Signale der Beobachter vom Dämpfungsmoment TD, externem Moment Text und Δq mit dem Fehler Ziehen des Steckers von Positionssensor q sind in 5.5 dargestellt.
  • Wiedereinmal hat sich der Einsatz von Paritätsgleichungen, kombiniert mit Beobachtern, als am vielversprechensten gezeigt. Unter Verwendung von Gleichung 5.7 und den verfügbaren Sensorsignalen, war es möglich Shutdown und Offsetfehler der Positionssensoren q und θm zu detektieren, sowie Verstärkungsfehler von q, θm und iq. Zudem lösten erhöhte Reibung und das Ziehen der Sensoren θm und TJ einen Alarm aus. Wie erwartet reagiert das Residuum mit isoliertem Positionssensor q nicht auf Fehler dieses Sensors. Gleiches gilt für die Gleichung mit isoliertem θm, welche ebenfalls nicht auf Fehler des Sensors θm reagiert. Ausgenommen ist hierbei allerdings der Fehler Abziehen („unplug“) des Sensors θm, welcher es dem Controller unmöglich macht den Motor korrekt zu bestromen. Diese fehlerhaften Ströme lösen dann trotzdem einen Alarm aus. Eine Zusammenfassung der er- kannten Fehler für die verschiedenen Paritätsgleichungen ist Tab. 5.5 zu entnehmen. Die Residuen für den Fehler Ausstecken des Positionssensors q in dargestellt. Tabelle: Liste detektierter Fehler am Robotergelenk durch Limit- Checking
    Detektions- Methode: Limit check of
    Fault θ̇m TJ iq
    shutdown q ✓* - - -
    shutdown θm - ✓* - -
    shutdown iq - - - -
    shutdown TJ - - - -
    amplify q ✓* - - -
    amplify θm - ✓* - -
    amplify iq - - - -
    amplify TJ - - - -
    offset q ✓* - - -
    offset θm - ✓* - -
    offset iq - - - -
    offset TJ - - - -
    unplug q ✓* - - -
    unplug θm - ✓* - -
    unplug TJ - - -
    friction gain - - - -
    ✓* Kurze Spitze, dann false negative
    Tabelle: Liste der detektierten Fehler am Robotergelenk durch Beobachter
    Detektions-Methode: Beobachter
    Fault Tm Tf TD Text q
    shutdown q - -
    shutdown θm - -
    shutdown iq - - - - -
    shutdown TJ - - - - -
    amplify q - - ✓*
    amplify θm - -
    amplify iq - - - - -
    amplify TJ - - - - -
    offset q - - ✓* ✓* /
    offset θm - - ✓* ✓*
    offset iq - - - - -
    offset TJ - - - - -
    unplug q - -
    unplug θm - - ✓* -
    unplug TJ - - -
    friction gain - - - - -
    ✓* Kurze Spitze, dann false negative
    Tabelle: Liste detektierter Fehler am Robotergelenk durch Paritätsgleichungen
    Detektions-Methode: Paritätsgieichung
    Fault no isolation isolating q isolating θm isolating TJ
    shutdown q ✓* -
    shutdown θm, -
    shutdown iq - - - -
    shutdown TJ - - - -
    amplify q -
    amplify θm -
    amplify iq
    amplify TJ - - - -
    offset q ✓* - ✓*
    offset θm ✓* ✓* -
    offset iq - - - -
    - - - -
    unplug q - -
    unplug θm
    unplug TJ -
    friction gain
    ✓* Kurze Spitze, dann false negative
  • Liste der Abkürzungen
  • ADC
    Analog-zu-digital-Konverter
    BEMF
    gegenelektromotorische Kraft
    BLDC
    bürstenloser Gleichstrommotor
    DSP
    digitaler Signalprozessor
    FDI
    Fehlererkennung und -isolierung
    FFT
    Fast-Fourier-Transformation
    HD
    Harmonic Drive Getriebe
    IFAC
    International Federation of Automatic Control
    MOSFET
    Metall-Oxid-Halbleiter-Feldeffekttransistor
    MTBF
    Durchschnittszeit zwischen Ausfällen
    MTTR
    Durchschnittszeit zwischen Reparaturen
    RMS
    Effektivwert
    SAFEPROCESS
    Technical Committee on Fault Detection, Supervision and Safety for Technical Processes
  • Weitere Vorteile, Merkmale und Einzelheiten ergeben sich aus der nachfolgenden Beschreibung, in der - gegebenenfalls unter Bezug auf die Zeichnung - zumindest ein Ausführungsbeispiel im Einzelnen beschrieben ist. Gleiche, ähnliche und/oder funktionsgleiche Teile sind mit gleichen Bezugszeichen versehen.
  • Es zeigen:
    Figuren
  • 1.1
    Schema der Fehlerdetektion, - diagnose und -Management
    1.2
    Schema eines Zustandsbeobachters
    1.3
    Schema eines Ausgangsbeobachter
    1.4
    Schema der Minimierung des Gleichungsfehlers
    1.5
    Schema der Minimierung des Ausgangsfehlers bei Parameterschätzung
    1.6
    Schema einer gestuften Anordnung von Bandpass-Filtern
    2.1
    Grafische Darstellung eines abrupten Fehlers
    2.2
    Grafische Darstellung eines driftenden Fehlers
    2.3
    Grafische Darstellung eines intermittierenden Fehlers
    2.4
    Quantisiertes Signal mit Quantisierungsrauschen
    2.5
    Einzelspitze
    2.6
    Rauschen eines Signals
    2.7
    Schematik eines Dreiphasen Inverters
    2.8
    Schematik verschiedener Inverter-Fehler
    3.1
    Schema eines flexiblen Robotergelenks
    3.2
    Allgemeiner Aufbau der Gelenkssimulation
    3.3
    Mögliche Schaltzustände des Wechselrichter
    3.4
    Physikalisches Model der Gelenkssimulation
    3.5
    Messung einer BEMF
    3.6
    Schema eines BLDC in Dreiecksschaltung
    3.7
    Messgeber-Signale und berechnete Position
    3.8
    Motor- und Koppelposition im Vergleich mit der Referenzposition (ohne Fehler)
    3.9
    Motor- und Koppelgeschwindigkeit (ohne Fehler)
    3.10
    Gelenksmoment (ohne Fehler)
    3.11
    Netzströme (ohne Fehler)
    3.12
    Schema der Signalmanipulation für allgemeine Sensorfehler
    3.13
    Signal-Flussdiagram zu Manipulation von Sensormesswerten
    3.14
    Gemessene Position q und reale Position q* mit Fehler „Verstärkung“
    3.15
    Gemessene Position q und reale Position q* mit Fehler Öffset“
    3.16
    Gemessene Position q und reale Position q* mit Fehler „Rauschen“
    3.17
    Gemessene Position q und reale Position q* mit Fehlern „Hold und Shutdown“
    3.19
    Schema zur Manipulation der Signale des Messwertgebers
    3.18
    Gemessene Position q und reale Position q* mit Fehler Ïnkrement-Skip“
    3.20
    Gemessene Position q und reale Position q* mit Fehler „Verlust von A“
    3.21
    Motormoment Tm mit Fehler des Wechselrichters „Shutdown“
    3.22
    Phasenströme mit Fehler des Wechselrichters „Shutdown“
    3.23
    Koppelposition q* mit Fehler des Wechselrichters „Shutdown“
    3.24
    Motormoment Tm mit Fehler des Wechselrichters „Single switch open“
    3.25
    Motormoment Tm mit Fehler des Wechselrichters „Single switch closed“
    3.26
    Positionsabweichung Δq = q* -qid mit Fehler des Wechselrichters „Single switch closed“
    3.27
    Phasenströme mit Fehler „Phasenbruch“
    3.28
    Gelenksmoment mit Fehler „Phasenbruch“
    3.29
    Phasenströme mit Fehler „Phasenschluss“
    3.30
    Motormoment Tm mit Fehler „Phasenschluss“
    3.31
    Koppelposition q* mit Fehler „Phasenschluss“
    3.32
    Position θ* und q* mit Getriebebruch
    3.33
    Gelenksmoment bei Getriebebruch
    3.34
    Position θ* und q* mit blockiertem Gelenk
    3.35
    Drehmoment bei blockiertem Gelenk
    3.36
    Position θ* und q* mit blockiertem Motor
    3.37
    Drehmoment des Gelenk mit blockiertem Motor
    3.38
    Position q* mit erhöhter Reibung
    3.39
    Reibungsmoment mit Drehmomentwelligkeit
    4.1
    Summe der Ströme mit Fehler „Shutdown“ von i1
    4.2
    Geschätzte Steifigkeit K̂ ohne aktiven Fehler
    4.3
    Geschätzte Getriebeübersetzung N̂ ohne aktiven Fehler
    4.4
    Residuum einer Paritätsgleichung ohne Isolierung von Sensorsignalen
    4.5
    Residuum einer Paritätsgleichung und aktivem Fehler (Isolierung von i1)
    4.6
    Residuum der Paritätsgleichung mit isoliertem θm ohne aktivem Fehler
    5.1
    Aufbau des flexiblen Gelenkprototypen
    5.2
    Abtriebsseitige Position q des Prototypen bei einem fehlerfreien Lauf nach einer Test-Trajektorie
    5.3
    Schema der Anbindung der FDI an den Versuchsaufbau
    5.4
    Residuum der Paritätsgleichung ohne Isolierung von Sensorsignalen, mit Fehler „Shutdown iq
    5.5
    Beobachtersignale mir Fehler „Ausstecken von Sensor qm Gelenksprototypen
    5.6
    Residuen der Paritätsgleichungen mit Fehler Äusstecken von Sensor qm Gelenksprototypen
    6.1
    schematisierter Verfahrensablauf eines vorgeschlagenen Verfahrens
    6.2
    schematisierter Aufbau einer vorgeschlagenen Vorrichtung
  • Die 1.1 bis 5.6 wurden bereits in der vorstehenden Beschreibung erläutert.
  • 6.1 zeigt einen schematisierten Verfahrensablauf eines vorgeschlagenen Verfahrens zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm (t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird.
  • Das Verfahren umfasst folgende Schritte. In einem ersten Schritt 101 erfolgt ein Bereitstellen der Messwerte θm(t),ik,1(t),τJ(t),q(t). In einem zweiten Schritt 102 erfolgt ein Prüfen auf Vorliegen eines Fehlers durch den ersten Fehlerdetektor, der das Vorliegen eines Fehlers dann detektiert, wenn die Messwerte θm(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen. In einem dritten Schritt 103 erfolgt ein Prüfen auf Vorliegen eines Fehlers durch den zweiten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t),τJ(t),q(t) einer Prozessmodell-gestützten Methode ermittelt, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen. In einem vierten Schritt 104 erfolgt ein Bereitstellen der Messwerte τJ(t) an einen dritten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis einer Signal-gestützten Methode detektiert, wobei ein Fehler dann detektiert wird, wenn Amplituden und/oder charakteristische Frequenzen der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen. In einem fünften Schritt 105 Erfolgt, sofern von einem der vorhandenen Fehlerdetektoren ein Fehler detektiert wird, ein Erzeugen und optisch und akustisches Ausgeben eines Warnsignals sowie ein Ansteuern des Elektromotors mit Stellgrößen τ m F ( t ) ,
    Figure DE112016001831B4_0128
    die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern.
  • 6.2 zeigt einen schematisierten Aufbau einer vorgeschlagenen Vorrichtung zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm(t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor von einer Steuer- und Regeleinheit 206auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird. Die Vorrichtung umfasst eine Schnittstelle 201 zum Bereitstellen der Messwerte θm(t),ik,1(t),τJ(t),q(t); einen ersten Fehlerdetektor 202 zum Prüfen auf Vorliegen eines Fehlers, wobei der erste Fehlerdetektor 202 derart ausgelegt ist, dass das Vorliegen eines Fehlers dann detektiert wird, wenn die Messwerte θm,(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen; und einen zweiten Fehlerdetektor 203 zum Prüfen auf Vorliegen eines Fehlers, wobei der der zweite Fehlerdetektor 203 derart ausgelegt ist, dass das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t),τJ(t),q(t) und einer Prozessmodell-gestützten Methode ermittelt wird, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen θm(t),ik,1(t),τJ(t),q(t) und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen; und einen dritten Fehlerdetektor 204 zum Prüfen auf Vorliegen eines Fehlers, wobei der dritte Fehlerdetektor 204 derart ausgelegt ist, dass das Vorliegen eines Fehlers auf Basis der Messwerte τJ(t) und einer Signal-gestützten Methode ermittelt wird, wobei ein Fehler dann detektiert wird, wenn Signalgrößen, wie Amplituden und/oder charakteristische Frequenzen, der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen. Die Steuer- und Regeleinheit 206 ist derart ausgeführt, dass sofern von einem der vorhandenen Fehlerdetektoren 202-204 ein Fehler detektiert wird, ein Warnsignal erzeugt und mittels einer Ausgabeeinheit optisch und akustisch ausgegeben wird und der Elektromotor mit Stellgrößen τ m F ( t )
    Figure DE112016001831B4_0129
    angesteuert wird, die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern.

Claims (14)

  1. Verfahren zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm(t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird, mit folgenden Schritten: - Bereitstellen (101) der Messwerte θm(t),ik,1(t),τJ(t),q(t), - Prüfen (102) auf Vorliegen eines Fehlers durch den ersten Fehlerdetektor, der das Vorliegen eines Fehlers dann detektiert, wenn die Messwerte θm(t),ik,1(t),τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen, und - Prüfen (103) auf Vorliegen eines Fehlers durch den zweiten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t),τJ(t),q(t) einer Prozessmodell-gestützten Methode ermittelt, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen, und - entweder Bereitstellen (104a) der Messwerte τJ(t) an einen dritten Fehlerdetektor, der das Vorliegen eines Fehlers auf Basis einer Signal-gestützten Methode detektiert, wobei ein Fehler dann detektiert wird, wenn Signalgrößen, wie beispielsweise Amplituden und/oder charakteristische Frequenzen, der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen, oder Ermitteln (104b) eines Drehmoments τJ,2(t) im Abtriebsstrang mit einem zweiten Drehmomentsensor oder mit einer redundant ausgelegten Sensorelektronik des ersten Drehmomentsensors und Detektieren eines Fehlers durch einen vierten Fehlerdetektor dann, wenn ein Vergleich von τJ,1(t) und τJ,2(t) vierten Grenzwertbedingungen nicht genügt, und - sofern von einem der vorhandenen Fehlerdetektoren ein Fehler detektiert wird, Erzeugen (105a) eines Warnsignals und/oder Ansteuern (105b) des Elektromotors mit Stellgrößen τ m F ( t ) ,
    Figure DE112016001831B4_0130
    die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern, und/oder Aktivieren (105c) eines mechanischen Mechanismus zum Bremsen einer Bewegung des Robotergelenks.
  2. Verfahren nach Anspruch 1, bei dem das Warnsignal optisch und/oder akustisch ausgegeben wird.
  3. Verfahren nach Anspruch 1 oder 2, bei dem durch den ersten Fehlerdetektor und den zweiten Fehlerdetektor jeweils eine Art des jeweils detektierten Fehlers ermittelt wird.
  4. Verfahren nach einem der Ansprüche 1 bis 3, bei dem die Stellgrößen τ m F ( t )
    Figure DE112016001831B4_0131
    und/oder der Fehlerzustand FZ von der Art des detektierten Fehlers abhängen.
  5. Verfahren nach einem der Ansprüche 1 bis 4, bei dem der zweite Fehlerdetektor zur Fehlerdetektion eine Parameterschätzung auf Basis des Modells und/oder einen Zustandsgrößenbeobachter und/oder einen Kalmanfilter und/oder eine Fehlerdetektion auf Basis von Paritätsgleichungen nutzt.
  6. Verfahren nach einem der Ansprüche 1 bis 5, bei dem der dritte Fehlerdetektor zur Fehlerdetektion eine Fast Fourier Transformation und/oder ein Leistungsdichtespektrum und/oder eine Modalanalyse und/oder Korrelationsanalyse und/oder ein neuronales Netz und/oder einen statistischen Schätzer nutzt.
  7. Verfahren nach einem der Ansprüche 1 bis 5, bei dem der erste Stromsensor eine zur ersten Sensorelektronik redundante zweite Sensorelektronik zur Ermittlung eines zweiten Betriebsstroms ik,2(t) des Elektromotors aufweist, mit k = 1, 2, ..., wobei durch einen fünften Fehlerdetektor ein Fehler dann detektiert wird, wenn ein Vergleich von ik,1(t) und ik,2(t) fünften Grenzwertbedingungen nicht genügt.
  8. Computersystem, mit einer Datenverarbeitungsvorrichtung, wobei die Datenverarbeitungsvorrichtung derart ausgestaltet ist, dass ein Verfahren nach einem der vorhergehenden Ansprüche auf der Datenverarbeitungsvorrichtung ausgeführt wird.
  9. Digitales Speichermedium mit elektronisch auslesbaren Steuersignalen, wobei die Steuersignale so mit einem programmierbaren Computersystem zusammenwirken können, dass ein Verfahren nach einem der vorhergehenden Ansprüche ausgeführt wird.
  10. Computer-Programm-Produkt mit auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des Verfahrens nach einem der vorhergehenden Ansprüche, wenn der Programmcode auf einer Datenverarbeitungsvorrichtung ausgeführt wird.
  11. Computer-Programm mit Programmcodes zur Durchführung des Verfahrens nach einem der vorhergehenden Ansprüche, wenn das Programm auf einer Datenverarbeitungsvorrichtung abläuft.
  12. Vorrichtung zur Steuerung/Regelung eines mittels eines Elektromotors angetriebenen Robotergelenks, wobei das Robotergelenk einen Stromsensor mit einer ersten Sensorelektronik zur Erfassung eines ersten Betriebsstroms ik,1(t) des Elektromotors, mit k = 1, 2, ..., einen ersten Positionssensor zur Erfassung einer Antriebsposition θm(t) eines Antriebsstrangs des Robotergelenks, einen zweiten Positionssensor zur Erfassung einer Abtriebsposition q(t) eines Abtriebsstrangs des Robotergelenks, und einen ersten Drehmomentsensor zur Erfassung eines Drehmoments τJ,1(t) im Abtriebsstrang aufweist, wobei der Elektromotor von einer Steuer- und Regeleinheit (206) auf Basis einer vorgegebenen Soll-Stellgröße τm(t) gesteuert/geregelt wird, umfassend: - eine Schnittstelle (201) zum Bereitstellen der Messwerte θm(t),ik,1(t)τJ(t),q(t); - einen ersten Fehlerdetektor (202) zum Prüfen auf Vorliegen eines Fehlers, wobei der erste Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehlers dann detektiert wird, wenn die Messwerte θm(t),ik,1(t)τJ(t),q(t) und/oder deren Zeitableitungen vorgegebene erste Grenzwertbedingungen nicht erfüllen; und - einen zweiten Fehlerdetektor (203) zum Prüfen auf Vorliegen eines Fehlers, wobei der der zweite Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehlers auf Basis der Messwerte θm(t),ik,1(t)τJ(t),q(t) und einer Prozessmodell-gestützten Methode ermittelt wird, wobei das Prozessmodell ein vorgegebenes mathematisches dynamisches Modell des Robotergelenks ist, und wobei ein Fehler dann detektiert wird, wenn Parameter des Modells, Residuen zwischen vom Prozessmodell rekonstruierten Größen und den Messgrößen θm(t),ik,1(t)τJ(t),q(t) und/oder Modell-intern ermittelte Parameter vorgegebene zweite Grenzwertbedingungen nicht erfüllen; und - entweder einen dritten Fehlerdetektor (204) zum Prüfen auf Vorliegen eines Fehlers, wobei der dritte Fehlerdetektor derart ausgelegt ist, dass das Vorliegen eines Fehlers auf Basis der Messwerte τJ(t) und einer Signal-gestützten Methode ermittelt wird, wobei ein Fehler dann detektiert wird, wenn Signalgrößen, wie beispielsweise Amplituden und/oder charakteristische Frequenzen, der Messwerte τJ(t) vorgegebene dritte Grenzwertbedingungen nicht erfüllen, oder einen zweiten Drehmomentsensor zum Erfassen eines Drehmoments τJ,2(t) im Abtriebsstrang oder eine redundant ausgelegte Sensorelektronik des ersten Drehmomentsensors zum Erfassen eines Drehmoments τJ,2(t) und einen vierten Fehlerdetektor zum Prüfen auf Vorliegen eines Fehlers, wobei der vierte Fehlerdetektor (205) derart ausgelegt ist, dass das Vorliegen eines Fehler auf Basis der Messwerte rJ,1(t) und τJ,2 (t) ermittelt wird, wobei ein Fehler dann detektiert wird wenn ein Vergleich von rJ,1(t) und τJ,.2(t) vierten Grenzwertbedingungen nicht genügt, und wobei die Steuer- und Regeleinheit (206) derart ausgeführt ist, dass sofern von einem der vorhandenen Fehlerdetektoren ein Fehler detektiert wird, ein Warnsignal erzeugt wird und/oder der Elektromotor Stellgrößen τ m F ( t )
    Figure DE112016001831B4_0132
    angesteuert wird, die das Robotergelenk in einen vorgegebenen Fehlerzustand FZ steuern, und/oder ein am Robotergelenk vorhandener mechanischer Mechanismus zum Bremsen einer Bewegung des Robotergelenks aktiviert wird.
  13. Robotermanipulator mit einer Vorrichtung nach Anspruch 12.
  14. Roboter mit einer Vorrichtung nach Anspruch 12.
DE112016001831.2T 2015-05-21 2016-05-21 Verfahren und Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks Expired - Fee Related DE112016001831B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102015108097.4 2015-05-21
DE102015108097 2015-05-21
PCT/DE2016/000219 WO2016184451A1 (de) 2015-05-21 2016-05-21 Verfahren und vorrichtung zur steuerung/regelung eines aktorisch angetriebenen robotergelenks

Publications (2)

Publication Number Publication Date
DE112016001831A5 DE112016001831A5 (de) 2017-12-28
DE112016001831B4 true DE112016001831B4 (de) 2019-09-19

Family

ID=56292403

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016001831.2T Expired - Fee Related DE112016001831B4 (de) 2015-05-21 2016-05-21 Verfahren und Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks

Country Status (9)

Country Link
US (1) US10730186B2 (de)
EP (1) EP3297794B1 (de)
JP (1) JP6659730B2 (de)
KR (1) KR102034652B1 (de)
CN (1) CN107645980B (de)
DE (1) DE112016001831B4 (de)
DK (1) DK3297794T3 (de)
SG (1) SG11201709621TA (de)
WO (1) WO2016184451A1 (de)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019124720B3 (de) * 2019-09-13 2020-12-03 Franka Emika Gmbh Online Konformitätsanalyse und Konformitätskennzeichnung für Roboter
DE102019214009B3 (de) * 2019-09-13 2020-12-10 Kuka Deutschland Gmbh Analyse von Sensormessdaten eines Roboters oder Manipulators
DE102019127260A1 (de) * 2019-10-10 2021-04-15 Franka Emika Gmbh Reibungskompensation für einen Greifer eines Robotermanipulators
DE102019128082A1 (de) * 2019-10-17 2021-04-22 Franka Emika Gmbh Drehmomentbegrenztes Bremsen eines Robotermanipulators
DE102020205265A1 (de) 2020-04-27 2021-10-28 Kuka Deutschland Gmbh Detektieren von Störungen in Roboteranordnungen
DE102020205379A1 (de) 2020-04-28 2021-10-28 Kuka Deutschland Gmbh Verfahren zum Erfassen und Auswerten eines Reibungszustands an einem Gelenk, Roboterarm und Computerprogrammprodukt
DE102020127532B3 (de) 2020-10-20 2021-11-11 Deutsches Zentrum für Luft- und Raumfahrt e.V. Regelungsverfahren zum Regeln des Drehmoments und/oder der Position mindestens eines elastizitätsbehafteten Gelenks einer Handhabungsvorrichtung, Drehmomentregler, Positionsregler und Verwendung des Verfahrens zur Regelung der Position und/oder des Drehmoments mindestens eines elastizitätsbehafteten Gelenks einer Handhabungsvorrichtung
DE102021212128B3 (de) 2021-10-27 2023-02-02 Kuka Deutschland Gmbh 16Verfahren und System zum Steuern eines lasttragenden Roboters sowie zum Ermitteln eines Parameters der Last des Roboters
DE102022105335A1 (de) 2022-03-08 2023-09-14 Schaeffler Technologies AG & Co. KG Verfahren zum bestimmen eines drehmoments
DE102022123243B3 (de) 2022-09-13 2024-03-14 Schaeffler Technologies AG & Co. KG Künstliche Intelligenz zur präzisen Bestimmung von Ausgangsdrehmomenten kollaborativer Roboter

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107710082B (zh) * 2015-09-29 2021-01-26 宝马股份公司 用于控制和/或调节机器人系统的外部控制系统的自动配置方法
JP6457473B2 (ja) * 2016-12-16 2019-01-23 ファナック株式会社 ロボットおよびレーザスキャナの動作を学習する機械学習装置,ロボットシステムおよび機械学習方法
US11351680B1 (en) 2017-03-01 2022-06-07 Knowledge Initiatives LLC Systems and methods for enhancing robot/human cooperation and shared responsibility
EP3418007A1 (de) * 2017-06-19 2018-12-26 ABB Schweiz AG Verfahren zur bestimmung eines gelenkmoments in einem gelenk eines gelenkigen industrieroboters
JP7021895B2 (ja) * 2017-10-03 2022-02-17 川崎重工業株式会社 異常の生じた部位の推定方法及び異常の生じた部位の推定を行わせるプログラム
JP6950612B2 (ja) * 2018-03-30 2021-10-13 オムロン株式会社 センサ、情報処理装置、センサ制御方法、情報処理方法、プログラム、および記録媒体
KR102114068B1 (ko) * 2018-04-19 2020-05-25 한국과학기술연구원 계산 토크 방식 제어기, 이의 파라미터 결정 및 성능 평가 방법
CN108908345B (zh) * 2018-08-31 2023-07-14 上海大学 一种欠驱动灵巧手传动系统状态感知系统
KR20200044206A (ko) 2018-10-10 2020-04-29 삼성전자주식회사 전자 장치 및 이의 제어 방법
CN109490776B (zh) * 2018-11-06 2020-10-02 杭州君谋科技有限公司 一种基于机器学习的手机振动马达良次品检测方法
DE102018133349A1 (de) * 2018-12-21 2020-06-25 Pilz Gmbh & Co. Kg Verfahren und Vorrichtung zur Momentschätzung
EP3902658A4 (de) * 2018-12-24 2022-10-19 ABB Schweiz AG Verfahren zur diagnose eines roboters, vorrichtung und server
JP7358049B2 (ja) * 2019-01-11 2023-10-10 キヤノン株式会社 制御方法、プログラム、記録媒体、ロボットシステム、および物品の製造方法
US11865714B2 (en) 2019-02-17 2024-01-09 Samsung Electronics Co., Ltd. Robotic limb
CN109978059B (zh) * 2019-03-28 2024-02-23 南京富岛信息工程有限公司 一种原油蒸馏过程初馏塔冲塔故障预警方法
EP3747604B1 (de) * 2019-06-07 2022-01-26 Robert Bosch GmbH Robotervorrichtungssteuergerät, robotervorrichtungsanordnung und verfahren zur steuerung einer robotervorrichtung
KR102254934B1 (ko) * 2019-07-30 2021-05-25 한국생산기술연구원 로봇 관절부 고장진단 방법 및 이를 적용한 로봇 관절부 고장 진단 시스템
WO2021045352A1 (en) * 2019-09-03 2021-03-11 Samsung Electronics Co., Ltd. Robotic limb
CN110733043A (zh) * 2019-11-22 2020-01-31 江苏方时远略科技咨询有限公司 一种机器人运行状态监测与切换的方法
KR102278744B1 (ko) * 2019-12-03 2021-07-20 주식회사 큐엔티 로봇의 이상 상태에 대한 알람을 출력하는 방법 및 장치
TWI764377B (zh) * 2020-11-16 2022-05-11 達明機器人股份有限公司 機器人安全補償重量的系統及方法
TWI805978B (zh) * 2020-12-22 2023-06-21 達明機器人股份有限公司 雙迴路力矩感知系統及其感知方法
CN113609637B (zh) * 2021-06-24 2023-10-27 国网浙江杭州市余杭区供电有限公司 一种考虑故障连锁的多灾害配电网弹性评估方法
WO2023060423A1 (en) * 2021-10-12 2023-04-20 Shanghai Flexiv Robotics Technology Co., Ltd. Safety system, joint assembly with safety system, and robot having joint assembly
CN114035550B (zh) * 2021-11-15 2023-11-21 江苏科技大学 一种基于eso的自主式水下机器人执行机构故障诊断方法
CN113954078B (zh) * 2021-11-17 2023-02-24 深圳市优必选科技股份有限公司 力控关节控制方法、装置、机器人和可读存储介质
CN114571470B (zh) * 2022-05-05 2022-07-12 季华实验室 一种补偿结果优化方法、装置、电子设备和存储介质
DE102022116969A1 (de) * 2022-07-07 2024-01-18 Schaeffler Technologies AG & Co. KG Verfahren zur dynamischen Erkennung von Ratcheting bei einem kollaborativen Roboter mittels Künstlicher Intelligenz und dynamischer Kompensation der Trajektorien
DE102022128423B3 (de) * 2022-10-27 2023-12-28 Schaeffler Technologies AG & Co. KG Verfahren und ein Antriebsmodul zur Detektion, Quantifikation und Kompensation einer Eingriffsstörung eines Spannungswellengetriebes
CN116107219B (zh) * 2023-04-11 2023-06-30 珞石(北京)科技有限公司 一种基于模型的有约束的增量预测状态空间控制方法
CN116533253B (zh) * 2023-07-03 2023-09-19 佛山智能装备技术研究院 一种基于反馈电流频谱分析的工业机器人故障诊断方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004026185A1 (de) 2004-05-28 2005-12-22 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Betreiben einer Maschine, wie eines Mehrachs- Industrieroboters
DE102008054312A1 (de) 2008-11-03 2010-05-06 Kuka Roboter Gmbh Verfahren und Vorrichtung zur sicheren Erfassung einer kinematischen Größe eines Manipulators
US8036776B2 (en) 2005-11-16 2011-10-11 Abb Ab Method and device for controlling motion of an industrial robot with a position switch
US20130245825A1 (en) 2010-09-28 2013-09-19 C.N.R. Consiglio Nazionale Ricerche Safety device for the safe use of industrial apparatuses and robots, and control method for realtime verification of the kinematic state values of a robotized apparatus
US20140067124A1 (en) 2012-08-28 2014-03-06 Matthew Murray Williamson Monitoring robot sensor consistency
DE102013016019B3 (de) 2013-09-25 2015-03-19 Festo Ag & Co. Kg Verfahren zum Betreiben eines mehrgliedrigen Manipulators

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09297614A (ja) 1996-04-30 1997-11-18 Kawasaki Steel Corp 電動機のトルク異常監視方法およびその異常処理方法
TR199600527A2 (xx) * 1996-06-24 1998-01-21 Ar�El�K A.�. Elektrik motorlar� i�in model bazl� hata tespit ve te�his sistemi.
JP4134369B2 (ja) * 1998-02-09 2008-08-20 株式会社安川電機 ロボットの制御装置
JP4305323B2 (ja) * 2004-08-11 2009-07-29 ソニー株式会社 ロボット装置の動作制御装置及び動作制御方法
DE102004056861A1 (de) * 2004-11-25 2006-06-08 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Regeln, Steuern von Manipulatoren
US9104650B2 (en) * 2005-07-11 2015-08-11 Brooks Automation, Inc. Intelligent condition monitoring and fault diagnostic system for preventative maintenance
KR101322434B1 (ko) * 2005-07-11 2013-10-28 브룩스 오토메이션 인코퍼레이티드 지능형 상태 감시 및 결함 진단 시스템
JP2007301680A (ja) * 2006-05-11 2007-11-22 Nachi Fujikoshi Corp ロボットアーム診断装置
EP1932629B1 (de) * 2006-12-11 2019-04-24 ABB Research Ltd. Verfahren und Steuersystem zur Überwachung des Zustands eines Industrieroboters
JP5149416B2 (ja) * 2011-04-06 2013-02-20 ファナック株式会社 ロボットの異常検出機能を有するロボットシステム及びその制御方法
CN102831919A (zh) 2011-06-15 2012-12-19 鸿富锦精密工业(深圳)有限公司 固态硬盘及支持所述固态硬盘的主板
JP5924107B2 (ja) 2012-05-09 2016-05-25 セイコーエプソン株式会社 ロボットハンド、およびロボット
EP2977150B1 (de) 2013-03-18 2017-06-28 Olympus Corporation Manipulator

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004026185A1 (de) 2004-05-28 2005-12-22 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Betreiben einer Maschine, wie eines Mehrachs- Industrieroboters
US8036776B2 (en) 2005-11-16 2011-10-11 Abb Ab Method and device for controlling motion of an industrial robot with a position switch
DE102008054312A1 (de) 2008-11-03 2010-05-06 Kuka Roboter Gmbh Verfahren und Vorrichtung zur sicheren Erfassung einer kinematischen Größe eines Manipulators
US20130245825A1 (en) 2010-09-28 2013-09-19 C.N.R. Consiglio Nazionale Ricerche Safety device for the safe use of industrial apparatuses and robots, and control method for realtime verification of the kinematic state values of a robotized apparatus
US20140067124A1 (en) 2012-08-28 2014-03-06 Matthew Murray Williamson Monitoring robot sensor consistency
DE102013016019B3 (de) 2013-09-25 2015-03-19 Festo Ag & Co. Kg Verfahren zum Betreiben eines mehrgliedrigen Manipulators

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019214009B3 (de) * 2019-09-13 2020-12-10 Kuka Deutschland Gmbh Analyse von Sensormessdaten eines Roboters oder Manipulators
DE102019124720B3 (de) * 2019-09-13 2020-12-03 Franka Emika Gmbh Online Konformitätsanalyse und Konformitätskennzeichnung für Roboter
DE102019127260A1 (de) * 2019-10-10 2021-04-15 Franka Emika Gmbh Reibungskompensation für einen Greifer eines Robotermanipulators
DE102019127260B4 (de) 2019-10-10 2022-03-10 Franka Emika Gmbh Reibungskompensation für einen Greifer eines Robotermanipulators
DE102019128082B4 (de) 2019-10-17 2022-03-10 Franka Emika Gmbh Drehmomentbegrenztes Bremsen eines Robotermanipulators
DE102019128082A1 (de) * 2019-10-17 2021-04-22 Franka Emika Gmbh Drehmomentbegrenztes Bremsen eines Robotermanipulators
DE102020205265A1 (de) 2020-04-27 2021-10-28 Kuka Deutschland Gmbh Detektieren von Störungen in Roboteranordnungen
DE102020205379A1 (de) 2020-04-28 2021-10-28 Kuka Deutschland Gmbh Verfahren zum Erfassen und Auswerten eines Reibungszustands an einem Gelenk, Roboterarm und Computerprogrammprodukt
DE102020127532B3 (de) 2020-10-20 2021-11-11 Deutsches Zentrum für Luft- und Raumfahrt e.V. Regelungsverfahren zum Regeln des Drehmoments und/oder der Position mindestens eines elastizitätsbehafteten Gelenks einer Handhabungsvorrichtung, Drehmomentregler, Positionsregler und Verwendung des Verfahrens zur Regelung der Position und/oder des Drehmoments mindestens eines elastizitätsbehafteten Gelenks einer Handhabungsvorrichtung
DE102021212128B3 (de) 2021-10-27 2023-02-02 Kuka Deutschland Gmbh 16Verfahren und System zum Steuern eines lasttragenden Roboters sowie zum Ermitteln eines Parameters der Last des Roboters
DE102021212128B8 (de) 2021-10-27 2023-04-06 Kuka Deutschland Gmbh Verfahren und System zum Steuern eines lasttragenden Roboters sowie zum Ermitteln eines Parameters der Last des Roboters
DE102022105335A1 (de) 2022-03-08 2023-09-14 Schaeffler Technologies AG & Co. KG Verfahren zum bestimmen eines drehmoments
DE102022123243B3 (de) 2022-09-13 2024-03-14 Schaeffler Technologies AG & Co. KG Künstliche Intelligenz zur präzisen Bestimmung von Ausgangsdrehmomenten kollaborativer Roboter

Also Published As

Publication number Publication date
US20180169864A1 (en) 2018-06-21
JP6659730B2 (ja) 2020-03-04
CN107645980A (zh) 2018-01-30
EP3297794B1 (de) 2021-12-01
DK3297794T3 (da) 2022-02-21
SG11201709621TA (en) 2017-12-28
WO2016184451A1 (de) 2016-11-24
CN107645980B (zh) 2021-01-15
DE112016001831A5 (de) 2017-12-28
EP3297794A1 (de) 2018-03-28
KR102034652B1 (ko) 2019-10-21
KR20180010220A (ko) 2018-01-30
JP2018524185A (ja) 2018-08-30
US10730186B2 (en) 2020-08-04

Similar Documents

Publication Publication Date Title
DE112016001831B4 (de) Verfahren und Vorrichtung zur Steuerung/Regelung eines aktorisch angetriebenen Robotergelenks
EP1445075B1 (de) Verfahren zum Überwachen eines Roboters und Roboter mit einer Überwachungseinrichtung
DE102004030685B4 (de) Verfahren zur Fehlererkennung in einem Steer-by-wire-Lenksystem
DE102010044644B4 (de) Verfahren zur Kollisionserkennung für eine Antriebseinheit
DE102015224641A1 (de) Verfahren zum Erkennen einer Kollision eines Roboterarms mit einem Objekt und Roboter mit einem Roboterarm
DE112017002300T5 (de) Anomaliefeststellungsvorrichtung und Anomaliefeststellungsverfahren
DE102012006629A1 (de) Robotersystem mit Fehlererfassungsfunktion des Roboters und Steuerverfahren hierfür
DE102015108010B3 (de) Steuern und Regeln von Aktoren eines Roboters unter Berücksichtigung von Umgebungskontakten
DE102015002764A1 (de) Robotersteuerung mit detektion eines kontaktes im externen umfeld
DE102009061036A1 (de) Einrichtung und Verfahren zur Residuenauswertung eines Residuums zur Erkennung von Systemfehlern im Systemverhalten eines Systems eines Flugzeugs
DE102010048369A1 (de) Verfahren und Vorrichtung zur Sicherheitsüberwachung eines Manipulators
DE102013013875A1 (de) Verfahren zum Steuern eines Roboters
EP3397431B1 (de) Roboter und verfahren zum betreiben eines roboters
WO2011012541A1 (de) Verfahren und vorrichtung zum fehlersicheren überwachen einer bewegungsgrösse an einem elektrischen antrieb
DE112008003195T5 (de) Elektrischer Schaltkreis mit einem physikalischen Übertragungsschicht-Diagnosesystem
DE102020001991A1 (de) Bremseninspektionsvorrichtung und numerische Steuervorrichtung für die Bremseninspektion
EP3546314A1 (de) Verfahren und vorrichtung zur fehleridentifizierung für ein technisches system
DE102015009892A1 (de) Verfahren und System zum Steuern eines Roboters
WO2015113884A1 (de) Vorrichtung sowie verfahren zur fehlererkennung in maschinen
EP2126536A1 (de) Vorrichtung und verfahren für einen funktionstest einer bremse
DE102020130498A1 (de) Detektion von strommessungsverstärkungsfehlern in synchronmotorantrieben
EP3582050A1 (de) Verfahren zum analysieren einer ursache mindestens einer abweichung
DE102021208279B4 (de) Integration einer Risikobeurteilung einer Kollision zwischen einem robotischen Gerät und einer menschlichen Bedienperson
DE102016206041A1 (de) Verfahren zur Erkennung einer Fehlanwendung eines Montagewerkzeugs
DE102013009813B4 (de) Verfahren und System zur Detektion und ldentifikation eines vollständigen Verlusts der Steuerwirksamkeit einer Stellfläche in einem Flugsteuerungssystem eines Luftfahrzeugs

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: ROESLER-RASCH-VAN DER HEIDE & PARTNER PATENT- , DE

Representative=s name: ROESLER - RASCH - VAN DER HEIDE & PARTNER PATE, DE

R012 Request for examination validly filed
R082 Change of representative

Representative=s name: ROESLER-RASCH-VAN DER HEIDE & PARTNER PATENT- , DE

Representative=s name: ROESLER - RASCH - VAN DER HEIDE & PARTNER PATE, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee