wu32u2
耐得住挫折的打磨,我们将迸发出比钻石还璀璨的光芒——
级别: 论坛先锋
精华主题: 0
发帖数量: 1121 个
工控威望: 1474 点
下载积分: 1772 分
在线时间: 994(小时)
注册时间: 2010-03-01
最后登录: 2024-09-02
查看wu32u2的 主题 / 回贴
楼主  发表于: 2010-12-08 09:55
图片:
愿工控战友们少走弯路,积累经验,感谢njaolian,汇荣铝业,meiyouleya,sandy_love各位的热心帮助。
在rs指令上台达PLC和三菱plc有一点区别:同样在只接受数据的情况下,三菱不需要触发置位M8122便进入接收状态,台达PLC则每次需要上升沿触发置位M1122才能使RS指令进入接收状态。这样一来就出现一个问题:类似扫描枪这样的功能,在不能确定何时接收数据的情况下需要RS指令一直处于接收状态,则需要经常触发M1122(台达PLC的发送请求同比三菱的M8122的功能),但是接收数据时不能置位M1122否则将导致接受的数据丢失或缺损(我没注意到这一点,把M1122一直置位了,导致数据经常丢失——三菱PLC不需要置位M8122不存在这样的问题),现在采用一个定时器每隔两秒上升沿触发置位M1122,虽然这样仍然有可能在PLC接受条形码的时候M1122置位,但概率很小,昨天现场调试,两百次内数据无丢失,时间间隔越短则出现数据丢失的可能性会增加。。目前这方法也是权宜之计~
   希望对大家有所帮助,若有更好的办法彻底解决数据丢失,望大侠们不吝赐教,让像我一样的菜菜们学习点经验。付程序图
[ 此帖被wu32u2在2010-12-08 10:01重新编辑 ]
本帖最近评分记录:
  • 下载积分:+1(刻骨铭心) 热心助人!
  • 下载积分:+3(xqx666) 支持原创
  • 下载积分:+10(sjm213) 感谢分享
  • 成功的路上需要帮助
    lxhwawa
    级别: 略有小成
    精华主题: 0
    发帖数量: 275 个
    工控威望: 347 点
    下载积分: 1578 分
    在线时间: 297(小时)
    注册时间: 2009-02-27
    最后登录: 2025-01-03
    查看lxhwawa的 主题 / 回贴
    1楼  发表于: 2010-12-08 10:56
    楼主是否可以考虑用M1123来作为发信指令呢?
    楼主留言:
    昨天现场调试也试过用数据接收完成标志位M1123加逾时标志位M1129加M1002并联来触发M1122理论上可行,但实际中接受完成一次后就不能再次接收数据了。监控程序M1122未被触发,该联通的触点也都联通。所以就采用定时触发了。
    本帖最近评分记录:
  • 下载积分:+5(sjm213) 热心助人
    lxhwawa
    级别: 略有小成
    精华主题: 0
    发帖数量: 275 个
    工控威望: 347 点
    下载积分: 1578 分
    在线时间: 297(小时)
    注册时间: 2009-02-27
    最后登录: 2025-01-03
    查看lxhwawa的 主题 / 回贴
    2楼  发表于: 2010-12-08 12:01
    台达的M1123自动ON后,必须RESET后才能进行到下一个等待传送接受的状态,所以
    LD M1123
    ……
    SET M1122
    RST M1123
    你试试看这样做
    楼主留言:
    昨天这样编写的,试了下不能连续的接受。图在下面