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.

[参考译文] 通过以太网 UDP 从 Matlab / Simulink 向 Concerto F28M35H52C1发送数据

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/569592/sending-data-from-matlab-simulink-to-concerto-f28m35h52c1-via-ethernet-udp

亲爱的、大家好


我尝试通过 UDP 在主机 PC 和控制卡之间交换数据、但 出现了问题。

我已经在 https://www.mathworks.com/help/supportpkg/texasinstrumentsc2000concerto/examples/exchanging-ethernet-data-with-the-f28m3x-concerto-processor.html#responsive_offcanvas 网站上阅读并尝试了示例程序

在默认设置下、结果如下所示:

  

主机 UDP 接收块似乎没有发出任何内容、因此我再次尝试了。

首先、我尝试从 Concerto 向主机 PC 发送信号。


     

它发挥了作用。 然后、我尝试将数据从主机 PC 发送到 Concerto。

在这种情况下、我使用主机 UDP 发送块向 Concerto 发送命令、并尝试控制 LED。

无论我在常量块中设置0或1、LED 都会亮起、因此我猜 M3 UDP 接收块不会发出任何信号、因此该值仍然为0。  

是否需要执行任何其他设置才能从主机 PC 向 Concerto 发送数据?

提前感谢!

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

    请参阅此主题 e2e.ti.com/.../2087799中 Brian 的帖子

    MathWorks 对 C2000的支持:

    MathWorks 支持的主要链接是: www.mathworks.com/.../

    中提供了 C2000信息:

    文档- www.mathworks.com/.../search.html
    示例- www.mathworks.com/.../search
    MATLAB 答案- www.mathworks.com/.../index

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

    您好 Kuan Shen

    似乎您正在使用从主机到目标的广播。 是否确定主机和目标位于同一网络中?

    如果是、您能否做一件事情、您可以使用启用的子系统并根据 UDP 接收的状态为0来触发 LED。

    在 Concerto UDP 和 TCP 块中、状态为0表示接收已成功。 我在这里认为、由于采样时间不匹配或类似的任何原因、成功接收之后很快就会出现接收失败、从而导致 LED 再次关闭。

    因此、我认为最好的方法是根据状态触发 LED 或任何控制逻辑。

    请告诉我这是否可行。

    此致

    Sandeep

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

    尊敬的 Sandeep

    感谢您的回复。


    主机 PC 能够通过 UDP 从 Concerto 接收数据、因此我认为它们 位于同一个网络中。
    因此、根据您的建议、我测试了如下所示的使能子系统:

    之后、我将此使能子系统添加到了先前的程序中。

     我希望在运行主机程序后、发送到 LED 的值应保持为1、从而关闭 LED。 但是、结果仍然相同、也就是说、无论我在常量块中设置0还是1、LED 都会亮起。

    我是否误解了您对我说的内容、或者我以错误的方式使用了使能子系统?

    此外、如果此状态为0、则表示 Concerto 已成功接收到我要从主机 PC 发送到 Concerto 的数据、如何保存我需要的数据并确保可以在目标程序中使用它们?  

    非常感谢。

    此致、
    关申

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

    尊敬的 Sandeep

    我发现我误解了 M3 UDP 接收块状态的含义。

    我通过以下程序测试输出:状态:通过 LED:

    数据的输出值是奇怪的数字、关闭为0。

    Status 的输出值始终为1、 表示数据接收错误。

    这种情况是否与您的估计相同? 此外、如何解决此问题?

    此致、
    关申

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

    您好 Kuan

    我认为您使用启用的子系统的方式是错误的。 我更希望您根据状态等于0来读取数据。  

    请告诉我这是否能解决您的问题。 您可以在已启用的子系统块中添加任何要处理的数据。  

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

    尊敬的 Sandeep

    我尝试了以下程序:

    在此测试中、我将常量从主机 PC 发送到 Concerto、Concerto 应将该数据直接发回主机 PC。 此外、该常数将发送到 LED 以检查该常数。

    因此、我从发回数据中得到的值是0。 此外、LED 保持亮起、这意味 着"数据"输出始终为0。 但是、我实际上从主机 PC 发送的值是1。

    这是否意味着"状态"输出值始终为1、这意味着接收从未成功?

    如果可以、我是否可以仅通过修改程序来解决此问题?

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

    您好 Kuan

    我不明白这里会出现什么问题。 我看到这些模型看起来不错、只要您在启用的子系统内部所做的就是从输入复制到输出。  

    您能否验证数据是否通过 Wireshark 或其他设备正确地传输到目标? 在 Wireshark 中、我更想查看本例中的数据。  

    您能告诉我您使用的是哪个版本的 MATLAB 和 Concerto 支持包版本吗? 我认为这很重要、因为我们在1月针对 Concerto 支持包的以太网进行了一些修复。

    此致

    Sandeep

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

    尊敬的 Sandeep

    是的、在启用的子系统内、我所做的只是从输入复制到输出。

    我的 MATLAB 是2016a、支持包的版本是16.1.2、而不是最新版本。
    此外、感谢您的建议、尽管我不知道如何使用 Wireshark。 我将尝试找到一些有关这方面的信息。


    此致、
    关申

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

    尊敬的 Sandeep

    根据您的建议、我使用了 Wireshark 来检查数据。

    我运行了相同的程序、但我将数据类型从单个更改为 INT8。

    我在 Wireshark 中发现此数据与在主机 PC 模型中发送的常量具有相同的值。 此外、端口号与模型中的配置相匹配。

    这是否意味着数据已成功发送、但目标未接收到?  

    此致、
    关申

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Kuan
    我看到您正在进行 UDP 广播。 是否可以设置目标的 IP 地址? 在 UDP 中、无法知道目标是否已接收到该数据。
    此致
    Sandeep
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Sandeep

    它看起来工作正常。 太棒了!

    发送到目标的数据现在与发回主机 PC 的数据相同。

    非常感谢你的帮助。

    此致、
    关申