DE102022123243B3 - Artificial intelligence for precise determination of output torques of collaborative robots - Google Patents

Artificial intelligence for precise determination of output torques of collaborative robots Download PDF

Info

Publication number
DE102022123243B3
DE102022123243B3 DE102022123243.3A DE102022123243A DE102022123243B3 DE 102022123243 B3 DE102022123243 B3 DE 102022123243B3 DE 102022123243 A DE102022123243 A DE 102022123243A DE 102022123243 B3 DE102022123243 B3 DE 102022123243B3
Authority
DE
Germany
Prior art keywords
output
artificial intelligence
torque
input
angular position
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102022123243.3A
Other languages
German (de)
Inventor
Jochen Damerau
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.)
Schaeffler Technologies AG and Co KG
Original Assignee
Schaeffler Technologies AG and Co KG
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 Schaeffler Technologies AG and Co KG filed Critical Schaeffler Technologies AG and Co KG
Priority to DE102022123243.3A priority Critical patent/DE102022123243B3/en
Application granted granted Critical
Publication of DE102022123243B3 publication Critical patent/DE102022123243B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/12Programme-controlled manipulators characterised by positioning means for manipulator elements electric
    • B25J9/126Rotary actuators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40599Force, torque sensor integrated in joint

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Manipulator (AREA)

Abstract

Die Erfindung schafft eine neue Künstliche Intelligenz, insbesondere eines Maschinenlern Modells oder Maschinenlern-Algorithmus, zur präzisen Bestimmung eines ausgabeseitigen Drehmoments, insbesondere eines ausgabeseitigen Drehmoments eines Aktuatorgetriebes eines Gelenks eines kollaborativen Roboters, welche dazu eingerichtet ist, auf Basis von Eingangsvariablen eine oder mehrere Ausgangsvariablen auszugeben, wobei die Eingangsvariablen der Künstlichen Intelligenz umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage entspricht, eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage entspricht, und wobei ferner die Ausgangsvariablen das durch die Künstliche Intelligenz bestimmte ausgehende Drehmoment umfassen, wobei die Künstliche Intelligenz ferner dazu eingerichtet ist, auf Basis von sekundären Eingangsvariablen eine oder mehrere sekundäre Ausgangsvariablen auszugeben, wobei die sekundären Eingangsvariablen der Künstlichen Intelligenz für einen jeden von zwei oder mehr, insbesondere sechs, Gelenkaktuatoren eines kollaborativen Roboters umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage am jeweiligen Gelenk entspricht eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage am jeweiligen Gelenk entspricht, und wobei optional ferner die sekundären Ausgangsvariablen die durch die Künstliche Intelligenz bereitgestellte sechsachsige Bestimmung von Kräften und Drehmomenten am Endeffektor, insbesondere eine dreikomponentige Kraft und ein dreikomponentiges Drehmoment am Endeffektor, umfassen.The invention creates a new artificial intelligence, in particular a machine learning model or machine learning algorithm, for the precise determination of an output-side torque, in particular an output-side torque of an actuator gear of a joint of a collaborative robot, which is set up to output one or more output variables based on input variables , wherein the input variables of the artificial intelligence include: a first angle specification, which corresponds to an angular position on the input side, a second angle specification, which corresponds to an angular position on the output side, and wherein further the output variables include the outgoing torque determined by the artificial intelligence, the artificial intelligence furthermore doing so is set up to output one or more secondary output variables based on secondary input variables, the secondary input variables of the artificial intelligence for each of two or more, in particular six, joint actuators of a collaborative robot comprising: a first angle specification, which corresponds to an input-side angular position at the respective joint corresponds to a second angle specification, which corresponds to an output-side angular position at the respective joint, and wherein optionally the secondary output variables also include the six-axis determination of forces and torques at the end effector provided by the artificial intelligence, in particular a three-component force and a three-component torque at the end effector.

Description

TECHNISCHES GEBIETTECHNICAL FIELD

Die vorliegende Erfindung betrifft allgemein das technische Gebiet der Robotik, der autonomen mobilen Roboter (AMRs) und insbesondere der kollaborativen Roboter (Cobots) und der Sicherheits- und Präzisionstechnik am Arbeitsplatz und in Montageanlagen.The present invention relates generally to the technical field of robotics, autonomous mobile robots (AMRs) and in particular collaborative robots (cobots) and safety and precision technology in the workplace and in assembly plants.

HINTERGRUNDBACKGROUND

Cobot-Systeme werden in den letzten Jahren in immer mehr Einrichtungen eingesetzt. Dies hat dazu geführt, dass sich menschliche Arbeitskräfte zunehmend denselben Raum mit Cobot-Systemen teilen. Solche Roboter sind für besonders kollaborative Eigenschaften ausgelegt. Beispielsweise sollen Bewegungen zunächst gestoppt werden, wenn sich Objekte oder Arbeitskräfte im Weg befinden, um Schäden und Verletzungen zu verhindern. Häufig kommen als Getriebe sogenannte Spannungswellengetriebe (harmonic drive / harmonic gear box) zum Einsatz.Cobot systems have been used in more and more facilities in recent years. This has led to human workers increasingly sharing the same space with cobot systems. Such robots are designed to be particularly collaborative. For example, movements should initially be stopped if objects or workers are in the way in order to prevent damage and injuries. So-called voltage wave transmissions (harmonic drive / harmonic gear box) are often used as transmissions.

Für eine solide und präzise Steuerung eines Cobots und seiner Gelenkmotoren, welche ihn für den Einsatz in Präzisionsumgebungen als auch Arbeitsumgebungen mit Humanarbeitskräften besonders geeignet macht, ist es erforderlich, ein ausgehendes/ausgabeseitiges Drehmoment möglichst präzise zu messen und/oder zu kennen. Das ist besonders für die lokal auftretenden Drehmomente an einem Gelenk eines Roboterarms der Fall.For solid and precise control of a cobot and its articulated motors, which makes it particularly suitable for use in precision environments as well as working environments with human workers, it is necessary to measure and/or know an outgoing/output torque as precisely as possible. This is particularly the case for the locally occurring torques at a joint of a robot arm.

Häufig wird hierzu ein lokaler Drehmomentsensor an einem Gelenk eingesetzt. Dieser ist jedoch häufig teuer, jeweils pro Gelenk erforderlich, hat regelmäßig ein hohes Gewicht, stört den Roboter in seiner Flexibilität beim Einsatz und erhöht den Energiekonsum.A local torque sensor is often used on a joint for this purpose. However, this is often expensive, required for each joint, is often very heavy, hinders the robot's flexibility during use and increases energy consumption.

Roboter können auch mit Sechs-Achsen-Kraft-Drehmoment-Sensoren ausgestattet sein. So ein Sensor kann beispielsweise bei einem Endeffektor an einem mehrgelenkigen Roboterarm angeordnet werden. Insbesondere jedoch wird das Potential der Daten, welcher ein solcher Sensor liefert, nicht vollständig ausgeschöpft. Robots can also be equipped with six-axis force-torque sensors. Such a sensor can, for example, be arranged on an end effector on a multi-jointed robot arm. In particular, however, the potential of the data provided by such a sensor is not fully exploited.

Sechs-Achsen-Kraft-Drehmoment-Sensor werden bereits in Robotern eingesetzt oder können häufig nachgerüstet werden.Six-axis force-torque sensors are already used in robots or can often be retrofitted.

Die Patentschrift EP 2 231 369 B1 offenbart einen Roboter sowie ein Verfahren zum Überwachen der Momente an einem solchen Roboter. Beschrieben ist ein Roboter mit mindestens zwei Gelenken und mittels jeweils mindestens eines Gelenks relativ zueinander beweglichen Teilen, wobei an mindestens einem beweglichen Teil mindestens ein Drehmomente erfassender Sensor angeordnet ist, und wobei zur redundanten Erfassung eines Drehmoments zwei Sensoren und redundante Auswerteeinheiten zur redundanten Auswertung vorgesehen sind und wobei eine Einrichtung zum Abschalten des Roboters oder zum Auslösen eines sicheren Zustands vorgesehen ist, wenn von den mindestens zwei Sensoren erfasste Messwerte desselben Drehmoments außerhalb eines vorgegebenen Toleranzbereichs voneinander abweichen, wobei die beiden Sensoren in Form von Dehnungsmessstreifen aufweisenden Vollbrücken an einem Getriebe des Roboters so angeordnet sind, dass sie das gleiche Drehmoment erfassen und mittels zweier Rechnereinheiten in Form von unterschiedlich ausgeführten, Mikrocontroller aufweisenden integrierten Schaltungen innerhalb einer Sendeeinheit verbunden sind, in der eine erste Überprüfung der gemessenen Drehmomentwerte durchgeführt wird. Die hier beschriebene Lösung bringt jedoch unter anderem den Nachteil mit sich, dass zweifache Sensorik zur Erfassung von Drehmomenten benötigt wird, was teuer ist und sich zudem nachteilig auf die Dynamik und das Gewicht des Roboters auswirken.The patent specification EP 2 231 369 B1 discloses a robot and a method for monitoring the moments on such a robot. What is described is a robot with at least two joints and parts that can move relative to one another by means of at least one joint, with at least one sensor detecting torque being arranged on at least one movable part, and two sensors and redundant evaluation units for redundant evaluation being provided for the redundant detection of a torque and wherein a device is provided for switching off the robot or for triggering a safe state if measured values of the same torque recorded by the at least two sensors deviate from one another outside a predetermined tolerance range, the two sensors being in the form of full bridges having strain gauges on a transmission of the robot are arranged so that they detect the same torque and are connected by means of two computer units in the form of differently designed integrated circuits with microcontrollers within a transmitting unit in which a first check of the measured torque values is carried out. However, the solution described here has, among other things, the disadvantage that dual sensors are required to detect torque, which is expensive and also has a detrimental effect on the dynamics and weight of the robot.

Die DE 10 2021 212 128 B3 beschreibt ein Verfahren zum Steuern eines lasttragenden Roboters umfassend das Ermitteln eines ein- oder mehrdimensionalen Parameters der Last auf Basis getriebeeingangsseitiger und getriebeabtriebsseitiger Gelenkkoordinatenwerte der Gelenke, die in einer ersten Stellung des Roboters ermittelt worden sind. Ferner erfolgt eine erste Transformation zwischen getriebeeingangsseitigen Gelenkkoordinaten und einer Pose einer roboterfesten Referenz und eine zweite Transformation zwischen getriebeabtriebsseitigen Gelenkkoordinaten und einer Pose der roboterfesten Referenz.The DE 10 2021 212 128 B3 describes a method for controlling a load-bearing robot, comprising determining a one- or multi-dimensional parameter of the load based on transmission input-side and transmission output-side joint coordinate values of the joints that have been determined in a first position of the robot. Furthermore, a first transformation takes place between joint coordinates on the transmission input side and a pose of a robot-fixed reference and a second transformation between joint coordinates on the transmission output side and a pose of the robot-fixed reference.

Die DE 102 45 594 A1 beschreibt ein Verfahren zur Kollisionserkennung für ein Antriebssystem mit einem Motor und einem von dem Motor angetriebenen beweglichen Teil. Das Verfahren umfasst die Messung einer antriebsseitigen Bewegungsgröße des Motors, die Messung einer abtriebsseitigen Bewegungsgröße des beweglichen Teils und die Bestimmung eines Fehlersignals in Abhängigkeit von den beiden Bewegungsgrößen.Aus einem anderen Stand der Technik ist eine indirekte Bestimmung von Drehmomenten, je Einzelgelenk, über den Motorstromfluss bekannt. Diese Lösung ist preiswert, aber höchst unpräzise, und genügt daher nicht mehr den heutigen Qualitätsstandards für hochperformante Cobot-Systeme.The DE 102 45 594 A1 describes a method for collision detection for a drive system with a motor and a moving part driven by the motor. The method includes the measurement of a drive-side movement variable of the motor, the measurement of an output-side movement variable of the movable part and the determination of an error signal depending on the two movement variables. From another prior art there is an indirect determination of torques, for each individual joint, via the motor current flow known. This solution is inexpensive, but highly imprecise, and therefore no longer meets today's quality standards for high-performance cobot systems.

