DriveWorks SDK Reference
5.14.77 Release
For Test and Development only

EgomotionTypes.h
Go to the documentation of this file.
1
2// This code contains NVIDIA Confidential Information and is disclosed
3// under the Mutual Non-Disclosure Agreement.
4//
5// Notice
6// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS"
7// NVIDIA MAKES NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY,
8// OR OTHERWISE WITH RESPECT TO THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY
9// IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A
10// PARTICULAR PURPOSE.
11//
12// NVIDIA Corporation assumes no responsibility for the consequences of use of
13// such information or for any infringement of patents or other rights of third
14// parties that may result from its use. No license is granted by implication or
15// otherwise under any patent or patent rights of NVIDIA Corporation. No third
16// party distribution is allowed unless expressly authorized by NVIDIA. Details
17// are subject to change without notice. This code supersedes and replaces all
18// information previously supplied. NVIDIA Corporation products are not
19// authorized for use as critical components in life support devices or systems
20// without express written approval of NVIDIA Corporation.
21//
22// Copyright (c) 2015-2023 NVIDIA Corporation. All rights reserved.
23//
24// NVIDIA Corporation and its licensors retain all intellectual property and
25// proprietary rights in and to this software and related documentation and any
26// modifications thereto. Any use, reproduction, disclosure or distribution of
27// this software and related documentation without an express license agreement
28// from NVIDIA Corporation is strictly prohibited.
29//
31#ifndef DW_EGOMOTION_BASE_EGOMOTIONTYPES_H_
32#define DW_EGOMOTION_BASE_EGOMOTIONTYPES_H_
33// Generated by dwProto from egomotion_types.proto DO NOT EDIT BY HAND!
34// See //3rdparty/shared/dwproto/README.md for more information
35
37#include <dw/core/base/Types.h>
38
39#include <dw/rig/Vehicle.h>
40
41#ifdef __cplusplus
42extern "C" {
43#endif
44
46typedef enum dwMotionModel {
73
103
110
131
154
172
178
184
190
207
210{
213
221
224{
228
251
257
260{
264
268
273
277
281
286
289
297
300{
305
312 DW_DEPRECATED("Deriving lateral slip coefficient from vehicle parameters, unless this parameter is non-zero.")
314
318
321
326
335
339 uint32_t historySize;
340
345
350
353
356
360
368
371typedef struct dwEgomotionResult
372{
375 float32_t linearVelocity[3];
376 float32_t angularVelocity[3];
377 float32_t linearAcceleration[3];
378 float32_t angularAcceleration[3];
379 int32_t validFlags;
381
394{
396 float32_t linearVelocity[3];
397 float32_t angularVelocity[3];
398 float32_t linearAcceleration[3];
399 float32_t angularAcceleration[3];
401 int64_t validFlags;
403
406{
410 bool valid;
412
413#ifdef __cplusplus
414}
415#endif
416
417#endif // DW_EGOMOTION_BASE_EGOMOTIONTYPES_H_
float32_t gyroNoiseDensityDeg
Expected zero mean measurement noise of the gyroscope, also known as Noise Density [deg/s/sqrt(Hz)] A...
dwMotionModelMeasurement
Defines motion measurements.
@ DW_EGOMOTION_MEASUREMENT_VELOCITY
Vehicle velocity [m/s].
@ DW_EGOMOTION_MEASUREMENT_STEERINGANGLE
Steering angle [rad].
@ DW_EGOMOTION_MEASUREMENT_STEERINGWHEELANGLE
Steering wheel angle [rad].
float32_t odometrySamplingRateHz
If known this entry shall indicate expected sampling rate in [Hz] of the odometry signals.
dwTime_t velocityLatency
CAN velocity latency in microseconds which is read from can properties in rig file.
float32_t gyroscopeBias[3]
Initial gyroscope biases, if known at initialization time.
dwMatrix3f rotation
Rotation covariance represented as euler angles (order: roll, pitch, yaw) in [rad^2].
float32_t torsionalSpringPitchNaturalFrequency
Torsional spring model parameters.
dwTransformation3f imu2rig
IMU extrinsics.
dwEgomotionSensorCharacteristics sensorParameters
Sensor parameters, containing information about sensor characteristics.
float32_t accNoiseDensityMicroG
Expected zero mean measurement noise of the linear accelerometer, also known as Noise Density [ug/sqr...
dwEgomotionSuspensionModel model
Suspension model to use.
dwMatrix3f rotation
a 3x3 covariance of the rotation (order: roll, pitch, yaw) [rad]
dwEgomotionDataField
Defines flags that indicate validity of corresponding data in dwEgomotionResult and dwEgomotionUncert...
@ DW_EGOMOTION_LIN_VEL_X
indicates validity of linearVelocity[0]
@ DW_EGOMOTION_LIN_ACC_X
indicates validity of linearAcceleration[0]
@ DW_EGOMOTION_ANG_ACC_Z
indicates validity of angularAcceleration[2]
@ DW_EGOMOTION_ANG_ACC_Y
indicates validity of angularAcceleration[1]
@ DW_EGOMOTION_ROTATION
indicates validity of rotation,
@ DW_EGOMOTION_LIN_VEL_Y
indicates validity of linearVelocity[1]
@ DW_EGOMOTION_LIN_ACC_Z
indicates validity of linearAcceleration[2]
@ DW_EGOMOTION_ANG_ACC_X
indicates validity of angularAcceleration[0]
@ DW_EGOMOTION_LIN_ACC_Y
indicates validity of linearAcceleration[1]
@ DW_EGOMOTION_ANG_VEL_Y
indicates validity of angularVelocity[1]
@ DW_EGOMOTION_ANG_VEL_X
indicates validity of angularVelocity[0]
@ DW_EGOMOTION_LIN_VEL_Z
indicates validity of linearVelocity[2]
@ DW_EGOMOTION_ANG_VEL_Z
indicates validity of angularVelocity[2]
float32_t accelerationFilterTimeConst
Simple filter parameters (ignored for other modes)
dwEgomotionSpeedMeasurementType speedMeasurementType
Defines which velocity readings from dwVehicleIOState shall be used for egomotion estimation.
float32_t gyroDriftRate
Expected gyroscope drift rate in [deg/s].
float32_t torsionalSpringPitchDampingRatio
Level of damping relative to critical damping around the pitch axis of the vehicle [dimensionless].
bool estimateInitialOrientation
When enabled, initial rotation will be estimated from accelerometer measurements.
dwEgomotionSteeringMeasurementType steeringMeasurementType
Defines which steering readings from dwVehicleIOState shall be used for egomotion estimation.
uint32_t historySize
Number of state estimates to keep in the history (if 0 specified default of 1000 is used).
dwTime_t timestamp
Timestamp of egomotion state estimate [us].
int32_t validFlags
Bitwise combination of dwEgomotionDataField flags.
float32_t velocityFactor
CAN velocity correction factor which is read from can properties in rig file.
dwMotionModel
Defines the motion models.
@ DW_EGOMOTION_ODOMETRY
Given odometry information, estimates motion of the vehicle using a bicycle model.
@ DW_EGOMOTION_IMU_ODOMETRY
Fuses odometry model with IMU measurements to estimate motion of the vehicle.
float32_t gyroBiasRange
If known this value in [rad/s] shall indicate standard deviation of the expected bias range of the gy...
float32_t imuSamplingRateHz
If known this entry shall indicate expected sampling rate in [Hz] of the IMU sensor.
bool automaticUpdate
Automatically update state estimation.
dwEgomotionSuspensionParameters suspension
Suspension model parameters.
dwMatrix3f translation
a 3x3 covariance of the translation (x,y,z) [m]
float32_t lateralSlipCoefficient
Lateral slip coefficient [rad*s^2/m].
dwEgomotionLinearAccelerationFilterParams linearAccelerationFilterParameters
Linear acceleration filter parameters.
dwEgomotionLinearAccelerationFilterMode mode
Linear acceleration filter mode. Default (0): no filtering.
dwEgomotionSuspensionModel
Defines egomotion suspension model.
@ DW_EGOMOTION_SUSPENSION_RIGID_MODEL
No suspension model. Equivalent to perfectly rigid suspension.
@ DW_EGOMOTION_SUSPENSION_TORSIONAL_SPRING_MODEL
Models suspension as single-axis damped torsional spring.
dwEgomotionLinearAccelerationFilterMode
Defines egomotion linear acceleration filter mode.
@ DW_EGOMOTION_ACC_FILTER_NO_FILTERING
no filtering of the output linear acceleration
@ DW_EGOMOTION_ACC_FILTER_SIMPLE
simple low-pass filtering of the acceleration
float32_t measurementNoiseStdevAcceleration
Standard deviation of measurement noise in acceleration [m/s^2].
dwVehicle vehicle
Vehicle parameters to setup the model.
dwEgomotionSteeringMeasurementType
Defines steering measurement types.
@ DW_EGOMOTION_STEERING_WHEEL_ANGLE
@ DW_EGOMOTION_FRONT_STEERING
int64_t validFlags
Bitwise combination of dwEgomotionDataField flags.
float32_t measurementNoiseStdevSpeed
Standard deviation of measurement noise in speed [m/s].
float32_t processNoiseStdevAcceleration
Square root of continuous time process noise covariance in acceleration [m/s^2 * 1/sqrt(s)].
float32_t processNoiseStdevSpeed
Square root of continuous time process noise covariance in speed [m/s * 1/sqrt(s)].
bool valid
indicates whether uncertainty estimates are valid or not
dwMotionModel motionModel
Specifies the motion model to be used for pose estimation.
dwQuaternionf rotation
Rotation represented as quaternion (x,y,z,w). Valid when DW_EGOMOTION_ROTATION is set.
dwTime_t timeInterval
relative motion time interval [us]
dwTime_t timestamp
Timestamp of egomotion uncertainty estimate [us].
dwEgomotionSpeedMeasurementType
Defines speed measurement types.
@ DW_EGOMOTION_REAR_WHEEL_SPEED
Indicates that speeds are angular speeds [rad/s] measured at rear wheels.
@ DW_EGOMOTION_FRONT_SPEED
Indicates that speed is linear speed [m/s] measured at front wheels (along steering direction).
@ DW_EGOMOTION_REAR_SPEED
Indicates that speed is linear speed [m/s] measured at rear axle center (along steering direction).
Defines egomotion linear acceleration filter parameters.
Holds initialization parameters for the Egomotion module.
Holds egomotion uncertainty estimates for a relative motion estimate.
Holds egomotion state estimate.
Sensor measurement noise characteristics.
Suspension model type and parameters.
Holds egomotion uncertainty estimates.
Defines a 3x3 matrix of floating point numbers by using only one array.
Definition: MatrixTypes.h:139
NVIDIA DriveWorks API: Core Types
NVIDIA DriveWorks API: Vehicle Parameters
NVIDIA DriveWorks API: Core Exports
float float32_t
Specifies POD types.
Definition: BasicTypes.h:59
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
Definition: BasicTypes.h:65
#define DW_DEPRECATED(msg)
Definition: Exports.h:66
DEPRECATED: Properties of a passenger car vehicle.
Definition: Vehicle.h:354
Defines a single-precision quaternion.
Specifies a 3D rigid transformation.
Definition: MatrixTypes.h:186