EP4533193A1 - Überwachen einer mehrachsigen maschine mittels interpretierbarer zeitreihenklassifikation - Google Patents

Überwachen einer mehrachsigen maschine mittels interpretierbarer zeitreihenklassifikation

Info

Publication number
EP4533193A1
EP4533193A1 EP23726104.5A EP23726104A EP4533193A1 EP 4533193 A1 EP4533193 A1 EP 4533193A1 EP 23726104 A EP23726104 A EP 23726104A EP 4533193 A1 EP4533193 A1 EP 4533193A1
Authority
EP
European Patent Office
Prior art keywords
axis machine
determining
state
time series
value
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.)
Pending
Application number
EP23726104.5A
Other languages
English (en)
French (fr)
Inventor
Jonas SCHWINN
Jonas Reiher
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KUKA Deutschland GmbH
Original Assignee
KUKA Deutschland GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KUKA Deutschland GmbH filed Critical KUKA Deutschland GmbH
Publication of EP4533193A1 publication Critical patent/EP4533193A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0224Process history based detection method, e.g. whereby history implies the availability of large amounts of data
    • G05B23/024Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1602Program controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1674Program controls characterised by safety, monitoring, diagnostic
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1628Program controls characterised by the control loop
    • B25J9/163Program controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/045Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence

