电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> PLC基础及应用 >> 正文

通用的PLC通讯程序

作者:佚名    文章来源:本站原创    点击数:    更新时间:2016-10-11
一个通用的plc通讯程序:
 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 校验程序可以放在主程序里,
 有时间再发一个多从站的程序,程序大小和这个基本程序不变。

Tags:plc,PLC通讯程序  
责任编辑:admin
  • 上一篇文章:
  • 下一篇文章:
  • 请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
    1分 2分 3分 4分 5分

    还可以输入 200 个字
    [ 查看全部 ] 网友评论
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
    返回顶部
    刷新页面
    下到页底
    晶体管查询