S7-200plc通过自由口与热量表的MBUS模块进行MBUS通讯,通过通讯读取热量表中的供回水温度,水流量,以及累积热量值数据。
问题补充:
请大家注意了,我说的是MBUS协议,是meter-bus的简写,主要使用在热量表上的一个通讯协议,不是你们说的MODBUS协议。哪位做过这中编程,麻烦给讲解一下。谢谢各位了
最佳答案
如果找不相应的库文件,就只能自己写通信程序了,走自由口
具体的可以参考论坛里翼大侠的例子。
http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=3&a_id=636193&s_id=0&num=55#anch
这是他的例子
MAIN:
LD SM0.1
MOVB * , SMB30 //根据和对方约定的波特率,字符格式等设定
MOVB 16#9C, SMB87 //允许接收信息,使用SMB90值检察空闲状态,定时器是信息定时器 , 超过SMW92值停止接收
MOVW +80, SMW92 //根据报文长短,波特率及从站响应的快慢设定,这个时间要小于接收中断(INT3)里定时中断的时间。
MOVW +0, SMW90
MOVB 200, SMB94 //SMW94 最大接收字符数,这里无用,但必须要设置。
ENI
LD SM0.1
ATCH 接收:INT3, 9 //传输完成中断
MOVB 150, SMB34
ATCH 发送:INT2, 10 //定时中断
发送:
LD SM0.0
DTCH 10
XMT VB100, 0
接收:
LD SM0.0
RCV VB200, 0
MOVB 250, SMB34
ATCH 发送:INT2, 10
提问者对于答案的评价:
虽然不是很明白,但是有个例子研究一下也是很好的。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc306228.html