Es ist deshalb eine Aufgabe der vorliegenden Erfindung, kollaborative Robotersysteme derart weiterzuentwickeln, dass sie präzise und sicher arbeiten, insbesondere in geteilten Arbeitsumgebungen mit Menschen. Dabei soll eine hohe Präzision als auch Flexibilität der Roboter gewährleistet sein und Kosten sollen bestmöglich ohne Kompromisse bei der Qualität des Produktes und der damit erzielten Ergebnisse minimiert werden.It is therefore an object of the present invention to further develop collaborative robot systems in such a way that they work precisely and safely ten, especially in shared work environments with people. A high level of precision and flexibility of the robots should be guaranteed and costs should be minimized as best as possible without compromising on the quality of the product and the results achieved with it.

Gelöst wird diese Aufgabe durch das Verfahren nach Anspruch 1. Erfindungsgemäß ist eine Künstliche Intelligenz, insbesondere eines Maschinenlern Modells oder Maschinenlern-Algorithmus, zur präzisen Bestimmung eines ausgabeseitigen Drehmoments, insbesondere eines ausgabeseitigen Drehmoments eines Aktuatorgetriebes eines Gelenks eines kollaborativen Roboters, vorgesehen, welche dazu eingerichtet ist, auf Basis von Eingangsvariablen eine oder mehrere Ausgangsvariablen auszugeben, wobei die Eingangsvariablen der Künstlichen Intelligenz umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage entspricht, eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage entspricht, und wobei ferner die Ausgangsvariablen das durch die Künstliche Intelligenz bestimmte ausgehende Drehmoment umfassen, wobei die Künstliche Intelligenz ferner dazu eingerichtet ist, auf Basis von sekundären Eingangsvariablen eine oder mehrere sekundäre Ausgangsvariablen auszugeben, wobei die sekundären Eingangsvariablen der Künstlichen Intelligenz für einen jeden von zwei oder mehr Gelenkaktuatoren, besonders bevorzugt sechs Gelenkaktuatoren, eines kollaborativen Roboters umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage am jeweiligen Gelenk entspricht eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage am jeweiligen Gelenk entspricht, und wobei insbesondere ferner die sekundären Ausgangsvariablen die durch die Künstliche Intelligenz bereitgestellte sechsachsige Bestimmung von Kräften und Drehmomenten am Endeffektor, insbesondere eine dreikomponentige Kraft und ein dreikomponentiges Drehmoment am Endeffektor, umfassen.This object is achieved by the method according to claim 1. According to the invention, an artificial intelligence, in particular a machine learning model or machine learning algorithm, is provided for the precise determination of an output-side torque, in particular an output-side torque of an actuator gear of a joint of a collaborative robot, which is set up for this purpose is to output one or more output variables on the basis of input variables, the input variables of the artificial intelligence comprising: a first angle specification, which corresponds to an angular position on the input side, a second angle specification, which corresponds to an angular position on the output side, and furthermore the output variables that are determined by the artificial intelligence include certain outgoing torque, wherein the artificial intelligence is further configured to output one or more secondary output variables based on secondary input variables, the secondary input variables of the artificial intelligence for each of two or more joint actuators, particularly preferably six joint actuators, of a collaborative robot include: a first angle specification, which corresponds to an input-side angular position at the respective joint, a second angle specification, which corresponds to an output-side angular position at the respective joint, and in particular the secondary output variables further represent the six-axis determination of forces and torques at the end effector provided by the artificial intelligence, in particular a three-component force and a three-component torque at the end effector.

Die Künstliche Intelligenz bestimmt dabei erfindungsgemäßo besonders präzise die Kräfte und Drehmomente an den Gelenken des Roboters. Für das Training dieser Künstlichen Intelligenz wird jedoch auf Kräfte und Drehmomente am Endeffektor, insbesondere die dreikomponentige Kraft und das dreikomponentige Drehmoment, zurückgegriffen. Insbesondere kann im kontiuierlichen Betrieb auf Basis von Daten des Sechs-Achsen-Kraft-Drehmoment-Sensors weitertrainiert werden, wodurch die Bestimmung der einzelnen Gelenkdrehmomente im Betrieb weiter verbessert wird und dynamisch an den aktuellen Zustand des Roboters angepasst wird (z.B. bei Auftreten von Verschleiß). Die Präzision ist höher als bei herkömmlichen Methoden. In Konsequenz können durch diesen präzisen Messwert die Cobot-Steuerung und die Motorsteuerung präziser arbeiten und agieren.According to the invention, the artificial intelligence determines the forces and torques at the joints of the robot particularly precisely. However, to train this artificial intelligence, forces and torques on the end effector, in particular the three-component force and the three-component torque, are used. In particular, training can continue in continuous operation based on data from the six-axis force-torque sensor, which further improves the determination of the individual joint torques during operation and dynamically adapts it to the current state of the robot (e.g. when wear occurs). . The precision is higher than with conventional methods. As a result, this precise measurement allows the cobot control and the motor control to work and act more precisely.

Erfindungsgemäß wird dabei die Künstliche Intelligenz mit Hilfe eines Feedback-Regelkreises durch einen gemessenen Wert eines endeffektorseitigen Drehmoments eines Sechs-Achsen-Kraft-Drehmoment-Sensor trainiert, wobei diese das ausgangsseitige Drehmoment mit diesem vergleicht und bei einer Kompromittierung das Training abbricht.According to the invention, the artificial intelligence is trained with the help of a feedback control loop using a measured value of an end effector-side torque of a six-axis force-torque sensor, which compares the output-side torque with this and terminates the training if it is compromised.

Erfindungsgemäße erfolgt dabei eine präzise indirekte sechsachsige Bestimmung von Kräften und Drehmomenten an einem Endeffektor unter Nutzung von folgenden Datensätzen als Eingangsdaten: Datensätze umfassend Daten in Bezug auf eine eingangsseitigen Winkellage sowie eine ausgangsseitige Winkellage eines jeweiligen Gelenkaktuatorgetriebes für sechs Gelenkaktuatoren eines Roboterarms,According to the invention, a precise indirect six-axis determination of forces and torques on an end effector is carried out using the following data sets as input data: data sets comprising data relating to an input-side angular position and an output-side angular position of a respective joint actuator gear for six joint actuators of a robot arm,

Erfindungsgemäß wird dabei ein gemessener Wert eines endeffektorseitgen Drehmoments, gemessen durch einen Sechs-Achsen-Kraft-Drehmoment-Sensor, ferner als Zielwert als Teil des Feedback-Regelkreises, in welchem die Künstliche Intelligenz angeordnet ist, verwendet.According to the invention, a measured value of an end effector-side torque, measured by a six-axis force-torque sensor, is also used as a target value as part of the feedback control loop in which the artificial intelligence is arranged.

Durch den zusätzlichen Sechs-Achsen-Kraft-Drehmoment-Sensor und die abermals redundante Bestimmung von Drehmomenten/Kräften wird die Präzision abermals erhöht. Der direkte Output des Drehmomentsensors kann die KI in hervorragender Weise trainieren. Zudem kann die erfindungsgemäße Lösung am Rande auch sechskomponentige Drehmomente/Kräfte unabhängig vom Drehmomentsensor bestimmen, was beispielsweise auch besonders vorteilhaft ist, wenn letzterer ausfällt. So wird Totzeit und fehlerhaftes und/oder unkontrolliertes (und damit häufig gefährliches) Verhalten des Cobots vermieden.The additional six-axis force-torque sensor and the once again redundant determination of torques/forces further increase the precision. The direct output of the torque sensor can train the AI excellently. In addition, the solution according to the invention can also determine six-component torques/forces independently of the torque sensor, which is particularly advantageous, for example, if the latter fails. This avoids dead time and incorrect and/or uncontrolled (and therefore often dangerous) behavior of the cobot.

Weiter erfindungsgemäß wird dabei das Trainieren kontinuierlich betrieben, wobei das Trainieren jedoch abgebrochen und/oder unterbrochen wird, wenn festgestellt wird, dass der mittels des Sechs-Achsen-Kraft-Drehmoment-Sensors gemessene Wert des ausgangsseitigen Drehmoments kompromittiert ist oder das entsprechende Signal abbricht. Further according to the invention, training is carried out continuously, but training is aborted and/or interrupted if it is determined that the value of the output torque measured by the six-axis force-torque sensor is compromised or the corresponding signal breaks off.

Notwendige Berechnungen können lokal und/oder nicht-lokal erfolgen, insbesondere auch verteilt, beispielsweise im Rahmen von Cloud-Computing. Ein erfindungsgemäßer Roboter, welcher in der Regel lokal ist, profitiert durch die Erfindung durch ein verbessertes Verhalten und eine verbesserter Arbeitssicherheit, auch durch nicht-lokale Berechnungen.Necessary calculations can take place locally and/or non-locally, in particular also in a distributed manner, for example in the context of cloud computing. A robot according to the invention, which is generally local, benefits from the invention through improved behavior and improved work safety, also through non-local calculations.

In einer bevorzugten Ausführungsform ist die Künstliche Intelligenz eingerichtet für ein unüberwachtes Lernen mit einem Multi-Layer-Perzeptron.In a preferred embodiment, the artificial intelligence is set up for unsupervised learning with a multi-layer perceptron.

In einer weiteren bevorzugten Ausführungsform umfassen die Eingangsvariablen je Gelenk ferner: Winkelgeschwindigkeit, Geschwindigkeit, Beschleunigung und/oder Temperatur.In a further preferred embodiment, the input variables for each joint further include: angular velocity, velocity, acceleration and/or temperature.

In einer weiteren Ausfünrungsform ist ein Verfahren zur präzisen Bestimmung eines ausgabeseitigen Drehmoments, insbesondere eines ausgabeseitigen Drehmoments eines Aktuatorgetriebes eines Gelenks eines kollaborativen Roboters, mittels einer Künstlichen Intelligenz, insbesondere eines Maschinenlern-Modells oder Maschinenlern-Algorithmus, vorgesehen, welche dazu eingerichtet ist, auf Basis von Eingangsvariablen eine oder mehrere Ausgangsvariablen auszugeben, wobei die Eingangsvariablen der Künstlichen Intelligenz umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage entspricht, eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage entspricht, und wobei ferner die Ausgangsvariablen das durch die Künstliche Intelligenz bestimmte ausgehende Drehmoment umfassen, wobei die Künstliche Intelligenz mit einem Verfahren nach einem erfindungsgemäßen Trainingsverfahren trainiert wird und/oder wurde, insbesondere im kontinuierlichen Betrieb fortwährend trainiert wird.In a further embodiment, a method for precisely determining an output-side torque, in particular an output-side torque of an actuator gear of a joint of a collaborative robot, is provided by means of an artificial intelligence, in particular a machine learning model or machine learning algorithm, which is set up to do so on the basis of input variables to output one or more output variables, the input variables of the artificial intelligence comprising: a first angle information, which corresponds to an angular position on the input side, a second angle information, which corresponds to an angular position on the output side, and wherein the output variables further include the outgoing torque determined by the artificial intelligence , wherein the artificial intelligence is and/or was trained using a method according to a training method according to the invention, in particular is continuously trained in continuous operation.

