WO2023011816A1 - Verfahren zur sensordatenverarbeitung in einem sensorsystem und zugehöriges sensorsystem - Google Patents

Verfahren zur sensordatenverarbeitung in einem sensorsystem und zugehöriges sensorsystem Download PDF

Info

Publication number
WO2023011816A1
WO2023011816A1 PCT/EP2022/068253 EP2022068253W WO2023011816A1 WO 2023011816 A1 WO2023011816 A1 WO 2023011816A1 EP 2022068253 W EP2022068253 W EP 2022068253W WO 2023011816 A1 WO2023011816 A1 WO 2023011816A1
Authority
WO
WIPO (PCT)
Prior art keywords
sensor
state
sensor data
movement
corrected
Prior art date
Application number
PCT/EP2022/068253
Other languages
English (en)
French (fr)
Inventor
Oliver T. H. Sawodny
Martin Rupp
Robert Valder
Christian Knoll
Original Assignee
Robert Bosch Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Publication of WO2023011816A1 publication Critical patent/WO2023011816A1/de

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-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

Definitions

  • 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.
  • 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 Environment sensor associated state-corrected sensor data are calculated, the state-corrected sensor data a first corrected location and/or describes 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 with the first state estimation being carried out using at least one first movement model, which describes a movement of the object relative to the sensor system, an execution a sensor data fusion by means of a second state estimate based on the state-corrected sensor data calculated during the first state estimate and further sensor data, with
  • 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.
  • a sampling rate and the time delay compensation can be set and varied independently of one another, which is also possible, in particular, in the case of large time delays.
  • 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.
  • a relative position or pose of an object or multiple objects to the sensor system is changed by the kinematics.
  • 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.
  • 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.
  • the first environment sensor is arranged in a fixed position and the object is moved by the kinematics.
  • 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.
  • the first environmental sensor is attached to a first element of the kinematics and the object is held by a second element of the kinematics, with the two elements being moved in relation to one another by an associated motor system.
  • 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.
  • a time delay compensation is then carried out using the first state estimate based on the sensor data of the first environmental sensor.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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 status-corrected data Sensor data that result from a preceding time delay compensation or are sensor data that are provided directly for the sensor data fusion.
  • 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.
  • 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.
  • the second corrected position and/or movement is the first corrected position that is further specified using additional sensor data.
  • 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.
  • the second corrected position and/or movement of the object is used to determine a position and/or movement of the object that is in the future compared to the second point in time.
  • the time delay compensation and the execution of the sensor data fusion two separate time delay compensations are thus also carried out in particular.
  • the execution of the sensor data fusion can also do without a time delay compensation.
  • the second state estimate is preferably based on a second motion model.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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. 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.
  • 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.
  • 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 detects a state of the
  • Kinematics especially without considering 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.
  • 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, a linear movement of the kinematics is detected by the motion sensor system, it can be assumed that the relative position of the object with respect 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.
  • 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.
  • 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.
  • alternative methods for state estimation can be used.
  • Machine learning can also be referred to as machine learning.
  • 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.
  • 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.
  • 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.
  • the dead time can vary.
  • the separate time delay compensation in the first stage can thus Requirements for the first environment sensor and the associated signal processing are expanded in such a way that a change in the associated signal processing is made possible without signal processing for determining the state vector in the sensor data fusion being affected.
  • a sensor system that is set up to carry out the method according to the invention has all the advantages of the method.
  • FIG. 1 shows a flowchart of the method according to the invention for processing sensor data
  • FIG. 2 shows a schematic representation of exemplary kinematics with an associated sensor system according to the invention
  • FIG. 3 shows an exemplary signal flow diagram associated with the method according to an embodiment of the invention
  • FIG. 4 an associated method according to the invention
  • FIG. 5 shows a signal flow diagram associated with the method, which describes signal processing in a second stage, in which the sensor data fusion takes place.
  • FIG. 1 shows a method 100 for sensor data processing in a sensor system 1, in which a position of an object 20 relative to the sensor system 1 is changed by kinematics 2.
  • kinematics 2 an example of kinematics 2 is shown in FIG.
  • the kinematics 2 is a linear kinematics which works with three linear movements along different axes.
  • a tool 34 or another element is moved relative to the object 20 by the kinematics 2 .
  • the tool 34 is moved along a Z direction relative to the object 20 by a first movement unit 30 .
  • the tool 34 is moved along a Y-axis relative to the object 20 by a second movement unit 31 .
  • the tool 34 is moved along an X-axis relative to the object 20 by means of a third movement unit 32 .
  • the tool 34 is rotated about the X-axis relative to the object 20 by means of a rotation unit 33 .
  • the kinematics 2 from FIG. 2 should only be understood as an example.
  • the method according to the invention can be applied to other kinematics in the same way, with the method also being suitable in particular for the use of robot arms.
  • an environmental sensor 10 of the sensor system 1 can be arranged either on the kinematics 2 or immovably.
  • an environment sensor 10 of the sensor system 1 can be arranged on the object 20 .
  • both the object 20 and the tool 34 to be moved in relation to the sensor system 1 .
  • the tool 34 is optional and should be provided in the broadest sense of the term “tool”.
  • another sensor can also be understood as a tool 34 , even if it does not act directly on the object 20 .
  • the tool 34 is, for example, a gripping tool which is intended to grip the object 20 .
  • the object 20 is moved relative to the kinematics 2 and the sensor system 1 independently of the kinematics 2 .
  • the challenge is therefore to move the tool 34 in such a way that it can grip the object 20 even though the data recorded by the environmental sensors 10, 11 of the sensor system 1 are subject to a dead time.
  • sensor data z1 of a first surroundings sensor 10 of the sensor system 1 is detected.
  • the sensor data z1 of the first surroundings sensor 10 describe a position of the object 20 relative to the sensor system 1 at a first point in time.
  • the first environment sensor 10 is a camera, for example, which is arranged on the kinematics 2 and is moved with it.
  • the first environment sensor 10 is a LiDAR, a time-of-flight sensor, a radar sensor or an ultrasonic sensor.
  • a video image is recorded as measurement data by the first surroundings sensor 10 and made available for data processing. The video image is evaluated and a position of the object 20 in relation to the first surroundings sensor 10 and thus in relation to the sensor system 1 is determined. This pose of the first surroundings sensor 10 is provided in the sensor data z1 of the first surroundings sensor 10 for further processing.
  • a position of the object 10 in relation to the sensor system 1 is described by the pose of the first surroundings sensor 10, which is described by the sensor data z1 of the first surroundings sensor 10. If the kinematics 2 were now controlled in such a way that the tool 34 grabs the object 20, assuming that this is in the position relative to the sensor system 1 that is described by the sensor data z1 of the first environmental sensor 10, then the Kinematics 2 do not guide the tool 34 to the correct location where the object 20 can be gripped. This is the result of a dead time of the first surroundings sensor 10. This means that the position described with the sensor data z1 is already out of date due to the necessary data processing by which the position of the object 10 was extracted from the video image of the first surroundings sensor 10. The object 20 has moved relative to the sensor system 1 within this dead time and cannot be gripped. A second method step 102 is therefore carried out in order to specify the position of the object 20 described in the sensor data z1 more precisely.
  • a time delay compensation is carried out by means of a first state estimation based on the sensor data z1 of the first environmental sensor 10.
  • the execution of the time delay compensation is a first stage of the method 100.
  • the first environmental sensor 10 associated state-corrected sensor data z1' is calculated.
  • the state-corrected sensor data z1′ describe a corrected position and/or movement of the object 20 relative to the sensor system 1 at a second point in time, which follows the first point in time.
  • the first state is estimated using a first movement model, which describes a movement of the object 20 relative to the sensor system 1 .
  • the corrected position and/or movement of the object 20, which are described with the state-related sensor data z1′, are dead-time corrected sensor data. This means that the time delay compensation calculates sensor data that describes a position and/or movement of object 20 relative to sensor system 1, with the position and/or movement of object 20 relative to sensor system 1 exceeding the dead time of first environmental sensor 10 is predicted.
  • the first state is estimated using the first motion model.
  • the first movement model describes the movement of the object 20 in relation to the sensor system 1 and in relation to the kinematics 2 in a mathematical model.
  • the motion model is a linear motion model. If the object 20 moves at a constant speed in a constant direction, the linear movement model can be used to predict whether the object 20 will be located after the dead time of the first environmental sensor 10 has elapsed.
  • the first motion model is thus preferably based on an analysis of earlier values of the sensor data of the first environmental sensor 10.
  • the first motion model is also based on the sensor data of a motion sensor system of the kinematics 2.
  • the second motion unit 31 the third movement unit 32 and the rotation unit 33 by means of suitable sensors, such as position and/or acceleration sensors, detect the current spatial state of the kinematics 2 . If this movement data q is provided to the movement sensor system of the kinematics 2 in the movement model, here the first movement model, then an estimation of the movement of the object relative to the sensor system 1 can be made more precise. For example, it can be determined from the movement data q of the movement sensors how the Tool 34 has moved relative to object 20 within the dead time.
  • a deviation resulting from the movement of the kinematics 2 can thus be included in the computation in the determination of the state-corrected sensor data. This is particularly advantageous because the movement data q from the movement sensor system is usually subject to a much shorter dead time than the sensor data from the environmental sensors 10, 11. Some of the state-corrected sensor data are made available for further processing.
  • a sensor data fusion is carried out by means of a second state estimation, based on the corrected sensor data zT calculated in the first state estimation and further sensor data, with a state vector x associated with the object 20 being calculated.
  • Performing the sensor data fusion is a second stage of the method 100.
  • the state vector x is a data record that describes a second corrected position and/or movement of the object 20 relative to the sensor system 1.
  • the second state estimate is based on a second movement model, which describes a movement of the object 20 in relation to the sensor system 1.
  • the sensor data from multiple sensors are merged.
  • the state-corrected sensor data z1 of the first environmental sensor 10 is combined with the movement data q of the motion sensor system of the kinematics 2 and/or with state-corrected sensor data z2 of other environmental sensors, which were also subjected to time delay compensation in the first stage.
  • a time delay compensation also optionally takes place.
  • This optional additional time delay compensation describes the position and/or movement of the object 20 at a third point in time, which follows the second point in time. In this case, however, there is no dead time compensation of sensors, but a prediction is made over a time interval which is caused by the steps carried out during the sensor data fusion and/or by subsequent data processing steps.
  • the state estimation is chosen such that a state is output that is correct for a point in time at which the state vector x is also output.
  • the second is also based Status estimation optionally based on the movement data q of the movement sensors.
  • the calculated state vector x is provided.
  • the state vector x is preferably used to control the kinematics 2 .
  • FIG. 3 is an illustration of a signal flow diagram which describes a signal flow in the sensor system 1.
  • the first environment sensor 10 is shown schematically on the left in FIG.
  • the first environment sensor 10 includes a computing unit, by which the sensor data z1 of the first environment sensor 10 are calculated.
  • a pose is transmitted by the first environment sensor 10 as sensor data z1 of the environment sensor 10 to a state estimator 40, by means of which the method 100 is executed.
  • the time delay compensation according to the second method step 102 is carried out by a time delay compensation unit 41 of the state estimator 40 .
  • This is done in particular by an extended Kalman filter 42.
  • the sensor data z1 of the first environmental sensor 10 are used in particular to set filter parameters of the extended Kalman filter.
  • the output signals of the extended Kalman filter 42 are output to a sensor data fusion unit 43 .
  • the sensor data fusion in accordance with the third method step 103 is carried out by the sensor data fusion unit 43 of the state estimator 40 . This is done in particular by an asynchronous extended Kalman filter 44, which is referred to as asynchronous because the input data can be provided asynchronously.
  • the sensor data from other environmental sensors can optionally also be provided.
  • the sensor system 1 optionally includes a second environmental sensor 11, for example a stationary one.
  • the time delay compensation according to the second method step 102 is carried out for the second environmental sensor 11 in a corresponding manner.
  • the time delay compensation for the second is carried out, in particular, independently of the time delay compensation performed for first environmental sensor 10 .
  • a separate first state assessment is carried out for each of the environmental sensors 10, 11. A corresponding signal flow diagram for this is shown in FIG.
  • sensor data from a number of environmental sensors 10, 11, which include the first environmental sensor 10 are recorded, for example.
  • a time delay compensation is performed by means of a first state estimate based on the respective sensor data z1, z2 of the associated environmental sensor 10, 11.
  • State-corrected sensor data zT, z2' are calculated in each case, with the first state estimate for each of the environmental sensors 10, 11 is based on an associated first movement model, which describes a movement of the object 20 relative to the sensor system 1.
  • the second state estimation is carried out, based on the state-corrected sensor data z1', z2' of the surroundings sensors 10, 11, the associated state vector x is calculated based on the sensor data z1, z2 of all the surroundings sensors 10, 11.
  • the time delay compensation unit 41 of the first surroundings sensor 10 is associated with the first surroundings sensor 10 .
  • the time delay compensation unit 45 of the second environmental sensor 11 associated with it is associated with the second environmental sensor 11 .
  • the time delay compensation unit 41 of the first environmental sensor 10 and the time delay compensation unit 45 of the second environmental sensor 11 make the state-corrected sensor data zT, z2′ determined by them available to the sensor data fusion unit 43 .
  • the sensor data fusion takes place in the sensor data fusion unit 43 based on the state-corrected sensor data z1', z2' calculated during the first state estimation and the movement data q of the movement sensors of the kinematics 2, which are in the movement units 30 to 32 and the rotation unit 33 is integrated.
  • This movement data q of the movement sensors of the kinematics 2 can be viewed as further sensor data z n ', on which the second state estimate based.
  • the movement data q of the movement sensors are also used for the time delay compensation in the time delay compensation unit 41 associated with the first environmental sensor 10 and/or for the time delay compensation in the time delay compensation unit 45 associated with the second environmental sensor 11, e.g. by the extended Kalman filter 42, 46.
  • the additional sensor data which are combined with the state-corrected sensor data z1 of the first environmental sensor 10 in the sensor data fusion, are at least the state-corrected sensor data z2 of the second environmental sensor 11.
  • the separate execution of the time delay compensation in the second method step 102, separately from the execution of the sensor data fusion in the third method step 103, means that new environmental sensors can be easily added to the sensor unit 1 or existing sensors can be replaced without extensive adaptation of the software is necessary. This means, for example, that first environmental sensor 10 or its associated processing electronics results in a different dead time than is the case for second environmental sensor 11 .
  • time delay compensation is carried out independently in the first stage by an associated time delay compensation unit 41, 45 with an associated extended Kalman filter 42, 46 in each case.
  • the sensor data z1, z2 of the two environmental sensors 10, 11 which have been corrected for dead time and are therefore corrected for their state are provided for the sensor data fusion by the sensor data fusion unit 43. If one of the two environmental sensors 10, 11 is exchanged, only the associated time delay compensation needs to be adapted to the new environmental sensor.
  • sensor data z1, z2 from different environmental sensors are often provided at different frequencies.
  • sensor data z1 from first environmental sensor 10 is output at a frequency of 3 to 5 Hz. This is listed below as the first referred to as frequency.
  • the state vector x is to be output at a second frequency, which is higher than the first frequency.
  • the second environmental sensor 11 provides sensor data z2 with a third frequency, for example, which is also in the range of 3 to 5 Hz, but is not necessarily the same as the first frequency.
  • the movement sensor system outputs movement data q in a fourth frequency, which is higher than the first or third frequency but is in the range of the second frequency.
  • FIG. 5 is a schematic representation of the sensor data fusion unit 43. It can be seen that the state-corrected sensor data z1, z2 are made available to the sensor data fusion unit. Optionally, the state of the state-corrected sensor data z1, z2 is corrected. The state-corrected sensor data z1", z2" are supplied to a global memory 51 and stored there in a first-in/first-out memory. Optionally, for each of the environmental sensors 10, 11, the state-corrected sensor data z1", z2" associated with a point in time are stored. These are used as filter parameters for the extended Kalman filter 44 of the sensor data fusion unit 43 .
  • the last available state-corrected value of the sensor data z1, z2 is thus always used as the filter value.
  • a previously determined position and/or acceleration of the object 20, referred to here as “u”, is predicted by means of these filter values and the prediction is corrected by means of the additional filter values.
  • the schematic time unit 52 shown as an example in FIG. 5 can be used to select the frequency at which the state vector x is updated and is thus provided at the second frequency. For example, the time unit 52 sets the frequency with which the global memory 51 is read out.
  • the state-corrected sensor data z1′, z2′ of the environmental sensors 10, 11 or filter parameters resulting therefrom are thus stored in the sensor data fusion unit 43 in a memory unit 51 and used in the second state estimation, with the most recently stored state-corrected sensor data from the environmental sensors 10, 11 or the resulting filter parameters are used.
  • 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 environmental sensor 10 relative to the object 2 .
  • This pose is part of the state vector x and is time-delayed due to the 6D pose extraction.
  • the time delay compensation of the first stage is based on the forward kinematics of the kinematics 2. It is assumed that the joint or linear positions of the kinematics 2 are present with a high frequency compared to the time delay and without a time delay. By temporarily storing all joint positions, it is possible to determine the forward kinematics for any point in time.
  • the time delay compensation of the first level preferably takes place in three steps.
  • the predicted state is corrected with the measurement.
  • Step 3 represents the actual time delay compensation.
  • 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.

