S7-200自由口通讯的监视分析方法

以下程序,执行过程中发生无规律的通讯中断且不自行恢复,STOP后RUN,再次M0.0置1后恢复通讯。将INT0中的ATCH挪到ENI前面后有改善,未再出现。但是不知道是不是根源。如何监视和分析自由口通讯的过程。请指教,是否有指令,寄存器或者程序,能够监视自由口通讯过程,如何使用的。源程序来自下面链接的发送程序,http://www.ad.siemens.com.cn/service/article/S7-200/S7-200freeport/Default.aspx#1_3。

图片说明:

S7-200自由口通讯的监视分析方法    S7-200自由口通讯的监视分析方法    S7-200自由口通讯的监视分析方法   

最佳答案

ENI是开中断指令。
一般常规编写程序的做法是先定义,定义通讯控制字节,定义通讯频率、定义通讯数据等,最后开中断。
如果把ENI写在前面,从理论上是不符号西门子编程环境的,西门子的思想是先定义后使用的原则,符合欧洲人的思维逻辑。
程序大致含义是:
首先定义通讯(自由口通讯参数)
定义通讯数据,由M0.0上升沿触发发送指令,即把上面定义好的数据发送出去
当发送完成进入发送完成中断,执行接收并再次定义接收完成中断(实际上这个完全可以在初始化程序段中编辑),你的问题是重新定义接收完成中断后,仍然需要定义ENI指令一次。
当接收完成后进入接收完成中断,你重新又再次定义定时中断_0 = 20,(mS)这里同样没有再次定义ENI。
当定时中断激活后,会在20mS的间隔发送你第一次定义好的数据。
我感觉你整体的程序架构不严谨,应该是初始化时,先定义好发送完成中断、接收完成中断,开中断,不需要定义定时中断的原因是自由口通讯是半双工通讯,一条通讯链路上只能有唯一的一条指令有效,而定义定时中断(它又不管你到底那条指令正常运行,或者指令没有运行,到点一定会发送一条指令的),这样会造成错误的几率会大。
正常应该是先定义通讯数据,完成后执行发送,在发送中断中编辑接收指令,在接收中断中再次编辑需要的发送指令,如此循环进行。
上述仅仅只是我是一点看法。

提问者对于答案的评价:
谢谢指教。收益匪浅。改过后偶尔会卡在发送中断,如何跳出,并恢复通讯?谢谢 。

最佳答案作者回复:
按我的思路,在发送完成中断中编写接收程序,在接收完成中断写发送程序,这个是我在编辑自由口通讯的工作经历,按此方法可以,不会产生指令之间的冲突。

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

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

相关推荐

  • Usb ppi 模式变成10位 不能通信

    请教,S7-200 通过usb-rs485/422,hightek转接头Hu04,通信问题,我用笔记本通信没有问题,用的com3口,ghost整个系统用两台不同台式电脑普…

    SIMATIC S7-200 2017年12月7日
  • S7-200端口不够用???如何增加?

    现在用的是224一个端口的,需要两个端口,少一个,换226,和224XP太麻烦,现场线已经接好,可以增加个什么端口模块吗???增加一个端口与触摸屏通讯。 最佳答案 你可以把PLC连…

    SIMATIC S7-200 2020年10月31日
  • EM231接线

    EM231  4输入模拟量模块,是否能同时既接二线制又接四线制电流信号? 最佳答案 完全可以,2线制、3线制、4线制均可同时接到EM231上。 参见《…

    SIMATIC S7-200 2021年7月4日
  • S7-200~

    西门子200最多扩展几个模块 最佳答案 最多可以扩展7个,建议购买《深入浅出西门子S7-200PLC》学习,祝你在找答案获得更多的知识。 提问者对于答案的评价:非常好 专家置评 已…

    SIMATIC S7-200 2017年8月18日
  • CPU226通讯问题

    CPU226模块在进行modbus通讯之后一段时间出现通讯异常现象,同样的程序下载至原PLC中和新PLC中,前者无法进行通讯,提示硬件探测到一个帧错误,后者可以通讯,这是什么原因?…

    SIMATIC S7-200 2017年6月5日
  • PLC 压力变送器、流量计

    求高手指教,怎么用PLC检测压力变送器及流量计能不能正常工作?或者说压力变送器和S7 200怎么进行连接?连接好后怎样才能检测变送器能不能正常工作?急急急!求大神指教 最…

    SIMATIC S7-200 2017年7月26日
  • 243-1安装位置

    存在与附加模块不符的向导配置, 最佳答案 CP243-1 模块位置没有特殊要求,出现这个问题在 STEP 7 Micro/WIN …

    SIMATIC S7-200 2017年11月19日
  • 200和变频器MODBUS通讯地址和采集的数据

    问题1:如图是英威腾变频器的通讯地址,这里如果读取运行频率,3000H,转换后再MBUS-MSG块的地址里填412289就好了,而如果要读取变频器状态1001H,后面的正转运行反转…

    2017年5月31日
  • 自己用PID指令编写的S7-200 PID程序,能否用PID调节控制面板来调试?

    自己用PID指令编写的S7-200 PID程序,能否用PID调节控制面板来调试? 问题补充:哪位能自己编写PID程序,或模糊控制程序,可以交流一下QQ:126417998…

    SIMATIC S7-200 2020年11月1日
  • 比程序能一键正反转吗

    比程序能一键正反转吗 问题补充:程序在此 图片说明:    最佳答案 这是一个没有充分利用plc工作机制的体型图。另外,西门子中间变量M区标志应该有字节和位的标…

    2021年7月5日

发表回复

登录后才能评论