Zudem schafft die Erfindung ein zur Künstlichen Intelligenz passendes Trainingsverfahren. So ist erfindungsgemäß ein Verfahren zum Trainieren einer Künstlichen Intelligenz vorgesehen, insbesondere eines Maschinenlern-Modells oder Maschinenlern-Algorithmus, nach einem der vorhergehenden Ansprüche, insbesondere durch unüberwachtes Lernen, mittels einer präzisen indirekten sechsachsigen Bestimmung von Kräften und Drehmomenten an einem Endeffektor unter Nutzung von folgenden Datensätzen als Eingangsdaten: Datensätze umfassend Daten in Bezug auf eine eingangsseitigen Winkellage sowie eine ausgangsseitige Winkellage eines jeweiligen Gelenkaktuatorgetriebes (203), insbesondere für sechs Gelenkaktuatoren eines Roboterarms. So wird mittels der sechsachsigen Bestimmung durch den Sensor trainiert. Dabei wird insbesondere das Ziel verfolgt, die KI derart zu trainieren, dass sie im Betrieb eine verbesserte Drehmomentbestimmung an den einzelnen Gelenken ermöglicht.In addition, the invention creates a training method suitable for artificial intelligence. According to the invention, a method is provided for training an artificial intelligence, in particular a machine learning model or machine learning algorithm, according to one of the preceding claims, in particular through unsupervised learning, by means of a precise indirect six-axis determination of forces and torques on an end effector using the following Data sets as input data: Data sets comprising data relating to an input-side angular position and an output-side angular position of a respective joint actuator gear (203), in particular for six joint actuators of a robot arm. Training is carried out using the six-axis determination by the sensor. The particular goal is to train the AI in such a way that it enables improved torque determination at the individual joints during operation.

Die Kl kann kontinuierlich im Betrieb trainiert werden, wodurch ein enorm hoher Grad an Training gewährleistet ist, und auch Veränderungen, welche mit der Zeit eintreten, berücksichtigt werden (beispielsweise geänderte Umgebungsbedingungen oder Verschleiß).The Kl can be trained continuously during operation, which ensures an extremely high level of training and also takes into account changes that occur over time (e.g. changed environmental conditions or wear).

Vorzugsweise erfolgt ein Training unter Berücksichtigung einer direkten Drehmoment- und Kraftmessung als Zielwert (beispielsweise ein Messwert eines Sechs-Achsen-Kraft-Drehmoment-Sensor).Preferably, training takes place taking into account a direct torque and force measurement as a target value (for example a measured value from a six-axis force-torque sensor).

Als besonders geeignet hat sich unüberwachtes Lernen erwiesen. Insbesondere unter Einsatz eines Multi-Layer-Perzeptrons als neuronales Netz wurden gute Ergebnisse erzielt. Durch die Eigenschaften des MLP wird dabei ein ausreichendes Feedback gewährleistet.Unsupervised learning has proven to be particularly suitable. Good results were achieved in particular when using a multi-layer perceptron as a neural network. The properties of the MLP ensure sufficient feedback.

Die KI kann in einer Art Regelkreis und/oder Feedback-Loop angeordnet werden. So kann das unüberwachte Lernen effektiv durch die sechsachsige Kraft-/Drehmomentmessung als Zielwert ergänzt werden.The AI can be arranged in a kind of control loop and/or feedback loop. In this way, unsupervised learning can be effectively supplemented by six-axis force/torque measurement as a target value.

Die Erfindung steigert enorm die dynamische Einsetzbarkeit von Cobots in geänderten Bedingungen. Beispielsweise wird auch eine hohe Präzision nach einem Ersatzteiltausch am Cobot (oder bspw. refurbished cobots) durch die hohe Flexibilität der Kl gewährleistet.The invention enormously increases the dynamic usability of cobots in changing conditions. For example, a high level of precision after a replacement part on the cobot (or, for example, refurbished cobots) is guaranteed by the high flexibility of the system.

Die KI kann beispielsweise Winkelgeschwindigkeit, Geschwindigkeit, Beschleunigung und Temperatur als weitere Features (Eingangsvariablen) berücksichtigen, insbesondere je Gelenk, um diesen Effekten gebührend Rechnung zu tragen. Die Erfindung ist aber keineswegs hierauf beschränkt.For example, the AI can take into account angular velocity, speed, acceleration and temperature as additional features (input variables), especially for each joint, to take these effects into account. However, the invention is by no means limited to this.

Die Erfindung macht mittels der Künstlichen Intelligenz Effekte wie Reibung, Verschleiß, Materialermüdung, Umkehrspanne, Hysterese, Gegenreaktionen, andere nicht-lineare Effekte, Fertigungstoleranzen und/oder Individualunterschiede bei der Herstellung einer effizienten Auswertung und Berücksichtigung bei der Cobot-Steuerung zugänglich. Diese Effekte sind häufig schwer zu simulieren und noch seltener einer direkten und adäquaten mathematischen Beschreibung zugänglich. Mittels der Künstlichen Intelligenz werden diese Probleme überkommen.The invention uses artificial intelligence to make effects such as friction, wear, material fatigue, reversal range, hysteresis, counter-reactions, other non-linear effects, manufacturing tolerances and/or individual differences in production accessible to efficient evaluation and consideration in the cobot control. These effects are often difficult to simulate and even more rarely accessible to a direct and adequate mathematical description. These problems will be overcome using artificial intelligence.

Die Erfindung ist keineswegs auf die hier genannten Effekte (im Sinne einer erschöpfenden Liste) beschränkt. Ganz im Gegenteil besteht ein besonderer Vorteil des Einsatzes der Künstlichen Intelligenz im vorliegenden Fall darin, dass die einzelnen Effekte nicht manuell modelliert werden müssen, sondern sämtliche auftretende Effekte - und dabei alle jeweils in der ihnen gebührenden Größenordnung - simultan und unmittelbar von der Kl nachvollzogen werden.The invention is by no means limited to the effects mentioned here (in the sense of an exhaustive list). On the contrary, a particular advantage of using artificial intelligence in the present case is that the individual effects do not have to be modeled manually, but rather all effects that occur - and all of them at the appropriate scale - are reproduced simultaneously and directly by the AI .

Durch die präzise und gegebenenfalls redundante Bestimmung der effektorseitigen dreikomponentigen Kraft und des dreikomponentigen Drehmoments zwecks Trainings der multifunktionalen Kl, welche im Betrieb präzise Drehmomente einzelner Gelenke lediglich auf Basis von Winkellagen - und daher ohne direkte Messung - bereitstellen kann, trägt die Erfindung nachhaltig zum technischen Fortschritt auf dem technischen Gebiet der kollaborativen Roboter bei.Through the precise and, if necessary, redundant determination of the three-component force on the effector side and the three-component torque For the purpose of training the multifunctional Kl, which can provide precise torques of individual joints during operation solely on the basis of angular positions - and therefore without direct measurement - the invention makes a lasting contribution to technical progress in the technical field of collaborative robots.

KURZE BESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS

Bevorzugte Ausführungsformen der vorliegenden Offenbarung werden nachfolgend mit Bezugnahme auf die folgenden Figuren beschrieben:

  • 1: ein Gelenk eines Roboters mit eingangsseitigem und ausgangsseitigem/ausgabeseitigem Winkellagekodierer
  • 2: ein Gelenk eines Roboters ausgangsseitigem/ausgabeseitigem Drehmomentsensor und ausgangsseitigem/ausgabeseitigem Winkellagekodierer
  • 3: eine schematische Zeichnung eines Antriebsstranges für ein Robotergelenk mit ausgangsseitigem/ausgabeseitigem Drehmomentsensor und beidseitigen Winkellagekodierern
  • 4: einen Roboterarm mit Sechs-Achsen-Kraft-Drehmoment-Sensor am Endeffektor und beidseitigen Winkellagekodierern an den Getrieben, geeignet für einen Einsatz der vorliegenden Erfindung
  • 5: eine schematische Zeichnung eines Maschinenlernmodells zum Einsatz im Rahmen der vorliegenden Erfindung.
Preferred embodiments of the present disclosure are described below with reference to the following figures:
  • 1 : a joint of a robot with an input and output/output angular position encoder
  • 2 : a joint of a robot output/output side torque sensor and output/output side angular position encoder
  • 3 : a schematic drawing of a drive train for a robot joint with an output/output torque sensor and angular position encoders on both sides
  • 4 : a robot arm with a six-axis force-torque sensor on the end effector and bilateral angular position encoders on the gears, suitable for use of the present invention
  • 5 : a schematic drawing of a machine learning model for use in the context of the present invention.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Die 1 - 3 beschreiben die Funktionsweise eines Gelenks. Die Erfindung wird sodann anhand der 4 und 5 beschrieben.The 1-3 describe how a joint works. The invention is then based on the 4 and 5 described.

Die 1 zeigt ein Gelenk 100 eines Roboters mit eingangsseitigem und ausgangsseitigem/ausgabeseitigem Winkellagekodierer.The 1 shows a joint 100 of a robot with an input-side and output-side/output-side angular position encoder.

Ein eingangsseitiger Winkelgeber oder Winkellagekodierer 1 ist im vorliegenden Falle durch den Absolutwertgeber 1 bereitgestellt.An input-side angle encoder or angular position encoder 1 is provided in the present case by the absolute value encoder 1.

Ferner ist ein ausgangsseitigem/ausgabeseitigem Winkelgeber oder Winkellagekodierer 1 durch den Inkrementaldrehgeber 1 bereitgestellt.Furthermore, an output-side/output-side angle encoder or angular position encoder 1 is provided by the incremental rotary encoder 1.

Durch die doppelte Bestückung mit Winkellagekodierern ist dieser Cobot der Erfindung zugänglich.This cobot of the invention is accessible due to the double configuration with angular position encoders.

Die 2 zeigt ein Gelenk 100 eines Roboters ausgangsseitigem/ausgabeseitigem Drehmomentsensor 210 und ausgangsseitigem/ausgabeseitigem Winkellagekodierer 202.The 2 shows a joint 100 of a robot with an output-side/output-side torque sensor 210 and an output-side/output-side angular position encoder 202.

Ein Spannungswellengetriebe, Wellgetriebe oder Gleitkeilgetriebe 203 dient der Untersetzung im Antriebsstranges des Robotergelenks.A tension shaft gear, wave gear or sliding wedge gear 203 is used for reduction in the drive train of the robot joint.

Die 3 zeigt eine schematische Zeichnung eines Antriebsstranges für ein Robotergelenk mit ausgangsseitigem/ausgabeseitigem Drehmomentsensor und beidseitigen Winkellagekodierern.The 3 shows a schematic drawing of a drive train for a robot joint with an output/output torque sensor and angular position encoders on both sides.

Ein elektrischer Motor 330 treibt eine Welle 320 zu Rotationsbewegungen an. Ein Spannungswandler 340 stellt dabei die nötige Energie zur Verfügung, wobei eine Motor-Steuerungselektronik 350 eine Ansteuerung des Motors 330 bewirkt. Die Welle 320 mündet ausgangsseitig in einem Geschwindigkeitsreduktor 360. Das Getriebe bewirkt beispielsweise eine Untersetzung.An electric motor 330 drives a shaft 320 to rotate. A voltage converter 340 provides the necessary energy, with motor control electronics 350 controlling the motor 330. The shaft 320 opens into a speed reducer 360 on the output side. The gearbox effects a reduction, for example.