Landscapes

  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zur Sensordatenverarbeitung in einem Sensorsystem, in welchem eine Relativposition eines Objektes (20) zu dem Sensorsystem 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 erfolgt.

Description

Beschreibung
Titel
Verfahren zur Sensordatenverarbeitung in einem Sensorsystem und zugehöriges Sensorsystem
Stand der Technik
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.
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.
Offenbarung der Erfindung
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.
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.
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. 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.
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.
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.
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.
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.
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.
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. Die Unteransprüche zeigen bevorzugte Weiterbildungen der Erfindung.
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.
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. 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.
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. 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.
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.
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.
Auch ist es vorteilhaft, wenn der erste Umgebungssensor eine Kamera, ein LiDAR-Sensor, ein Time-of-Flight-Sensor, ein Radar-Sensor oder ein Ultraschall- Sensor 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.
Ein Sensorsystem, welches dazu eingerichtet ist, das erfindungsgemäße Verfahren auszuführen, weist alle Vorteile des Verfahrens auf.
Kurze Beschreibung der Zeichnungen
Nachfolgend werden Ausführungsbeispiele der Erfindung unter Bezugnahme auf die begleitende Zeichnung im Detail beschrieben. In der Zeichnung ist:
Figur 1 eine Darstellung eines Ablaufdiagrammes des erfindungsgemäßen Verfahrens zur Sensordatenverarbeitung,
Figur 2 eine schematische Darstellung einer beispielhaften Kinematik mit einem zugehörigen erfindungsgemäßen Sensorsystem,
Figur 3 ein dem erfindungsgemäßen Verfahren zugehöriges beispielhaftes Signalflussdiagramm gemäß einer Ausführungsform der Erfindung,
Figur 4 ein dem erfindungsgemäßen Verfahren zugehöriges
Signalflussdiagramm in einer weiteren Ausführungsform der Erfindung, und
Figur 5 ein dem Verfahren zugehöriges Signalflussdiagramm, welche eine Signalverarbeitung in einer zweiten Stufe beschreibt, in welcher die Sensordatenfusion erfolgt.
Ausführungsformen der Erfindung
Figur 1 zeigt 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. In Figur 2 ist diesbezüglich eine beispielhafte Kinematik 2 dargestellt. Dabei ist die Kinematik 2 eine lineare Kinematik, welche mit drei linearen Bewegungen entlang unterschiedlicher Achsen arbeitet. Durch die Kinematik 2 wird beispielsweise ein Werkzeug 34 oder ein anderes Element gegenüber dem Objekt 20 bewegt.
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.
Es wird darauf hingewiesen, dass die Kinematik 2 aus Figur 2 nur beispielhaft zu verstehen ist. Das erfindungsgemäße Verfahren kann in gleicher Weise auf andere Kinematiken angewendet werden, wobei das Verfahren insbesondere auch für die Verwendung von Roboterarmen geeignet ist. Es ist nicht relevant, ob das Werkzeug 34 oder das Objekt 20 gegenüber dem Sensorsystem 1 bewegt wird. So kann beispielsweise ein Umgebungssensor 10 des Sensorsystems 1 entweder an der Kinematik 2 oder unbeweglich angeordnet sein. Auch ist es möglich, dass ein Umgebungssensor 10 des Sensorsystems 1 an dem Objekt 20 angeordnet ist. Ebenso ist es möglich, dass sowohl das Objekt 20 als auch das Werkzeug 34 gegenüber dem Sensorsystem 1 bewegt werden. Das Werkzeug 34 ist optional und im weitesten Sinne des Begriffs „Werkzeug“ zu versehen. So kann beispielsweise auch ein weiterer Sensor als ein Werkzeug 34 verstanden werden, auch wenn dieser nicht direkt auf das Objekt 20 einwirkt.
Bei dem in Figur 2 gezeigten Beispiel ist das Werkzeug 34 beispielhaft ein Greifwerkzeug, welcher nach dem Objekt 20 greifen soll. Das Objekt 20 wird jedoch unabhängig von der Kinematik 2 gegenüber der Kinematik 2 und dem Sensorsystem 1 bewegt. Es ist somit die Herausforderung, das Werkzeug 34 so zu bewegen, dass dieses das Objekt 20 greifen kann, obwohl die von den Umgebungssensoren 10, 11 des Sensorsystems 1 erfassten Daten einer Totzeit unterliegen. Dies wird durch das erfindungsgemäße Verfahren 100 ermöglicht. 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.
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.
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.
Da die Totzeit vorliegt, sind die zustandskorrigierten Sensordaten zT 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 zT 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 zT werden für eine weitere Verarbeitung bereitgestellt.
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 zT 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.
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.
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 einem vierten Verfahrensschritt 104 erfolgt ein Bereitstellen des errechneten Zustandsvektors x. Der Zustandsvektor x wird bevorzugt für eine Steuerung der Kinematik 2 genutzt.
Figur 3 ist eine Darstellung eines Signalflussdiagramms, welches einen Signalfluss in dem Sensorsystem 1 beschreibt. In Figur 3 links ist der erste Umgebungssensor 10 schematisch dargestellt. Der erste Umgebungssensor 10 umfasst dabei eine Recheneinheit, durch welche die Sensordaten z1 des ersten Umgebungssensor 10 errechnet werden. Durch den ersten Umgebungssensor 10 wird eine Pose als Sensordaten z1 des Umgebungssensors 10 an einen Zustandsschätzer 40 übertragen, durch welchen das Verfahrens 100 ausgeführt wird.
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.
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.
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 Figur 4 dargestellt.
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 zT, 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.
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 zT, z2‘ der Sensordatenfusionseinheit 43 bereit.
Bei dem in Figur 4 dargestellten Signalflussdiagramm erfolgt die Sensordatenfusion in der Sensordatenfusionseinheit 43 basierend auf den bei der ersten Zustandsschätzung errechneten zustandskorrigierten Sensordaten z1‘, z2‘ und den Bewegungsdaten q der Bewegungssensorik der Kinematik 2, welche in den Bewegungseinheiten 30 bis 32 und der Rotationseinheit 33 integriert ist. Diese Bewegungsdaten q der Bewegungssensorik der Kinematik 2 können dabei als weitere Sensordaten zn‘ angesehen werden, auf welchen die zweite Zustandsschätzung basiert. Optional werden die Bewegungsdaten q der Bewegungssensorik auch für die Zeitverzugskompensation in der dem ersten Umgebungssensors 10 zugehörigen Zeitverzugskompensationseinheit 41 und oder für die Zeitverzugskompensation in der dem zweiten Umgebungssensors 11 zugehörigen Zeitverzugskompensationseinheit 45, bspw. durch den extended Kalman-Filter 42, 46, genutzt.
Bei dem in Figur 4 dargestellten Signalflussdiagramm sind die weiteren Sensordaten, welche mit den zustandskorrigierten Sensordaten z1 des ersten Umgebungssensors 10 in der Sensordatenfusion zusammengeführt werden, zumindest die zustandskorrigierten Sensordaten z2 des zweiten Umgebungssensors 11. Nach der Sensordatenfusion durch den extended Kalman-Filter 44 in der Sensordatenfusionseinheit 43 wird von diesem der Zustandsvektor x ausgegeben.
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.
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 Figur 5 verwiesen.
Figur 5 ist eine schematische Darstellung der Sensordatenfusionseinheit 43. Es ist ersichtlich, dass die zustandskorrigierten Sensordaten z1 , z2 der Sensordatenfusionseinheit bereitgestellt werden. Optional erfolgt eine Zustandskorrektur der zustandskorrigierten Sensordaten z1 , z2. Die erneut zustandskorrigierten Sensordaten z1“, z2“ werden einem globalen Speicher 51 zugeführt und dort jeweils in einem first-in- / first-out-Speicher abgelegt. Optional werden somit für jeden der Umgebungssensoren 10, 11 jeweils die einem Zeitpunkt zugehörigen erneut zustandskorrigierten Sensordaten z1“, z2“ hinterlegt. Diese werden als Filterparameter für den extended Kalman-Filter 44 der Sensordatenfusionseinheit 43 genutzt. Es wird somit immer der jeweils zuletzt verfügbare zustandskorrigierte Wert der Sensordaten z1, z2 als Filterwert genutzt. Mittels dieser Filterwerte wird eine zuvor ermittelte Position und/oder Beschleunigung des Objektes 20, hier als „u“ bezeichnet, prädiziert und die Prädiktion mittels der zusätzlichen Filterwerte korrigiert. Durch die in Figur 5 beispielhaft dargestellte schematische Zeiteinheit 52 kann gewählt werden, in welcher Frequenz der Zustandsvektor x aktualisiert und somit mit der zweiten Frequenz bereitgestellt wird. So wird durch die Zeiteinheit 52 beispielsweise eingestellt, mit welcher Frequenz der globale Speicher 51 ausgelesen wird.
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.
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.
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 Zeitschrift 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.
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. Nebst obenstehender schriftlicher Offenbarung wird explizit auf die Figuren 1 bis
5 verwiesen.

