(1)标准触点指令及其说明(见表)
表 标准触点指令及其说明,plc梯形图触点指令
(2)指令说明
标准触点就是常开触点和常闭触点。
常开触点对应的地址位为1状态时,该触点闭合,信号能流流经触点,逻辑运算结果(RLO)=“1”;常开触点对应的为0状态时,该触点打开,无信号能流流经触点,逻辑运算结果(RL0)=“0”。串联使用时,常开触点通过“与(AND)”逻辑链接到RLO位。并联使用时,常开触点通过“或(OR)”逻辑链接到RLO位。
常闭触点对应的为0状态时,该触点闭合,信号能流流经该触点,逻辑运算结果(RL0)=“1”;常闭触点对应的地址位为1状态时,该触点打开,无信号能流流经该触点,逻辑运算结果(RL0)=“0”。串联使用时常闭触点通过“与( AND)”逻辑链接到RLO位。并联使用时,常闭触点通过“或( OR)”逻辑链接到RLO位。
(3)编程示例(见图)
由图可看出,常开触点(11.0)、常闭触点(10.0)指令也可用于串联逻辑行的开始。CPU对语句表的条语句,如11.0的扫描称为扫描。扫描的结果(11.0的状态)被直接保存在RLO位中;在语句表的下一条语句,扫描到Q5.3的状态,并将这一扫描结果与RLO位中保存的上一次结果相“与”产生的结果,再存入RLO中,依次进行。在逻辑串结束处的RLO可作进一步处理,如赋值给Q4.2(=Q4.2)。
在梯形图指令中,标准触点间的“与”、“或”、“异或”操作没有相应的指令,需要通过触点标准指令搭接出来。
串联使用时,┤├或_┤/├通过“与( AND)”逻辑链接到RLO位。并联使用时,┤├或_┤/├通过“或(OR)”逻辑链接到RLO位。
在STEP 7中可以对整数、长整数和实数进行加、减、乘、除算术运算。算术运算指令在累加器1和2中进行,在累加器2中的值作为被减数或被除数。算术运算的结果保存在累加器1中,累加器1原有的值被运算结果覆盖,累加器2中的值保持不变。
CPU在进行算术运算时,不必考虑RLO,对RLO也不产生影响。学习算术运算指令必须注意算术运算的结果将对状态字的某些位产生影响,这些位是:CC1和CC0,OV,OS。在位操作指令和条件跳转指令中,经常要对这些标志位进行判断来决定进行什么操作。
l +I 16位整数相加指令
l -I 16位整数相减指令
l *I 16位整数相乘指令
l / I 16位整数除法指令
l +D 32位整数相加指令
l -D 32位整数相减指令
l * D 32位整数相乘指令
l / D 32位整数除法指令
l MOD 32位整数除法取余数指令
例3.7.1
L MW0 // 将MW 0中的值装入累加器1低字
L MW2 // 将MW 2中的值装入累加器1低字,累加器1低字中的原值移入累加器2低字
+I // 将累加器l低字和累加器2中的低字相加
T MW10 // 将运算结果送到MW 10
* FBD 格式
与STL语句表指令不同处在于多了使能输入端EN和使能输出端ENO。只有当I 0.0=1时,才进行加法运算。如果运算的结果超出范围或者I 0.0=0,则Q 4.0=0。
语句表( STL)是一种类似于计算机汇编语言的文体编程语言,由多条语句组成一个程序段(又称网络Network)。语句表适合于经验丰富的程序员使用,可以实现其他编程语言不能实现的功能。以简单的电动机起/停控制程序为例,对应的语句表( STL)程序如图(b)所示。
图 梯形图和语句表示例
公司用的是冗余的400CPU,CPU所有的指示灯全部闪烁,互为通讯的两个OLM模块的CH1灯不亮,CH2灯闪烁,未查明原因,经过对CPU重启后,CPU运行正常,OLM也正常,但是两天后,该路CPU进行了切换
同样的问题我也经历过,cpu所有灯亮。经咨询西门子技术中心,解释为非一般性的故障,需要出现这个问题时,通个一个软件来读取cpu的信息,然后反馈给德国去分析原因。
之后我重启CPU,运行正常,但随后的两个月出现了几次电源电池异常报警,更换电池后仍然出现该报警,换下来的电池测量为3.6V。
我判断原因可能为电源模块有问题,但之后为了保险起见,整套中央机架的硬件全部更换,之后正常使用。
1、两个CPU的master都亮黄色,都作为主CPU了。也就是说,之前的cpu故障,没有正常的切换到备用CPU。在切换的过程中出现了错误造成了两个cpu的灯全部闪烁。
2、两个CPU的同步模块指示灯也亮了,检查两个同步模块
3、cpu切换的原因从以下几方面着手:排查OLM故障的原因,检查之前作为主站的cpu下的CP模块和通讯模块是否正常。