版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第7章 S7-300 PLC和S7-400 PLC系统配置与编程 7.1 S7-300 PLC和S7-400 PLC的系统配置7.2 S7-300和S7-400的指令系统7.3 S7-300和S7-400应用系统的编程小结7.1 S7-300 PLC和S7-400 PLC的系统配置7.1.1 S7-300 PLC的基本组成 S7-300 PLC是西门子公司于20世纪90年代中期推出的新一代可编程控制器, 它采用紧凑的、 无槽位限制的模块结构, 电源模块(PS)、 CPU模块、 信号模块(SM)、 功能模块(FM)、 接口模块(IM)和通信处理器(CP)都安装在导轨上。 导轨是一种专用的金属机架
2、, 只需将模块钩在DIN标准的安装导轨上, 然后用螺栓锁紧就可以了。 有多种不同长度规格的导轨供用户选择。 电源模块总是安装在机架的最左边, CPU模块紧靠电源模块。 如果有接口模块, 它放在CPU模块的右侧。 S7-300用背板总线将除电源模块之外的各个模块连接起来。 S7-300PLC是模块式的PLC, 它由以下几部分组成。 1. 中央处理单元(CPU)S7-300系列PLC主要包括CPU312、 CPU312C、 CPU313C、 CPU313CPtP、 CPU314C2DP等型号的CPU, 每种中央处理单元(CPU)有不同的性能, 例如有的集成有数字量和模拟量I/O点, 而有的集成有P
3、ROFIBUS-DP等通信接口。 CPU面板上有状态故障显示灯、 模式开关、 24 V电源输入端子、 电池盒与存储器模块盒(有的CPU没有)。 2. 负载电源模块(PS)负载电源模块用于将AC120/230 V电源转换为DC 24 V电源, 提供给CPU和I/O模块使用。 额定输出电流有2 A、 5 A和10 A三种, 可以根据负载的要求选定。 3. 信号模块(SM)信号模块是数字量输入/输出(I/O)模块和模拟量输入/输出(I/O)模块的总称, 它们使不同的过程信号电平和PLC内部电平相匹配。 信号模块主要有数字量输入模块SM321和数字量输出模块SM322, 模拟量输入模块SM331和模拟
4、量输出模块SM332。 模拟量输入模块可以输入热电阻、 热电偶、 DC(420) mA和DC(010) V等多种不同类型和不同量程的模拟信号。 每个模块上有一个背板总线连接器, 现场的过程信号连接到前连接器的端子上。 4. 功能模块(FM) 功能处理器主要用于对实时性和存储容量要求高的控制任务, 例如计数器模块、 快速慢速进给驱动位置控制模块、 电子凸轮控制器模块、 步进电动机定位模块、 伺服电动机定位模块、 定位和连续路径控制模块、 闭环控制模块、 工业标识系统的接口模块、 称重模块、 位置输入模块、 超声波位置解码器等。 5. 通信模块(CP) 通信模块用于PLC之间、 PLC与计算机和其
5、他智能设备之间的通信, 可以将PLC接入PROFIBUS-DP、 AS-I和工业以太网, 或用于实现点对点通信等。 6. 接口模块(IM) 接口模块用于多机架配置时连接主机架(CR)和扩展机架(ER)。 S7-300通过分布式的主机架和连接的扩展机架(最多可连三个扩展机架), 最多可以配置32个信号模块、 功能模块和通信处理器。 7. 导轨(RACK) 导轨是用来固定和安装S7-300的上述各种模块。 7.1.2 S7-300 PLC的结构及功能特点 S7-300的所有模块均安装在标准异型导轨(DIN)上。 S7-300采用背板总线的方式将各模块从物理上和电气上连接起来。 S7-300的背板总
6、线集成在每一个模块中, 如图7-1所示。 安装时用总线接头将所有的模块互连起来。 图7-1 S7-300可编程控制器 S7-300 PLC具有以下特点: (1) 高速的指令处理。 指令的处理时间可以达到(0.10.6) ms。 在中等到较低的控制性能要求的范围内开辟了全新的应用领域。 (2) 浮点数运算。 可有效实现更为复杂的算术运算。 (3) 人机界面(HMI)。 方便的人机界面被集成在S7-300操作系统内, 因此人机对话的定的刷新速度传递这些数据, S7-300操作系统自动处理数据的传送。 编程要求大大减少。 SIMATIC人机界面(HMI)从S7-300中取得数据, S7-300按照用
7、户指 (4) 诊断功能。 CPU的智能化诊断系统连续监控系统的运行是否正常, 对不正常状态、 错误和特殊系统事件(例如超时、 模块更换等)进行记录或者报警。 (5) 口令保护。 系统允许设置口令保护, 可有效地保护其技术机密, 防止未经允许的复制和修改。 7.1.3 S7-300 PLC的系统配置 S7-300 PLC是模块化的组合结构,用户按照实际需求选取的各种模块可直接安装在导轨上,通过背板总线把这些模块连接起来。在机架上安装模块的顺序是: 在1号槽安装电源模块,2号槽安装CPU,然后安装I/O接口模块、 功能模块/通信处理器或I/O信号模块。S7-300 PLC系统配置分两种情况。包含了
8、CPU模块的机架称为主机架(CR)。每个机架最多可安装8个信号(SM)模块(或者其他功能模块),当主机架所包含的I/O点数不够,或者需要分布式的I/O配置时,就需要考虑扩展机架(ER)的设置。 下面分别介绍这两种机架的配置方式。 1. 一个机架上的S7-300 结构 装在一个机架上的S7-300如图7-2所示, 必须满足以下规定: (1) 在CPU模块右边安装的信号模块不超过8个。 (2) 装在一个机架上的全部模块要受到S7-300背板总线提供的总电流值的限制。 图7-2 中央机架配置示意图 2. 多个机架上的S7-300 结构 安装有CPU模块的机架成为主机架, 如果一个机架不够用, 那么最
9、多可扩展4个机架。 主机架与扩展机架之间的连接, 需要接口模块的参与。 接口模块总是成对使用的, 在主机架和扩展机架上各需安装一块接口模块。 位于主机架上的接口模块应安装在CPU模块之后, 而扩展机架上的接口模块则安装在机架的最左端或者电源模块之后。 如果系统只需要一个扩展机架, 可以选用IM365型接口模块, 这是一种经济型的配置方案。 扩展机架所需电源由主机架上的CPU模块产生, 经IM365接口模块的连接电缆传输到扩展机架, 如图7-3所示。 图7-3 采用IM365的扩展配置示意图 若采用IM360/IM361型接口模块,则扩展机架需要单独的DC 24 V电源,此时最多可扩展3个ER,
10、机架间的距离在4 cm10 m之间,其配置示意图如图7-4所示。主机架和各个扩展机架均配有电源模块,主机架上安装接口模块IM360, 机架号为0号。 三个扩展机架安装接口模块IM361, 机架号依次为1号、 2号、 3号。 图7-4 采用IM360/IM361的扩展配置示意图 7.1.4 S7-300的CPU模块 S7-300有20多种不同型号的CPU, 分别适用于不同等级的控制要求。 有的CPU模块集成了数字量IO, 有的同时集成了数字量IO和模拟量IO。 S7-300的CPU模块大致可以分为以下几类: (1) 6种紧凑型CPU, 带有集成的功能和I/O: CPU 312C, CPU 313
11、C, CPU 313C-PtP, CPU 313C-2DP, CPU 314C-PtP和CPU 314C-2DP。 (2) 3种重新定义的CPU: CPU 312, CPU 314和CPU 315-2DP。 (3) 5种标准的CPU: CPU 313, CPU 314, CPU 315, CPU 315-2DP和CPU 316-2DP。(4) 4种户外型CPU: CPU 312 IFM, CPU 314 IFM, CPU 314户外型和CPU 315-2DP。(5) 高端CPU: 317-2DP和CPU 318-2DP。 (6) 故障安全型CPU: CPU 315F。 几种CPU模块的技术参数
12、见表7-1。 表7-1 几种CPU的基本特性 7.1.5 S7-300的数字量模块 S7-300的数字量模块基本为三大类: SM321数字量输入模块、 SM322数字量输出模块和SM323数字量输入/输出模块, 其输入/输出电缆最大长度为1000 m(屏蔽电缆)或600 m(非屏蔽电缆)。 1. SM321数字量输入模块 SM321数字量输入模块根据输入点数的多少, 可分为8点、6点、32点三类。输入电路中一般设有RC滤波电路,以防止由于输入触点抖动或外部干扰脉冲引起的错误输入信号。输入电路的结构有交流输入方式和直流输入方式。交流输入模块的额定输入电压为AC120 V或230 V。直流输入模块
13、的额定输入电压为DC24 V、 DC2448 V或DC48125 V。直流输入电路的延迟时间较短,可以直接与接近开关、光电开关等电子输入装置连接,DC24 V是一种安全电压。如果信号线不是很长, PLC所处的物理环境较好, 电磁干扰较轻, 应优先考虑选用DC24V的输入模块。 交流输入方式适合于在有油雾、 粉尘的恶劣环境下使用。 2. SM322数字量输出模块 SM322数字量输出模块用于驱动电磁阀、 接触器、 小功率电动机、 灯和电动机启动器等负载。 数字量输出模块将S7-300的内部信号电平转化为控制过程所需的外部信号电平, 同时有隔离和功率放大的作用。 数字量输出模块的型号为SM322。
14、 输出模块的功率放大元件有驱动直流负载的大功率晶体管和场效应晶体管、 驱动交流负载的双向晶闸管或固态继电器, 以及既可以驱动交流负载又可以驱动直流负载的小型继电器。 输出电流的典型值为(0.52) A, 负载电源由外部现场提供。 3. SM323数字量输入/输出模块 SM323数字量输入/输出模块目前有两种: DI 16/DO 1624 VDC/0.5A 以及DI 8/DO 824 VDC/0.5A。 前者有16个数字输入点和16个数字输出点, 16个输入点为1组, 内部共地; 16个输出点分成两组, 两组的内部结构相同, 均为晶体管输出, 每8个输出点共用一对负载电源端子。 后者为8输入/8
15、输出模块, 输入/输出均为1组, 内部结构与前者相同。7.1.6 S7-300的模拟量模块 S7-300的模拟量输入/输出模块包括模拟量输入模块SM 331、 模拟量输出模块SM 332和模拟量输入/输出模块SM 334和SM 335。 1. 模拟量输入模块SM 331 SM 331模块主要由A/D转换器、 切换开关、 恒流源、 补偿电路、 光隔离器及逻辑电路组成, 它将控制过程的模拟信号转换为PLC内部处理用的数字信号。 由于若干通道合用一个A/D转换器, 所以在模拟量进入A/D转换器之前, 需要有多路模拟转换开关来选择通道, 各通道是循环扫描的, 因此每一个通道的采样周期不仅取决于各通道的
16、A/D转换时间, 还取决于所有被激活的通道数量, 为了尽量缩短扫描周期, 加快采样频率, 有必要利用STEP 7编程软件屏蔽掉那些不用的通道。 常用的SM 331模块有5种, 表7-2给出了这5种模块的主要技术指标。 表7-2 常用模拟量输入模块的主要技术指标 2. 模拟量输出模块SM 332SM 332模块用于将S7-300的数字信号转换为负载所需要的模拟量信号, 控制模拟量调节器、 执行机构或者作为其他设备的模拟量给定信号, 其核心部件为D/A转换器。 SM 332模块的输出精度主要有12位和16位两种; 输出通道主要有2通道和4通道两种形式; 输出信号可为电压或电流。 电压的输出范围可调
17、为: (15) V、 (010) V、 10 V。 电流的输出范围可调为: (020) mA、 (420) mA、 20 mA。 例如模块SM 332、 AO 412 bit, 共有4个通道, 每个通道的分辨率均为12位, 可分别单独设置为电流输出或电压输出。 电流输出为两线式, 电压输出可为两线回路或四线回路与负载相连, 采用四线时, 其中两个端子的引出线用于测量负载两端的电压, 这样可以提高电压的输出精度。 其技术参数见表7-3。表7-3 SM332模拟量输出模块技术参数 3. 模拟量输入/输出模块SM 334和SM 335SM 334和SM 335同时具有模拟量输入/输出功能, SM 3
18、34和SM 335的技术规范如表7-4所示。 表7-4 SM334、 SM335模拟量输入/输出模块的技术参 SM 334模拟量I/O模块主要有4AI /2AO8/8 bit和4AI /2AO12 bit两种规格。 前者的输入/输出精度为8位, 后者的输入/输出精度为12位。 输入测量范围为(010) V或(020) mA, 输出范围为(010)V或(020)mA。 SM 335的主要功能有: (1) 4个快速模拟量输入通道, 基本转换时间最大为1 ms; (2) 4个快速模拟量输出通道, 每个通道最大转换时间为0.8 ms; (3) 10 V/25 mA的编码器电源; (4) 1个计数器输入
19、(25 V/500 Hz)。 7.1.7 S7-300的电源模块(PS) PS 307是西门子公司为S7-300专配的24VDC电源。 PS 307系列模块除输出额定电流(有2A、 5A、 10A三种)不同外, 其工作原理和参数都一样。 PS 307电源模块将输入的120/230V单相交流电压转变为24V直流电压提供给S7-300 使用, 同时也可作为负载电源, 通过I/O模块向使用24 V DC的负载(如传感器、 执行机构等)供电。 PS 307电源模块的输入与输出之间有可靠的隔离。如果正常输出额定电压24 V, 面板上的绿色LED灯点亮; 如果输出电路过载, LED灯闪烁, 输出电压下降;
20、 如果输出短路, 则输出电压为零, LED灯灭, 短路故障解除后自动恢复。 另外, LED灯灭的状态下, 也有可能是输入交流电源电压低所至, 此时模块自动切断输出, 故障解除后自动恢复。 图7-5是PS 307电源模块的基本原理图。 图中L+和M端子为24 V DC的正、 负输出, 各提供两个接线端子以利于分别向CPU模块和I/O模块接线。L1和N为交流电源输入端子。 图7-5 PS 307电源模块原理图 7.1.8 S7-300的I/O编址S7-300PLC的信号模块插在每个机架的第411槽里, 这样就给每块信号模块确定了一个具体的模块起始地址, 该地址取决于它所在的槽和机架。 1 数字量I
21、/O编址S7-300的数字量地址由地址标识符、 地址的字节部分和位部分组成, 地址标识符I表示输入, Q表示输出, M表示存储器位。 例如I3.2是一个数字量输入的地址, 表示3号字节的第2位。 CPU从4号槽位开始为I/O模块分配地址, 每个槽位所占用的I/O地址是系统默认的, 以字节为单位。 图7-6给出了各个机架和槽位的数字量I/O编址。 图中, 每个槽位最多32个点, 占4个字节。 举例来说, 若主机架(机架0)的4号槽位上安装了SM 321、 DI 3224VDC模块, 则该模块上的32个数字输入点地址依次为: I0.0I0.7、 I1.0I1.7、 I2.0I2.7、 I3.0I3
22、.7; 若安装了数字输出模块, 例如SM 322; DO 3224VDC/0.5A, 则32个输出点地址依次为: Q0.0Q0.7、 Q1.0Q1.7、 Q2.0Q2.7、 Q3.0Q3.7。 如果不是32点的模块, 例如SM 321、 DI 1624VDC, 则各点地址依次为: I0.0I0.7、 I1.0I1.7, 后面的I2.0I3.7不能用。 图7-6 S7-300数字量I/O模块的默认地址 2. 模拟量I/O编址 模拟量输入/输出通道的地址是一个字地址, 通道地址取决于模板的起始地址, 图7-7是S7-300对各个机架上槽位的模拟I/O默认地址。 图7-7 S7-300模拟量I/O模
23、块的默认地址 在SM区(411号槽位)的每个槽位上, CPU为每个模拟量模块分配了16个字节的地址, 允许最多8路模拟I/O, 每个模拟量I/O的地址都是用1个字节来表示的, 例如QW256是一个模拟量输出通道的地址, 由QB256和QB257两个字节组成, 而输入地址IW640则是由IB640和IB641两个字节组成的。 实际使用时是根据具体的模块来确定实际的地址范围的, 例如0号机架的4号槽位, 如果安装的是两通道模拟输入I/O, 则实际用到的地址是IW256、 IW258。 7.1.9 S7-400系统简介 S7-400是功能强大的PLC, 它具有功能分级的CPU以及种类齐全、 综合性能
24、强的模块, 具有强大的扩展通信能力, 可实现分布式系统, 因此广泛应用于中、 高性能的控制领域。 S7-400同样采用模块化设计。 S7-400系统由以下组件组成: 电源模块(PS)、 中央处理单元(CPU)、 信号模块(SM)、 通信处理器(CP)、 功能模块(FM)等。 S7-400对模块数量限制的上限远远大于S7-300, 因而有极强的扩展能力。 信号模块的更换可以热插拔, 而不必暂停生产。 1. S7-400PLC的基本结构 S7-400是具有中高档性能的PLC, 采用模块化无风扇设计, 适用于对可靠性要求极高的大型复杂的控制系统。 S7-400 PLC分为标准型和容错型(可配置成故障
25、安全型)两种。 S7-400采用大模块结构, 大多数模块的尺寸为25 mm(宽)290 mm(高)210 mm(深)。 如图7-8所示, S7-400由机架、 电源模块(PS)、 中央处理单元(CPU)、 数字量输入/输出(DI/DO)模块、 模拟量输入/输出(AI/AO)模块、 通信处理器(CP)、 功能模块(FM)和接口模块(IM)组成。 DI/DO模块和AI/AO模块统称为信号模块(SM)。 图7-8 S7-400模块式PLC 机架用来固定模块、 提供模块工作电压和实现局部接地, 并通过信号总线将不同的模块连接在一起。 S7-400的模块插座焊在机架中的总线连接板上, 模块插在模块插座上
26、, 有不同槽数的机架供用户选用, 如果一个机架容纳不下所有的模块, 可以增设一个或数个扩展机架, 各机架之间用接口模块和通信电缆交换信息, 如图7-9所示。 图7-9 S7-400 PLC的多机架连接 S7-400提供了多种级别的CPU模块和种类齐全的通用功能的模块, 使用户能根据需要组合成不同的专用系统。 S7-400采用模块化设计, 性能范围宽广的不同模块可以灵活组合, 扩展十分方便。 中央机架(或称中央控制器, CC)必须配置CPU模块和一个电源模块, 可以安装除用于接收的IM(接口模块)外的所有S7-400模块。 如果有扩展机架, 中央机架和扩展机架都需要安装接口模块。 扩展机架(或称
27、扩展单元, EU)可以安装除CPU、 发送IM、 IM463-2适配器外的所有S7-400模集中式扩展方式适用于小型配置或一个控制柜中的系统。 CC和EU的最大距离为1.5 m(带5 V块。 但是电源模块不能与IM461-1(接收IM)一起使用。 电源)或3 m(不带5 V电源)。 分布式扩展适用于分布范围广的场合, CC与最后一个EU的最大距离为100 m(S7 EU)或600 m(S5EU)。 CC最多插6块发送IM, 最多只有2个IM可以提供5 V电源。 通过C总线(通信总线)的数据交换仅限于CC和6个EU之间。 2. S7-400的特点 (1) 运行速度高, CPU417-4执行一条二
28、进制指令只要0.03 s。 (2) 存储器容量大, 例如CPU 417-4的工作内存可达20 MB, 装载存储器(EEPROM或RAM)可以扩展到64 MB。 (3) 可多CPU并行计算(最多4个CPU并行处理复杂任务)。 (4) 支持集中式和分布式信号模板的热插拔。 (5) I/O扩展功能强, 可以扩展21个机架, CPU417-4最多可以扩展262 144个数字量I/O点和16 384个模拟量I/O。 (6) 有极强的通信能力, 容易实现分布式结构和冗余控制系统, 集成的MPI(多点接口)能建立最多32个站的简单网络。 大多数CPU集成有PROFIBUS-DP主站接口, 可以用来建立高速的
29、分布式系统, 使操作大大简化。 从用户的角度看, 分布式IO的处理与集中式IO没有什么区别, 具有相同的配置、 寻址和编程方法。 CPU能与在通信总线和MPI上的站点建立联系, 最多1644个站点, 通信速率最高12 Mbs。 (7) 通过钥匙开关和口令实现安全保护。 (8) 诊断功能强, 最新的故障和中断时间保存在FIFO(先入先出)缓冲区中。 (9) 集成的HMI(人机接口)服务, 用户只需要为HMI服务定义源和目的地址传送信息。 (10) 无风扇运行。 3 S7-400的通信功能 S7-400有很强的通信功能, CPU集成有MPI和DP通信接口, 有PROFIBUS-DP和工业以太网通信
30、模块, 以及点对点通信模块。 通过PROFIBUS-DP或AS-I现场总线, 可以周期性地自动交换I/O模块的数据。 在自动化系统之间, PLC与计算机和人机界面之间, 均可以交换数据。 数据通信可以周期性地自动进行或基于事件驱动, 由用户程序块调用。 S7/C7通信对象的通信服务通过集成在系统中的功能块来进行。 可提供的通信服务有: 使用MPI的标准S7通信; 使用MPI、 C总线(通信总线, Communication bus)、 PROFIBUS-DP和工业以太网的S7通信; 与S5通信对象和第三方设备的通信。 这些服务包括通过PROFIBUS-DP和工业以太网的S5兼容通信和标准通信。
31、 4 S7-400H容错自动化系统概述 S7-400H特别适合于下列场合: (1)停机将造成重大的经济损失。 (2)过程控制系统发生故障停机后再启动的费用非常昂贵。 (3)某些使用贵重原材料的生产过程会因突发的停机事件产生废品。 (4)无人管理的场合或需要减少维修人员的场合。 S7-400H是按冗余方式设计的, 主要器件都是双重的, 可以在故障发生后继续使用备用的部件。 设计成双重器件的有中央处理器、 电源模块以及连接两个处理器的硬件。 用户也可以自行决定设置其他需要的双重部件, 以增强设备的冗余性。 S7-400H是“热备”模式, 无故障时两个子单元都处于运行状态, 采用“事件驱动同步”,
32、当故障发生时, 保证在双重部件之间无扰动切换。 5. 多CPU处理 S7-400系列拥有可多CPU处理的能力, 1个机架上最多可安装4个这样的CPU模块, 并同时运行。 这些CPU同时启动, 同时进入STOP模式。 多CPU处理适用的情况是, 当用户程序过长, 或者存储空间不够时, 需要分配给多个CPU来执行。 可将系统分成不同的、 相对独立的功能块, 以利于彼此分开, 单独控制, 各CPU分别处理不同的部分, 各自访问分配给自己的模块, 给每个CPU分配模块的工作在STEP 7组态中进行。 通过通信总线(C总线), CPU彼此互联, 启动时, CPU将自动检查彼此是否同步。 7.2S7-30
33、0和S7-400的指令系统 S7-300和S7-400 PLC具有350多条指令, 其中包括STEP 5指令和集成在S7 CPU中的系统功能和功能块, 这些系统中集成的标准块可以在STEP 7编程软件中被用户程序调用。 以下主要介绍S7-300和S7-400指令系统的一些基本概念和STEP 7的基本指令。 7.2.1 基本概念 1. 编程语言 STEP 7是S7-300/400 系列PLC的编程软件。 梯形图(LAD)、 语句表(STL)、 功能块图(FBD)是标准的STEP 7软件包中配备的三种基本编程语言, 这3种语言可以在STEP 7中相互转换。 2. 数据类型 STEP 7有以下3种数
34、据类型。 (1) 基本数据类型: 用于定义不超过32位的数据。 包括了在S7-200 PLC指令系统中所用的基本数据类型: 1位布尔型(BOOL)、 8位字节型(BYTE)、 16位无符号整数(WORD)、 16位有符号整数(INT)、 32位无符号双字整数(DWORD)、 32位有符号双字整数(DINT)。 此外还有: 浮点数(REAL)、 字符(CHAR)、 时间(TIME)、 日期(DATE)、 日计时(TOD, TIME-OF-DAY)、 系统时间(S5TIME)等。 (2) 复合数据类型: 通过组合基本数据类型, 可以定义超过32位的数据类型。 例如数组(ARRAY)、 结构(STR
35、UCT)、 字符串(STRING)、 日期和时间(DATE_AND_TIME), 用户还可以将基本数据类型和复合数据类型组合在一起, 定义成新的数据类型, 成为用户定义的数据类型UDT(Userdefined Data Types)。 (3) 参数类型: 为在逻辑块(FB、 FC)之间传递参数的形参(形式参数, Formal Parameter)定义的数据类型, 用于向功能块(FB)、 功能(FC)传递实际参数(实参, Actual Parameter)。 例如当程序调用一个通用功能块(FB)时, 指定FB中所使用的定时器或计数器的具体编号(T4、 C3等)。 3. 存储器区域及功能 (1)
36、输入映像寄存器区: 在扫描循环的开始阶段, 读操作系统从过程中读取输入信号并在这些区域中记录这些输入值, 以便执行用户程序时使用它们。 地址前加符号“I”表示为该区域的存储单元, 例如I3.0(位)、 IB3(字节)、 IW256(字)、 ID256(双字)。 (2) 输出映像寄存器区: 系统执行用户程序时将有关输出的值保存在这个区域, 扫描循环的末尾, 操作系统从这个区域读取计算的输出值并送给输出模块, 由输出模块输出控制外部设备。 地址前加“Q”说明为该区域单元。 (3) 位存储器: 用于存储程序中计算的临时结果的存储器。 与输入/输出映像寄存器相同, 可按位(M)、 字节(MB)、 字(
37、MW)、 双字(MD)存取。 (4) 外设I/O区: 这一区域使程序能够直接访问I/O模块。 可以按字节(PIB或PQB)、 字(PIW或PQW)、 双字(PID或PQD)存取, 不能以位为单位存取。 (5) 定时器存储区: 用于存储定时器的时间初值和当前值。 (6) 计数器存储区: 用于计数器的存储器, 计数器指令在此访问它们。 (7) 数据块(DB): 由用户通过STEP 7编程软件在CPU的存储区中建立, 用于存放用户程序运行所需的各种数据, 可被所有的逻辑块打开实现数据共享。 (8) 背景数据块(DI): 调用功能块(FB、 SFB)时, 自动打开一个背景数据块, 这个数据块的数据格式
38、与被打开的FB(或SFB)所要求的格式一致。 利用DI, FB中运行的变量获得实际参数(实参)。 原则上任何数据块(DB或DI)都可以被当作共享数据块来使用, 最多可以同时打开两个数据块。 (9) 本地数据(L): 在处理组织块(OB)、 功能(FC)、 系统功能(SFC)时, 需要暂时存放的临时数据, 系统以堆栈的形式为其开辟一部分存储区(L堆栈), 功能执行结束后这些数据即会丢失, 所以也称它们为动态数据。 4. 寻址方式 所谓寻址方式, 是指令得到操作数的方式, 可以直接或间接给出操作数的地址。 STEP7有4种寻址方式: 立即寻址、 存储器直接寻址、 存储器间接寻址、 寄存器间接寻址。
39、 在立即寻址中, 常数的表示方法是, 首先说明类型和进制, 中间用#号分隔, 例如2#0011_1101, 为二进制常数形式, 同样的数据用十六进制字节常数表示为B#16#3D, 若用双整型常数表示为L#+61。 5. 状态字寄存器 状态字寄存器是专门用于存储指令执行状态的16位状态寄存器。 状态字寄存器以二进制位的形式保存指令的执行结果与中间状态等, 它的结构如图7-10所示。 图7-10 状态字寄存器 (1) 首次检测位( ): 该位状态指示了系统扫描用户程序的局部进程。 用户程序中的每一个逻辑块是以梯形逻辑网络(Network)为单位的, “能流”从左边的母线经过用户编程设定的逻辑组合,
40、 进入右边的输出元件和母线, 构成一个Network, 和下一个Network的母线是不相连的。 系统扫描到某一Network的初始时刻, 将 由0态置为1态; 而当这个Network扫描结束后, 又将 清零。 (2) 逻辑操作结果(RLO): 该位存储Network中每一步的逻辑运算结果, 为1时表示有“能流”流到当前扫描点, 为0时表示无“能流”到达该处。 (3) 状态位(STA): 执行位逻辑指令时, STA总是与该位的值相一致。 (4) 或位(OR): 在Network中, 当出现先“与”后“或”的逻辑结构时, OR位暂存“与”的结果, 以进行随后的逻辑“或”运算。 其他指令将OR位清
41、0。 (5) 溢出位(OV): 算术指令或浮点比较指令运行出错时, 将该位置1, 当后面的同类指令运算结果正常时将该位清0。 (6) 溢出状态保持位(OS): 当OV位被置1时, OS位也被置1, 而当OV位被清0时, OS位仍保持。 JOS指令(OS=1时跳转)、 块调用指令、 块结束指令将OS位清0。 (7) 条件码1(CC1)和条件码0(CC0): 两位结合起来表示累加器1中算术运算结果与0的大小关系、 比较指令的执行结果、 移位指令的移出状态。 (8) 二进制结果位(BR): 在一段既有位操作又有字操作的程序中, 如果字操作结果正确, 该位为1, 否则为0。 7.2.2 S7-300/
42、400PLC的基本指令及其编程 1. 位逻辑指令 位逻辑指令处理的对象为二进制位信号。 位逻辑指令扫描信号状态“1”和“0”位, 并根据布尔逻辑对它们进行组合, 所产生的结果(“1”或“0”)称为逻辑运算结果, 存储在状态字的“RLO”中。 (1) 触点指令: 分常开触点、 常闭触点两种, 如表7-5所示。 表7-5 触点指令 触点的串联为逻辑“与”, 并联为逻辑“或”, 两支(或若干支)串联的触点再进行并联, 系统扫描时要先“与”后“或”, 如图7-11所示。 图7-11中, 系统程序将I0.2和I1.3“与”的结果暂时存放在状态字存储器的OR位(第5位, 见图7-10), 待将I1.1和I
43、5.6“与”的结果计算出来后, 再和OR位进行“或”运算得到最终的结果。 图7-11 位逻辑先“与”后“或” (2) 输出指令: 输出指令有两种, 一种是逻辑串输出指令(输出线圈), 另一种是中间输出指令。 逻辑串输出指令又称赋值指令, 将逻辑运算结果RLO写入指定的位地址, 对应于梯形图中的线圈, 其梯形图指令如图7-12所示。 中间输出指令的LAD元件符号如图7-13所示, 作用是将该元件左边的RLO保存到元件指定的位地址中。 中间输出指令的元件要放在逻辑串的中间, 不能与左右两边的母线连接。 图7-12 LAD输出指令图7-13 LAD中间输出指令 图7-14中的两个梯形图是等效的, 体
44、现了中间输出元件的作用。 在(b)图中, 中间输出指令将I0.0的逻辑值(RLO)存放到M0.1中, 在下一个逻辑串中, 用M0.1的状态和I0.2进行“与”运算, 将结果赋值给Q8.1, 其效果和(a)图相同。 图7-14 中间输出指令的作用 (3) 置位/复位指令: 这两个指令的符号和作用如表7-6所示。 表7-6 置位/复位指令 (4) RS/SR触发器。 表7-7给出了不同状态下触发器输出的情况。 图7-15为两个触发器指令的梯形图符号。表7-7 RS/SR触发器的工作状态 图7-15 RS/SR触发器 两个触发器的不同之处在于, RS触发器是系统程序首先扫描复位端(R), 再扫描置位
45、端(S), 因此当R和S的输入状态都是1时, 起作用的是S端, 触发器输出状态为1; 而SR触发器正好相反, 系统程序先扫描S端, 后扫描R端, 所以当两端的输入状态都为1时, 触发器输出状态为0。 当R、 S均为0状态时, 触发器输出Q保持原状态。 (5) 边沿检测指令: STEP 7中有两类边沿检测指令, 一类用于对触点的跳变边沿进行检测, 另一类是对RLO的跳变边沿进行检测。 触点跳变边沿检测指令: 该类指令对触点的上升沿(POS)或下降沿(NEG)进行检测, 继而产生相应的动作, 图7-16举例说明了两个边沿检测指令的用法。 在图7-16(a)中, 若要使得Q4.0的状态为1, 需要满
46、足两个条件, 其一是I0.0处于ON的状态; 其二, I0.3在上个周期为0(依图中所示, M0.0保存I0.3在上一个周期的状态), 而在本周期为1, 从而被检测出有一个上升沿, 这两个条件满足后, 上升沿检测元件的输出端Q为1, 则Q4.0状态为1。需要补充说明的是, Q=1的状态只维持一个周期, 因为下一个周期内不可能再来一次上升沿, 故Q变为0, 所以图中的Q4.0的“ON”状态也是一个周期。 图7-16(b)中, 下降沿检测元件的工作过程与上升沿检测过程类似, 同样需要将I0.3在本周期中的状态与上周期的状态进行比较(上周期的状态如图所示, 也存储在M0.0中), 不同之处在于它检测
47、的是下降沿。图7-16 触点上升/下降沿检测指令 RLO边沿检测指令: 该指令也分上升沿检测和下降沿检测两种, 指令的用法如图7-17所示。 这两条指令与触点边沿检测指令一样, 只在一个周期内有效。 在图7-17中, 位存储单元M0.0存放的是上个周期时, I0.0和I0.1逻辑“与”的结果, 即上个周期时的RLO; 在本周期, I0.0和I0.1逻辑“与”的结果(当前的RLO), 要和M0.0中的值进行比较, 以便判断RLO的跳变。在图7-17(a)中, 若检测出RLO的上升跳变(M0.0中保存的状态为0, 当前RLO值为1), 则“能流”从检测元件流过, 程序向“CAS1”标志处跳转, 否
48、则顺序执行程序。 在图7-17(b)中, 其过程与(a)图类似, 区别是检测RLO的下降跳变。 图7-17 RLO边沿检测指令 (6) 对RLO的直接操作指令: 包括对RLO的取反指令、 保存指令、 置位/清零指令等。 RLO取反指令: 图7-18为取反指令的应用。 图中, 若I0.0的状态为1, 则Q4.0的状态为0, 反之Q4.0状态为1。 图7-18 RLO取反指令 RLO保存指令: 在图7-19中, SAVE指令将I0.0和I0.1逻辑“与”的结果(即当前的RLO)保存到状态字寄存器的BR位(第8位)。 注意, 执行SAVE指令不会复位首次检测位( ), 由于这个原因, BR位的状态将
49、在下一个网络(Network)中参与逻辑“与”运算。 图7-19 RLO保存指令 RLO的置位和清零指令: 这两条指令在梯形图语言(LAD)和功能块图(FBD)中不能使用, 只能用在语句表语言(STL)中。 SET指令将RLO的内容置1; CLR指令将RLO的内容清0。 2定时器指令 STEP 7中的定时器指令可用线圈表示, 也可用方框表示。 共有5类: 脉冲定时器(SP)、 延时脉冲定时器(SE)、 延时接通定时器(SD)、 保持型延时接通定时器(SS)、 延时断开定时器(SF)。 这5类定时器的符号、 功能等信息见表7-8。 表7-8 定时器指令 3. 计数器指令 计数器指令分加计数器、
50、减计数器、 加减计数器三种, 可以用方框表示或者线圈表示。 线圈分预置值线圈、 加计数器线圈、 减计数器线圈。 计数器的初值用BCD码格式表示, 计数范围是0999。 如C#100表示计数器初值为十进制的100。 线圈指令如图7-20所示。 图7-20 计数器线圈指令 当预置值线圈的输入信号由0状态变为1时, 预置值被装入计数器。 加、 减计数器都对上升沿有效, 当减计数器线圈计数值为零时, 线圈相当于“断电”状态, 计数值非零时, 相当于“通电”状态。 另有复位线圈(R), 与定时器的复位线圈用法类似, 可对计数器强制复位。 计数器的方框图指令如表7-9所示。 表7-9 计数器方框指令 4.
51、 其他指令 除上述指令外, S7-300/400还有算术运算指令(整数运算、 浮点运算)、 比较指令、 移位循环指令、 数据块指令等等。 另外, 集成在系统程序中的大量系统功能和系统功能块, 用户程序可以直接调用它们, 限于篇幅这里不做介绍, 详情可查阅STEP 7编程手册。 7.3S7-300和S7-400应用系统的编程 S7-300/400系统的组态与编程是在STEP 7软件上进行的, 本节以S7-300为例简要介绍利用STEP 7进行编程的基本概念、 方法和步骤。 7.3.1 STEP 7软件包 STEP 7软件包可运行在Windows 95/98/2000/NT下, 为适应不同的应用对
52、象, 可选择不同的版本, 其中的STEP 7标准软件包可用于对SIMATIC S7-300/400、 SIMATIC M7-300/400、 SIMATIC C7等系统的编程和开发。 STEP 7标准软件包的功能和组成如图7-21所示。 图7-21 STEP 7标准软件包的组成 (1) SIMATIC管理器可浏览SIMATIC S7、 SIMATIC M7、 SIMATIC C7的所有工具软件和数据。 (2) 符号编辑器管理所有的全局变量, 用于定义符号名称、 数据类型和全局变量的注释。 (3) 通信组态包括组态的连接和显示、 定义MPI或PROFIBUS DP设备之间由时间或事件驱动的数据传
53、输、 定义事件驱动的数据、 用编程语言对所选通信块进行参数设置。 (4) 硬件组态用于对硬件设备进行配置和参数设置。 包括: 系统组态, 从目录中选择机架, 并将模块分配给各个槽位, 自动生成I/O地址; CPU参数设置, 例如启动特性、 扫描监视时间等; 模块参数设置, 用于定义硬件模块的可调整参数。 (5) 编程语言工具中可以使用梯形图语言(LAD)、 功能块图语言(FBD)、 语句表语言(STL)三种。 (6) 硬件诊断工具为用户提供自动化系统的状态, 可快速浏览CPU的数据以及用户程序运行中的故障原因, 也可用图形方式显示硬件配置, 例如模块的一般信息和状态、 显示模块故障、 显示诊断
54、缓冲区信息等。 7.3.2 应用系统的程序结构 用户程序的主程序在组织块OB1中, 如果所有指令都编写在OB1中, 程序指令依次执行, 则把这种编程方式称做线性编程。 此外, STEP 7支持结构化程序编程, 可将控制过程中要求的功能编成通用的逻辑块(FC或FB), 相当于子程序, 通过主程序(OB1)调用执行, 在调用时可对FB赋以参数使其完成特定的操作。 同时, STEP 7支持子程序对子程序的调用, 即逻辑块可以嵌套调用逻辑块。 每次调用都中断原程序的执行, 转而执行被调用逻辑块, 被调用块执行完毕后, 返回继续执行原程序。 结构化的用户程序如图7-22所示。 图7-22 结构化程序 具
55、体说明如下: (1) 功能块(FB): 用户编写的逻辑功能块, 每个FB都有一个背景数据块DI, 用户程序利用DI传递参数。 (2) 功能(FC): 用户编写的逻辑功能块, FC没有背景数据块DI, 所使用的临时变量存储在局域数据堆栈中。 (3) 系统功能块(SFB): 集成在系统中的功能块, 用户程序可调用, 背景数据块DI传递参数。 (4) 系统功能(SFC): 集成在系统中的功能, 用户程序可调用, 没有背景数据块DI, 临时变量存储在局域数据堆栈中。 7.3.3 组织块功能 组织块OBx(x: 1、 10122), 是操作系统和用户程序的接口, 类似于微机汇编语言中的“中断向量表”,
56、每一个组织块都对应一个驱动事件, 例如OB30 对应的是循环中断, 循环时间可在STEP 7中设定。 当驱动事件的条件满足时, 操作系统调用相应的组织块, 执行该组织块中的用户程序, 执行完毕返回, 继续执行原程序。因此每一个组织块都相当于一个中断处理程序的入口指针, 用户可以根据控制系统的要求, 在相应的组织块中编写自己的应用程序, 有些组织块需要在STEP 7中进行相应的参数设置, 用以规定驱动事件需要满足的具体条件和具体的响应组织块。 S7所提供的部分组织块及其响应优先级见表7-10。 表7-10 系统组织块及优先级 限于篇幅, 其他组织块及其优先级不再列出, 详情请查阅S7-300/4
57、00的系统软件手册。 7.3.4 循环程序的处理过程 PLC用户程序的处理过程均为循环处理过程, 这一点已经在第3章中介绍过了。 S7-300/400 PLC程序的执行过程也遵循这一原理, 其具体过程如下: (1) 系统上电或由STOP模式转到RUN模式时, CPU执行启动操作, 对没有保持功能的存储区、 定时器、 计数器、 堆栈等清0, 复位保持的硬件中断等。 此外, 还要根据不同的启动方式执行一次由用户编写的“启动组织块”(OB100或OB101或OB102), 完成用户指定的初始化操作。 (2) 启动循环时间监控。 系统默认的最大循环时间可以在STEP 7中修改。 (3) 扫描输入状态。
58、 从输入模块中读取各个输入点的状态, 并在写入过程中输入映像存储区。 (4) 执行组织块OB1, 扫描用户程序, 包括调用各功能(FC、 SFC)和功能块(FB、 SFB), 响应事件中断(调用相应的组织块OBx)等。 在扫描用户程序过程中, 同时刷新过程输出映像存储区。 (5) 将过程输出映像存储区的内容传递给输出模块, 执行输出控制动作。 完毕后转第(2)步重新开始循环扫描。 7.3.5 编程的基本方法和步骤 工业生产过程中对储水容器水位控制的应用是非常多的, 本节以此为例, 采用S7-300 PLC设计一个水位控制系统, 系统并不复杂, 也并未取自某一具体的工业环境, 只是希望通过对整个
59、开发过程的介绍, 向大家说明S7-300 PLC编程的一般方法和过程。 系统如图7-23所示, DCS600是ABB公司的变频器, 利用它的顺序控制功能, 可输出7个固定频率, 7个频率值能够在参数中设定。 PLC的作用是检测水位, 并向DCS600输出三个开关量信号, 用于调整DCS600的输出频率, 从而控制进水流量达到控制水位的目的。 PLC输出的三个开关量地址为Q4.0、 Q4.1、 Q4.2, 它们与变频器输出频率之间的关系如表7-11所示。 图7-23 水位控制系统 表7-11 变频器速度与PLC输出的关系 水位检测信号的安置如图7-24所示。 一共设置4个水位检测开关, 检测方式为有水时闭合。 除了上、 下限位之外, 开关1、 2的作用是将水位划分为三个状态, 状态为水位偏高, 为适中, 为偏低。 图7-24 水位检测示意图 PLC控制要求和策略: (1) 上限位: 点亮上限位报警指示灯, 开关输出组合为001(0 Hz)。 (2) 下限位: 点亮下限位报警指示灯, 开关输出组合为111(50 Hz)。 (3) 状态: 延时若干时间后若依然为状态, 则开关输出组合减1, 使DCS600的输出频率下调一个级
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年泰国大型活动交通疏导试题含答案
- 北京警察学院《电力系统分析》2024 - 2025 学年第一学期期末试卷
- 河南省新乡市辉县市2024-2025学年八年级上学期期末生物试题(含答案)
- 2026年环保科技行业政策报告及碳中和技术
- 2026年及未来5年中国多肽蛋白行业发展前景预测及投资方向研究报告
- 护理课件制作中的互动元素
- 体育荣誉制度
- 会所会员卡制度
- 2025至2030中国智能穿戴设备市场现状及产业链投资规划报告
- 临沂市公安机关2025年第四季度招录警务辅助人员备考题库带答案详解
- 铁路劳动安全 课件 第二篇 常见事故预防
- 农贸市场环境卫生清洁行动工作方案
- 淮安市2022-2023学年七年级上学期期末地理试题
- 2024届高考语文二轮复习专题-文言文阅读(上海专用)(解析版)
- 2024可打印的离婚协议书模板
- 2024届广东省深圳市中考物理模拟试卷(一模)(附答案)
- 《房颤的药物治疗》课件
- 诊所污水处理管理制度
- 辅导员工作的职责与使命课件
- 新疆交通职业技术学院教师招聘考试历年真题
- 吊篮租赁安拆分包合同
评论
0/150
提交评论