第2章 西门子S7-200系列可编程序控制器
本章要点
●西门子S7-200 CPU224可编程序控制器的结构、性能指标
●西门子S7-200 CPU224可编程序控制器的工作方式
●扩展模块介绍
●S7-200系列可编程序控制器的编址、寻址方式
●可编程序控制器元器件功能及地址分配
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价格低廉,能满足多种集成功能的需要。CPU222是S7-200家族中低成本的单元,通过可连接的扩展模块即可处理模拟量。CPU224具有更多的输入输出点及更大的存储器。CPU226和226XM是功能最强的单元,可完全满足一些中小型复杂控制系统的要求。4种型号的PLC具有下列特点。
1)集成的24V电源。可直接连接到传感器和变送器执行器,CPU221和CPU222具有180mA输出。CPU224输出280mA。CPU226、CPU226XM输出400mA,可用做负载电源。
2)高速脉冲输出。具有两路高速脉冲输出端,输出脉冲频率可达20kHz,用于控制步进电动机或伺服电动机,实现定位任务。
3)通信口。CPU221、CPU222和CPU224具有一个RS-485通信口。CPU226、CPU226XM具有两个RS-485通信口。支持PPI、MPI通信协议,有自由口通信能力。
4)模拟电位器。CPU221/222有一个模拟电位器,CPU224/226/226XM有两个模拟电位器。模拟电位器用来改变特殊寄存器(SMB28,SMB29)中的数值,以改变程序运行时的参数,如定时器、计数器的预置值,过程量的控制参数。
5)中断输入允许以极快的速度对过程信号的上升沿作出响应。
6)E2 PROM存储器模块(选件)。可作为修改与复制程序的快速工具,无需编程器,并可进行辅助软件归档工作。
7)电池模块。用户数据(如标志位状态、数据块、定时器和计数器)可通过内部的超级电容存储大约5天。选用电池模块能延长存储时间到200天(10年寿命)。电池模块插在存储器模块的卡槽中。
8)不同的设备类型。CPU221~226各有两种类型CPU,具有不同的电源电压和控制电压。
9)数字量输入/输出点。CPU221具有6个输入点和4个输出点;CPU222具有8个输入点和6个输出点;CPU224具有14个输入点和10个输出点;CPU226/226XM具有24个输入点和16个输出点。CPU22X主机的输入点为24V直流双向光耦合输入电路,输出有继电器和直流(MOS型)两种类型。
10)高速计数器。CPU221/222有4个30kHz高速计数器,CPU224/226/226XM有6个30kHz的高速计数器,用于捕捉比CPU扫描频率更快的脉冲信号。
CPU22X模块主要技术指标见表2-1。
表2-1CPU22X模块主要技术指标
2.2 S7-200系列CPU224型PLC的结构
2.2.1 CPU224型PLC的外形、端子及接线
1.CPU224型PLC的外形
S7-200 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型PLC输入端子如图2-2所示。它采用了双向光耦合器,24V直流极性可任意选择,系统设置1M为输入端子(I0.0~I0.7)的公共端,2M为输入端子(I1.0~I1.5)的公共端。
图2-2 CPU224型PLC输入端子
注:1.实际元器件值可能有变。
2. 处可接受任何极性。
3. 处接地可选。
2)基本输出端子。PLC晶体管输出端子及外部接线如图2-3所示。Q0.0~Q0.4共用1M和1L公共端,Q0.5~Q1.1共用2M和2L公共端,在公共端上需要用户连接适当的电源,为PLC的负载服务。
图2-3 PLC晶体管输出端子及外部接线图
CPU224的输出电路有晶体管输出电路和继电器输出两种供用户选用。在晶体管输出电路(型号为6ES7 214-1AD21-0XB0)中,PLC由24V直流供电,负载采用了MOSFET功率驱动器件,所以只能用直流为负载供电。输出端将数字量输出分为两组,每组有一个公共端,共有1L、2L两个公共端,可接入不同电压等级的负载电源。在继电器输出电路中(型号为6ES7 212-1BB21-0XB0),PLC由220V交流电源供电,负载采用了继电器驱动,所以既可以选用直流为负载供电,也可以采用交流为负载供电。在继电器输出电路中,数字量输出被分为3组,每组的公共端为本组的电源供给端,Q0.0~Q0.3共用1L,Q0.4~Q0.6共用2L,Q0.7~Q1.1共用3L,各组之间可接入不同电压等级、不同电压性质的负载电源。继电器输出形成PLC输出端子及外部接线如图2-4所示。
图2-4 继电器输出形式PLC输出端子及外部接线图
3)高速反应性。CPU224 PLC有6个高速计数脉冲输入端(I0.0~I0.5),最快的响应速度为30kHz,用于捕捉比CPU扫描周期更短的脉冲信号。
CPU224 PLC有两个高速脉冲输出端(Q0.0,Q0.1),输出频率可达20kHz,用于PTO高速脉冲束)和PWM(宽度可变脉冲输出)高速脉冲输出。
4)模拟电位器。模拟电位器用来改变特殊寄存器(SM28,SM29)中的数值,以改变程序运行时的参数,如定时器、计数器的预置值和过程量的控制参数。
5)存储卡。该卡位可以选择安装扩展卡。扩展卡有EEPROM存储卡、电池和时钟卡等模块。存储卡用于用户程序的复制。在PLC通电后插此卡,通过操作可将PLC中的程序装载到存储卡中。若卡已被插在基本单元上,则PLC通电后不需任何操作,卡上的用户程序数据会自动复制在PLC中。利用这一功能,可对无数台实现同样控制功能的CPU22X系列进行程序写入。
注意:每次通电就写入一次,所以在PLC运行时,不要插入此卡。
电池模块用于长时间保存数据,使用CPU224内部存储电容数据的存储时间达190h,而使用电池模块数据的存储时间可达200天。
3.S7-224XP CN介绍
图2-5所示为S7-224CN XP外形图。在图中有两个通信端口,有电源端子、输入端子、输出端子、模拟量AI/AO端子、24V直流电源输出端子、拨码开关、用于连接扩展电缆的接口等。
S7-224 XP CN集成数字量输入14点,输出10点,最多可连续扩展模块7个,高速计数器可计200kHz的高速脉冲,可输出100kHz的高速脉冲,有两个串行通信端口,并且在本机体上自带有两路模拟量输入和一路模拟量输出(2AI/1AO),不用配置模拟量模块即可进行单回路模拟量控制,具有良好的性价比。编程软件需使用Step7.Micro/Win4.0SP3及以上版本。S7-224 XP CN模拟量通道接线如图2-6所示,A+、B+为模拟量输入单端,M为公共端;输入电压范围为±10V;分辨率为11位,加1符号位;数据字格式对应的满量程范围为-32000~+32000,对应的模拟量输入映像寄存器分别为AIW0、AIW2。图2-6中有一路单极性模拟量输出,可以选择是电流输出或电压输出,I为电流负载输出,V为电压负载输出,输出电流的范围为0~20mA,输出电压的范围为0~10V,分辨率为12位,数据格式对应的量程范围为0~32767,对应的模拟量输出映像寄存器为AQW0。
图2-5 S7-224CN XP外形图
图2-6 S7-224 XP CN模拟量通道接线图
2.2.2 CPU224型PLC的结构及性能指标
CPU224型可编程序控制器主要由CPU、存储器、基本I/O接口电路、外设接口、编程器通信网络和电源等组成,其结构框图如图2-7所示。
图2-7 CPU224型可编程序控制器结构框图
CPU224型可编程序控制器有两种,一种是CPU224 AC/DC/继电器,交流输入电源,提供24V直流给外部元器件(如传感器等),继电器方式输出,14点输入,10点输出;另一种是CPU 224 DC/DC/DC,直流24V输入电源,提供24V直流给外部元器件(如传感器等),半导体元器件直流方式输出,14点输入,10点输出。用户可根据需要选用。它们的主要技术指标见表2-2~表2-4。
表2-2 电源的主要技术指标
表2-3 数字量输入的主要技术指标
表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。
1)把方式开关切到STOP位,可以停止程序的执行。
2)把方式开关切到RUN位,可以启动程序的执行。
3)把方式开关切到TERM(暂态)或RUN位,允许STEP 7-Micro/Win 32软件设置CPU工作状态。
如果工作方式开关设为STOP或TERM,电源上电时,CPU自动进入STOP工作状态。设置为RUN时,电源上电,CPU自动进入RUN工作状态。
(2)用编程软件改变工作方式
把方式开关切换到TERM(暂态),可以使用STEP7-Micro/Win 32编程软件设置工作方式。
(3)在程序中用指令改变工作方式
在程序中插入一个STOP指令,CPU可由RUN方式进入STOP工作方式。
2.3 扩展功能模块
2.3.1 扩展单元及电源模块
1.扩展单元
扩展单元没有CPU,作为基本单元输入/输出点数的扩充,只能与基本单元连接使用,而不能单独使用。S7-200的扩展单元包括数字量扩展单元、模拟量扩展单元、热电偶/热电阻扩展模块和PROFIBUS-DP通信模块。
用户选用具有不同功能的扩展模块,可以满足不同的控制需要,节约投资费用。连接时将CPU模块放在最左侧,扩展模块用扁平电缆与左侧的模块相连,如图2-8所示。CPU222最多连接两个扩展模块,CPU224/CPU226最多连接7个扩展模块。
2.电源模块
外部提供给PLC的电源有DC 24V、AC 220V两种,根据型号不同有所变化。S7-200的CPU单元有一个内部电源模块,S7-200小型PLC的电源模块与CPU封装在一起,通过连接总线为CPU模块、扩展模块提供5V的直流电源,如果容量许可,还可提供给外部DC 24V的电源,供本机输入点和扩展模块继电器线圈使用。应根据下面的原则来确定I/O电源的配置。
图2-8 CPU基本单元和扩展模块的连接
1)有扩展模块连接时,如果扩展模块对DC 5V电源的需求超过CPU的5V电源模块的容量,则必须减少扩展模块的数量。
2)当DC+24V电源的容量不满足要求时,可以增加一个外部DC 24V电源给扩展模块供电。此时,外部电源不能与S7-200的传感器电源并联使用,但应将两个电源的公共端M)连接在一起。
I/O电源的具体参数可以参看表2-1~表2-4。
2.3.2 常用扩展模块
1.数字量扩展模块
当需要本机集成的数字量输入/输出点外更多的数字量的输入/输出时,可选用数字量扩展模块。用户选择具有不同I/O点数的数字量扩展模块,可以满足应用的实际要求,同时节约不必要的投资费用。可选择8、16和32点输入/输出模块。
S7-200 PLC系列目前总共可以提供3大类共9种数字量输入/输出扩展模块,其数据如表2-5所示。
表2-5 数字量输入/输出扩展模块的数据表
2.模拟量扩展模块
模拟量扩展模块提供了模拟量输入/输出的功能。在工业控制中,被控对象常常是模拟量,如温度、压力、流量等。PLC内部执行的是数字量,模拟量扩展模块可以将PLC外部的模拟量转换为数字量送入PLC内,经PLC处理后,再由模拟量扩展模块将PLC输出的数字量转换为模拟量送给控制对象。模拟量扩展模块优点如下。
1)最佳适应性。可适用于复杂的控制场合,直接与传感器和执行器相连。例如,可将EM235模块直接与PT100热电阻相连。
2)灵活性。当实际应用变化时,可以相应地将PLC进行扩展,并可非常容易的调整用户程序。
模拟量扩展模块的数据如表2-6所示。
表2-6 模拟量扩展模块的数据表
图2-9 EM235模块的面板及接线图
a)面板 b)接线匡
EM235模块的面板及接线如图2-9所示。EM235具有4路模拟量输入和1路模拟量输出,它的输入信号可以是不同量程的电压或电流。其电压、电流的量程由配置设定开关SW1~SW6设定。EM235有1路模拟量输出,其输出电压、或电流。EM235有4路模拟量输入,为RA、A+、A-;RA、B+、B-;RC、C+、C-;RD、D+、D- 共4路模拟量输入通道,每3个点为一组。接线如图2-9上部所示,当输入信号为电压信号时,只用两个端子(如图2-9中的A+、A-),电流信号需用3个端子(见图2-9中的RC、C+、C-),其中RC与C+端子短接。对于未使用的输入通道应短接(见图2-9中的B+、B-)。EM235模拟量输出端子为M0、V0、I0,电压输出时,“V0”为电压正端、“M0”为电压负端;电流输出时,“I0”为电流的流入端,“M0”为电流的流出端。在模块下部左端M、L+两端,应接入DC24V电源,M为DC24V电源负极端,L+为电源正极端。
EM235配置设定开关SW1~SW6设置如表2-7所示。
表2-7EM235配置设定开关SW1~SW6设置表
3.热电偶、热电阻扩展模块
EM231热电偶、热电阻扩展模块是为S7-200 CPU222、CPU224、CPU226、CPU226XM设计的模拟量扩展模块。EM231热电偶模块具有特殊的冷端补偿电路,该电路测量模块连接器上的温度,并适当改变测量值,以补偿参考温度与模块温度之间的温度差,如果在EM231热电偶模块安装区域的环境温度迅速地变化,就会产生额外的误差,要想达到最大的精度和重复性,热电阻和热电偶模块应被安装在稳定的环境温度中。
EM231热电偶模块用于J、K、E、N、S、T和R 7种热电偶类型。用户必须用DIP开关来选择热电偶的类型,连到同模块上的热电偶必须为相同类型。热电偶、热电阻扩展模块的外形如图2-10所示。
图2-10 热电偶、热电阻扩展模块的外形图
4.PROFIBUS-DP通信模块
通过EM277 PROFIBUS-DP扩展从站模块,可将S7-200CPU连接到PROFIBUS-DP网络,如图2-11所示。EM277经过串行I/O总线连接到S7-200 CPU,PROFIBUS网络经过其DP通信端口,连接到EM277 PROFIBUS-DP模块。可将EM277 PROFIBUS-DP模块的DP端口连接到网络上的一个DP主站上,但它仍能作为一个MPI从站,与同一网络上(如SIMATIC编程器或S7-300/S7-400 CPU等)其他主站进行通信。
图2-11 通过EM 277 PROFIBUS-DP扩展从站模块将S7-200CPU连接到ROFIBUS-DP网络
2.4 S7-200系列PLC数据存储类型、编址和寻址方式、元器件功能及地址分配
2.4.1 数据存储类型
1.数据的长度
在计算机中使用的都是二进制数,其最基本的存储单位是位(bit),8位二进制数组成1个字节(Byte),其中的第0位为最低位(LSB),第7位为最高位(MSB)。两个字节(16位)组成1个字(Word),两个字(32位)组成1个双字(Double word)。位、字节、字和双字如图2-12所示。把位、字节、字和双字占用的连续位数称为长度。
图2-12 位、字节、字和双字
二进制数的“位”只有0和1两种取值。开关量(或数字量)也只有两种不同的状态,如触点的断开和接通,线圈的失电和得电等。在S7-200梯形图中,可用“位”描述它们,如果该位为1,则表示对应的线圈为得电状态,触点为转换状态(常开触点闭合、常闭触点断开);如果该位为0,则表示对应线圈、触点的状态与前者相反。
在数据长度为字或双字时,起始字节均放在高位上。
2.数据类型及数据范围
S7-200系列PLC的数据类型可以是字符串、布尔型(0或1)、整数型和实数型(浮点数)。布尔型数据指字节型无符号整数;整数型数据包括16位符号整数(INT)和32位符号整数(DINT)。实数型数据采用32位单精度数来表示。数据类型、长度及数据范围如表2-8所示。
表2-8 数据类型、长度及数据范围表
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表示累加器。PLC内部元器件如图2-13所示。掌握各元器件的功能和使用方法是编程的基础。下面介绍元器件的编址方式。
存储器的单位可以是位(bit)、字节(Byte)、字(Word)、双字(Double Word),也可以将编址方式分为位、字节、字、双字编址。
图2-13 PLC的内部元器件
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-14所示。
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-15所示。
图2-14 按位、字节、字、双字的寻址方式示意图
图2-15 间接寻址示意图
2.4.4 元器件功能及地址分配
1.输入映像寄存器(输入继电器)
1)输入映像寄存器的工作原理。在每次扫描周期的开始,CPU对PLC的实际输入端进行采样,并将采样值写入输入映象寄存器中。可以形象的将输入映像寄存器比做输入继电器,每一个“输入继电器”线圈都与相应的PLC输入端相连(如“输入继电器”I0.0的线圈与PLC的输入端子0.0相连),当外部开关信号闭合时,则“输入继电器的线圈”得电,将“1”写入对应的输入映像寄存器的位中,在程序中其对应的常开触点闭合,常闭触点断开。由于存储单元可以无限次的读取,所以有无数对常开、常闭触点供编程时使用。编程时应注意,“输入继电器”的线圈只能由外部信号来驱动,即输入映像寄存器的值只能由外部的输入信号来改写,不能在程序内部用指令来驱动,因此,在用户编制的梯形图中只应出现“输入继电器”的触点,而不应出现“输入继电器”的线圈。
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)输出映像寄存器的工作原理。在每次扫描周期的结尾,CPU用输出映象寄存器中的数值驱动PLC输出点上的负载。可以将输出映像寄存器形象的比做输出继电器,每一个“输出继电器”线圈都与相应的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:扫描时钟,一个扫描周期闭合,另一个为OFF,循环交替。
SM0.7:工作方式开关位置指示。开关放置在RUN位置时为1。
SM1.0:零标志位。运算结果等于0时,该位置1。
SM1.1:溢出标志位。结果溢出或非法值时,该位置1。
SM1.2:负数标志位。运算结果为负数时,该位置1。
SM1.3:被0除标志位。
其他特殊存储器的用途可查阅相关手册。
6.局部变量存储器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~T255,它们的分辨率和定时范围并不相同,用户应根据所用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的模拟量输入电路是将外部输入的模拟量信号转换成一个字长的数字量存入模拟量输入映像寄存器区域,区域标志符为AI。
模拟量输出电路是将模拟量输出映像寄存器区域的一个字长(16位)数值转换为模拟电流或电压输出,区域标志符为AQ。
在PLC内的数字量字长为16位,即两个字节,故其地址均以偶数表示,如AIW0、AIW2…;AQW0、AQW2…。
对模拟量输入/输出是以2个字(W)为单位分配地址,每路模拟量输入/输出占用一个字(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。
【例】给表2-9所示的硬件组态配置I/O地址。
表2-9 硬件组态及I/O地址
2.5 习题
1.S7-200系列PLC有哪些编址方式?
2.S7-200系列CPU224 PLC有哪些寻址方式?
3.S7-200系列PLC的结构是什么?
4.CPU224 PLC有哪几种工作方式?改变工作方式的方法有几种?
5.CPU224 PLC有哪些元器件,它们的作用是什么?
6.CPU224 PLC的累加器有几个?其长度是多少?
7.S7-200系列PLC的数据类型有几种?各类型的数据长度是多少?
8.SM0.0、SM0.1、SM0.4和SM0.5各有何作用?
9.常见的扩展模块有几类?扩展模块的具体作用是什么?
10.PLC外部供电电源有几种?
11.给表2-10所示的硬件组态配置I/O地址。
表2-10 题11表