0612 【万泉河】浅议PLC程序中SR和RS逻辑的区别 点击:103 | 回复:1



万泉河

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:74帖 | 62回
  • 年度积分:67
  • 历史总积分:413
  • 注册:2009年12月04日
发表于:2022-06-13 10:12:26
楼主

0612 【万泉河】浅议PLC程序中SRRS逻辑的区别

 

真是印证了一个道理, 越是简单的问题,争议越大。

 

这段时间连着写了几篇文章, 关于双线圈, 关于启保停等等,都是很基础的概念问题。 原本也没觉得有什么亮点。 也只是在一些直播视频讲座时灵机一动想到的,都是顺便一提, 提完了听众都听懂了。 然而觉得有必要写下来,给初学者有做启发和帮助。

 

没想到却一波一波的争议,各种质疑,非常不可理喻。

 

既然这样,那就再向下一点,下沉到最基本的SR/RS指令,来做个剖析。

 

PLC程序中通常有SR指令, RS指令, 以及分开的单独的RS指令。后者不提,只提前两者。

 

这两者有什么区别?

 

估计各位同行在学习PLC编程的第一天就遇到了。

编程手册上通常会教大家, RS指令, S指令在后面, S优先。 SR指令, R指令在后面, R优先。

 

然而“优先”这个关键词, 估计那时候大家第一次听说, 还有点烧脑。 烧过之后,真的后面的编程设计工作反而没什么机会遇到,然而烧了这一回, 很多人脑子中就形成了深刻的印象,也错以为是掌握了什么行业核心技能了。

 

指令的优先级,在编程中随处可见。 比如数学运算符之间,都是有优先级的。

 

然而,在实际的工作中, 通常很少有人会依赖于优先级进行编程。 反而在一些编程规范中, 会明确强调程序的易读性,禁止依靠优先级实现程序逻辑。

 

比如:

所以,一段别人写好的逻辑:

你没有必要从中读出I0.0还是I0.1优先级更高的潜台词, 更没必要抬扛什么如果恰巧I0.0I0.1同时发生,会有什么意外结果。并以此标榜自己发现了什么程序漏洞。 因为很大的可能性是, 实际现场中对这种偶然情形的发生根本不在乎。

 

因为,如果在乎,就应该直接在逻辑中体现,提醒编程者自己,也提醒后来的阅读者。

 

 

这时候, 如果I0.0I0.1同时发生,而逻辑上又确实有安全需求,不管后面使用的是SR还是RS 运行结果是一样的,都是以I0.1优先。

 

 

事实上, SMART 200TIA PORTAL中, 同样的梯形图符号SRRS 优先级好像还是颠倒的。 然而基于上述的规范, 你根本没必要记忆和发现他们。

 

所以,结论是,对于一个规范程序的作者和阅读者, SR逻辑和RS逻辑没有区别。

 

茴香豆的四种写法, 没有区别。 随便用其中的一种即可。

 

忘了它们吧!

 

https://cn.bing.com/th?id=OHR.SierraPonce_ZH-CN9720358958_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp


正在下载,请等待……
下载附件需0积分!

1分不嫌少!


楼主最近还看过



fighting2021

  • [管理员]
  • 精华:4帖
  • 求助:4帖
  • 帖子:1024帖 | 7244回
  • 年度积分:1290
  • 历史总积分:18898
  • 注册:2008年11月11日
发表于:2022-06-13 10:17:42
1楼

万老师,图片没传成功,得重新上传下


热门招聘
相关主题

官方公众号

智造工程师