s7200与第三方标准协议格式485RTU通讯

第三方通讯协议格式标准的485RTU,
发送码为 机器识别码+指令码+访问地址+内容/长度+CRC校验(详细内容格式见图)
请问,西门子这边程序,我可以使用Modbus 的MBUS_CTRL和MBUS_MSG这两个进行程序数据连接。
问题1:MBUS_CTR中校验写什么呢?
问题2:MBUS_MSG中Addr处选择读写类型改怎么填呢?(比如40001  就相当于VB40001 一样 是一个一个字的地址)
问题3:如果使用Modbus RTU这种不合适 ,那该用什么呢?谢谢各位大神

图片说明:

s7200与第三方标准协议格式485RTU通讯   

最佳答案

截图中的
1、MBUS_CTR中校验写什么呢?
这个检验是指校验方式,即从站的校验方式,它的值由从站的校验方式决定。
当从站的校验方式是“无校验” ,则写 0;  
当从站的校验方式是“奇较验” ,则写 1;  
当从站的校验方式是“偶较验” ,则写 2;  
2、问题2(以贴图为例):
帖图中上数第三行,00 18 读取寄存器的起始地址,前面的 0018H,将这个十进制的值换算成十进制,则为 24,24+1= 25,从站保持寄存器的地址是以 4 打头,中间用 0 充,则为 40025,那么 MBUS_MSG 指令:
Slave:3
RW:0;
Addr :写起始保持寄存器地址(十进制的) 40025; 
Count :4,注意这是与你附图不同的地方,附图中是8;所以有点怀疑是不是标准的MODBUS RTU 协议。
3、问题3
从图中看只是读取保持寄存器的长度与MODBUS RTU 不同,MODBUS RTU 要求是以字为单位的,但截图中是以字节为单位。
建议先用MODSCAN32 这个软件,测试从站的通讯。如果测试正确,则是标准的 MODBSU RTU 通讯。
4、如果MODSCAN32 可证明是 MODBUS RTU 通讯,则可以调用MODBUS库指令进行编程。
http://www.ad.siemens.com.cn/service/article/S7-200/S7-200modbus/Default.aspx
如果不是MODBUS RTU 协议,则只能用自由口编程了。
自由口通信常见问题
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-portal/MicroPower2013/Smart%20SMS/018.html
如何监视 S7-200 和串行设备之间的自由口通信
https://support.industry.siemens.com/cs/document/26726155

提问者对于答案的评价:
很详细,回答非常简单易懂!谢谢,以后多向大神学习

最佳答案作者回复:
互相学习,共同提高

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午12:15
下一篇 2021年7月5日 下午12:15

相关推荐

  • 数据调用

    300的背景数据块中的数据可否在其他功能中被调用!如FB1的背景数据块DB1中的TEMP变量可以被其他的功能或功能块调用吗? 最佳答案 300的背景数据块中的数据可否在其他功能中被…

    SIMATIC S7-200 2021年7月4日
  • 如何将一个16进制的1个字节是数转换成ASC码?

    在与仪表通信过程中,自由口与仪表进行数据包发送和返回的过程中,要将16进制的1个字节表示成对应当ASC码,我找手册怎么找也没这个功能啊,需要自己编模块吗? 最佳答案 仔细看手册,手…

    SIMATIC S7-200 2021年7月4日
  • 本人急需200plc的modbus库指令和200plc的uss库指令,谢谢

    请发到小弟邮箱,13549457560@163.com感激涕零! 最佳答案 http://pan.baidu.com/s/1eQezDLK百度云直接下载吧。 提问者对于答案的评价:…

    SIMATIC S7-200 2017年8月16日
  • MAP库问题4

    我在使用MAP库的MovAbsolute指令时,老是不能走第二步,执行位一个为1,方向输出也为1,只是方向位输出为0,才可以重新开始走第二次,请高手指都教 最佳答案 请参考:《Ab…

    SIMATIC S7-200 2020年10月31日
  • 200的4-20mA信号的程序

    如题问一下谁有200的4-20mA信号输入和控制输出的程序啊!能否给我发一份谢谢!! 最佳答案 举个例子:压力变送器(-0.1MPa~0.15MPa)的输出信号为DC4~20mA,…

    SIMATIC S7-200 2020年11月1日
  • 利用PID控制压力

    利用向导做的PID,能控制压力值在设定范围内吗?利用M235模块输入4—20mA,通过输出控制一台变频器,(现场压力值高,设定一个小于实际压力的值,驱动变频工作,到实际压力接近…

    SIMATIC S7-200 2018年12月7日
  • 支持S7-200 4.0版的仿真软件

    请问现在有支持S7-200  4.0版的仿真软件吗?我在网上搜了好几个都是支持3.1和3.2的.请赐教. 最佳答案 没有,不过简单的开关量的仿真可以用.复杂了就…

    SIMATIC S7-200 2021年7月5日
  • S7-200模拟量扩展模块接收变频器的频率反馈4-20ma是2线还是4线?

    你好!如题所述。另外,若是4线的话,频率反馈4-20ma的负端还要接到24V负端吗?为什么?谢谢 最佳答案 四线制的。两线制还是四线制是针对测量仪表来说的,无论现场如何只要模块不输…

    SIMATIC S7-200 2017年8月24日
  • s7200的通讯问题请教

    有一个系统,希望实现以下功能:采用仪表PID控制物料的配比(有7台仪表及配料设备),然后仪表将测量数据上传给PLC,PLC再和上位机进行数据交换,PLC将上位机设定值输出到仪表作为…

    SIMATIC S7-200 2021年7月5日
  • 中断程序内时间断电器

    S7-200中断程序内时间断电器为什么无法计时工作 最佳答案 中断程序中最好不要用时间继电器! 因为中断程序只是在遇到中断事件的时候扫描一次! !中断程序应该尽…

    SIMATIC S7-200 2017年6月24日

发表回复

登录后才能评论