这是造纸厂的程序,有这么几个问题请教。
1.A #CalcEnable1
A #CalcEnable2
A #CalcEnable3
= #CalcEnable
L #vSlopeFactor
*R
L 2.000000e+000
*R
T LD 2
JC A7d2
L 0.000000e+000
T LD 6
JU A7d3
A7d2: L LD 2
T LD 6
A7d3: L LD 6
问题:JC A7d2之前的逻辑运算结果怎么判定?
2.第二个问题见截图2
问题:#TensionRef的值哪里来? #Avg_1.OUT是背景数据块里的值,难道没有逻辑的吗?
非常感谢!
图片说明:
最佳答案
1、JC A7d2之前的逻辑运算结果怎么判定?
、JC:RLO=1则跳转。方法:找JC指令最邻近影响RLO的指令。
在JC指令之前影响RLO的只有下述指令。
A #CalcEnable1
A #CalcEnable2
A #CalcEnable3
= #CalcEnable
即当 #CalcEnable=1时跳转。
、逻辑运算结果:状态字的第1位为RLO 位(RLO= “逻辑运算结果”),在二进制逻辑运算中用作暂时存储位。比如,一串逻辑指令中的某个指令检查触点的信号状态,并根据布尔逻辑运算规则将检查的结果(状态位)与RLO位进行逻辑门运算,然后逻辑运算结果又存在RLO位中。
2、#TensionRef的值哪里来? #Avg_1.OUT是背景数据块里的值,难道没有逻辑的吗?
从程序中看是将 #Avg_1.OUT中的值传送到#TensionRef中的,就是直接传送。
其他问题程序中看不出什么来了。也帮不了你了。
这需要你整个程序查找 #Avg_1.OUT与#TensionRef是什么数据类型?它们代表什么工艺要求。
提问者对于答案的评价:
谢谢前辈!
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc220536.html