Claims

Ansprüche
1. Verfahren (100) zur Sensordatenverarbeitung in einem Sensorsystem (1), in welchem eine Relativpose von einem oder mehreren Objekten (20) zu dem Sensorsystem (1) durch eine Kinematik (2) verändert wird, umfassend: Erfassen (101) von Sensordaten eines ersten Umgebungssensors (10), wobei die Sensordaten des ersten Umgebungssensors (10) eine Lage des Objektes (20) gegenüber dem Sensorsystem (1) zu zumindest einem ersten Zeitpunkt beschreiben,
- Ausführen einer Zeitverzugskompensation (102) mittels einer ersten Zustandsschätzung basierend auf den Sensordaten des ersten Umgebungssensors (10), wobei dem ersten Umgebungssensor (10) zugehörige zustandskorrigierte Sensordaten (z1) errechnet werden, o wobei die zustandskorrigierten Sensordaten (z1) eine erste korrigierte Lage und/oder Bewegung des Objektes (20) gegenüber dem Sensorsystem (1) zu zumindest einem zweiten Zweitpunkt beschreibt, o wobei der zweite Zeitpunkt auf den ersten Zeitpunkt folgt, und o wobei die erste Zustandsschätzung mittels zumindest eines ersten Bewegungsmodells erfolgt, welches eine Bewegung des Objektes (20) gegenüber dem Sensorsystem (1) beschreibt,
- Ausführen einer Sensordatenfusion (103) mittels einer zweiten Zustandsschätzung basierend auf den bei der ersten Zustandsschätzung errechneten zustandskorrigierten Sensordaten (z1) und weiteren Sensordaten, wobei ein dem Objekt (20) zugehöriger Zustandsvektor (x) errechnet wird, o wobei der Zustandsvektor (x) ein Datensatz ist, der eine zweite korrigierte Lage und/oder Bewegung des Objektes (20) gegenüber dem Sensorsystem (1) beschreibt, und o wobei die zweite Zustandsschätzung auf zumindest einem zweiten Bewegungsmodell basiert, welches eine Bewegung des Objektes (20) gegenüber dem Sensorsystem (1) beschreibt, Bereitstellen (104) des errechneten Zustandsvektors (x), insbesondere um die Kinematik (2) zu steuern. Verfahren gemäß Anspruch 1 , ferner umfassend:
Erfassen von Sensordaten mehrerer Umgebungssensoren (10, 11), welche den ersten Umgebungssensor (10) umfassen,
Ausführen einer Zeitverzugskompensation mittels einer ersten Zustandsschätzung für jeden der Umgebungssensoren (10, 11) basierend auf den von dem jeweiligen Umgebungssensor (10, 11) erfassten Sensordaten, wobei jeweils zustandskorrigierte Sensordaten (z1 , z2) errechnet werden, 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 Sensorsystem (1) beschreibt,
Ausführen der zweiten Zustandsschätzung basierend auf den zustandskorrigierten Sensordaten (z1 , z2) der Umgebungssensoren (10, 11), wobei der dem Objekt (20) zugehörige Zustandsvektor (x) errechnet wird. Verfahren gemäß Anspruch 2, dadurch gekennzeichnet, dass die zustandskorrigierten Sensordaten (z1 , z2) der Umgebungssensoren (10, 11) oder daraus resultierende Filterparameter in einer Speichereinheit (51) gespeichert werden und bei der zweiten Zustandsschätzung genutzt werden, wobei insbesondere die zuletzt gespeicherten zustandskorrigierten Sensordaten (z1 , z2) der Umgebungssensoren (10, 11) oder die daraus resultierenden Filterparameter genutzt werden. Verfahren gemäß Anspruch 2 oder 3, dadurch gekennzeichnet, dass die zustandskorrigierten Sensordaten (z1 , z2) mehrerer Umgebungssensoren (10, 11) in zueinander unterschiedlichen ersten Frequenzen für die zweite Zustandsschätzung bereitgestellt werden. Verfahren gemäß einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass die erste Zustandsabschätzung basierend auf Sensordaten einer Bewegungssensorik (30-33) erfolgt, wobei das erste Bewegungsmodell die Bewegung des Objektes (20) gegenüber dem Sensorsystem (1) basierend auf den Sensordaten der Bewegungssensorik (30-33) errechnet, und/oder die zweite Zustandsabschätzung basierend auf Sensordaten einer Bewegungssensorik (30-33) erfolgt, wobei das zweite Bewegungsmodell die Bewegung des Objektes (20) gegenüber dem Sensorsystem (1) basierend auf den Sensordaten der Bewegungssensorik (30-33) errechnet. Verfahren gemäß einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass die erste Zustandsschätzung und/oder die zweite Zustandsschätzung mittels eines Kalman-Filters, eines bayesschen Filters oder Maschine Learning ausgeführt wird. Verfahren gemäß einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass der Zustandsvektor (x) mit einer zweiten Frequenz bereitgestellt wird, welche unterschiedlich zu einer ersten Frequenz ist, mit welcher die zustandskorrigierten Sensordaten (z1) bereitgestellt werden. Verfahren gemäß einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass die zweite Frequenz einstellbar ist. Verfahren gemäß einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass der erste Umgebungssensor (10) eine Kamera, ein LiDAR, ein Time-of-Flight Sensor, einen Radar-Sensor oder ein Ultraschallsensor ist. Sensorsystem (1), welches dazu eingerichtet ist, das Verfahren gemäß einem der voranstehenden Ansprüche auszuführen.
PCT/EP2022/068253 2021-08-02 2022-07-01 Verfahren zur sensordatenverarbeitung in einem sensorsystem und zugehöriges sensorsystem WO2023011816A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102021208331.5 2021-08-02
DE102021208331.5A DE102021208331A1 (de) 2021-08-02 2021-08-02 Verfahren zur Sensordatenverarbeitung in einem Sensorsystem und zugehöriges Sensorsystem

