公司主营:数控系统,S7 -200PLC S7-300PLC S7-400PLC S7-1200PLC 6ES5 ET200 人机界面,
上海西皇电气设备有限公司
联系人:李工
咨询热线:15901795805
邮箱:158311669@qq.com
传真:021-57358110
咨询QQ:158311669
公司大量现货!!!
上海西皇电气设备西门子代理商库存大量西门子PLC,产品种类、型号齐全,涵盖了西门子200系列PLC、西门子300系列PLC及其EM221模块、EM222模块、EM223模块、EM231模块、EM232模块、EM235模块、PPI电缆、MPI电缆、5611卡、SM321、SM322、SM323、SM331、EM332模块等,S7-200系列主机包括CPU224CN、CPU226CN、CPU224XP,S7-300系列主机包括CPU312、CPU313、CPU314、CPU315-2DP等,价格低,交货速度快。
个人感觉好像用R、S更复杂一些,要考虑条件,经常出现R和S条件同时满足的情况,导致控制出问题。
答:采用赋值(=)还是R/S S/R要根据实际情况来确定的, R S指令能实现的功能,赋值(=)指令不一定可以实现,而赋值指令能实现的功能就一定可以用 R S指令来做到。
然而如果用 R S指令来替代赋值指令功能,则会导致程序指令数量大幅增加,使得简单程序变得更复杂,程序变得很冗长,也无形中加长了循环周期时长,对小程序来说影响不大,但对于复杂的大型程序来说这是不可取的,程序越精简,执行就越精准,用无谓的语句来使程序变复杂是编程的忌讳。就如楼上所举的例子,用赋值指令二条语句就能完成的,用R、S指令就至少需要4条指令。
“经常出现R和S条件同时满足的情况,导致控制出问题。”这就要看你的实际需要来选择R/S(置位优先)还是S/R(复位优先)了,选择R/S当条件同时满足时结果是1(置位),而选择S/R则当条件同时满足时结果为0(复位)。明白了这一点,就不会导致控制出问题了。
赋值指令和S R指令无所谓哪一个更好,要根据你的程序所需来确定。编程的原则是越简单越好,千万不要简单语句复杂化。
你需要了解r,s以及线圈的功能。线圈的功能就是保持线圈的值和状态位一致,r是状态为1复位输出,s状态为1置位输出。r,s可以保持输出状态状态,知道下一个指令改变输出值。
如果你用
A M0.0
S Q0.1
AN M0.0
R Q0.1
那么和
A M0.0
=Q0.1
的结果是一样的。
为了不让他们同时满足,你需要加跳转指令。