I can track with "2D option" in GtrackLib.
Next, I'd like to track with "3D option", but I do not know how to pass data to STEP processing.
"GTRACK_measurementPoint" is in the parameter of "gtrack_step".
typedef struct { union { /** @brief Measurement vector */ GTRACK_measurement_vector vector; float array[GTRACK_MEASUREMENT_VECTOR_SIZE]; }; /** @brief Range detection SNR, linear */ float snr; } GTRACK_measurementPoint;
"GTRACK_measurement_vector" is defined in the 3D option as follows.
/** * @brief * GTRACK Measurement vector * @details * The structure defines tracker measurement vector format */ typedef struct { /** @brief Range, m */ float range; /** @brief Azimuth, rad */ float azimuth; /** @brief Elevation, rad */ float elev; /** @brief Radial velocity, m/s */ float doppler; } GTRACK_measurement_vector;
Of these four members, "range", "azimuth" and "doppler" can set the data of "Point Cloud TLV" received from the IWR 1642.
However, I do not know what to set for "elev".
If the IWR 1642 is installed as follows, what is the value of "elev"?
- Installation height: 5 meters
- Depression angle: -30 degrees (-0.52 radians)
For your reference:
I set "elev" to "-0.52" and moved GtrackLib.
As a result, the value of "posZ" of the state vector converted by "gtrack_sph2cart" function is -33.9.
I thought that the calculation result that the Cartesian coordinate Z position is -33.9 is not appropriate.
Thanks.