Publications (1)

Publication Number Publication Date
WO2023011816A1 true WO2023011816A1 (de) 2023-02-09

Family

ID=82703040

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2022/068253 WO2023011816A1 (de) 2021-08-02 2022-07-01 Verfahren zur sensordatenverarbeitung in einem sensorsystem und zugehöriges sensorsystem

Country Status (2)

Country Link
DE (1) DE102021208331A1 (de)
WO (1) WO2023011816A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009101030A1 (de) * 2008-02-11 2009-08-20 Siemens Aktiengesellschaft Verfahren zur rechnergestützten berechnung der bewegung eines objekts aus sensordaten
DE102016208056A1 (de) * 2016-05-11 2017-11-16 Robert Bosch Gmbh Verfahren und Vorrichtung zur Verarbeitung von Bilddaten und Fahrerassistenzsystem für ein Fahrzeug
EP3629052A1 (de) * 2018-09-28 2020-04-01 Naver Labs Corporation Datensammelverfahren und -system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009101030A1 (de) * 2008-02-11 2009-08-20 Siemens Aktiengesellschaft Verfahren zur rechnergestützten berechnung der bewegung eines objekts aus sensordaten
DE102016208056A1 (de) * 2016-05-11 2017-11-16 Robert Bosch Gmbh Verfahren und Vorrichtung zur Verarbeitung von Bilddaten und Fahrerassistenzsystem für ein Fahrzeug
EP3629052A1 (de) * 2018-09-28 2020-04-01 Naver Labs Corporation Datensammelverfahren und -system

