我必须读取一些设备通过to 485-USB串行通信电缆连接的数据.设备使用modbus RTU,除了使用modbus ASCII的设备外。
我可以在同一电缆上讲两个协议吗?我认为RTU单元不响应ASCII请求,反之亦然,但是这会导致问题吗?有没有人试过这样做或者有过什么经验?
我在这里没有任何设备可以尝试,我必须直接在客户的位置设置所有的东西。
这将是我理想的配置
PC_USB----------RS485+RTU------RS485+RTU------RS485+RTU------RS485+ASCII
如果这不起作用,我将不得不切换到以下解决方案
PC_USB----------RS485+RTU------RS485+RTU------RS485+RTU PC_USB?USB 485+ASCII。
这将是非常麻烦的,因为一些限制硬件,电缆和位置。
发布于 2013-07-11 10:24:05
简短的回答是肯定的。只要消息不模棱两可,您就可以在RS485上说出任意多个协议。
我在一个共享的RS485线路上有许多PV逆变器,还有许多其他的传感器,它们讲的是完全不同的协议。这两类设备共享相同的线路,没有问题。
发布于 2013-07-11 15:10:04
这可能是个挑战..。获取规范这里的副本
我认为你必须试一试,并执行一个实际的测试,这是足够长的,看看它是否对你的目的足够好。
发布于 2014-10-23 12:30:53
是的,这是可以做到的,但如果您在开发代码时有确切的设备来验证操作,则会有所帮助。
我已经在LabVIEW中提出了一个"RS_232-485从机模拟器“,它只需要在串口上监听并捕获请求,解析请求,如果需要,提供一个硬编码的响应。
关键是串行参数必须都是相同的:波特、奇偶校验、位、停止位等等。我的默认值是9600,无,8,1。
这也适用于使用“=”和“#”作为消息的第一个字符的“特殊”RS-232设备。
这在设置新设备或软件、编写旧设备的软件驱动程序以及作为现有系统的故障排除工具时非常方便。
=有几个问题会让你感到困惑:
https://stackoverflow.com/questions/17590748
复制相似问题