Ein Drehgeber oder Winkellagegeber 301 ist eingangsseitig angeordnet (eingangsseitiger Winkellagegeber 301). Ein weiterer Drehgeber oder Winkellagegeber 302 ist ausgangsseitig angeordnet (ausgangsseitiger Winkellagegeber 302). Erfindungsgemäß wird mittels einer Künstlichen Intelligenz aus den Messwerten der Winkellagegeber 301, 302 (und/oder der Differenz der Messwerte) eine effektorseitig wirkende Kraft und ein effektorseitig wirkendes Drehmoment bestimmt. Insbesondere geschieht dies unter Berücksichtigung der verschiedenen multiplen Gelenke des Roboterarms.A rotary encoder or angular position encoder 301 is arranged on the input side (input-side angular position encoder 301). Another rotary encoder or angular position encoder 302 is arranged on the output side (output side angular position encoder 302). According to the invention, a force acting on the effector side and a torque acting on the effector side are determined by means of artificial intelligence from the measured values of the angular position sensors 301, 302 (and/or the difference in the measured values). In particular, this is done taking into account the various multiple joints of the robot arm.

Die 4 zeigt einen einen Roboterarm mit Sechs-Achsen-Kraft-Drehmoment-Sensor 410 am Endeffektor und beidseitigen Winkellagekodierern an den Getrieben, zudem geeignet für einen Einsatz der vorliegenden Erfindung.The 4 shows a robot arm with a six-axis force-torque sensor 410 on the end effector and bilateral angular position encoders on the gears, also suitable for use of the present invention.

Erfindungsgemäß kann mittels einer Künstlichen Intelligenz aus den Messwerten der Winkellagegeber 301, 302 (und/oder der Differenz der Messwerte) für die beispielsweise sechs Gelenke eine effektorseitig wirkende Kraft und ein effektorseitig wirkendes Drehmoment bestimmt werden. Dies ist also eine Möglichkeit für eine sechsachsige Bestimmung von Kräften und Drehmomenten am Endeffektor. Dies wird bevorzugterweise für das KI-Training eingesetzt.According to the invention, a force acting on the effector side and a torque acting on the effector side can be determined for the six joints, for example, using artificial intelligence from the measured values of the angular position sensors 301, 302 (and/or the difference in the measured values). This is a possibility for a six-axis determination of forces and torques on the end effector. This is preferably used for AI training.

Das Drehmoment kann auch direkt durch einen Sechs-Achsen-Kraft-Drehmoment-Sensor 410 effektorseitig bestimmt werden, sofern ein solcher Sechs-Achsen-Kraft-Drehmoment-Sensor 410 vorhanden ist oder nachgerüstet wurde. Somit entsteht ein Datensatz, welcher geeignet ist, die Kl zu trainieren. So ist insbesondere eine redundante sechsachsige Bestimmung von Kräften und Drehmomenten möglich. Diese ist besonders präzise. Auch ist einem Ausfall des Sechs-Achsen-Kraft-Drehmoment-Sensors vorgebeugt.The torque can also be determined directly by a six-axis force-torque sensor 410 on the effector side, provided such a six-axis force-torque sensor 410 is available or has been retrofitted. This creates a data set that is suitable for training the AI. In particular, a redundant six-axis determination of forces and torques is possible. This is particularly precise. Also A failure of the six-axis force-torque sensor is prevented.

Das direkt durch den Sechs-Achsen-Kraft-Drehmoment-Sensor gemessene sechsachsige Bestimmung von Kräften und Drehmomenten kann also vor allem dazu verwendet werden, um die Kl zu trainieren.The six-axis determination of forces and torques measured directly by the six-axis force-torque sensor can be used primarily to train the muscles.

Beispielsweise wird im kontinuierlichen Betrieb die KI weiter trainiert unter Nutzung des Sechs-Achsen-Kraft-Drehmoment-Sensors.For example, in continuous operation, the AI is further trained using the six-axis force-torque sensor.

Später kann beispielsweise der Sechs-Achsen-Kraft-Drehmoment-Sensor, beispielsweise temporär, entfernt werden. Er kann aber auch vorhanden bleiben. Wenn er irgendwann ausfällt, wird das Training gestoppt, und die hervorragend und ausgiebig trainierte KI kann sogar allein die sechsachsige Bestimmung von Kräften und Drehmomenten (auf Basis der Ausgabewerte der beiden Drehgeber je Gelenk) bestimmen.Later, for example, the six-axis force-torque sensor can be removed, for example temporarily. But it can also remain there. If it fails at some point, the training is stopped and the excellent and extensively trained AI can even determine the six-axis determination of forces and torques on its own (based on the output values of the two rotary encoders per joint).

Die Erfindung hat den weiteren Vorteil, dass durch die Kl, insbesondere durch das kontinuierlich weiter erfolgende Training, Umgebungseffekten (z.B. Temperatur) als auch Verschleißerscheinungen, Materialermüdung, Fertigungstoleranzen der Bauteile, etc. dynamisch Rechnung getragen wird.The invention has the further advantage that environmental effects (e.g. temperature) as well as signs of wear, material fatigue, manufacturing tolerances of the components, etc. are dynamically taken into account through the training, in particular through the continuous training.

Die Erfindung trägt somit zu einer verbesserten Cobot-Steuerung bei, da diese im Betrieb mit deutlich präziser bestimmten Gelenkdrehmomenten arbeiten kann. Durch das kontinuierliche Training der Kl auf Basis des Sechs-Achsen-Kraft-Drehmoment-Sensor werden eventuell eintretende Veränderungen zügig erlernt und berücksichtigt.The invention thus contributes to an improved cobot control, since it can work with significantly more precisely determined joint torques during operation. Through the continuous training of the systems based on the six-axis force-torque sensor, any changes that may occur are quickly learned and taken into account.

Ein weiterer technischer Effekt der Erfindung tritt zudem ein, wenn die sechsachsige Bestimmung von Kräften und Drehmomenten redundant erfolgt (durch Drehgeber + KI als auch direkt durch Drehtmomentsensor, insbesondere Sechs-Achsen-Kraft-Drehmoment-Sensor), als auch dann, wenn ein Drehmomentsensor, insbesondere ein Sechs-Achsen-Kraft-Drehmoment-Sensor, ausfällt. Im letzteren Falle werden insbesondere Totzeit und fehlerhaftes Verhalten des Cobots vermieden.A further technical effect of the invention also occurs when the six-axis determination of forces and torques is carried out redundantly (by rotary encoder + KI as well as directly by torque sensor, in particular six-axis force-torque sensor), as well as when a torque sensor , particularly a six-axis force-torque sensor, fails. In the latter case, dead time and incorrect behavior of the cobot are avoided.

Dies bringt wirtschaftliche Vorteile mit sich.This brings economic benefits.

Der wesentliche Vorteil besteht jedoch in der verbesserten Berechnung der Gelenkdrehmomente on-the-fly im Betrieb auf Basis der Winkellagen an den Gelenken.The main advantage, however, is the improved calculation of the joint torques on-the-fly during operation based on the angular positions at the joints.

Die 5 zeigt eine schematische Zeichnung eines Maschinenlernmodells zum Einsatz im Rahmen der vorliegenden Erfindung. Das Modell kann insbesondere wie dargestellt trainiert werden.The 5 shows a schematic drawing of a machine learning model for use in the context of the present invention. In particular, the model can be trained as shown.

Pro Gelenk (joint) werden die eingangsseitige und die ausgangsseitige Winkellage als Input in die Kl gegeben. Durch Nutzung der Kl werden 6 Drehmomente oder Kräfte ermittelt, hier dargestellt durch die Nummerierung 0 - 5. Dies erfolgt durch eine gemeinsame Kl für die 6 Gelenke, sodass Korrelationen zwischen den Verhalten der einzelnen Gelenke berücksichtigt werden können. Dies erhöht die Genauigkeit der Bestimmungen. Aus den 6 Drehmomenten oder Kräften kann beispielsweise durch Transformation mittels einer Jacobi-Matrix eine weitere (mathematisch koordinatentransformierte) Form der sechsachsigen Bestimmung von Kräften und Drehmomenten hergeleitet werden, welche einen direkten Vergleich mit einem Messergebnis eines Sechs-Achsen-Kraft-Drehmoment-Sensor ermöglicht.For each joint (joint), the input and output angular positions are given as input to the Kl. By using the Kl, 6 torques or forces are determined, represented here by the numbering 0 - 5. This is done using a common Kl for the 6 joints, so that correlations between the behavior of the individual joints can be taken into account. This increases the accuracy of the determinations. From the 6 torques or forces, a further (mathematically coordinate-transformed) form of the six-axis determination of forces and torques can be derived, for example by transformation using a Jacobi matrix, which enables a direct comparison with a measurement result of a six-axis force-torque sensor .

So kann ein Regelkreis zum verbesserten Training (error/feedback) der KI geschaffen werden, welches insbesondere das unüberwachte Lernen der KI hervorragend ergänzt.In this way, a control loop can be created for improved training (error/feedback) of the AI, which particularly complements the unsupervised learning of the AI.

Die so trainierte Kl kann beispielsweise dazu verwendet werden, um an einzelnen Gelenken im Betrieb das Drehmoment präzise zu bestimmen, auf Basis von lokalen Winkellagecodierern. Dies ist insbesondere auch möglich, ohne dass lokale Drehmomentsensoren an den Gelenken vorhanden sind, da das Training bereits vollständig auf Basis der Signale des Sechs-Achsen-Kraft-Drehmoment-Sensors erfolgen kann.The Kl trained in this way can, for example, be used to precisely determine the torque at individual joints during operation, based on local angular position encoders. In particular, this is also possible without local torque sensors being present on the joints, since the training can already take place entirely on the basis of the signals from the six-axis force-torque sensor.

Es können, in einer weiteren Ausführungsform, auch einzelne Drehmomente an den 6 Gelenken direkt durch gelenklokale Drehmomentsensoren ermittelt werden. Dies kann insbesondere eine Subgruppe der 6 Getriebe betreffen. So kann die Präzision der Bestimmung an einzelnen Gelenken abermals verbessert werden.In a further embodiment, individual torques at the 6 joints can also be determined directly by joint-local torque sensors. This can particularly affect a subgroup of the 6 gears. In this way, the precision of the determination of individual joints can be improved again.

So kann auch eine bis zu dreifacher Redundanz für die sechsachsige Bestimmung der Kräfte und Drehmomente geschaffen werden, da erstens durch die KI aus Winkelgebersignalen bestimmt wird, zweitens durch lokale Drehmomentsensorik an den jeweiligen Gelenken, drittens durch den effektorseitigen Sechs-Achsen-Kraft-Drehmoment-Sensor, welcher zudem auch nachgerüstet werden kann.In this way, up to threefold redundancy can be created for the six-axis determination of the forces and torques, since firstly the AI determines from angle encoder signals, secondly through local torque sensors on the respective joints, thirdly through the effector-side six-axis force-torque system. Sensor, which can also be retrofitted.

Die so geschaffene Präzision ist präzedenzlos und überzeugt in der Praxis! Sie genügt den höchsten Präzisionsansprüchen.The precision created in this way is unprecedented and convincing in practice! It meets the highest precision requirements.

Die hier schematisch beschriebenen Ausführungsformen lassen sich durch zahlreiche, insbesondere durch die oben bereits beschriebenen, Details zur Erfindung weiter ausgestalten.The embodiments described schematically here can be further developed by numerous details of the invention, in particular those already described above.

Obwohl einige Aspekte im Rahmen einer Vorrichtung beschrieben wurden, ist es klar, dass diese Aspekte auch eine Beschreibung des entsprechenden Verfahrens darstellen, wobei ein Block oder eine Vorrichtung einem Verfahrensschritt oder einer Funktion eines Verfahrensschritts entspricht. Analog dazu stellen Aspekte, die im Rahmen eines Verfahrensschritts beschrieben werden, auch eine Beschreibung eines entsprechenden Blocks oder Elements oder einer Eigenschaft einer entsprechenden Vorrichtung dar.Although some aspects have been described in the context of a device, it is clear that these aspects also represent a description of the corresponding method, where a block or a device corresponds to a method step or a function of a method step. Analogously, aspects that are described as part of a method step also represent a description of a corresponding block or element or a property of a corresponding device.

