山西西门子S7-200SMART模块代理经销商
起保停电路仅使用与触点和线圈有关的指令,无需编程元件做中间环节,各种型号PLC的指令系统都有相关指令,加上该电路利用自保持,从而具有记忆功能,且与传统继电器控制电路基本相类似,因此得到了广泛的应用。
在如图7.1所示的电路中,I0.0为起动按钮对应的常开触点,I0.1为停止按钮对应的常闭触点,分别用于提供起动和停止信号。按下起动按钮后,常开触点I0.0闭合,此时如果没有按下停止按钮,常闭触点I0.1闭合,如此线圈Q0.0“通电”,同时Q0.0对应的常开触点闭合。当释放起动按钮后,常开触点I0.0断开,但借助于已经闭合的Q0.0的常开触点和常闭触点I0.1,线圈Q0.0仍保持“通电”状态,此即所谓的“自锁”或“自保持”功能。只有按下停止按钮,常闭触点I0.1断开,线圈Q0.0才能够“断电”,同时Q0.0的常开触点断开。此后即使释放停止按钮,由于常开触点I0.0和Q0.0都处于断开状态,线圈Q0.0也无法“通电”。波形图如图7.1(b)所示。

图7.1 典型起保停电路
图7.1所示的起保停电路的逻辑表达式为Q0.0=(I0.0+Q0.0)·
。
式中等号左边的Q0.0为Q0.0对应的线圈,等号右边的Q0.0则是Q0.0的常开触点。
比较指令用于比较累加器1与累加器2中的数据大小,被比较的两个数的数据类型应该相同。如果比较的条件满足,则RLO为1,否则为0。状态字中的CC0和CC1位用来表示两个数的大于、小于和等于关系,见表4-33。
表4-33 指令执行后的CC1和CC0
CC1 | CC0 | 比较指令 | 移位和循环移位指令 | 字逻辑指令 |
0 | 0 | 累加器2=累加器1 | 移出位为0 | 结果为0 |
0 | 1 | 累加器2<累加器1 | - | - |
1 | 0 | 累加器2>累加器1 | - | 结果不为0 |
1 | 1 | 非法的浮点数 | 移出位为1 | - |
梯形图中的方框比较指令可以比较整数(I)、双整数(D)和浮点数(R)。方框比较指令在梯形图中相当于一个常开触点,可以与其他触点串连和并联。如图4-30所示,输入I0.6为1时,执行比较指令,当MW2<MW4时,且I0.3为1时,Q4.1得电为1。

图4-30 比较指令
定时器是实现PLC具有计时功能的计时设备,定时器还可产生一定宽度的脉冲,也可测量时间。定时器是一种由位和字组成的复合单元,定时器的触点由位表示,其定时时间值存储在字存储器中。
S7定时器的种类包括脉冲定时器(SP)、扩展脉冲定时器(SE)、接通延时定时器(SD)、保持型接通延时定时器(SS)和关断延时定时器(SF)。
在CPU的存储器中留出了定时器区域,该区域用于存储定时器的定时时间值。每个定时器为2B,称为定时字。在S7-300中,定时器区为512B,因此Z多允许使用256个定时器。S7中定时时间由时基和定时值两部分组成,定时时间等于时基与定时值的乘积。当定时器运行时,定时值不断减1,直至减到0,减到0表示定时时间到。定时时间到后会引起定时器触点的动作。
定时器的0~11位存放二进制格式的定时值,第12、13位存放二进制格式的时基。定时器字如图4-23所示。时基与定时范围见表4-30。

图4-23 定时器字
表4-30 时基与定时范围
时 基 | 时基的二进制代码 | 分辨率 | 定时范围 |
10ms | 00 | 0.01s | 10ms~9s_990ms |
100ms | 01 | 0.1s | 100ms~1m_39s_900ms |
1s | 10 | 1s | 1s~16m_39s |
10s | 11 | 10s | 10s~2h_46m_30s |
在CPU内部,时间值以二进制格式存放,占定时器字的0~9位。可以按下列的形式将时间预置值装入累加器的低位字:
1)十六进制数W#16#wxyz,其中的w是时间基准,xyz是BCD码形式的时间值。
2) S5T#aH_bM_cS_Dms,如S5T#18S。
时基代码为二进制数00,01,10和11时,对应的时基分别为10ms,100ms,1s和10s。
地址上升沿、下降沿检测指令见表4-29。
地址上升沿检测指令将<位地址1>的信号状态与存储在<位地址2>中的先前信号状态检查时的信号状态比较。如果有从0~1的变化,输出Q则为1,否则为0。
地址下降沿检测指令将<位地址1>的信号状态与存储在<位地址2>中的先前信号状态检查时的信号状态比较。如果有从1~0的变化,输出Q则为1,否则为0。
表4-29 地址上升沿、下降沿检测指令
地址上升沿检测 | 参 数 | 数据类型 | 存储区 |

| 位地址1被检测的位 | BOOL | L,Q,M,D,L |
位地址2存储被检测位上一个扫 描周期的状态 | BOOL | Q,M,D |
0单稳输出 | BOOL | I,Q,M,D,L |
地址下降沿检测 | 参 数 | 数据类型 | 存储区 |

| 位地址1被检测的位 | BOOL | L,Q,M,D,L |
位地址2存储被检测位上一个扫 描周期的状态 | BOOL | O,M,D |
0单稳输出 | BOOL | I,Q,M,D,L |
在梯形图中,地址跳变沿检测方块和RS触发器方块可被看做一个特殊常开触点。该常开触点的特性为:若方块的Q为1,触点闭合;若Q为0,则触点断开。
上升/下降沿检测指令在许多设备控制应用广泛,如检测位置与行程中仅检测一次动作时,往往将该信号转换成上升沿或下降沿脉冲后再使用,上升沿脉冲可以表示到达信号,下降沿脉冲可以表示离开信号。
RLO上升沿、下降沿检测指令见表4-28。
表4-28 RLO上升沿、下降沿检测指令
LAD指令 | STL指令 | 功能 | 操作数 | 数据类型 | 存储区 |
<位地址> - (P) - | FP<位地址> | RLO上升沿检测 | <位地址>存储旧 RLO的边沿存储位 | BOOL | I、Q、M、D、L |
<位地址> - (N) - | FN<位地址> | RLO下降沿检测 | <位地址> | BOOL | I、Q、M、D、L |
RLO上升沿检测指令识别RLO从0~1(上升沿)的信号变化,并且在操作之后以RLO=1表示这一变化。用边沿存储位比较RLO现在的信号状态与该地址上周期的信号状态,如果操作之前地址的信号状态是0,并且现在RLO=1,那么操作之后,RLO将为1(脉冲),所有其他的情况为0。在该操作之前,RLO存储于地址中。
RLO下降沿检测指令识别RLO从1~0(下降沿)的信号变化,并且在操作之后以RLO=1表示这一变化。用边沿存储位比较RLO现在的信号状态与该地址上周期的信号状态,如果操作之前地址的信号状态是1,并且现在RLO=0,那么操作之后,RLO将为1(脉冲),所有其他的情况为0。在该操作之前,RLO存储于地址中。
如果RLO在相邻的两个扫描周期中相同(全为1或0),那么FP或FN语句把RLO位清零。
山西西门子S7-200SMART模块代理经销商