SIEMENS西门子台湾省台南市(授权)伺服电机一级代理商——西门子华东总代理
| 更新时间 2024-11-21 07:00:00 价格 请来电询价 西门子总代理 PLC 西门子一级代 驱动 西门子代理商 伺服电机 联系电话 15903418770 联系手机 15915421161 联系人 张经理 立即询价 |
状态字一共16位,实际上只用了9位,状态字主要用来描述指令执行后的状态,选中指令列表或程序中的某条指令,按F1键打开该指令的在线帮助,可以看到该指令执行后各状态位的状态,其中的0、1是指令执行后状态位的值,x表示该指令对状态位有影响,短划线“-”表示对状态位没有影响。点击其中绿色的“状态字”,可以查看对状态字各位的描述。
(1)首次检测位
状态字的第0位(Zui低位)为首次检测位,“/FC”前面的斜杠表示该位为0状态时有效,该位的状态为0表示一个梯形图程序段的开始,或指令为逻辑串(串并联电路块)的第一条指令。
首次检测位为0时,并不执行什么逻辑运算,程序段或逻辑串的第一条A、O、X指令只是将指令中的位变量的值传送给RLO,第一条AN、ON、XN指令将指令中的位变量的值作“非”运算后传送给RLO。如果A、O、X、AN、ON、XN不是第一条指令,则将执行相应的逻辑运算。
不是程序段或逻辑串的第一条指令时/FC位为1,输出类指令(=、R、S等)或与RLO有关的跳转指令将/FC位清零。
首次检测位与用户程序没有直接的关系,我觉得可以不管它。
(2)逻辑运算结果
状态字的第1位RLO为逻辑运算结果(Result of Logic Operation)。该位用来存储执行位逻辑指令或比较指令的结果。RLO很重要,在编程语言手册和STEP 7的帮助中经常会看到它。
逻辑运算包括“与”、“或”、“非”运算,触点的串联对应“与”运算,触点的并联对应“或”运算,常闭触点对应“非”运算。
(3)状态位
状态字的第2位为状态位(STA),执行位逻辑指令时,STA与指令中的位变量的0、1状态相同。
(4)或位
状态字的第3位为“或”位(OR),在先串联后并联的电路的逻辑运算中,OR位暂存上面的串联电路的“与”运算结果,以便进行后面的并联电路的“或”运算。输出指令将OR位复位,编程时并不直接使用OR位,我觉得也可以不管它。
可以用仿真软件和语句表的程序状态来查看每条指令执行后状态字各位的值。
上图中梯形图和语句表的程序和各变量的状态完全相同。
上面右图的方框中是程序运行时的程序状态监控结果,其中的STATUS WORD是状态字。因为RLO和STA很重要,可以单独监控它们。
可以看出,在执行完第3条指令和Zui后一条指令之后,状态字的Zui低位(首次检测位/FC)为0,执行其他指令后,/FC位为1。在执行完“O”指令和开始执行下一个梯形图程序段时,/FC位为0。
在仿真时改变I0.4~I0.7的值,可以看到它们所在行的STA的值随之而变,同时也会改变有关的RLO的值。例如将图中的I0.7改为1状态,前两条指令的“与”运算结果为1,可以看到第2条指令的RLO由0变为1,第3条指令的OR位也变为1,即B点的RLO被保存到OR位。
状态字的Zui低4位除了用于监控外,RLO还用于语句表中的4条跳转指令和梯形图中的状态位触点指令。下面举一个跳转指令的例子:
A I 0.0
FP M 0.0 //上升沿检测指令,上升沿时RLO为1
JCN m001 //不是I0.0的上升沿(RLO为0)则跳转到标号m001所在的行
…… //被跳过的指令
m001: NOP 0