Ausführungsbeispiele der Erfindung können in einem Computersystem realisiert werden. Das Computersystem kann eine lokale Computervorrichtung (z.B. Personalcomputer, Laptop, Tablet-Computer oder Mobiltelefon oder embedded Microcontroller) mit einem oder mehreren Prozessoren und einer oder mehreren Speichervorrichtungen oder kann ein verteiltes Computersystem (z.B. ein Cloud-Computing-System mit einem oder mehreren Prozessoren oder einer oder mehreren Speichervorrichtungen, die an verschiedenen Stellen verteilt sind, zum Beispiel an einem lokalen Client und/oder einer oder mehreren Remote-Server-Farms und/oder Datenzentren) sein. Das Computersystem kann irgendeine Schaltung oder Kombination von Schaltungen umfassen. Bei einem Ausführungsbeispiel kann das Computersystem einen oder mehrere Prozessoren umfassen, die von irgendeinem Typ sein können. Nach hiesigem Gebrauch kann Prozessor irgendein Typ von Rechenschaltung bedeuten, wie beispielsweise, aber nicht beschränkt auf, ein Mikroprozessor, ein Mikrocontroller, ein Mikroprozessor mit komplexem Befehlssatz (CISC), ein Mikroprozessor mit reduziertem Befehlssatz (RISC), ein Sehr-langes-Anweisungswort-(Very Long Instruction Word; VLIW) Mikroprozessor, ein Graphikprozessor, ein digitaler Signalprozessor (DSP), ein Multi-Core-Prozessor, ein feld-programmierbares Gate-Array (FPGA) oder irgendein anderer Typ von Prozessor oder Verarbeitungsschaltung. Andere Typen von Schaltungen, die in dem Computersystem umfasst sein können, können eine speziell angefertigte Schaltung, eine anwendungsspezifische integrierte Schaltung (ASIC) oder Ähnliches, wie beispielsweise eine oder mehrere Schaltungen (z. B. eine Kommunikationsschaltung) zur Verwendung bei drahtlosen Vorrichtungen wie z. B. Mobiltelefonen, Tablet-Computern, Laptop-Computern, Funksprechgeräten und ähnlichen elektronischen Systemen sein. Das Computersystem kann eine oder mehrere Speichervorrichtungen umfassen, die ein oder mehrere Speicherelemente umfassen können, die für die jeweilige Anwendung geeignet sind, wie beispielsweise einen Hauptspeicher in der Form eines Direktzugriffsspeichers (RAM, Random Access Memory), eine oder mehrere Festplatten und/oder ein oder mehrere Laufwerke, die entfernbare Medien, wie beispielsweise CDs, Flash-Speicherkarten, DVD und Ähnliches handhaben. Das Computersystem kann auch eine Anzeigevorrichtung, einen oder mehrere Lautsprecher, und eine Tastatur und/oder Steuerung umfassen, die eine Maus, Trackball, Touchscreen, Stimmerkennungsvorrichtung oder irgendeine andere Vorrichtung umfassen kann, die es einem Systemnutzer erlaubt, Information in das Computersystem einzugeben und Information von demselben zu empfangen.Embodiments of the invention can be implemented in a computer system. The computing system may be a local computing device (e.g., personal computer, laptop, tablet computer, or mobile phone, or embedded microcontroller) with one or more processors and one or more storage devices, or may be a distributed computing system (e.g., a cloud computing system with one or more processors or one or more storage devices distributed at different locations, for example at a local client and/or one or more remote server farms and/or data centers). The computer system may include any circuit or combination of circuits. In one embodiment, the computer system may include one or more processors, which may be of any type. As used herein, processor may mean any type of computing circuit such as, but not limited to, a microprocessor, a microcontroller, a complex instruction set microprocessor (CISC), a reduced instruction set microprocessor (RISC), a very long instruction word (Very Long Instruction Word; VLIW) microprocessor, a graphics processor, a digital signal processor (DSP), a multi-core processor, a field-programmable gate array (FPGA), or any other type of processor or processing circuit. Other types of circuits that may be included in the computer system may include a custom-built circuit, an application-specific integrated circuit (ASIC), or the like, such as one or more circuits (e.g., a communications circuit) for use with wireless devices such as . B. cell phones, tablet computers, laptop computers, walkie-talkies and similar electronic systems. The computer system may include one or more storage devices, which may include one or more storage elements suitable for the particular application, such as a main memory in the form of a random access memory (RAM), one or more hard drives, and/or a or multiple drives that handle removable media such as CDs, flash memory cards, DVDs, and the like. The computer system may also include a display device, one or more speakers, and a keyboard and/or controller, which may include a mouse, trackball, touch screen, voice recognition device, or any other device that allows a system user to enter information into the computer system and information to receive from the same.

Einige oder alle Verfahrensschritte können durch (oder unter Verwendung) einer Hardwarevorrichtung ausgeführt werden, wie es zum Beispiel ein Prozessor, ein Mikroprozessor, ein programmierbarer Computer oder eine elektronische Schaltung sein kann. In einigen Ausführungsbeispielen können ein oder mehrere der wichtigsten Verfahrensschritte durch eine solche Vorrichtung ausgeführt werden.Some or all of the method steps may be performed by (or using) a hardware device, such as a processor, a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, one or more of the key method steps may be performed by such a device.

Abhängig von bestimmten Implementierungsanforderungen können Ausführungsbeispiele der Erfindung in Hardware oder Software implementiert werden. Die Implementierung kann mit einem nicht-flüchtigen Speichermedium wie einem digitalen Speichermedium, wie beispielsweise einer Diskette, einer DVD, einem Blu-Ray, einer CD, einem ROM, einem PROM und EPROM, einem EEPROM oder einem FLASH-Speicher, durchgeführt werden, auf dem elektronisch lesbare Steuersignale gespeichert sind, die mit einem programmierbaren Computersystem so zusammenwirken (oder zusammenwirken können), dass das jeweilige Verfahren durchgeführt wird. Daher kann das digitale Speichermedium computerlesbar sein.Depending on particular implementation requirements, embodiments of the invention may be implemented in hardware or software. The implementation may be performed with a non-volatile storage medium such as a digital storage medium such as a floppy disk, a DVD, a Blu-Ray, a CD, a ROM, a PROM and EPROM, an EEPROM or a FLASH memory in which electronically readable control signals are stored, which interact (or can interact) with a programmable computer system in such a way that the respective method is carried out. Therefore, the digital storage medium can be computer readable.

Einige Ausführungsbeispiele gemäß der Erfindung umfassen einen Datenträger mit elektronisch lesbaren Steuersignalen, die mit einem programmierbaren Computersystem zusammenwirken können, so dass eines der hierin beschriebenen Verfahren durchgeführt wird.Some embodiments according to the invention include a data carrier with electronically readable control signals that can interact with a programmable computer system to perform one of the methods described herein.

Im Allgemeinen können Ausführungsbeispiele der vorliegenden Erfindung als Computerprogrammprodukt mit einem Programmcode implementiert werden, wobei der Programmcode für die Ausführung eines der Verfahren wirksam ist, wenn das Computerprogrammprodukt auf einem Computer läuft. Der Programmcode kann beispielsweise auf einem maschinenlesbaren Träger gespeichert werden.In general, embodiments of the present invention may be implemented as a computer program product with program code, the program code being effective for executing one of the methods when the computer program product is running on a computer. The program code can, for example, be stored on a machine-readable medium.

Weitere Ausführungsbeispiele umfassen das Computerprogramm zur Durchführung eines der hierin beschriebenen Verfahren, das auf einem maschinenlesbaren Träger gespeichert ist.Further exemplary embodiments include the computer program for carrying out one of the methods described herein, which is stored on a machine-readable medium.

Mit anderen Worten, ein Ausführungsbeispiel der vorliegenden Erfindung ist daher ein Computerprogramm mit einem Programmcode zur Durchführung eines der hierin beschriebenen Verfahren, wenn das Computerprogramm auf einem Computer läuft.In other words, an embodiment of the present invention is therefore a computer program with a program code for carrying out tion of any of the methods described herein when the computer program is running on a computer.

Ein weiteres Ausführungsbeispiel der vorliegenden Erfindung ist daher ein Speichermedium (oder ein Datenträger oder ein computerlesbares Medium), das ein darauf gespeichertes Computerprogramm zum Ausführen eines der hierin beschriebenen Verfahren umfasst, wenn es von einem Prozessor ausgeführt wird. Der Datenträger, das digitale Speichermedium oder das aufgezeichnete Medium sind in der Regel greifbar und/oder nicht übergangslos. Eine weiteres Ausführungsbeispiel der vorliegenden Erfindung ist eine Vorrichtung, wie hierin beschrieben, die einen Prozessor und das Speichermedium umfasst. Therefore, another embodiment of the present invention is a storage medium (or a data carrier or a computer-readable medium) that includes, stored thereon, a computer program for carrying out one of the methods described herein when executed by a processor. The data carrier, digital storage medium or recorded medium is usually tangible and/or non-seamless. Another embodiment of the present invention is an apparatus as described herein that includes a processor and the storage medium.

Ein weiteres Ausführungsbeispiel der Erfindung ist daher ein Datenstrom oder eine Signalfolge, die das Computerprogramm zur Durchführung eines der hierin beschriebenen Verfahren darstellt. Der Datenstrom oder die Signalfolge kann beispielsweise so konfiguriert werden, dass sie über eine Datenkommunikationsverbindung, beispielsweise über das Internet, übertragen werden.A further exemplary embodiment of the invention is therefore a data stream or a signal sequence that represents the computer program for carrying out one of the methods described herein. The data stream or the signal sequence can, for example, be configured so that they are transmitted via a data communication connection, for example via the Internet.

Ein weiteres Ausführungsbeispiel umfasst ein Verarbeitungsmittel, zum Beispiel einen Computer oder eine programmierbare Logikvorrichtung, das konfiguriert oder angepasst ist, um eines der hierin beschriebenen Verfahren auszuführen.Another embodiment includes a processing means, for example a computer or a programmable logic device, configured or adapted to carry out any of the methods described herein.

Ein weiteres Ausführungsbeispiel umfasst einen Computer, auf dem das Computerprogramm zum Ausführen eines der hierin beschriebenen Verfahren installiert ist.Another embodiment includes a computer on which the computer program for executing one of the methods described herein is installed.

Ein weiteres Ausführungsbeispiel gemäß der Erfindung umfasst eine Vorrichtung oder ein System, das konfiguriert ist, um (zum Beispiel elektronisch oder optisch) ein Computerprogramm zum Ausführen eines der hierin beschriebenen Verfahren an einen Empfänger zu übertragen. Der Empfänger kann beispielsweise ein Computer, eine mobile Vorrichtung, eine Speichervorrichtung oder dergleichen sein. Die Vorrichtung oder das System kann beispielsweise einen Dateiserver zum Übertragen des Computerprogramms an den Empfänger umfassen.Another embodiment according to the invention includes an apparatus or system configured to transmit (e.g., electronically or optically) to a receiver a computer program for carrying out one of the methods described herein. The receiver may be, for example, a computer, a mobile device, a storage device, or the like. The device or system may, for example, include a file server for transmitting the computer program to the recipient.

In einigen Ausführungsbeispielen kann eine programmierbare logische Vorrichtung (z.B. eine feldprogrammierbare Gatteranordnung, FPGA) verwendet werden, um einige oder alle Funktionalitäten der hierin beschriebenen Verfahren auszuführen. In einigen Ausführungsbeispielen kann eine feldprogrammierbare Gatteranordnung mit einem Mikroprozessor zusammenarbeiten, um eines der hierin beschriebenen Verfahren durchzuführen. Im Allgemeinen werden die Verfahren vorzugsweise von jedem Hardwaregerät durchgeführt.In some embodiments, a programmable logic device (e.g., a field programmable gate array, FPGA) may be used to perform some or all of the functionality of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor to perform any of the methods described herein. In general, the methods are preferably performed by each hardware device.

