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.

[参考译文] IWR1443BOOST:mmWaveStudio + IWR1443BOOST + DCA1000:使用 MATLAB 自动执行 Lua 脚本

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/791339/iwr1443boost-mmwavestudio-iwr1443boost-dca1000-automated-lua-scripting-with-matlab

器件型号:IWR1443BOOST
主题中讨论的其他器件:IWR1443

您好、TI 支持、

我正在尝试通过 mmWave Studio 用户指南第22节中提供的 MATLAB 代码来自动控制 mmWave Studio。 下面是我遵循的过程:

1.以管理员身份启动 mmWave Studio

2.在 mmWave Studio Lua Shell 中运行命令'RSTD.NetStart()'。 它返回 Nil (这是否假定发生?)。 Lua shell 如下所示:

>RSTD.NetStart ()>

3.运行'RSTD_Interface_Examples',这里是 MATLAB 输出:

RSTD_Interface_example
添加 RSTD 汇编
初始化
连接到 RSTD 客户端
的 RSTD 客户端无法连接到
mmWaveStudio 中的 mmWaveStudio 重新打开端口。 键入 RSTD.NetClose (),然后键入 RSTD.NetStart ()
Init_RSTD_Connection 内部错误 

因此,我尝试按照 MATLAB 输出的指示运行 RSTD.NetClose,然后运行 NetStart()。 这是 Lua Shell 输出。

>RSTD.NetClose ()
ans=0
>RSTD.NetStart
()> 

5. 再次运行 RSTD_Interface_example,但收到相同的错误消息

作为一种确认、mmWave Studio 可以与我们的 IWR1443 ES3.0和 DCA1000完美配合使用。

我们使用的 mmWave Studio 版本是2.00.00.02。 我在 用户指南中提供的"RSTD_Interface_Example"中注意到:  

RSTD_DLL_Path ='C:\ti\mmwave_studio 01_00_00_01\mmWaveStudio\clients\rttNetClientController\rttNetClientAPI.dll';

它引用 的是 mmWave_studio_01_00_00_01、它与我的版本不同。 这可能是导致问题的原因吗?

此外、我注意到 mmWaveStudio/Startup.lua 中有这个 automation_mode 变量、它与 Matlab 控制无关。 对吗?

我认为将 MATLAB 命令用作外部控制是一个非常酷的功能、希望它能够正常工作。 请帮帮我。

提前非常感谢!

齐亨  

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

    您是否将 RSTD_DLL_Path 更改为引用您在哪里保存了新版本的 mmWave Studio?

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

    谢谢 Chloe、

    我确实更改了 dll 的路径以匹配我的版本。 下面是我正在运行的修改后的 RSTD_Interface_Example.m:

    addpath (genpath ('.\')
    
    %初始化 mmWaveStudio .NET 连接
    RSTD_DLL_Path ='C:\ti\mmWave_studio 02_00_02\mmWaveStudio\Clients\RtttNetClientController\RtttNetClientAPI.dll';
    
    ErrStatus = Init_RSTD_Connection (RSTD_DLL
    )~ 300if)
    Disp ('Init_RSTD_Connection'内部错误);
    return;
    end
    
    %example Lua Command
    %strFilename ='C:\\ti\\mmwave_studio 01_00_01\\mmWaveStudio\\Scripts\\Example_script_AllDevices.lua';
    %Lua_String = sprintf ('ofile ("%s")'、strFilename);
    %ErrStatus =NetRttClient.lutra. 

    编辑:

    作为参考、这里是 Init_RSTD_Connection.m 我直接从文档中复制了这一内容、但未做任何修改。

    函数勘误状态= Init_RSTD_Connection (RSTD_DLL_Path)
    %This 脚本在
    
    运行脚本之前建立与 mmWaveStudio 软件%先决条件:% Type RSTD.NetStart () in mmWaveStudio Luashell 的连接。 如果
    没有错误、这将打开端口2777%返回30000。
    如果(strcmp ('rttNetClientAPI.rttNetClient.isconnect')、'')在打开 MATLAB 后首次运行代码、则%
    disp("添加 RSTD 组件");
    RSTD_Assembly = NET.addAssembly (RSTD_DLL_Path);
    ~"strcmp (RSTD_Assembly.classes{1}、'RtttNetClientAPI.RtttClient')
    DISP ('RSTD 装配体未正确加载。 Check DLL path');
    勘误状态=-10;
    返回
    结束
    init_RSTD_Connection = 1;
    elseif ~rttNetClientAPI.rttNetClient.isconnected ()%不是第一次但端口断开连接
    %原因:
    % Init 将重置已连接的值。 因此、应在 Init
    %之前检查 IsConnected、但是、isConnected 在打开 MATLAB 后第一次返回空(因为之前从未调用过 init)
    INIT_RSTD_Connection = 1;
    否则
    INIT_RSTD_Connection = 0;
    
    
    如果 Init_RSTD_Connection、则结束
    disp('Initializing RSTD client');
    ErrStatus = rttNetClientAPI.rttNetClient.Init();
    if (勘误状态~= 0)
    disp ("无法初始化 NetClient DLL");
    返回;
    结束
    disp('Connecting to RSTD client');
    ErrStatus = rttNetClientAPI.rttNetClient.Connect ('127.0.1'、2777);
    if (勘误状态~= 0)
    disp ("无法连接到 mmWaveStudio");
    disp ('reopen port in mmWaveStudio。 键入 RSTD.NetClose (),然后键入 RSTD.NetStart()')
    返回;
    结束
    暂停(1);%等待1秒。 不是必须要去的地方
    结束
    
    中断("将测试消息发送到 RSTD");
    Lua_String ='WriteToLog ("从 MATLAB 运行脚本\n"、"绿色环保");
    ErrStatus = RtttNetClientAPI.RtttNetClient.SendCommand (Lua_String);
    if (ErrStatus ~= 30000)
    disp ('mmWaveStudio 连接失败');
    end
    disp ('Test message sumceed');
    end
    

    齐亨

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

    请通读之前的 E2E 帖子、了解有关将 mmWave Studio 与 Matlab 结合使用的更多信息和示例脚本。

    e2e.ti.com/.../735202

    希望这对您有所帮助。

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

    下面是我所做的:
    我遵循了您提供的链接 :e2e.ti.com/.../735202
    这是指 e2e.ti.com/.../713352上的这篇文章
    这是指 e2e.ti.com/.../2627526上的这篇文章

    最后,在上一篇文章中,它提到我需要手动更改此文件'mmWaveStudio.exe.config',在第5行中:将"RTTT.Properties.Settings"更改为"RSTD.Properties.Settings"。

    现在、当我在 Lua Shell 中运行 RTSD.NetStart 时、它返回0并开始侦听端口2777。

    希望您可以在下一个版本中解决此问题、这样人们就不必完成我所做的流程。

    谢谢、
    -Ziheng