S7200自由口通讯

我用S7200自由口与一个设备通讯,这个设备必须要向它发送询问命令以后才会回一个消息,所以只用XMT发送,马上再用RCV接收,一般情况下通讯能够正常,但是如果那个设备故障了,它就不回消息了,这时RCV就读不到结束符0A,那么SMB86一直是0,请问这时如何关掉RCV?
 我现在是检测到SMB86=0保持5秒后,认为通讯异常,然后我送16#30到SMB87禁用RCV,接着再送16#B0到SMB87打开RCV,这样做了以后,发现SMB86里面是128,请问,128是什么原因才出现的,如何解决?

问题补充:
我的通讯设置:
 SMB30  16#49
 SMB87  16#B0
 SMB89  16#0A
 SMB94  16#255

最佳答案

1 如何人为结束RCV接收状态?
 接收指令控制字节(SMB87/SMB187)的en位可以用来允许/禁止接收状态。可以设置en为“0”,然后对此端口执行RCV指令,即可结束RCV指令。
 即
 R SM87.7,1
 RCV VBX,0

 2 SMB86=128表示接收信息被用户禁止

提问者对于答案的评价:
感谢大家的回答;现在搞定了;因为我接收的信息没有开始字符,只有结束字符,一开始我用空闲线时间开始,但是与从站的配合有时候有问题,我设了空闲线时间是5MS,但是有时候从站在5MS内就回了消息,这样就会出错,而且用空闲线时间做,如果接受不到结束字符,就是说如果从站故障时没回消息,RCV就一直是0,不能结束,这时候理论上应该设SM87.7为0,再启动一起RCV,因为只有启动RCV,系统才会去看SM87.7,启动以后系统会发现RCV被禁用了,这时就会把RCV停止,这时去看SM86里面是128,表示RCV被禁用,然后再把SM86恢复为B0,开启RCV功能,同样要启动RCV一次来让系统知道,但是因为我的没有开始字符,不适合这样做,后来我用了任意字符开始,写16#49到SM30,16#BC到SM86,16#0A到SM89,16#0A到SMW90,1000到SMW92,100到SMB94,RCV启动后马上开始接受,接受到任意字符就认为开始,然后收到结束符认为结束,如果这个时间超过1000MS就超时,系统会把SM86写成4,这时再重新开始发送接收,如果还超时就一直循环,直到从站恢复通讯,PLC会立即恢复与从站的通讯

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

  • S7-200modbus与仪表通讯

    请问:西门子200作为主站,与下位三个只能仪表通讯。读取仪表数据。采用modbus协议。问题1:硬件如何连接,200与仪表之间怎么连接,需要什么硬件。问题2:仪表中读寄存器命令格式…

    SIMATIC S7-200 2020年11月1日
  • S7-200集成的通信口与RS422设备连接问题

    S7-200可以与带其它设备通信进行RS422通信吗?(在此不考虑通信协议)。由于200本身集成是485的,如果外部设备是422的,请问数据电平可以直连么?貌似不需要加485转42…

    SIMATIC S7-200 2020年10月31日
  • 如何让伺服精确停止

    各位大虾请帮个忙了,我在编写用EM253模块控制伺服电机程序,要求在检测到信号伺服在高速运行时候检测到信号时能够精确的停止,这该怎么写呀? 问题补充:工艺是允许的,但是如果减速后腰…

    SIMATIC S7-200 2020年11月1日
  • s7-200 plc 3个灯都亮什么

    s7-200 plc 3个灯都亮什么 最佳答案 猜你是说“STOP”、“RUN”、“SF”三个指示灯同时亮了。此时应该属于异常状态,至少“STOP”、“RUN”…

    SIMATIC S7-200 2020年11月1日
  • MODBUS_MASTER变频器通讯 报错代码8383

    只能读不能写  变频器读的地址是3210H  写的地址3200H   理论上读的地址比写的地址还大 …

    2021年7月5日
  • S7-200里如何处理DI点的反馈报警

    最笨的做法就是Q点输出后通过计时器延时检测I点反馈信号并报警;但当系统中DQ点太多,费的计时器也多,效率还低;有很忙好处理方式吗?例如写一个块,直接调用;块的输入Q,I,输出报警V…

    SIMATIC S7-200 2017年12月2日
  • 同一计算机,若同时安装有博途和STEP 7,会有冲突吗?

    我计算机原来安装有博途(TIA Portal V14),与1200联机使用正常.    因要用西门子200,故又装了V4…

    SIMATIC S7-200 2021年7月5日
  • s7-200 输入扩展能力

    请问我们现在要140点的开关量输入,20点的开关量输出。请问 问题补充:如果我现就128个输入点,20个输出点。 应该选择什么扩展模块,性价比高? 最佳答案 如果现就12…

    SIMATIC S7-200 2021年7月5日
  • 模拟量输出

    4mA对应6400 20mA对应32000 现在我有个数据是6400.23请问对应的电流是多少。现在我必须转换,该如何做? 最佳答案 6400-32000是整数…

    SIMATIC S7-200 2021年7月5日
  • S7-200存储卡读写

    请问S7-200存储卡读写方法,是直接通过D**读取,还是其它方法?谢谢! 最佳答案 《S7-200 可编程序控制器系统手册》下载地址:http://www.ad.sie…

    SIMATIC S7-200 2018年12月2日

发表回复

登录后才能评论