Ausführungsbeispiele können auf dem Verwenden einer Künstlichen Intelligenz, insbesondere eines Maschinenlern-Modells oder Maschinenlern-Algorithmus, basieren. Maschinelles Lernen kann sich auf Algorithmen und statistische Modelle beziehen, die Computersysteme verwenden können, um eine bestimmte Aufgabe ohne Verwendung expliziter Anweisungen auszuführen, anstatt sich auf Modelle und Inferenz zu verlassen. Beim maschinellen Lernen kann beispielsweise anstatt einer auf Regeln basierenden Transformation von Daten, eine Transformation von Daten verwendet werden, die aus einer Analyse von Verlaufs- und/oder Trainings-Daten hergeleitet werden kann. Beispielsweise kann der Inhalt von Bildern unter Verwendung eines Maschinenlern-Modells oder unter Verwendung eines Maschinenlern-Algorithmus analysiert werden. Damit das Maschinenlern-Modell den Inhalt eines Bildes analysieren kann, kann das Maschinenlern-Modell unter Verwendung von Trainingsbildern als Eingabe und Trainingsinhaltsinformation als Ausgabe trainiert werden. Durch Trainieren des Maschinenlern-Modells mit einer großen Anzahl von Trainingsbildern und/oder Trainingssequenzen (z. B. Wörtern oder Sätzen) und zugeordneter Trainingsinhaltsinformation (z. B. Kennzeichnungen oder Anmerkungen) „lernt“ das Maschinenlern-Modell, den Inhalt der Bilder zu erkennen, sodass der Inhalt von Bildern, die in den Trainingsdaten nicht umfasst sind, unter Verwendung des Maschinenlern-Modells erkannt werden kann. Das gleiche Prinzip kann für andere Arten von Sensordaten ebenfalls verwendet werden: Durch Trainieren eines Maschinenlern-Modells unter Verwendung von Trainingssensordaten und einer erwünschten Ausgabe „lernt“ das Maschinenlern-Modell eine Umwandlung zwischen den Sensordaten und der Ausgabe, was verwendet werden kann, um eine Ausgabe basierend auf an das Maschinenlern-Modell bereitgestellten Nicht-Trainings-Sensordaten bereitzustellen. Die bereitgestellten Daten (z.B. Sensordaten, Metadaten und/oder Bilddaten) können vorverarbeitet werden, um einen Merkmalsvektor zu erhalten, welcher als Eingang für das Maschinenlern-Modell verwendet wird.Embodiments may be based on using artificial intelligence, in particular a machine learning model or machine learning algorithm. Machine learning can refer to algorithms and statistical models that computer systems can use to perform a specific task without using explicit instructions, rather than relying on models and inference. In machine learning, for example, instead of a rule-based transformation of data, a transformation of data can be used that can be derived from an analysis of historical and/or training data. For example, the content of images can be analyzed using a machine learning model or using a machine learning algorithm. In order for the machine learning model to analyze the content of an image, the machine learning model can be trained using training images as input and training content information as output. By training the machine learning model with a large number of training images and/or training sequences (e.g. words or sentences) and associated training content information (e.g. labels or annotations), the machine learning model “learns” the content of the images recognize so that the content of images not included in the training data can be recognized using the machine learning model. The same principle can be used for other types of sensor data as well: By training a machine learning model using training sensor data and a desired output, the machine learning model "learns" a transformation between the sensor data and the output, which can be used to create a Provide output based on non-training sensor data provided to the machine learning model. The provided data (e.g. sensor data, metadata and/or image data) can be pre-processed to obtain a feature vector, which is used as input for the machine learning model.

Maschinenlern-Modelle können unter Verwendung von Trainingseingabedaten trainiert werden. Die oben angeführten Beispiele verwenden ein Trainingsverfahren, das „Supervised Learning“ genannt wird. Beim Supervised Learning wird das Maschinenlern-Modell unter Verwendung einer Mehrzahl von Trainingsabtastwerten trainiert, wobei jeder Abtastwert eine Mehrzahl von Eingabedatenwerten und eine Mehrzahl von erwünschten Ausgabewerten, d. h. jedem Trainingsabtastwert ist ein erwünschter Ausgabewert zugeordnet, umfassen kann. Durch Angeben sowohl von Trainingsabtastwerten als auch erwünschten Ausgabewerten „lernt“ das Maschinenlern-Modell, welcher Ausgabewert basierend auf einem Eingabeabtastwert, der ähnlich zu den während des Trainings bereitgestellten Abtastwerten ist, bereitzustellen ist. Neben dem Supervised Learning kann auch Semi-Supervised Learning verwendet werden. Beim Semi-Supervised Learning fehlt einigen der Trainingsabtastwerte ein erwünschter Ausgabewert. Supervised Learning kann auf einem Supervised Learning-Algorithmus basieren (z. B. einem Klassifizierungsalgorithmus, einem Regressionsalgorithmus oder einem Ähnlichkeitslernen-Algorithmus). Klassifizierungsalgorithmen können verwendet werden, wenn die Ausgaben auf eine begrenzte Menge von Werten (kategorische Variablen) beschränkt sind, d. h. die Eingabe ist als einer aus dem begrenzten Satz von Werten klassifiziert. Regressionsalgorithmen können verwendet werden, wenn die Ausgaben irgendeinen Zahlenwert (innerhalb eines Bereichs) ausweisen. Ähnlichkeitslernen-Algorithmen können sowohl Klassifizierungs- als auch Regressionsalgorithmen ähnlich sein, basieren aber auf dem Lernen aus Beispielen unter Verwendung einer Ähnlichkeitsfunktion, die misst, wie ähnlich oder verwandt zwei Objekte sind. Neben dem Supervised Learning oder Semi-Supervised Learning kann Unsupervised Learning verwendet werden, um das Maschinenlern-Modell zu trainieren. Beim Unsupervised Learning werden möglicherweise (nur) Eingabedaten bereitgestellt und ein Unsupervised Learning-Algorithmus kann verwendet werden, um eine Struktur in den Eingabedaten zu finden (z. B. durch Gruppieren oder Clustern der Eingabedaten, Finden von Gemeinsamkeiten in den Daten). Clustern ist die Zuweisung von Eingabedaten, die eine Mehrzahl von Eingabewerten umfassen, in Teilmengen (Cluster), sodass Eingabewerte innerhalb desselben Clusters gemäß einem oder mehreren (vordefinierten) Ähnlichkeitskriterien ähnlich sind, während sie Eingabewerten, die in anderen Clustern umfasst sind, unähnlich sind.Machine learning models can be trained using training input data. The examples above use a training method called “supervised learning.” In supervised learning, the machine learning model is trained using a plurality of training samples, where each sample may include a plurality of input data values and a plurality of desired output values, that is, each training sample is assigned a desired output value. By specifying both training samples and desired output values, the machine learning model “learns” which output value based on an input sample that is similar to the sample values provided during training. In addition to supervised learning, semi-supervised learning can also be used. In semi-supervised learning, some of the training samples lack a desired output value. Supervised learning can be based on a supervised learning algorithm (e.g. a classification algorithm, a regression algorithm, or a similarity learning algorithm). Classification algorithms can be used when the outputs are restricted to a limited set of values (categorical variables), i.e. the input is classified as one from the limited set of values. Regression algorithms can be used when the outputs show any numerical value (within a range). Similarity learning algorithms can be similar to both classification and regression algorithms, but are based on learning from examples using a similarity function that measures how similar or related two objects are. In addition to supervised learning or semi-supervised learning, unsupervised learning can be used to train the machine learning model. In unsupervised learning, input data may be provided (only) and an unsupervised learning algorithm may be used to find structure in the input data (e.g. by grouping or clustering the input data, finding commonalities in the data). Clustering is the assignment of input data comprising a plurality of input values into subsets (clusters) such that input values within the same cluster are similar according to one or more (predefined) similarity criteria, while they are dissimilar to input values comprised in other clusters.

Verstärkendes Lernen ist eine dritte Gruppe von Maschinenlern-Algorithmen. Anders ausgedrückt, verstärkendes Lernen kann verwendet werden, um das Maschinenlern-Modell zu trainieren. Beim verstärkenden Lernen werden ein oder mehrere Software-Akteure (sogenannte „Software Agents“) trainiert, um Handlungen in einer Umgebung vorzunehmen. Basierend auf den vorgenommenen Handlungen wird eine Belohnung berechnet. Verstärkendes Lernen basiert auf dem Trainieren des einen oder der mehreren Software Agents, um die Handlungen auszuwählen, derart, dass die kumulative Belohnung erhöht wird, was zu Software Agents führt, die in der Aufgabe, die ihnen gegeben wird, besser werden (wie durch steigende Belohnungen nachgewiesen).Reinforcement learning is a third group of machine learning algorithms. In other words, reinforcement learning can be used to train the machine learning model. Reinforcement learning involves training one or more software actors (so-called “software agents”) to perform actions in an environment. Based on the actions taken, a reward is calculated. Reinforcement learning is based on training the one or more software agents to select the actions in such a way that the cumulative reward is increased, resulting in software agents that become better at the task they are given (as by increasing rewards proven).

Ferner können einige Techniken auf einige der Maschinenlern-Algorithmen angewandt werden. Zum Beispiel kann Feature Learning verwendet werden. Anders ausgedrückt, das Maschinenlern-Modell kann zumindest teilweise unter Verwendung von Feature Learning trainiert werden, und/oder der Maschinenlern-Algorithmus kann eine Feature Learning-Komponente umfassen. Feature Learning-Algorithmen, die Representation Learning-Algorithmen genannt werden, können die Information in ihrer Eingabe erhalten, sie aber derart transformieren, dass sie nützlich wird, häufig als Vorverarbeitungsstufe vor dem Ausführen der Klassifizierung oder dem Vorhersagen. Feature Learning kann beispielsweise auf einer Hauptkomponenten-Analyse oder Cluster-Analyse basieren.Furthermore, some techniques can be applied to some of the machine learning algorithms. For example, feature learning can be used. In other words, the machine learning model may be at least partially trained using feature learning and/or the machine learning algorithm may include a feature learning component. Feature learning algorithms, called representation learning algorithms, can preserve the information in their input but transform it in such a way that it becomes useful, often as a preprocessing stage before performing classification or prediction. For example, feature learning can be based on principal component analysis or cluster analysis.

Bei einigen Beispielen kann eine Anomaliedetektion (d. h. Ausreißer-Detektion) verwendet werden, die darauf abzielt, eine Identifizierung von Eingabewerten bereitzustellen, die Verdacht erregen, da sie sich erheblich von der Mehrheit von Eingabe- und Trainingsdaten unterscheiden. Anders ausgedrückt, das Maschinenlern-Modell kann zumindest teilweise unter Verwendung von Anomaliedetektion trainiert werden, und/oder der Maschinenlern-Algorithmus kann eine Anomaliedetektions-Komponente umfassen.In some examples, anomaly detection (i.e., outlier detection) may be used, which aims to provide identification of input values that raise suspicion because they differ significantly from the majority of input and training data. In other words, the machine learning model may be trained at least in part using anomaly detection, and/or the machine learning algorithm may include an anomaly detection component.

