有一个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