我们的完整技术支持人员不会监控此论坛。如果您需要员工成员的帮助,请从询问页面提交您的问题


登录要么登记在论坛中发布/答复。

TCPIP的Modbus.


amnons. 2月9日,2022 06:50 PM

CR1000可以使用NL121与Modbus一起使用TCPIP吗?我的传感器与Modbus协议一起使用,使用RS485连接到LAN,使用Modbus Poll等简单的测试程序,与Modbus RTU \ ASCII通过TCP / IP工作,但与CR1000带有NL121和Modbusmaster,它不起作用,任何想法?


jdavis. 2月10日,2022年12:01 AM

TCPOPEN()需要在程序中打开IP连接。它将将套接字编号返回变量。

使用该变量使用套接字编号for for for for for for modbusmaster()。

必须关闭与传感器连接的其他软件。RS485到LAN适配器只允许一个连接。此外,适配器必须具有Mobus Gateway Funtionality。Modbus TCP和Modbus RTU是不同的。网关转换。


amnons. 2月10日,2022 07:02 AM

jdavis.

谢谢你的答案,我做了tcpopen()但我没有使用套接字没有。作为comport但cr1000连接并发送modbus的命令,但如果我在tcpip上使用嗅探器,我会看到命令前有一些“数字”,使传感器不会回答命令

这是我在嗅探器中获得的删除:

{00} {00} {06} {01} {04} {04} {0} {00} {00} {00} {0a} {0a} {0a}

真正的命令是

{01} {04} {00} {00} {00} {00} {0a} {0a}


萨姆 2月14日,2022年12:48 AM

随时通信端口是TCP / IP,CR1000应根据TCP / IP实现指南上的Modbus消息传递发送Modbus / TCP。Modbus / TCP PDU之前应该有7个字节,称为MBAP标题。您从“嗅探器”的示例似乎很短。我会期待类似的东西

{00} {01} {00} {00} {00} {06} {01} {04} {00} {00} {00} {0A}

在哪里

{00} {01}是事务ID

{00} {00}是协议ID

{00} {06}是长度,即遵循的字节数

{01}是单位标识符,即Modbus设备地址

我不相信CR1000具有ModbussLave / Modbusclient模式,允许Modbus RTU通过原始TCP连接。同样,随时通信端口是TCP / IP,CR1000将使用Modbus / TCP实现而不是TCP实现上的Modbus RTU。

因此,您的“RS485到LAN”设备需要能够作为Modbus TCP / RTU网关运行。

来自CampBell SCI的NL201是可以作为Modbus TCP / RTU网关操作的设备的示例,将Modbus / TCP转换为Modbus RTU以及对Modbus / TCP事务ID进行RTU事务跟踪RTU事务。

登录要么登记在论坛中发布/答复。
Baidu