This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] IWR1642:雷达车辆检测器安装与车道线之间的角度的代码修复

Guru**** 2481465 points
Other Parts Discussed in Thread: IWR1642

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/rf-microwave-group/rf-microwave/f/rf-microwave-forum/990926/iwr1642-code-fixes-for-the-angle-between-radar-vehicle-detector-installation-and-lane-line

主题中讨论的其他器件:IWR1642

您好,

      IWR1642用于雷达车辆检测、IWR1642上安装的电子警控杆弯曲,因此 IWR1642与道路未对齐结果,如何转换点云数据、我认为这会影响测试点的方位角。 如何在代码中修复此问题?

      假设 IWR1642安装在距离车道10度的位置、则算术运算为:方位角=方位角+ 10?或方位角=方位角- 10?

  • 点云数据结构如下所示:

  • /*用作点云数据参数的结构*/
    typedef 结构 mmw_message_point_t

    /*! @简要检测到的点范围、单位为 m */
    浮动范围;
    /*! @简要检测点方位角、单位为 rad */
    方位角浮动;
    /*! @简要检测点多普勒、单位为 m/s */
    浮点多普勒;
    /*! @短距离检测 SNR、线性*/
    浮点 SNR;
    } MMW_MESSAGE_POINT;
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    您必须查看代码以了解如何计算这些值、并 在此处进行所需的偏移更改/修改。

    请参阅 OOB 的 doxygen 以了解各种代码块

     通常位于: file://:/ti/mmwave_sdk_03_04_00_03/packages/ti/demo/xwr68xx/mmw/docs/doxygen/html/index.html

    谢谢、

    Vaibhav

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

         我在您提供的工具 tm_demo.exe 中看到了配置。 它是我的问题中描述的角度校正参数的配置吗?下图:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    请帮助我们了解您使用的演示/实验。

    通常、GUI 演 示值用于调整 EVM 的倾斜、而不 是用于器件位置偏移。

     如果您显示了您所看到的与您所期望的内容相关的示例、这也会有所帮助

    谢谢、

    Vaibhav

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    我所提到的 TI 文档是 tracking_radar_targets_in_multiple_reflation_points.pdf、

    如上图所示、雷达坐标轴和水平坐标轴之间的角度为 α μ m、目标点相对于雷达坐标轴的角度为 φn μ m、

    然后、获得数据类型为 MMWDEMO_OUTPUT MSG_POT_CLOUD 的 IWR1642的点云数据、主数据结构如下:

    /*用作点云数据参数的结构*/
    typedef 结构 mmw_message_point_t

    /*! @简要检测到的点范围、单位为 m */
    浮动范围;
    /*! @简要检测点方位角、单位为 rad */
    方位角浮动;
    /*! @简要检测点多普勒、单位为 m/s */
    浮点多普勒;
    /*! @短距离检测 SNR、线性*/
    浮点 SNR;
    } MMW_MESSAGE_POINT;

    提出以下问题:

    IWR1642   α 反射点获得 φnthat 方位角代表的值?还是 φn +的值?

    2.我使用 TI 文档 Tracking_Radar_Targets_With Multiple_reflation_Points 中的相应算法

    用于获取车辆目标的接口如下:

    gtrack_step (gtrackHandle、

    (GTRACK_measurePoint *) PTR、

    null、

    inum、

    targetDescr、

    tNum (&T)、

    null、

    null);

    PTR 的结构如下、

    typedef 结构

    /**@简要范围,m */

    浮动范围;

    /**@短角,半径*/

    浮角;

    /**@短径向速度、m/s */

    浮点多普勒;

    /**@短距离检测 SNR,线性*/

    浮点 SNR;

    } GTRACK_measurePoint;

    输入参数传递的值为 ptr -> Angle 是多少?它是 φn +α?

    3.如上例所示,雷达坐标轴相对于水平坐标轴顺时针 α 旋转。 如果逆时针旋转 α º,则输入参数 PTR->被传入,角度为 φn º α º C?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您能否确认哪一项  

      1) 1)预编译二进制文件

      2) CFG 文件  

    您的项目基于什么? 这将让我知道是否有一些更容易的修改。

    但一般来说、您想简单地修改点云和跟踪对象的角度位置吗? 在 GTRACK 算法之外以及在 UART 传输之前执行此操作可能最简单。 这将确保算法按预期工作。  

    目前、这是我们的演示的工作方式、但它们考虑了 GUI 中嵌入式处理之外的传感器倾斜。 但可以很容易地将其添加到 MSS_MAIN 中的 UART 任务中。

    如果您有其他问题、请告诉我。

    此致、

    杰克逊

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    首先、我想确认我上面提出的三个问题以及与我理解的角度相关的计算是否正确、这是关键、请告诉我。

    2.我们能否通过在算法之外配置 CFG 文件来解决这个问题?您不必更改任何算法、对吧?我应该如何更改?

    3.如我的图片所述,我只想修改点云和跟踪对象的角度位置。 当前的思路是、除了 Gtrack 算法外、在接收到完整的点云数据帧后执行方位角计算、然后将其传输到 Gtrack 算法;

    4.如何更改 MSS_MAIN 以实现它?

    请帮助我解决我对这四个问题的疑问。 谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

         让我补充最后一个问题、

    以下是我的处理方法、请帮助我检查它是否正确。

    for (i = 0;i < ui32PointSize;i ++)

    memcpy (&G)_pointmsg[i]、
    sRadarDataBuf.u8RadarDataBuf[ui32TmpPos+i*sizeof (MMW_MESSAGE_POINT)]、
    sizeof (MMW_MESSAGE_POINT));


    memcpy (&fazimuth1、&sRadarDataBuf.u8RadarDataBuf[ui32TmpPos+i*sizeof (MMW_MESSAGE_POINT)+sizeof (float)]、sizeof (float));
    fazimuth1 = fazimuth1 + 0.017 * cOffsetAngle;//0.017 =π/180
    g_pointmsg[i].azimuth = fazimuth1;

    SetPointData (g_pointmsg、ui32PointSize);

    空 SetPointData (MMW_MESSAGE_POINT * ptr、int inum)

    …………
    gtrack_step (gtrackHandle、
    (GTRACK_measurePoint *) PTR、
    null、
    inum、
    targetDescr、
    tNum (&T)、
    null、
    null);

    …………

    解释:

    我的角度代码迁移实现如下、sRadarDataBuf u8RadarDataBuf 在接收完完整帧后用于存储的包含点云数据的 MMW_MESSAGE_point 结构、ui32PointSize 的点云数据的数量、

    和 sRadarDataBuf。 U8RadarDataBuf [ui32TmpPos + I * sizeof (MMW_MESSAGE_POINT)+ sizeof (float)]、用于雷达方位角反射点存储地址、

    azimuth1 = fazimuth1 + 0.017 * cOffsetAngle;//0.017等于 π/180。 CoffSetAngle 表示探测器相对于水平坐标系的偏移角度 α。 参考上图中的 α、该角度变量由上部计算机根据实际水平偏移进行配置。这一句的目的是校正方位角;

    g_pointmsg[i].azimuth = faximuth1;//回写更正后的 faximuth1参数。

    G_pointmsg  传递给 gtrack 步骤函数的 ptr 参数。

    那么、我是否正确地进行计算、以处理角度的偏差?如果不正确、您如何纠正它?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    帮助您修改和查看代码超出了论坛支持的范围。

    如回复中多次建议的那样 、请遵循以下流程:

    1.按  原样使用器件中的数据(x、y.z 信息)、然后根据应用方向在 该数据之上添加校正。  在器件外部执行此操作-获取正确的公式。

    2.然后将调整后的公式添加到 器件上的 C 代码中: (找到跟踪器结果块并在#1 至 C 代码之间添加修饰符)

    我们可以帮助您确定器件数据是否包含 GUI 角度/方向参数、但您可以 通过更改 GUI 中的角度设置并观察器件数据是否仅根据 GUI 更改来识别这一点。

    谢谢、

    Vaibhav