DE102021208331A1 - Process for sensor data processing in a sensor system and associated sensor system - Google Patents
Process for sensor data processing in a sensor system and associated sensor system Download PDFInfo
- Publication number
- DE102021208331A1 DE102021208331A1 DE102021208331.5A DE102021208331A DE102021208331A1 DE 102021208331 A1 DE102021208331 A1 DE 102021208331A1 DE 102021208331 A DE102021208331 A DE 102021208331A DE 102021208331 A1 DE102021208331 A1 DE 102021208331A1
- Authority
- DE
- Germany
- Prior art keywords
- sensor
- state
- sensor data
- movement
- corrected
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000012545 processing Methods 0.000 title claims abstract description 31
- 230000004927 fusion Effects 0.000 claims abstract description 40
- 230000033001 locomotion Effects 0.000 claims description 114
- 230000007613 environmental effect Effects 0.000 claims description 96
- 238000010801 machine learning Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/16—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
Landscapes
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
- Testing Or Calibration Of Command Recording Devices (AREA)
Abstract
Die vorliegende Erfindung betrifft ein Verfahren (100) zur Sensordatenverarbeitung in einem Sensorsystem (1), in welchem eine Relativposition eines Objektes (20) zu dem Sensorsystem (1) durch eine Kinematik (2) verändert wird. Dies erfolgt gemäß einem zweistufigen Aufbau, in dem zunächst ein Ausführen einer Zeitverzugskompensation und dann ein Ausführen einer Sensordatenfusion (103) erfolgt.The present invention relates to a method (100) for sensor data processing in a sensor system (1), in which a relative position of an object (20) to the sensor system (1) is changed by kinematics (2). This takes place according to a two-stage structure, in which a time delay compensation is first carried out and then a sensor data fusion (103) is carried out.
Description
Stand der TechnikState of the art
Die vorliegende Erfindung betrifft ein Verfahren zur Sensordatenverarbeitung in einem Sensorsystem, in welchem eine Relativposition eines Objektes zu dem Sensorsystem durch eine Kinematik verändert wird. Die vorliegende Erfindung betrifft ferner ein zugehöriges Sensorsystem.The present invention relates to a method for sensor data processing in a sensor system, in which a position of an object relative to the sensor system is changed by kinematics. The present invention also relates to an associated sensor system.
Aktuelle Methoden zur Sensordatenfusion und Totzeitkompensation von bildbasierten Regelungssystemen erweitern bestehende klassische Algorithmen wie z.B. den Kalman-Filter. Die damit erzielten Ergebnisse sind sehr genau, aber nur mit großem Aufwand an veränderliche Umgebungsbedingungen anpassbar. Dabei wird versucht, eine Totzeitkompensation und eine Sensordatenfusion in einem einzelnen Schritt zu lösen.Current methods for sensor data fusion and dead time compensation of image-based control systems extend existing classic algorithms such as the Kalman filter. The results obtained are very accurate, but can only be adapted to changing environmental conditions with great effort. An attempt is made to solve dead time compensation and sensor data fusion in a single step.
Offenbarung der ErfindungDisclosure of Invention
Das erfindungsgemäße Verfahren zur Sensordatenverarbeitung betrifft ein Verfahren zur Sensordatenverarbeitung in einem Sensorsystem, in welchem eine Relativpose von einem oder mehreren Objekten zu dem Sensorsystem durch eine Kinematik verändert wird. Das Verfahren umfasst ein Erfassen von Sensordaten eines ersten Umgebungssensors, wobei die Sensordaten des ersten Umgebungssensors eine Lage des Objektes gegenüber dem Sensorsystem zu zumindest einem ersten Zeitpunkt beschreiben, ein Ausführen einer Zeitverzugskompensation mittels einer ersten Zustandsschätzung basierend auf den Sensordaten des ersten Umgebungssensors, wobei dem ersten Umgebungssensor zugehörige zustandskorrigierte Sensordaten errechnet werden, wobei die zustandskorrigierten Sensordaten eine erste korrigierte Lage und/oder Bewegung des Objektes gegenüber dem Sensorsystem zu zumindest einem zweiten Zweitpunkt beschreibt, wobei der zweite Zeitpunkt auf den ersten Zeitpunkt folgt, und wobei die erste Zustandsschätzung mittels zumindest eines ersten Bewegungsmodells erfolgt, welches eine Bewegung des Objektes gegenüber dem Sensorsystem beschreibt, ein Ausführen einer Sensordatenfusion mittels einer zweiten Zustandsschätzung basierend auf den bei der ersten Zustandsschätzung errechneten zustandskorrigierten Sensordaten und weiteren Sensordaten, wobei ein dem Objekt zugehöriger Zustandsvektor errechnet wird, wobei der Zustandsvektor ein Datensatz ist, der eine zweite korrigierte Lage und/oder Bewegung des Objektes gegenüber dem Sensorsystem beschreibt, und wobei die zweite Zustandsschätzung auf zumindest einem zweiten Bewegungsmodell basiert, welches eine Bewegung des Objektes gegenüber dem Sensorsystem beschreibt, und ein Bereitstellen des errechneten Zustandsvektors.The inventive method for sensor data processing relates to a method for sensor data processing in a sensor system, in which a relative pose of one or more objects to the sensor system is changed by kinematics. The method includes acquiring sensor data from a first environmental sensor, the sensor data from the first environmental sensor describing a position of the object in relation to the sensor system at least at a first point in time, executing a time delay compensation using a first state estimate based on the sensor data from the first environmental sensor, the first The state-corrected sensor data associated with the environmental sensor are calculated, with the state-corrected sensor data describing a first corrected position and/or movement of the object relative to the sensor system at at least a second second point, with the second point in time following the first point in time, and the first state estimate being determined by means of at least a first Movement model takes place, which describes a movement of the object relative to the sensor system, an execution of a sensor data fusion by means of a second state estimate based on the first state estimate ng calculated state-corrected sensor data and further sensor data, with a state vector associated with the object being calculated, with the state vector being a data set which describes a second corrected position and/or movement of the object in relation to the sensor system, and with the second state estimate being based on at least one second movement model based, which describes a movement of the object relative to the sensor system, and providing the calculated state vector.
Es wird somit ein zweistufiges Verfahren geschaffen, wobei in einer ersten Stufe das Ausführen der Zeitverzugskompensation erfolgt und in einer zweiten Stufe das Ausführen der Sensordatenfusion erfolgt. Es erfolgt somit eine getrennte Betrachtung von Sensordatenfusion und Zeitverzugskompensation.A two-stage method is thus created, with the time delay compensation being carried out in a first stage and the sensor data fusion being carried out in a second stage. There is thus a separate consideration of sensor data fusion and time delay compensation.
Es erfolgt somit eine getrennte Betrachtung von Sensordatenfusion und Zeitverzugskompensation in zwei Ebenen. Dadurch wird u.a. erreicht, dass eine Abtastrate und die Zeitverzugskompensation unabhängig voneinander eingestellt und variiert werden können, was insbesondere auch bei großen Zeitverzügen möglich ist. Die Abtastrate ist dabei insbesondere die Rate, mit welcher der Zustandsvektor jeweils neu bereitgestellt wird. Durch die Funktionstrennung wird eine Modularität innerhalb der Softwarearchitektur geschaffen. Weitere Messgrößen, die aus zusätzlichen Sensoren kommen, können der Struktur modular zugefügt werden. Es kann schnell auf bauliche Veränderungen reagiert werden, da nur kleine Teile der Implementierung angepasst werden müssen. Die verschiedenen Sensormessungen können trotz unterschiedlicher Frequenzen ohne Steuerungslogik miteinander fusioniert werden. Jede Messgröße erhält eine eigene Zeitverzugskompensation in der ersten Ebene und beeinflusst die restliche Implementierung nicht. Die Zeitverzugskompensation in der ersten Ebene wird vom jeweiligen Umgebungssensor getriggert, wodurch eine sehr effiziente Möglichkeit geschaffen wird, um die Architektur auf Mikrocontrollern laufen zu lassen.There is thus a separate consideration of sensor data fusion and time delay compensation on two levels. This means, among other things, that a sampling rate and the time delay compensation can be set and varied independently of one another, which is particularly possible with large time delays. In this case, the sampling rate is in particular the rate at which the state vector is newly provided in each case. The separation of functions creates modularity within the software architecture. Further measured variables, which come from additional sensors, can be added to the structure in a modular manner. It is possible to react quickly to structural changes since only small parts of the implementation need to be adjusted. Despite the different frequencies, the various sensor measurements can be merged with one another without control logic. Each measured variable receives its own time delay compensation in the first level and does not affect the rest of the implementation. The time delay compensation in the first level is triggered by the respective environmental sensor, which creates a very efficient way to run the architecture on microcontrollers.
Durch die Kinematik wird eine Relativposition oder Pose eines Objektes oder mehrerer Objekte zu dem Sensorsystem verändert. Dabei wird insbesondere die Relativposition eines Objektes gegenüber dem ersten Umgebungssensor verändert. Die Relativposition des Objektes zu dem Sensor wird dabei beispielsweise dadurch verändert, dass der erste Umgebungssensor durch die Kinematik bewegt wird, wobei der erste Umgebungssensor an einem Element der Kinematik angeordnet ist. Alternativ oder zusätzlich wird die Relativposition des Objektes zu dem Sensorsystem verändert, indem das Objekt durch die Kinematik gegenüber dem ortsfest angeordneten ersten Umgebungssensor bewegt wird. So ist beispielsweise der erste Umgebungssensor an einer festen Position angeordnet und das Objekt wird durch die Kinematik bewegt. Alternativ oder zusätzlich wird die Relativposition des Objektes zu dem Sensorsystem verändert, indem sowohl das Objekt als auch der Umgebungssensor durch die Kinematik bewegt wird. So ist beispielsweise der erste Umgebungssensor an einem ersten Element der Kinematik befestigt und das Objekt wird von einem zweiten Element der Kinematik gehalten, wobei die beiden Elemente durch eine zugehörige Motorik gegeneinander bewegt werden.A relative position or pose of an object or multiple objects to the sensor system is changed by the kinematics. In this case, in particular, the relative position of an object in relation to the first environmental sensor is changed. The position of the object relative to the sensor is changed, for example, by the first surroundings sensor being moved by the kinematics, with the first surroundings sensor being arranged on an element of the kinematics. Alternatively or additionally, the position of the object relative to the sensor system is changed in that the object is moved by the kinematics in relation to the stationary first environmental sensor. For example, the first environment sensor is arranged in a fixed position and the object is moved by the kinematics. Alternatively or additionally, the position of the object relative to the sensor system is changed in that both the object and the environmental sensor are moved by the kinematics. For example, the first environment sensor is attached to a first element of the kinematics and the object is of held a second element of the kinematics, the two elements are moved against each other by an associated motor.
Es erfolgt ein Erfassen von Sensordaten des ersten Umgebungssensors, wobei die Sensordaten des ersten Umgebungssensors eine Lage des Objektes gegenüber dem Sensorsystem zu zumindest einem ersten Zeitpunkt beschreiben. Dabei wird die Lage des Objektes als mehreren ersten Zeitpunkten zugehörig angesehen, wenn diese beispielsweise durch eine Mittelwertbildung über mehrere Zeitpunkte hinweg ermittelt wird. Die Sensordaten sind dabei bevorzugt solche Daten, welche basierend auf von dem Umgebungssensor bereitgestellten Messwerten ermittelt werden. Ist der erste Umgebungssensor beispielsweise eine Kamera, so repräsentieren die Sensordaten nicht zwingend ein Kamerabild, sondern beschreiben beispielsweise Positionsdaten des Objektes, die durch eine Bildverarbeitung aus den Bilddaten des Kamerabildes extrahiert wurden. So sind die Sensordaten insbesondere Informationen, die aus den Messwerten des ersten Umgebungssensors extrahiert wurden.Sensor data from the first surroundings sensor are recorded, with the sensor data from the first surroundings sensor describing a position of the object relative to the sensor system at least at a first point in time. The position of the object is considered to belong to a number of first points in time if this is determined, for example, by averaging over a number of points in time. The sensor data is preferably data that is determined based on measured values provided by the environmental sensor. If the first environmental sensor is a camera, for example, then the sensor data does not necessarily represent a camera image, but rather describes, for example, position data of the object that were extracted from the image data of the camera image by image processing. In particular, the sensor data is information that was extracted from the measured values of the first environmental sensor.
Es folgt ein Ausführen einer Zeitverzugskompensation mittels der ersten Zustandsschätzung basierend auf den Sensordaten des ersten Umgebungssensors. Dabei werden dem ersten Umgebungssensor zugehörige zustandskorrigierte Sensordaten errechnet. Die Zeitverzugskompensation ist dabei eine Totzeitkompensation. So ergibt sich das Problem, dass eine gewisse Zeit verstreicht, zwischen dem Zeitpunkt, zu dem durch den ersten Umgebungssensor eine Messung ausgeführt wurde und einem Zeitpunkt, zu dem die Sensordaten des ersten Umgebungssensors tatsächlich für eine Verarbeitung bereitstehen. Dies beruht beispielsweise darauf, dass eine gewisse Rechenarbeit notwendig ist, um die Sensordaten aus den Messwerten des ersten Umgebungssensors zu extrahieren. Somit sind die Sensordaten des ersten Umgebungssensors in gewisser Weise schon veraltet, also nicht aktuell, wenn diese bereitgestellt werden. Aus diesem Grund wird mittels der Zeitverzugskompensation eine Korrektur der Sensordaten des ersten Umgebungssensors ausgeführt, wobei prädiziert wird, wie diese gewählt sein müssten, wenn keine Verzögerung, also keine Totzeit, durch den ersten Umgebungssensor und die zugehörige Extraktion der Sensordaten vorliegen würde. Dies erfolgt mittels der ersten Zustandsschätzung. Dabei wird abgeschätzt, wie eine Lage und/oder Bewegung des Objektes ist, wenn keine Totzeit des ersten Umgebungssensors existieren würde. Dazu wird eines oder mehrere erste Bewegungsmodelle herangezogen. Durch das Bewegungsmodell wird modelliert, wie sich die Relativposition des Objektes gegenüber dem Sensorsystem mit hoher Wahrscheinlichkeit verändert. Dabei greif das Bewegungsmodell auf die Sensordaten des ersten Umgebungssensors zurück.A time delay compensation is then carried out using the first state estimate based on the sensor data of the first environmental sensor. In the process, state-corrected sensor data associated with the first environmental sensor are calculated. The time delay compensation is a dead time compensation. This gives rise to the problem that a certain time elapses between the point in time at which a measurement was carried out by the first environmental sensor and a point in time at which the sensor data from the first environmental sensor are actually ready for processing. This is based, for example, on the fact that a certain amount of computing work is necessary in order to extract the sensor data from the measured values of the first environmental sensor. The sensor data of the first environmental sensor are therefore already out of date in a certain way, ie not up-to-date when they are provided. For this reason, the sensor data of the first environmental sensor is corrected using the time delay compensation, with it being predicted how this would have to be selected if there were no delay, i.e. no dead time, due to the first environmental sensor and the associated extraction of the sensor data. This is done using the first state estimate. In this case, the position and/or movement of the object is estimated if there were no dead time of the first environmental sensor. One or more first movement models are used for this purpose. The movement model models how the relative position of the object in relation to the sensor system changes with a high degree of probability. The motion model uses the sensor data from the first environmental sensor.
Durch das Ausführen der Zeitverzugskompensation werden zustandskorrigierte Sensordaten errechnet. Diese beschreiben eine erste korrigierte Lage und/oder Bewegung des Objektes gegenüber dem Sensorsystem zu zumindest einem zweiten Zeitpunkt, welcher auf den ersten Zeitpunkt folgt. Dabei wird die Lage des Objektes als mehreren zweiten Zeitpunkten zugehörig angesehen, wenn diese beispielsweise durch eine Mittelwertbildung über mehrere Zeitpunkte hinweg ermittelt wird. Es wird somit mit der korrigierten Lage und/oder Bewegung des Objektes eine Lage und/oder Bewegung des Objektes ermittelt, die zu dem zweiten Zeitpunkt vorliegt, obwohl die zugehörigen Messdaten des ersten Umgebungssensors zu einem ersten Zeitpunkt erfasst wurden.State-corrected sensor data are calculated by executing the time delay compensation. These describe a first corrected position and/or movement of the object relative to the sensor system at least at a second point in time, which follows the first point in time. The position of the object is considered to belong to a number of second points in time if this is determined, for example, by averaging over a number of points in time. With the corrected position and/or movement of the object, a position and/or movement of the object is thus determined which is present at the second point in time, although the associated measurement data of the first environmental sensor were recorded at a first point in time.
Es erfolgt ferner das Ausführen der Sensordatenfusion mittels der zweiten Zustandsschätzung, basierend auf den bei der ersten Zustandsschätzung errechneten zustandskorrigierten Sensordaten und weiteren Sensordaten. Die weiteren Sensordaten sind dabei insbesondere weitere zustandskorrigierte Sensordaten, die aus einer vorangehenden Zeitverzugskompensation resultieren oder sind Sensordaten, die unmittelbar für die Sensordatenfusion bereitgestellt werden. Es werden somit in der zweiten Stufe Sensordaten unterschiedlicher Sensoren zusammengeführt, wobei zumindest die Sensordaten des ersten Umgebungssensors einer Zeitverzugskompensation unterliegen. Die der Sensordatenfusion zugrundeliegenden Sensordaten sind daher bereits hinsichtlich ihrer Totzeit korrigiert, wenn diese von einem Umgebungssensor stammen.Furthermore, the sensor data fusion is carried out by means of the second state estimation, based on the state-corrected sensor data calculated in the first state estimation and further sensor data. The additional sensor data are in particular additional state-corrected sensor data that result from a preceding time delay compensation or are sensor data that are provided directly for the sensor data fusion. In the second stage, sensor data from different sensors are thus combined, with at least the sensor data from the first environmental sensor being subject to time delay compensation. The sensor data on which the sensor data fusion is based are therefore already corrected with regard to their dead time if they originate from an environmental sensor.
Bei der zweiten Zustandsschätzung wird auf eines oder mehrere zweite Bewegungsmodelle zugegriffen, um eine zweite korrigierte Lage und/oder Bewegung des Objektes zu ermitteln. Die zweite korrigierte Lage und/oder Bewegung des Objektes ist dabei eine Lage, die das Objekt zu einem dritten Zeitpunkt aufweist, der auf den zweiten Zeitpunkt folgt. Alternativ ist die zweite korrigierte Lage und/oder Bewegung die mittels weiterer Sensordaten weiter präzisierte erste korrigierte Lage. So ist es beispielsweise für eine weitere Datenverarbeitung notwendig, dass die Lage und/oder Bewegung des Objektes für einen Zeitpunkt ermittelt wird, zu dem eine folgende Datenverarbeitung beendet ist. So wird beispielsweise eine Relativposition des Objektes gegenüber dem Sensorsystem durch die Kinematik angefahren. Die Berechnung eines Bewegungsablaufes der Kinematik muss vorausberechnet werden. Mit anderen Worten wird somit mit der zweiten korrigierten Lage und/oder Bewegung des Objektes eine Lage und/oder Bewegung des Objektes ermittelt, die gegenüber dem zweiten Zeitpunkt in der Zukunft liegt. Durch das Ausführen der Zeitverzugskompensation und das Ausführen der Sensordatenfusion werden somit insbesondere auch zwei separate Zeitverzugskompensationen ausgeführt. Abhängig von einer Reaktionszeit des Gesamtsystems kann das Ausführen der Sensordatenfusion jedoch auch auf eine Zeitverzugskompensation verzichten. Bevorzugt basiert die zweite Zustandsschätzung dazu auf einem zweiten Bewegungsmodell.In the second state estimation, one or more second motion models are accessed in order to determine a second corrected position and/or motion of the object. The second corrected position and/or movement of the object is a position that the object has at a third point in time, which follows the second point in time. Alternatively, the second corrected position and/or movement is the first corrected position that is further specified using additional sensor data. For example, for further data processing, it is necessary for the position and/or movement of the object to be determined for a point in time at which subsequent data processing has ended. For example, a relative position of the object in relation to the sensor system is approached by the kinematics. The calculation of a motion sequence of the kinematics must be precalculated. In other words, with the second corrected position and/or movement of the object, a position and/or movement tion of the object is determined, which is in the future compared to the second point in time. By executing the time delay compensation and the execution of the sensor data fusion, two separate time delay compensations are thus also carried out in particular. However, depending on a reaction time of the overall system, the execution of the sensor data fusion can also do without a time delay compensation. For this purpose, the second state estimate is preferably based on a second motion model.
Mittels der zweiten Zustandsschätzung wird der Zustandsvektor berechnet, welcher ein Datensatz ist, der die zweite korrigierte Lage und/oder Bewegung des Objektes gegenüber dem Sensorsystem beschreibt. Wurde der Zustandsvektor errechnet, so erfolgt ein Bereitstellen des errechneten Zustandsvektors.The state vector, which is a data set that describes the second corrected position and/or movement of the object relative to the sensor system, is calculated using the second state estimate. If the state vector was calculated, the calculated state vector is provided.
Die Unteransprüche zeigen bevorzugte Weiterbildungen der Erfindung.The dependent claims show preferred developments of the invention.
Es ist vorteilhaft, wenn das Verfahren ein Erfassen von Sensordaten mehrerer Umgebungssensoren umfasst, welche den ersten Umgebungssensor umfassen, und ein Ausführen einer Zeitverzugskompensation mittels einer ersten Zustandsschätzung für jeden der Umgebungssensoren basierend auf den von dem jeweiligen Umgebungssensor erfassten Sensordaten umfasst, wobei jeweils zustandskorrigierte Sensordaten errechnet werden, wobei die erste Zustandsschätzung für jeden der Umgebungssensoren auf einem zugehörigen ersten Bewegungsmodell basiert, welches eine Bewegung des Objektes gegenüber dem Sensorsystem beschreibt Dabei basiert das Ausführen der zweiten Zustandsschätzung auf den zustandskorrigierten Sensordaten der Umgebungssensoren, wobei der dem Objekt zugehörige Zustandsvektor errechnet wird. Es wird somit in der ersten Stufe bevorzugt für mehrere Umgebungssensoren jeweils separat eine Zeitverzugskompensation ausgeführt. Somit wird es ermöglicht, dass Umgebungssensoren, welche unterschiedliche Totzeiten aufweisen, miteinander kombiniert werden können.It is advantageous if the method includes acquiring sensor data from a plurality of environmental sensors, which include the first environmental sensor, and executing a time delay compensation by means of a first state estimate for each of the environmental sensors based on the sensor data acquired by the respective environmental sensor, with state-corrected sensor data being calculated in each case where the first state estimate for each of the environmental sensors is based on an associated first movement model, which describes a movement of the object relative to the sensor system. The execution of the second state estimate is based on the state-corrected sensor data of the environmental sensors, with the state vector associated with the object being calculated. In the first stage, a time delay compensation is preferably carried out separately for a plurality of environmental sensors. It is thus made possible for environmental sensors which have different dead times to be able to be combined with one another.
Dabei ist es vorteilhaft, wenn die zustandskorrigierten Sensordaten der Umgebungssensoren oder daraus resultierende Filterparameter in einer Speichereinheit gespeichert werden und bei der zweiten Zustandsschätzung genutzt werden, wobei insbesondere die zuletzt gespeicherten zustandskorrigierten Sensordaten der Umgebungssensoren oder die daraus resultierenden Filterparameter genutzt werden. So werden in der zweiten Stufe bei der Sensordatenfusion insbesondere die bei der ersten Zustandsschätzung errechneten zustandskorrigierten Sensordaten genutzt, um Filterparameter zu setzen, basierend auf denen eine Lage und/oder Bewegung des Objektes korrigiert wird. Dadurch, dass die zustandskorrigierten Sensordaten und alle Umgebungssensoren in der Speichereinheit abgelegt werden, kann auf diese zugegriffen werden, was insbesondere dann auch gilt, wenn für einen aktuellen Zeitpunkt keine aktuellen zustandskorrigierten Sensordaten für einen der Umgebungssensoren bereitstehen. In diesem Fall kann auf die zuletzt gespeicherten zustandskorrigierten Sensordaten des jeweiligen Umgebungssensors zugegriffen werden. Bevorzugt werden die Zustandskorrigierten Sensordaten in einem first-in- / first-out-Speicher hinterlegt, wodurch sich für jeden der Umgebungssensoren ein FiFo-System ergibt.It is advantageous if the state-corrected sensor data of the environmental sensors or the filter parameters resulting therefrom are stored in a storage unit and used in the second state estimation, in particular the last stored state-corrected sensor data of the environmental sensors or the filter parameters resulting therefrom being used. In the second stage in the sensor data fusion, the state-corrected sensor data calculated during the first state estimation are used in particular to set filter parameters on the basis of which a position and/or movement of the object is corrected. Because the state-corrected sensor data and all environment sensors are stored in the memory unit, they can be accessed, which is also the case in particular when no current state-corrected sensor data is available for one of the environment sensors at a current point in time. In this case, the sensor data of the respective environmental sensor that was last saved and corrected for their status can be accessed. The status-corrected sensor data are preferably stored in a first-in/first-out memory, resulting in a FiFo system for each of the environmental sensors.
Auch ist es vorteilhaft, wenn die zustandskorrigierten Sensordaten mehrerer Umgebungssensoren in zueinander unterschiedlichen ersten Frequenzen für die zweite Zustandsschätzung bereitgestellt werden. So kann jeder der Umgebungssensoren in der für den jeweiligen Umgebungssensor maximalen Arbeitsfrequenz betrieben werden. In der zweiten Stufe wird bei der Sensordatenfunktion der Zustandsvektor unabhängig von den ersten Frequenzen bereitgestellt.It is also advantageous if the state-corrected sensor data from a plurality of environmental sensors are provided in mutually different first frequencies for the second state estimation. In this way, each of the environmental sensors can be operated at the maximum operating frequency for the respective environmental sensor. In the second stage, in the sensor data function, the state vector is provided independently of the first frequencies.
Bevorzugt erfolgt die erste Zustandsschätzung basierend auf Sensordaten einer Bewegungssensorik, wobei das erste Bewegungsmodell die Bewegung des Objektes gegenüber dem Sensorsystem, basierend auf Sensordaten der Bewegungssensorik errechnet. Alternativ oder zusätzlich erfolgt die zweite Zustandsschätzung basierend auf Sensordaten einer Bewegungssensorik, wobei das zweite Bewegungsmodell die Bewegung des Objektes gegenüber dem Sensorsystem, basierend auf den Sensordaten der Bewegungssensorik errechnet. Die Bewegungssensorik ist dabei insbesondere keine bildbasierte Sensorik, sondern eine Sensorik, bei welcher Informationen über die Lage und/oder Bewegung des Objektes relativ zu der Kinematik ohne aufwendige Bildverarbeitung bereitgestellt werden können. So ist die Bewegungssensorik insbesondere eine Sensorik, welche einen Beschleunigungssensor oder einen abtastenden Positionssensor umfasst. Die Bewegungssensorik ist somit insbesondere eine Sensorik bei der ein von einem Sensor der Bewegungssensorik erfasster Messwert gleich den Sensordaten des jeweiligen Sensors entspricht. Die Bewegungssensorik erfasst einen Zustand der Kinematik, insbesondere ohne Berücksichtigung der Lage des Objekts. Durch die Bewegungssensorik wird eine Position des Objektes bzw. die Relativposition des Objektes zu dem Sensorsystem nicht direkt erfasst. Durch die Bewegungssensorik kann jedoch erfasst werden, wie die Kinematik sich bewegt. Dadurch kann das Bewegungsmodell verbessert werden, beispielsweise indem zugehörige Filterparameter angepasst werden. Wird beispielsweise durch die Bewegungssensorik eine lineare Bewegung der Kinematik erfasst, so kann davon ausgegangen werden, dass die Relativposition des Objektes gegenüber der Kinematik sich in der entsprechenden Achse verändert. Dies kann durch das Bewegungsmodell berücksichtigt werden. Die Präzision der Zustandsschätzung wird dadurch signifikant erhöht.The first state estimation is preferably based on sensor data from a motion sensor system, with the first motion model calculating the movement of the object relative to the sensor system based on sensor data from the motion sensor system. Alternatively or additionally, the second state is estimated based on sensor data from a motion sensor system, with the second motion model calculating the movement of the object relative to the sensor system based on the sensor data from the motion sensor system. The movement sensor system is in particular not an image-based sensor system, but a sensor system in which information about the position and/or movement of the object relative to the kinematics can be provided without complex image processing. The motion sensor system is in particular a sensor system that includes an acceleration sensor or a scanning position sensor. The motion sensor system is therefore in particular a sensor system in which a measured value recorded by a sensor of the motion sensor system corresponds to the sensor data of the respective sensor. The motion sensor system detects a state of the kinematics, in particular without taking into account the position of the object. A position of the object or the position of the object relative to the sensor system is not directly detected by the motion sensor system. However, the movement sensors can detect how the kinematics are moving. This allows the motion model to be improved, for example by adjusting associated filter parameters. If, for example, by the motion sensors If sorik detects a linear movement of the kinematics, it can be assumed that the relative position of the object in relation to the kinematics changes in the corresponding axis. This can be taken into account by the motion model. This significantly increases the precision of the state estimation.
Auch ist es vorteilhaft, wenn die erste Zustandsschätzung und/oder die zweite Zustandsschätzung mittels eines Kalman-Filters, eines bayesschen Filters oder mittels maschinelles Lernen ausgeführt wird. Dabei ist der Kalman-Filter insbesondere ein extended Kalman-Filter oder ein sonstiger bayesscher Filter. Durch die Verwendung eines Kalman-Filters wird eine besonders hohe Genauigkeit erreicht. Optional können alternative Verfahren zur Zustandsschätzung eingesetzt werden. Maschinelles Lernen kann dabei auch als Machine-Learning bezeichnet werden.It is also advantageous if the first state estimate and/or the second state estimate is/are carried out using a Kalman filter, a Bayesian filter or using machine learning. In this case, the Kalman filter is in particular an extended Kalman filter or another Bayesian filter. A particularly high level of accuracy is achieved by using a Kalman filter. Optionally, alternative methods for state estimation can be used. Machine learning can also be referred to as machine learning.
Es ist ferner vorteilhaft, wenn der Zustandsvektor mit einer zweiten Frequenz bereitgestellt wird, welche unterschiedlich zu einer ersten Frequenz ist, mit welcher die zustandskorrigierten Sensordaten bereitgestellt werden. Wird der Zustandsvektor mit der zweiten Frequenz bereitgestellt, so werden die Werte des Zustandsvektors entsprechen der zweiten Frequenz aktualisiert. Werden die zustandskorrigierten Sensordaten mit der ersten Frequenz bereitgestellt, so werden die zustandskorrigierten Sensordaten mit der ersten Frequenz aktualisiert. Die erste Frequenz kann somit von der zweiten Frequenz abweichen. Dies ermöglicht es, dass eine Verarbeitungsgeschwindigkeit der Umgebungssensoren und einer zugehörigen Verarbeitungselektronik unabhängig von einer Verarbeitungsgeschwindigkeit einer Elektronik gewählt werden kann, durch welche der Zustandsvektor ermittelt wird. Es wird somit u.a. ermöglicht, dass die Verarbeitungselektronik und/oder der erste Umgebungssensor getauscht werden kann, ohne dass dieses einen Einfluss auf eine Datenverarbeitung hat, durch welch der Zustandsvektor in der zweiten Stufe errechnet wird.It is also advantageous if the state vector is provided at a second frequency which differs from a first frequency at which the state-corrected sensor data is provided. If the state vector is provided with the second frequency, then the values of the state vector are updated according to the second frequency. If the state-corrected sensor data is provided at the first frequency, then the state-corrected sensor data is updated at the first frequency. The first frequency can thus deviate from the second frequency. This makes it possible for a processing speed of the environmental sensors and associated processing electronics to be selected independently of a processing speed of electronics by which the state vector is determined. It is thus possible, among other things, for the processing electronics and/or the first environmental sensor to be exchanged without this having an effect on data processing by which the state vector is calculated in the second stage.
Auch ist es vorteilhaft, wenn die zweite Frequenz einstellbar ist. Dadurch wird es ermöglicht, dass der Zustandsvektor für unterschiedliche Verarbeitungsverfahren bereitgestellt werden kann, die eine Aktualisierung des Zustandsvektors mit unterschiedlichen Frequenzen erfordern.It is also advantageous if the second frequency can be set. This makes it possible for the state vector to be provided for different processing methods which require the state vector to be updated at different frequencies.
Auch ist es vorteilhaft, wenn der erste Umgebungssensor eine Kamera, ein LiDAR-Sensor, ein Time-of-Flight-Sensor, ein Radar-Sensor oder ein UltraschallSensor ist. Gerade für solche Umgebungssensoren ist oftmals eine aufwendige Signalverarbeitung notwendig, die zu längeren Totzeiten führen können. Abhängig von der Signalverarbeitung kann die Totzeit dabei variieren. Durch die separate Zeitverzugskompensation in der ersten Stufe können somit die Anforderungen an den ersten Umgebungssensor und die zugehörige Signalverarbeitung so erweitert werden, dass eine Veränderung der zugehörigen Signalverarbeitung ermöglicht ist, ohne dass eine Signalverarbeitung zum Ermitteln des Zustandsvektors bei der Sensordatenfusion dadurch betroffen ist.It is also advantageous if the first environment sensor is a camera, a LiDAR sensor, a time-of-flight sensor, a radar sensor or an ultrasonic sensor. Complex signal processing, which can lead to longer dead times, is often necessary precisely for such environmental sensors. Depending on the signal processing, the dead time can vary. The separate time delay compensation in the first stage means that the requirements for the first environmental sensor and the associated signal processing can be expanded in such a way that the associated signal processing can be changed without affecting signal processing for determining the state vector in the sensor data fusion.
Ein Sensorsystem, welches dazu eingerichtet ist, das erfindungsgemäße Verfahren auszuführen, weist alle Vorteile des Verfahrens auf.A sensor system that is set up to carry out the method according to the invention has all the advantages of the method.
Figurenlistecharacter list
Nachfolgend werden Ausführungsbeispiele der Erfindung unter Bezugnahme auf die begleitende Zeichnung im Detail beschrieben. In der Zeichnung ist:
-
1 eine Darstellung eines Ablaufdiagrammes des erfindungsgemäßen Verfahrens zur Sensordatenverarbeitung, -
2 eine schematische Darstellung einer beispielhaften Kinematik mit einem zugehörigen erfindungsgemäßen Sensorsystem, -
3 ein dem erfindungsgemäßen Verfahren zugehöriges beispielhaftes Signalflussdiagramm gemäß einer Ausführungsform der Erfindung, -
4 ein dem erfindungsgemäßen Verfahren zugehöriges Signalflussdiagramm in einer weiteren Ausführungsform der Erfindung, und -
5 ein dem Verfahren zugehöriges Signalflussdiagramm, welche eine Signalverarbeitung in einer zweiten Stufe beschreibt, in welcher die Sensordatenfusion erfolgt.
-
1 a representation of a flow chart of the method according to the invention for sensor data processing, -
2 a schematic representation of an exemplary kinematics with an associated sensor system according to the invention, -
3 an exemplary signal flow diagram associated with the method according to an embodiment of the invention, -
4 a signal flow diagram associated with the method according to the invention in a further embodiment of the invention, and -
5 a signal flow diagram associated with the method, which describes signal processing in a second stage, in which the sensor data fusion takes place.
Ausführungsformen der ErfindungEmbodiments of the invention
In
Durch eine erste Bewegungseinheit 30 wird das Werkzeug 34 entlang einer Z-Richtung gegenüber dem Objekt 20 bewegt. Durch eine zweite Bewegungseinheit 31 wird das Werkzeug 34 entlang einer Y-Achse gegenüber dem Objekt 20 bewegt. Mittels einer dritten Bewegungseinheit 32 wird das Werkzeug 34 entlang einer X-Achse gegenüber dem Objekt 20 bewegt. Mittels einer Rotationseinheit 33 wird das Werkzeug 34 um die X-Achse gegenüber dem Objekt 20 rotiert.The
Es wird darauf hingewiesen, dass die Kinematik 2 aus
Bei dem in
In einem ersten Verfahrensschritt 101 folgt ein Erfassen von Sensordaten z1 eines ersten Umgebungssensors 10 des Sensorsystems 1. Die Sensordaten z1 des ersten Umgebungssensors 10 beschreiben dabei eine Lage des Objektes 20 gegenüber dem Sensorsystem 1 zu einem ersten Zeitpunkt. Der erste Umgebungssensor 10 ist dabei beispielsweise eine Kamera, welche an der Kinematik 2 angeordnet ist und mit dieser bewegt wird. In alternativen Ausführungsformen ist der erste Umgebungssensor 10 ein LiDAR, ein Time-of-Flight Sensor, einen Radar-Sensor oder ein Ultraschallsensor. Durch den ersten Umgebungssensor 10 wird in dieser Ausführungsform ein Videobild als Messdaten erfasst und für eine Datenbearbeitung bereitgestellt. Dabei wird das Videobild ausgewertet und eine Position des Objektes 20 gegenüber dem ersten Umgebungssensor 10 und somit gegenüber dem Sensorsystem 1 ermittelt. Diese Pose des ersten Umgebungssensors 10 wird in den Sensordaten z1 des ersten Umgebungssensors 10 für eine weitere Verarbeitung bereitgestellt.In a
Durch die Pose des ersten Umgebungssensors 10, welche durch die Sensordaten z1 des ersten Umgebungssensors 10 beschrieben wird, ist eine Lage des Objektes 10 gegenüber dem Sensorsystem 1 beschrieben. Würde die Kinematik 2 nun derart angesteuert werden, dass das Werkzeug 34 nach dem Objekt 20 greift, wobei angenommen wird, dass dieses sich an der Lage gegenüber dem Sensorsystem 1 befindet, die durch die Sensordaten z1 des ersten Umgebungssensors 10 beschrieben ist, so würde die Kinematik 2 das Werkzeug 34 nicht an die korrekte Stelle führen, an der das Objekt 20 gegriffen werden kann. Dies ist die Folge einer Totzeit des ersten Umgebungssensors 10. Das bedeutet, dass aufgrund der notwendigen Datenverarbeitung, durch welche die Lage des Objektes 10 aus dem Videobild des ersten Umgebungssensors 10 extrahiert wurde, die mit den Sensordaten z1 beschriebene Lage bereits veraltet ist. Das Objekt 20 hat sich innerhalb dieser Totzeit gegenüber dem Sensorsystem 1 bewegt und kann nicht gegriffen werden. Es wird daher ein zweiter Verfahrensschritt 102 ausgeführt, um die in den Sensordaten z1 beschriebene Lage des Objektes 20 zu präzisieren.A position of the
In dem zweiten Verfahrensschritt 102 erfolgt ein Ausführen einer Zeitverzugskompensation mittels einer ersten Zustandsschätzung basierend auf den Sensordaten z1 des ersten Umgebungssensors 10. Das Ausführen der Zeitverzugskompensation ist eine erste Stufe des Verfahrens 100. Dabei werden dem ersten Umgebungssensor 10 zugehörige zustandskorrigierte Sensordaten z1' errechnet. Die zustandskorrigierten Sensordaten z1' beschreiben eine korrigierte Lage und/oder Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 zu einem zweiten Zeitpunkt, welcher auf den ersten Zeitpunkt folgt. Die erste Zustandsschätzung erfolgt mittels eines ersten Bewegungsmodells, welches eine Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 beschreibt. Die korrigierte Lage und/oder Bewegung des Objektes 20, welche mit den zustandsangehörigen Sensordaten z1' beschrieben werden, sind totzeitkorrigierte Sensordaten. Das bedeutet, dass durch die Zeitverzugskompensation solche Sensordaten errechnet werden, die eine Lage und/oder Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 beschreiben, wobei die Lage und/oder Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 über die Totzeit des ersten Umgebungssensors 10 hinweg prädiziert wird.In the
Da die Totzeit vorliegt, sind die zustandskorrigierten Sensordaten z1' somit abgeschätzte Werte, da in die Zukunft geblickt werden muss, um die tatsächlich aktuell korrigierte Lage und/oder Bewegung des Objektes 20 zu beschreiben. Um dies zu ermöglichen, erfolgt die erste Zustandsschätzung mittels des ersten Bewegungsmodells. Das erste Bewegungsmodell beschreibt die Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 und gegenüber der Kinematik 2 in einem mathematischen Modell. Im einfachsten Fall ist das Bewegungsmodell ein lineares Bewegungsmodell. Bewegt sich das Objekt 20 mit einer konstanten Geschwindigkeit in eine konstante Richtung, so kann mittels des linearen Bewegungsmodells vorhergesagt werden, so sich das Objekt 20 nach Ablauf der Totzeit des ersten Umgebungssensors 10 befindet. Das erste Bewegungsmodell basiert somit bevorzugt aus einer Analyse von früheren Werten der Sensordaten des ersten Umgebungssensors 10. Alternativ oder zusätzlich basiert das erste Bewegungsmodell zudem auf den Sensordaten einer Bewegungssensorik der Kinematik 2. So wird beispielsweise innerhalb der ersten Bewegungseinheit 30, der zweiten Bewegungseinheit 31, der dritten Bewegungseinheit 32 und der Rotationseinheit 33 mittels geeigneter Sensoren, wie z.B. Positions- und/oder Beschleunigungssensoren, der aktuelle räumliche Zustand der Kinematik 2 erfasst. Werden diese Bewegungsdaten q der Bewegungssensorik der Kinematik 2 in dem Bewegungsmodell, hier dem ersten Bewegungsmodell, bereitgestellt, so kann eine Abschätzung der Bewegung des Objektes gegenüber dem Sensorsystem 1 präzisiert werden. So kann beispielsweise aus den Bewegungsdaten q der Bewegungssensorik ermittelt werden, wie sich das Werkzeug 34 innerhalb der Totzeit gegenüber dem Objekt 20 bewegt hat. Somit kann eine Abweichung, die aus der Bewegung der Kinematik 2 resultiert, rechnerisch in das Ermitteln der zustandskorrigierten Sensordaten z1' einfließen. Dies ist insbesondere deswegen vorteilhaft, da die Bewegungsdaten q der Bewegungssensorik zumeist einer deutlich geringeren Totzeit unterliegen, als die Sensordaten der Umgebungssensoren 10, 11. Die zustandskorrigierten Sensordaten z1' werden für eine weitere Verarbeitung bereitgestellt.Since the dead time is present, the state-corrected sensor data z1′ are therefore estimated values, since it is necessary to look into the future in order to describe the actually currently corrected position and/or movement of the
In einem dritten Verfahrensschritt 103 erfolgt ein Ausführen einer Sensordatenfusion mittels einer zweiten Zustandsschätzung, basierend auf den bei der ersten Zustandsschätzung errechneten korrigierten Sensordaten z1' und weiteren Sensordaten, wobei ein dem Objekt 20 zugehöriger Zustandsvektor x errechnet wird. Das Ausführen der Sensordatenfusion ist eine zweite Stufe des Verfahrens 100.In a
Der Zustandsvektor x ist ein Datensatz, der eine zweite korrigierte Lage und/oder Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 beschreibt. Die zweite Zustandsschätzung basiert auf einem zweiten Bewegungsmodell, welches eine Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 beschreibt. Bei der Sensordatenfusion werden die Sensordaten mehrerer Sensoren zusammengeführt. So werden beispielsweise die zustandskorrigierten Sensordaten z1 des ersten Umgebungssensors 10 mit den Bewegungsdaten q der Bewegungssensorik der Kinematik 2 und/oder mit zustandskorrigierten Sensordaten z2 weiterer Umgebungssensoren zusammengeführt, die ebenfalls einer Zeitverzugskompensation in der ersten Stufe unterzogen wurden.The state vector x is a data record that describes a second corrected position and/or movement of the
Bei der Zustandsschätzung in dem dritten Verfahrensschritt 103 erfolgt optional ebenfalls eine Zeitverzugskompensation. Durch diese optionale weitere Zeitverzugskompensation wird die Lage und/oder Bewegung des Objektes 20 zu einem dritten Zeitpunkt beschrieben, welcher auf den zweiten Zeitpunkt folgt. Dabei erfolgt jedoch keine Totzeitkompensation von Sensoren, sondern es wird eine Vorhersage über ein Zeitintervall geschaffen, welches durch die bei der Sensordatenfusion ausgeführten Schritte und/oder durch folgende Datenverarbeitungsschritte verursacht wird. Im einfachsten Fall ist die Zustandsschätzung so gewählt, dass ein Zustand ausgegeben wird, der für einen Zeitpunkt korrekt ist, zu dem auch der Zustandsvektor x ausgegeben wird. Wie auch bei der ersten Zustandsschätzung basiert auch die zweite Zustandsschätzung optional auf den Bewegungsdaten q der Bewegungssensorik.In the case of the state estimation in the
In einem vierten Verfahrensschritt 104 erfolgt ein Bereitstellen des errechneten Zustandsvektors x. Der Zustandsvektor x wird bevorzugt für eine Steuerung der Kinematik 2 genutzt.In a
Durch eine Zeitverzugskompensationseinheit 41 des Zustandsschätzers 40 wird die Zeitverzugskompensation gemäß dem zweiten Verfahrensschritt 102 ausgeführt. Dies erfolgt insbesondere durch einen Extended Kalman-Filter 42. Die Sensordaten z1 des ersten Umgebungssensors 10 werden dabei insbesondere dazu insbesondere dazu genutzt, um Filterparameter des extended Kalman-Filters zu setzen. Die Ausgangssignale des Extended Kalman-Filters 42 werden an eine Sensordatenfusionseinheit 43 ausgegeben.The time delay compensation according to the
Durch die Sensordatenfusionseinheit 43 des Zustandsschätzers 40 wird die Sensordatenfusion gemäß dem dritten Verfahrensschritt 103 ausgeführt. Dies erfolgt insbesondere durch einen asynchronen extended Kalman-Filter 44, welcher als asynchron bezeichnet wird, da die Eingangsdaten asynchron bereitgestellt werden können.The sensor data fusion in accordance with the
An den Eingängen des asynchronen extended Kalman-Filters 44 in der Sensordatenfusionseinheit 43 können optional auch die Sensordaten von weiteren Umgebungssensoren bereitgestellt werden. So umfasst das Sensorsystem 1 optional einen, beispielsweise ortsfesten, zweiten Umgebungssensor 11. Die Zeitverzugskompensation gemäß dem zweiten Verfahrensschritt 102 wird für den zweiten Umgebungssensor 11 in entsprechender Weise ausgeführt. Die Zeitverzugskompensation für den zweiten Umgebungssensor 11 wird dabei insbesondere unabhängig von der für den ersten Umgebungssensor 10 ausgeführten Zeitverzugskompensation ausgeführt. So wird insbesondere für jeden der Umgebungssensoren 10, 11 eine eigene erste Zustandsabschätzung ausgeführt. Ein entsprechendes Signalflussdiagramm dazu ist in
Werden die Sensordaten mehrerer Umgebungssensoren benutzt, so erfolgt beispielsweise ein Erfassen von Sensordaten mehrerer Umgebungssensoren 10, 11, welche den ersten Umgebungssensor 10 umfassen. Für jeden der Umgebungssensoren 10, 11 erfolgt das Ausführen einer Zeitverzugskompensation mittels einer ersten Zustandsschätzung basierend auf den jeweiligen Sensordaten z1, z2 des zugehörigen Umgebungssensors 10, 11. Dabei werden jeweils zustandskorrigierte Sensordaten z1', z2' errechnet, wobei die erste Zustandsschätzung für jeden der Umgebungssensoren 10, 11 auf einem zugehörigen ersten Bewegungsmodell basiert, welches eine Bewegung des Objektes 20 gegenüber dem Sensorsystem 1 beschreibt. Bei dem Ausführen der zweiten Zustandsschätzung, basierend auf den zustandskorrigierten Sensordaten z1', z2' der Umgebungssensoren 10, 11, wird der zugehörige Zustandsvektor x basierend auf den Sensordaten z1, z2, aller Umgebungssensoren 10, 11 errechnet.If the sensor data from a number of environmental sensors are used, sensor data from a number of
Dem ersten Umgebungssensors 10 ist dabei die Zeitverzugskompensationseinheit 41 des ersten Umgebungssensors 10 zugehörig. Dem zweiten Umgebungssensors 11 ist dabei die ihm zugehörigen Zeitverzugskompensationseinheit 45 des zweiten Umgebungssensors 11 zugehörig. Die Zeitverzugskompensationseinheit 41 des ersten Umgebungssensors 10 und die Zeitverzugskompensationseinheit 45 des zweiten Umgebungssensors 11 stellen die von diesen ermittelten zustandskorrigierten Sensordaten z1', z2' der Sensordatenfusionseinheit 43 bereit.In this case, the time
Bei dem in
Bei dem in
Durch das separate Ausführen der Zeitverzugskompensation in dem zweiten Verfahrensschritt 102, separat von dem Ausführen der Sensordatenfusion in dem dritten Verfahrensschritt 103, wird erreicht, dass neue Umgebungssensoren in einfacher Weise der Sensoreinheit 1 hinzugefügt oder bestehende Sensoren ersetzt werden können, ohne dass eine Umfangreiche Anpassung der Software notwendig ist. So ergibt sich beispielsweise, dass der erste Umgebungssensor 10 bzw. dessen zugehörige Verarbeitungselektronik, zu einer anderen Totzeit führt, als dies für den zweiten Umgebungssensor 11 der Fall ist. Für die beiden Umgebungssensoren 10, 11 wird jedoch unabhängig in der ersten Stufe eine Zeitverzugskompensation durch eine zugehörige Zeitverzugskompensationseinheit 41, 45 mit jeweils zugehörigem extended Kalman-Filter 42, 46 ausgeführt. Die jeweils totzeitkorrigierten und somit zustandskorrigierten Sensordaten z1, z2 der beiden Umgebungssensoren 10, 11 werden für die Sensordatenfusion durch die Sensordatenfusionseinheit 43 bereitgestellt. Wird einer der beiden Umgebungssensoren 10, 11 getauscht, so ist lediglich die zugehörige Zeitverzugskompensation an den neuen Umgebungssensor anzupassen.The separate execution of the time delay compensation in the
Ferner ist zu berücksichtigen, dass die Sensordaten z1, z2 unterschiedlicher Umgebungssensoren oft in unterschiedlichen Frequenzen bereitgestellt werden. So werden beispielsweise die Sensordaten z1 des ersten Umgebungssensors 10 in einer Frequenz von 3 bis 5 Hz ausgegeben. Diese wird im Folgenden als erste Frequenz bezeichnet. Der Zustandsvektor x soll jedoch für eine folgende Datenverarbeitung in einer zweiten Frequenz ausgegeben werden, welche höher als die erste Frequenz ist. Zudem werden von dem zweiten Umgebungssensor 11 beispielsweise Sensordaten z2 mit einer dritten Frequenz bereitgestellt, welche ebenfalls im Bereich von 3 bis 5 Hz liegt, jedoch nicht zwingend gleich zu ersten Frequenz ist. Durch die Bewegungssensorik werden Bewegungsdaten q in einer vierten Frequenz ausgegeben, die jedoch höher als die erste oder dritte Frequenz ist, jedoch im Bereich der zweiten Frequenz liegt. Erfindungsgemäß ist es möglich, dass für die Sensordatenfusion alle durch die Sensordatenfusionseinheit 43 zu fusionierenden Sensordaten z1 bis zn in unterschiedlichen Frequenzen bereitgestellt werden und in der zweiten Frequenz ausgegeben werden, welche optional einstellbar ist. Es wird diesbezüglich auch auf
In der Sensordatenfusionseinheit 43 werden somit die zustandskorrigierten Sensordaten z1', z2` der Umgebungssensoren 10, 11 oder daraus resultierende Filterparameter in einer Speichereinheit 51 gespeichert und bei der zweiten Zustandsschätzung genutzt, wobei insbesondere die zuletzt gespeicherten zustandskorrigierten Sensordaten der Umgebungssensoren 10, 11 oder die daraus resultierenden Filterparameter genutzt werden.The state-corrected sensor data z1', z2` of the
Ausgangspunkt für die Zeitverzugskompensation von Posenschätzungen in der ersten Ebene ist eine Pose, die die Kamerapose des ersten Umgebungssensors 10 relativ zum Objekt 2 beschreibt. Diese Pose ist Teil des Zustandsvektors x und auf Grund der 6D-Posen Extraktion zeitverzögert. Die Zeitverzugskompensation der ersten Stufe basiert auf der Vorwärtskinematik der Kinematik 2. Es wird davon ausgegangen, dass die Gelenk- oder Linearpositionen der Kinematik 2 mit einer im Vergleich zum Zeitverzug hohen Frequenz und ohne Zeitverzug vorliegen. Durch das Zwischenspeichern sämtlicher Gelenkpositionen ist es möglich, für jeden Zeitpunkt die Vorwärtskinematik zu bestimmen.The starting point for the time delay compensation of pose estimates in the first level is a pose that describes the camera pose of the first
Die Zeitverzugskompensation der ersten Ebene läuft bevorzugt in drei Schritten ab.
- 1. In der Gegenwart liegt eine neue Messung als Messwert vor, die auf Grund des Zeitverzuges zu einem in Vergangenheit liegenden Zeitschritt gehört. Das Filter prädiziert deshalb aus der Vergangenheit in den zur Messung gehörenden Zeitpunkt.
- 2. Der prädizierte Zustand wird mit der Messung korrigiert.
- 3. Es wird vom Zeitpunkt der Messung in die Gegenwart t prädiziert. Schritt 3 stellt die eigentliche Zeitverzugskompensation dar.
- 1. In the present there is a new measurement as a measured value which, due to the time delay, belongs to a time step in the past. The filter therefore predicts the time associated with the measurement from the past.
- 2. The predicted state is corrected with the measurement.
- 3. It is predicted from the time of measurement to the present t. Step 3 represents the actual time delay compensation.
Vorteilhaft bei der Sensordatenfusion ist der modulare Aufbau des Korrekturschritts im Filter. Durch eine globale Datenstruktur wird erreicht, dass nach jedem Prädiktionsschritt der Filterzustand und die Kovarianzmatrix an einer zentralen Stelle abgelegt werden. Erhält der Filter keine Messungen, wird der Zustand nur über die Prädiktion bereitgestellt. Dabei wächst die Unwissenheit über den Zustand, was sich in der Kovarianzmatrix durch unbegrenzt wachsende Einträge bemerkbar macht. Liegen während einer Filteriteration Messungen vor, werden diese genutzt, um den prädizierten Zustand zu korrigieren. Dabei besitzt jeder Sensor eine eigene Messgleichung, die nur auf die vom Sensor gemessenen Zustand wirkt.The advantage of sensor data fusion is the modular structure of the correction step in the filter. A global data structure ensures that the filter state and the covariance matrix are stored in a central location after each prediction step. If the filter does not receive any measurements, the state is only provided via the prediction. In the process, ignorance about the state increases, which is noticeable in the covariance matrix through entries that grow indefinitely. If measurements are available during a filter iteration, they are used to correct the predicted state. Each sensor has its own measurement equation that only affects the state measured by the sensor.
Nebst obenstehender schriftlicher Offenbarung wird explizit auf die
Claims (10)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021208331.5A DE102021208331A1 (en) | 2021-08-02 | 2021-08-02 | Process for sensor data processing in a sensor system and associated sensor system |
PCT/EP2022/068253 WO2023011816A1 (en) | 2021-08-02 | 2022-07-01 | Method for sensor data processing in a sensor system and associated sensor system |
EP22747595.1A EP4381315A1 (en) | 2021-08-02 | 2022-07-01 | Method for sensor data processing in a sensor system and associated sensor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021208331.5A DE102021208331A1 (en) | 2021-08-02 | 2021-08-02 | Process for sensor data processing in a sensor system and associated sensor system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102021208331A1 true DE102021208331A1 (en) | 2023-02-02 |
Family
ID=82703040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102021208331.5A Pending DE102021208331A1 (en) | 2021-08-02 | 2021-08-02 | Process for sensor data processing in a sensor system and associated sensor system |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4381315A1 (en) |
DE (1) | DE102021208331A1 (en) |
WO (1) | WO2023011816A1 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008008499B4 (en) * | 2008-02-11 | 2009-12-31 | Siemens Aktiengesellschaft | Method for computer-aided calculation of the movement of an object from sensor data |
DE102016208056A1 (en) * | 2016-05-11 | 2017-11-16 | Robert Bosch Gmbh | Method and device for processing image data and driver assistance system for a vehicle |
KR101948728B1 (en) * | 2018-09-28 | 2019-02-15 | 네이버랩스 주식회사 | Method and system for collecting data |
-
2021
- 2021-08-02 DE DE102021208331.5A patent/DE102021208331A1/en active Pending
-
2022
- 2022-07-01 WO PCT/EP2022/068253 patent/WO2023011816A1/en unknown
- 2022-07-01 EP EP22747595.1A patent/EP4381315A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4381315A1 (en) | 2024-06-12 |
WO2023011816A1 (en) | 2023-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102018003266B4 (en) | CONTROLLER AND MACHINE LEARNING DEVICE | |
DE102019001948A1 (en) | Control and machine learning device | |
DE102016009655A1 (en) | Method for operating a vehicle | |
DE69504664T2 (en) | METHOD AND SYSTEM FOR THE OPTIMAL, NON-LINEAR, ESTIMATION OF DYNAMIC PROCESSES IN REAL TIME | |
EP3746850B1 (en) | Method for ascertaining a time characteristic of a measured variable, prediction system, actuator control system, method for training the actuator control system, training system, computer program and machine-readable storage medium | |
DE10133962A1 (en) | Synchronization method and device | |
DE102018220941A1 (en) | Evaluation of measured variables with AI modules taking into account measurement uncertainties | |
DE102019002644A1 (en) | Control and control procedures | |
EP0875808A2 (en) | Method and system for generating a process model of a technical installation | |
EP3865915A1 (en) | Position estimation in different coordinate systems | |
DE102007007266A1 (en) | Method for evaluating sensor measured values | |
EP3786853A1 (en) | Compression of a deep neural network | |
DE102021208331A1 (en) | Process for sensor data processing in a sensor system and associated sensor system | |
DE102020205962B3 (en) | Device and method for operating a test bench | |
DE102018220608A1 (en) | Machine learning system, as well as a method, a computer program and a device for creating the machine learning system | |
EP3467722A1 (en) | Configuration of a motor vehicle driver assisting device using a neural network in ongoing operation | |
DE102021133977A1 (en) | Method and system for classifying virtual test scenarios and training methods | |
DE102019201045B4 (en) | Method, device and computer program for determining an action or trajectory of a robot | |
DE102021114768A1 (en) | Vehicle control using a neural network controller in combination with a model-based controller | |
DE102020213527A1 (en) | Method for optimizing a strategy for a robot | |
DE69607102T2 (en) | METHOD AND ARRANGEMENT FOR DETERMINING AIRPLANE CONFIGURATIONS | |
DE102020210080A1 (en) | Method for determining at least one system state using a Kalman filter | |
DE102019132624A1 (en) | Method, device, computer program and computer-readable storage medium for creating a motion cueing algorithm | |
DE10044026C1 (en) | Moving target tracking method compares measured and estimated vectors for providing error vectors used to provide corrected vectors via iteration process | |
EP0449363B1 (en) | Circuit for determining the extreme values position of a correlation function |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R083 | Amendment of/additions to inventor(s) | ||
R163 | Identified publications notified |