Also Published As

Publication number Publication date
DE102021208331A1 (de) 2023-02-02

Similar Documents

Publication Publication Date Title
DE102018003266B4 (de) Controller und maschinelle lernvorrichtung
EP1412774B1 (de) Verfahren zur zeitlichen synchronisation mehrerer fahrzeugsensoren
DE102019001948A1 (de) Steuerung und maschinelle Lernvorrichtung
DE102016009655A1 (de) Verfahren zum Betrieb eines Fahrzeugs
EP3701433B1 (de) Verfahren, vorrichtung und computerprogramm zur erstellung eines tiefen neuronalen netzes
EP1052558A1 (de) Verfahren und Einrichtung zur Zustandsschätzung
DE102018220941A1 (de) Auswertung von Messgrößen mit KI-Modulen unter Berücksichtigung von Messunsicherheiten
EP3746850B1 (de) Verfahren zum ermitteln eines zeitlichen verlaufs einer messgrösse, prognosesystem, aktorsteuerungssystem, verfahren zum trainieren des aktorsteuerungssystems, trainingssystem, computerprogramm und maschinenlesbares speichermedium
DE112019003929T5 (de) Elektronische steuervorrichtung und aktualisierungssystem eines neuronalen netzes
EP3786853A1 (de) Komprimieren eines tiefen neuronalen netzes
WO2023011816A1 (de) Verfahren zur sensordatenverarbeitung in einem sensorsystem und zugehöriges sensorsystem
EP3467722B1 (de) Konfiguration einer kraftfahrzeug-fahrerassistenzvorrichtung mit einem neuronalen netzwerk im laufenden betrieb
WO2008145509A1 (de) Map matching für sicherheitsanwendungen
DE102018220608A1 (de) Maschinelles Lernsystem, sowie ein Verfahren, ein Computerprogramm und eine Vorrichtung zum Erstellen des maschinellen Lernsystems
DE102020205962B3 (de) Vorrichtung und Verfahren zum Betreiben eines Prüfstands
DE102019201045B4 (de) Verfahren, Vorrichtung und Computerprogramm zum Ermitteln einer Aktion oder Trajektorie eines Roboters
DE102020213527A1 (de) Verfahren zum Optimieren einer Strategie für einen Roboter
DE19624614C2 (de) Verfahren zum Entwurf oder zur Adaption eines Fuzzy-Reglers oder eines Systems von verknüpften Fuzzy-Reglern
EP0449363B1 (de) Schaltungsanordnung zur Bestimmung der Lage von Extrem- werten einer Ähnlichkeitsfunktion
DE10044026C1 (de) Verfahren zum Verfolgen eines sich bewegenden Ziels
EP0452797A2 (de) Kalman-Filter
DE102019002506A1 (de) Gerät zum Anpassen von Messvorgangsparametern, maschinelle Lernvorrichtung und System
DE102020205964B3 (de) Vorrichtung und Verfahren zum Betreiben eines Prüfstands
DE102008058866A1 (de) Vorrichtung und Verfahren zur Lagebestimmung eines Objekts
DE102021104433A1 (de) Verfahren zum Ermitteln mindestens eines Systemzustands mittels eines Kalman-Filters

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22747595

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2022747595

Country of ref document: EP

Effective date: 20240304