Bei einigen Beispielen kann der Maschinenlern-Algorithmus einen Entscheidungsbaum als Vorhersagemodell verwenden. Anders ausgedrückt, das Maschinenlern-Modell kann auf einem Entscheidungsbaum basieren. Bei einem Entscheidungsbaum können die Beobachtungen zu einem Gegenstand (z. B. einer Menge von Eingabewerten) durch die Zweige des Entscheidungsbaums dargestellt werden, und ein Ausgabewert, der dem Gegenstand entspricht, kann durch die Blätter des Entscheidungsbaums dargestellt werden. Entscheidungsbäume können sowohl diskrete Werte als auch fortlaufende Werte als Ausgabewerte unterstützen. Wenn diskrete Werte verwendet werden, kann der Entscheidungsbaum als Klassifizierungsbaum bezeichnet werden, wenn fortlaufende Werte verwendet werden, kann der Entscheidungsbaum als Regressionsbaum bezeichnet werden.In some examples, the machine learning algorithm may use a decision tree as a prediction model. In other words, the machine learning model can be based on a decision tree. In a decision tree, the observations about an item (e.g., a set of input values) can be represented by the branches of the decision tree, and an output value corresponding to the item can be represented by the leaves of the decision tree. Decision trees can support both discrete values and continuous values as output values. When discrete values are used, the decision tree can be called a classification tree; when continuous values are used, the decision tree can be called a regression tree.

Assoziationsregeln sind eine weitere Technik, die bei Maschinenlern-Algorithmen verwendet werden kann. Anders ausgedrückt, das Maschinenlern-Modell kann auf einer oder mehreren Assoziationsregeln basieren. Assoziationsregeln werden erstellt, indem Verhältnisse zwischen Variablen bei großen Datenmengen identifiziert werden. Der Maschinenlern-Algorithmus kann eine oder mehrere Verhältnisregeln identifizieren und/oder nutzen, die das Wissen darstellen, dass aus den Daten hergeleitet ist. Die Regeln können z. B. verwendet werden, um das Wissen zu speichern, zu manipulieren oder anzuwenden.Association rules are another technique that can be used in machine learning algorithms. In other words, the machine learning model can be based on one or more association rules. Association rules are created by identifying relationships between variables in large sets of data. The machine learning algorithm may identify and/or utilize one or more ratio rules that represent the knowledge derived from the data. The rules can e.g. B. be used to store, manipulate or apply knowledge.

Maschinenlern-Algorithmen basieren normalerweise auf einem Maschinenlern-Modell. Anders ausgedrückt, der Begriff „Maschinenlern-Algorithmus“ kann einen Satz von Anweisungen bezeichnen, die verwendet werden können, um ein Maschinenlern-Modell zu erstellen, zu trainieren oder zu verwenden. Der Begriff „Maschinenlern-Modell“ kann eine Datenstruktur und/oder einen Satz von Regeln bezeichnen, die/der das erlernte Wissen darstellt (z. B. basierend auf dem durch den Maschinenlern-Algorithmus ausgeführten Training). Bei Ausführungsbeispielen kann die Verwendung eines Maschinenlern-Algorithmus die Verwendung eines zugrundeliegenden Maschinenlern-Modells (oder einer Mehrzahl von zugrundeliegenden Maschinenlern-Modellen) implizieren. Die Verwendung eines Maschinenlern-Modells kann implizieren, dass das Maschinenlern-Modell und/oder die Datenstruktur/der Satz von Regeln, welche das Maschinenlern-Modell ist/sind, durch einen Maschinenlern-Algorithmus trainiert wird.Machine learning algorithms are usually based on a machine learning model. Different In other words, the term “machine learning algorithm” may mean a set of instructions that can be used to create, train, or use a machine learning model. The term “machine learning model” may mean a data structure and/or a set of rules that represents the learned knowledge (e.g. based on the training performed by the machine learning algorithm). In embodiments, the use of a machine learning algorithm may imply the use of an underlying machine learning model (or a plurality of underlying machine learning models). The use of a machine learning model may imply that the machine learning model and/or the data structure/set of rules that is/are the machine learning model is trained by a machine learning algorithm.

Beispielsweise kann das Maschinenlern-Modell ein künstliches neuronales Netz (ANN; artificial neural network) sein. ANNs sind Systeme, die durch biologische neuronale Netze inspiriert sind, wie sie in einer Netzhaut oder einem Gehirn zu finden sind. ANNs umfassen eine Mehrzahl von zwischenverbundenen Knoten und eine Mehrzahl von Verbindungen, sogenannte Kanten (edges), zwischen den Knoten. Es gibt normalerweise drei Knotentypen, Eingabeknoten, die Eingabewerte empfangen, versteckte Knoten, die (nur) mit anderen Knoten verbunden sind, und Ausgabeknoten, die Ausgabewerte bereitstellen. Jeder Knoten kann ein künstliches Neuron darstellen. Jede Kante kann Information senden, von einem Knoten zum anderen. Die Ausgabe eines Knoten kann als eine (nichtlineare) Funktion der Eingaben definiert sein (z.B. der Summe seiner Eingaben). Die Eingaben eines Knoten können in der Funktion basierend auf einem „Gewicht“ der Kante oder des Knoten, der die Eingabe bereitstellt, verwendet werden. Das Gewicht von Knoten und/oder von Kanten kann in dem Lernprozess angepasst werden. Anders ausgedrückt, das Training eines künstlichen neuronalen Netzes kann ein Anpassen der Gewichte der Knoten und/oder Kanten des künstlichen neuronalen Netzes umfassen, d. h. um eine erwünschte Ausgabe für eine bestimmte Eingabe zu erreichen.For example, the machine learning model can be an artificial neural network (ANN). ANNs are systems inspired by biological neural networks such as those found in a retina or brain. ANNs include a plurality of interconnected nodes and a plurality of connections, called edges, between the nodes. There are usually three types of nodes, input nodes that receive input values, hidden nodes that are (only) connected to other nodes, and output nodes that provide output values. Each node can represent an artificial neuron. Each edge can send information from one node to another. The output of a node can be defined as a (nonlinear) function of the inputs (e.g. the sum of its inputs). A node's inputs can be used in the function based on a "weight" of the edge or node providing the input. The weight of nodes and/or edges can be adjusted in the learning process. In other words, training an artificial neural network may include adjusting the weights of the nodes and/or edges of the artificial neural network, i.e. H. to achieve a desired output for a given input.

Alternativ kann das Maschinenlern-Modell eine Support-Vector-Machine, ein Random-Forest-Modell oder ein Gradient-Boosting-Modell sein. Support Vector Machines (d. h. Stützvektornetze) sind Supervised Learning-Modelle mit zugeordneten Lernalgorithmen, die verwendet werden können, um Daten zu analysieren (z. B. in einer Klassifizierungs- oder Regressionsanalyse). Support Vector Machines können durch Bereitstellen einer Eingabe mit einer Mehrzahl von Trainingseingabewerten, die zu einer von zwei Kategorien gehören, trainiert werden. Die Support Vector Machine kann trainiert werden, um einer der beiden Kategorien einen neuen Eingabewert zuzuweisen. Alternativ kann das Maschinenlern-Modell ein bayessches Netz sein, das ein probabilistisches gerichtetes azyklisches graphisches Modell ist. Ein bayessches Netz kann einen Satz von Zufallsvariablen und ihre bedingten Abhängigkeiten unter Verwendung eines gerichteten azyklischen Graphen darstellen. Alternativ kann das Maschinenlern-Modell auf einem genetischen Algorithmus basieren, der ein Suchalgorithmus und heuristische Technik ist, die den Prozess der natürlichen Selektion imitiert.Alternatively, the machine learning model can be a support vector machine, a random forest model or a gradient boosting model. Support Vector Machines are supervised learning models with associated learning algorithms that can be used to analyze data (e.g. in a classification or regression analysis). Support vector machines can be trained by providing input with a plurality of training input values belonging to one of two categories. The support vector machine can be trained to assign a new input value to either category. Alternatively, the machine learning model may be a Bayesian network, which is a probabilistic directed acyclic graphical model. A Bayesian network can represent a set of random variables and their conditional dependencies using a directed acyclic graph. Alternatively, the machine learning model may be based on a genetic algorithm, which is a search algorithm and heuristic technique that mimics the process of natural selection.

Claims (11)

