SET //将RLO(逻辑运算结果保存位)位置1,
SAVE //将RLO结果保存到BR位,以保证下面的程序可以执行。
= L 01 //将RLO位保存到L01临时存储区位
L #IN3 //装载#IN3这个变量到ACC1
SAVE //将RLO结果保存到BR位,以保证下面的程序可以执行。
ITD //将ACC 1中的数值转换为双整数
DTR //将ACC1的双整数转为浮点数,最终#IN3变成了浮点数,保存在了ACC1
SAVE //将RLO结果保存到BR位
L 1000000e+001 //装载100到ACC2
/R //ACC2除以ACC1,也就是100除以#IN3变量,结果保存在ACC1
JO M001 //如果有溢出那么跳转到M001
JU M002 //如果没有溢出那么跳转到M002
M001: CLR //清除RLO位
= L 01//RLO结果暂存到L01临时存储区
M002: T #IO9 //将ACC1的数据传送给#IO9变量
CLR //清除RLO位
A #STAT65 //检查#STAT65是否为1
NOT //对RLO取反
A #IN0 //检查#IN0是否为1
JCN M003 //如果以上逻辑运算结果为0跳转到M003
L #IO9 //如果逻辑运算结果为1,那么装载#IO9
T #STAT66 //将#IO9传送给#STAT66
L #IO9 //装载#IO9
T #IO10 //将#IO9传送给#IO10
L 0000000e+000 //装载00
T #STAT67 //创送00给#STAT67
M003: CLR //清零RLO
你这个是编译之后的程序,没有注释,无法解释其含义。
只能看明白作了哪些数据处理,如:
JU M005// 程序无条件跳转到M005标记段落继续执行
M006: L 0000000e+000// 标记M006, 装载00到累加器1
T #OUT34//将累加器1中的数据00传送到输出接口OUT34
其他指令请参考:S7-300和S7-400(STL)编程参考手册
我给你
ORGANIZATION_BLOCK 主程序:OB1
TITLE=程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD SM01
CALL SBR0
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCK SBR_0:SBR0
TITLE=子程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD SM00
MOVR 095, VD104
MOVR 005, VD112
MOVR 350, VD116
MOVR 300, VD120
MOVR 00, VD124
MOVB 100, SMB34
ATCH INT0, 10
ENI
END_SUBROUTINE_BLOCK
INTERRUPT_BLOCK INT_0:INT0
TITLE=中断程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD SM00
ITD AIW0, AC0
DTR AC0, AC0
/R 320000, AC0
Network 2
LD SM00
PID VB100, 0
Network 3
LD SM00
LPS
MOVR VD108, AC0
R 160000, AC0
ROUND AC0, AC0
DTI AC0, AC0
AW> AC0, 16000
MOVW 16000, AQW0
LRD
AW<= AC0, 0
MOVW 0, AQW0
LPP
AW> AC0, 0
AW<= AC0, 16000
MOVW AC0, AQW0
END_INTERRUPT_BLOCK
以上就是关于西门子S7-300程序中语句表每一句都是什么意思,求大神帮忙!全部的内容,包括:西门子S7-300程序中语句表每一句都是什么意思,求大神帮忙!、西门子S7-300 程序中语句表每一句都是什么意思,求大神帮忙!、求恒压供水plc西门子S7-200程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)