为什么程序中只有RCV命令,在线监控却还报出XMT和RCV同时执行错误?怎样消除一直RCV接受状态?

有一个232转 485的转换器,扫描枪连接转换器的232端,转换器的485端口连接200PLC的通信口,
然后用西门子的RCV命令来接收扫描枪的数据就OK了

问题补充:
程序中同时出现执行XMT/RCV,如果是接收没结束,又执行接收是不是扫码枪就不能采集数据了? 我的程序是从现场upload过来的,可以下载在另一个PLC中还是出现了同时执行XMT/RCV错误,所以我怀疑是不是扫码枪通过RS232/PPI电缆连接到PLC有问题,即并没有采集到数据?

最佳答案

1 通讯报错:
0009   端口0中同时执行XMT/RCV
000B   端口1中同时执行XMT/RCV
 经常有人问,程序里只发送(XMT)或只接收(RCV),怎么会出现同时执行XMT/RCV呢?
 其实这个有4种可能:
 发送没结束,又执行发送
 接收没结束,又执行接收
 发送没结束,又执行接收
 接收没结束,又执行发送
 
 有3种解决方法:
 a 用沿来执行。
 b 在中断程序里来执行。
 c XMT用 SM4.5/ SM4.6来执行,RCV根据SMB86的条件来执行。

2 人为结束RCV:
一般执行XMT后,在发送完成中断里执行RCV,同时启动定时中断或者启动定时器或者执行开始间隔时间BITIM,计时时间到复位使能位SM87.7/SM187.7,同时执行RCV,这样结束RCV指令,比如定时中断里发送:
 LD     SM0.0
 R      SM87.7, 1
 RCV    VB0, 0
 S      SM87.7, 1
 
 LD     SM0.0
 DTCH   10
 
 LD     SM0.0
 XMT    VB100, 0

提问者对于答案的评价:
我想现在应该是扫码枪的问题,程序中一直在rcv,但是扫码枪没有采集都数据才导致这样的

专家置评

如果取消接收可采取“ 小 宝 – 初级技术员”的编程思路。

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

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

相关推荐