s7200通过485与称重变送器通讯

PLC是CPU226CN,两个485中的port1接的“USB-PPI”线缆,port0接称重变送器,具体名称为“TR700 数字式重量变送器”,照PLC手册上的自由口通讯例子写了个程序,好像读不到数据。
没有加变送器的时候实验过一些小程序,都能正常运行。现在的问题是不知道怎么把变送器中的数据读到PLC里。
变送器里的参数设置为:通讯地址02;9600bps;偶校验;8个数据位;通讯方式为连续方式;通讯速率为20次/s(所有波特率都可);通讯协议为串口通讯协议。
变送器显示传感器上的数据正常,变送器的16、17、18端分别接PLC的port0端口的8、3、1脚。
请问最简单可以用什么方法读到变送器的数据?我用自由口通讯的程序为什么读不到?是不是哪儿没有设置到位?谢谢

主程序
LD     SM0.1
MOVB   16#49, SMB30
MOVB   16#B0, SMB87
MOVB   16#0A, SMB89
MOVW   +5, SMW90
MOVB   18, SMB94
ATCH   INT_0:INT0, 23
ATCH   INT_2:INT2, 9
ENI
RCV    VB100, 0

中断0
LDB=   SMB86, 16#20
MOVB   10, SMB34
ATCH   INT_1:INT1, 10
CRETI
NOT
RCV    VB100, 0

中断1
LD     SM0.0
DTCH   10
XMT    VB100, 0

中断2
LD     SM0.0
RCV    VB100, 0

问题补充:
MOVB   16#49, SMB30不是做你说的那个事情么?这个变送器是借的,设置是用别人设好的,这种应该是最简单的吧

最佳答案

发一个通用的通讯程序:

MAIN:

LD          SM0.1

MOVB      XXX  ,    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

1  本程序只适用于单从站的问答式规约(包括modbus)。该程序为主站程序。

2  发送的数据放置在数据块,比如读取从站地址为16#12的寄存器的数据。校验提前算好,减轻PLC负担。

VB100  16#8  16#12  16#03  16#00  16#0A  16#00  16#02  16#E6  16#AA

3  不用考虑起始字符  结束字符等等,以下是通讯流程图,不论从站有无故障,询问不受影响。

4  9600波特率,从站回复13字节

5  校验程序可以放在主程序里,

有时间再发一个多从站的程序,程序大小和这个基本程序不变。  

提问者对于答案的评价:
还有很多要学啊

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日
下一篇 2020年11月1日

相关推荐

  • 高海拔PLC怎么选(4000米以上)

    我手里有个项目,用在青藏,海拔4000米以上,想选个PLC,功能相当于s7-200就可以,但是据说西门子的PLC不能用于4000米以上,向这种情况得怎么办啊?? 最佳答案 S7-3…

    SIMATIC S7-200 2021年7月4日
  • 传感器与s7-200接口问题

    经过仔细研究,个人认为如果S7-200接NPN型传感器,那“M”端应接24V;接PNP型传感器时,“M”端应接0.     &nb…

    SIMATIC S7-200 2021年7月5日
  • 西门子右移指令

    师傅你好  移位次数N与移位数据长度有关,如N小于实际的数据长度,则执行N次移位,如N大于数据长度,《重点这句则执行移位的次数等于实际数据长度的位数。》这句话是…

    2017年11月4日
  • S7-200的通讯中可能存在的问题

    在S7-200的PLC与PC通讯连接中总报错–通信超时,检查端口号,网络地址,波特率和连接电缆。我选用的是PC/PPI通讯方式,用的是USB-RS232然后再是RS23…

    SIMATIC S7-200 2021年7月5日
  • 6ES7 231-0HF22-0XA0能输入8路电流吗?

    看了选型手册不是太清楚,6ES7 231-0HF22-0XA0能输入8路电流吗? 问题补充:我的输入全是电流,现在怎样做才能用上这个模块? 最佳答案 8输入的EM231模…

    SIMATIC S7-200 2020年10月31日
  • s7-200模拟量输入模块的拨码开关

    s7-200模拟量输入模块的拨码开关和CPU型号有关系吗?比如CPU226更换为CPU224后模拟量输入模块需要重新进行拨码开关设置? 最佳答案 有关系的。如你题,cpu226的P…

    SIMATIC S7-200 2017年6月19日
  • Modbus库文件的问题

    我的软件是STEP 7 – MicroWIN V4.0 SP6。软件里找不到modbus库文件,看了以前的相关问题解决…

    SIMATIC S7-200 2020年10月31日
  • 224XP处理一路模拟量4-20MA时出现异常

    当输入4MA时,AIW0监控值为2200左右,断开时为0,按计算应为6400,请问这是不是正常的,(已并500电阻) 问题补充:电阻是两个250欧串的,是标准的500欧高精电阻&n…

    SIMATIC S7-200 2021年7月5日
  • G120与S200的USS通信不上

    问题如下:S200跟G120用USS通信,两台.分开一台一台地连时,很正常,一旦两台连起来(初始化地址已设为驱动两台的,线是菊花式连接).就出问题了,RDY灯跟BF灯不停在闪烁,还…

    SIMATIC S7-200 2018年12月2日
  • em223 可以独立运行吗

    em233 1pl22  这个扩展模块 在特殊情况下是否可以 独立运行 也就是说 不挂载s7-200主机的情况…

    SIMATIC S7-200 2018年3月6日