Definitions

  • the object of the present invention is to improve a process, in particular a process of a multi-axis machine, and further in particular to reduce and/or avoid errors in the process, in particular error states in the multi-axis machine.
  • determining the interpretable result further includes issuing a warning occurs when the classification value of the state in the process and/or the state of the multi-axis machine is or is assigned to a value of an error class which lies in a, in particular predetermined and/or learned, warning range or corresponds to a warning range and/or an all-clear is issued , if the classification value of the state in the process and / or the state of the multi-axis machine is or is assigned to a value that lies in an, in particular predetermined and / or learned, all-clear range or corresponds to an all-clear range.
  • An “interpretable result” is preferably to be understood here as a result that can be read and understood by a user, in particular as a result that allows the user to draw direct conclusions about the (existing) channels, more particularly about a point in time and/or a period of time within the at least a channel and/or across all existing channels.
  • a “result” is preferably to be understood here as a classification of the at least one data time series, in particular all existing data time series, in particular individually and/or as a whole.
  • a “state of a multi-axis machine” is preferably defined herein as a predetermined parameter, in particular as a predetermined parameter that is of interest when operating a multi-axis machine, in particular with regard to possible sources of error, or as a state based on training (data) from Machine learning algorithm is classified as, in particular likely, critical for operating and/or continuing to operate the multi-axis machine and/or continuing the process and/or achieving goals with the process, in particular quality goals.
  • a user can understand what contribution individual existing channels and times, in particular time intervals, have to the result or classification.
  • the result can in particular increase the transparency of the algorithms used and also establish or increase the trust of users.
  • the result can reveal potential for improvement, in particular for the process and/or the multi-axis machine.
  • the method can create a particular possibility to check and/or improve black box algorithms (apart from their classification statistics).
  • sumJ (wj x ) + B describes mathematically exactly what contribution the input makes to the classification value.
  • Grad-CAM would therefore require a previously defined limit value for an automated checking of an activation score, which does not exist in particular in processes, in particular in multi-axis machines, particularly in robot processes, or at least it is not guaranteed that it exists. Therefore, Grad-CAM cannot provide a reliable basis for identifying important channels, as the scores can only be understood in relation to the other channels and to the data time series of the entire data set.
  • the invention is further based in one embodiment on providing a machine learning algorithm, in particular a convolutional neural network, with K layers the data time series channels in the first k (with 1 ⁇ k ⁇ K) layers, in particular of the neural network, are evaluated separately and these results are then brought together in the layers k + 1 to K and evaluated together.
  • a machine learning algorithm in particular a convolutional neural network
  • the inputs xk in layer k can still be assigned to the individual channels and time intervals.
  • the invention is based in one embodiment on the calculation of the contribution of a channel per data time series and a comparison of the contributions of the channels, in particular across the data set, and in particular with the help of probability distributions, further in particular in different Similar patterns may or may occur in channels that should be interpreted differently or evaluated differently using the method described here.
  • determining an interpretable result further comprises determining a probability with which the state of the process and/or the state of the multi-axis machine corresponds to a value of an error class that lies in a warning range or corresponds to a warning range, in particular for the at least one channel and/or for a time interval of the process.
  • the contributions bk_i are collected in layer k of the network and can still be assigned to individual channels and/or time intervals.
  • the invention is further based on the approach that all contributions are included as summands in the classification value, therefore in one embodiment subsets of contributions can be combined as desired by forming the sum over the subset, in particular over the entire contribution of a channel (sum over all time intervals of this channel), over the entire contribution of a time interval (sum over all channels in this time interval), the contribution of all channels that monitor a Cartesian coordinate, in particular of the multi-axis machine, and/or combinations of (before )specific time intervals and/or channels.
  • a probability of belonging to a specific, in particular existing, error class can be assigned to a particular, in particular given, contribution of the at least one channel, in particular by means of a normalization of the probability distribution.
  • the accuracy of a localization of important, in particular for classification, time intervals in a data time series can be increased or is thereby increased, in particular in comparison to convolutional neural networks with a differently configured last layer.
  • the contributions determined or calculated per time point and channel can be assigned to the probability distributions for IO and/or NIO based on the classification values per time point; in particular, this can subsequently be used to classify the contribution(s). new data time series for each time interval.
  • this makes it possible for a statement such as "In channel can be determined, in particular is determined.
  • the method further comprises evaluating and/or monitoring a process and/or a multi-axis machine.
  • this makes it possible for the process to be carried out more quickly and/or precisely, in particular for errors in the process to be noticed more quickly and, in particular, to be remedied or remedied, in particular by means of is or can be predicted by the machine learning algorithm.
  • this makes it possible for wear on the multi-axis machine to be localized quickly and/or precisely, in particular for incorrect execution of a process by the multi-axis machine to be determined, in particular by means of the Machine learning algorithm is or can be predicted.
  • the method includes a step of evaluating and/or monitoring the process and/or the multi-axis machine. Furthermore, in one embodiment, the method includes issuing a warning, stopping and/or changing the process, in particular a request for maintenance of the machine and/or carrying out a maintenance step, in particular a (re)calibration in particular of the machine and/or or the means for recording the at least one data time series. Furthermore, in one embodiment, the method includes repeating the process, in particular in a modified form.
  • the system has means for acquiring at least one data time series. Furthermore, in one embodiment, the system has means for determining an interpretable result using a machine learning algorithm, in particular based on the at least one data time series. In one embodiment, the means for acquiring at least one data time series is at least one sensor or is designed as a sensor.
  • the system has means for determining an average distance of different error classes in relation to a classification value.
  • the system has means for normalizing the probability distribution of the values of the error class and determining a probability, in particular with which a classification value is assigned to a warning area or an all-clear area, in particular is assigned, based on the probability distribution. In one embodiment, the system has means for determining an average distance for different error classes.
  • a system and/or a means in the sense of the present invention can be designed in terms of hardware and/or software technology, in particular at least one processing unit, in particular a microprocessor unit, preferably connected to a memory and/or bus system with data or signals, in particular digital processing unit ( CPU), graphics card (GPU) or the like, and/or one or more programs or program modules.
  • the processing unit can be designed to process commands that are implemented as a program stored in a memory system, to detect input signals from a data bus and/or to deliver output signals to a data bus.
  • a storage system can have one or more, in particular different, storage media, in particular optical, magnetic, solid-state and/or other non-volatile media.
  • the program can be designed in such a way that it embodies or is able to carry out the methods described here, so that the processing unit can carry out the steps of such methods and can therefore in particular operate or monitor the machine.
  • one or more, in particular all, steps of the method are carried out completely or partially automatically, in particular by the control or its means.
  • Fig. 3 shows schematically a method according to an embodiment of the present invention.
  • various means for detecting the at least one data time series Zi are shown schematically, in particular status sensors 2.1, which preferably detect or can detect a status of at least part of the multi-axis machine 1 or are in particular configured for this purpose; in particular force and/or torque sensors 2.2 or the like, which preferably detect or can detect a force and/or torque or the like or are configured for this purpose, and position sensors 2.3 which detect a position or pose or their time derivatives, in particular speed and/or acceleration can capture or capture or are set up for this purpose, in particular over time.
  • the recorded data time series Zi are transferred to means for determining S20 an interpretable result, in particular transmitted in data communication, in particular retrieved by them.
  • FIG. 3 shows schematically a method 100 for evaluating and/or checking a process and/or for evaluating and/or checking a multi-axis machine 1, in particular for controlling the process and/or the machine.
  • the method exemplarily has several method steps, with the acquisition of at least one data time series Zi being shown with S10. Furthermore, determining an interpretable result with S20 is shown in FIG. If the result describes a value that lies within a warning range, a warning is issued. If the result describes a value that is in an all-clear range, an all-clear is issued. This is shown in each case with S30.
  • S40 schematically represents the evaluation and/or monitoring, in particular controlling the process and/or the multi-axis machine. The method can preferably be repeated, which is shown by the dashed arrow in Figure 3, in particular with a modified process, a recalibrated multi-axis machine and/or a serviced multi-axis machine, or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Mechanical Engineering (AREA)
  • Biophysics (AREA)
  • Robotics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Fuzzy Systems (AREA)
  • Medical Informatics (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

Ein Verfahren (100) zum Bewerten und/oder Überwachen eines Prozesses und/oder einer mehrachsigen Maschine (1), wobei das Verfahren aufweist: Erfassen (S10) mindestens einer Datenzeitreihe (Zi), wobei die mindestens eine Datenzeitreihe (Zi) wenigstens einen Kanal umfasst, der wenigstens einen Parameter des Prozesses und/oder der mehrachsigen Maschine (1) beschreibt, und wobei die Datenzeitreihe (Zi) von dem Prozess verursacht wird; Bestimmen (S20) eines interpretierbaren Ergebnisses mittels eines Algorithmus des maschinellen Lernens, basierend auf der mindestens einen Datenzeitreihe (Zi), wobei das Ergebnis einen Klassifikationswert eines Zustands im Prozess und/oder eines Zustands der mehrachsigen Maschine (1) beschreibt; wobei beim Bestimmen des Ergebnisses eine Warnung ausgegeben (S30) wird, wenn der Klassifikationswert des Zustands im Prozess und/oder des Zustands der mehrachsigen Maschine (1) einem Wert einer Fehlerklasse zugeordnet wird, der in einem Warnbereich liegt oder einem Warnbereich entspricht und eine Entwarnung ausgegeben (S30), wenn der Klassifikationswert des Zustands im Prozess und/oder des Zustands der mehrachsigen Maschine (1) einem Wert einer Fehlerklasse zugeordnet wird, der in einem Entwarnbereich liegt oder einem Entwarnbereich entspricht.

Description

Beschreibung
Überwachen einer mehrachsigen Maschine mittels interpretierbarer Zeitreihenklassifikation
Die vorliegende Erfindung betrifft ein Verfahren zum Bewerten und/oder Überwachen eines Prozesses und/oder einer mehrachsigen Maschine, ein System zum Betreiben und/oder Überwachen einer mehrachsigen Maschine und ein Computerprogramm bzw. Computerprogrammprodukt.
Aufgabe der vorliegenden Erfindung ist es einen Prozess, insbesondere einen Prozess einer mehrachsigen Maschine, zu verbessern, weiter insbesondere Fehler im Prozess, insbesondere Fehlerzustände in der mehrachsigen Maschine, zu verringern und/oder zu vermeiden.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 10, 11 stellen ein System zum Betreiben und/oder Überwachen einer mehrachsigen Maschine bzw. ein Computerprogramm oder Computerprogrammprodukt unter Schutz, insbesondere zur Durchführung eines hier beschriebenen Verfahrens. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.
Nach einer Ausführung der vorliegenden Erfindung weist ein Verfahren zum Bewerten und/oder Überwachen eines Prozessors und/oder zum Überwachen einer mehrachsigen Maschine das Erfassen mindestens einer Datenzeitreihe auf. In einer Ausführung umfasst die mindestens eine Datenzeitreihe wenigstens einen Kanal, wobei der Kanal wenigstens einen Parameter des Prozesses und/oder der mehrachsigen Maschine beschreibt, insbesondere über ein (vorbestimmtes) Zeitintervall. In einer Ausführung wird bzw. ist die Datenzeitreihe von dem Prozess verursacht. In einer Ausführung weist das Verfahren das Bestimmen eines interpretierbaren Ergebnisses mittels eines Algorithmus des maschinellen Lernens, basierend auf der mindestens einen Datenzeitreihe, auf. In einer Ausführung beschreibt das Ergebnis einen Klassifikationswert eines Zustands im Prozess und/oder eines Zustands der mehrachsigen Maschine. In einer Ausführung weist das Bestimmen des interpretierbaren Ergebnisses ferner das Ausgeben einer Warnung auf, wenn der Klassifikationswert des Zustands im Prozess und/oder der Zustand der mehrachsigen Maschine einem Wert einer Fehlerklasse zugeordnet wird bzw. ist, der in einem, insbesondere vorbestimmten und/oder gelernten, Warnbereich liegt oder einem Warnbereich entspricht und/oder eine Entwarnung ausgegeben, wenn der Klassifikationswert des Zustands im Prozess und/oder der Zustand der mehrachsige Maschine einem Wert zugeordnet wird bzw. ist, der in einem, insbesondere vorbestimmten und/oder gelernten, Entwarnbereich liegt oder einem Entwarnbereich entspricht.
Ein „Kanal“ ist hierin vorzugsweise als Datenkanal zu verstehen, eine Datenzeitreihe vorzugsweise als Daten wenigstens eines über die Zeit aufgezeichneten Datenkanals. In einer Ausführung stellt ein Kanal Daten des Prozesses und/oder der mehrachsigen Maschine, insbesondere Positionsdaten, Beschleunigungsdaten, Stromdaten, Temperaturdaten und/oder Statusmeldungen, zur Verfügung. Die Daten können in einer Ausführung in einer Datei, Diagramm oder dergleichen aufgenommen werden bzw. sein, beispielsweise in einem KRC-Diag einem ähnlichen Datensatz oder Diagramm oder dergleichen.
Ein „interpretierbares Ergebnis“ ist hierin vorzugsweise als ein von einem Nutzer lesbares und verstehbares Ergebnis zu verstehen, insbesondere als Ergebnis, das dem Nutzer erlaubt direkt Rückschlüsse auf die (vorhandenen) Kanäle, weiter insbesondere auf einen Zeitpunkt und/oder einen Zeitraum innerhalb des wenigstens einen Kanals und/oder über alle vorhandenen Kanäle, zu ziehen. Ein „Ergebnis“ ist hierin vorzugsweise als Klassifizierung der mindestens einen Datenzeitreihe, insbesondere aller vorhandenen Datenzeitreihen, insbesondere einzelnen und/oder im Gesamten, zu verstehen.
Ein „Warnbereich“ ist hierin vorzugsweise als ein vorbestimmter Bereich, insbesondere Wertebereich, zu verstehen, der insbesondere anpassbar ist oder angepasst werden kann, insbesondere dynamisch, insbesondere vom Algorithmus des maschinellen Lernens. Ein „Entwarnbereich“ ist hierin vorzugsweise als ein vorbestimmter Bereich, insbesondere Wertebereich, zu verstehen, der insbesondere anfassbar ist oder angepasst werden kann, insbesondere dynamisch, insbesondere vom Algorithmus des maschinellen Lernens. Fällt ein Wert eines Zustandes des Prozesses und/oder des Zustands der mehrachsigen Maschine in einer Ausführung in einem Warnbereich oder einen Entwarnbereich wird entsprechend eine Meldung, insbesondere eine Warnung bzw. eine Entwarnung ausgegeben. In einer Ausführung kann eine Klassifizierung in einer Fehlerklasse diskrete Werte annehmen, insbesondere mehrstufige oder anders diskretisiert sein, insbesondere in binäre Werte wie beispielsweise „in Ordnung (IO)“ oder „nicht in Ordnung (NIO)“, alternativ kontinuierliche Werte, oder dergleichen.
Ein „Zustand einer mehrachsigen Maschine“ ist hierin vorzugsweise als ein vorbestimmter Parameter, insbesondere als ein vorbestimmter Parameter, der von Interesse beim Betreiben einer mehrachsigen Maschine ist, insbesondere in Hinblick auf mögliche Fehlerquellen, oder als ein Zustand der anhand von Trainings(daten) vom Algorithmus des maschinellen Lernens als, insbesondere wahrscheinlich, kritisch für ein Betreiben und/oder Weiterbetreiben der mehrachsigen Maschine und/oder Fortsetzen des Prozesses und/oder Erreichen von Zielen mit dem Prozess, insbesondere Qualitätsziele, klassifiziert wird, zu verstehen.
In einer Ausführung kann das Ergebnis, wenn eine Warnung ausgegeben wird, einen Hinweis auf einen Fehler im Prozess und/oder einen Fehler im Roboter geben bzw. einen entsprechenden Fehler feststellen bzw. mit dem Ergebnis festgestellt werden. Ein Fehler im Prozess kann in einer Ausführung insbesondere eine Abweichung von der gewünschten Trajektorie, dem gewünschten Prozessergebnis, eine fehlerhafte Montageoperation oder dergleichen sein. Ein Fehler in der mehrachsigen Maschine, insbesondere einem Roboter, kann in einer Ausführung eine Abnutzung wenigstens eines Getriebes, eines Lagers, eines Gelenks oder dergleichen sein, insbesondere Verschleiß an wenigstens einem Teil der mehrachsigen Maschine oder insbesondere des Roboters.
Vorteilhafterweise kann in einer Ausführung ein Nutzer nachvollziehen welchen Beitrag einzelne vorhandene Kanäle und Zeitpunkte, insbesondere Zeitintervalle, zum Ergebnis bzw. zur Klassifizierung haben. In einer Ausführung kann das Ergebnis insbesondere eine Transparenz der verwendeten Algorithmen erhöhen und ferner ein Vertrauen von Nutzem bzw. Anwendern herstellen oder erhöhen. In einer Ausführungsform können durch das Ergebnis Verbesserungspotenziale, insbesondere für den Prozess und/oder die mehrachsige Maschine, aufgedeckt werden. In einer Ausführung kann durch das Verfahren insbesondere eine Möglichkeit geschaffen werden, Blackbox Algorithmen (abseits ihrer Klassifikationsstatistiken) zu überprüfen und/oder zu verbessern.
Die Erfindung basiert in einer Ausführung auf dem Ansatz, dass Algorithmen des maschinellen Lernens, insbesondere neuronale Netze, wenn die letzte Aktivierung weggelassen wird, für konstante Eingänge (englisch: „Inputs”) x als gewichtete Summe (mit Gewichten w) dieser Inputs - SummeJ (w_i x_i) + B = y - dargestellt werden können, wobei y der Ausgang (englisch: „Output”) vor der letzten Aktivierungsfunktion (insbesondere Sigmoid und/oder Softmax) bezüglich einer Klasse ist und B ein konstanter Bias-Term, „y” kann (daher) in einer Ausführung als Klassifikationswert interpretiert werden; insbesondere kann bei hohen Werten von y im Vergleich mit anderen Fehlerklassen auf eine hohe Wahrscheinlichkeit dieser Fehlerklasse geschlossen werden bzw. diese anhand des Klassifikationswerts ermittelt werden. SummeJ (wj x ) + B beschreibt in einer Ausführung mathematisch exakt, welchen Beitrag der Input zum Klassifikationswert leistet.
Ferner basiert die Erfindung in einer Ausführung auf dem Ansatz, dass gezeigt werden kann, dass die Gewichte wj jeweils die Ableitungen dy/dxj darstellen, insbesondere werden Inputs mit zugehörigen Gradienten multipliziert, um Beiträge dieser Inputs, insbesondere Kanäle und Zeitpunkte, zu bestimmen. Vorteilhafterweise kann in einer Ausführung der exakte mathematische Zusammenhang der Beiträge und des Klassifikationswerts ermittelt werden bzw. sein: (SummeJ (dy/dxj * xj) + B = y), was insbesondere die Interpretierbarkeit erhöht. In einer Ausführung kann vorteilhafterweise die Mittelung der Gradienten weggelassen werden und insbesondere können negative Beiträge berücksichtigt werden, insbesondere im Vergleich mit Gradient-weighted Class Activation Mapping (Grad-CAM), das für die Klassifizierung von Bildern verwendet wird und nur eingeschränkt bzw. nicht auf Datenzeitreihen, insbesondere von Prozessen und/oder mehrachsigen Maschinen, anwendbar ist. Grad-CAM ist nicht geeignet für das hierin beschriebene Verfahren, insbesondere weil bei Grad-CAM pro Zeitintervall und Kanal eine Aktivierungswertung bzw. ein Aktivierungsscore berechnet wird, der den Beitrag zur Klassifikation bemisst und insbesondere einen höheren Aktivierungsscore einem höheren Beitrag diese Kanals zur Klassifikation beimisst. Grad-CAM würde daher für ein automatisiertes Prüfen eines Aktivierungsscores einen zuvor festzulegenden Grenzwert benötigen, der insbesondere bei Prozessen, insbesondere von mehrachsigen Maschinen, weiter insbesondere bei Roboterprozessen, nicht existiert oder es zumindest nicht garantiert ist, dass dieser existiert. Daher kann Grad-CAM keine zuverlässliche Grundlage für das Identifizieren von wichtigen Kanälen bieten, da die Scores lediglich in Relation zu den anderen Kanälen und zu den Datenzeitreihen des gesamten Datensatzes verstanden werden können.
In Bezug auf den Unsicherheitsfaktor B, der für jeden Input unterschiedlich sein kann und damit einen Vergleich der Beiträge erschweren kann, basiert die Erfindung ferner in einer Ausführung darauf, einen Algorithmus des maschinellen Lernens, insbesondere ein Convolutional Neural Network, mit K Schichten bereitzustellen, der die Datenzeitreihenkanäle in den ersten k (mit 1 < k < K) Schichten, insbesondere des neuronalen Netzes, getrennt auswertet und diese Ergebnisse dann in den Schichten k+1 bis K zusammengeführt und gemeinsam auswertet. In anderen Worten können in einer Ausführung die Inputs xk in der Schicht k noch den einzelnen Kanälen sowie Zeitintervallen zugeordnet werden.
Mit der Erkenntnis, dass in den Schichten k+1 bis K keine Bias-Terme verwendet werden müssen (Convolutions ohne Bias-Terme und keine Batch-Normalization) um eine, insbesondere eine erforderliche bzw. predeterminierte, Klassifikationsgenauigkeit zu erhalten, kann (in einer Ausführung) für den zweiten Teil des neuronalen Netzes eine Darstellung SummeJ (xk_i wk_i) = y ohne Biasterm verwendet werden. Die Summanden bk_i = xk_i wk_i beschreiben (in einer Ausführung) den Beitrag einzelner Kanäle in verschiedenen Zeitintervallen zum Klassifikationswert, insbesondere gibt es außerhalb dieser Summanden keinen Einfluss auf den Klassifikationswert. Hierdurch ergibt sich (in einer Ausführung), dass die Beiträge nach wie vor für jede Datenzeitreihe unterschiedlich sind, die Varianz aber durch die Elimination des Bias-Terms vorteilhafterweise reduziert wird. Die Gewichte wkj sind (in einer Ausführung) dabei über die Gradienten dy/dxk_i gegeben.
In anderen Worten basiert die Erfindung in einer Ausführung auf der Berechnung des Beitrags eines Kanals pro Datenzeitreihe und einem Vergleich der Beiträge der Kanäle, insbesondere über den Datensatz hinweg, und insbesondere mit Hilfe von Wahrscheinlichkeitsverteilungen, wobei weiter insbesondere in verschiedenen Kanälen ähnliche Muster vorkommen (können), die unterschiedlich interpretiert werden sollten bzw. mit dem hierein beschriebenen Verfahren unterschiedlich bewertet werden.
In einer Ausführung umfasst das Bestimmen eines interpretierbaren Ergebnisses ferner das Bestimmen einer Wahrscheinlichkeit mit welcher der Zustand des Prozesses und/oder der Zustand der mehrachsigen Maschine einem Wert einer Fehlerklasse entspricht, der in einem Warnbereich liegt oder einem Warnbereich entspricht, insbesondere für den wenigstens einen Kanal und/oder für ein Zeitintervall des Prozesses.
Vorteilhafterweise kann hierdurch in einer Ausführung pro Datenzeitreihe und/oder über den ganzen Datensatz interpretierbare, insbesondere quantitative Aussagen zum Beitrag des wenigstens einen Kanals, insbesondere zum Beitrag der vorhandenen Kanäle, erreicht werden, insbesondere mittels des Verfahrens.
Nach einer Ausführung werden pro, insbesondere vorhandener, Fehlerklasse Wahrscheinlichkeitsverteilungen ihrer Beiträge, insbesondere über einen Trainingsdatensatz hinweg, berechnet. Die Beiträge bk_i werden in einer Ausführung in Schicht k des Netzwerks erhoben und können hier noch einzelnen Kanälen und/oder Zeitintervallen zugeordnet werden.
Die Erfindung basiert ferner in einer Ausführung auf dem Ansatz, dass alle Beiträge als Summanden in den Klassifikationswert eingehen, daher kann man bzw. werden in einer Ausführung Untermengen von Beiträgen beliebig zusammengefasst, indem die Summe über die Untermenge gebildet wird, insbesondere über den gesamten Beitrag eines Kanals (Summe über alle Zeitintervalle dieses Kanals), über den gesamten Beitrag eines Zeitintervalls (Summe über alle Kanäle in diesem Zeitintervall), der Beitrag aller Kanäle, die eine kartesische Koordinate, insbesondere der mehrachsigen Maschine, überwachen und/oder Kombinationen aus (vor)bestimmten Zeitintervallen und/oder Kanälen.
Untermenge können hierin vorzugsweise als Summe über die Beiträge eines Kanals in der Zeit verstanden werden. Anhand des Labels für eine Datenzeitreihe werden in einer Ausführung die Beiträge einer Untermege dann in Fehlerklassen, wie beispielsweise IO und NIO, eingeteilt. Für jede Fehlerklasse werden in einer Ausführung anschließend Wahrscheinlichkeitsverteilungen berechnet bzw. ermittelt, insbesondere durch Auswertung der Untermenge über alle n Zeitreihen, insbesondere aus dem Trainingsdatensatz, mit einem Ergebnis, das insgesamt n Werte verteilt auf verschiedene Fehlerklassen beschreibt. In einer Ausführung werden die Werte einer Klasse dann jeweils in eine Wahrscheinlichkeitsverteilung überführt.
In einer Ausführung umfasst das Bestimmen eines interpretierbaren Ergebnisses das Ermitteln einer mittleren Distanz von verschiedenen Fehlerklassen in Bezug auf einen Klassifikationswert.
Hierdurch kann in einer Ausführung vorteilhafterweise eine allgemein gültige Aussage zum Prozess, insbesondere zur Gesamtheit der Datenzeitreihen gemacht werden, insbesondere in der Art: „Die durchschnittliche Distanz von Kanal X entspricht einem Drittel des durschnittlichen Abstands von IO- und NIO-Samples im Klassifikationswert" oder dergleichen. Ferner kann in einer Weiterbildung vorteilhafterweise eine Aussagen für beliebige Zeitintervalle und Kanäle mathematisch korrekt aggregiert werden und insbesondere eine Aussage in der Art von: "In Kanal X und Y ergibt sich in Sekunde 5 bis 10 eine Fehlerwahrscheinlichkeit von 95% für diese Zeitreihe", "Die Distanzen der aggregierten Kanäle X, Y und Z entsprechen 98% des durschnittlichen Abstands von IO- und NIO-Samples im Klassifikationswert" oder dergleichen ermitteln.
In einer Ausführung weist das Verfahren das Ermitteln jeweils einer Wahrscheinlichkeitsverteilung pro, insbesondere pro vorhandener, Fehlerklasse für einen Beitrag des wenigstens einen Kanals zum Klassifikationswert auf. Für die Wahrscheinlichkeitsverteilung können in einer Weiterbildung insbesondere eine Kerndichteschätzung (englisch: „Gaussian Kemel Density Estimation“) und/oder Histogramme verwendet werden. In einer Ausführung können andere Darstellungen von Wahrscheinlichkeitsverteilungen verwendet werden um die Kerndichteschätzung und/oder Histogramme zu ersetzen.
In einer Ausführung weist das Verfahren ferner das Normieren der Wahrscheinlichkeitsverteilung der Werte der Fehlerklasse und Ermitteln einer Wahrscheinlichkeit aufweist, mit der ein Klassifikationswert einem Warnbereich oder einem Entwarnbereich zugeordnet wird, insbesondere zugeordnet ist, basierend auf der Wahrscheinlichkeitsverteilung.
In einer Ausführung kann hierdurch vorteilhafterweise, insbesondere mittels einer Normierung der Wahrscheinlichkeitsverteilung, einem, insbesondere gegebenen, Beitrag des wenigstens einen Kanals eine Wahrscheinlichkeit der Zugehörigkeit zu einer bestimmten, insbesondere vorhandenen, Fehlerklasse, zugeordnet werden.
Hierdurch kann in einer Ausführung vorteilhafterweise eine Aussage wie insbesondere „Ein Beitrag von Null hat in einem Kanal in der IO-Verteilung eine Wahrscheinlichkeit von 2% und in der NIO-Verteilung eine Wahrscheinlichkeit von 10% und normiert wird bei dem Kanal mit 83% von einem NIO-Sample ausgegangen“ (hier beispielhaft für den Fall einer IO/NIO Klassifizierung) oder dergleichen. Vorteilhafterweise lassen sich in einer Ausführung mit den Wahrscheinlichkeitsverteilungen, insbesondere Wahrscheinlichkeiten, eine interpretierbare Aussage zu Beiträgen von verschiedenen Kanälen zu einem Klassifikationswert bzw. einer Einordnung in einen Warnbereich oder einen Entwarnbereich ermitteln, insbesondere kann ein Konfidenzniveau ermittelt werden, mit dem ein Algorithmus von einer Zuordnung in einer Fehlerklasse ausgeht.
Nach einer Ausführung weist das Verfahren ferner das Ermitteln einer Wasserstein- Distanz für unterschiedliche Fehlerklassen auf. Alternativ oder ergänzend kann in einer Ausführung mit einer Intersection-Over-Unit-Metrik eine durchschnittliche Distanz zwischen den (unterschiedlichen Fehlerklassen) oder eine entsprechende Distanz ermittelt werden bzw. wird eine entsprechende Distanz ermittelt, insbesondere wenn die Wahrscheinlichkeitsverteilungen disjunkt sind, kann in einer Ausführung die Klassifikation schon anhand dieser Verteilungen mit zumindest im Wesentlichen 100 % Genauigkeit erfolgen.
Vorteilhafterweise kann hierdurch in einer Ausführung ermittelt werden, wie weit Beiträge einer Fehlerklasse, insbesondere von IO und NIO bzw. Warnbereich und Entwarnbereich, insbesondere durchschnittlich, auseinander liegen. Hierdurch kann in einer Ausführung die Wichtigkeit von Untermengen von Beiträgen ermittelt werden. In anderen Worten kann in einer Ausführung die ermittelte Distanz vorteilhafterweise als ein Maß für eine Wchtigkeit einer Untermenge von Beiträgen zu einem Klassifikationswert verwendet werden. Nach einer Ausführung umfasst, insbesondere ist, der Algorithmus des maschinellen Lernens ein Convolutional Neural Network bzw. ist als Convolutional Neural Network konfiguriert. Vorteilhafterweise kann hierdurch in einer Ausführung ermöglicht werden, dass der Algorithmus effizient(er) arbeitet bzw. effizient(er) einen hierin beschriebenen Prozess bewertet und/oder überwacht.
Nach einer Ausführung weist der Algorithmus des maschinellen Lernens, insbesondere wenn der Algorithmus des maschinellen Lernens ein Convolutional Neural Network umfasst, insbesondere ist, als letzte Schicht eine Max-Pooling Schicht, insbesondere über die Zeitdimension.
Hierdurch kann in einer Ausführung ermöglicht werden, dass jeder Eingang, insbesondere Input, dieses Pooling-Layers dem Klassifikationswert für den zugehörigen Zeitpunkt entspricht, insbesondere wenn der maximale Wert insbesondere größer als Null ist, die Datenzeitreihe als NIO klassifiziert wird und respektive, insbesondere wenn der maximale Wert kleiner als Null ist, die Datenzeitreihe als IO klassifiziert wird. In anderen Worten kann in einer Ausführung hierdurch ermöglicht werden, dass Bereiche, in denen ein NIO Ereignis vorliegt bzw. vorlag, insbesondere zu erwarten ist, mit einem Wert über Null markiert, respektive (Zeit)bereiche, die nicht für die NIO Klassifizierung verantwortlich waren bzw. sind, als IO markiert. Vorteilhafterweise kann in einer Ausführung hierdurch eine Genauigkeit einer Lokalisierung von wichtigen, insbesondere für eine Klassifizierung, Zeitintervallen in einer Datenzeitreihe erhöht werden bzw. ist hierdurch erhöht, insbesondere im Vergleich zu Convolutional Neural Networks mit einem anders konfigurierten letzten Layer. Ferner kann hierdurch in einer Ausführung ermöglicht werden, dass die pro Zeitpunkt und Kanal ermittelten bzw. berechneten Beiträge sich anhand der Klassifikationswerte pro Zeitpunkt den Wahrscheinlichkeitsverteilungen für IO und/oder NIO zuteilen lassen, insbesondere kann hierdurch nachfolgend die Einordnung des und/oder der Beiträge einer neuen Datenzeitreihe für jedes Zeitintervall ermöglicht werden. Vorteilhafterweise kann in einer Ausführung hierdurch ermöglicht werden, dass eine Aussage wie "Im Kanal X ergibt sich in Sekunde 5 bis 10 eine Fehlerwahrscheinlichkeit von 5%, in Sekunde 20 bis 25 liegt diese bei 95%" oder dergleichen als interpretierbares Ergebnis ermittelbar ist bzw. ermittelt werden kann, insbesondere ermittelt wird. Nach einer Ausführung weist das Verfahren ferner das Bewerten und/oder Überwachen eines Prozesses und/oder einer mehrachsigen Maschine auf. Vorteilhafterweise kann in einer Ausführung hierdurch ermöglicht werden, dass der Prozess schnell(er) und/oder präzise(r) ausgeführt werden kann, insbesondere Fehler im Prozess schnell(er) bemerkt werden, weiter insbesondere behoben werden können bzw. behoben werden, insbesondere mittels des Algorithmus des maschinellen Lernens vorhergesagt wird bzw. werden kann. Vorteilhafterweise kann in einer Ausführung hierdurch ermöglicht werden, dass ein Verschleiß der mehrachsigen Maschine schnell(er) und/oder präzise(r) lokalisiert werden kann bzw. wird, insbesondere ein fehlerbehaftetes Ausführen eines Prozesses durch die mehrachsige Maschine ermittelt werden kann, insbesondere mittels des Algorithmus des maschinellen Lernens vorhergesagt wird bzw. werden kann.
Nach einer Ausführung weist das Verfahren einen Schritt des Bewertens und/oder Überwachens des Prozesses und/oder der mehrachsigen Maschine auf. Ferner weist das Verfahren in einer Ausführung das Ausgeben einer Warnung, ein Stoppen und/oder Verändern des Prozesses auf, insbesondere eine Aufforderung zu einer Wartung der Maschine und/oder ein Durchführen eines Wartungsschritts, insbesondere eine (Re-)Kalibrierung insbesondere der Maschine und/oder der Mittel zum Erfassen der mindestens einen Datenzeitreihe, auf. Ferner weist das Verfahren in einer Ausführung ein Wiederholen des Prozesses, insbesondere in modifizierter Form, auf.
Hierdurch kann in einer Ausführung ermöglicht werden, dass der Prozess und/oder die mehrachsige Maschine wenig(er) fehleranfällig ist, insbesondere robust(er) gegen Fehler ist
Nach einer Ausführung ist der Algorithmus des maschinellen Lernens oder ein weiterer Algorithmus konfiguriert, aus den berechneten Beiträgen die Fehlerklasse, insbesondere einen Klassifikationswert, einer Datenzeitreihe vorherzusagen, insbesondere können diese darauf trainiert werden bzw. sind darauf trainiert.
Nach einer Ausführung ist der Prozess ein Prozess, der von wenigstens einer mehrachsigen Maschine, insbesondere wenigstens einem Roboter, ausgeführt wird bzw. ausführbar ist. In einer Ausführung ist die mehrachsige Maschine ein Roboter. Nach einer Ausführung der vorliegenden Erfindung wird ein System zum Betreiben und/oder Überwachen wenigstens einer mehrachsigen Maschine, insbesondere wenigstens eines Roboters, das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist, bereitgestellt. In einer Ausführung weist das System wenigstens eine mehrachsige Maschine und/oder wenigstens einen Roboter auf.
In einer Ausführung weist das System Mittel zum Erfassen mindestens einer Datenzeitreihe auf. Ferner weist das System in einer Ausführung Mittel zum Bestimmen eines interpretierbaren Ergebnisses mittels eines Algorithmus des maschinellen Lernens, insbesondere basierend auf der mindestens einen Datenzeitreihe, auf. In einer Ausführung ist das Mittel zum Erfassen mindestens einer Datenzeitreihe wenigstens ein Sensor bzw. als Sensor ausgebildet.
Ferner weist das System in einer Ausführung Mittel zum Bestimmen einer Wahrscheinlichkeit mit welcher der Klassifikationswert des Zustands des Prozesses und/oder des Zustands der mehrachsigen Maschine einem Wert einer Fehlerklasse entspricht, der in einem Warnbereich liegt oder einem Warnbereich entspricht, insbesondere für den wenigstens einen Kanal und/oder für ein Zeitintervall des Prozesses, auf.
In einer Ausführung weist das System Mittel zum Ermitteln einer mittleren Distanz von verschiedenen Fehlerklassen in Bezug auf einen Klassifikationswert auf.
In einer Ausführung weist das System Mittel zum Ermitteln jeweils einer Wahrscheinlichkeitsverteilung pro, insbesondere vorhandener, Fehlerklasse für einen Beitrag des wenigstens einen Kanals zum Klassifikationswert auf.
In einer Ausführung weist das System Mittel zum Normieren der Wahrscheinlichkeitsverteilung der Werte der Fehlerklasse und Ermitteln einer Wahrscheinlichkeit auf, insbesondere mit der ein Klassifikationswert einem Warnbereich oder einem Entwarnbereich zugeordnet wird, insbesondere zugeordnet ist, basierend auf der Wahrscheinlichkeitsverteilung, auf. In einer Ausführung weist das System Mittel zum Ermitteln einer durchschnittlichen Distanz für unterschiedliche Fehlerklassen auf.
In einer Ausführung weist das System Mittel zum Bewerten und/oder Überwachen des Prozesses und/oder der mehrachsigen Maschine und insbesondere wenn beim Bestimmen des Ergebnisses eine Warnung ausgegeben wird, Stoppen und/oder Verändern des Prozesses und/oder Warten der mehrachsigen Maschine, insbesondere wiederholen, weiter insbesondere in modifizierter Form, des Prozesses, auf.
Ein System und/oder ein Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere wenigstens eine, vorzugsweise mit einem Speicher- und/oder Bussystem daten- bzw. signalverbundene, insbesondere digitale, Verarbeitungs-, insbesondere Mikroprozessoreinheit (CPU), Graphikkarte (GPU) oder dergleichen, und/oder ein oder mehrere Programme oder Programmmodule aufweisen. Die Verarbeitungseinheit kann dazu ausgebildet sein, Befehle, die als ein in einem Speichersystem abgelegtes Programm implementiert sind, abzuarbeiten, Eingangssignale von einem Datenbus zu erfassen und/oder Ausgangssignale an einen Datenbus abzugeben. Ein Speichersystem kann ein oder mehrere, insbesondere verschiedene, Speichermedien, insbesondere optische, magnetische, Festkörper- und/oder andere nicht-flüchtige Medien aufweisen. Das Programm kann derart beschaffen sein, dass es die hier beschriebenen Verfahren verkörpert bzw. auszuführen imstande ist, sodass die Verarbeitungseinheit die Schritte solcher Verfahren ausführen kann und damit insbesondere die Maschine betreiben bzw. überwachen kann.
Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere computerlesbares und/oder nicht-flüchtiges, Speichermedium zum Speichern eines Programms bzw. von Anweisungen bzw. mit einem darauf gespeicherten Programm bzw. mit darauf gespeicherten Anweisungen aufweisen, insbesondere sein. In einer Ausführung veranlasst ein Ausführen dieses Programms bzw. dieser Anweisungen durch ein System bzw. eine Steuerung, insbesondere einen Computer oder eine Anordnung von mehreren Computern, das System bzw. die Steuerung, insbesondere den bzw. die Computer, dazu, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen, bzw. sind das Programm bzw. die Anweisungen hierzu eingerichtet.
In einer Ausführung werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch die Steuerung bzw. ihr(e) Mittel.
In einer Ausführung weist das System wenigstens eine, insbesondere die, mehrachsige Maschine und/oder wenigstens einen Roboter auf.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
Fig. 1 : eine mehrachsige Maschine, die mittels eines Verfahrens nach einer Ausführung der vorliegenden Erfindung überwacht wird, insbesondere gesteuert wird;
Fig. 2: den schematischen Aufbau eines neuronalen Netzes nach einer Ausführung der vorliegenden Erfindung; und
Fig. 3 schematisch ein Verfahren nach einer Ausführung der vorliegenden Erfindung.
Fig. 1 zeigt eine mehrachsige Maschine 1 , die mittels eines Verfahrens 100 überwacht, insbesondere gesteuert wird. Die mehrachsige Maschine 1 der Figur 1 ist beispielhaft als Roboter dargestellt. Der Roboter weist exemplarisch Mittel 2 zum Erfassen S10 mindestens einer Datenzeitreihe Zi auf. In Figur 1 sind exemplarisch verschiedene Mittel zum Erfassen der mindestens einen Datenzeitreihe Zi schematisch dargestellt, insbesondere Zustandssensoren 2.1 , die vorzugsweise einen Zustand wenigstens eines Teils der mehrachsigen Maschine 1 erfassen bzw. erfassen können bzw. insbesondere hierzu konfiguriert sind; insbesondere Kraft- und/oder Drehmomentsensoren 2.2 oder dergleichen, die vorzugsweise eine Kraft- und/oder ein Drehmoment oder dergleichen erfassen bzw. erfassen können bzw. hierzu konfiguriert sind und Lagesensoren 2.3, die eine Position bzw. Pose oder deren zeitliche Ableitungen, insbesondere Geschwindigkeit und/oder Beschleunigung erfassen bzw. erfassen können bzw. hierzu eingerichtet sind, jeweils insbesondere über die Zeit. Die erfassten Datenzeitreihen Zi werden an Mittel zum Bestimmen S20 eines interpretierbaren Ergebnisses übergeben, insbesondere in Datenkommunikation übersendet, insbesondere von diesen abgerufen.
Figur 2 zeigt schematisch ein künstliches neuronales Netz mit verschiedenen Schichten (englisch: „layer), sowie Eingängen (englisch: „inputs“) x1 bis xn, die in die Schichten 1 bis k eingehen, hier dargestellt durch eine gestrichelte Linie bzw. drei Punkte. Mit K1 bis Kn sind der wenigstens einen Datenzeitreihe vorhandenen Kanäle dargestellt, die (zunächst) getrennt ausgewertet werden. Daran anschließend sind Faltungsschichten von k + 1 bis k + 2 und k + 2 bis K -1 mit einem (Zwischen)ergebnis M1 und M2 dargestellt, die wie hierin beschrieben, ohne Biasterme und/oder Batchnorm-Schicht angewendet werden. Mit y ist ein Ausgang (englisch: „output“) dargestellt, der ein interpretierbares Ergebnis beschreibt, vorzugsweise und/oder vorteilhafterweise ermöglicht. Dieses Ergebnis wird bzw. ist nach der Schicht K bereitgestellt.
Figur 3 zeigt schematisch ein Verfahren 100 zum Bewerten und/oder Überprüfen eines Prozesses und/oder zum Bewerten und/oder Überprüfen einer mehrachsigen Maschine 1 , insbesondere zum Steuern des Prozesses und/oder der Maschine. Das Verfahren weist exemplarisch mehrere Verfahrensschritte auf, wobei das Erfassen wenigstens einer Datenzeitreihe Zi mit S10 dargestellt ist. Ferner ist in Figur 3 das Bestimmen eines interpretierbaren Ergebnisses mit S20 dargestellt. Beschreibt das Ergebnis einen Wert, der in einem Warnbereich liegt, wird eine Warnung ausgegeben. Beschreibt das Ergebnis einen Wert, der in einem Entwarnbereich liegt, wird eine Entwarnung ausgegeben. Dies ist jeweils mit S30 dargestellt. S40 stellt schematisch das Bewerten und/oder Überwachen, insbesondere Steuern des Prozesses und/oder der mehrachsigen Maschine dar. Das Verfahren kann vorzugsweise wiederholt werden, was durch den gestrichelten Pfeil in Figur 3 dargestellt ist, insbesondere mit einem modifizierten Prozess, einer rekalibrierten mehrachsigen Maschine und/oder einer gewarteten mehrachsigen Maschine, oder dergleichen.
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. Außerdem sei darauf hingewiesen, dass es sich bei den exemplarischen Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die Anwendungen und den Aufbau in keiner Weise einschränken sollen. Vielmehr wird dem Fachmann durch die vorausgehende Beschreibung ein Leitfaden für die Umsetzung von mindestens einer exemplarischen Ausführung gegeben, wobei diverse Änderungen, insbesondere in Hinblick auf die Funktion und Anordnung der beschriebenen Bestandteile, vorgenommen werden können, ohne den Schutzbereich zu verlassen, wie er sich aus den Ansprüchen und diesen äquivalenten Merkmalskombinationen ergibt.
Bezuqszeichenliste
1 mehrachsige Maschine
2 Mittel zum Erfassen von Datenzeitreihen
2.1 , 2.2, 2.3 beispielhafte Mittel zum Erfassen von Datenzeitreihen, insbesondere
Sensoren
10 System
100 Verfahren
S10 Erfassen von wenigstens einer Datenzeitreihe
S20 Bestimmen eines interpretierbaren Ergebnisses
S30 Ausgeben einer Warnung oder Entwarnung
S40 Bewerten und/oder Überwachen, insbesondere Steuern der mehrachsigen Maschine x1 ... xn Eingänge
K1 ... Kn Kanäle
M1 Zwischenergebnis der ersten Faltungsschichten
M2 Zwischenergebnis der zweiten Faltungsschichten y Ausgang / interpretierbares Ergebnis

Claims

Patentansprüche Verfahren (100) zum Bewerten und/oder Überwachen eines Prozesses und/oder einer mehrachsigen Maschine (1), wobei das Verfahren aufweist:
Erfassen (S10) mindestens einer Datenzeitreihe (Zi), wobei die mindestens eine Datenzeitreihe (Zi) wenigstens einen Kanal (K1 , Kn) umfasst, der wenigstens einen Parameter des Prozesses und/oder der mehrachsigen Maschine (1) beschreibt, und wobei die Datenzeitreihe (Zi) von dem Prozess verursacht wird;
Bestimmen (S20) eines interpretierbaren Ergebnisses mittels eines Algorithmus des maschinellen Lernens, basierend auf der mindestens einen Datenzeitreihe (Zi), wobei das Ergebnis einen Klassifikationswert eines Zustands im Prozess und/oder eines Zustands der mehrachsigen Maschine (1) beschreibt; wobei beim Bestimmen des Ergebnisses eine Warnung ausgegeben (S30) wird, wenn der Klassifikationswert des Zustands im Prozess und/oder des Zustands der mehrachsigen Maschine (1) einem Wert einer Fehlerklasse zugeordnet wird, der in einem Warnbereich liegt oder einem Warnbereich entspricht und eine Entwarnung ausgegeben (S30), wenn der Klassifikationswert des Zustands im Prozess und/oder des Zustands der mehrachsigen Maschine (1) einem Wert einer Fehlerklasse zugeordnet wird, der in einem Entwarnbereich liegt oder einem Entwarnbereich entspricht. Verfahren (100) nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass das Bestimmen eines interpretierbaren Ergebnisses ferner umfasst:
Bestimmen einer Wahrscheinlichkeit mit welcher der Klassifikationswert des Zustands des Prozesses und/oder des Zustands der mehrachsigen Maschine (1) einem Wert einer Fehlerklasse entspricht, der in einem Warnbereich liegt oder einem Warnbereich entspricht, insbesondere für den wenigstens einen Kanal (K1 , Kn) und/oder für ein Zeitintervall des Prozesses. Verfahren (100) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Bestimmen eines interpretierbaren Ergebnisses ferner umfasst:
Ermitteln einer mittleren Distanz von verschiedenen Fehlerklassen in Bezug auf einen Klassifikationswert. 4. Verfahren (100) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren (100) ferner ein
Ermitteln jeweils einer Wahrscheinlichkeitsverteilung pro Fehlerklasse für einen Beitrag des wenigstens einen Kanals (K1 , Kn) zum Klassifikationswert aufweist.
5. Verfahren (100) nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass das Verfahren (100) ferner ein
Normieren der Wahrscheinlichkeitsverteilung der Werte der Fehlerklasse und Ermitteln einer Wahrscheinlichkeit aufweist, mit der ein Klassifikationswert einem Warnbereich oder einem Entwarnbereich zugeordnet wird, insbesondere zugeordnet ist, basierend auf der Wahrscheinlichkeitsverteilung.
6. Verfahren (100) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren (100) ferner umfasst:
Ermitteln einer durchschnittlichen Distanz, insbesondere einer Wasserstein- Distanz, alternativ mit einer Intersection-Over-Unit-Metrik, für unterschiedliche Fehlerklassen.
7. Verfahren (100) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Algorithmus des maschinellen Lernens ein künstliches neuronales Netz, insbesondere ein Convolutional Neural Network, ist.
8. Verfahren (100) nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass das Convolutional Neural Network als letzte Schicht eine Max-Pooling Schicht aufweist, insbesondere eine Max-Pooling Schicht über die Zeitdimension.
9. Verfahren (100) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren (100) ferner umfasst:
Bewerten und/oder Überwachen des Prozesses und/oder der mehrachsigen Maschine (1) und insbesondere wenn beim Bestimmen des Ergebnisses eine Warnung ausgegeben wird, Stoppen und/oder Verändern des Prozesses und/oder Warten der mehrachsigen Maschine (1), insbesondere wiederholen, weiter insbesondere in modifizierter Form, des Prozesses.
10. System (10) zum Betreiben und/oder Überwachen einer mehrachsigen Maschine (1), insbesondere einer mehrachsigen Maschine (1), das zur Durchführung eines Verfahrens (100) nach einem der vorhergehenden Ansprüche eingerichtet ist. 11. Computerprogramm oder Computerprogrammprodukt, wobei das
Computerprogramm oder Computerprogrammprodukt, insbesondere auf einem computerlesbaren und/oder nicht-flüchtigen Speichermedium gespeicherte, Anweisungen enthält, die bei der Ausführung durch einen oder mehrere Computer oder ein System (10) nach Anspruch 10 den oder die Computer oder das System (10) dazu veranlassen, ein Verfahren (100) nach einem der Ansprüche 1 bis 9 durchzuführen.
EP23726104.5A 2022-05-31 2023-05-11 Überwachen einer mehrachsigen maschine mittels interpretierbarer zeitreihenklassifikation Pending EP4533193A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022205534.9A DE102022205534A1 (de) 2022-05-31 2022-05-31 Überwachen einer mehrachsigen Maschine mittels interpretierbarer Zeitreihenklassifikation
PCT/EP2023/062634 WO2023232428A1 (de) 2022-05-31 2023-05-11 Überwachen einer mehrachsigen maschine mittels interpretierbarer zeitreihenklassifikation

Publications (1)

Publication Number Publication Date
EP4533193A1 true EP4533193A1 (de) 2025-04-09

Family

ID=86558811

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23726104.5A Pending EP4533193A1 (de) 2022-05-31 2023-05-11 Überwachen einer mehrachsigen maschine mittels interpretierbarer zeitreihenklassifikation

Country Status (5)

Country Link
US (1) US20250322037A1 (de)
EP (1) EP4533193A1 (de)
CN (1) CN119301533A (de)
DE (1) DE102022205534A1 (de)
WO (1) WO2023232428A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240066686A1 (en) * 2022-08-26 2024-02-29 Körber Supply Chain Llc Robotic gripper alignment monitoring system
CN119337300B (zh) * 2024-12-23 2025-03-04 中国科学院工程热物理研究所 一种基于多源数据融合的数控机床健康监测方法、系统及程序产品

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7373555B2 (en) * 2003-05-09 2008-05-13 Hewlett-Packard Development Company, L.P. Systems and methods controlling transaction draining for error recovery
DE102004008757B4 (de) * 2004-02-23 2006-04-06 Infineon Technologies Ag Paritätsprüfungs-Schaltung zur kontinuierlichen Prüfung der Parität einer Speicherzelle
US7729789B2 (en) * 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
US7730363B2 (en) * 2004-09-30 2010-06-01 Toshiba Solutions Corporation Reliability evaluation system, reliability evaluating method, and reliability evaluation program for information system
US7617074B2 (en) * 2007-07-06 2009-11-10 Microsoft Corporation Suppressing repeated events and storing diagnostic information
DE102008032885A1 (de) 2008-07-14 2010-01-21 Endress + Hauser Conducta Gesellschaft für Mess- und Regeltechnik mbH + Co. KG Verfahren und Vorrichtung zur Überprüfung und Feststellung von Zuständen eines Sensors
JP2011237950A (ja) * 2010-05-07 2011-11-24 Fujitsu Ltd 情報処理装置、バックアップサーバ、バックアッププログラム、バックアップ方法及びバックアップシステム
US9030316B2 (en) * 2013-03-12 2015-05-12 Honeywell International Inc. System and method of anomaly detection with categorical attributes
US11709939B2 (en) * 2018-05-04 2023-07-25 New York University Anomaly detection in real-time multi-threaded processes on embedded systems and devices using hardware performance counters and/or stack traces
EP4290412A3 (de) * 2018-09-05 2024-01-03 Sartorius Stedim Data Analytics AB Computerimplementiertes verfahren, computerprogrammprodukt und system zur datenanalyse
US20200233397A1 (en) * 2019-01-23 2020-07-23 New York University System, method and computer-accessible medium for machine condition monitoring
JP7108577B2 (ja) 2019-05-13 2022-07-28 株式会社日立製作所 診断装置と診断方法および加工装置
DE102019219300A1 (de) 2019-12-11 2021-07-01 Robert Bosch Gmbh Ermitteln relevanter Sensoren für die Zustandsüberwachung von Geräten und Systemen
US11381506B1 (en) * 2020-03-27 2022-07-05 Amazon Tehonlogies, Inc. Adaptive load balancing for distributed systems
EP3910571A1 (de) * 2020-05-13 2021-11-17 MasterCard International Incorporated Verfahren und systeme zur serverfehlervorhersage unter verwendung von serverprotokollen
US11237880B1 (en) * 2020-12-18 2022-02-01 SambaNova Systems, Inc. Dataflow all-reduce for reconfigurable processor systems
US11656932B2 (en) * 2021-07-19 2023-05-23 Kyndryl, Inc. Predictive batch job failure detection and remediation
DE202021104953U1 (de) 2021-09-14 2021-09-28 Abb Schweiz Ag Überwachungsvorrichtung für den laufenden Betrieb von Geräten und Anlagen
US11953979B2 (en) * 2022-02-02 2024-04-09 Sap Se Using workload data to train error classification model
US11983093B2 (en) * 2022-03-24 2024-05-14 Amazon Technologies, Inc. Tracking status of managed time series processing tasks

Also Published As

Publication number Publication date
US20250322037A1 (en) 2025-10-16
CN119301533A (zh) 2025-01-10
DE102022205534A1 (de) 2023-11-30
WO2023232428A1 (de) 2023-12-07

Similar Documents

Publication Publication Date Title
DE112020007131B4 (de) Anomalie-diagnoseverfahren, anomalie-diagnosevorrichtung und anomalie-diagnoseprogramm
DE69324296T2 (de) Verfahren zur Diagnose eines laufenden Prozesses
DE102018108779A1 (de) Schätzvorrichtung eines maschinellen Bearbeitungsfehlerfaktors
EP3876060B1 (de) Verfahren und recheneinheit zur ursachenanalyse eines anomalen zustandes einer maschine
DE102022209542B4 (de) Sensormesswertanomaliedetektion
DE102020212277A1 (de) Verfahren und Vorrichtung zum Bestimmen einer Restnutzungsdauer basierend auf einer prädiktiven Diagnose von Komponenten eines elektrischen Antriebssystems mithilfe Verfahren künstlicher Intelligenz
DE102019001760A1 (de) Informationsverarbeitungsgerät, maschinelle lernvorrichtungund system
WO2023232428A1 (de) Überwachen einer mehrachsigen maschine mittels interpretierbarer zeitreihenklassifikation
DE102018203280A1 (de) Zustandsdiagnosevorrichtung
DE102020202870A1 (de) Verfahren zur Validierung und Auswahl auf maschinellem Lernen basierender Modelle zur Zustandsüberwachung einer Maschine
DE102020125218A1 (de) Diagnosegerät
EP3077878A1 (de) Computer-implementiertes verfahren und system zur automatischen überwachung und statusermittlung ganzer prozessabschnitte in einer process unit
EP3627262A1 (de) Verfahren und assistenzsystem zur parametrisierung eines anomalieerkennungsverfahrens
EP3282399A1 (de) Verfahren zur verbesserten erkennung von prozessanomalien einer technischen anlage sowie entsprechendes diagnosesystem
EP4455941A1 (de) Maschinengeführtes expertensystem für ein technisches system, verfahren, vorrichtung und computerprogrammprodukt
EP3340250B1 (de) Bauteilidentifikation bei der fehlerbehandlung von medizinischen geräten
EP4043976B1 (de) Verfahren und system zur vermessung von bauteilen sowie programm
EP3796117B1 (de) Diagnoseverfahren und diagnosesystem für eine verfahrenstechnische anlage
DE202020107432U1 (de) Vorrichtung zur robusten Klassifikation und Regression von Zeitreihen
EP4505254B1 (de) Computer-implementiertes verfahren und system zur anomalie-erkennung
DE102023207829A1 (de) Verfahren und System zum Erkennen von Anomalien in einem Satz von Signalen
DE102022209773A1 (de) Verfahren und Vorrichtung zur Bestimmung einer Gültigkeit eines datenbasierten Funktionsmodells für ein technisches System an einem Auswertungspunkt sowie Trainingsverfahren hierfür
WO2023209029A1 (de) Computer-implementiertes verfahren und system für den betrieb eines technischen geräts mit einem modell auf basis föderierten lernens
DE102022205918A1 (de) Verfahren zum Durchführen einer Datenverarbeitung
DE102023210500B3 (de) Roboterüberwachung

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20241115

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
P01 Opt-out of the competence of the unified patent court (upc) registered

Free format text: CASE NUMBER: UPC_APP_5981_4533193/2025

Effective date: 20250904