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

  • DriveWorks SDK Reference
    5.10.90 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
    114typedef struct dwRadarScanType
    115{
    118
    122
    123// The structs below are serialized in binary and the layout is assummed to be packed
    124#pragma pack(push, 1)
    125
    127//# sergen(generate)
    128typedef struct dwRadarDetection
    129{
    132
    135
    138
    141
    144
    147
    150
    153
    156
    159
    163
    165typedef struct dwRadarTrack
    166{
    168 uint32_t id;
    169
    171 uint32_t age;
    172
    175
    178
    181
    184
    187
    190
    193
    196
    199
    202
    205
    208
    211
    214
    217
    221
    223typedef struct dwRadarScan
    224{
    226 uint32_t scanIndex;
    227
    230
    233
    236
    238 uint32_t numReturns;
    239
    242
    246
    249
    252
    255 void* data;
    256
    259
    262
    265
    268
    272
    273#pragma pack(pop)
    274
    276typedef struct dwRadarStatus
    277{
    283
    289
    295
    298
    301
    304
    305 /*
    306 * Deviation of azimuth angle for returns (radians)
    307 * This is the deviation of the measured azimuth from what would be
    308 * expected based on the geometric boresight of the sensor.
    309 */
    311
    312 /*
    313 * Deviation of elevation angle for returns (radians)
    314 * This is the deviation of the elevation azimuth from what would be
    315 * expected based on the geometric boresight of the sensor.
    316 */
    318
    321
    324
    327
    331
    334{
    337
    340
    343
    347
    350{
    352 uint32_t sensorId;
    353
    356
    359
    362
    366
    368typedef struct dwRadarProperties
    369{
    372
    374 uint32_t numScanTypes;
    375
    378
    381
    384
    391
    394
    397
    401
    402#ifdef __cplusplus
    403extern "C" {
    404#endif
    405
    421dwStatus dwSensorRadar_toggleScanType(bool const enable, dwRadarScanType const scanType, dwSensorHandle_t const sensor);
    422
    437
    461 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
    478
    501 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
    502
    519
    539 const uint8_t* const rawData, size_t const size, dwSensorHandle_t const sensor);
    540
    554
    568
    582
    583#ifdef __cplusplus
    584}
    585#endif
    586
    588#endif // DW_SENSORS_RADAR_RADAR_H_
    Specifies a 3D rigid transformation.
    Definition: MatrixTypes.h:186
    NVIDIA DriveWorks API: RadarScan
    dwRadarModel
    Defines the radar sensor model.
    Definition: RadarScan.h:44
    Defines FFT patch value of the detection.
    Definition: RadarScan.h:269
    Defines the detection misc.
    Definition: RadarScan.h:102
    Defines the probability of some items recevied in a detection.
    Definition: RadarScan.h:221
    Defines the quality of the detection.
    Definition: RadarScan.h:177
    Defines standard deviation of the detection.
    Definition: RadarScan.h:145
    Defines the ambiguity of a radar scan.
    Definition: RadarScan.h:412
    Defines the radar scan misc.
    Definition: RadarScan.h:355
    Defines the validity of features in a radar scan. Include the validity structure in this page.
    Definition: RadarScan.h:456
    NVIDIA DriveWorks API: Sensors
    NVIDIA DriveWorks API: Core Types
    float float32_t
    Specifies POD types.
    Definition: BasicTypes.h:57
    int64_t dwTime_t
    Specifies a timestamp unit, in microseconds.
    Definition: BasicTypes.h:63
    #define DW_API_PUBLIC
    Definition: Exports.h:54
    dwStatus
    Status definition.
    Definition: Status.h:173
    dwRadarDetectionStdDev const * detectionStdDev
    Pointer to the array of dwRadarDetectionStdDev, size of this array is numReturns.
    Definition: Radar.h:261
    float32_t velocity
    Longitudinal velocity (m/s)
    Definition: Radar.h:336
    uint32_t scansPerSecond
    Number of scans (of a particular type) per second.
    Definition: Radar.h:390
    float32_t confidence
    Confidence of object existence (range: 0-1);.
    Definition: Radar.h:174
    uint32_t inputPacketsPerSecond
    Number of input odometry packets per second.
    Definition: Radar.h:393
    bool elevationValid
    Indicates validity of z position.
    Definition: Radar.h:219
    dwRadarScanType scanType
    Type of scan.
    Definition: Radar.h:235
    float32_t y
    Y-position (m)
    Definition: Radar.h:134
    dwRadarDetectionMisc const * detectionMisc
    Pointer to the array of dwRadarDetectionMisc, size of this array is numReturns.
    Definition: Radar.h:258
    float32_t x
    X-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:282
    uint32_t supportedScanTypes[DW_RADAR_RETURN_TYPE_COUNT][DW_RADAR_RANGE_COUNT]
    Enumerates the types of scans supported by the radar.
    Definition: Radar.h:377
    dwRadarRange range
    Scan range.
    Definition: Radar.h:120
    uint32_t numScanTypes
    Number of supported scan types.
    Definition: Radar.h:374
    dwTime_t sensorTimestamp
    Sensor timestamp at which the current measurement scan was started (us)
    Definition: Radar.h:229
    bool sensorOK
    Indicaes if the is OK.
    Definition: Radar.h:323
    float32_t wheelbase
    Size of wheel-base (m)
    Definition: Radar.h:358
    float32_t Ay
    Y-component (m/s^2) of the aceleration.
    Definition: Radar.h:198
    float32_t x
    X-position (m)
    Definition: Radar.h:131
    bool elevationValidity
    Indicates validity of the elevation angle.
    Definition: Radar.h:158
    dwRadarReturnType returnType
    Type of radar return.
    Definition: Radar.h:117
    float32_t lateralAcceleration
    Lateral acceleration (m/s^2)
    Definition: Radar.h:342
    dwTransformation3f radarPosition
    Radar position.
    Definition: Radar.h:355
    float32_t azimuthDeviation[DW_RADAR_RANGE_COUNT]
    Definition: Radar.h:310
    float32_t radialAcceleration
    Radial acceleration (m/s^2)
    Definition: Radar.h:213
    dwTime_t hostTimestamp
    Host timestamp at reception of first packet belonging to this scan (us)
    Definition: Radar.h:232
    float32_t acceleration
    Longitudinal acceleration (m/s^2)
    Definition: Radar.h:339
    float32_t roll
    Roll angle of sensor (radians)
    Definition: Radar.h:303
    float32_t elevationAngle
    Angle of elevation (radians)
    Definition: Radar.h:155
    float32_t yaw
    Yaw angle of sensor (radians)
    Definition: Radar.h:297
    dwRadarScanValidity scanValidity
    Radar Scan validity If the signal is unavailable or invalid, the value of the signal will be the maxi...
    Definition: Radar.h:245
    bool sensorBlock
    Indicates if the sensor is blocked.
    Definition: Radar.h:329
    float32_t azimuth
    Azimuth angle (radians)
    Definition: Radar.h:201
    dwRadarDetectionFFTPatch const * detectionFFTPatch
    Pointer to the array of dwRadarDetectionFFTPatch, size of this array is numReturns.
    Definition: Radar.h:270
    float32_t Vy
    Y-component (m/s) of the velocity.
    Definition: Radar.h:192
    bool sensorDisturbed
    Indicates if the sensor is disturbed due to interference.
    Definition: Radar.h:326
    float32_t elevationDeviation[DW_RADAR_RANGE_COUNT]
    Definition: Radar.h:317
    dwRadarDetectionProbability const * detectionProbability
    Pointer to the array of dwRadarDetectionProbability, size of this array is numReturns.
    Definition: Radar.h:267
    bool sensorAligned
    Indicates if the sensor is aligned.
    Definition: Radar.h:320
    uint32_t sensorId
    Id of the sensor (vendor-specific)
    Definition: Radar.h:352
    uint32_t maxReturnsPerScan[DW_RADAR_RETURN_TYPE_COUNT][DW_RADAR_RANGE_COUNT]
    Max # of returns in any given scan.
    Definition: Radar.h:383
    float32_t pitch
    Pitch angle of sensor (radians)
    Definition: Radar.h:300
    uint32_t scanIndex
    Sensor-provided scan index.
    Definition: Radar.h:226
    float32_t radius
    Radial distance (m)
    Definition: Radar.h:207
    dwRadarModel radarModel
    Radar model of the current radar.
    Definition: Radar.h:399
    dwRadarScanAmbiguity radarScanAmbiguity
    Radar Scan ambiguity.
    Definition: Radar.h:251
    uint32_t id
    Radar-provided track id.
    Definition: Radar.h:168
    float32_t Vx
    X-component (m/s) of the velocity in the azimuth direction.
    Definition: Radar.h:137
    dwRadarDynamicState dynamicState
    Dynamic state of the object.
    Definition: Radar.h:177
    bool isReversed
    Indicates if the sensor is reversed from its default orientation.
    Definition: Radar.h:364
    float32_t y
    Y-position (m)
    Definition: Radar.h:183
    float32_t radius
    Radial distance (m)
    Definition: Radar.h:146
    float32_t azimuth
    Azimuth angle (radians)
    Definition: Radar.h:143
    float32_t Vy
    Y-component (m/s) of the velocity in the azimuth direction.
    Definition: Radar.h:140
    float32_t rcs
    Reflection amplitude (dB)
    Definition: Radar.h:152
    float32_t Vx
    X-component (m/s) of the velocity.
    Definition: Radar.h:189
    float32_t y
    Y-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:288
    dwRadarDetectionQuality const * detectionQuality
    Pointer to the array of dwRadarDetectionQuality, size of this array is numReturns.
    Definition: Radar.h:264
    float32_t x
    X-position (m)
    Definition: Radar.h:180
    float32_t Ax
    X-component (m/s^2) of the acceleration.
    Definition: Radar.h:195
    uint32_t packetsPerScan
    Definition: Radar.h:380
    float32_t radialVelocity
    Radial velocity (m/s)
    Definition: Radar.h:149
    float32_t radialVelocity
    Radial velocity (m/s)
    Definition: Radar.h:210
    void * data
    Pointer to the array of returns (to be casted based on return type) Size of this array is numReturns.
    Definition: Radar.h:255
    float32_t SNR
    Signal to noise ratio (dBr)
    Definition: Radar.h:161
    uint32_t numReturns
    Number of radar returns in this scan.
    Definition: Radar.h:238
    float32_t yawRate
    Yaw rate (radians/s)
    Definition: Radar.h:345
    float32_t dopplerAmbiguity
    Doppler ambiguity free range.
    Definition: Radar.h:241
    bool isSimulation
    Indicates whether the sensor is simulated.
    Definition: Radar.h:396
    uint32_t age
    Age of tracked object (in scans)
    Definition: Radar.h:171
    float32_t damping
    Damping of radome (db)
    Definition: Radar.h:361
    float32_t rcs
    Compensated reflection amplitude (dB)
    Definition: Radar.h:216
    uint8_t isDecodingOn
    Indicates whether decoding is enabled.
    Definition: Radar.h:371
    dwRadarScanMisc radarScanMisc
    Radar Scan miscellaneous fields.
    Definition: Radar.h:248
    float32_t z
    Z-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:294
    float32_t z
    Z-position (m)
    Definition: Radar.h:186
    float32_t azimuthRate
    Rate of change of azimuth angle (radians/s)
    Definition: Radar.h:204
    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.
    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_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
    Defines the return structure for a raw radar detection in sensor coordinates.
    Definition: Radar.h:129
    Defines the structure for reporting sensor mount position.
    Definition: Radar.h:350
    Defines the properties of the radar.
    Definition: Radar.h:369
    Defines the structure for a complete radar scan.
    Definition: Radar.h:224
    Defines the type of scan (combination of return type & range)
    Definition: Radar.h:115
    Defines the return structure for sensor status messages.
    Definition: Radar.h:277
    Defines the track which the radar provides.
    Definition: Radar.h:166
    Defines the structure for reporting current vehicle dynamics state.
    Definition: Radar.h:334
    struct dwSensorObject * dwSensorHandle_t
    Handle representing a sensor.
    Definition: Sensors.h:86
    人人超碰97caoporen国产