DE102024201928A1 - Method for error and/or anomaly detection in a handling or manipulation task of an industrial robot - Google Patents
Method for error and/or anomaly detection in a handling or manipulation task of an industrial robot Download PDFInfo
- Publication number
- DE102024201928A1 DE102024201928A1 DE102024201928.3A DE102024201928A DE102024201928A1 DE 102024201928 A1 DE102024201928 A1 DE 102024201928A1 DE 102024201928 A DE102024201928 A DE 102024201928A DE 102024201928 A1 DE102024201928 A1 DE 102024201928A1
- Authority
- DE
- Germany
- Prior art keywords
- torque
- industrial robot
- determining data
- data
- decision
- 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.)
- Withdrawn
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2433—Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C3/00—Registering or indicating the condition or the working of machines or other apparatus, other than vehicles
- G07C3/08—Registering or indicating the production of the machine either with or without registering working or idle time
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Numerical Control (AREA)
Abstract
Die vorliegende Erfindung betrifft ein Verfahren zur Fehler- und/oder Anomalieerkennung. Zur Lösung der Aufgabe, ein Verfahren zur Fehler- und/oder Anomalieerkennung bereitzustellen, welches die Nachteile des Stands der Technik beseitigt und insbesondere eine hohe Präzision bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters erlaubt, umfasst das Verfahren ein Erhalten von ersten drehmomentbestimmenden Daten (D1) für ein erstes Gelenk (G1) und zweiten drehmomentbestimmenden Daten (D2) für ein zweites Gelenk (G2) eines Industrieroboters (1), und ein Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters (1) vorliegt, basierend auf den ersten drehmomentbestimmenden Daten (D1) und den zweiten drehmomentbestimmenden Daten (D2). Des Weiteren betrifft die Erfindung eine Vorrichtung umfassend Mittel zur Ausführung des erfindungsgemäßen Verfahrens, ein System umfassend einen Industrieroboter (1) mit mindestens einem ersten Gelenk (G1) und einem zweiten Gelenk (G2), und Mittel zur Ausführung des erfindungsgemäßen Verfahrens zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe des Industrieroboters (1), ein Computerprogrammprodukt umfassend Programmanweisungen, um das erfindungsgemäße Verfahren auszuführen und/oder zu steuern, wenn das Programm auf einem Prozessor (201) ausgeführt wird, und ein computerlesbares Speichermedium (209, 210, 211, 212, 213, 214, 215) umfassend ein erfindungsgemäßes Computerprogrammprodukt. The present invention relates to a method for error and/or anomaly detection. To achieve the object of providing a method for error and/or anomaly detection which eliminates the disadvantages of the prior art and in particular allows high precision in a handling or manipulation task of an industrial robot, the method comprises obtaining first torque-determining data (D1) for a first joint (G1) and second torque-determining data (D2) for a second joint (G2) of an industrial robot (1), and determining whether an error or an anomaly is present in the handling or manipulation task of the industrial robot (1) based on the first torque-determining data (D1) and the second torque-determining data (D2). Furthermore, the invention relates to a device comprising means for carrying out the method according to the invention, a system comprising an industrial robot (1) with at least a first joint (G1) and a second joint (G2), and means for carrying out the method according to the invention for error and/or anomaly detection in a handling or manipulation task of the industrial robot (1), a computer program product comprising program instructions for carrying out and/or controlling the method according to the invention when the program is executed on a processor (201), and a computer-readable storage medium (209, 210, 211, 212, 213, 214, 215) comprising a computer program product according to the invention.
Description
Die vorliegende Erfindung betrifft ein Verfahren zur Fehler- und/oder Anomalieerkennung. Des Weiteren betrifft die Erfindung eine Vorrichtung umfassend Mittel zur Ausführung des erfindungsgemäßen Verfahrens, ein System umfassend einen Industrieroboter mit mindestens einem ersten Gelenk und einem zweiten Gelenk, und Mittel zur Ausführung des erfindungsgemäßen Verfahrens, ein Computerprogrammprodukt umfassend Programmanweisungen, um das erfindungsgemäße Verfahren auszuführen und/oder zu steuern, wenn das Programm auf einem Prozessor ausgeführt wird, und ein computerlesbares Speichermedium umfassend ein erfindungsgemäßes Computerprogrammprodukt.The present invention relates to a method for error and/or anomaly detection. Furthermore, the invention relates to a device comprising means for carrying out the method according to the invention, a system comprising an industrial robot with at least a first joint and a second joint, and means for carrying out the method according to the invention, a computer program product comprising program instructions for carrying out and/or controlling the method according to the invention when the program is executed on a processor, and a computer-readable storage medium comprising a computer program product according to the invention.
Verfahren zur Fehler- und/oder Anomalieerkennung sind insbesondere aus den Bereichen der Kollisionsüberwachung und des Condition Monitorings für Industrieroboter bekannt. Im Rahmen der Kollisionsüberwachung werden externe Kräfte und Momente für Bewegungen von Robotern ermittelt und bewertet, um Kollisionen mit Menschen und Objekten zu vermeiden. Übersteigen die externen Kräfte und Momente beispielsweise einen bestimmten Grenzwert, wird eine potenzielle Kollision detektiert und reaktive Maßnahmen werden eingeleitet. Auch im Rahmen des Condition Monitorings spielen Verfahren zur Fehler- und/oder Anomalieerkennung eine große Rolle. Mit Hilfe der derartiger Verfahren sollen Verschlechterungen und Ausfälle von Robotern und deren Komponenten rechtzeitig erkannt werden. Schließlich kann ein unvorhergesehenes Versagen eines einzigen Roboters den Betrieb einer gesamten Produktionslinie unterbrechen, was zu erheblichen Ausfallzeiten und wirtschaftlichen und produktionstechnischen Verlusten führen kann.Methods for error and/or anomaly detection are particularly well known in the areas of collision monitoring and condition monitoring for industrial robots. As part of collision monitoring, external forces and moments for robot movements are determined and evaluated in order to avoid collisions with people and objects. If the external forces and moments exceed a certain limit, for example, a potential collision is detected and reactive measures are initiated. Methods for error and/or anomaly detection also play a major role in condition monitoring. With the help of such methods, deterioration and failures of robots and their components are to be detected in good time. After all, an unforeseen failure of a single robot can interrupt the operation of an entire production line, which can lead to considerable downtime and economic and production losses.
Im Bereich der Robotik spielen insbesondere Handhabungs- und Manipulationsaufgaben eine wichtige Rolle. So werden beispielsweise in der Halbleitertechnologie durch das größere Gewicht von optischen Elementen für Anlagen der Halbleitertechnologie und eine zunehmende Automatisierung in der Fertigung immer häufiger Robotersysteme zur Handhabung optischer Elemente oder anderer Komponenten für Anlagen der Halbleitertechnologie verwendet. Insbesondere bei robotergestützten Handhabungsaufgaben von Objekten mit derart hohen Genauigkeitsanforderungen ist es dabei schwierig, trotz auftretendem Komponentenverschleiß, Lasteinflüssen und anderen externen Faktoren eine einwandfreie Aufgabenerfüllung zu gewährleisten. Daher ist eine genaue Überwachung der aktuellen Ausführung von Handhabungsaufgaben wie Pick-and-Place-, Füge- und Montageprozessen oder Peg-in-Hole-Aufgaben notwendig.In the field of robotics, handling and manipulation tasks in particular play an important role. For example, in semiconductor technology, robot systems are increasingly being used to handle optical elements or other components for semiconductor technology systems due to the greater weight of optical elements for semiconductor technology systems and increasing automation in production. In particular, with robot-assisted handling tasks of objects with such high accuracy requirements, it is difficult to guarantee flawless task fulfillment despite component wear, load influences and other external factors. Therefore, precise monitoring of the current execution of handling tasks such as pick-and-place, joining and assembly processes or peg-in-hole tasks is necessary.
Aus dem Stand der Technik bekannte Verfahren zur Fehler- und/oder Anomalieerkennung haben jedoch in der Regel eine zu geringe Präzision, die speziell in sicherheitskritischen Anwendungen oder im automatisierten Betrieb für Handhabungs- und Manipulationsaufgaben in der Halbleitertechnologie nicht ausreicht. Zur Erhöhung der Präzision wurde beispielsweise für Verfahren des Condition Monitorings in der Vergangenheit versucht, eine Vielzahl von verschiedenen Signaltypen bei der Fehler- und/oder Anomalieerkennung miteinzubeziehen, was jedoch mit einem erhöhten Rechenaufwand einhergeht, eine manuelle Grenzwertsetzung erfordern kann und sich insbesondere nicht ohne Weiteres auf Handhabungs- und Manipulationsaufgaben für Industrieroboter übertragen lässt. Darüber hinaus basieren bekannte Verfahren regelmäßig auf Clustering-Ansätzen wie dem Gaussian-Mixture-Model oder k-Means Clustering, die nicht gut online anwendbar sind und bei denen die Anzahl der Cluster bestenfalls vorab bekannt sein muss. Zudem bieten diese Modelle eine schlechte Nachvollziehbarkeit der getroffenen Entscheidungen und eignen sich daher nur schlecht für sicherheitskritische Anwendungen.However, methods known from the state of the art for error and/or anomaly detection usually have too little precision, which is not sufficient, especially in safety-critical applications or in automated operation for handling and manipulation tasks in semiconductor technology. In order to increase precision, for example, attempts have been made in the past for condition monitoring methods to include a large number of different signal types in error and/or anomaly detection, but this is associated with increased computational effort, may require manual limit setting and, in particular, cannot be easily transferred to handling and manipulation tasks for industrial robots. In addition, known methods are regularly based on clustering approaches such as the Gaussian mixture model or k-means clustering, which are not easy to use online and for which the number of clusters must at best be known in advance. In addition, these models offer poor traceability of the decisions made and are therefore not suitable for safety-critical applications.
Vor diesem Hintergrund liegt der vorliegenden Erfindung die Aufgabe zugrunde, ein Verfahren zur Fehler- und/oder Anomalieerkennung bereitzustellen, welches die oben beschriebenen Nachteile des Stands der Technik beseitigt und insbesondere eine hohe Präzision bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters erlaubt. Darüber hinaus solle eine vorteilhafte Vorrichtung, ein vorteilhaftes System, ein vorteilhaftes Computerprogrammprodukt und ein vorteilhaftes computerlesbares Speichermedium bereitgestellt werden.Against this background, the present invention is based on the object of providing a method for error and/or anomaly detection which eliminates the disadvantages of the prior art described above and in particular allows a high level of precision in a handling or manipulation task of an industrial robot. In addition, an advantageous device, an advantageous system, an advantageous computer program product and an advantageous computer-readable storage medium should be provided.
Die zuvor genannte Aufgabe wird gelöst durch ein Verfahren zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters, das Verfahren umfassend:
- - Erhalten von ersten drehmomentbestimmenden Daten für ein erstes Gelenk und zweiten drehmomentbestimmenden Daten für ein zweites Gelenk des Industrieroboters, und
- - Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, basierend auf den ersten drehmomentbestimmenden Daten und den zweiten drehmomentbestimmenden Daten.
- - Obtaining first torque-determining data for a first joint and second torque-determining data for a second joint of the industrial robot, and
- - Determining whether there is an error or abnormality in the handling or manipulation task of the industrial robot based on the first torque-determining data and the second torque-determining data.
Bei dem Verfahren handelt es sich insbesondere um ein computerimplementiertes Verfahren. Das Verfahren erlaubt insbesondere eine Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters ohne zusätzliche Sensorik. Vielmehr erfolgt das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, basierend auf den drehmomentbestimmenden Daten des Industrieroboters.The method is in particular a computer-implemented method. The method in particular allows error and/or anomaly detection in a handling or manipulation task of an industrial robot without additional sensors. Rather, the determination of whether an error or anomaly is present in the handling or manipulation task of the industrial robot is made based on the torque-determining data of the industrial robot.
Das Verfahren ist grundsätzlich für Industrieroboter mit mindestens zwei Gelenken anwendbar. Bei einem Industrieroboter mit lediglich zwei Gelenken handelt es sich um einen Industrieroboter mit zwei Freiheitgraden (degrees of freedom, DOF), also einen 2-DOF-Industrieroboter. Das Verfahren ist n-DOF-Industrieroboter mit n Gelenken anwendbar, wobei n mindestens zwei ist. So kann das Verfahren beispielsweise auch für einen 6-DOF-Industrieroboter mit sechs Gelenken angewandt werden.The method is generally applicable to industrial robots with at least two joints. An industrial robot with only two joints is an industrial robot with two degrees of freedom (DOF), i.e. a 2-DOF industrial robot. The method is applicable to n-DOF industrial robots with n joints, where n is at least two. For example, the method can also be used for a 6-DOF industrial robot with six joints.
Der Industrieroboter ist insbesondere zur Durchführung einer Handhabungs- oder Manipulationsaufgabe geeignet. Bei einer Handhabungs- oder Manipulationsaufgabe kann es sich beispielsweise um eine Montage oder Demontage eines Bauteils in einer Anlage, insbesondere einer Maschine, handeln. Handhabungs- oder Manipulationsaufgaben können Pick-and-Place-, Füge- und Montage- oder Peg-in-Hole-Aufgaben umfassen.The industrial robot is particularly suitable for carrying out a handling or manipulation task. A handling or manipulation task can, for example, involve assembling or disassembling a component in a system, in particular a machine. Handling or manipulation tasks can include pick-and-place, joining and assembly or peg-in-hole tasks.
Das Verfahren ist insbesondere zur Fehler- und/oder Anomalieerkennung während einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters geeignet. Unter einer Anomalie kann dabei eine Abweichung bei der Durchführung einer Handhabungs- oder Manipulationsaufgabe verstanden werden. Anomalien können in verschiedenen Arten vorliegen, so kann es sich beispielsweise um eine punktuelle Anomalie, eine kontextuelle Anomalie oder eine kollektive Anomalie handeln. Ein Fehler meint insbesondere eine Abweichung, die zu einem zumindest teilweisen Misslingen der Handhabungs- oder Manipulationsaufgabe führt.The method is particularly suitable for error and/or anomaly detection during a handling or manipulation task of an industrial robot. An anomaly can be understood as a deviation when carrying out a handling or manipulation task. Anomalies can exist in various types, for example a point anomaly, a contextual anomaly or a collective anomaly. An error means in particular a deviation that leads to at least partial failure of the handling or manipulation task.
Das Verfahren umfasst ein Erhalten von ersten drehmomentbestimmenden Daten für ein erstes Gelenk und zweiten drehmomentbestimmenden Daten für ein zweites Gelenk des Industrieroboters. Insbesondere umfasst das Verfahren ein Erhalten von n drehmomentbestimmenden Daten für n Gelenke eines n-DOF-Industrieroboters. Das Verfahren kann beispielsweise ein Erhalten von ersten drehmomentbestimmenden Daten für ein erstes Gelenk, zweiten drehmomentbestimmenden Daten für ein zweites Gelenk, dritten drehmomentbestimmenden Daten für ein drittes Gelenk, vierten drehmomentbestimmenden Daten für ein viertes Gelenk, fünften drehmomentbestimmenden Daten für ein fünftes Gelenk und sechsten drehmomentbestimmenden Daten für ein sechstes Gelenk eines 6-DOF-Industrieroboters umfassen. Insbesondere werden für alle Gelenke eines Industrieroboters jeweils drehmomentbestimmende Daten erhalten. Die drehmomentbestimmenden Daten werden insbesondere an den einzelnen Gelenken erfasst und bevorzugt gespeichert.The method comprises obtaining first torque-determining data for a first joint and second torque-determining data for a second joint of the industrial robot. In particular, the method comprises obtaining n torque-determining data for n joints of an n-DOF industrial robot. The method can, for example, comprise obtaining first torque-determining data for a first joint, second torque-determining data for a second joint, third torque-determining data for a third joint, fourth torque-determining data for a fourth joint, fifth torque-determining data for a fifth joint and sixth torque-determining data for a sixth joint of a 6-DOF industrial robot. In particular, torque-determining data is obtained for all joints of an industrial robot. The torque-determining data is recorded in particular at the individual joints and preferably stored.
Das Verfahren umfasst zudem ein Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt. Das Bestimmen erfolgt basierend auf den ersten drehmomentbestimmenden Daten und den zweiten drehmomentbestimmenden Daten. Insbesondere erfolgt das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe eines n-DOF-Industrieroboters vorliegt, basierend auf den erhaltenen n drehmomentbestimmenden Daten für die n Gelenke des n-DOF-Industrieroboters.The method further comprises determining whether there is an error or an abnormality in the handling or manipulation task of the industrial robot. The determination is made based on the first torque-determining data and the second torque-determining data. In particular, the determination is made whether there is an error or an abnormality in the handling or manipulation task of an n-DOF industrial robot based on the obtained n torque-determining data for the n joints of the n-DOF industrial robot.
Vorzugsweise umfasst das Verfahren zur Bestimmung, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, basierend auf den ersten drehmomentbestimmenden Daten und den zweiten drehmomentbestimmenden Daten die Anwendung mindestens eines Machine Learning-Modells. Insbesondere kann das Machine Learning-Modell als Eingabedaten die n drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters erhalten und so eine korrekte oder fehlerhafte Ausführung einer Handhabungs- oder Manipulationsaufgabe des n-DOF-Industrieroboters erkennen. Es wurde festgestellt, dass datenbasierte Modelle insbesondere gegenüber physikalischen Vorteil einer einfachen Konfigurierbarkeit und flexiblen Anpassbarkeit haben.Preferably, the method for determining whether there is an error or an anomaly in the handling or manipulation task of the industrial robot comprises the application of at least one machine learning model based on the first torque-determining data and the second torque-determining data. In particular, the machine learning model can receive the n torque-determining data of the n joints of an n-DOF industrial robot as input data and thus recognize a correct or incorrect execution of a handling or manipulation task of the n-DOF industrial robot. It has been found that data-based models have the advantage of being easy to configure and flexible to adapt, particularly compared to physical models.
Es wurde festgestellt, dass mit Hilfe des erfindungsgemäßen Verfahrens Fehler und/oder Anomalien bei Handhabungs- und Manipulationsaufgaben von Industrierobotern zuverlässig erkannt werden können. Insbesondere hat sich gezeigt, dass eine präzise Fehler- und/oder Anomalieerkennung speziell für das Anwendungsgebiet der Handhabungs- und Manipulationsaufgaben von Industrierobotern bereitgestellt werden kann. Die Accuracy und/oder der AUROC-Wert betragen dabei insbesondere mehr als 96 %, bevorzugt mehr als 98 %, besonders bevorzugt mehr als 99 %.It was found that with the aid of the method according to the invention, errors and/or anomalies in handling and manipulation tasks of industrial robots can be reliably detected. In particular, it has been shown that precise error and/or anomaly detection can be provided specifically for the application area of handling and manipulation tasks of industrial robots. The accuracy and/or the AUROC value are in particular more than 96%, preferably more than 98%, particularly preferably more than 99%.
Gemäß einer vorteilhaften Ausgestaltung des Verfahrens umfassen die ersten drehmomentbestimmenden Daten Kraft-, Drehmoment- und/oder Motorstromdaten bezogen auf das erste Gelenk und die zweiten drehmomentbestimmenden Daten Kraft-, Drehmoment- und/oder Motorstromdaten bezogen auf das zweite Gelenk. Die drehmomentbestimmenden Daten wie Motorstrom, anliegende Kraft oder Drehmoment werden insbesondere an den einzelnen Gelenken des Industrieroboters erfasst und gespeichert. Es wurde erkannt, dass drehmomentbestimmende Daten der einzelnen Gelenke eines Industrieroboters insbesondere Informationen über auftretende externe Drehmomente an dem Tool Center Point (TCP) sowie interne Veränderungen beinhalten und vorteilhaft zur sensorlosen Fehler- und/oder Anomalieerkennung bei Handhabungs- oder Manipulationsaufgaben eines Industrieroboters genutzt werden können. Insbesondere hat sich gezeigt, dass beispielsweise nur Motorstromdaten oder nur Kraftverläufe an den einzelnen Gelenken des Industrieroboters ausreichend sind, um mittels des Verfahrens präzise und verlässlich Fehler- und/oder Anomalien bei Handhabungs- oder Manipulationsaufgaben eines Industrieroboters zu erkennen.According to an advantageous embodiment of the method, the first torque-determining data includes force, torque and/or motor current data related to the first joint and the second torque-determining data includes force, torque and/or motor current data related to the second joint. The torque-determining data such as motor current, applied force or torque are recorded and stored in particular at the individual joints of the industrial robot. It has been recognized that torque-determining data of the individual joints of an industrial robot contain in particular information about external torques occurring at the tool center point (TCP) as well as internal changes and can be advantageously used for sensorless error and/or anomaly detection in handling or manipulation tasks of an industrial robot. In particular, it has been shown that, for example, only motor current data or only force curves at the individual joints of the industrial robot are sufficient to use the method to precisely and reliably detect errors and/or anomalies in handling or manipulation tasks of an industrial robot.
Gemäß einer vorteilhaften Ausgestaltung des Verfahrens umfasst das Verfahren weiter:
- - Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten zu einem fusionierten Datensatz,
- - merging the first torque-determining data and the second torque-determining data into a fused data set,
Insbesondere umfasst das Verfahren ein Fusionieren von drehmomentbestimmenden Daten für alle n Gelenke eines n-DOF-Industrieroboters zu einem fusionierten Datensatz, wobei das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des n-DOF-Industrieroboters vorliegt, basierend auf dem fusionierten Datensatz erfolgt. Durch das Fusionieren der drehmomentbestimmenden Daten werden die drehmomentbestimmenden Daten der verschiedenen Gelenke des Industrieroboters in einem fusionierten Datensatz zusammengefasst. Auf diese Weise kann ein konsistenter, präziser und verlässlicher Datensatz erhalten werden.In particular, the method comprises fusing torque-determining data for all n joints of an n-DOF industrial robot into a fused data set, wherein determining whether there is an error or an abnormality in the handling or manipulation task of the n-DOF industrial robot is carried out based on the fused data set. By fusing the torque-determining data, the torque-determining data of the various joints of the industrial robot are summarized in a fused data set. In this way, a consistent, precise and reliable data set can be obtained.
Das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters, zu einem fusionierten Datensatz umfasst vorzugsweise ein Aufbereiten der ersten und/oder der zweiten drehmomentbestimmenden Daten vor dem Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten umfassen. Insbesondere umfasst das Verfahren ein Aufbereiten zumindest eines Teils der drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters vor dem Fusionieren der drehmomentbestimmenden Daten. Das Aufbereiten kann ein Segmentieren der drehmomentbestimmenden Daten in einzelne Datensequenzen umfassen. Das Aufbereiten der drehmomentbestimmenden Daten kann ein Interpolieren der drehmomentbestimmenden Daten umfassen. Das Aufbereiten der drehmomentbestimmenden Daten kann ein Filtern drehmomentbestimmenden Daten, insbesondere mittels eines Tiefpassfilters, umfassen.The fusion of the first torque-determining data and the second torque-determining data, in particular the torque-determining data of the n joints of an n-DOF industrial robot, to form a fused data set preferably comprises processing the first and/or the second torque-determining data before merging the first torque-determining data and the second torque-determining data. In particular, the method comprises processing at least part of the torque-determining data of the n joints of an n-DOF industrial robot before merging the torque-determining data. The processing can comprise segmenting the torque-determining data into individual data sequences. The processing of the torque-determining data can comprise interpolating the torque-determining data. The processing of the torque-determining data can comprise filtering torque-determining data, in particular by means of a low-pass filter.
Das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters, zu einem fusionierten Datensatz erfolgt vorzugsweise mittels einer Methode der Informationsfusion. Das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters, zu einem fusionierten Datensatz kann beispielsweise ein Fusionieren mittels Signal-Level-Fusion umfassen. Unter Signal-Level-Fusion ist ein Fusionieren der Rohdaten zu einem fusionierten Datensatz zu verstehen. Signal-Level-Fusion eignet sich insbesondere für Echtzeitanwendungen. Nachteilig sind ein hohes Datenvolumen und eine langsame Prozessgeschwindigkeit. Bei der Verwendung von Rohdaten werden die drehmomentbestimmenden Daten für jedes Gelenk vorzugsweise zunächst auf die gleiche Anzahl an Datenpunkten interpoliert und im Anschluss mittels Signal-Level-Fusion zu einem Datensatz zusammengeführt.The fusion of the first torque-determining data and the second torque-determining data, in particular the torque-determining data of the n joints of an n-DOF industrial robot, into a fused data set is preferably carried out using an information fusion method. The fusion of the first torque-determining data and the second torque-determining data, in particular the torque-determining data of the n joints of an n-DOF industrial robot, into a fused data set can, for example, comprise fusion using signal-level fusion. Signal-level fusion is understood to mean fusion of the raw data into a fused data set. Signal-level fusion is particularly suitable for real-time applications. The disadvantages are a high data volume and a slow process speed. When using raw data, the torque-determining data for each joint is preferably first interpolated to the same number of data points and then merged into a data set using signal-level fusion.
Das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters, zu einem fusionierten Datensatz kann ein Fusionieren mittels Signal-Level-Fusion umfassen. Insbesondere kann das Fusionieren unter Anwendung von Feature Extraction und optional Feature Selection erfolgen. Bei der Feature-Level-Fusion werden die drehmomentbestimmenden Daten für die einzelnen Gelenke durch geeignete Normalisierungs-, Transformations- und/oder Reduktionsverfahren zu einem einzigen Merkmalssatz zusammengefasst. Die Extraktion und Selektion von statistischen Kennzahlen (Features) aus Datenreihen hat zum Ziel, redundante oder irrelevante Informationen zu entfernen, die Rechengeschwindigkeit sowie den Speicherbedarf von Machine Learning Modellen zu optimieren und deren Accuracy (Genauigkeit) zu maximieren.The fusion of the first torque-determining data and the second torque-determining data, in particular the torque-determining data of the n joints of an n-DOF industrial robot, to form a fused data set can comprise fusion by means of signal-level fusion. In particular, the fusion can be carried out using feature extraction and optionally feature selection. In feature-level fusion, the torque-determining data for the individual joints are combined into a single feature set using suitable normalization, transformation and/or reduction methods. The extraction and selection of statistical key figures (features) from data series aims to remove redundant or irrelevant information, to reduce the computing speed and to reduce the number of errors. speed and memory requirements of machine learning models and to maximize their accuracy.
Vorzugsweise umfasst das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten:
- - Extrahieren von mindestens einer statistischen Kennzahl aus den ersten drehmomentbestimmenden Daten und den zweiten drehmomentbestimmenden
- - Extracting at least one statistical key figure from the first torque-determining data and the second torque-determining
Daten,
wobei der fusionierte Datensatz die mindestens eine statistische Kennzahl umfasst.Data,
wherein the merged data set comprises the at least one statistical indicator.
Insbesondere umfasst das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten ein Fusionieren unter Anwendung von Feature Extraction. Feature Extraction beschreibt die Transformation der ursprünglichen Eingangsdaten hin zu neuen statistischen Kennzahlen (Features), die vorzugsweise nur die wichtigsten Informationen beinhalten. Ziel dabei ist es, keine Informationen aus den Eingangsdaten zu verlieren, sondern die Informationen in kleinerer Dimension zusammengefasst darzustellen. Dazu kann die mindestens eine statistische Kennzahl aus den Rohdaten extrahiert und die Merkmalspunkte können für n Gelenke verknüpft werden. Insbesondere umfasst das Extrahieren der mindestens einen statistischen Kennzahl ein Extrahieren mindestens einer statistischen Kennzahl, die eine Zeitreihe bewegungsunabhängig beschreibt.In particular, the fusion of the first torque-determining data and the second torque-determining data comprises fusion using feature extraction. Feature extraction describes the transformation of the original input data into new statistical key figures (features), which preferably only contain the most important information. The aim is not to lose any information from the input data, but to present the information in a summarized form in a smaller dimension. For this purpose, the at least one statistical key figure can be extracted from the raw data and the feature points can be linked for n joints. In particular, the extraction of the at least one statistical key figure comprises extracting at least one statistical key figure that describes a time series independently of movement.
Unter einem Extrahieren ist insbesondere ein Berechnen zu verstehen. Das Extrahieren umfasst insbesondere ein Berechnen von mindestens einer statistischen Kennzahl aus den ersten drehmomentbestimmenden Daten für das erste Gelenk und der mindestens einen statistischen Kennzahl aus den zweiten drehmomentbestimmenden Daten für das zweite Gelenk. Insbesondere umfasst das Extrahieren ein Berechnen von mindestens einer statistischen Kennzahl aus den drehmomentbestimmenden Daten für jedes Gelenk des Industrieroboters. Die mindestens eine statistische Kennzahl wird insbesondere aus den jeweiligen drehmomentbestimmenden Daten für jedes Gelenk extrahiert. Extraction is understood to mean calculation in particular. Extraction includes in particular calculating at least one statistical key figure from the first torque-determining data for the first joint and the at least one statistical key figure from the second torque-determining data for the second joint. Extraction includes in particular calculating at least one statistical key figure from the torque-determining data for each joint of the industrial robot. The at least one statistical key figure is extracted in particular from the respective torque-determining data for each joint.
Vorzugsweise ist oder umfasst die mindestens eine statistische Kennzahl eine statistische Kennzahl aus dem Zeitbereich, dem Frequenzbereich und/oder dem Zeit-Frequenzbereich, insbesondere die Katz Fractility DK, den Magnitude Fluctuation Index (MFI) der Hüllkurve des Signals MFI und/oder das Signal-Rausch-Verhältnis (SNR) SNRFeature,Preferably, the at least one statistical key figure is or comprises a statistical key figure from the time domain, the frequency domain and/or the time-frequency domain, in particular the Katz Fractility D K , the Magnitude Fluctuation Index (MFI) of the envelope of the signal MFI and/or the Signal-to-Noise Ratio (SNR) SNR Feature ,
Insbesondere umfasst das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der n drehmomentbestimmenden Daten eines n-DOF-Industrieroboters, ein Extrahieren einer Vielzahl an statistischen Kennzahlen, beispielsweise mindestens fünf, insbesondere mehr als fünf, beispielsweise zehn bis 50, bevorzugt 20 bis 50, weiter bevorzugt 30 bis 40 statistische Kennzahlen, pro Gelenk, die vorzugsweise im Zeit-, Frequenz- und Zeit-Frequenzbereich erhoben werden.In particular, the fusion of the first torque-determining data and the second torque-determining data, in particular the n torque-determining data of an n-DOF industrial robot, comprises extracting a plurality of statistical key figures, for example at least five, in particular more than five, for example ten to 50, preferably 20 to 50, more preferably 30 to 40 statistical key figures, per joint, which are preferably collected in the time, frequency and time-frequency domain.
Die mindestens eine statistische Kennzahl aus den ersten drehmomentbestimmenden Daten und die mindestens einen statistischen Kennzahl aus den zweiten drehmomentbestimmenden Daten, insbesondere die mindestens eine statistische Kennzahl aus den n drehmomentbestimmenden Daten für die n Gelenke des Industrieroboters, werden vorzugsweise zu einem fusionierten Datensatz fusioniert, sodass der fusionierte Datensatz die mindestens eine statistische Kennzahl, insbesondere für jedes Gelenk des Industrieroboters, umfasst. Das Fusionieren kann insbesondere ein Zusammenfassen der statistischen Kennzahlen zu einem Eingabevektor für ein Machine Learning-Modell umfassen.The at least one statistical key figure from the first torque-determining data and the at least one statistical key figure from the second torque-determining data, in particular the at least one statistical key figure from the n torque-determining data for the n joints of the industrial robot, are preferably merged to form a merged data set, so that the merged data set includes the at least one statistical key figure, in particular for each joint of the industrial robot. The merging can in particular include combining the statistical key figures to form an input vector for a machine learning model.
Gemäß einer weiteren vorteilhaften Ausgestaltung des Verfahrens umfasst das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten weiter:
- - Selektieren mindestens einer selektierten statistischen Kennzahl aus der extrahierten mindestens einen statistischen Kennzahl,
- - Selecting at least one selected statistical key figure from the extracted at least one statistical key figure,
Insbesondere umfasst das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten ein Fusionieren unter Anwendung von Feature Selection. Bei der Methode der Feature Selection werden die relevantesten Dimensionen der drehmomentbestimmenden Daten ausgesucht und ein verkleinerter fusionierter Datensatz bereitgestellt. Feature Selection ist daher eine Methode zur Reduzierung der Dimensionalität des Datensatzes. Werden statistische Kennzahlen als relevant eingestuft, so werden diese übernommen, wenn statistische Kennzahlen redundant vorliegen oder irrelevant zur Bestimmung einer Vorhersage sind, werden diese nicht als Eingangsdaten übernommen.In particular, merging the first torque-determining data and the second torque-determining data comprises merging using feature selection. In the method Feature selection is used to select the most relevant dimensions of the torque-determining data and provide a reduced fused data set. Feature selection is therefore a method for reducing the dimensionality of the data set. If statistical indicators are classified as relevant, they are adopted; if statistical indicators are redundant or irrelevant to determining a prediction, they are not adopted as input data.
Es hat sich gezeigt, dass die statistischen Kennzahlen der Signalleistung im Zeitbereich PZeit, der Signalleistung im Frequenzbereich PFrequ, der Katz Fractility DK, des Magnitude Fluctuation Index (MFI) der Hüllkurve des Signals MFI und des Signal-Rausch-Verhältnis (SNR) SNRFeature für das Verfahren zur Fehler und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters besonders geeignet sind.It has been shown that the statistical indicators of the signal power in the time domain P Time , the signal power in the frequency domain P Frequ , the Katz Fractility D K , the Magnitude Fluctuation Index (MFI) of the envelope of the signal MFI and the signal-to-noise ratio (SNR) SNR Feature are particularly suitable for the method for error and/or anomaly detection in a handling or manipulation task of an industrial robot.
Insbesondere umfasst das Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der n drehmomentbestimmenden Daten für die n Gelenke des Industrieroboters, ein Extrahieren einer Vielzahl an statistischen Kennzahlen aus den drehmomentbestimmenden Daten für jedes Gelenk des Industrieroboters, ein Selektieren aus der Mehrzahl der extrahierten statistischen Kennzahlen und ein Fusionieren der selektierten statistischen Kennzahlen zu einem fusionierten Datensatz.In particular, the merging of the first torque-determining data and the second torque-determining data, in particular the n torque-determining data for the n joints of the industrial robot, comprises extracting a plurality of statistical key figures from the torque-determining data for each joint of the industrial robot, selecting from the plurality of extracted statistical key figures and merging the selected statistical key figures into a fused data set.
Gemäß einer weiteren vorteilhaften Ausgestaltung des Verfahrens erfolgt das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, unter Anwendung eines Machine Learning-Modells, insbesondere eines unsupervised Machine Learning-Modells, auf den fusionierten Datensatz. Das Anwenden eines Machine Learning-Modells auf den fusionierten Datensatz erlaubt insbesondere eine Klassifikation der Handhabungs- oder Manipulationsaufgabe des Industrieroboters basierend auf den erhaltenen und fusionierten ersten und zweiten drehmomentbestimmenden Daten, insbesondere der erhaltenen und fusionierten n drehmomentbestimmenden Daten eines n-DOF-Industrieroboters. Mit Hilfe des Machine Learning-Modells kann vorzugsweise zwischen dem Vorliegen und Nichtvorliegen eines Fehlers oder einer Anomalie unterschieden werden.According to a further advantageous embodiment of the method, the determination of whether an error or an anomaly is present in the handling or manipulation task of the industrial robot is carried out by applying a machine learning model, in particular an unsupervised machine learning model, to the fused data set. Applying a machine learning model to the fused data set allows in particular a classification of the handling or manipulation task of the industrial robot based on the obtained and fused first and second torque-determining data, in particular the obtained and fused n torque-determining data of an n-DOF industrial robot. With the help of the machine learning model, a distinction can preferably be made between the presence and absence of an error or anomaly.
Unsupervised Learning meint insbesondere ein Verfahren, bei dem aus einer Datenmenge zuvor unbekannte Zusammenhänge entdeckt werden. Das Machine Learning-Modell lernt dabei autonom, das bedeutet es ist keine Überwachung oder Korrektur durch einen Menschen notwendig. Es hat sich gezeigt, dass die Verwendung eines unsupervised Machine Learning-Modells insbesondere vorteilhaft ist, wenn unbestimmte Trainingsdaten vorliegen, insbesondere eine Zuordnung von Trainingsdaten zu einer Klasse nicht möglich ist. Ein unsupervised Machine Learning-Modell wird in dem Verfahren zur Fehler- und/oder Anomalieerkennung insbesondere eingesetzt, wenn nicht ausreichend fehlerhafte Signale zum Training der Modelle zur Verfügung stehen.Unsupervised learning refers in particular to a process in which previously unknown relationships are discovered from a data set. The machine learning model learns autonomously, which means that no human supervision or correction is necessary. It has been shown that the use of an unsupervised machine learning model is particularly advantageous when there is uncertain training data, in particular when it is not possible to assign training data to a class. An unsupervised machine learning model is used in the process for error and/or anomaly detection in particular when there are not enough faulty signals available to train the models.
Vorzugsweise umfasst das unsupervised Machine Learning-Modell ein One-Class-Klassifizierungsmodell. Als One-Class-Klassifizierungsmodell werden Modelle bezeichnet, die nur mit Daten einer ersten Art, beispielsweise fehlerfreien drehmomentbestimmenden Daten, trainiert werden und im Anschluss Daten einer zweiten Art, insbesondere fehlerhafte drehmomentbestimmende Daten, abgrenzen können.Preferably, the unsupervised machine learning model comprises a one-class classification model. One-class classification models are models that are only trained with data of a first type, for example error-free torque-determining data, and can then differentiate data of a second type, in particular faulty torque-determining data.
Zum Training des Machine Learning-Modells, insbesondere des One-Class-Klassifizierungsmodells, werden erste drehmomentbestimmende Daten für das erste Gelenk und zweite drehmomentbestimmende Daten für das zweite Gelenk, insbesondere n drehmomentbestimmende Daten für n Gelenke eines n-DOF-Industrieroboters, erhalten, wobei die drehmomentbestimmenden Daten vorzugsweise zumindest im Wesentlichen, insbesondere ausschließlich, auf fehlerfreien Bewegungen des Industrieroboters basieren. Insbesondere werden fehlerfreie Referenzsignale der drehmomentbestimmenden Parameter zum Trainieren des Machine Learning-Modells erhalten, die das Spektrum an möglichen drehmomentbestimmenden Daten und die gesamte Bewegung des Industrieroboters bestmöglich abbilden. Zum Training des Machine Learning-Modells kann mittels Signal-Level-Fusion oder Feature-Level-Fusion ein fusionierter Datensatz basierend auf erhaltenen drehmomentbestimmenden Daten für jedes der Gelenke des Industrieroboters erhalten werden, wobei der fusionierte Datensatz als Trainingsdatensatz zum Training des Machine Learning-Modells genutzt wird.To train the machine learning model, in particular the one-class classification model, first torque-determining data for the first joint and second torque-determining data for the second joint, in particular n torque-determining data for n joints of an n-DOF industrial robot, are obtained, wherein the torque-determining data is preferably based at least substantially, in particular exclusively, on error-free movements of the industrial robot. In particular, error-free reference signals of the torque-determining parameters are obtained for training the machine learning model, which best represent the spectrum of possible torque-determining data and the entire movement of the industrial robot. To train the machine learning model, a fused data set based on obtained torque-determining data for each of the joints of the industrial robot can be obtained by means of signal-level fusion or feature-level fusion, wherein the fused data set is used as a training data set for training the machine learning model.
Das trainierte Machine Learning-Modell kann im Anschluss mit einem Testdatensatz basierend auf drehmomentbestimmenden Daten für jedes der Gelenke bei fehlerfreien und fehlerhaften Bewegungen der Gelenke getestet werden, um die Präzision und Verlässlichkeit des Machine Learning-Modells zu beurteilen. Sofern fehlerhafte Signale vorliegen, die zum Testen verwendet werden können, werden diese vorzugsweise eingebracht. Sofern keine fehlerhaften Signale vorliegen, können zum Testen des Machine Learning-Modells manuell veränderte Signale genutzt werden, denen Fehler hinzugefügt wurden, beispielsweise mittels Generative Artificial Intelligence oder durch Hinzufügen von Rauschen oder seriellen Ausreißern.The trained machine learning model can then be tested with a test data set based on torque-determining data for each of the joints during error-free and faulty movements of the joints in order to assess the precision and reliability of the machine learning model. If there are faulty signals that can be used for testing, these are preferably If no faulty signals are present, manually modified signals to which errors have been added, for example using Generative Artificial Intelligence or by adding noise or serial outliers, can be used to test the machine learning model.
Das trainierte und getestete Machine Learning-Modell kann gespeichert und für neue, unbestimmte Bewegungen und/oder drehmomentbestimmende Daten des Industrieroboters angewandt werden. Das Machine Learning-Modell ist insbesondere geeignet, Fehler und/oder Anomalien während Handhabungs- oder Manipulationsaufgaben des Industrieroboters zu bestimmen. Das Machine Learning-Modell ist insbesondere auf jede neue Bewegung eines n-DOF-Industrieroboters flexibel und schnell trainierbar sind. Mit Hilfe der Modells können Anomalien erkannt werden, ohne dass diese zuvor bekannt waren. Insbesondere sind bei dem vorliegenden Verfahren eine manuelle Grenzwertsetzung oder eine Erstellung eines kinematischen und dynamischen Modells des Industrieroboters nicht erforderlich.The trained and tested machine learning model can be saved and applied to new, indeterminate movements and/or torque-determining data of the industrial robot. The machine learning model is particularly suitable for determining errors and/or anomalies during handling or manipulation tasks of the industrial robot. The machine learning model can be trained flexibly and quickly for each new movement of an n-DOF industrial robot. With the help of the model, anomalies can be detected without them being known beforehand. In particular, the present method does not require manual limit setting or the creation of a kinematic and dynamic model of the industrial robot.
Das unsupervised Machine Learning-Modell umfasst insbesondere Local Outlier Factor (LOF), Elliptic Envelope oder One-Class Support-Vector-Machine (OC-SVM). LOF ist ein Algorithmus für maschinelles Lernen, der die Dichte der Datenpunkte in der Verteilung als Schlüsselfaktor zur Erkennung von Ausreißern verwendet. LOF vergleicht die Dichte eines beliebigen Datenpunkts mit der Dichte seiner Nachbarn. Da Ausreißer aus Bereichen mit geringer Dichte stammen, ist das Verhältnis bei anomalen Datenpunkten höher. Das LOF-Modell ist auch bei variierenden Nutzlasten sehr robust und kann aufgrund seiner Funktionsweise für Datensätze mit hoher Varianz eingesetzt werden.The unsupervised machine learning model specifically includes Local Outlier Factor (LOF), Elliptic Envelope or One-Class Support-Vector-Machine (OC-SVM). LOF is a machine learning algorithm that uses the density of data points in the distribution as a key factor to detect outliers. LOF compares the density of any data point with the density of its neighbors. Since outliers come from low-density areas, the ratio is higher for anomalous data points. The LOF model is very robust even with varying payloads and can be used for data sets with high variance due to the way it works.
Der Algorithmus Elliptic Envelope erzeugt einen imaginären elliptischen Bereich um einen bestimmten Datensatz. Werte, die innerhalb der Hüllkurve liegen, gelten als normale Daten, und alles, was außerhalb der Hüllkurve liegt, wird als Ausreißer zurückgegeben. Der Algorithmus funktioniert am besten, wenn die Daten eine Gaußsche Verteilung aufweisen.The Elliptic Envelope algorithm creates an imaginary elliptical region around a given data set. Values that fall inside the envelope are considered normal data, and anything outside the envelope is returned as an outlier. The algorithm works best when the data has a Gaussian distribution.
One-Class Support-Vector-Machine (OC-SVM) ist eine unüberwachte Lerntechnik und basiert auf der Grundidee der Minimierung der Hypersphäre einer einzelnen Klasse von Beispielen in den Trainingsdaten und betrachtet alle anderen Proben außerhalb der Hypersphäre als Ausreißer oder außerhalb der Trainingsdatenverteilung.One-Class Support Vector Machine (OC-SVM) is an unsupervised learning technique and is based on the basic idea of minimizing the hypersphere of a single class of examples in the training data and considering all other samples outside the hypersphere as outliers or outside the training data distribution.
Denkbar ist auch, dass das unsupervised Machine Learning-Modell ein Deep Learning-Modell, insbesondere ein LSTM Encoder-Decoder-Modell, umfasst. Deep Learning-Modelle wie LSTM Encoder-Decoder-Modelle sind insbesondere bei der Anomalieerkennung in Zeitreihen vorteilhaft, wenn ein großer Trainingsdatensatz, insbesondere eine große Menge von drehmomentbestimmenden Daten, die auf fehlerfreien Bewegungen basieren, vorhanden ist. Denkbar ist auch die Anwendung von Clustering Algorithmen, wie beispielsweise dem Gaussian-Mixture-Model oder k-Means Clustering.It is also conceivable that the unsupervised machine learning model includes a deep learning model, in particular an LSTM encoder-decoder model. Deep learning models such as LSTM encoder-decoder models are particularly advantageous for anomaly detection in time series when a large training data set, in particular a large amount of torque-determining data based on error-free movements, is available. The application of clustering algorithms, such as the Gaussian mixture model or k-means clustering, is also conceivable.
Gemäß einer weiteren vorteilhaften Ausgestaltung des Verfahrens umfasst das Verfahren weiter:
- - Bestimmen einer ersten Entscheidung basierend auf den ersten drehmomentbestimmenden Daten und einer zweiten Entscheidung basierend auf den zweiten drehmomentbestimmenden Daten, und
- - Fusionieren der ersten Entscheidung und der zweiten Entscheidung mittels eines Entscheidungsalgorithmus zu einer fusionierten Entscheidung,
- - determining a first decision based on the first torque-determining data and a second decision based on the second torque-determining data, and
- - Merging the first decision and the second decision using a decision algorithm to form a merged decision,
Insbesondere umfasst das Verfahren ein Fusionieren der ersten drehmomentbestimmenden Daten und der zweiten drehmomentbestimmenden Daten, insbesondere der n drehmomentbestimmenden Daten der n Gelenke eines n-DOF-Industrieroboters, mittels Decision-Level-Fusion. Im Rahmen der Decision-Level-Fusion werden Entscheidungen basierend auf einzelne Datenquellen verarbeitet und zusammengeführt, um eine optimale Gesamtentscheidung zu erzielen. Vorliegend umfasst das Verfahren vorzugsweise ein Bestimmen einer ersten Entscheidung basierend auf den ersten drehmomentbestimmenden Daten und einer zweiten Entscheidung basierend auf den zweiten drehmomentbestimmenden Daten, insbesondere ein Bestimmen von n Entscheidungen basierend auf n drehmomentbestimmenden Daten für n Gelenke eines n-DOF-Industrieroboters. Eine Entscheidung meint beispielsweise eine Klassifikation, insbesondere ein Bestimmen, ob für eine Bewegung eines Gelenks ein Fehler oder eine Anomalie vorliegt oder nicht.In particular, the method comprises fusing the first torque-determining data and the second torque-determining data, in particular the n torque-determining data of the n joints of an n-DOF industrial robot, by means of decision-level fusion. As part of the decision-level fusion, decisions based on individual data sources are processed and merged in order to achieve an optimal overall decision. In the present case, the method preferably comprises determining a first decision based on the first torque-determining data and a second decision based on the second torque-determining data, in particular determining n decisions based on n torque-determining data for n joints of an n-DOF industrial robot. A decision means, for example, a classification, in particular a determination of whether or not there is an error or an anomaly for a movement of a joint.
In einem weiteren Schritt umfasst das Verfahren ein Fusionieren der ersten Entscheidung und der zweiten Entscheidung, insbesondere der n Entscheidungen, mittels eines Entscheidungsalgorithmus zu einer fusionierten Entscheidung. Das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, kann basierend auf der fusionierten Entscheidung erfolgen. Es hat sich gezeigt, dass das Fusionieren der drehmomentbestimmenden Daten mittels Decision-Level-Fusion für ein Verfahren zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters besonders vorteilhaft ist. Insbesondere kann damit eine besonders hohe Präzision bei der Bestimmung, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, erzielt werden.In a further step, the method comprises merging the first decision and the second decision, in particular the n decisions, using a decision algorithm to form a fused decision. Determining whether there is an error or an anomaly in the handling or manipulation task of the industrial robot can be done based on the fused decision. It has been shown that merging the torque-determining data using decision-level fusion is particularly advantageous for a method for error and/or anomaly detection in a handling or manipulation task of an industrial robot. In particular, this can achieve a particularly high level of precision in determining whether there is an error or an anomaly in the handling or manipulation task of the industrial robot.
Vorzugsweise umfasst der Entscheidungsalgorithmus eine Gewichtung der ersten und der zweiten Entscheidung. Insbesondere umfasst der Entscheidungsalgorithmus eine Gewichtung der n Entscheidungen für n Gelenke eines n-DOF-Industrieroboters. Beispielsweise können Entscheidungen basierend auf den drehmomentbestimmenden Daten solcher Gelenke stärker gewichtet werden, die einen größeren Einfluss auf die Gesamtbewegung des Industrieroboters haben.Preferably, the decision algorithm comprises a weighting of the first and the second decision. In particular, the decision algorithm comprises a weighting of the n decisions for n joints of an n-DOF industrial robot. For example, decisions based on the torque-determining data of those joints that have a greater influence on the overall movement of the industrial robot can be weighted more heavily.
Denkbar ist auch, dass der Entscheidungsalgorithmus ein Vergleichen der Anzahl an Entscheidungen einer ersten Art und der Anzahl an Entscheidungen einer zweiten Art umfasst, wobei die erste Entscheidung und die zweite Entscheidung, insbesondere die n Entscheidungen für die n Gelenke des n-DOF-Industrieroboters, jeweils der ersten oder zweiten Art zugeordnet werden. Eine Entscheidung erster Art meint beispielsweise das Vorliegen eines Fehlers oder einer Anomalie bei einer Einzelbewegung des jeweiligen Gelenks (Schlecht-Entscheidung), während eine Entscheidung zweiter Art beispielsweise meint, dass ein Fehler oder eine Anomalie bei der Einzelbewegung des jeweiligen Gelenks nicht vorliegt (Gut-Entscheidung). Insbesondere basiert der Entscheidungsalgorithmus auf einer Mehrheitsentscheidung. Die Entscheidung der Art, die für die Mehrheit der Gelenke getroffen wurde, kann insbesondere als fusionierte Entscheidung übernommen werden. Das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, kann basierend auf der fusionierten Entscheidung erfolgen.It is also conceivable that the decision algorithm comprises a comparison of the number of decisions of a first type and the number of decisions of a second type, wherein the first decision and the second decision, in particular the n decisions for the n joints of the n-DOF industrial robot, are each assigned to the first or second type. A decision of the first type means, for example, the presence of an error or anomaly in an individual movement of the respective joint (bad decision), while a decision of the second type means, for example, that an error or anomaly does not exist in the individual movement of the respective joint (good decision). In particular, the decision algorithm is based on a majority decision. The decision of the type that was made for the majority of the joints can in particular be adopted as a fused decision. Determining whether an error or anomaly exists in the handling or manipulation task of the industrial robot can be done based on the fused decision.
Gemäß einer weiteren vorteilhaften Ausgestaltung des Verfahrens erfolgt das Bestimmen der ersten Entscheidung unter Anwendung eines ersten unsupervised Machine Learning-Modells und das Bestimmen der zweiten Entscheidung unter Anwendung eines zweiten unsupervised Machine Learning-Modells. Mit Hilfe von jeweiligen unsupervised Machine Learning-Modellen kann vorzugsweise für jedes Gelenk des Industrieroboters eine Entscheidung getroffen werden, ob ein Fehler oder eine Anomalie bei der Bewegung des Gelenks vorliegt oder nicht. Das Bestimmen einer ersten Entscheidung umfasst insbesondere das Anwenden eines ersten unsupervised Machine Learning-Modells auf die ersten drehmomentbestimmenden Daten für das erste Gelenk und das Bestimmen einer zweiten Entscheidung umfasst insbesondere das Anwenden eines zweiten unsupervised Machine Learning-Modells auf die zweiten drehmomentbestimmenden Daten für das zweite Gelenk.According to a further advantageous embodiment of the method, the first decision is determined using a first unsupervised machine learning model and the second decision is determined using a second unsupervised machine learning model. With the help of respective unsupervised machine learning models, a decision can preferably be made for each joint of the industrial robot as to whether or not there is an error or an anomaly in the movement of the joint. Determining a first decision includes in particular applying a first unsupervised machine learning model to the first torque-determining data for the first joint and determining a second decision includes in particular applying a second unsupervised machine learning model to the second torque-determining data for the second joint.
Zum Training eines ersten Machine Learning-Modells, insbesondere eines ersten One-Class-Klassifizierungsmodells, können erste drehmomentbestimmenden Daten für fehlerfreie Bewegungen des ersten Gelenks erhalten werden. Die ersten drehmomentbestimmenden Daten werden vorzugsweise zunächst aufbereitet, beispielsweise mittels Segmentierung in einzelne Datensequenzen, Tiefpassfilterung Interpolation und/oder Datennormalisierung. Basierend auf den ersten drehmomentbestimmenden Daten fehlerfreier Bewegungen kann für das erste Gelenk ein erster Trainingsdatensatz erhalten und für das Training des ersten Machine Learning-Modells verwendet werden. Auf diese Weise erlernt das erste Machine Learning-Modell fehlerfreie Bewegungen des ersten Gelenks des Industrieroboters. Das trainierte erste Machine Learning-Modell kann im Anschluss mit ersten Testdaten basierend auf ersten drehmomentbestimmenden Daten für fehlerfreie und fehlerhafte Bewegungen des ersten Gelenks getestet werden, um insbesondere die Präzision und Verlässlichkeit des ersten Machine Learning-Modells zu bestimmen. Das trainierte und getestete erste Machine Learning-Modell kann gespeichert und für neue, unbestimmte Bewegungen des ersten Gelenks des Industrieroboters angewendet werden. Die Schritte können analog für das zweite Machine Learning-Modell zur Bestimmung der zweiten Entscheidung, insbesondere für alle n Machine Learning-Modelle zur Bestimmung der n Entscheidungen für alle n Gelenke eines n-DOF-Industrieroboters, durchgeführt werden.To train a first machine learning model, in particular a first one-class classification model, first torque-determining data for error-free movements of the first joint can be obtained. The first torque-determining data are preferably first prepared, for example by means of segmentation into individual data sequences, low-pass filtering, interpolation and/or data normalization. Based on the first torque-determining data of error-free movements, a first training data set can be obtained for the first joint and used to train the first machine learning model. In this way, the first machine learning model learns error-free movements of the first joint of the industrial robot. The trained first machine learning model can then be tested with first test data based on first torque-determining data for error-free and faulty movements of the first joint, in order to determine in particular the precision and reliability of the first machine learning model. The trained and tested first machine learning model can be saved and applied to new, undetermined movements of the first joint of the industrial robot. The steps can be performed analogously for the second machine learning model for determining the second decision, in particular for all n machine learning models for determining the n decisions for all n joints of an n-DOF industrial robot.
Vorzugsweise umfassen das erste unsupervised Machine Learning-Modell und das zweite unsupervised Machine Learning-Modell, insbesondere alle n unsupervised Machine Learning-Modell für n Gelenke eines n-DOF-Industrieroboters, jeweils ein One-Class-Klassifizierungsmodell, insbesondere Local Outlier Factor (LOF), Elliptic Envelope oder One-Class Support-Vector-Machine (OC-SVM).Preferably, the first unsupervised machine learning model and the second unsupervised machine learning model, in particular all n unsupervised machine learning models for n joints of an n-DOF industrial robot, each comprise a one-class classification model, in particular Local Outlier Factor (LOF), Elliptic Envelope or One-Class Support Vector Machine (OC-SVM).
Gemäß einer weiteren vorteilhaften Ausgestaltung des Verfahrens umfasst das Verfahren weiter:
- - Bestimmen, ob die Handhabungs- oder Manipulationsaufgabe des Industrieroboters erfolgreich war, basierend auf dem Vorliegen eines Fehlers oder einer Anomalie.
- - Determine whether the industrial robot's handling or manipulation task was successful based on the presence of an error or anomaly.
Insbesondere umfasst das Verfahren ein Bestimmen, dass die Handhabungs- oder Manipulationsaufgabe des Industrieroboters erfolgreich war, wenn bestimmt wurde, dass ein Fehler oder eine Anomalie nicht vorliegt. Weiter umfasst das Verfahren insbesondere ein Bestimmen, dass die Handhabungs- oder Manipulationsaufgabe des Industrieroboters nicht erfolgreich war, wenn bestimmt wurde, dass ein Fehler oder eine Anomalie vorliegt. Das Bestimmen, ob die Handhabungs- oder Manipulationsaufgabe des Industrieroboters erfolgreich war oder nicht, erlaubt insbesondere Rückschlüsse auf die Handhabungs- oder Manipulationsaufgabe des Industrieroboters, ohne dass beispielsweise eine visuelle Inaugenscheinnahme des Resultats erforderlich ist. Dies ist insbesondere für eine Handhabungs- oder Manipulationsaufgabe im Bereich der Halbleiterlithographie vorteilhaft.In particular, the method comprises determining that the handling or manipulation task of the industrial robot was successful if it was determined that an error or anomaly was not present. Furthermore, the method comprises in particular determining that the handling or manipulation task of the industrial robot was not successful if it was determined that an error or anomaly was present. Determining whether the handling or manipulation task of the industrial robot was successful or not allows in particular conclusions to be drawn about the handling or manipulation task of the industrial robot without, for example, a visual inspection of the result being necessary. This is particularly advantageous for a handling or manipulation task in the field of semiconductor lithography.
Vorzugsweise umfasst die Handhabungs- oder Manipulationsaufgabe des Industrieroboters ein Positionieren und/oder Orientieren eines Bauteils in einer Anlage. Insbesondere umfasst die Handhabungs- oder Manipulationsaufgabe des Industrieroboters ein Positionieren und/oder Orientieren eines Bauteils in einer Anlage für die Halbleitertechnologie. Das Positionieren und/oder Orientieren des Bauteils kann insbesondere mittels mindestens einen Nullpunktspannsystems erfolgen. Nullpunktspannsysteme sind insbesondere zur sicheren und hochgenauen Positionierung und/oder Orientierung von Bauteilen mittels eines Industrieroboters vorteilhaft. Die in einer Anlage der Halbleitertechnologie zur Abbildung verwendeten Bauteile, insbesondere optischen Elemente, werden jedoch beispielsweise aufgrund steigender Anforderungen und der damit verbundenen Vergrößerung der numerischen Apertur immer größer und schwerer, was das Positionieren und/oder Orientieren des Bauteils in einer Anlage für die Halbleitertechnologie erschwert. Eine visuelle Kontrolle der korrekten Positionierung und/oder Orientierung des Bauteils ist insbesondere bei mangelnder Zugänglichkeit, beispielsweise bei Verwendung eines Nullpunktspannsystems, kaum mehr möglich. Es wurde erkannt, dass mit Hilfe des Verfahrens zur Fehler- und/oder Anomalieerkennung diese Nachteile überwunden und für eine Handhabungs- oder Manipulationsaufgabe eines Industrieroboters, insbesondere für ein Positionieren und/oder Orientieren eines Bauteils in einer Anlage, insbesondere einer Anlage der Halbleitertechnologie, eine zuverlässige Aussage getroffen werden kann, ob die Handhabungs- oder Manipulationsaufgabe des Industrieroboters erfolgreich war oder nicht.Preferably, the handling or manipulation task of the industrial robot includes positioning and/or orienting a component in a system. In particular, the handling or manipulation task of the industrial robot includes positioning and/or orienting a component in a system for semiconductor technology. The positioning and/or orientation of the component can be carried out in particular by means of at least one zero-point clamping system. Zero-point clamping systems are particularly advantageous for the safe and highly precise positioning and/or orientation of components using an industrial robot. However, the components used for imaging in a semiconductor technology system, in particular optical elements, are becoming ever larger and heavier, for example due to increasing requirements and the associated increase in the numerical aperture, which makes positioning and/or orienting the component in a semiconductor technology system more difficult. Visual control of the correct positioning and/or orientation of the component is hardly possible anymore, especially when accessibility is lacking, for example when using a zero-point clamping system. It was recognized that with the help of the method for error and/or anomaly detection, these disadvantages can be overcome and a reliable statement can be made for a handling or manipulation task of an industrial robot, in particular for positioning and/or orienting a component in a system, in particular a semiconductor technology system, as to whether the handling or manipulation task of the industrial robot was successful or not.
Die zuvor genannte Aufgabe wird zudem gelöst durch eine erfindungsgemäße Vorrichtung umfassend Mittel zur Ausführung des erfindungsgemäßen Verfahrens. Hierbei kann es vorgesehen sein, dass ein Teil der Schritte oder alle Schritte des Verfahrens ausgeführt wird/werden. Bei der Vorrichtung kann es sich um eine Vorrichtung zur Datenverarbeitung handeln. Die Vorrichtung kann Hardware- und/oder Software-Komponenten umfassen. Die Vorrichtung kann beispielsweise wenigstens einen Speicher, insbesondere mit Befehlen eines Computerprogrammprodukts, und/oder wenigstens einen Prozessor, insbesondere ausgebildet zum Ausführen von Befehlen aus dem wenigstens einen Speicher umfassen. Dementsprechend soll auch eine Vorrichtung als offenbart verstanden werden, die wenigstens einen Prozessor und wenigstens einen Speicher mit Befehlen umfasst, wobei der wenigstens eine Speicher und die Befehle eingerichtet sind, gemeinsam mit dem wenigstens einen Prozessor, die Vorrichtung zu veranlassen, das erfindungsgemäße Verfahren auszuführen. Unter einem Prozessor sollen in dieser Offenbarung unter anderem Kontrolleinheiten, Mikroprozessoren, Mikrokontrolleinheiten wie Mikrocontroller, digitale Signalprozessoren (DSP), Anwendungsspezifische Integrierte Schaltungen (ASICs) oder Field Programmable Gate Arrays (FPGAs) verstanden werden.The aforementioned object is also achieved by a device according to the invention comprising means for carrying out the method according to the invention. It can be provided that some of the steps or all of the steps of the method are carried out. The device can be a device for data processing. The device can comprise hardware and/or software components. The device can, for example, comprise at least one memory, in particular with instructions from a computer program product, and/or at least one processor, in particular designed to execute instructions from the at least one memory. Accordingly, a device is also to be understood as being disclosed which comprises at least one processor and at least one memory with instructions, wherein the at least one memory and the instructions are set up, together with the at least one processor, to cause the device to carry out the method according to the invention. In this disclosure, a processor is to be understood as including control units, microprocessors, microcontrol units such as microcontrollers, digital signal processors (DSP), application-specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs).
Alternativ oder zusätzlich kann die Vorrichtung ferner eine oder mehrere Kommunikationsschnittstellen (z.B. einen oder mehrere drahtgebundene und/oder drahtlose Kommunikationsschnittstellen, z.B. eine drahtlose Kommunikationsschnittstellen in Form einer Funkschnittstelle) und/oder eine oder mehrere Benutzerschnittstellen (z.B. eine Tastatur, eine Maus, einen Bildschirm, einen berührungsempfindlichen Bildschirm, einen Lautsprecher, ein Mikrofon, usw.) umfassen. Es versteht sich, dass die offenbarte Vorrichtung auch andere nicht aufgeführte Mittel umfassen kann.Alternatively or additionally, the device may further comprise one or more communication interfaces (e.g., one or more wired and/or wireless communication interfaces, e.g., a wireless communication interface in the form of a radio interface) and/or one or more user interfaces (e.g., a keyboard, a mouse, a screen, a touch-sensitive screen, a speaker, a microphone, etc.). It is understood that the disclosed device may also comprise other means not listed.
Die zuvor genannte Aufgabe wird zudem gelöst durch ein erfindungsgemäßes System umfassend:
- - einen Industrieroboter mit mindestens einem ersten und einem zweiten Gelenk, und
- - Mittel zur Ausführung des erfindungsgemäßen Verfahrens zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe des Industrieroboters.
- - an industrial robot with at least a first and a second joint, and
- - Means for carrying out the method according to the invention for error and/or anomaly detection in a handling or manipulation task of the industrial robot.
Das System umfasst insbesondere einen n-DOF-Industrieroboter mit n Gelenken. Bei einem Industrieroboter mit einem ersten und einem zweiten Gelenk handelt es sich beispielsweise um einen 2-DOF-Industrieroboter. Bei einem Industrieroboter mit sechs Gelenken handelt es sich beispielsweise um einen 6-DOF-Industrieroboter. Der Industrieroboter wird insbesondere zur Durchführung einer Handhabungs- oder Manipulationsaufgabe, beispielsweise zum Positionieren und/oder Orientieren eines Bauteils in einer Anlage, insbesondere in einer Anlage für die Halbleitertechnologie, eingesetzt.The system comprises in particular an n-DOF industrial robot with n joints. An industrial robot with a first and a second joint is, for example, a 2-DOF industrial robot. An industrial robot with six joints is, for example, a 6-DOF industrial robot. The industrial robot is used in particular to carry out a handling or manipulation task, for example to position and/or orient a component in a system, in particular in a system for semiconductor technology.
Weiter umfasst das System Mittel zur Ausführung des erfindungsgemäßen Verfahrens zur Fehler- und/oder Anomalieerkennung bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters. Beispielsweise kann die erfindungsgemäße Vorrichtung Teil des erfindungsgemäßen Systems sein.The system further comprises means for carrying out the method according to the invention for detecting errors and/or anomalies in the handling or manipulation task of the industrial robot. For example, the device according to the invention can be part of the system according to the invention.
Die zuvor genannte Aufgabe wird zudem gelöst durch ein erfindungsgemäßes Computerprogrammprodukt umfassend Programmanweisungen, um das erfindungsgemäße Verfahren auszuführen und/oder zu steuern, wenn das Programm auf einem Prozessor ausgeführt wird. Ein Computerprogrammprodukt gemäß der vorliegenden Offenbarung kann beispielsweise über ein Netzwerk wie das Internet, ein Telefon- oder Mobilfunknetz und/oder ein lokales Netzwerk verteilbar sein. Das Computerprogrammprodukt kann zumindest teilweise Software und/oder Firmware eines Prozessors sein. Es kann gleichermaßen zumindest teilweise als Hardware implementiert sein. Das Computerprogrammprodukt kann beispielsweise auf einem computerlesbaren Medium, insbesondere Speichermedium, gespeichert sein, z.B. einem magnetischen, elektrischen, optischen und/oder andersartigen Speichermedium. Das Speichermedium kann beispielsweise Teil des Prozessors sein, beispielsweise ein (nicht-flüchtiger oder flüchtiger) Programmspeicher des Prozessors oder ein Teil davon. Das Speichermedium kann beispielsweise ein gegenständliches oder körperliches Speichermedium sein.The aforementioned object is also achieved by a computer program product according to the invention comprising program instructions for carrying out and/or controlling the method according to the invention when the program is executed on a processor. A computer program product according to the present disclosure can, for example, be distributable via a network such as the Internet, a telephone or mobile network and/or a local network. The computer program product can be at least partially software and/or firmware of a processor. It can equally be implemented at least partially as hardware. The computer program product can, for example, be stored on a computer-readable medium, in particular a storage medium, e.g. a magnetic, electrical, optical and/or other type of storage medium. The storage medium can, for example, be part of the processor, for example a (non-volatile or volatile) program memory of the processor or a part thereof. The storage medium can, for example, be a tangible or physical storage medium.
Die zuvor genannte Aufgabe wird zudem gelöst durch ein erfindungsgemäßes computerlesbares Speichermedium umfassend ein erfindungsgemäßes Computerprogrammprodukt. Ein computerlesbares Speichermedium kann beispielsweise als magnetisches, elektrisches, elektromagnetisches, optisches und/oder andersartiges Speichermedium ausgebildet sein. Ein solches computerlesbares Speichermedium ist vorzugsweise gegenständlich (also „berührbar"), zum Beispiel ist es als Datenträgervorrichtung ausgebildet. Eine solche Datenträgervorrichtung ist beispielsweise tragbar oder in einer Vorrichtung fest installiert. Beispiele für eine solche Datenträgervorrichtung sind flüchtige oder nicht-flüchtige Speicher mit wahlfreiem-Zugriff (RAM), wie z.B. NOR-Flash-Speicher, oder mit sequentiellem-Zugriff wie NAND-Flash-Speicher und/oder Speicher mit Nur-Lese-Zugriff (ROM) oder Schreib-Lese-Zugriff. Computerlesbar soll zum Beispiel so verstanden werden, dass das Speichermedium von einem Computer bzw. einer Datenverarbeitungsanlage (aus)gelesen und/oder beschrieben werden kann, beispielsweise von einem Prozessor. Das computerlesbare Speichermedium kann auch ein einen Download eines Programmcodes ermöglichendes Datenkommunikationsnetzwerk wie etwa das Internet oder eine Datenwolke (Cloud) sein.The aforementioned object is also achieved by a computer-readable storage medium according to the invention comprising a computer program product according to the invention. A computer-readable storage medium can be designed, for example, as a magnetic, electrical, electromagnetic, optical and/or other type of storage medium. Such a computer-readable storage medium is preferably physical (i.e. "touchable"), for example it is designed as a data carrier device. Such a data carrier device is, for example, portable or permanently installed in a device. Examples of such a data carrier device are volatile or non-volatile memories with random access (RAM), such as NOR flash memory, or with sequential access such as NAND flash memory and/or memories with read-only access (ROM) or read-write access. Computer-readable should be understood, for example, to mean that the storage medium can be read and/or written to by a computer or a data processing system, for example by a processor. The computer-readable storage medium can also be a data communication network that enables a download of a program code, such as the Internet or a data cloud.
Nachfolgend wird anhand der Zeichnung mindestens ein Ausführungsbeispiel der Erfindung beschrieben. In der Zeichnung zeigen:
-
1 schematisch im Meridionalschnitt eine Anlage der Halbleitertechnologie für die EUV-Projektionslithografie, -
2 schematisch einen 6-DOF-Industrierobotor zum Positionieren und/oder Orientieren eines Bauteils in einer Anlage der Halbleitertechnologie, -
3a ,3b ein Ausführungsbeispiel eines erfindungsgemäßen Verfahrens zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters, -
4a ,4b ein weiteres Ausführungsbeispiel eines erfindungsgemäßen Verfahrens zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters, -
5a ,5b ein weiteres Ausführungsbeispiel eines erfindungsgemäßen Verfahrens zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters, -
6 ein schematisches Blockdiagramm eines Ausführungsbeispiels einer erfindungsgemäßen Vorrichtung, und -
7 eine schematische Darstellung von Ausführungsbeispielen gegenständlicher und nicht-flüchtiger computerlesbarer Medien.
-
1 schematic meridional section of a semiconductor technology plant for EUV projection lithography, -
2 schematically a 6-DOF industrial robot for positioning and/or orienting a component in a semiconductor technology plant, -
3a ,3b an embodiment of a method according to the invention for error and/or anomaly detection in a handling or manipulation task of an industrial robot, -
4a ,4b a further embodiment of a method according to the invention for error and/or anomaly detection in a handling or manipulation task of an industrial robot, -
5a ,5b a further embodiment of a method according to the invention for error and/or anomaly detection in a handling or manipulation task of an industrial robot, -
6 a schematic block diagram of an embodiment of a device according to the invention, and -
7 a schematic representation of embodiments of tangible and non-transitory computer-readable media.
In der nachfolgenden Beschreibung der verschiedenen erfindungsgemäßen Ausführungsbeispiele werden Bauteile und Elemente mit gleicher Funktion und gleicher Wirkungsweise mit denselben Bezugszeichen versehen, auch wenn die Bauteile und Elemente bei den verschiedenen Ausführungsbeispielen in ihrer Dimension, Form oder Beschaffenheit Unterschiede aufweisen können.In the following description of the various embodiments according to the invention, components and elements with the same function and the same mode of operation are given the same reference numbers. chen, even if the components and elements in the various embodiments may differ in their dimensions, shape or nature.
Im Folgenden werden zunächst unter Bezugnahme auf die
Eine Ausführung eines Beleuchtungssystems 102 der Anlage der Halbleitertechnologie 100 hat neben einer Licht- bzw. Strahlungsquelle 103 eine Beleuchtungsoptik 104 zur Beleuchtung eines Objektfeldes 111 in einer Objektebene 112. Bei einer alternativen Ausführung kann die Lichtquelle 103 auch als ein zum sonstigen Beleuchtungssystem separates Modul bereitgestellt sein. In diesem Fall umfasst das Beleuchtungssystem die Lichtquelle 103 nicht.An embodiment of a
Belichtet wird ein im Objektfeld 111 angeordnetes Retikel 113. Das Retikel 113 ist von einem Retikelhalter gehalten. Der Retikelhalter ist über einen Retikelverlagerungsantrieb insbesondere in einer Scanrichtung verlagerbar.A
In der
Die Anlage der Halbleitertechnologie 100 umfasst eine Projektionsoptik 10. Die Projektionsoptik 117 dient zur Abbildung des Objektfeldes 111 in ein Bildfeld 11 in einer Bildebene 115. Die Bildebene 115 verläuft parallel zur Objektebene 112. Alternativ ist auch ein von 0° verschiedener Winkel zwischen der Objektebene 112 und der Bildebene 115 möglich.The
Abgebildet wird eine Struktur auf dem Retikel 113 auf eine lichtempfindliche Schicht eines im Bereich des Bildfeldes 114 in der Bildebene 115 angeordneten Wafers 116. Der Wafer 116 wird von einem Waferhalter gehalten. Der Waferhalter ist über einen Waferverlagerungsantrieb insbesondere längs der y-Richtung verlagerbar. Die Verlagerung einerseits des Retikels 113 über den Retikelverlagerungsantrieb und andererseits des Wafers 116 über den Waferverlagerungsantrieb kann synchronisiert zueinander erfolgen.A structure on the
Bei der Strahlungsquelle 103 handelt es sich um eine EUV-Strahlungsquelle. Die Strahlungsquelle 103 emittiert insbesondere EUV-Strahlung 101, welche im Folgenden auch als Nutzstrahlung, Beleuchtungsstrahlung oder Beleuchtungslicht bezeichnet wird. Die Nutzstrahlung hat insbesondere eine Wellenlänge im Bereich zwischen 5 nm und 30 nm. Bei der Strahlungsquelle 103 kann es sich um eine Plasmaquelle handeln, zum Beispiel um eine LPP-Quelle (Laser Produced Plasma, mithilfe eines Lasers erzeugtes Plasma) oder um eine DPP-Quelle (Gas Discharged Produced Plasma, mittels Gasentladung erzeugtes Plasma). Es kann sich auch um eine synchrotronbasierte Strahlungsquelle handeln. Bei der Strahlungsquelle 103 kann es sich um einen Freie-Elektronen-Laser (Free-Electron-Laser, FEL) handeln.The
Die Beleuchtungsstrahlung 101, die von der Strahlungsquelle 103 ausgeht, wird von einem Kollektor 105 gebündelt. Bei dem Kollektor 105 kann es sich um einen Kollektor mit einer oder mit mehreren ellipsoidalen und/oder hyperboloiden Reflexionsflächen handeln. Die mindestens eine Reflexionsfläche des Kollektors 105 kann im streifenden Einfall (Grazing Incidence, GI), also mit Einfallswinkeln größer als 45°, oder im normalen Einfall (Normal Incidence, NI), also mit Einfallwinkeln kleiner als 45°, mit der Beleuchtungsstrahlung 101 beaufschlagt werden. Der Kollektor 105 kann einerseits zur Optimierung seiner Reflektivität für die Nutzstrahlung und andererseits zur Unterdrückung von Falschlicht strukturiert und/oder beschichtet sein.The
Nach dem Kollektor 105 propagiert die Beleuchtungsstrahlung 101 durch einen Zwischenfokus in einer Zwischenfokusebene 106. Die Zwischenfokusebene 106 kann eine Trennung zwischen einem Strahlungsquellenmodul, aufweisend die Strahlungsquelle 103 und den Kollektor 105, und der Beleuchtungsoptik 104 darstellen.After the
Die Beleuchtungsoptik 104 umfasst einen Umlenkspiegel 107 und diesem im Strahlengang nachgeordnet einen ersten Facettenspiegel 108. Bei dem Umlenkspiegel 107 kann es sich um einen planen Umlenkspiegel oder alternativ um einen Spiegel mit einer über die reine Umlenkungswirkung hinaus bündelbeeinflussenden Wirkung handeln. Alternativ oder zusätzlich kann der Umlenkspiegel 107 als Spektralfilter ausgeführt sein, der eine Nutzlichtwellenlänge der Beleuchtungsstrahlung 101 von Falschlicht einer hiervon abweichenden Wellenlänge trennt. Sofern der erste Facettenspiegel 108 in einer Ebene der Beleuchtungsoptik 104 angeordnet ist, die zur Objektebene 112 als Feldebene optisch konjugiert ist, wird dieser auch als Feldfacettenspiegel bezeichnet. Der erste Facettenspiegel 108 umfasst eine Vielzahl von einzelnen ersten Facetten 109, welche im Folgenden auch als Feldfacetten bezeichnet werden. Von diesen Facetten 109 sind in der
Die ersten Facetten 109 können als makroskopische Facetten ausgeführt sein, insbesondere als rechteckige Facetten oder als Facetten mit bogenförmiger oder teilkreisförmiger Randkontur. Die ersten Facetten 109 können als plane Facetten oder alternativ als konvex oder konkav gekrümmte Facetten ausgeführt sein.The
Wie beispielsweise aus der
Zwischen dem Kollektor 105 und dem Umlenkspiegel 107 verläuft die Beleuchtungsstrahlung 101 horizontal, also längs der y-Richtung.Between the
Im Strahlengang der Beleuchtungsoptik 4 ist dem ersten Facettenspiegel 108 nachgeordnet ein zweiter Facettenspiegel 110. Sofern der zweite Facettenspiegel 110 in einer Pupillenebene der Beleuchtungsoptik 104 angeordnet ist, wird dieser auch als Pupillenfacettenspiegel bezeichnet. Der zweite Facettenspiegel 110 kann auch beabstandet zu einer Pupillenebene der Beleuchtungsoptik 104 angeordnet sein. In diesem Fall wird die Kombination aus dem ersten Facettenspiegel 108 und dem zweiten Facettenspiegel 110 auch als spekularer Reflektor bezeichnet. Spekulare Reflektoren sind bekannt aus der
Der zweite Facettenspiegel 110 umfasst eine Mehrzahl von zweiten Facetten. Die zweiten Facetten 213 werden im Falle eines Pupillenfacettenspiegels auch als Pupillenfacetten bezeichnet.The
Bei den zweiten Facetten kann es sich ebenfalls um makroskopische Facetten, die beispielsweise rund, rechteckig oder auch hexagonal berandet sein können, oder alternativ um aus Mikrospiegeln zusammengesetzte Facetten handeln. Diesbezüglich wird ebenfalls auf die
Die zweiten Facetten können plane oder alternativ konvex oder konkav gekrümmte Reflexionsflächen aufweisen.The second facets can have flat or alternatively convex or concave curved reflection surfaces.
Die Beleuchtungsoptik 104 bildet somit ein doppelt facettiertes System. Dieses grundlegende Prinzip wird auch als Wabenkondensor (Fly's Eye Integrator) bezeichnet.The
Es kann vorteilhaft sein, den zweiten Facettenspiegel 110 nicht exakt in einer Ebene, welche zu einer Pupillenebene der Projektionsoptik 117 optisch konjugiert ist, anzuordnen. Insbesondere kann der Pupillenfacettenspiegel 110 gegenüber einer Pupillenebene der Projektionsoptik 17 verkippt angeordnet sein, wie es zum Beispiel in der
Mit Hilfe des zweiten Facettenspiegels 110 werden die einzelnen ersten Facetten 109 in das Objektfeld 111 abgebildet. Der zweite Facettenspiegel 110 ist der letzte bündelformende oder auch tatsächlich der letzte Spiegel für die Beleuchtungsstrahlung 101 im Strahlengang vor dem Objektfeld 111.With the help of the
Bei einer weiteren, nicht dargestellten Ausführung der Beleuchtungsoptik 104 kann im Strahlengang zwischen dem zweiten Facettenspiegel 110 und dem Objektfeld 111 eine Übertragungsoptik angeordnet sein, die insbesondere zur Abbildung der ersten Facetten 109 in das Objektfeld 111 beiträgt. Die Übertragungsoptik kann genau einen Spiegel, alternativ aber auch zwei oder mehr Spiegel aufweisen, welche hintereinander im Strahlengang der Beleuchtungsoptik 104 angeordnet sind. Die Übertragungsoptik kann insbesondere einen oder zwei Spiegel für senkrechten Einfall (NI-Spiegel, Normal Incidence Spiegel) und/oder einen oder zwei Spiegel für streifenden Einfall (GI-Spiegel, Gracing Incidence Spiegel) umfassen.In a further embodiment of the illumination optics 104 (not shown), a transmission optics can be arranged in the beam path between the
Die Beleuchtungsoptik 104 hat bei der Ausführung, die in der
Bei einer weiteren Ausführung der Beleuchtungsoptik 104 kann der Umlenkspiegel 107 auch entfallen, so dass die Beleuchtungsoptik 104 nach dem Kollektor 105 dann genau zwei Spiegel aufweisen kann, nämlich den ersten Facettenspiegel 108 und den zweiten Facettenspiegel 110.In a further embodiment of the
Die Abbildung der ersten Facetten 109 mittels der zweiten Facetten beziehungsweise mit den zweiten Facetten und einer Übertragungsoptik in die Objektebene 112 ist regelmäßig nur eine näherungsweise Abbildung.The imaging of the
Die Projektionsoptik 117 umfasst eine Mehrzahl von Spiegeln Mi, welche gemäß ihrer Anordnung im Strahlengang der Anlage der Halbleitertechnologie 100 durchnummeriert sind.The
Bei dem in der
Reflexionsflächen der Spiegel Mi können als Freiformflächen ohne Rotationssymmetrieachse ausgeführt sein. Alternativ können die Reflexionsflächen der Spiegel Mi als asphärische Flächen mit genau einer Rotationssymmetrieachse der Reflexionsflächenform gestaltet sein. Die Spiegel Mi können, genauso wie die Spiegel der Beleuchtungsoptik 104, hoch reflektierende Beschichtungen für die Beleuchtungsstrahlung 16 aufweisen. Diese Beschichtungen können als Multilayer-Beschichtungen, insbesondere mit alternierenden Lagen aus Molybdän und Silizium, gestaltet sein.Reflection surfaces of the mirrors Mi can be designed as free-form surfaces without a rotational symmetry axis. Alternatively, the reflection surfaces of the mirrors Mi can be designed as aspherical surfaces with exactly one rotational symmetry axis of the reflection surface shape. The mirrors Mi, just like the mirrors of the
Die Projektionsoptik 117 hat einen großen Objekt-Bildversatz in der y-Richtung zwischen einer y-Koordinate eines Zentrums des Objektfeldes 111 und einer y-Koordinate des Zentrums des Bildfeldes 114. Dieser Objekt-Bild-Versatz in der y-Richtung kann in etwa so groß sein wie ein z-Abstand zwischen der Objektebene 112 und der Bildebene 115.The
Die Projektionsoptik 117 kann insbesondere anamorphotisch ausgebildet sein. Sie weist insbesondere unterschiedliche Abbildungsmaßstäbe βx, βy in x- und y-Richtung auf. Die beiden Abbildungsmaßstäbe βx, βy der Projektionsoptik 117 liegen bevorzugt bei (βx, βy) = (+/- 0,25, /+- 0,125). Ein positiver Abbildungsmaßstab β bedeutet eine Abbildung ohne Bildumkehr. Ein negatives Vorzeichen für den Abbildungsmaßstab β bedeutet eine Abbildung mit Bildumkehr.The
Die Projektionsoptik 117 führt somit in x-Richtung, das heißt in Richtung senkrecht zur Scanrichtung, zu einer Verkleinerung im Verhältnis 4:1.The
Die Projektionsoptik 117 führt in y-Richtung, das heißt in Scanrichtung, zu einer Verkleinerung von 8:1.The
Andere Abbildungsmaßstäbe sind ebenso möglich. Auch vorzeichengleiche und absolut gleiche Abbildungsmaßstäbe in x- und y-Richtung, zum Beispiel mit Absolutwerten von 0,125 oder von 0,25, sind möglich.Other image scales are also possible. Image scales with the same sign and absolutely the same in the x and y directions, for example with absolute values of 0.125 or 0.25, are also possible.
Die Anzahl von Zwischenbildebenen in der x- und in der y-Richtung im Strahlengang zwischen dem Objektfeld 111 und dem Bildfeld 114 kann gleich sein oder kann, je nach Ausführung der Projektionsoptik 117, unterschiedlich sein. Beispiele für Projektionsoptiken mit unterschiedlichen Anzahlen derartiger Zwischenbilder in x- und y-Richtung sind bekannt aus der
Jeweils eine der Pupillenfacetten ist genau einer der Feldfacetten 109 zur Ausbildung jeweils eines Beleuchtungskanals zur Ausleuchtung des Objektfeldes 111 zugeordnet. Es kann sich hierdurch insbesondere eine Beleuchtung nach dem Köhlerschen Prinzip ergeben. Das Fernfeld wird mit Hilfe der Feldfacetten 109 in eine Vielzahl an Objektfeldern 111 zerlegt. Die Feldfacetten 109 erzeugen eine Mehrzahl von Bildern des Zwischenfokus auf den diesen jeweils zugeordneten Pupillenfacetten.Each of the pupil facets is assigned to exactly one of the
Die Feldfacetten 109 werden jeweils von einer zugeordneten Pupillenfacette einander überlagernd zur Ausleuchtung des Objektfeldes 111 auf das Retikel 113 abgebildet. Die Ausleuchtung des Objektfeldes 111 ist insbesondere möglichst homogen. Sie weist vorzugsweise einen Uniformitätsfehler von weniger als 2 % auf. Die Felduniformität kann über die Überlagerung unterschiedlicher Beleuchtungskanäle erreicht werden.The
Durch eine Anordnung der Pupillenfacetten kann geometrisch die Ausleuchtung der Eintrittspupille der Projektionsoptik 117 definiert werden. Durch Auswahl der Beleuchtungskanäle, insbesondere der Teilmenge der Pupillenfacetten, die Licht führen, kann die Intensitätsverteilung in der Eintrittspupille der Projektionsoptik 117 eingestellt werden. Diese Intensitätsverteilung wird auch als Beleuchtungssetting oder Beleuchtungspupillenfüllung bezeichnet.By arranging the pupil facets, the illumination of the entrance pupil of the
Eine ebenfalls bevorzugte Pupillenuniformität im Bereich definiert ausgeleuchteter Abschnitte einer Beleuchtungspupille der Beleuchtungsoptik 104 kann durch eine Umverteilung der Beleuchtungskanäle erreicht werden.A likewise preferred pupil uniformity in the region of defined illuminated sections of an illumination pupil of the
Im Folgenden werden weitere Aspekte und Details der Ausleuchtung des Objektfeldes 111 sowie insbesondere der Eintrittspupille der Projektionsoptik 117 beschrieben.In the following, further aspects and details of the illumination of the
Die Projektionsoptik 117 kann insbesondere eine homozentrische Eintrittspupille aufweisen. Diese kann zugänglich sein. Sie kann auch unzugänglich sein.The
Die Eintrittspupille der Projektionsoptik 117 lässt sich regelmäßig mit dem Pupillenfacettenspiegel 110 nicht exakt ausleuchten. Bei einer Abbildung der Projektionsoptik 117, welche das Zentrum des Pupillenfacettenspiegels 110 telezentrisch auf den Wafer 116 abbildet, schneiden sich die Aperturstrahlen oftmals nicht in einem einzigen Punkt. Es lässt sich jedoch eine Fläche finden, in welcher der paarweise bestimmte Abstand der Aperturstrahlen minimal wird. Diese Fläche stellt die Eintrittspupille oder eine zu ihr konjugierte Fläche im Ortsraum dar. Insbesondere zeigt diese Fläche eine endliche Krümmung.The entrance pupil of the
Es kann sein, dass die Projektionsoptik 117 unterschiedliche Lagen der Eintrittspupille für den tangentialen und für den sagittalen Strahlengang aufweist. In diesem Fall sollte ein abbildendes Element, insbesondere ein optisches Bauelement der Übertragungsoptik, zwischen dem zweiten Facettenspiegel 110 und dem Retikel 113 bereitgestellt werden. Mit Hilfe dieses optischen Elements kann die unterschiedliche Lage der tangentialen Eintrittspupille und der sagittalen Eintrittspupille berücksichtigt werden.It may be that the
Bei der in der
Der erste Facettenspiegel 108 ist verkippt zu einer Anordnungsebene angeordnet, die vom zweiten Facettenspiegel 110 definiert ist.The
Mit Hilfe des 6-DOF-Industrieroboters 1 können Handhabungs- oder Manipulationsaufgaben, wie beispielsweise Be- und Entladevorgänge, bewältigt werden. Der in
In einem zweiten Schritt S2 umfasst das Verfahren ein Fusionieren der ersten drehmomentbestimmenden Daten D1, der zweiten drehmomentbestimmenden Daten D2, der dritten drehmomentbestimmenden Daten D3, der vierten drehmomentbestimmenden Daten D4, der fünften drehmomentbestimmenden Daten D5 und der sechsten drehmomentbestimmenden Daten D6 zu einem fusionierten Datensatz DNeu. Das Fusionieren der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 erfolgt dabei mittels Signal-Level-Fusion. Hierzu werden die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 zunächst aufbereitet. Da die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 kontinuierlich erfasst wurden, umfasst das Aufbereiten zunächst ein Segmentieren der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 in einzelne Datensequenzen. Die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 werden zudem gefiltert, wobei ein Tiefpassfilter verwendet wird, um ein Rauschen in den Daten zu entfernen. Das Aufbereiten umfasst darüber hinaus ein Interpolieren zumindest eines Teils der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6, sodass für jede Datensequenz die gleiche Anzahl an Datenpunkten vorliegt.In a second step S2, the method comprises merging the first torque-determining data D1, the second torque-determining data D2, the third torque-determining data D3, the fourth torque-determining data D4, the fifth torque-determining data D5 and the sixth torque-determining data D6 to form a fused data set D New . The merging of the torque-determining data D1, D2, D3, D4, D5, D6 is carried out by means of signal-level fusion. For this purpose, the torque-determining data D1, D2, D3, D4, D5, D6 are first prepared. Since the torque-determining data D1, D2, D3, D4, D5, D6 were recorded continuously, the preparation first comprises segmenting the torque-determining data D1, D2, D3, D4, D5, D6 into individual data sequences. The torque-determining data D1, D2, D3, D4, D5, D6 are also filtered using a low-pass filter to remove noise in the data. The processing further includes interpolating at least a portion of the torque-determining data D1, D2, D3, D4, D5, D6 so that the same number of data points are present for each data sequence.
In Schritt S3 umfasst das Verfahren ein Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des 6-DOF-Industrieroboters 1 vorliegt. Das Bestimmen erfolgt basierend auf dem fusionierten Datensatz DNeu. Hierzu wird auf den fusionierten Datensatz DNeu ein unsupervised Machine Learning-Modell ML angewandt. Bei dem unsupervised Machine Learning-Modell ML handelt es sich um ein One-Class-Klassifizierungsmodell OCC, vorliegend um ein Local Outlier Factor-Modell LOF.In step S3, the method includes determining whether an error or an anomaly is present in the handling or manipulation task of the 6-DOF industrial robot 1. The determination is made based on the fused data set D New . For this purpose, an unsupervised machine learning model ML is applied to the fused data set D New . The unsupervised machine learning model ML is a one-class classification model OCC, in this case a local outlier factor model LOF.
Das One-Class-Klassifizierungsmodell OCC zur Anwendung auf den fusionierten Datensatz DNeu in dem in
Zum Training des in dem in
Das trainierte One-Class-Klassifizierungsmodell OCC wird im Anschluss mit einem Testdatensatz DTest basierend auf drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 für jedes der sechs Gelenke G1, G2, G3, G4, G5, G6 bei fehlerfreien und fehlerhaften Bewegungen der Gelenke G1, G2, G3, G4, G5, G6 getestet, um insbesondere die Präzision und Verlässlichkeit des One-Class-Klassifizierungsmodells OCC zu bestimmen.The trained one-class classification model OCC is then tested with a test data set D Test based on torque-determining data D1, D2, D3, D4, D5, D6 for each of the six joints G1, G2, G3, G4, G5, G6 during error-free and error-laden movements of the joints G1, G2, G3, G4, G5, G6, in order to determine in particular the precision and reliability of the one-class classification model OCC.
Im Anschluss wird das auf Basis der Motorstromdaten des 6-DOF-Industrieroboters trainierte und getestete One-Class-Klassifizierungsmodell OCC gespeichert und analog zu dem in
drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 für jedes der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1, wobei die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 Motorstromdaten der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 umfassen.
torque-determining data D1, D2, D3, D4, D5, D6 for each of the six joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1, wherein the torque-determining data D1, D2, D3, D4, D5, D6 comprise motor current data of the six joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1.
In einem zweiten Schritt S2 werden die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 zu einem fusionierten Datensatz DNeu fusioniert, wobei das Fusionieren der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 mittels Feature-Level-Fusion erfolgt. Das Fusionieren der Daten mittels Feature-Level-Fusion umfasst ein Extrahieren von statistischen Kennzahlen aus den drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 unter Anwendung von Feature Extraction. Vorliegend werden 39 statistische Kennzahlen für jedes Gelenk G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 extrahiert, wobei es sich bei den statistischen Kennzahlen um statistische Kennzahlen aus dem Zeitbereich, statistische Kennzahlen aus dem Frequenzbereich und statistische Kennzahlen aus dem Zeit-Frequenzbereich handelt. Die 39 statistischen Kennzahlen können der Tabelle 1 entnommen werden. Tabelle 1
Aus den 39 extrahierten statistischen Kennzahlen werden unter Anwendung von Feature Selection statistische Kennzahlen selektiert, um einen verkleinerten fusionierten Datensatz DNeu zu erhalten. Vorliegend werden die Signalleistung im Zeitbereich PZeit, die Signalleistung der Power Spectral \DensityPFrequ, die Katz Fractility DK, den Magnitude Fluctuation Index (MFI) der Hüllkurve des Signals MFI und das Signal-Rausch-Verhältnis (SNR) SNRFeature basierend auf den drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 für die Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 selektiert. Das SNR beschreibt das Verhältnis von der Leistung an einer bestimmten Frequenz zu der Leistung der anderen Frequenzen im Spektrum der Kurzzeit-Fourier-Transformation (STFT). Die statistische KennzahlFrom the 39 extracted statistical key figures, statistical key figures are selected using feature selection in order to obtain a reduced fused data set D New . In this case, the signal power in the time domain P Time , the signal power of the Power Spectral \DensityP Frequ , the Katz Fractility D K , the Magnitude Fluctuation Index (MFI) of the envelope of the signal MFI and the signal-to-noise ratio (SNR) SNR Feature are selected based on the torque-determining data D1, D2, D3, D4, D5, D6 for the joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1. The SNR describes the ratio of the power at a certain frequency to the power of the other frequencies in the spectrum of the short-time Fourier transform (STFT). The statistical key figure
SNRFeature ist der Durchschnittswert aller SNRs und berechnet sich nach der nachstehenden Formel:
Für die statistische Kennzahl MFI wird die Hüllkurve des Motorstromsignals berechnet, mit einem Butterworth-Filter 5. Ordnung geglättet und anschließend der Durchschnitt der Differenz zwischen den lokalen Minima und lokalen Maxima berechnet:
Die Katz Fractal Dimension wird aus den Zeitreihen extrahiert. Die fraktale Dimension eines Signals mit der Länge N berechnet sich durch Abtasten der Abstände zwischen den einzelnen Datenpunkten nach der nachstehenden Formel:
Als weitere statistischen Kennzahlen wurden die Signalleistung im Zeitbereich PZeit und die Signalleistung der Power-Spectral Density des Signals PFrequ selektiert:
Mit der Abtastrate fs = 125 Hz, N als Anzahl der Datenpunkte des Signals und Pyy als Power Spectral Density (PSD) des Signals. Insgesamt werden somit fünf statistische Kennzahlen pro Gelenk G1, G2, G3, G4, G5, G6 zur Beschreibung der Motorstromdaten verwendet, was zu 30 Datenpunkten pro Messung bei Nutzung der Motorstromdaten D1, D2, D3, D4, D5, D6 der sechs Gelenke G1, G2, G3, G4, G5, G6 führt.With the sampling rate fs = 125 Hz, N as the number of data points of the signal and Pyy as the power spectral density (PSD) of the signal. In total, five statistical indicators per joint G1, G2, G3, G4, G5, G6 are used to describe the motor current data, which results in 30 data points per measurement when using the motor current data D1, D2, D3, D4, D5, D6 of the six joints G1, G2, G3, G4, G5, G6.
In einem dritten Schritt S3 umfasst das Verfahren ein Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des 6-DOF-Industrieroboters 1 vorliegt. Das Bestimmen erfolgt basierend auf dem fusionierten Datensatz DNeu. Hierzu wird auf den fusionierten Datensatz DNeu ein unsupervised Machine Learning-Modell ML angewandt. Das unsupervised Machine Learning-Modell ML umfasst ein One-Class-Klassifizierungsmodell OCC.In a third step S3, the method comprises determining whether an error or an anomaly is present in the handling or manipulation task of the 6-DOF industrial robot 1. The determination is made based on the fused data set D New . For this purpose, an unsupervised machine learning model ML is applied to the fused data set D New . The unsupervised machine learning model ML comprises a one-class classification model OCC.
Das One-Class-Klassifizierungsmodell OCC zur Anwendung auf den fusionierten Datensatz DNeu in dem in
Zum Training des in dem in
Das trainierte One-Class-Klassifizierungsmodell OCC wird im Anschluss mit einem Testdatensatz DTest basierend auf drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 für jedes der sechs Gelenke G1, G2, G3, G4, G5, G6 bei fehlerfreien und fehlerhaften Bewegungen der Gelenke G1, G2, G3, G4, G5, G6 getestet, um die Präzision und Verlässlichkeit des One-Class-Klassifizierungsmodells OCC abzuschätzen. Es hat sich gezeigt, dass mit Hilfe der fünf statistischen Kennzahlen SNR, MFI, DK, PZeit und PFrequ trotz starker Dimensionsreduktion des Datensatzes ein hoher Informationsgehalt beibehalten werden konnte und auch beim Training mit lediglich diesen fünf Kennzahlen weiterhin eine hohe Präzision und Verlässlichkeit für das One-Class-Klassifizierungsmodell OCC erzielt werden konnte.The trained one-class classification model OCC is then tested with a test data set D Test based on torque-determining data D1, D2, D3, D4, D5, D6 for each of the six joints G1, G2, G3, G4, G5, G6 during error-free and error-prone movements of the joints G1, G2, G3, G4, G5, G6 in order to estimate the precision and reliability of the one-class classification model OCC. It has been shown that with the help of the five statistical indicators SNR, MFI, D K , P Time and P Frequ, a high information content could be maintained despite the strong dimensionality reduction of the data set and that a high level of precision and reliability could still be achieved for the one-class classification model OCC even when training with just these five indicators.
Im Anschluss wird das auf Basis der Motorstromdaten des 6-DOF-Industrieroboters trainierte und getestete One-Class-Klassifizierungsmodell OCC gespeichert und analog zu dem in
In einem zweiten Schritt S2 umfasst das Verfahren ein Bestimmen von Entscheidungen E1, E2, E3, E4, E5, E6 basierend auf den drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6. Hierzu werden die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 zunächst zu einem Datensatz für jedes Gelenk G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 aufbereitet. Da die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 kontinuierlich erfasst werden, umfasst das Aufbereiten der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 zunächst ein Segmentieren in einzelne Datensequenzen. Die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 werden zudem gefiltert, wobei ein Tiefpassfilter verwendet wird, um ein Rauschen in den Daten zu entfernen. Das Aufbereiten umfasst zudem ein Interpolieren zumindest eines Teils der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6, sodass für jede Datensequenz, die insbesondere als Eingabevektor für ein Machine Learning-Modell genutzt wird, sowie vorzugsweise für jedes der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 die gleiche Anzahl an Datenpunkten vorliegt.In a second step S2, the method comprises determining decisions E1, E2, E3, E4, E5, E6 based on the torque-determining data D1, D2, D3, D4, D5, D6. For this purpose, the torque-determining data D1, D2, D3, D4, D5, D6 are first prepared into a data set for each joint G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1. Since the torque-determining data D1, D2, D3, D4, D5, D6 are continuously recorded, the preparation of the torque-determining data D1, D2, D3, D4, D5, D6 initially comprises segmenting into individual data sequences. The torque-determining data D1, D2, D3, D4, D5, D6 are also filtered, using a low-pass filter to remove noise in the data. The processing also includes interpolating at least part of the torque-determining data D1, D2, D3, D4, D5, D6, so that the same number of data points is available for each data sequence, which is used in particular as an input vector for a machine learning model, and preferably for each of the six joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1.
Das Bestimmen der Entscheidungen E1, E2, E3, E4, E5, E6 basierend auf den drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 erfolgt unter Anwendung von unsupervised Machine Learning-Modellen ML1, ML2, ML3, ML4, ML5, ML6. Bei den Machine Learning-Modellen ML1, ML2, ML3, ML4, ML5, ML6 handelt es sich dabei jeweils um ein One-Class-Klassifizierungsmodell OCC1, OCC2, OCC3, OCC4, OCC5, OCC6, vorliegend jeweils um ein LOF-Modell. Im vorliegenden Fall handelt es sich bei den Entscheidungen E1, E2, E3, E4, E5, E6 um binäre Entscheidungen. Mit Hilfe der One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 wird für jedes Gelenk G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 bestimmt, ob eine Entscheidung erster Art oder eine Entscheidung zweiter Art vorliegt. Eine Entscheidung erster Art meint hierbei das Vorliegen eines Fehlers oder einer Anomalie bei einer Einzelbewegung des jeweiligen Gelenks (Schlecht-Entscheidung), eine Entscheidung zweiter Art besagt, dass ein Fehler oder eine Anomalie bei der Einzelbewegung des jeweiligen Gelenks nicht vorliegt (Gut-Entscheidung). Im Einzelnen wird in dem zweiten Schritt S2 eine erste Entscheidung E1 basierend auf den ersten drehmomentbestimmenden Daten D1 unter Anwendung des ersten One-Class-Klassifizierungsmodells OCC1, eine zweite Entscheidung E2 basierend auf den zweiten drehmomentbestimmenden Daten D2 unter Anwendung des zweiten One-Class-Klassifizierungsmodells OCC2, eine dritte Entscheidung E3 basierend auf den dritten drehmomentbestimmenden Daten D3 unter Anwendung des dritten One-Class-Klassifizierungsmodells OCC3, eine vierte Entscheidung E4 basierend auf den vierten drehmomentbestimmenden Daten D4 unter Anwendung des vierten One-Class-Klassifizierungsmodells OCC4, eine fünfte Entscheidung E5 basierend auf den fünften drehmomentbestimmenden Daten D5 unter Anwendung des fünften One-Class-Klassifizierungsmodells OCC5 und eine sechste Entscheidung E6 basierend auf den sechsten drehmomentbestimmenden Daten D6 unter Anwendung des sechsten One-Class-Klassifizierungsmodells OCC6 getroffen. Zur Anwendung der One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 werden die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 zunächst aufbereitet, wobei das Aufbereiten ein Segmentieren der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 in einzelne Datensequenzen, ein Filtern der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 und schließlich ein Interpolieren zumindest eines Teils der drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 umfasst, sodass insbesondere für jede Datensequenz, die als Eingabevektor für die Machine Learning-Modelle verwendet wird, und für jedes der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 die gleiche Anzahl an Datenpunkten vorliegt.The decisions E1, E2, E3, E4, E5, E6 are determined based on the torque-determining data D1, D2, D3, D4, D5, D6 using unsupervised machine learning models ML1, ML2, ML3, ML4, ML5, ML6. The machine learning models ML1, ML2, ML3, ML4, ML5, ML6 are each a one-class classification model OCC1, OCC2, OCC3, OCC4, OCC5, OCC6, in this case each a LOF model. In the present case, the decisions E1, E2, E3, E4, E5, E6 are binary decisions. Using the one-class classification models OCC1, OCC2, OCC3, OCC4, OCC5, OCC6, it is determined for each joint G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1 whether a decision of the first type or a decision of the second type is present. A decision of the first type means the presence of an error or an anomaly in an individual movement of the respective joint (bad decision), a decision of the second type means that an error or an anomaly in the individual movement of the respective joint does not exist (good decision). Specifically, in the second step S2, a first decision E1 is made based on the first torque-determining data D1 using the first one-class classification model OCC1, a second decision E2 is made based on the second torque-determining data D2 using the second one-class classification model OCC2, a third decision E3 is made based on the third torque-determining data D3 using the third one-class classification model OCC3, a fourth decision E4 is made based on the fourth torque-determining data D4 using the fourth one-class classification model OCC4, a fifth decision E5 is made based on the fifth torque-determining data D5 using the fifth one-class classification model OCC5, and a sixth decision E6 is made based on the sixth torque-determining data D6 using the sixth one-class classification model OCC6. To apply the one-class classification models OCC1, OCC2, OCC3, OCC4, OCC5, OCC6, the torque-determining data D1, D2, D3, D4, D5, D6 are first prepared, wherein the preparation comprises segmenting the torque-determining data D1, D2, D3, D4, D5, D6 into individual data sequences, filtering the torque-determining data D1, D2, D3, D4, D5, D6 and finally interpolating at least a portion of the torque-determining data D1, D2, D3, D4, D5, D6, so that in particular the same number of data points is available for each data sequence used as an input vector for the machine learning models and for each of the six joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1.
In einem weiteren Schritt S3 werden die Entscheidungen E1, E2, E3, E4, E5, E6 mittels eines Entscheidungsalgorithmus zu einer fusionierten Entscheidung ENeu fusioniert, wobei das Bestimmen, ob ein Fehler oder eine Anomalie bei der Handhabungs- oder Manipulationsaufgabe des Industrieroboters vorliegt, basierend auf der fusionierten Entscheidung ENeu erfolgt. Der Entscheidungsalgorithmus basiert auf einer Mehrheitsentscheidung und umfasst ein Vergleichen der Anzahl an Entscheidungen der ersten Art und der Anzahl an Entscheidungen der zweiten Art, wobei die Entscheidungen E1, E2, E3, E4, E5, E6 jeweils der ersten oder zweiten Art zugeordnet werden. Die Entscheidung, die also für die Bewegung von den meisten Modellen getroffen wurde, wird als fusionierte Entscheidung ENeu übernommen. Für das Verfahren basierend auf der Mehrheitsentscheidung von den LOF-One-Class-Klassifizierungsmodellen OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters konnte eine Accuracy von 99,89 % und einem AUROC-Wert von 99,94 % erreicht werden. Alternativ kann der Entscheidungsalgorithmus auch eine Gewichtung der Entscheidungen E1, E2, E3, E4, E5, E6 umfassen. Beispielsweise können Entscheidungen basierend auf den drehmomentbestimmenden Daten solcher Gelenke stärker gewichtet werden, die einen größeren Einfluss auf die Gesamtbewegung des 6-DOF-Industrieroboters 1 haben.In a further step S3, the decisions E1, E2, E3, E4, E5, E6 are merged by means of a decision algorithm to form a merged decision E New , whereby the determination of whether an error or an anomaly in the handling or manipulation task of the industrial robot is present is made based on the merged decision E New . The decision algorithm is based on a Majority decision and includes a comparison of the number of decisions of the first type and the number of decisions of the second type, whereby the decisions E1, E2, E3, E4, E5, E6 are each assigned to the first or second type. The decision that was made for the movement by the most models is adopted as the fused decision E New . For the procedure based on the majority decision of the LOF one-class classification models OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 of the six joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot, an accuracy of 99.89% and an AUROC value of 99.94% could be achieved. Alternatively, the decision algorithm can also include a weighting of the decisions E1, E2, E3, E4, E5, E6. For example, decisions based on the torque-determining data of those joints that have a greater influence on the overall motion of the 6-DOF industrial robot 1 can be given greater weight.
Die One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 zur Anwendung auf die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 in dem in
In einem Schritt S2' wird für jedes Gelenk G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 ein One-Class-Klassifizierungsmodell OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 mit den drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 fehlerfreier Bewegungen der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 trainiert. Hierzu werden die drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 der fehlerfreien Bewegungen zunächst analog zu Schritt S2 in dem in
Die trainierten One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 werden im Anschluss jeweils mit einem Testdatensatz D1Test, D2Test, D3Test, D4Test, D5Test, D6Test basierend auf den jeweiligen drehmomentbestimmenden Daten D1, D2, D3, D4, D5, D6 fehlerfreier und fehlerhafter Bewegungen des jeweiligen der sechs Gelenke G1, G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1 getestet und die unter Anwendung von Decision-Level-Fusion erhaltene Gesamtentscheidung EGes mit dem tatsächlichen Ergebnis der Bewegung des Industrieroboters 1 verglichen, um die Präzision und Verlässlichkeit der One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 abzuschätzen.The trained one-class classification models OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 are then each tested with a test data set D1 Test , D2 Test , D3 Test , D4 Test , D5 Test , D6 Test based on the respective torque-determining data D1, D2, D3, D4, D5, D6 of error-free and faulty movements of the respective one of the six joints G1, G2, G3, G4, G5, G6 of the 6-DOF industrial robot 1 and the overall decision E Ges obtained using decision-level fusion is compared with the actual result of the movement of the industrial robot 1 in order to estimate the precision and reliability of the one-class classification models OCC1, OCC2, OCC3, OCC4, OCC5, OCC6.
Die trainierten und getesteten One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 werden gespeichert und analog zu dem in
Im Einzelnen werden in dem Verfahren gemäß
Zum Testen des One-Class-Klassifizierungsmodells OCC1 werden drehmomentbestimmende Daten D1 für fehlerfreie und fehlerhafte Bewegungen des Gelenks G1 erfasst, mittels Segmentierung, Tiefpassfilterung, Interpolation, und/oder Datennormalisierung aufbereitet und basierend auf diesen drehmomentbestimmenden Daten D1 wird für das erste Gelenk G1 ein Testdatensatz D1Test erstellt. Dies erfolgt analog für die weiteren Gelenke G2, G3, G4, G5, G6 des 6-DOF-Industrieroboters 1, für die Testdatensätze D2Test, D3Test, D4Test, D5Test, D6Test erstellt werden. Mit dem Testdatensatz D1Test wird das One-Class-Klassifizierungsmodell OCC1 getestet, mit dem Testdatensatz D2Test wird das One-Class-Klassifizierungsmodell OCC2 getestet, mit dem Testdatensatz D3Test wird das One-Class-Klassifizierungsmodell OCC3 getestet, mit dem Testdatensatz D4Test wird das One-Class-Klassifizierungsmodell OCC4 getestet, mit dem Testdatensatz D5Test wird das One-Class-Klassifizierungsmodell OCC5 getestet, mit dem Testdatensatz D6Test wird das One-Class-Klassifizierungsmodell OCC7 getestet und aus den Einzelentscheidungen E1, E2, E3, E4, E5, E6 der Modelle OCC2, OCC3, OCC4, OCC5, OCC6 für jeden Testdatensatz D1Test, D2Test, D3Test, D4Test, D5Test, D6Test wird eine Gesamtentscheidung EGes bestimmt und mit dem tatsächlichen Ergebnis der Bewegung des Industrieroboters 1 verglichen, um die Präzision und Verlässlichkeit der Decision-Level-Fusion mit den trainierten Modellen OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 abzuschätzen. Das trainierte und getestete One-Class-Klassifizierungsmodell OCC1 wird gespeichert und kann dann analog zu dem in
Im Anschluss werden die auf Basis der Motorstromdaten des 6-DOF-Industrieroboters trainierten und getesteten One-Class-Klassifizierungsmodelle OCC1, OCC2, OCC3, OCC4, OCC5, OCC6 gespeichert und analog zu dem in
Die Vorrichtung 200 kann beispielsweise so konfiguriert sein, dass sie das Verfahren zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters ausführt oder entsprechende Mittel (insbesondere eines der Mittel 201 bis 208) zur Ausführung des Verfahrens umfasst. Die Vorrichtung kann auch eine Vorrichtung sein, die wenigstens einen Prozessor (insbesondere Prozessor 201) und wenigstens einen Speicher (vorzugsweise Speicher 202 und/oder Speicher 203) mit Befehlen umfasst, wobei der wenigstens eine Speicher und die Befehle dazu konfiguriert sind, mit dem wenigstens einen Prozessor eine Vorrichtung, z.B. die Vorrichtung 200, zumindest zur Ausführung des Verfahrens zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters zu veranlassen.The
Der Prozessor 201 kann beispielsweise Befehle ausführen, die im Befehlsspeicher 203 gespeichert sind, wobei der Befehlsspeicher 203 beispielsweise ein computerlesbares Medium darstellen kann, das Befehle enthält, die, wenn sie vom Prozessor 201 ausgeführt werden, den Prozessor 201 veranlassen, das Verfahren zur Fehler- und/oder Anomalieerkennung bei einer Handhabungs- oder Manipulationsaufgabe eines Industrieroboters auszuführen.For example, the
Der Prozessor 201 kann ein Prozessor eines beliebigen geeigneten Typs sein. Der Prozessor 201 kann einen oder mehrere Mikroprozessoren, einen oder mehrere Prozessoren mit einem oder mehreren zugehörigen digitalen Signalprozessoren, einen oder mehrere Prozessoren ohne zugehörige digitale Signalprozessoren, einen oder mehrere spezielle Computerchips, ein oder mehrere feldprogrammierbare Gate-Arrays (FPGAs), einen oder mehrere Controller, eine oder mehrere Anwendungsspezifische Integrierte Schaltungen (ASICs) oder einen oder mehrere Computer umfassen, ist aber nicht darauf beschränkt.The
Der Prozessor 201 kann beispielsweise die Speicher 202 bis 204, die Kommunikationsschnittstelle(n) 205 und die Benutzerschnittstelle 206 steuern. Der Arbeitsspeicher 202 kann zum Beispiel ein flüchtiger Speicher sein. Dabei kann es sich beispielsweise um einen Direktzugriffsspeicher (RAM) oder einen dynamischen RAM (DRAM) handeln, um nur einige nicht einschränkende Beispiele zu nennen. Er kann zum Beispiel vom Prozessor 201 bei der Ausführung eines Betriebssystems und/oder Computerprogramms verwendet werden.For example, the
Der Befehlsspeicher 203 und/oder Datenspeicher 204 kann zum Beispiel ein nicht-flüchtiger Speicher sein. Er kann beispielsweise ein Flash-Speicher (oder ein Teil davon), ein ROM-, PROM-, EPROM- oder EEPROM-Speicher (oder ein Teil davon) oder eine Festplatte (oder ein Teil davon) sein, um nur einige Beispiele zu nennen. Die Kommunikationsschnittstelle(n) 205 ermöglichen es der Vorrichtung 200, mit anderen Einrichtungen zu kommunizieren. Die Kommunikationsschnittstelle(n) 205 kann (können) beispielsweise eine drahtlose Schnittstelle (z.B. eine Mobilfunkschnittstelle, eine WLAN-Schnittstelle und/oder eine BT/BLE-Schnittstelle) und/oder eine drahtgebundene Schnittstelle (z. B. eine IP-basierte Schnittstelle) umfassen, um beispielsweise mit Einrichtungen über das Internet zu kommunizieren.The instruction memory 203 and/or data memory 204 may, for example, be a non-volatile memory. It may, for example, be a flash memory (or a portion thereof), a ROM, PROM, EPROM or EEPROM memory (or a portion thereof), or a hard disk (or a portion thereof), to name just a few examples. The communication interface(s) 205 enable the
Die Benutzerschnittstelle 206 ist optional und kann ein Display zur Anzeige von Informationen für einen Benutzer und/oder ein Eingabegerät (z.B. eine Tastatur, ein Keypad, ein Touchpad, eine Maus usw.) zur Aufnahme von Informationen von einem Benutzer umfassen.The
Einige oder alle Bestandteile der Vorrichtung zur Datenverarbeitung 200 können z.B. über einen Bus verbunden werden. Einige oder alle Bestandteile der Vorrichtung zur Datenverarbeitung 200 können z.B. zu einem oder mehreren Modulen zusammengefasst werden.Some or all components of the
Die in dieser Spezifikation beschriebenen beispielhaften Ausführungsformen der vorliegenden Erfindung sollen auch in allen Kombinationen miteinander offenbart verstanden werden. Insbesondere soll auch die Beschreibung eines von einer Ausführungsform umfassten Merkmals - sofern nicht explizit gegenteilig erklärt - vorliegend nicht so verstanden werden, dass das Merkmal für die Funktion des Ausführungsbeispiels unerlässlich oder wesentlich ist.The exemplary embodiments of the present invention described in this specification should also be understood as disclosed in all combinations with one another. In particular, the description of a feature included in an embodiment - unless explicitly stated otherwise - should not be understood in this case to mean that the feature is essential or essential for the function of the embodiment.
In den Patentansprüchen verwendete Begriffe wie „umfassen“, „aufweisen“, „beinhalten“, „enthalten“ und dergleichen schließen weitere Elemente oder Schritte nicht aus. Unter die Formulierung „zumindest teilweise" fallen sowohl der Fall „teilweise" als auch der Fall „vollständig“. Die Formulierung „und/oder“ soll dahingehend verstanden werden, dass sowohl die Alternative als auch die Kombination offenbart sein soll, also „A und/oder B“ bedeutet „(A) oder (B) oder (A und B)“. Eine Mehrzahl von Einheiten, Personen oder dergleichen bedeutet im Zusammenhang dieser Spezifikation mehrere Einheiten, Personen oder dergleichen. Die Verwendung des unbestimmten Artikels schließt eine Mehrzahl nicht aus. Eine einzelne Einrichtung kann die Funktionen mehrerer in den Patentansprüchen genannten Einheiten bzw. Einrichtungen ausführen. In den Patentansprüchen angegebene Bezugszeichen sind nicht als Beschränkungen der eingesetzten Mittel und Schritte anzusehen.Terms used in the claims such as "comprise", "have", "include", "contain" and the like do not exclude further elements or steps. The wording "at least partially" includes both the case "partially" and the case "completely". The wording "and/or" is to be understood as meaning that both the alternative and the combination are to be disclosed, i.e. "A and/or B" means "(A) or (B) or (A and B)". A plurality of units, persons or the like in the context of this specification means several units, persons or the like. The use of the indefinite article does not exclude a plurality. A single device can perform the functions of several units or devices mentioned in the claims. Reference symbols given in the claims are not to be regarded as limitations on the means and steps used.
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA accepts no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- DE 10 2008 009 600 A1 [0073, 0077]DE 10 2008 009 600 A1 [0073, 0077]
- US 2006/0132747 A1 [0075]US 2006/0132747 A1 [0075]
- EP 1 614 008 B1 [0075]EP 1 614 008 B1 [0075]
- US 6,573,978 [0075]US 6,573,978 [0075]
- DE 10 2017 220 586 A1 [0080]DE 10 2017 220 586 A1 [0080]
- US 2018/0074303 A1 [0094]US 2018/0074303 A1 [0094]
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102024201928.3A DE102024201928A1 (en) | 2024-03-01 | 2024-03-01 | Method for error and/or anomaly detection in a handling or manipulation task of an industrial robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102024201928.3A DE102024201928A1 (en) | 2024-03-01 | 2024-03-01 | Method for error and/or anomaly detection in a handling or manipulation task of an industrial robot |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102024201928A1 true DE102024201928A1 (en) | 2025-01-09 |
Family
ID=93931360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102024201928.3A Withdrawn DE102024201928A1 (en) | 2024-03-01 | 2024-03-01 | Method for error and/or anomaly detection in a handling or manipulation task of an industrial robot |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102024201928A1 (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6573978B1 (en) | 1999-01-26 | 2003-06-03 | Mcguire, Jr. James P. | EUV condenser with non-imaging optics |
US20060132747A1 (en) | 2003-04-17 | 2006-06-22 | Carl Zeiss Smt Ag | Optical element for an illumination system |
DE102008009600A1 (en) | 2008-02-15 | 2009-08-20 | Carl Zeiss Smt Ag | Facet mirror e.g. field facet mirror, for use as bundle-guiding optical component in illumination optics of projection exposure apparatus, has single mirror tiltable by actuators, where object field sections are smaller than object field |
US20180074303A1 (en) | 2015-04-14 | 2018-03-15 | Carl Zeiss Smt Gmbh | Imaging optical unit and projection exposure unit including same |
DE102017220586A1 (en) | 2017-11-17 | 2019-05-23 | Carl Zeiss Smt Gmbh | Pupil facet mirror, illumination optics and optical system for a projection exposure apparatus |
DE112016001831B4 (en) * | 2015-05-21 | 2019-09-19 | Kastanienbaum GmbH | Method and device for controlling an actuator-driven robot joint |
DE102022206060A1 (en) * | 2021-06-16 | 2022-12-22 | Robert Bosch Gesellschaft mit beschränkter Haftung | DEFENSE MULTIMODAL FUSION MODELS AGAINST SINGLE-SOURCE ATTACKERS |
DE102021126188A1 (en) * | 2021-10-08 | 2023-04-13 | Dürr Systems Ag | Monitoring method for a robot and associated robotic system |
-
2024
- 2024-03-01 DE DE102024201928.3A patent/DE102024201928A1/en not_active Withdrawn
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6573978B1 (en) | 1999-01-26 | 2003-06-03 | Mcguire, Jr. James P. | EUV condenser with non-imaging optics |
US20060132747A1 (en) | 2003-04-17 | 2006-06-22 | Carl Zeiss Smt Ag | Optical element for an illumination system |
EP1614008B1 (en) | 2003-04-17 | 2009-12-02 | Carl Zeiss SMT AG | Optical element for a lighting system |
DE102008009600A1 (en) | 2008-02-15 | 2009-08-20 | Carl Zeiss Smt Ag | Facet mirror e.g. field facet mirror, for use as bundle-guiding optical component in illumination optics of projection exposure apparatus, has single mirror tiltable by actuators, where object field sections are smaller than object field |
US20180074303A1 (en) | 2015-04-14 | 2018-03-15 | Carl Zeiss Smt Gmbh | Imaging optical unit and projection exposure unit including same |
DE112016001831B4 (en) * | 2015-05-21 | 2019-09-19 | Kastanienbaum GmbH | Method and device for controlling an actuator-driven robot joint |
DE102017220586A1 (en) | 2017-11-17 | 2019-05-23 | Carl Zeiss Smt Gmbh | Pupil facet mirror, illumination optics and optical system for a projection exposure apparatus |
DE102022206060A1 (en) * | 2021-06-16 | 2022-12-22 | Robert Bosch Gesellschaft mit beschränkter Haftung | DEFENSE MULTIMODAL FUSION MODELS AGAINST SINGLE-SOURCE ATTACKERS |
DE102021126188A1 (en) * | 2021-10-08 | 2023-04-13 | Dürr Systems Ag | Monitoring method for a robot and associated robotic system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112018005533T5 (en) | DETECTION AND MEASUREMENT OF THE DIMENSIONS OF ASYMMETRIC STRUCTURES | |
EP2584493B1 (en) | Method for distinguishing between a real face and a two-dimensional image of the face in a biometric recording process | |
DE112017000464B4 (en) | Single-wavelength ellipsometry with improved spot size capability | |
DE112007001360T5 (en) | Stent Inspection System | |
DE112016000853T5 (en) | Optical metrology with reduced sensitivity to focus errors | |
EP4150295B1 (en) | Computer-implemented method for monitoring the status of a device for investigating objects and corresponding computer program product | |
CH714206B1 (en) | Methods and devices for designing optical systems. | |
AT524013A2 (en) | Methods and systems for classifying features in electronic designs | |
WO2023135131A1 (en) | Method for reproducing illumination and imaging properties of an optical production system during the illumination and imaging of an object by means of an optical measuring system | |
WO2015044362A1 (en) | Device and method for determining the imaging quality of an optical system, and optical system | |
DE202025102016U1 (en) | Combined semiconductor inspection system | |
DE112005001600T5 (en) | Simulation of scanning beam images by combining basic features extracted from a surface model | |
EP4437608A1 (en) | Method for determining the deposition accuracy of a plurality of electrode plates in a stack, and measuring device | |
DE102018202637A1 (en) | Method for determining a focus position of a lithography mask and metrology system for carrying out such a method | |
DE112019006092T5 (en) | LOOSELY COUPLED INSPECTION AND METROLOGY SYSTEM FOR MONITORING A PRODUCTION PROCESS WITH HIGH VOLUMES | |
DE102024201928A1 (en) | Method for error and/or anomaly detection in a handling or manipulation task of an industrial robot | |
EP4306322B1 (en) | Method for testing gravure cylinders and gravure plates | |
DE102021124252A1 (en) | Neural network systems for abstract thinking | |
DE102018202639A1 (en) | Method for determining a structure-independent contribution of a lithography mask to a fluctuation of the line width | |
DE102023124581B3 (en) | Computer-implemented method for simulating an aerial image of a photolithography mask model using a machine learning model | |
DE102014114864B4 (en) | Method and apparatus for determining a lateral offset of a pattern on a substrate relative to a desired position | |
CN111157551A (en) | Method for analyzing perovskite structure using machine learning | |
DE102023205136A1 (en) | Method for simulating illumination and imaging properties of an optical production system when illuminating and imaging an object by means of an optical measuring system | |
EP1435065A1 (en) | Automatic determination of geometric models for optical partial recognitions | |
DE102024122225A1 (en) | Computer-implemented method for defect detection in an object comprising integrated circuit patterns, and corresponding computer-readable medium, computer program and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R230 | Request for early publication | ||
R120 | Application withdrawn or ip right abandoned |