S7-200系列PLC的内部资源
1. 输入映像寄存器 (I)
- 作用:读取外部开关、传感器等输入设备的物理状态。
- 例子 :一个常开按钮接在PLC的I0.0端子上。程序中的使用 :I0.0直接代表这个按钮的状态。当按钮被按下时,I0.0的状态为"1"(ON);松开时,为"0"(OFF)。程序会扫描这个状态来控制其他设备。
2. 输出映像寄存器 (Q)
- 作用:控制外部负载,如指示灯、继电器、接触器等。
- 例子 :一个指示灯接在PLC的Q0.0端子上。程序中的使用 :当程序逻辑使 Q0.0的状态为"1"时,PLC的Q0.0端子会输出24V电压,点亮指示灯。为"0"时,输出电压为0V,指示灯熄灭。
3. 变量存储器 (V)
- 作用:存储程序的中间结果或数据,如计算值、过程参数等。
- 例子 :一个自动包装机需要计数包装袋数量,设定每100袋暂停一下。程序中的使用 :可以用一个计数器(如C0)来计数袋数,然后将计数器的当前值传送到 VW100(V存储器的一个字)中保存。当 VW100的值等于100时,程序触发一个暂停信号。
4. 位存储器 (M)
- 作用:作为程序中的中间继电器,用于逻辑状态的暂存。
- 例子 :用一个启动按钮(I0.0)和一个停止按钮(I0.1)控制一个设备。要求实现"启动"信号自锁。程序中的使用 :可以使用 M0.0作为中间继电器。梯形图逻辑可能是:I0.0(启动)并联 M0.0的自锁触点,然后与 I0.1(停止)的常闭触点串联,最后输出到 M0.0线圈。这样,M0.0就记住了"启动"命令,即使按钮松开,M0.0也保持得电,直到停止按钮被按下。
5. 定时器 (T)
- 作用:实现延时或定时控制。
- 例子 :一台风机启动后,需要延时10秒后打开阀门。程序中的使用:使用一个接通延时定时器(TON),如T37。当风机启动信号(如Q0.0)为ON时,定时器T37开始计时。预设值(PT)设为100(100 x 100ms = 10s)。10秒后,T37的常开触点闭合,从而控制阀门(Q0.1)打开。
6. 计数器 (C)
- 作用:对输入脉冲进行计数。
- 例子 :对流水线上的产品进行数量统计。程序中的使用:一个光电传感器接在I0.2上,每通过一个产品,I0.2就产生一个脉冲。使用一个加计数器(CTU),如C0。将C0的预设值(PV)设为1000。每当I0.2有一个上升沿脉冲,C0的当前值就加1。当计数值达到1000时,C0的触点动作,可以触发满箱报警或复位信号。
7. 高速计数器 (HC)
- 作用:对频率远高于PLC扫描周期的脉冲信号进行计数。
- 例子 :连接一个伺服电机或步进电机的编码器,用于测量电机转速或精确定位。程序中的使用 :编码器的A相脉冲接到PLC的高速计数器专用输入端(如I0.0)。配置HC0为高速计数器模式。编码器每发出一个脉冲,HC0的当前值(如 HC0)就会自动加1,不受PLC扫描周期影响。程序可以定期读取 HC0的值来计算速度或位置。
8. 累加器 (AC)
- 作用:临时存储计算过程中的数据。
例子:进行数学运算,如将两个流量传感器的读数相加。
程序中的使用:
MOVW AIW0, AC0 // 将模拟量输入0(流量1)的值送入累加器AC0 +I AIW2, AC0 // 将模拟量输入2(流量2)的值与AC0中的值相加,结果存回AC0 MOVW AC0, VW200 // 将总流量值(AC0中的结果)传送到变量存储器VW200中保存
9. 特殊存储器 (SM)
- 作用:提供与PLC系统状态相关的信息,或用于配置PLC功能。
- 例子 :SM0.0 :始终为ON 。常用于调用需要一直运行的功能块,比如一个模拟量转换模块。SM0.5 :1秒时钟脉冲 (0.5秒ON,0.5秒OFF)。可用于实现一个指示灯的闪烁。例如:SM0.5直接控制 Q0.2,那么Q0.2上的指示灯就会以1秒为周期闪烁。SMB34 :用于设置定时中断0的时间间隔。例如,将其设为100(100ms),那么每隔100ms,PLC就会自动执行一次指定的中断程序,非常适合做高精度的定时采样。
10. 局部存储器 (L)
- 作用:用于子程序或中断服务程序内部的临时变量,避免与主程序变量冲突。
- 例子 :编写一个计算圆面积的子程序。程序中的使用 :主程序调用子程序时,将半径值通过输入参数(如 VB0)传递给子程序。在子程序内部,计算过程中的中间结果(如半径的平方 R*R)可以存放在 LB0(局部存储器字节0)等L地址中。当子程序执行完毕返回主程序后,LB0所占用的空间可以被系统回收用于其他子程序,避免了数据混乱。
11. 顺序控制继电器 (S)
- 作用:与顺序控制继电器指令(SCR)配合使用,将程序逻辑划分为一个个的步或状态。
- 例子 :一个简单的三步骤过程:Step1(注水)-> Step2(加热)-> Step3(排水)。程序中的使用 :使用 S0.0代表初始步,S0.1代表注水步,S0.2代表加热步,S0.3代表排水步。通过SCR指令,可以清晰地组织每个步的激活条件、本步要执行的动作(如 S0.1步时打开注水阀Q0.0)、以及转移到下一步的条件(如水位达到,I0.3为ON时,从 S0.1步转移到 S0.2步)。这使得复杂的顺序逻辑变得非常直观。