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.

[参考译文] IWR1642BOOST:在1RX/1Tx 配置下删除静态杂波操作

Guru**** 2553420 points
Other Parts Discussed in Thread: IWR1642BOOST, IWR1443, IWR1642

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/937416/iwr1642boost-remove-static-clutter-operation-at-1rx-1tx-configuration

器件型号:IWR1642BOOST
主题中讨论的其他器件: IWR1443IWR1642

您好!

在 IWR1642BOOST OOB 演示中、我将尝试在1RX/1Tx 配置下进行杂波消除操作。

实验环境:
・SDK 2.0.0.4
・毫米波演示可视化工具2.0
-IWR1642BOOST 固定在没有移动物体的天花板上。 到天花板的距离为2.5m

选中"删除可视化工具的静态干扰"时、即使没有移动对象、仍会出现大约2.5m 范围配置文件的峰值、如下图所示。
对于4Rx/1Tx、不会出现这样的峰值、但您能否就为什么峰值出现在1RX/1Tx 给出一些建议?

此致、
原口弘之

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

    您好、Hiroyuki:

    在哪里可以选择在 OOB 演示可视化工具中启用静态干扰消除功能?  是否可以发送配置文件?

    最棒的

    Zigang

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

    您能否在静态干扰消除之前和之后发送该图?   

    顺便说一下、您的问题是否也出现在2TX4RX 选项上、还是刚刚出现在1TX1RX 选项上?

    最棒的

    Zigang

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

    您好、Zigang、

    感谢你的答复。

    4Rx/2TX 上不会出现此问题。 它仅发生在1RX/1Tx 中。
    附加了静态干扰消除开/关前后的配置文件和图。
    发送配置文件后、使用可视化工具的复选框打开/关闭静态干扰消除。

    配置文件:

    e2e.ti.com/.../3731.profile.cfg

    以前:

    之后:


    此致、
    原口弘之

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

    您好、Hiroyuki:

    是否还可以在杂波消除前后发送4RX2TX 和可视化工具图的配置文件?

    从图中可以看出、在消除杂波后、零点多普勒似乎不是很低。   您在配置文件配置中使用了非常大的空闲时间、是否可以尝试7us 的空闲时间、看看它是否相同?

    ProfileCfg 0 77 916 7 57.14 0 70 1 256 5209 0 30

    您使用的是非常早的 SDK 版本、是否可以切换到较新版本的 SDK?   您是否有任何理由必须使用1个 RX、您是否可以仅启用全部4个 RX 和1TX?   

    最棒的

    Zigang

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

    您好、Zigang、

    1。
    4rx/2tx 的配置文件和检查结果如下所示。
    配置文件:

    e2e.ti.com/.../profile_5F00_4rx2tx.cfg

    以前:

    之后:

    2.
    在1RX/1Tx 时、我确认 idleTime=7us、但结果相同。
    ProfileCfg 0 77 7 57.14 0 70 1 256 5209 0 30

    3.
    已确认 SDK 3.X 中不会出现相同的现象
    但遗憾的是、SDK 2.X 和1RX/1Tx 是强制性要求。


    此致、
    原口弘之

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

    您好、Zigang、

    通过更改以下源代码即可解决该问题。

    是否要查看此代码更改是否有效?

    SDK2.0.0.4 OOB 演示
    /mmwave_sdk_02_00_00_04/packages/ti/demo/xwr16xx/MMW/dss_data_path.c

    当为1RX/1Tx 时、应考虑 sourcePongAddressOffset=0就足够了、
    如下面的红色框中所示进行了更改。

    此致、
    原口弘之

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

    您好、Hiroyuki:

    我需要咨询软件专家、稍后再与您联系。

    最棒的

    Zigang

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

    您好、Hiroyuki:

    您能否尝试使用 SDK 2.1.0.4并检查您的问题是否存在?   如果 SDK 2.1.0.4不存在此问题、您可能可以比较这两个版本并找到修复程序。  

    最棒的

    Zigang

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

    您好、Zigang、

    在 SDK 2.1.0.4中也可以看到同样的现象。
    IWR1443+SDK 2.1.0.4不会发生这种情况。

    此致、
    弘之

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

    您好、Hiroyuki:

    IWR1443数据格式不同于 IWR1642、这也是 IWR1443器件正常的原因。  

    我不熟悉代码的这一部分。  但是您对 EMDA 缓冲区地址的更改实际上可以解决该问题。   

    最棒的

    Zigang

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

    您好、Zigang、

    我想知道 SDK 2.x 出现了什么情况、它具有 IWR1443的这种症状、因此我使用 IWR1443进行了检查。
    正如您所说、IWR1443和 IWR1642之间的源代码不同。
    由于这种情况和除1RX/1Tx 之外的配置中没有其他症状(例如、2RX/1Tx、4Rx/1Tx、4rx / 2TX)、因此在1RX/1Tx 时 IWR1642的源代码存在问题。 我认为可能有一些原因、因此我更改了2020年9月8日发布的源代码。

    请继续检查2020年9月8日发布的源代码更改的有效性。

    此致、
    弘之

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

    您好、Hiroyuki:

    以下是我发现的有关此错误的信息。

    最棒的

    Zigang

    --------------------------------------------------

    对于1TX 1RX 情况、多普勒 FFT 错误。 在每次交替迭代中都错误地对 EDMA 进行编程、如下所述。

     对于1TX 1RX 情况、每个乒乓多普勒 FFT 迭代应处理一个完整距离库(雷达立方体的1列)、直到消耗所有距离库、从而最终完成多普勒处理。 因此、EDMA 应从 radarCube [0]开始 ping、然后 pong 应从 radarCube 开始[1]、下一个 ping 应从 radarCube 开始[2]、下一个 pong 应从 radarCube 开始[3]、… 直到 radarCube [numRangeBins-1]。

     

    在当前实施中、我们有:

    Ping 从 radarCube [0]开始

    PONG 从 radarCube 开始[numRangeBins+1]

    Ping 从 radarCube 开始[2]

    PONG 从 radarCube 开始[numRangeBins+3]

    …μ A

    …μ A

     

    这意味着每个乓缓冲器都跳过雷达立方体矩阵的第一行。

    例如、对于第一个 pong 交互、pong 缓冲区的预期内容为:

    radarCube [1]、radarCube [numRangeBins+1]、radarCube [2*numRangeBins+1]、… radarCube [(numDopplerBIS-1)*numRangeBins + 1]

    但在当前的演示中、它实际上包含该内容

    radarCube [numRangeBins+1]、radarCube [2*numRangeBins+1]、… radarCube [numDopplerBins*numRangeBins +1]

    请注意、这是正确缓冲区的移位版本、最后一个元素是超出雷达立方体中当前距离库数据的无效数据。

     需要在以下位置进行修复:

    1. MmwDemo_dataPathConfigEdma()

    此处的 PONG 起始地址被编程为错误的值、但在处理时间(下一项)内将被覆盖、所以不太重要。

     

    1. MmwDemo_interFrameProcessing()

    在1TX 1RX 情况下的每次乒乓交互中、如果满足条件并且重新对 EDMA 进行编程(但仅触发一个、ping 或 pong)、则以下2个条件:

     

               if ((rangeIdx <(obj->numRangeBins - 1)))||(rxAntIdx <((obj->numRxAntins * obj->numTxAnt天 线)- 1))))

               {

                   if (rxAntIdx ==(obj->numRxAntan天 线* obj->numTxAntan天 线)-1))

                   {

                       EDMA_setSourceAddress (context->edmaHandle[MMW_DATA_PATH_EDMA_instance]、MMW_EDMA_CH_2D_IN_ping、

                           (uint32_t)&obj->radarCube [rangeIdx + 1]);

                       EDMA_setSourceAddress (context->edmaHandle[MMW_DATA_PATH_EDMA_instance]、MMW_EDMA_CH_2D_IN_PONG、

                           (uint32_t)&obj->radarCube [rangeIdx + 1 + sourcePongAddressOffset]);

     

     

    EDMA 乓地址编程应固定为在雷达立方体中具有正确的索引[]、如上所述。 这可以通过为1TX 和1RX 情况设置 sourcePongAddressOffset = 0来实现。 这种变化也会影响方位角计算(在处理链中进一步降低)、但方位角与1TX 1RX 情况无关。

     

    请注意、1TX 和2RX 或4RX 情况不受此问题的影响、无需更改

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

    您好、Zigang、

    根据我收到的错误信息、我了解可以通过设置 sourcePongAddressOffse=0来采取措施。
    收到有用的信息非常有帮助。
    谢谢你。

    谢谢、此致、
    弘之