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

  • DriveWorks SDK Reference
    5.6.215 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/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
    124#pragma pack(push, 1)
    125
    127//# sergen(generate)
    128typedef struct dwRadarDetection
    129{
    132
    135
    138
    141
    144
    147
    150
    153
    156
    159
    163
    164typedef struct dwRadarTrack
    165{
    167 uint32_t id;
    168
    170 uint32_t age;
    171
    174
    177
    180
    183
    186
    189
    192
    195
    198
    201
    204
    207
    210
    213
    216
    220
    222typedef struct dwRadarScan
    223{
    225 uint32_t scanIndex;
    226
    229
    232
    235
    237 uint32_t numReturns;
    238
    241
    245
    248
    251
    254 void* data;
    255
    258
    261
    264
    267
    271
    272#pragma pack(pop)
    273
    275typedef struct dwRadarStatus
    276{
    282
    288
    294
    297
    300
    303
    304 /*
    305 * Deviation of azimuth angle for returns (radians)
    306 * This is the deviation of the measured azimuth from what would be
    307 * expected based on the geometric boresight of the sensor.
    308 */
    310
    311 /*
    312 * Deviation of elevation angle for returns (radians)
    313 * This is the deviation of the elevation azimuth from what would be
    314 * expected based on the geometric boresight of the sensor.
    315 */
    317
    320
    323
    326
    330
    333{
    336
    339
    342
    346
    349{
    351 uint32_t sensorId;
    352
    355
    358
    361
    365
    367typedef struct dwRadarProperties
    368{
    371
    373 uint32_t numScanTypes;
    374
    377
    380
    383
    390
    393
    396
    400
    401#ifdef __cplusplus
    402extern "C" {
    403#endif
    404
    417dwStatus dwSensorRadar_toggleScanType(bool const enable, dwRadarScanType const scanType, dwSensorHandle_t const sensor);
    418
    431
    451 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
    464
    483 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
    484
    497
    513 const uint8_t* const rawData, size_t const size, dwSensorHandle_t const sensor);
    514
    526
    538
    550
    551#ifdef __cplusplus
    552}
    553#endif
    554
    556#endif // DW_SENSORS_RADAR_RADAR_H_
    NVIDIA DriveWorks API: RadarScan
    dwRadarModel
    Defines the radar sensor model.
    Definition: RadarScan.h:44
    NVIDIA DriveWorks API: Sensors
    NVIDIA DriveWorks API: Core Types
    #define DW_API_PUBLIC
    Definition: Exports.h:54
    dwStatus
    Status definition.
    Definition: Status.h:170
    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:260
    float32_t velocity
    Longitudinal velocity (m/s)
    Definition: Radar.h:335
    uint32_t scansPerSecond
    Number of scans (of a particular type) per second.
    Definition: Radar.h:389
    float32_t confidence
    Confidence of object existence (range: 0-1);.
    Definition: Radar.h:173
    uint32_t inputPacketsPerSecond
    Number of input odometry packets per second.
    Definition: Radar.h:392
    bool elevationValid
    Indicates validity of z position.
    Definition: Radar.h:218
    dwRadarScanType scanType
    Type of scan.
    Definition: Radar.h:234
    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:257
    float32_t x
    X-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:281
    uint32_t supportedScanTypes[DW_RADAR_RETURN_TYPE_COUNT][DW_RADAR_RANGE_COUNT]
    Enumerates the types of scans supported by the radar.
    Definition: Radar.h:376
    dwRadarRange range
    Scan range.
    Definition: Radar.h:120
    uint32_t numScanTypes
    Number of supported scan types.
    Definition: Radar.h:373
    dwTime_t sensorTimestamp
    Sensor timestamp at which the current measurement scan was started (us)
    Definition: Radar.h:228
    bool sensorOK
    Indicaes if the is OK.
    Definition: Radar.h:322
    float32_t wheelbase
    Size of wheel-base (m)
    Definition: Radar.h:357
    float32_t Ay
    Y-component (m/s^2) of the aceleration.
    Definition: Radar.h:197
    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:341
    dwTransformation3f radarPosition
    Radar position.
    Definition: Radar.h:354
    float32_t azimuthDeviation[DW_RADAR_RANGE_COUNT]
    Definition: Radar.h:309
    float32_t radialAcceleration
    Radial acceleration (m/s^2)
    Definition: Radar.h:212
    dwTime_t hostTimestamp
    Host timestamp at reception of first packet belonging to this scan (us)
    Definition: Radar.h:231
    float32_t acceleration
    Longitudinal acceleration (m/s^2)
    Definition: Radar.h:338
    float32_t roll
    Roll angle of sensor (radians)
    Definition: Radar.h:302
    float32_t elevationAngle
    Angle of elevation (radians)
    Definition: Radar.h:155
    float32_t yaw
    Yaw angle of sensor (radians)
    Definition: Radar.h:296
    dwRadarScanValidity scanValidity
    Radar Scan validity If the signal is unavailable or invalid, the value of the signal will be the maxi...
    Definition: Radar.h:244
    bool sensorBlock
    Indicates if the sensor is blocked.
    Definition: Radar.h:328
    float32_t azimuth
    Azimuth angle (radians)
    Definition: Radar.h:200
    dwRadarDetectionFFTPatch const * detectionFFTPatch
    Pointer to the array of dwRadarDetectionFFTPatch, size of this array is numReturns.
    Definition: Radar.h:269
    float32_t Vy
    Y-component (m/s) of the velocity.
    Definition: Radar.h:191
    bool sensorDisturbed
    Indicates if the sensor is disturbed due to interference.
    Definition: Radar.h:325
    float32_t elevationDeviation[DW_RADAR_RANGE_COUNT]
    Definition: Radar.h:316
    dwRadarDetectionProbability const * detectionProbability
    Pointer to the array of dwRadarDetectionProbability, size of this array is numReturns.
    Definition: Radar.h:266
    bool sensorAligned
    Indicates if the sensor is aligned.
    Definition: Radar.h:319
    uint32_t sensorId
    Id of the sensor (vendor-specific)
    Definition: Radar.h:351
    uint32_t maxReturnsPerScan[DW_RADAR_RETURN_TYPE_COUNT][DW_RADAR_RANGE_COUNT]
    Max # of returns in any given scan.
    Definition: Radar.h:382
    float32_t pitch
    Pitch angle of sensor (radians)
    Definition: Radar.h:299
    uint32_t scanIndex
    Sensor-provided scan index.
    Definition: Radar.h:225
    float32_t radius
    Radial distance (m)
    Definition: Radar.h:206
    dwRadarModel radarModel
    Radar model of the current radar.
    Definition: Radar.h:398
    dwRadarScanAmbiguity radarScanAmbiguity
    Radar Scan ambiguity.
    Definition: Radar.h:250
    uint32_t id
    Radar-provided track id.
    Definition: Radar.h:167
    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:176
    bool isReversed
    Indicates if the sensor is reversed from its default orientation.
    Definition: Radar.h:363
    float32_t y
    Y-position (m)
    Definition: Radar.h:182
    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:188
    float32_t y
    Y-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:287
    dwRadarDetectionQuality const * detectionQuality
    Pointer to the array of dwRadarDetectionQuality, size of this array is numReturns.
    Definition: Radar.h:263
    float32_t x
    X-position (m)
    Definition: Radar.h:179
    float32_t Ax
    X-component (m/s^2) of the acceleration.
    Definition: Radar.h:194
    uint32_t packetsPerScan
    Definition: Radar.h:379
    float32_t radialVelocity
    Radial velocity (m/s)
    Definition: Radar.h:149
    float32_t radialVelocity
    Radial velocity (m/s)
    Definition: Radar.h:209
    void * data
    Pointer to the array of returns (to be casted based on return type) Size of this array is numReturns.
    Definition: Radar.h:254
    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:237
    float32_t yawRate
    Yaw rate (radians/s)
    Definition: Radar.h:344
    float32_t dopplerAmbiguity
    Doppler ambiguity free range.
    Definition: Radar.h:240
    bool isSimulation
    Indicates whether the sensor is simulated.
    Definition: Radar.h:395
    uint32_t age
    Age of tracked object (in scans)
    Definition: Radar.h:170
    float32_t damping
    Damping of radome (db)
    Definition: Radar.h:360
    float32_t rcs
    Compensated reflection amplitude (dB)
    Definition: Radar.h:215
    uint8_t isDecodingOn
    Indicates whether decoding is enabled.
    Definition: Radar.h:370
    dwRadarScanMisc radarScanMisc
    Radar Scan miscellaneous fields.
    Definition: Radar.h:247
    float32_t z
    Z-position (m) of sensor mounting in AUTOSAR-coordinates from CoG Estimated radar position/orientatio...
    Definition: Radar.h:293
    float32_t z
    Z-position (m)
    Definition: Radar.h:185
    float32_t azimuthRate
    Rate of change of azimuth angle (radians/s)
    Definition: Radar.h:203
    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
    The structs below are serialized in binary and the layout is assummed to be packed.
    Definition: Radar.h:129
    Defines the structure for reporting sensor mount position.
    Definition: Radar.h:349
    Defines the properties of the radar.
    Definition: Radar.h:368
    Defines the structure for a complete radar scan.
    Definition: Radar.h:223
    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:276
    Defines the structure for reporting current vehicle dynamics state.
    Definition: Radar.h:333
    struct dwSensorObject * dwSensorHandle_t
    Handle representing a sensor.
    Definition: Sensors.h:86
    人人超碰97caoporen国产