Loading [MathJax]/extensions/tex2jax.js
  • <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>

  • DriveWorks SDK Reference
    5.8.83 Release
    For Test and Development only

    All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
    Radar.h
    Go to the documentation of this file.
    1
    2//
    3// Notice
    4// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
    5// NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
    6// THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
    7// MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
    8//
    9// NVIDIA CORPORATION & AFFILIATES assumes no responsibility for the consequences of use of such
    10// information or for any infringement of patents or other rights of third parties that may
    11// result from its use. No license is granted by implication or otherwise under any patent
    12// or patent rights of NVIDIA CORPORATION & AFFILIATES. No third party distribution is allowed unless
    13// expressly authorized by NVIDIA. Details are subject to change without notice.
    14// This code supersedes and replaces all information previously supplied.
    15// NVIDIA CORPORATION & AFFILIATES products are not authorized for use as critical
    16// components in life support devices or systems without express written approval of
    17// NVIDIA CORPORATION & AFFILIATES.
    18//
    19// SPDX-FileCopyrightText: Copyright (c) 2017-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
    20// SPDX-License-Identifier: LicenseRef-NvidiaProprietary
    21//
    22// NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
    23// property and proprietary rights in and to this material, related
    24// documentation and any modifications thereto. Any use, reproduction,
    25// disclosure or distribution of this material and related documentation
    26// without an express license agreement from NVIDIA CORPORATION or
    27// its affiliates is strictly prohibited.
    28//
    30
    47#ifndef DW_SENSORS_RADAR_RADAR_H_
    48#define DW_SENSORS_RADAR_RADAR_H_
    49
    50#include <dw/core/base/Config.h>
    51#include <dw/core/base/Types.h>
    53#include <dw/sensors/Sensors.h>
    54
    56#define DW_RADARSCAN_MINIMUM_PAYLOAD_SIZE 1744
    57
    59typedef enum {
    62
    65
    68
    71
    75
    77typedef enum {
    80
    83
    86
    90
    92//# sergen(generate)
    93typedef enum dwRadarDynamicState {
    96
    99
    102
    105
    108
    112
    117
    120
    123
    126
    129
    132
    135
    138
    141
    144
    148
    150typedef struct dwRadarScanType
    151{
    154
    158
    160#pragma pack(push, 1)
    161
    163//# sergen(generate)
    164typedef struct dwRadarDetection
    165{
    168
    171
    174
    177
    180
    183
    186
    189
    192
    195
    199
    200typedef struct dwRadarTrack
    201{
    203 uint32_t id;
    204
    206 uint32_t age;
    207
    210
    213
    216
    219
    222
    225
    228
    231
    234
    237
    240
    243
    246
    249
    252
    256
    258typedef struct dwRadarScan
    259{
    261 uint32_t scanIndex;
    262
    265
    268
    271
    273 uint32_t numReturns;
    274
    277
    281
    284
    287
    290
    293 void* data;
    294
    297
    300
    303
    306
    310
    311#pragma pack(pop)
    312
    314typedef struct dwRadarStatus
    315{
    321
    327
    333
    336
    339
    342
    343 /*
    344 * Deviation of azimuth angle for returns (radians)
    345 * This is the deviation of the measured azimuth from what would be
    346 * expected based on the geometric boresight of the sensor.
    347 */
    349
    350 /*
    351 * Deviation of elevation angle for returns (radians)
    352 * This is the deviation of the elevation azimuth from what would be
    353 * expected based on the geometric boresight of the sensor.
    354 */
    356
    359
    362
    365
    369
    372{
    375
    378
    381
    385
    388{
    390 uint32_t sensorId;
    391
    394
    397
    400
    404
    406typedef struct dwRadarProperties
    407{
    410
    412 uint32_t numScanTypes;
    413
    416
    419
    422
    429
    432
    435
    439
    440#ifdef __cplusplus
    441extern "C" {
    442#endif
    443
    456dwStatus dwSensorRadar_toggleScanType(bool const enable, dwRadarScanType const scanType, dwSensorHandle_t const sensor);
    457
    470
    490 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
    503
    522 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
    523
    536
    552 const uint8_t* const rawData, size_t const size, dwSensorHandle_t const sensor);
    553
    565
    577
    589
    590#ifdef __cplusplus
    591}
    592#endif
    593
    595#endif // DW_SENSORS_RADAR_RADAR_H_
    NVIDIA DriveWorks API: RadarScan
    dwRadarModel
    Defines the radar sensor model.
    Definition: RadarScan.h:44
    Defines the structure for holding health info of radar scen.
    Definition: RadarScan.h:450
    NVIDIA DriveWorks API: Sensors
    NVIDIA DriveWorks API: Core Types
    #define DW_API_PUBLIC
    Definition: Exports.h:54
    dwStatus
    Status definition.
    Definition: Status.h:171
    float float32_t
    Specifies POD types.
    Definition: Types.h:70
    int64_t dwTime_t
    Specifies a timestamp unit, in microseconds.
    Definition: Types.h:82
    Specifies a 3D rigid transformation.
    Definition: Types.h:536
    dwRadarDetectionStdDev const * detectionStdDev
    Pointer to the array of dwRadarDetectionStdDev, size of this array is numReturns.
    Definition: Radar.h:299
    float32_t velocity
    Longitudinal velocity (m/s)
    Definition: Radar.h:374
    uint32_t scansPerSecond
    Number of scans (of a particular type) per second.
    Definition: Radar.h:428
    float32_t confidence
    Confidence of object existence (range: 0-1);.
    Definition: Radar.h:209
    uint32_t inputPacketsPerSecond
    Number of input odometry packets per second.
    Definition: Radar.h:431
    bool elevationValid
    Indicates validity of z position.
    Definition: Radar.h:254
    dwRadarScanType scanType
    Type of scan.
    Definition: Radar.h:270
    float32_t y
    Y-position (m)
    Definition: Radar.h:170
    dwRadarDetectionMisc const * detectionMisc
    Pointer to the array of dwRadarDetectionMisc, size of this array is numReturns.
    Definition: Radar.h:296
    float32_t x
    X-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:320
    uint32_t supportedScanTypes[DW_RADAR_RETURN_TYPE_COUNT][DW_RADAR_RANGE_COUNT]
    Enumerates the types of scans supported by the radar.
    Definition: Radar.h:415
    dwRadarRange range
    Scan range.
    Definition: Radar.h:156
    uint32_t numScanTypes
    Number of supported scan types.
    Definition: Radar.h:412
    dwTime_t sensorTimestamp
    Sensor timestamp at which the current measurement scan was started (us)
    Definition: Radar.h:264
    bool sensorOK
    Indicaes if the is OK.
    Definition: Radar.h:361
    float32_t wheelbase
    Size of wheel-base (m)
    Definition: Radar.h:396
    float32_t Ay
    Y-component (m/s^2) of the aceleration.
    Definition: Radar.h:233
    float32_t x
    X-position (m)
    Definition: Radar.h:167
    bool elevationValidity
    Indicates validity of the elevation angle.
    Definition: Radar.h:194
    dwRadarReturnType returnType
    Type of radar return.
    Definition: Radar.h:153
    float32_t lateralAcceleration
    Lateral acceleration (m/s^2)
    Definition: Radar.h:380
    dwTransformation3f radarPosition
    Radar position.
    Definition: Radar.h:393
    float32_t azimuthDeviation[DW_RADAR_RANGE_COUNT]
    Definition: Radar.h:348
    float32_t radialAcceleration
    Radial acceleration (m/s^2)
    Definition: Radar.h:248
    dwTime_t hostTimestamp
    Host timestamp at reception of first packet belonging to this scan (us)
    Definition: Radar.h:267
    float32_t acceleration
    Longitudinal acceleration (m/s^2)
    Definition: Radar.h:377
    float32_t roll
    Roll angle of sensor (radians)
    Definition: Radar.h:341
    float32_t elevationAngle
    Angle of elevation (radians)
    Definition: Radar.h:191
    float32_t yaw
    Yaw angle of sensor (radians)
    Definition: Radar.h:335
    dwRadarScanValidity scanValidity
    Radar Scan validity If the signal is unavailable or invalid, the value of the signal will be the maxi...
    Definition: Radar.h:280
    bool sensorBlock
    Indicates if the sensor is blocked.
    Definition: Radar.h:367
    float32_t azimuth
    Azimuth angle (radians)
    Definition: Radar.h:236
    dwRadarScanHealth radarScanHealth
    Radar Scan health.
    Definition: Radar.h:289
    dwRadarDetectionFFTPatch const * detectionFFTPatch
    Pointer to the array of dwRadarDetectionFFTPatch, size of this array is numReturns.
    Definition: Radar.h:308
    float32_t Vy
    Y-component (m/s) of the velocity.
    Definition: Radar.h:227
    bool sensorDisturbed
    Indicates if the sensor is disturbed due to interference.
    Definition: Radar.h:364
    float32_t elevationDeviation[DW_RADAR_RANGE_COUNT]
    Definition: Radar.h:355
    dwRadarDetectionProbability const * detectionProbability
    Pointer to the array of dwRadarDetectionProbability, size of this array is numReturns.
    Definition: Radar.h:305
    bool sensorAligned
    Indicates if the sensor is aligned.
    Definition: Radar.h:358
    uint32_t sensorId
    Id of the sensor (vendor-specific)
    Definition: Radar.h:390
    uint32_t maxReturnsPerScan[DW_RADAR_RETURN_TYPE_COUNT][DW_RADAR_RANGE_COUNT]
    Max # of returns in any given scan.
    Definition: Radar.h:421
    float32_t pitch
    Pitch angle of sensor (radians)
    Definition: Radar.h:338
    uint32_t scanIndex
    Sensor-provided scan index.
    Definition: Radar.h:261
    float32_t radius
    Radial distance (m)
    Definition: Radar.h:242
    dwRadarModel radarModel
    Radar model of the current radar.
    Definition: Radar.h:437
    dwRadarScanAmbiguity radarScanAmbiguity
    Radar Scan ambiguity.
    Definition: Radar.h:286
    uint32_t id
    Radar-provided track id.
    Definition: Radar.h:203
    float32_t Vx
    X-component (m/s) of the velocity in the azimuth direction.
    Definition: Radar.h:173
    dwRadarDynamicState dynamicState
    Dynamic state of the object.
    Definition: Radar.h:212
    bool isReversed
    Indicates if the sensor is reversed from its default orientation.
    Definition: Radar.h:402
    float32_t y
    Y-position (m)
    Definition: Radar.h:218
    float32_t radius
    Radial distance (m)
    Definition: Radar.h:182
    float32_t azimuth
    Azimuth angle (radians)
    Definition: Radar.h:179
    float32_t Vy
    Y-component (m/s) of the velocity in the azimuth direction.
    Definition: Radar.h:176
    float32_t rcs
    Reflection amplitude (dB)
    Definition: Radar.h:188
    float32_t Vx
    X-component (m/s) of the velocity.
    Definition: Radar.h:224
    float32_t y
    Y-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:326
    dwRadarDetectionQuality const * detectionQuality
    Pointer to the array of dwRadarDetectionQuality, size of this array is numReturns.
    Definition: Radar.h:302
    float32_t x
    X-position (m)
    Definition: Radar.h:215
    float32_t Ax
    X-component (m/s^2) of the acceleration.
    Definition: Radar.h:230
    uint32_t packetsPerScan
    Definition: Radar.h:418
    float32_t radialVelocity
    Radial velocity (m/s)
    Definition: Radar.h:185
    float32_t radialVelocity
    Radial velocity (m/s)
    Definition: Radar.h:245
    void * data
    Pointer to the array of returns (to be casted based on return type) Size of this array is numReturns.
    Definition: Radar.h:293
    float32_t SNR
    Signal to noise ratio (dBr)
    Definition: Radar.h:197
    uint32_t numReturns
    Number of radar returns in this scan.
    Definition: Radar.h:273
    float32_t yawRate
    Yaw rate (radians/s)
    Definition: Radar.h:383
    float32_t dopplerAmbiguity
    Doppler ambiguity free range.
    Definition: Radar.h:276
    bool isSimulation
    Indicates whether the sensor is simulated.
    Definition: Radar.h:434
    uint32_t age
    Age of tracked object (in scans)
    Definition: Radar.h:206
    float32_t damping
    Damping of radome (db)
    Definition: Radar.h:399
    float32_t rcs
    Compensated reflection amplitude (dB)
    Definition: Radar.h:251
    uint8_t isDecodingOn
    Indicates whether decoding is enabled.
    Definition: Radar.h:409
    dwRadarScanMisc radarScanMisc
    Radar Scan miscellaneous fields.
    Definition: Radar.h:283
    float32_t z
    Z-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:332
    float32_t z
    Z-position (m)
    Definition: Radar.h:221
    float32_t azimuthRate
    Rate of change of azimuth angle (radians/s)
    Definition: Radar.h:239
    DW_API_PUBLIC dwStatus dwSensorRadar_readScan(const dwRadarScan **const data, const dwTime_t timeoutUs, dwSensorHandle_t const sensor)
    Reads a one scan chunk.
    DW_API_PUBLIC dwStatus dwSensorRadar_toggleScanType(bool const enable, dwRadarScanType const scanType, dwSensorHandle_t const sensor)
    Enables/Disables a scan type for the radar sensor.
    DW_API_PUBLIC dwStatus dwSensorRadar_readData(const dwRadarScan **const data, const dwRadarScanType type, const dwTime_t timeoutUs, dwSensorHandle_t const sensor)
    Reads a single packet, which might be an entire scan or a fraction of a scan, which is sensor depende...
    DW_API_PUBLIC dwStatus dwSensorRadar_processRawData(const dwRadarScan **const data, const uint8_t *const rawData, size_t const size, dwSensorHandle_t const sensor)
    Decodes RAW data previously read onto the application side structure.
    DW_API_PUBLIC dwStatus dwSensorRadar_setMountPosition(dwRadarMountPosition *const data, dwSensorHandle_t const sensor)
    Sends the radar mount position information to the radar.
    DW_API_PUBLIC dwStatus dwSensorRadar_returnData(const dwRadarScan *const scan, dwSensorHandle_t const sensor)
    Returns the data read to the internal pool.
    DW_API_PUBLIC dwStatus dwSensorRadar_setDataDecoding(bool const enable, dwSensorHandle_t const sensor)
    Enables/disables the decoding of the Radar packets, which incurs in additional CPU load.
    DW_API_PUBLIC dwStatus dwSensorRadar_setVehicleState(dwRadarVehicleState *const data, dwSensorHandle_t const sensor)
    Sends vehicle dynamics information to the radar.
    DW_API_PUBLIC dwStatus dwSensorRadar_getProperties(dwRadarProperties *const radarProperties, dwSensorHandle_t const sensor)
    Gets information about the Radar sensor.
    DW_API_PUBLIC dwStatus dwSensorRadar_returnScan(const dwRadarScan *const scan, dwSensorHandle_t const sensor)
    Returns the data covering an entire scan read to the internal pool.
    dwRadarSensorErrorID
    Defines the error ID used in health/error signal infra.
    Definition: Radar.h:114
    dwRadarRange
    Defines the range of radar return.
    Definition: Radar.h:59
    dwRadarReturnType
    Defines the type of radar return.
    Definition: Radar.h:77
    dwRadarDynamicState
    Defines the dynamic state of the radar return.
    Definition: Radar.h:93
    @ DW_RADAR_SENSOR_ERROR_ID_TIMESYNC
    Time sync error.
    Definition: Radar.h:146
    @ DW_RADAR_SENSOR_ERROR_ID_INVALID
    Default error id as no error.
    Definition: Radar.h:116
    @ DW_RADAR_SENSOR_ERROR_ID_SNA
    Signal not available error.
    Definition: Radar.h:143
    @ DW_RADAR_SENSOR_ERROR_ID_INTERFERENCE
    Interference error.
    Definition: Radar.h:131
    @ DW_RADAR_SENSOR_ERROR_ID_UNDER_VOLTAGE
    Under voltage error.
    Definition: Radar.h:119
    @ DW_RADAR_SENSOR_ERROR_ID_FULL_BLOCKAGE
    Full blockage error.
    Definition: Radar.h:134
    @ DW_RADAR_SENSOR_ERROR_ID_OVER_TEMP
    Over temperature error.
    Definition: Radar.h:128
    @ DW_RADAR_SENSOR_ERROR_ID_UNDER_TEMP
    Under temperature error.
    Definition: Radar.h:125
    @ DW_RADAR_SENSOR_ERROR_ID_NO_MEASUREMENT
    No measurement error.
    Definition: Radar.h:140
    @ DW_RADAR_SENSOR_ERROR_ID_LIMITED_PERF
    Limited performance error.
    Definition: Radar.h:137
    @ DW_RADAR_SENSOR_ERROR_ID_OVER_VOLTAGE
    Over voltage error.
    Definition: Radar.h:122
    @ DW_RADAR_RANGE_LONG
    Long Range.
    Definition: Radar.h:67
    @ DW_RADAR_RANGE_UNKNOWN
    Unknown Range.
    Definition: Radar.h:70
    @ DW_RADAR_RANGE_SHORT
    Short Range.
    Definition: Radar.h:61
    @ DW_RADAR_RANGE_MEDIUM
    Medium Range.
    Definition: Radar.h:64
    @ DW_RADAR_RANGE_COUNT
    Count.
    Definition: Radar.h:73
    @ DW_RADAR_RETURN_TYPE_TRACK
    Processed tracker output.
    Definition: Radar.h:82
    @ DW_RADAR_RETURN_TYPE_COUNT
    Count.
    Definition: Radar.h:88
    @ DW_RADAR_RETURN_TYPE_STATUS
    Sensor status information.
    Definition: Radar.h:85
    @ DW_RADAR_RETURN_TYPE_DETECTION
    Raw detection.
    Definition: Radar.h:79
    @ DW_RADAR_DYNAMIC_STATE_STOPPED
    Stopped (was moving, now stationary)
    Definition: Radar.h:107
    @ DW_RADAR_DYNAMIC_STATE_CROSS_TRAFFIC
    Cross-traffic.
    Definition: Radar.h:104
    @ DW_RADAR_DYNAMIC_STATE_STATIONARY
    Stationary.
    Definition: Radar.h:98
    @ DW_RADAR_DYNAMIC_STATE_UNKNOWN
    Unknown.
    Definition: Radar.h:110
    @ DW_RADAR_DYNAMIC_STATE_ONCOMING
    Oncoming.
    Definition: Radar.h:101
    @ DW_RADAR_DYNAMIC_STATE_MOVING
    Moving.
    Definition: Radar.h:95
    The structs below are serialized in binary and the layout is assummed to be packed.
    Definition: Radar.h:165
    Defines the structure for reporting sensor mount position.
    Definition: Radar.h:388
    Defines the properties of the radar.
    Definition: Radar.h:407
    Defines the structure for a complete radar scan.
    Definition: Radar.h:259
    Defines the type of scan (combination of return type & range)
    Definition: Radar.h:151
    Defines the return structure for sensor status messages.
    Definition: Radar.h:315
    Defines the structure for reporting current vehicle dynamics state.
    Definition: Radar.h:372
    struct dwSensorObject * dwSensorHandle_t
    Handle representing a sensor.
    Definition: Sensors.h:86
    人人超碰97caoporen国产