西门子S7-200系列可编程控制器介绍
本章要点
l 西门子S7-200 CPU224可编程控制器的结构、性能指标
l 西门子S7-200 CPU224可编程控制器工作方式
l 扩展模块介绍
l S7-200系列可编程控制器编址、寻址方式
l 可编程控制器元件功能及地址分配
2.1 S7-200系列PLC概述
西门子S7系列可编程控制器分为S7-400、S7-300、S7-200三个系列,分别为S7系列的大、中、小型可编程控制器系统。S7-200系列可编程控制器有CPU21X系列,CPU22X系列,其中CPU22X型可编程控制器提供了4个不同的基本型号,常见的有CPU221,CPU222,CPU224和CPU226四种基本型号。
小型PLC中,CPU221价格低廉能满足多种集成功能的需要。CPU 222是S7-200家族中低成本的单元,通过可连接的扩展模块即可处理模拟量。CPU 224具有更多的输入输出点及更大的存储器。CPU 226和226XM是功能最强的单元,可完全满足一些中小型复杂控制系统的要求。四种型号的PLC具有下列特点:
(1)集成的24V电源
可直接连接到传感器和变送器执行器,CPU 221和CPU222具有180mA 输出。CPU224输出280mA,CPU 226、CPU 226XM输出400mA 可用作负载电源。
(2)高速脉冲输出
具有2 路高速脉冲输出端,输出脉冲频率可达20KHz,用于控制步进电机或伺服电机,实现定位任务。
(3)通信口
CPU 221、CPU222和CPU224具有1个RS-485通信口。CPU 226、CPU 226XM具有2个RS-485通信口。支持PPI、MPI通信协议,有自由口通信能力。
(4)模拟电位器
CPU221/222有1个模拟电位器,CPU224/226/226XM有2个模拟电位器。模拟电位器用来改变特殊寄存器(SMB28,SMB29)中的数值,以改变程序运行时的参数。如定时器、计数器的预置值,过程量的控制参数。
(5)中断输入允许以极快的速度对过程信号的上升沿作出响应。
(6)EEPROM 存储器模块(选件)
可作为修改与拷贝程序的快速工具,无需编程器并可进行辅助软件归档工作。
(7)电池模块
用户数据(如标志位状态、数据块、定时器、计数器)可通过内部的超级电容存储大约5 天。选用电池模块能延长存储时间到200天(10年寿命)。电池模块插在存储器模块的卡槽中。
(8)不同的设备类型
CPU 221~226 各有2种类型CPU,具有不同的电源电压和控制电压。
(9)数字量输入/输出点
CPU 221具有6个输入点和4个输出点;CPU 222具有8个输入点和6个输出点;CPU 224 具有14个输入点和10个输出点;CPU226/226XM 具有24个输入点和16个输出点。CPU22X主机的输入点为24V直流双向光电耦合输入电路,输出有继电器和直流(MOS型)两种类型。
(10)高速计数器
CPU 221/222有4个30KHz高速计数器,CPU224/226/226XM有6个30KHz的高速计数器,用于捕捉比CPU扫描频率更快的脉冲信号。
各型号PLC功能见表2-1。
2.2 S7-200系列CPU224型PLC的结构
2.2.1 CPU224型PLC外型及端子介绍
1. CPU224型PLC外型
CPU224型PLC外型如图2-1所示,其输入、输出、CPU、电源模块均装设在一个基本单元的机壳内,是典型的整体式结构。当系统需要扩展时,选用需要的扩展模块与基本单元连接。
图2-1 S7-200 PLC外型
底部端子盖下是输入量的接线端子和为传感器提供的24V直流电源端子。
基本单元前盖下有工作模式选择开关、电位器和扩展I/O连接器,通过扁平电缆可以连接扩展I/O模块。西门子整体式PLC配有许多扩展模块,如数字量的I/O扩展模块、模拟量的I/O扩展模块、热电偶模块、通信模块等,用户可以根据需要选用,让PLC的功能更强大。
2. CPU224型PLC端子介绍
(1)基本输入端子
CPU224的主机共有14个输入点(I0.0~I0.7、I1.0~I1.5)和10个输出点(Q0.0~Q0.7,Q1.0~Q1.1),在编写端子代码时采用八进制,没有0.8和0.9。CPU224输入电路参见图2-2,它采用了双向光电耦合器,24V直流极性可任意选择,系统设置1M为输入端子(I0.0~I0.7)的公共端,2M为(I1.0~I1.5)输入端子的公共端。
图2-2 PLC输入端子
(2)基本输出端子
CPU224的10个输出端参见图2-3,Q0.0~Q0.4共用1M和1L公共端,Q0.5~Q1.1共用2M和2L公共端,在公共端上需要用户连接适当的电源,为PLC的负载服务。
CPU224的输出电路有晶体管输出电路和继电器输出两种供用户选用。在晶体管输出电路中(型号为6ES7 214-1AD21-0XB0)中,PLC由24V直流供电,负载采用了MOSFET功率驱动器件,所以只能用直流为负载供电。输出端将数字量输出分为两组,每组有一个公共端,共有1L,2L两个公共端,可接入不同电压等级的负载电源。在继电器输出电路中(型号为6ES7 212-1BB21-0XB0),PLC由220V交流电源供电,负载采用了继电器驱动,所以既可以选用直流为负载供电,也可以采用交流为负载供电。在继电器输出电路中,数字量输出分为三组,每组的公共端为本组的电源供给端,Q0.0~Q0.3共用1L,Q0.4~Q0.6共用2L,Q0.7~Q1.1共用3L,各组之间可接入不同电压等级、不同电压性质的负载电源。如图2-4所示。
图2-3 PLC晶体管输出输出端子
图2-4 继电器输出形式PLC输出端子
(3)高速反应性
CPU224 PLC有6个高速计数脉冲输入端(I0.0~I0.5),最快的响应速度为30KHz用于捕捉比CPU扫描周期更快的脉冲信号.
CPU224 PLC 有2个高速脉冲输出端(Q0.0,Q0.1),输出频率可达20KHz,用于PTO (高速脉冲束)和PWM(宽度可变脉冲输出)高速脉冲输出。
(4)模拟电位器
模拟电位器用来改变特殊寄存器(SM28,SM29)中的数值,以改变程序运行时的参数。如定时器、计数器的预置值,过程量的控制参数。
(5)存储卡
该卡位可以选择安装扩展卡。扩展卡有EEPROM存储卡,电池和时钟卡等模块。存储卡用于用户程序的拷贝复制。在PLC通电后插此卡,通过操作可将PLC中的程序装载到存储卡。当卡已经插在基本单元上,PLC通电后不需任何操作,卡上的用户程序数据会自动拷贝在PLC中。利用这一功能,可对无数台实现同样控制功能的CPU22X系列进行程序写入。
注意:每次通电就写入一次,所以在PLC运行时,不要插入此卡。
电池模块用于长时间保存数据,使用CPU224内部存储电容数据存储时间达190小时,而使用电池模块数据存储时间可达200天。
2.2.2 CPU224型PLC的结构及性能指标
CPU224型可编程控制器主要由CPU、存储器、基本I/O接口电路、外设接口、编程装置、电源等组成(见图2-5)。
图2-5 可编程控制器结构
CPU224型可编程控制器有两种,一种是CPU 224 AC/DC/继电器,交流输入电源,提供24V直流给外部元件(如传感器等),继电器方式输出,14点输入,10点输出;一种是CPU 224 DC/DC/DC,直流24V输入电源,提供24V直流给外部元件(如传感器等),半导体元件直流方式输出,14点输入,10点输出。用户可根据需要选用。它们的主要技术参数参看表2-1~表2-4。
2.2.3 PLC的CPU的工作方式
1. CPU的工作方式
CPU前面板上用两个发光二极管显示当前工作方式,绿色指示灯亮,表示为运行状态,红色指示灯亮,表示为停止状态,在标有SF指示灯亮时表示系统故障,PLC停止工作。
(1)STOP(停止)。CPU在停止工作方式时,不执行程序,此时可以通过编程装置向PLC装载程序或进行系统设置,在程序编辑、上下载等处理过程中,必须把CPU置于STOP方式。
(2)RUN(运行)。CPU在RUN工作方式下,PLC按照自己的工作方式运行用户程序。
2. 改变工作方式的方法
(1)用工作方式开关改变工作方式。
工作方式开关有3个挡位:STOP、TERM(Terminal)、RUN。
把方式开关切到STOP位,可以停止程序的执行。
把方式开关切到RUN位,可以起动程序的执行。
把方式开切到TERM(暂态)或RUN位,允许STEP7- Micro/WIN32软件设置CPU工作状态。
如果工作方式开关设为STOP或TERM,电源上电时,CPU自动进入STOP工作状态。
设置为RUN时,电源上电时,CPU自动进入RUN工作状态。
(2)用编程软件改变工作方式。
把方式开关切换到TERM(暂态),可以使用STEP 7-Micro/WIN32编程软件设置工作方式。
(3)在程序中用指令改变工作方式。
在程序中插入一个STOP指令,CPU可由RUN方式进入STOP工作方式。
2.3 扩展功能模块
2.3.1 扩展单元及电源模块
1. 扩展单元
扩展单元没有CPU,作为基本单元输入/输出点数的扩充,只能与基本单元连接使用。不能单独使用。S7-200的扩展单元包括数字量扩展单元,模拟量扩展单元,热电偶、热电阻扩展模块,PROFIBUS-DP通信模块。
用户选用具有不同功能的扩展模块,可以满足不同的控制需要,节约投资费用。连接时CPU模块放在最左侧,扩展模块用扁平电缆与左侧的模块相连。
2. 电源模块
外部提供给PLC的电源,有24VDC、220VAC两种,根据型号不同有所变化。S7-200的CPU单元有一个内部电源模块,S7-200小型PLC的电源模块与CPU封装在一起,通过连接总线为CPU模块、扩展模块提供5V的直流电源,如果容量许可,还可提供给外部24V直流的电源,供本机输入点和扩展模块继电器线圈使用。应根据下面的原则来确定I/O电源的配置。
(1)有扩展模块连接时,如果扩展模块对5VDC电源的需求超过CPU的5V电源模块的容量,则必须减少扩展模块的数量。
(2)当+24V直流电源的容量不满足要求时,可以增加一个外部24V直流电源给扩展模块供电。此时外部电源不能与S7-200的传感器电源并联使用,但两个电源的公共端(M)应连接在一起。
I/O电源的具体参数可以参看表2-1~表2-4。
表2-1 CPU22X模块主要技术指标
型号
CPU221
CPU222
CPU224
CPU226
CPU226MX
用户数据存储器类型
EEPROM
EEPROM
EEPROM
EEPROM
EEPROM
程序空间(永久保存)
2048字
2048字
4096
4096字
8192字
用户数据存储器
1024字
1024字
2560字
2560字
5120字
数据后备(超级电容)典型值/H
50
50
190
190
190
主机I/O点数
6/4
8/6
14/10
24/16
24/16
可扩展模块
无
2
7
7
7
24V传感器电源最大电流/电流限制(mA)
180/600
180/600
280/600
400/约1500
400/约1500
最大模拟量输入/输出
无
16/16
28/7或14
32/32
32/32
240V AC电源CPU输入电流/最大负载电流(mA)
25/180
25/180
35/220
40/160
40/160
24V DC电源CPU输入电流/最大负载(mA)
70/600
70/600
120/900
150/1050
150/1050
为扩展模块提供的DC5V电源的输出电流
-
最大340mA
最大660mA
最大1000mA
最大1000mA
内置高速计数器
4(30KHz)
4(30KHz)
6(30KHz)
6(30KHz)
6(30KHz)
高速脉冲输出
2(20KHz)
2(20KHz)
2(20KHz)
2(20KHz)
2(20KHz)
模拟量调节电位器
1个
1个
2个
2个
2个
实时时钟
有(时钟卡)
有(时钟卡)
有(内置)
有(内置)
有(内置)
RS-485通信口
1
1
1
1
1
各组输入点数
4,2
4,4
8,6
13,11
13,11
各组输出点数
4(DC电源)
1,3(AC电源)
6(DC电源)
3,3(AC电源)
5,5(DC电源)
4,3,3(AC电源)
8,8(DC电源)
4,5,7(AC电源)
8,8(DC电源)
4,5,7(AC电源)
表2-2 电源的技术指标
特性
24V电源
AC电源
电压允许范围
20.4~28.8V
85~264V,47~63Hz
冲击电流
10A,28.8V
20A,254V
内部熔断器(用户不能更换)
3A,250V慢速熔断
2A,250V慢速熔断
表2-3 数字量输入技术指标
项目
指标
输入类型
漏型/源型
输入电压额定值
24V DC
“1”信号
15~35V,最大4mA
“0”信号
0~5V
光电隔离
500V AC,1min
非屏蔽电缆长度
300m
屏蔽电缆长度
500m
表2-4 数字量输出技术指标
特性
24V DC输出
继电器型输出
电压允许范围
20.4~28.8V
棗
逻辑1信号最大电流
0.75A(电阻负载)
2A(电阻负载)
逻辑0信号最大电流
10μA
0
灯负载
5W
30W DC/200W AC
非屏蔽电缆长度
150m
150m
屏蔽电缆长度
500m
500m
触点机械寿命
棗
10 000 000次
额定负载时触点寿命
棗
100 000次
2.3.2 常用扩展模块介绍
1. 数字量扩展模块
当需要本机集成的数字量输入/输出点外更多的数字量的输入/输出时,可选用数字量扩展模块。用户选择具有不同I/O点数的数字量扩展模块,可以满足应用的实际要求,同时节约不必要的投资费用,可选择8、16 和32 点输入/输出模块。
S7-200PLC系列目前总共可以提供3大类共9种数字量输入输出扩展模块,见表2-5。
表2-5 数字量扩展模块
类型
型号
各组输入点数
各组输出点数
输入扩展模块
EM221
EM221 24V DC输入
4,4
棗
EM221 230V AC输入
8点相互独立
棗
输出扩展模块
EM222
EM222 24V DC输出
棗
4,4
EM222 继电器输出
棗
4,4
EM222 230V AC双向晶闸管输出
棗
8点相互独立
输入/输出
扩展模块
EM223
EM223 24V DC输入/继电器输出
4
4
EM223 24V DC输入/24VDC输出
4,4
4,4
EM223 24V DC输入/24VDC输出
8,8
4,4,8
EM223 24V DC输入/继电器输出
8,8
4,4,4,4
2. 模拟量扩展模块
模拟量扩展模块提供了模拟量输入/输出的功能。在工业控制中,被控对象常常是模拟量,如温度、压力、流量等。PLC内部执行的是数字量,模拟量扩展模块可以将PLC外部的模拟量转换为数字量送入PLC内,经PLC处理后,再由模拟量扩展模块将PLC输出的数字量转换为模拟量送给控制对象。模拟量扩展模块优点如下:
最佳适应性。可适用于复杂的控制场合,直接与传感器和执行器相连,例如EM235 模块可直接与PT100 热电阻相连。
灵活性。当实际应用变化时,PLC可以相应地进行扩展,并可非常容易的调整用户程序。
模拟量扩展模块的数据如表2-6所示。
表2-6模拟量扩展模块
模块
EM231
EM232
EM235
点数
4路模拟量输入
2路模拟量输出
4路输入,1路输出
3. 热电偶、热电阻扩展模块
EM231热电偶、热电阻扩展模块是为S7-200 CPU222 CPU224和CPU226/226XM设计的模拟量扩展模块,EM231热电偶模块具有特殊的冷端补偿电路,该电路测量模块连接器上的温度,并适当改变测量值,以补偿参考温度与模块温度之间的温度差,如果在EM231热电偶模块安装区域的环境温度迅速地变化,则会产生额外的误差,要想达到最大的精度和重复性,热电阻和热电偶模块应安装在稳定的环境温度中。
EM231热电偶模块用于七种热电偶类型J 、K、 E、N、 S、 T 和R 型。用户必须用DIP 开关来选择热电偶的类型,连到同模块上的热电偶必须是相同类型。外型如图2-6所示。
图2-6热电偶、热电阻扩展模块
4. PROFIBUS-DP通信模块
通过EM 277 PROFIBUS-DP扩展从站模块,可将S7-200CPU连接到PROFIBUS-DP网络。EM 277 经过串行I/O总线连接到S7-200 CPU,PROFIBUS 网络经过其DP通信端口,连接到EM 277 PROFIBUS-DP 模块。EM 277 PROFIBUS-DP模块的DP端口可连接到网络上的一个DP主站上,但仍能作为一个MPI从站,与同一网络上如SIMATIC编程器或S7-300/S7-400 CPU等其它主站进行通信。
2.4 S7-200系列PLC内部元器件
2.4.1 数据存储类型
1. 数据的长度
在计算机中使用的都是二进制数,其最基本的存储单位是位(bit),8位二进制数组成1个字节(Byte),其中的第0位为最低位(LSB),第7位为最高位(MSB),如图2-7所示。两个字节(16位)组成1个字(Word),两个字(32位)组成1个双字(Double word),如图2-7所示。把位、字节、字和双字占用的连续位数称为长度。
二进制数的“位”只有 0和1两种的取值,开关量(或数字量)也只有两种不同的状态,如触点的断开和接通,线圈的失电和得电等。在S7-200梯型图中,可用“位”描述它们,如果该位为1则表示对应的线圈为得电状态,触点为转换状态(常开触点闭合、常闭触点断开);如果该位为0,则表示对应线圈,触点的状态与前者相反。
图2-7 位,字节,字和双字
2. 数据类型及数据范围
S7-200系列PLC的数据类型可以是字符串、布尔型(0或1)、整数型和实数型(浮点数)。布尔型数据指字节型无符号整数;整数型数包括16位符号整数(INT)和32位符号整数(DINT)。实数型数据采用32位单精度数来表示。数据类型、长度及数据范围如表2-7所示。
表2-7 数据类型、长度及数据范围
数据的长度、类型
无符号整数范围
符号整数范围
十进制
十六进制
十进制
十六进制
字节B(8位)
0~255
0~FF
-128~127
80~7F
字W(16位)
0~65 535
0~FFFF
-32 768~32 767
8000~7FFF
双字D(32位)
0~4 294 967 295
0~FFFFFFFF
-2 147 483 648~
2 147 483 647
80000000~7FFFFFFF
位(BOOL)
0、1
实数
-1038~1038
字符串
每个字符串以字节形式存储,最大长度为255个字节,第一个字节中定义该字符串的长度
3. 常数
S7-200的许多指令中常会使用常数。常数的数据长度可以是字节、字和双字。CPU以二进制的形式存储常数,书写常数可以用二进制、十进制、十六进制、ASCII码或实数等多种形式。书写格式如下:
十进制常数:1234 ; 十六进制常数:16#3AC6 ;二进制常数:2#1010 0001 1110 0000 ASCII码:“Show”;实数(浮点数):+1.175495E-38(正数), -1.175495E-38(负数)
2.4.2 编址方式
可编程控制器的编址就是对PLC内部的元件进行编码,以便程序执行时可以唯一地识别每个元件。PLC内部在数据存储区为每一种元件分配一个存储区域,并用字母作为区域标志符,同时表示元件的类型。如:数字量输入写入输入映象寄存器(区标志符为I),数字量输出写入输出映象寄存器(区标志符为Q),模拟量输入写入模拟量输入映象寄存器(区标志符为AI),模拟量输出写入模拟量输出映象寄存器(区标志符为AQ)。除了输入输出外,PLC还有其他元件,V表示变量存储器;M表示内部标志位存储器;SM表示特殊标志位存储器;L表示局部存储器;T表示定时器;C表示计数器;HC表示高速计数器;S表示顺序控制存储器;AC表示累加器。掌握各元件的功能和使用方法是编程的基础。下面将介绍元件的编址方式。
存储器的单位可以是位(bit)、字节(Byte)、字(Word)、双字(Double Word),那么编址方式也可以分为位、字节、字、双字编址。
1. 位编址
位编址的指定方式为:(区域标志符)字节号·位号,如I0.0;Q0.0;I1.2。
2. 字节编址
字节编址的指定方式为:(区域标志符)B(字节号),如IB0表示由I0.0~I0.7这8位组成的字节。
3. 字编址
字编址的指定方式为:(区域标志符)W(起始字节号),且最高有效字节为起始字节。例如VW0表示由VB0和VB1这2字节组成的字。
4. 双字编址
双字编址的指定方式为:(区域标志符)D(起始字节号),且最高有效字节为起始字节。例如VD0表示由VB0到VB3这4字节组成的双字。
2.4.3 寻址方式
1. 直接寻址
直接寻址是在指令中直接使用存储器或寄存器的元件名称(区域标志)和地址编号,直接到指定的区域读取或写入数据。有按位、字节、字、双字的寻址方式,如图2-8所示。
2. 间接寻址
间接寻址时操作数并不提供直接数据位置,而是通过使用地址指针来存取存储器中的数据。在S7-200中允许使用指针对I、Q、M、V、S、T、C(仅当前值)存储区进行间接寻址。
(1)使用间接寻址前,要先创建一指向该位置的指针。指针为双字(32位),存放的是另一存储器的地址,只能用V、L或累加器AC作指针。生成指针时,要使用双字传送指令(MOVD),将数据所在单元的内存地址送入指针,双字传送指令的输入操作数开始处加&符号,表示某存储器的地址,而不是存储器内部的值。指令输出操作数是指针地址。例如:MOVD &VB200,AC1指令就是将VB200的地址送入累加器AC1中。
(2)指针建立好后,利用指针存取数据。在使用地址指针存取数据的指令中,操作数前加“*”号表示该操作数为地址指针。例如:MOVW *AC1 AC0 //MOVW表示字传送指令,指令将AC1中的内容为起始地址的一个字长的数据(即VB200,VB201内部数据)送入AC0内。如图2-9所示。
图2-9 间接寻址
2.4.4 元件功能及地址分配
1. 输入映像寄存器(输入继电器)I
(1)输入映像寄存器的工作原理
输入继电器是PLC用来接收用户设备输入信号的接口。PLC中的“继电器”与继电器控制系统中的继电器有本质性的差别,是“软继电器”,它实质是存储单元。每一个“输入继电器”线圈都与相应的PLC输入端相连(如“输入继电器” I0.0的线圈与PLC的输入端子0.0相连),当外部开关信号闭合,则“输入继电器的线圈”得电,在程序中其常开触点闭合,常闭触点断开。由于存储单元可以无限次的读取,所以有无数对常开、常闭触点供编程时使用。编程时应注意,“输入继电器”的线圈只能有外部信号来驱动,不能在程序内部用指令来驱动,因此,在用户编制的梯形图中只应出现“输入继电器”的触点,而不应出现“输入继电器”的线圈。
(2)输入映像寄存器的地址分配
S7-200输入映像寄存器区域有IB0~IB15共16个字节的存储单元。系统对输入映像寄存器是以字节(8位)为单位进行地址分配的。输入映像寄存器可以按位进行操作,每一位对应一个数字量的输入点。如CPU224的基本单元输入为14点,需占用2×8=16位,即占用IB0和IB1两个字节。而I1.6、I1.7因没有实际输入而未使用,用户程序中不可使用。但如果整个字节未使用如IB3~IB15,则可作为内部标志位(M)使用。
输入继电器可采用位,字节,字或双字来存取。输入继电器位存取的地址编号范围为I0.0~I15.7。
2. 输出映像寄存器(输出继电器)
(1)输出映像寄存器的工作原理
“输出继电器”是用来将输出信号传送到负载的接口,每一个“输出继电器”线圈都与相应的PLC输出相连,并有无数对常开和常闭触点供编程时使用。除此之外,还有一对常开触点与相应PLC输出端相连(如输出继电器Q0.0有一对常开触点与PLC输出端子0.0相连)用于驱动负载。输出继电器线圈的通断状态只能在程序内部用指令驱动。
(2)输出映像寄存器的地址分配
S7-200输出映像寄存器区域有QB0~QB15共16个字节的存储单元。系统对输出映像寄存器也是以字节(8位)为单位进行地址分配的。输出映像寄存器可以按位进行操作,每一位对应一个数字量的输出点。如CPU224的基本单元输出为10点,需占用2×8=16位,即占用QB0和QB1两个字节。但未使用的位和字节均可在用户程序中作为内部标志位使用。
输出继电器可采用位,字节,字或双字来存取。输出继电器位存取的地址编号范围为Q0.0~Q15.7。
以上介绍的两种软继电器都是和用户有联系的 ,因而是PLC 与外部联系的窗口 。下面所介绍的则是与外部设备没有联系的内部软继电器。它们既不能用来接收用户信号,也不能用来驱动外部负载,只能用于编制程序,即线圈和接点都只能出现在梯形图中。
3. 变量存储器V
变量存储器主要用于存储变量。可以存放数据运算的中间运算结果或设置参数,在进行数据处理时,变量存储器会被经常使用。变量存储器可以是位寻址,也可按字节、字、双字为单位寻址,其位存取的编号范围根据CPU的型号有所不同,CPU221/222为V0.0~V2047.7共2KB存储容量,CPU224/226为V0.0~V5119.7共5KB存储容量。
4. 内部标志位存储器(中间继电器)M
内部标志位存储器,用来保存控制继电器的中间操作状态,其作用相当于继电器控制中的中间继电器,内部标志位存储器在PLC中没有输入/输出端与之对应,其线圈的通断状态只能在程序内部用指令驱动,其触点不能直接驱动外部负载,只能在程序内部驱动输出继电器的线圈,再用输出继电器的触点去驱动外部负载。
内部标志位存储器可采用位、字节、字或双字来存取。内部标志位存储器位存取的地址编号范围为M0.0~M31.7共32个字节。
5. 特殊标志位存储器SM
PLC中还有若干特殊标志位存储器, 特殊标志位存储器位提供大量的状态和控制功能,用来在CPU和用户程序之间交换信息,特殊标志位存储器能以位、字节、字或双字来存取,CPU224的SM的位地址编号范围为SM0.0~SM179.7共180个字节。其中SM0.0~SM29.7的30个字节为只读型区域。
常用的特殊存储器的用途如下:
SM0.0:运行监视。SM0.0始终为“1”状态。当PLC运行时可以利用其触点驱动输出继电器,在外部显示程序是否处于运行状态。
SM0.1:初始化脉冲。每当PLC的程序开始运行时,SM0.1线圈接通一个扫描周期,因此SM0.1的触点常用于调用初使化程序等。
SM0.3:开机进入RUN时,接通一个扫描周期,可用在启动操作之前,给设备提前预热。
SM0.4、SM0.5:占空比为50%的时钟脉冲。当PLC处于运行状态时,SM0.4产生周期为1min的时钟脉冲,SM0.5产生周期为1s的时钟脉冲。若将时钟脉冲信号送入计数器作为计数信号,可起到定时器的作用。
SM0.6:扫描时钟, 1个扫描周期闭合,另一个为OFF,循环交替。
SM0.7:工作方式开关位置指示,开关放置在RUN位置时为1。
SM1.0:零标志位,运算结果=0时,该位置1。
SM1.1:溢出标志位,结果溢出或非法值时,该位置1。
SM1.2:负数标志位,运算结果为负数时,该位置1。
SM1.3:被0除标志位。
其他特殊存储器的用途可查阅相关手册。
6. 局部变量存储器L
局部变量存储器L用来存放局部变量,局部变量存储器L和变量存储器V十分相似,主要区别在于全局变量是全局有效,即同一个变量可以被任何程序(主程序、子程序和中断程序)访问。而局部变量只是局部有效,即变量只和特定的程序相关联。
S7-200有64个字节的局部变量存储器,其中60个字节可以作为暂时存储器,或给子程序传递参数。后4个字节作为系统的保留字节。PLC在运行时,根据需要动态地分配局部变量存储器,在执行主程序时,64个字节的局部变量存储器分配给主程序,当调用子程序或出现中断时,局部变量存储器分配给子程序或中断程序。
局部存储器可以按位、字节、字、双字直接寻址,其位存取的地址编号范围为L0.0~L63.7。
L可以作为地址指针。
7. 定时器T
PLC所提供的定时器作用相当于继电器控制系统中的时间继电器。每个定时器可提供无数对常开和常闭触点供编程使用。其设定时间由程序设置。
每个定时器有一个16位的当前值寄存器,用于存储定时器累计的时基增量值(1~32767),另有一个状态位表示定时器的状态。若当前值寄存器累计的时基增量值大于等于设定值时,定时器的状态位被置“1”,该定时器的常开触点闭合。
定时器的定时精度分别为1ms 、10ms和100ms三种,CPU222、CPU224及CPU226的定时器地址编号范围为T0~T225,它们分辨率、定时范围并不相同,用户应根据所用CPU型号及时基,正确选用定时器的编号。
8. 计数器C
计数器用于累计计数输入端接收到的由断开到接通的脉冲个数。计数器可提供无数对常开和常闭触点供编程使用,其设定值由程序赋予。
计数器的结构与定时器基本相同,每个计数器有一个16位的当前值寄存器用于存储计数器累计的脉冲数,另有一个状态位表示计数器的状态,若当前值寄存器累计的脉冲数大于等于设定值时,计数器的状态位被置“1”,该计数器的常开触点闭合。计数器的地址编号范围为C0~C255。
9. 高速计数器HC
一般计数器的计数频率受扫描周期的影响,不能太高。而高速计数器可用来累计比CPU 的扫描速度更快的事件。高速计数器的当前值是一个双字长(32位)的整数,且为只读值。
高速计数器的地址编号范围根据CPU的型号有所不同,CPU221/222各有4个高速计数器,CPU224/226各有6个高速计数器,编号为HC0~HC5。
10. 累加器AC
累加器是用来暂存数据的寄存器,它可以用来存放运算数据、中间数据和结果。CPU提供了4个 32位的累加器,其地址编号为AC0~AC3。累加器的可用长度为32位,可采用字节、字、双字的存取方式,按字节、字只能存取累加器的低8位或低16位,双字可以存取累加器全部的32 位。
11. 顺序控制继电器S(状态元件)
顺序控制继电器是使用步进顺序控制指令编程时的重要状态元件,通常与步进指令一起使用以实现顺序功能流程图的编程。
顺序控制继电器的地址编号范围为S0.0~S31.7。
12. 模拟量输入/输出映像寄存器(AI/AQ)
S7-200的模拟量输入电路是将外部输入的模拟量信号转换成1个字长的数字量存入模拟量输入映像寄存器区域,区域标志符为AI。
模拟量输出电路是将模拟量输出映像寄存器区域的1个字长(16位)数值转换为模拟电流或电压输出,区域标志符为AQ。
在PLC内的数字量字长为16位,即两个字节,故其地址均以偶数表示,如 AIW0、AIW2…..;AQW0、AQW2…..。
对模拟量输入/输出是以2个字(W)为单位分配地址,每路模拟量输入/输出占用1个字(2个字节)。如有3路模拟量输入,需分配4个字(AIW0、AIW2、AIW4、AIW6),其中没有被使用的字AIW6,不可被占用或分配给后续模块。如果有1路模拟量输出,需分配2个字(AQW0、AQW2),其中没有被使用的字AQW2,不可被占用或分配给后续模块。
模拟量输入/输出的地址编号范围根据CPU的型号的不同有所不同,CPU222为AIW0~AIW30/AQW0~AQW30;CPU224/226为AIW0~AIW62/AQW0~AQW62。