Künstliche Intelligenz, insbesondere eines Maschinenlern-Modells oder Maschinenlern-Algorithmus, zur präzisen Bestimmung eines ausgabeseitigen Drehmoments eines Aktuatorgetriebes (203) eines Gelenks (100) eines kollaborativen Roboters, welche dazu eingerichtet ist, auf Basis von Eingangsvariablen eine oder mehrere Ausgangsvariablen auszugeben, wobei die Eingangsvariablen der Künstlichen Intelligenz umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage entspricht, eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage entspricht, und wobei ferner die Ausgangsvariablen das durch die Künstliche Intelligenz bestimmte ausgehende Drehmoment umfassen, wobei die Künstliche Intelligenz ferner dazu eingerichtet ist, auf Basis von sekundären Eingangsvariablen eine oder mehrere sekundäre Ausgangsvariablen auszugeben, wobei die sekundären Eingangsvariablen der Künstlichen Intelligenz für einen jeden von sechs Gelenkaktuatoren (100) eines kollaborativen Roboters umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage am jeweiligen Gelenk entspricht, eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage am jeweiligen Gelenk entspricht, und wobei ferner die sekundären Ausgangsvariablen die durch die Künstliche Intelligenz bereitgestellte sechsachsige Bestimmung von Kräften und Drehmomenten am Endeffektor, nämlich eine dreikomponentige Kraft und ein dreikomponentiges Drehmoment am Endeffektor, umfassen, wobei die Künstliche Intelligenz mit Hilfe eines Feedback-Regelkreises durch einen gemessenen Wert eines endeffektorseitigen Drehmoments eines Sechs-Achsen-Kraft-Drehmoment-Sensor trainiert, wobei diese das ausgangsseitige Drehmoment mit diesem Vergleicht und bei einer Kompromittierung das Training abbricht, wobei eine präzise indirekte sechsachsige Bestimmung von Kräften und Drehmomenten an einem Endeffektor unter Nutzung von folgenden Datensätzen als Eingangsdaten erfolgt: Datensätze umfassend Daten in Bezug auf eine eingangsseitigen Winkellage sowie eine ausgangsseitige Winkellage eines jeweiligen Gelenkaktuatorgetriebes (203), für sechs Gelenkaktuatoren eines Roboterarms, wobei ein gemessener Wert eines endeffektorseitgen Drehmoments, gemessen durch einen Sechs-Achsen-Kraft-Drehmoment-Sensor, ferner als Zielwert als Teil des Feedback-Regelkreises, in welchem die Künstliche Intelligenz angeordnet ist, verwendet wird, wobei das Trainieren kontinuierlich betrieben wird, wobei das Trainieren jedoch abgebrochen und/oder unterbrochen wird, wenn festgestellt wird, dass der mittels des Sechs-Achsen-Kraft-Drehmoment-Sensors gemessene Wert des ausgangsseitigen Drehmoments kompromittiert ist oder das entsprechende Signal abbricht.Artificial intelligence, in particular a machine learning model or machine learning algorithm, for precisely determining an output-side torque of an actuator gear (203) of a joint (100) of a collaborative robot, which is set up to output one or more output variables based on input variables, wherein the Input variables of the artificial intelligence include: a first angle specification, which corresponds to an angular position on the input side, a second angle specification, which corresponds to an angular position on the output side, and furthermore the output variables include the outgoing torque determined by the artificial intelligence, the artificial intelligence also being set up to do this: to output one or more secondary output variables based on secondary input variables, the secondary input variables of the artificial intelligence for each of six joint actuators (100) of a collaborative robot comprising: a first angle specification, which corresponds to an input-side angular position at the respective joint, a second angle specification, which corresponds to an output-side angular position at the respective joint, and wherein the secondary output variables further comprise the six-axis determination of forces and torques at the end effector provided by the artificial intelligence, namely a three-component force and a three-component torque at the end effector, the artificial intelligence using a Feedback control loop is trained by a measured value of an end effector-side torque of a six-axis force-torque sensor, which compares the output-side torque with this and, if compromised, stops the training, with a precise indirect six-axis determination of forces and torques on one End effector using the following data sets as input data: Data sets comprising data relating to an input-side angular position and an output-side angular position of a respective joint actuator gear (203), for six joint actuators of a robot arm, wherein a measured value of an end effector-side torque, measured by a six-axis -Force-torque sensor, further used as a target value as part of the feedback control loop in which the artificial intelligence is arranged, the training being operated continuously, but the training being aborted and/or interrupted when it is determined that that the value of the output torque measured by the six-axis force-torque sensor is compromised or the corresponding signal breaks off. Künstliche Intelligenz nach Anspruch 1, eingerichtet für ein unüberwachtes Lernen mit einem Multi-Layer-Perzeptron.Artificial intelligence after Claim 1 , set up for unsupervised learning with a multi-layer perceptron. Künstliche Intelligenz nach Anspruch 1 oder 2, wobei die Eingangsvariablen, je Gelenk, ferner umfassen: Winkelgeschwindigkeit, Geschwindigkeit, Beschleunigung und/oder Temperatur.Artificial intelligence after Claim 1 or 2 , wherein the input variables, per joint, further include: angular velocity, speed, acceleration and / or temperature. Verfahren zum Trainieren einer Künstlichen Intelligenz, nämlich eines Maschinenlern-Modells oder Maschinenlern-Algorithmus, nach einem der vorhergehenden Ansprüche durch unüberwachtes Lernen oder verstärkendes Lernen mittels einer präzisen indirekten sechsachsigen Bestimmung von Kräften und Drehmomenten an einem Endeffektor unter Nutzung von folgenden Datensätzen als Eingangsdaten: Datensätze umfassend Daten in Bezug auf eine eingangsseitigen Winkellage sowie eine ausgangsseitige Winkellage eines jeweiligen Gelenkaktuatorgetriebes (203) für sechs Gelenkaktuatoren eines Roboterarms.Method for training an artificial intelligence, namely a machine learning model or machine learning algorithm, according to one of the preceding claims through unsupervised learning or reinforcement learning by means of a precise indirect six-axis determination of forces and torques on an end effector using the following data sets as input data: Data sets comprising data relating to an input-side angular position and an output-side angular position of a respective joint actuator gear (203) for six joint actuators of a robot arm. Verfahren nach Anspruch 4, wobei ein gemessener Wert eines endeffektorseitgen Drehmoments, gemessen durch einen Sechs-Achsen-Kraft-Drehmoment-Sensor, ferner als Zielwert als Teil eines Feedback-Regelkreises, in welchem die Künstliche Intelligenz angeordnet ist, verwendet wird.Procedure according to Claim 4 , wherein a measured value of an end effector torque measured by a six-axis force-torque sensor is further used as a target value as part of a feedback control loop in which the artificial intelligence is arranged. Verfahren nach Anspruch 5, wobei das Trainieren kontinuierlich betrieben wird, wobei das Trainieren jedoch abgebrochen und/oder unterbrochen wird, wenn festgestellt wird, dass der mittels des Sechs-Achsen-Kraft-Drehmoment-Sensors gemessene Wert des ausgangsseitigen Drehmoments kompromittiert ist oder das entsprechende Signal abbricht.Procedure according to Claim 5 , wherein the training is operated continuously, but the training is aborted and / or interrupted if it is determined that the value of the output torque measured by the six-axis force-torque sensor is compromised or the corresponding signal breaks off. Verfahren zur präzisen Bestimmung eines ausgabeseitigen Drehmoments eines Aktuatorgetriebes (203) eines Gelenks (100) eines kollaborativen Roboters mittels einer Künstlichen Intelligenz, nämlich eines Maschinenlern-Modells oder Maschinenlern-Algorithmus, welche dazu eingerichtet ist, auf Basis von Eingangsvariablen eine oder mehrere Ausgangsvariablen auszugeben, wobei die Eingangsvariablen der Künstlichen Intelligenz umfassen: eine erste Winkelangabe, welche einer eingangsseitigen Winkellage entspricht eine zweite Winkelangabe, welche einer ausgabeseitigen Winkellage entspricht, und wobei ferner die Ausgangsvariablen das durch die Künstliche Intelligenz bestimmte ausgehende Drehmoment umfassen, wobei die Künstliche Intelligenz mit einem Verfahren nach einem der Ansprüche 4 bis 6 trainiert wird und/oder wurde, insbesondere im kontinuierlichen Betrieb fortwährend trainiert wird.Method for precisely determining an output-side torque of an actuator gear (203) of a joint (100) of a collaborative robot using an artificial intelligence, namely a machine learning model or machine learning algorithm, which is set up to output one or more output variables based on input variables, wherein the input variables of the artificial intelligence include: a first angle specification, which corresponds to an angular position on the input side, a second angle specification, which corresponds to an angular position on the output side, and wherein further the output variables include the outgoing torque determined by the artificial intelligence, the artificial intelligence using a method according to one of the Claims 4 until 6 is and/or has been trained, particularly in continuous operation. Verfahren nach Anspruch 7, wobei die erste Winkelangabe von einem in Bezug auf ein Getriebe eingangsseitigen Winkellagegeber (301), nämlich Absolutwertgeber, bereitgestellt wurde und die zweite Winkelangabe von einem in Bezug auf ein Getriebe ausgabeseitigen Winkellagegeber (302), nämlich Inkrementaldrehgeber, bereitgestellt wurde.Procedure according to Claim 7 , wherein the first angle information was provided by an angular position encoder (301) on the input side of a gear, namely an absolute value encoder, and the second angle information was provided by an angular position encoder (302) on the output side of a gear, namely an incremental rotary encoder. Verfahren nach Anspruch 7 oder 8, wobei das Getriebe (203) ein Spannungswellengetriebe, Wellgetriebe und/oder Gleitkeilgetriebe umfasst.Procedure according to Claim 7 or 8th , wherein the gear (203) comprises a voltage wave gear, wave gear and / or sliding wedge gear. Ein Computerprogramm, umfassend Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren nach einem der Ansprüche 1 bis 9 auszuführen.A computer program comprising instructions which, when the program is executed by a computer, cause it to carry out the method according to one of the Claims 1 until 9 to carry out. Computer, Computersystem oder Computernetzwerk, welche dazu eingerichtet sind, lokal oder nicht-lokal das Verfahren nach einem der Ansprüche 1 bis 9 zu bewirken.Computer, computer system or computer network that are set up to locally or non-locally use the method according to one of the Claims 1 until 9 to effect.
DE102022123243.3A 2022-09-13 2022-09-13 Artificial intelligence for precise determination of output torques of collaborative robots Active DE102022123243B3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022123243.3A DE102022123243B3 (en) 2022-09-13 2022-09-13 Artificial intelligence for precise determination of output torques of collaborative robots

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022123243.3A DE102022123243B3 (en) 2022-09-13 2022-09-13 Artificial intelligence for precise determination of output torques of collaborative robots

Publications (1)

Publication Number Publication Date
DE102022123243B3 true DE102022123243B3 (en) 2024-03-14

Family

ID=90055085

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022123243.3A Active DE102022123243B3 (en) 2022-09-13 2022-09-13 Artificial intelligence for precise determination of output torques of collaborative robots

Country Status (1)

Country Link
DE (1) DE102022123243B3 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10245594A1 (en) 2002-09-30 2004-04-08 Dürr Systems GmbH Collision detection method
DE102014110413B4 (en) 2014-07-23 2016-05-25 Kastanienbaum GmbH Articulated connection for a robot with torque ripple reduced drive
EP2231369B1 (en) 2007-12-28 2018-01-24 KUKA Roboter GmbH Robot and method for monitoring the torque on such a robot
DE112016001831B4 (en) 2015-05-21 2019-09-19 Kastanienbaum GmbH Method and device for controlling an actuator-driven robot joint
DE102019204564A1 (en) 2019-04-01 2020-10-01 Kuka Deutschland Gmbh Determining a parameter of a force acting on a robot
DE112020005156T5 (en) 2019-10-24 2022-07-28 Nvidia Corporation Reinforcement learning of tactile gripping strategies
DE102021212128B3 (en) 2021-10-27 2023-02-02 Kuka Deutschland Gmbh 16 Method and system for controlling a load-carrying robot and for determining a parameter of the load of the robot

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10245594A1 (en) 2002-09-30 2004-04-08 Dürr Systems GmbH Collision detection method
EP2231369B1 (en) 2007-12-28 2018-01-24 KUKA Roboter GmbH Robot and method for monitoring the torque on such a robot
DE102014110413B4 (en) 2014-07-23 2016-05-25 Kastanienbaum GmbH Articulated connection for a robot with torque ripple reduced drive
DE112016001831B4 (en) 2015-05-21 2019-09-19 Kastanienbaum GmbH Method and device for controlling an actuator-driven robot joint
DE102019204564A1 (en) 2019-04-01 2020-10-01 Kuka Deutschland Gmbh Determining a parameter of a force acting on a robot
DE112020005156T5 (en) 2019-10-24 2022-07-28 Nvidia Corporation Reinforcement learning of tactile gripping strategies
DE102021212128B3 (en) 2021-10-27 2023-02-02 Kuka Deutschland Gmbh 16 Method and system for controlling a load-carrying robot and for determining a parameter of the load of the robot

Similar Documents

Publication Publication Date Title
DE102016015866B3 (en) Machine learning device, robot controller, robot system and machine learning method for learning the behavior pattern of a person
DE102017000536B4 (en) Cell controller for detecting a cause of an abnormality in a manufacturing machine
DE112019002310B4 (en) PERFORMING A PEG IN HOLE TASK WITH AN UNKNOWN SLOPE
DE102014108287B4 (en) Quick learning by imitating power torque tasks by robots
DE112009003656B4 (en) Method and system for in-production optimization of the parameters of a robot used for assembly
DE102017005349A1 (en) MACHINE LEARNING DEVICE, NUMERICAL CONTROL DEVICE AND MACHINE LEARNING METHOD FOR LEARNING A THRESHOLD VALUE FOR DETECTING AN ANOMALAL LOAD
DE112016002431T5 (en) Method and system for robotic adaptive production
DE102017127098B4 (en) Apparatus and method for assuming abnormality occurrence for telescope coverage
DE112010000775T5 (en) INDUSTRIAL ROBOT SYSTEM
EP3670110A1 (en) Method and device for estimating torque
DE102019006725A1 (en) Control device and control system
DE102015122998B3 (en) Robot and method for operating a robot
DE102012213188B4 (en) A method and system for controlling an execution sequence of a skilled robot using a condition classification
DE112019007222T5 (en) ENGINE CONTROL DEVICE
DE102020115658A1 (en) Adjustment assistance device
DE102014226787B3 (en) Safe robot with pathway progress variables
DE102019205651B3 (en) Method and system for carrying out robot applications
DE202011110730U1 (en) Cognitive machining head for machining workpieces
DE102022123243B3 (en) Artificial intelligence for precise determination of output torques of collaborative robots
WO2024027868A1 (en) Method for precisely determining an output torque, and collaborative robot
WO2021233552A1 (en) Redundant control logic for safety-criticial automation systems based on artificial neural networks
DE19519368A1 (en) Method for determining the position of weight
WO2024008232A1 (en) Method for the dynamic detection of ratcheting in a collaborative robot by means of artifical intelligence and dynamic compensation of the trajectories
EP3410260B1 (en) Method for haptic testing of an object
DE102018109320A1 (en) Method for detecting an intention of a partner in relation to a multi-membered actuated kinematics

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division