CLR ;逻辑结果复位
= "M780.1_ERR_71BR01" ;输出M780.1=0
L "PID548-718R01_LF" ;载入外部输入双字PID548
L DW#16#2000000 ;载入16进制的双字2000000
AD ;将PID548与16进制的双字2000000进行与操作
L L#0 ;载入0
<>D ;比较与操作的结果与O进行比较
JC M011 ;比较的结果不相等,则跳转到M011,相等,则往下执行
L "PID548-718R01_LF" ;载入外部输入双字PID548
DTR ;整数转到实数
L 2.594500+001 ;载入25.945
/R ;实形数据除以25.945
RND ;舍入到相邻的整数
L "DB251-A-SIGNALS".LF_POSITION_OFFSET ;载入DB251.DBW6的值
+I ;整数与DB251.DBW6的值相加
T "DB215-A-SIGNALS".LF_POSITION ;将相加的结果放到DB251.DBW0
JU M012 ;跳到M012
M011:L L#999999999 ;载入999999999
T "DB215-A-SIGNALS".LF_POSITION ;传递到DB251.DBW0
整个程序其实是判断外部输入PID548的第25位是否为0,如果不为0,则将DB251.DBW0的值进行初始化。如果为0,则对外部输入的PID548的值进行处理后,放置到DB251.DBW0中。
[此贴子已经被作者于2015/7/15 22:29:17编辑过]