S7-1200搭建的 tcp通信 报文 开头校验信息如何设置

用S7-1200搭建的 tcp通信,可以正常通信,但是用串口助手接收到的是 动态报文  而我需要通信的服务器端为固定报文才会反馈信息的设备,可以 通过设置MB_client  设置为固定报文吗?如果可以的话该从什么地方设置呢?服务器端只有接收到 46 63开头的报文才会做出回应。第一次使用modbus tcp 可能有些表述的不太清楚的地方,还请多多包涵

最佳答案

不太明白楼主的意思!
对方是最直接的Tcp协议。我们可以建立TCP 连接,西门子的指令
 TCON    建立连接 
 TSEND   发送数据   指令接口可以指定我们发送的报文长度 (数据类型根据设备 建立)
TRCV   接收报文   (接受反馈信息)
对方是 MOdbus tcp  
 那直接调用 MB_client  与终端设备通讯   ,指令接口有一个MB_DATA_LEN
可以设定我们的报文长度  
小提示:
1   如果对方须接受 46 63 这两个数据 你可以在你的报文前两个字节填写默认值 46  63  直接调用
2  我记得去年做1200TCP走字符通讯时,报文地址 是从 DBX0.0 开始的    发送 10个字符。但是 终端设备只接收我定义的字符只有8个 报文开始两个字节是西门子内部的格式数据 无效的, 但是现在手里做了个1500项目,走TCP绝对地址(直接把我的PLC内部数据抛出去,上位机解析地址)没发现这个问题,最近没时间,有时间我再去研究下。
 3  ;通讯 参考西门子   S7-1200 Easy Plus 
  https://support.industry.siemens.com/cs/document/73600209/%E8%A5%BF%E9%97%A8%E5%AD%90-s7-1200-plc-%E6%8A%80%E6%9C%AF%E5%8F%82%E8%80%83-v3-2?dti=0&lc=zh-CN

提问者对于答案的评价:
如何设置 46 63 或者说在那个地方设置?可以举个简单的例子吗?谢谢

最佳答案作者回复:
哦,我说的报文是以DB块形式发出去,在DB块可以直接填写当前数据的默认值的!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc165676.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月10日 下午12:24
下一篇 2017年6月10日 下午12:24

相关推荐