从带有USB转换器的Linux主机PC到RS-485网络的查询设备,我们有机会使用Modbus RTU或ASCII进行校验和。
考虑到我们使用的是Linux,我们可以自由地使用使用libmodbus或任何其他高级语言的C程序来使用ASCII。
每种应用程序协议的优缺点是什么?
我知道ASCII不是一个协议,但它的作用有点像一个应用协议。
这个帖子是有帮助的,但在我看来还不完全清楚。在第一印象,Modbus RTU应该更轻,因此更快,也许更安全的做CRC。
真实的世界体验将是伟大的!
发布于 2013-10-25 01:34:37
我使用Modbus ( 50+连接)或Modbus与可能的RS485不同的实用程序和监控设备进行了接口。我发现我经历过的最广泛使用的协议是Modbus RTU (通用支持的),只有少数设备支持Modbus ASCII。
如果你想要我对Modbus RTU和Modbus ASCII的真实世界的建议,我肯定会建议为Modbus RTU构建一个应用程序。Modbus协议的核心非常简单,创建这两种实现的工作实际上是一样的,但是(无论如何,在我的工作中) Modbus RTU在这个领域中要流行得多,至少目前是如此。
尽管如此,我越来越多地遇到Modbus TCP,取决于您想要进入多少Modbus,Modbus TCP正变得越来越受欢迎。协议实际上是相同的(没有CRC needed...TCP协议来处理这个问题),但是您必须处理网络层。我遇到的大多数较新的设备都支持Modbus TCP和Modbus RTU (仍然很少支持ASCII)。
我的2美分。祝好运!
发布于 2013-10-25 04:02:00
我投票给Modbus RTU,因为请求和响应比Modbus ASCII中的小。因此,它最大限度地减少了流量,增加了响应时间和整个系统生产力,允许将更多的设备连接到同一总线上。
发布于 2017-05-31 07:50:14
ASCII的唯一好处是它可以为人类所阅读,因此在某些情况下更容易排除故障。
大多数工业使用RTU,因为二进制协议的传输速度要大得多,而且它不应该被人类读取。
https://stackoverflow.com/questions/19569904
复制相似问题