【问题标题】:Is there a good library for dealing with the Modbus protocol in .NET? [closed]是否有一个很好的库来处理 .NET 中的 Modbus 协议? [关闭]
【发布时间】:2010-09-08 11:07:57
【问题描述】:

有谁知道处理 Modbus 协议的好(最好是开源的)库?我看过一些图书馆,但我正在寻找一些人的个人经历,而不仅仅是谷歌前十名。我认为必须至少有其他人像我一样处理 PLC 和自动化硬件。

欢迎任何其他可能对您有帮助的材料...

【问题讨论】:

标签: .net open-source protocols plc modbus


【解决方案1】:

自从我在一家家庭自动化公司工作以来,过去几年我与设备进行了很多通信,但我们不使用 Modbus。我们使用 Web Services for Devices (WSD) 以标准和开放的方式进行通信,也称为Devices Profile for Web Services(DPWS)

在此期间,我确实听说过一个名为NModbus 的项目。它是一个用于使用 modbus 的开源库。我没有使用过它,但是查看该站点和 Google Code 上的 changesets,它看起来非常活跃。您可能想看一下,甚至参与其中。这是我听说的唯一一个以 .Net 为目标的库。

【讨论】:

  • 是的,我看到了nmodbus,它看起来还不错,但上次我尝试它的边缘有点粗糙。我会试一试。真的,我现在对阅读 WSD 很感兴趣。感谢您的链接!
  • 当然可以。 WSD确实是要走的路。 Modbus 是一个非常古老的协议,我知道你可能别无选择,但今天的设备开始以 WSD 为目标。
  • 为 NModbus 点赞:效果很好
【解决方案2】:

Modbus 是一个实现起来非常简单的协议。您需要的所有信息都可以在 Internet 上轻松免费找到。

如果您选择自己实施,我很乐意回答您在此过程中遇到的任何问题。

如果您选择使用 modbus 主库,我会寻找:

  • Modbust TCP 支持。
  • 基于 TCP/UDP 和 COM 端口的 Modbus RTU。
  • 可配置的字节交换、字交换
  • 可配置的“基本”地址,因此您可以选择地址 1 作为地址 0(听起来很愚蠢,但我更喜欢始终以与记录相同的方式指定地址)
  • 它必须支持读取多个地址作为一个块,但它需要灵活,如果块中的任何地址未使用/保留,某些 modbus slave 将返回错误。

【讨论】:

    【解决方案3】:

    AdvancedHMI 包含一个驱动程序包,它几乎适用于任何通信,但如果你想要的只是 Modbus,它可能有点重。 AdvancedHMI 也在积极开发中,拥有强大的用户群。 http://sourceforge.net/projects/advancedhmi/

    NModbus 似乎是最有可能继续开发的,并且有许多示例项目分散在互联网上。 https://code.google.com/p/nmodbus/

    我过去喜欢使用这个(通过 TCP 的 Modbus): http://www.codeproject.com/Tips/16260/Modbus-TCP-class

    Modbus 到 Siemens Logo PLC 有点不同。我有一个示例项目,可以根据要求发送。

    【讨论】:

      【解决方案4】:

      查看 Colway Solutions http://www.colwaysolutions.com 提供的产品。他们有一个独特的许可方案,您可以为您希望使用的每个 Modbus 功能代码付费。它不是免费的,但价格似乎很低。我还看到了该库的一些端口,用于一些流行的微控制器和 RTOS。

      【讨论】:

        【解决方案5】:

        FieldTalk Modbus 库 - 处理所有 Modbus 功能

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-07-09
          • 1970-01-01
          • 2018-11-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多