附录A SIMATIC S7-200简介 - 图文

更新时间:2024-04-12 09:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

附录A SIMATIC S7-200简介

SIMATIC S7-200是西门子公司生产的具有很高的性能价格比的微型可编程序控制器(PLC)。由于它具有结构小巧,运行速度高,价格低廉及多功能和多用途等特点,因此在下述行业中得到了广泛的应用:

■专用机械设备:包装机,打包机和卷扬机。 ■食品加工工业:搅拌机,切割机和轧碎混合器。 ■农业:挤奶和饲养机械设备,牛奶冷却罐。 ■电子装配线。 ■木工机械。

■小规模应用:门锁,泵和压缩机等。

为适应不同的应用场合,S7-200具有四种不同结构(配置)的基本CPU单元(见图A.1):

CPU 212 它是一种用于作简单控制的经济型CPU,它的主要功能是替代原系统中的接触器和其它简单的控制逻辑。

CPU 214 它是在CPU212的基础上增加了输入和输出点数和其它一些集成在CPU模块上的特殊功能,因此适合控制要求较高的场合。

CPU 215和CPU216 CPU 215和CPU 216是在CPU 214的基础上,进一步扩大了用户的程序存储区和用户数据存储器,增加了PID指令功能和通讯口(CPU 215还支持DP通讯协议),以及本机的I/O口(CPU 216),因此可对较大规模的系统作控制。

A.1 S7-200 PLC结构特点

机械结构上的特点:

S7-200 PLC在机械结构方面有以下特点: (1)它的塑料外壳既紧凑又坚固。

(2)易于接线和操作方便,在接线端前带有面罩保护。

(3)PLC上设计有专用的DIN导轨安装机构和安装孔,可以垂直方向或水平方向安装在标准的DIN导轨上或直接安装在控制柜底板上。

(4)备有专用的接线端子排要供用户选择。 电气结构上的特点:

(1)电气安全标准:S7-200 PLC在电气上符合VDE、VL、CSA和ISO 9001中有关安全方面的标准。

(2)可维护性:在S7-200的CPU中配有EEPROM,可永久性地存储用户程序和其它重要的系统参数。此外它还安有大容量的电容器,供长时间地存储所有的数据使用,而不再需要另外安装需要维护的后备电池。

1

图A.1 S7-200的结构(CPU 212)

(3)内置可直接与传感器/负载相连的直流24V驱动电源,输出电流可达180mA或400mA。如果输出电流大于这个范围,可选购其它电源模块(选件)。

(4)为适应不同的应用场合,每种CPU有三种使用不同电源和电压的类型,相应的输入和输出的结构和电压也可以是不同的(见表A.1)。

表A.1 S7-200三种不同的类型 类型 CPU 212, 直流输出 CPU 214 继电器输出 N型* 继电器输出 P型* 交流输出 交流24V输入 交流输出 交流120V输入 CPU 215, 直流输出 CPU 216 继电器输出 电源 直流24V 输入电压 输出电压 直流24V 直流24V 直流24V 交流24V~230V 直流24V 交流24V~230V 输出电流 0.5A,晶体管 2A,继电器 2A,继电器 交流120~230V 直流24V N型* 交流120~230V 直流24V P型* 交流120~230V 交流24V 交流120V~230V 1A,可控硅 交流120~230V 交流120V 交流120V~230V 1A,可控硅 直流24V 直流24V 直流24V 直流24V 0.5A,(CPU 215,1A)晶体管2A,继 交流120~230V 直流24V 交流24V~230V 电器 注:*P型:输入点共正型 N型:输入点共负型

2

(5)本机上带有输入输出点:CPU 212具有8个输入点和6个输出点,CPU 214和CPU 215具有14个输入点和10个输出点,CPU 216具有24个输入点和16个输出点。

(6)灵活的中断输入:S7-200的CPU可以极快的速度来响应中断请求信号的上升沿或下降沿。

(7)机内配有高速计数器,以适应对机外高速信号的计数要求。其中CPU 212带有一个计数频率最高可达2KHz的加或减的计数器,而CPU 214~216还带有两个独立的计数频率最高可达7KHz的高速计数器,每个计数器可用程序复位或使能,并可设置成加法或减法计数或相位差90°的两个脉冲序列。

(8)便于扩展:为系统备有专用的数字扩展模板(EM),可以很方便地对系统的输入和输出点作扩展。

(9)备有专用的仿真器(选件),以便用户在现场输入用户程序,并对用户程序作调试和仿真。

(10)模拟电位器外部设定:S7-200的面板上有一个(CPU 212)或二个(CPU 214~CPU 216)模拟型电位器,用户可利用它们作连续型的定时时间设定等工作。

(11)CPU 214还具有下述功能:

*脉冲输出:可以输出二路最高频率可达4KHz的高频脉冲信号,以便用户定位控制使用,该脉冲可送至脉冲控制型伺服驱动器控制马达或送至步进电机驱动器控制步进电机。

*实时时钟:机内设有硬件实现的实时时钟,以便用户作定时报警,记录工作时间以及其它基于时间控制的工作。

*EEPROM子模块(选件):利用这个小巧的EEPROM子模块,可以对本机修改用户程序,而无需使用专用的编程器进行任何操作。

*电池卡(选件):虽然在S7-200系统中已配有大容量的电容器在外部掉电时保持存储的用户数据(如位存储状态,数据块和计数器等)的存储器供电,但它最多只能供2~5天的时间。如果需要更长时间的供电,则应再插入电池卡(只有CPU 214~CPU 216才允许插入该卡)。这样供电的时间一般可长达一年(最少200天)。

(12)CPU 215和CPU 216在CPU 214的基础上,还具有如下功能: *CPU 215和CPU 216具有PID指令,便于对系统作动态控制。

*CPU 215和CPU 216有二个通讯口,CPU 215的其中一个口可支持DP协议,以便作远程通讯。

A.2 S7-200的基本工作原理

图A.2是说明S7-200系统基本工作原理的结构框图。

3

图A.2 S7-200的工作原理

S7-200的CPU从整体上看有下述四部分: (1)输入部分:主要用于接收现场的控制信号。

(2)输出部分:主要用于向现场输出具有足够的驱动能力的控制信号。 (3)程序存储器:用于存放用户程序。

(4)处理器:它是S7-200系统中的核心,它控制着整个S7-200系统作有序的工作。处理器周期性地执行扫描程序:首先它读入所有输入端上各控制信号的状态,并把读入的状态存入过程输入映象区(PII)。然后,处理器在内部计数器,位存储器和定时器的控制下逐行扫描用户程度,并执行有关的运算或操作,得到当时应有的控制信号(状态);最后处理器将处理所得到的结果(控制信号)输出到过程输出映象区(PIQ)中,并在周期的末尾,将输出映象区中的信号同时输出到它们的输出端。如此周而复始,S7-200实现对现场过程的控制。

A.3 S7-200的主要功能

S7-200提供了多种功能,使得在编程与控制时更加灵活方便。

搜集执行速度高 S7-200的CPU执行每条二进制指令的时间仅为1.3μs(CPU 212)或0.8μs(CPU 214~CPU 216),因此可大大缩短程序的扫描和执行时间。

4

丰富的指令集 S7-200几乎包括了一般计算机所具有的各种基本操作指令。例如,变量赋值,数据存储,计数,装载,传输,比较,移位,循环,求补及子程序的调用等。

除此之外,它还具有友好的用户功能,例如,脉冲宽度调制(PWM),输出频率可控的序列脉冲,跳转功能,循环功能,码制转换以及PID等功能。这些指令和功能有助于用户简化编程工作。

内置计数器 S7-200的CPU模板上具有硬件构成的计数器,这在多数现场实时控制中是非常有用的。

灵活的中断功能 (1)触发中断的信号,可以用软件设定为中断输入信号的上升沿或下降沿,以便对过程事件作出快速的响应。

(2)可设定为由时间控制的自动中断,所设定的时间范围为5ms~255ms(步长为1ms)。 (3)可上内置高速计数器自动触发中断,且具有两种不同的触发方式:计数到达定值触发和改变计数方向的瞬间触发。

(4)在与外设(如打印机或条形码阅读机等)通讯时可以以中断方式工作,以便作快速而简便的数据变换。

输入和输出的直接查询与赋值 在S7-200的扫描周期内,可直接查询当前的输入和输出信号,在必要的时候,还可以对输入和输出直接赋值或改变值。这样不仅使用户在调试程序时非常方便,同时也可使系统对过程事件作出快速的响应。例如在对中断作出响应时可立即将若干输出位复位,而不必再过一个扫描周期来复位。

严格的口令保护 S7-200系统具有三级不同的口令保护级别,以便用户对程度作有效的保护。

(1)自由存取:程序可自由修改。

(2)只可读取:一般只可读取程序,在未经许可时不能进行修改。可以对它作调试和拷贝,以及设置系统参数。

(3)完全保护:在未经许可的条件下,不能修改和拷贝程序,但可以修改其中的系统参数。

友好的调试和故障诊断功能 这些功能包括:整个用户程序可在用户自己所规定的周期数内作运行和分析,同时可记录位存储器,定时器或计数器的状态(最多连续记录124个周期)。

输入或输出的强制功能 为适应用户调试程序的需求,可将输入或输出按位设置成与扫描周期和工作状态无关的状态。

通讯功能 通讯是S7-200系统的一个重要功能,它为用户提供了很强的灵活的通讯功能。集成在S7-200中的点对点接口(PPI)可用普通的双绞线作波特率高达9.6 kbit/s的数据通讯,用RS 485接口实现的高速用户可编程接口,可使用专用的位通讯协议(如ASCII)协议作波特率高达38.4 kbit/s的高速通讯,并可按步调整。

5

点对点的通讯

PPI(点对点接口)是西门子为S7-200系统开发的通讯协议。PPI是一种主—从协议:主站设备发送要求到从站设备,从站设备响应。从站不主动发信息,只是等待主站的要求和对要求作出响应。

通过编程或操作员的控制,可对下列设备作点(见图A.3)。

图A.3 S7-200 PPI通讯方式

*PG 702编程器

通过PC/PPI电缆与PG 720/720C、PG 740和PG 760作通讯。 *PC或AT兼容机

通过PC/PPI电缆,可与PC或AT兼容机作通讯。 *TD 200文本显示器

通过MPI电缆可直接与COROS操作面板OP 3、OP 5、OP 15、OP 25和OP 35连接。 *在SIMATIC S7-200系统中,可以用PG、PC、TD 200或OP作主机连成一个通讯网络,网络上的从机最多不超过31个,通讯时使用公用的数据总线,但各从机之间不能作数据通讯。

Profibus-DP网络通讯

在S7-200系列的CPU中,CPU 222、CPU 224、CPU 226、CPU 226XM都可以通过EM277

6

Profibus-DP扩展模块支持Profibus-DP网络协议。EM 277通过模块扩展电缆连接到S7-200 CPU。 EM 277 Profibus-DP模块的端口可运行于9 600波特和12M波特之间的任何Profibus波特率。

作为DP从站,EM 277模块接受从主站来的多种不同的I/O配置,向主站发帝和接收不同数量的数据。EM 277能读写S7-200 CPU 中在主站方面定义地址的变量数据块(V存储区)。这样,使用户能与主站交换任何类型的数据。首先,将数据移到S7-200 CPU中的变量存储器,就可将输入、计算值、定时器值或其他计算值传送到主站。类似地,从主站来的数据存储在S7-200 CPU中的变量存储器内,并可移到其他数据区。

一般情况下,如果不需要在S7-200 CPU内进行EM 277的诊断等操作,就不必在27-200方面做关于Profibus-DP通讯的组态和编程工作,几乎所有工作都由主站方面完成,S7-200方面只需处理数据。

自由口通讯

S7-200支持自由口通讯模式如图A.6所示。自由口模式使S7-200 PLC可以与许多通讯协议公开的其他设备、控制器进行通讯,波特率范围为1 200~115 200bit/s(可调整)。

自由口模式的数据字节格式总是有一个起始位、一个停止位,您可以选择7位或者8位数据,也可以选择是否有校验位,以及是奇校验还是偶校验。

在自由口模式下,使用XMT(发送)和RCV(接收)指令,为所有的通讯活动编程。通讯协议应符合通讯对象的要求或者由用户决定。

*CPU的通讯口工作在自由口模式下时,此通讯口不能同时工作于其他通讯模式下,例如PPI编程状态。

*CPU的通讯口是RS-485标准,如果通讯对象是RS-232设备,则需要RS-232/PPI电缆。

USS和Modbus RTU从站指令库

Step7-Micro/sin32 v3.2以上版提供了USS和Modbus RTU从站指令库。USS指令库可以对SIEMENS生产的MM420、MM430和MM440变频器进行串行通讯控制;Modbus RTU指令库为S7-200 CPU提供了Modbus RTU从站功能。

USS和Modbus指令库都使用S7-200 CPU的自由通讯模式编程实现。 以太网通讯

S7-200 CPU加装CP243-1(CP243-1 IT)扩展模块可以支持工业以太网通讯。CP243-1(或CP243-1 IT)模块提供了一个标准的RJ45网络接口,完全支持TCP/IP协议,支持标准的网络设备(如集线器、路由器等)(如图1-10)。

通过在CPU上扩展CP243-1(或CP 243-1 IT)模块,您可以:

●支持10/100 Mbit/s工业以太网、支持半双工/全双工通讯、TCP/IP,最多8个连接; ●与运行Step7-Micro/WIN32的计算机通讯,支持通过工业以太网的远程编程服务;

7

●连接其他SIMA TIC S7系列远程组件,例如,S7-300上的CP343-1,或其他CP243-1; ●连接基于OPC的PC应用程序,如组态软件等;

●支持集成的Web网页服务,E-mail服务等(CP243-1 IT)。

使用Step7-Micro/SIN32 V3.2以上版本中的Ethernet Wizard,可以方便地组态CP243-1。 Modem远程通讯

S7-200提供了一个简单易用的远程Modem通讯解决方案。S7-200 CPU通过附加EM241扩展Modem通讯模块,可以实现通过电话交换机和电话网络的远距离通讯。

A. 4扩展模板与系统扩展

在S7-200的CPU模板上已提供了一定数量的数字输入和输出结点,但如果用户所需的输入或输出结点超出这个范围时,必须对系统作必要的扩展。为此SIEMENS公司备有专用于扩展用的各种模板可供用户选用。用扩模展板来扩展系统具有以下优点:

*最佳的适应性 用户可根据自己实际控制系统的要求,选用各种合适的扩展模块对PLC作硬件组态,以求达到各种功能或控制精度,同时可节省开支,减少不必要的投资。

*很大的灵活性 当已运行的系统需要改造或扩充时,PLC可以随时进行升级或心版,所作的工作仅仅是替换或增加扩展模板和修改相应的控制软件。

扩展模板的结构特点

扩展模板的外型如图A.4,它与基本单元(CPU模板)具有相同的结构,因此也具有以下特点:

(1)塑料外壳小巧而坚固。

(2)易于接线的端子排,和操作员易于控制的显示器,并用盖予以保护。 (3)端子排可安装在模板上作为一个永久性的元件(选件)。

(4)易于与CPU和其它扩模展块组装。扩展模板与CPU模板一样,可安装在标准的DIN导轨上,并通过专用的总线连接器与CPU模板和其它扩展模板连接起来(见图A.7)。

(5)利用扩展模板上的安装孔,可将扩展模板与CPU模板一起安装在墙上。 注意:应将扩展模板安装在CPU模板的右边,以便用专用的总线连接器把它与CPU连接起来。

8

图A.4 扩展模板的外型

图A.5 扩展模板与CPU的连接

9

主要的扩展模板

(1)数字量输入扩展模板EM 221

每个EM221可扩展8路数字量输入通道(DC或AC),输入各路均带光电隔离输入通道,而AC型8路输入都带光电隔离器。

(2)数字量输出扩展模板EM 222

每个EM 222可扩展8路数字量输出通道(DC/继电器/AC)。输出各路均带光电隔离器。 (3)数字量输入+输出扩展模板EM 223

每个EM 223可同时扩展4路数字量输入(DC/继电器/AC)和4路数字量输出通道,而且这8个扩展点都是带光电隔离器的。

(4)模拟量输入扩展模板EM 231

每个EM 231可扩展3路模拟量输入通道,其中A/D转换的时间为25μs,数字量的位数是12 bit。

(5)模拟量输入+输出模板EM 235

每个EM 235可同时扩展3路模拟量输入通道和1路模拟量输出通道。其中输入通道中的A/D转换的时间为25μ/s,数字量的位数为12 bit。输出通道上的D/A转换时间为100μs,数字量的位数是12 bit。

其它还有接线端子排以及连接扩展模板用的总线连接器BC 290等。

A.5端子连接图

10

A.6 S7-200编程软件

S7-200周而复始地执行应用程序,控制一个任务或过程。利用STEP7-MicroWIN可以创建一个用户程序并将它下载到S7-200中。STEP7-MicroWIN软件中提供了多种工具和特性用于完成和调试应用程序。

(1)安装条件

Step7-Micro/WIN32 V3.2可以在Microsoft公司出品的如下操作系统环境下安装: ●Windows 95;

●Windows 98,2nd Edition; ●Windows NT,Version 4.0,SP6; ●Windows Me Edition; ●Windows 2000,SP2;

●Windows XP Home (Step7-Micro/WIN32 V3.2 SP3以上); ●Windows XP Professional (Step7-Micro/WIN32 V3.2 SP3以上)。 硬件要求

●任何能够运行上述操作系统的PC或PG(编程器); ●100M硬盘空间;

●Windows系统支持的鼠标;

●推荐使用最小屏幕分辨率1 024×768,小字体。 (2)安装步骤

●关闭所有应用程序,包括Microsoft Office快捷工具栏;在光盘驱动器内插入安装光盘。如果没有禁止光盘插入自动运行,安装程序会自动运行;或者在Windows资源管理器中打开安装光盘上的“Setup. exe”文件;

●按照安装程序的提示完成安装。

11

安装SP升级包(Service Pack)

Step7-Micro/WIN32的SP升级包可从西门子互联网站上下载。只须安装一次最新的SP包,就可以将软件升级到当前最新版本。

在Windows资源管理器中找到SP所在文件夹(如图A.6所示)。

图A.6 资源管理器中SP所在的文件夹

运行相应的可执行文件(如图A.7所示)。

图A.7 运行可执行文件

按“Next”按钮(如图A.8所示)。

12

图A.8 选“Next“继续升级操作

解压缩完成后会自动执行安装。首先寻找已在本地硬盘上安装的有效版本(如图A.9所示)。

图A.9 寻找本地硬盘上安装的有效版本

找到已安装的有效版本后显示(如图A.10所示)。

图A.10 找到已安装的有效版本

指定安装目标文件夹(如图A.11所示)。

13

图A.11 选取安装目标文件夹

Step7-Micro/SIN32支持在一个操作系统内安装多个版本(包括不同的SP版本),但需要 它们指定不同的安装路径。

如果指定了和原安装版本相同的安装路径,会弹出一个消息框。要在Windows的“安装/卸载程序”中卸载原先版本(如图A.12所示)。再次安装SP前,必须重新启动操作系统。

图A.12 卸载原始版本提示

按“Yes”确认退出安装程序(如图A.13所示)。

图A.13 是否退出安装程序

Step7-Micro/WIN32 V3.2版从SP1起,提供完全的中文编程环境。

卸载原安装版本后,重新启动操作系统。找到解压缩SP安装包文件的文件夹(如图A.14所示)。

14

图A.14 找到SP解压缩的文件夹

继续安装,您可以选择Step7-Micro/WIN32支持的语言(如图A.15所示)。

图A.15 选择支持语言

Stepy-Micro/WIN32窗口元素

Stepy-Micro/WIN32窗口元素如图A.16所示。 浏览条——显示常用编程按钮群组;

View(视图)——显示程序块、符号表、状态图、数据块、系统块、交叉参考及通讯按钮;

Tools(工具)——显示指令向导、TD200向导、位置控制向导、EM 253控制面板和扩展调制解调器向导的按钮。

指令树——提供所有项目对象和当前程序编辑器(LAD、FBD或STL)的所有指令的

15

树型视图。您可以在项目分支里对所打开项目的所有包含对象进行操作;利用指令分支输入编程指令。

交叉参考——查看程序的交叉引用和元件使用信息。 数据块——显示和编辑数据块内容。

图A.16 Step7-Micro/WIN32窗口元素

状态图——允许您将程序输入、输出或变量置入图表中,监视其状态。可以建立多个状态图,以便分组查看不同的变量。

符号表/全局变量表——允许您分配和编辑全局符号。可以为一个项目建立多个符号表。 输出窗口——在您编译程序或指令库时提供消息。当输出窗口列出程序错误时,可双击错误讯息,会自动在程序编辑器窗口中显示相应的程序网络。

状态栏——提供您在Step7-Micro/SIN32中操作时的操作状态信息。

程序编辑器——包含用于该项目的编辑器(LAD、FBD或STL)的局部变量表和程序视图。如果需要,您可以拖动分割条以扩充程序视图,并覆盖局部变量表。单击程序编辑器窗口底部的标签,可以在主程序、子程序和中断服务程序之间移动。

局部变量表——包含对局部变量所作的定义赋值(即子程序和中断服务程序使用的变量)。

菜单栏

允许您使用鼠标或键盘执行操作各种命令和工具。您可以定制“工具”菜单,在该菜单

16

中增加自己的工具(如图A.17所示)。

图A.17 菜单栏

工具栏

提供常用命令或工具的快捷按钮(如图A.18所示)。您可以定制每个工具条的内容和外观。

图A.18 工具栏

标准工具栏(如图A.19所示)。

图A.19 标准工具栏

调试工具栏(如图A.20所示)。

图A.20 调试工具栏

常用工具栏(如图A.21所示)。

17

图A.21 常用工具栏

LAD指令工具栏(如图A.22所示)。

图A.22 LAD指令工具栏

项目及其组件

Step7-Micro/WIN32为每个实际的S7-200系统的软件部分生成一个项目,项目以扩展名为.mwp的单一文件格式保存。打开一个.mwp文件就打开了相应的工程项目。

使用浏览条的视图部分和指令树的项目分支(如图A.23所示),可以查看项目的各个组件,并且在它们之间切换。用鼠标单击浏览条图标,或者双击指令树分支可以快速到达相应的项目组件。

18

图A.23 浏览条的视图部分和指令树的项目分支

按Communications(通讯)图标可以设置编程计算机与S7-200 CPU之间的通讯参数。 定制Step7-Micor/WIN32 显示和隐藏各种窗口组件

从菜单条选择View(查看),并选择一个对象,将其选择标记在打开和关闭之间切换。带选择标记的对象是当前在Step7-Micro/SIN32环境中打开的对象(如图A.24所示)。

19

图A.24 当前Step7-Micro/WIN32环境中打开的对象

选择窗口显示方式

从菜单条选择Windows(视窗)>Cascade(层叠);Horizontal(水平);Vertical(垂直)可以改变窗口排列方式。也可在不同窗口间切换(如图A.25所示)。

当前窗口最大化之后,会自动隐藏其他窗口。

图A.25 选择窗口显示方式

使用标签切换窗口的不同组件

诸如程序编辑器、状态图、符号表和数据块的窗口可能有多个标签。例如,在程序编辑器窗口中用鼠标单击标签可以在主程序、子程序和中断服务程序之间浏览(如图A.26)所示。

20

图A.26 使用标签切换窗口的不同组件

改变窗口区域的尺寸(如图A.27所示)。

图A.27 改变窗口区域尺寸

选择中文环境

Step7-Micro/SIN32 V3.2从SP1起,支持完全汉化的工作环境。在菜单Tools(工具)>Options(选项)中,选择General(常规)选项卡,可以设置语言环境(如图A.28所示)。改变设置后,退出YStep7-Micro/SIN32,再次启动后生效。

21

图A.28 选择语言环境

使用帮助

从菜单Help(帮助)可以获得联机帮助(如图A.29所示)。

图A.29 使用“帮助”

当您需要的时候,按F1键就获得帮助!

选择希望获得帮助的项目,如菜单项、对话框元素、指令块等,按F1键会获得与此项目有关的帮助信息。

Contents and Index(目录和索引) 打开标准的联机帮助文件。 What’s This(这是什么)?

使用此命令,或按“Shit + F1”使光标变成问号,在希望获得帮助的项目上单击。 About(关于)列出关于Stepy-Micro/WIN32的详细信息。

用STEP7-Micro/WIN创建用户程序

22

要打开STEP7-Micro/WIN,可以双击STEP7-Micro/WIN图标,也可以在命令菜单中选择Start>SIMATIC>STEP7-Micro WIN3.2。如图A.30所示,STEP7-Micro/WIN项目窗口为创建你的控制程序提供了一个便利的工作空间。

工具栏为常用菜单命令的快捷方式提供按钮。你可以显示或者隐藏任意工具栏。 操作栏为访问STEP7-Micro/WIN中不同的程序组件提供了一组图标。指令树显示了所有的项目对象和创建你的控制程序所需要的指令。你可以将指令从指令树中拖到你的应用程序中,也可用双击指令的方法将该指令插入到程序编辑器中的当前光标所在地。

程序编辑器中包括程序逻辑和局部变量表。你可以在局部变量表中为临时的局部变量定义符号名。在程序编辑器的底部有子程序和中断服务程序的标签。点击这些标签,你可以在主程序、子程序和中断服务程序之间切换。

图A.30 STEP 7-Micro/WIN

STEP7-Micro/WIN提供三种编辑器来创建你的程序:梯形图(LAD)、语句表(STL)和功能块图(FBD)。用任何一种程序编辑器编写的程序,都可以用另外一种程序编辑器来浏览和编辑,但要遵循一些输入规则。

⑴STL编辑器的特点

STL编辑器按照文本语言的形式显示程序。STL编辑器允许你输入指令助记符来创建你的控制程序。语句表也允许你创建用LAD和FBD编辑器无法创建的程序。这是因为你在使用S7-200的本族语言进行编程,而在图形编辑器中,为了正确地画出图形,必须遵守一些规则。这些基于文本的概念与汇编语言编程非常相似。

S7-200从上到下按照程序的次序执行每一条指令,然后回到程序的开始重新执行。 当你选择STL编辑器时,考虑以下要点: ·STL最适合于有经验的程序员。

23

·STL有时让你能够解决用LAD或者FBD不容易解决的问题。 ·当你使用STL编辑器时,只能使用SIMATIC指令集。

·虽然你可以用STL编辑器查看或者编辑用LAD或者FBD编辑器编写的程序,但是反之不一定成立。LAD或者FBD编辑器不一定总能显示所有利用STL编辑器编写的程序。

⑵LAD编辑器的特点

LAD编辑器以图形方式显示程序,与电气接线图类似。梯形图程序允许程序仿真来自电源的电流通过一系列的逻辑输入条件,决定是否使能逻辑输出。一个LAD程序包括左侧提供能源的能量线。闭合的触点允许能流经过并到达下一个元素;打开的触点会阻塞能流。

逻辑控制是分段的,程序在同一时间执行一段,从左到右,从上到下。图A.31给出了LAD程序的一个例子。不同的指令用不同的图形符号表示。它包括三种基本形式。

图A.31 LAD程序举例

触点代表逻辑输入条件,例如:开关、按钮或者内部条件等。

线圈通常表示逻辑输出结果,例如:灯负载、电机启动器、中间继电器或者内部输出条件。

盒表示其它一些指令,例如:定时器、计数器或者数学运算指令。 当你选择LAD编辑器时,考虑以下要点: ·梯形图逻辑易于初学者使用。

·图形表示法易于理解而且全世界通用。

·LAD编辑器能够使用IMATIC和IEC 1131-3指令集。

·可以使用STL编辑器显示所有用SIMATIC LAD编辑器编写的程序。 ⑶FBD编辑器的特点

FBD编辑器以图形方式显示程序,由通用逻辑门图形组成。它没有梯形图编辑器中的触点和线圈,但有与之等价的指令,用盒指令表示。图A.32中给出了FBD程序的一个例子。

24

图A.32 FBD程序举例

FBD不使用左右能量线,因此“能流”这个术语用于表示通过FBD逻辑块控制流这样一个类似的概念。

逻辑“1”通过FBD元素称为能流。能流的原始输入和最终的输出可以直接分配给操作数。

程序逻辑由这些盒指令之间的连接决定。也就是说,一条指令(例如AND盒)的输出可以用来允许另一条指令(例如定时器),这样可以建立所需要的控制逻辑。这样的连接概念使你可以解决各种各样的逻辑问题。

当你选择FBD编辑器时,考虑以下要点: ·图形逻辑门的表示形式有利于程序流的跟踪。 ·FBD编辑器能够使用SIMATIC和IEC 1131-3指令集。

·可以使用STL编辑器显示所有用SIMATIC FBD编辑器编写的程序。 SIMATIC和IEC 1131-3指令集的选择

大部分PLC产品提供相似的基本指令,但是不同厂商的PLC产品在它们的表示和操作上常常有小的差别。近年来,国际电工委员会(IEC)推出了一个有关PLC编程各个方面的一个全球标准。这个标准鼓励不同的PLC厂商向用户提供与IEC指令集的表示和操作一致的指令。S7-200提供两种指令集用于完成各种自动化任务。

IEC1131-3标准编译IEC指令集,而SIMATIC指令集是S7-200专用的。 提示:

当在STEP7-Micro/WIN中选择IEC模式时,在指令树中不能够被IEC 1131-3标准使用的指令旁边会显示一个红色的菱形(◆)。

在SIMATIC指令集和IEC 1131-3指令集之间有一些主要区别。

·IEC 1131-3指令集是不同PLC厂商的指令标准。SIMATIC指令集中的一些指令并不是IEC 1131-3规范中的标准指令。这些是仍在使用的非标准指令,但是如果使用它们,程序就不再严格的与IEC 1131-3兼容。

·一些指令可以接受多种数据格式,这个概念通常指多重功能。例如,数学指令盒中不区分ADD_∣(整数加法)和ADD_R(实数加法),而是在加法指令中检查被加数的格式,并自动选择正确的CPU指令。这样可以节省宝贵的程序设计时间。

·当使用IEC 1131-3指令时,自动检查指令参数并选择合适的数据格式。数据格式检

25

查不需要用户介入。例如,如果你给一个位操作指令输入一个整数值,就会出现一个错误。这样,可以有助于减少编程的语法错误。

在选择SIMATIC或IEC指令集时,应考虑以下因素:

·SIMATIC指令通常执行时间最短。一些IEC指令的执行时间较长。

·一些IEC指令与SIMATIC指令操作数不同,例如定时器指令、计数器指令、乘法指令和除法指令等。

·你可以在全部的三种程序编辑器(LAD、STL、FBD)中使用SIMATIC指令集,但只能在LAD和FBD编辑器中使用IEC指令。

·对于不同品牌的PLC,IEC指令的操作是标准的,因而创建IEC程序的知识与PLC操作平台无关。

·因为IEC标准中定义的指令少于SIMATIC指令集,因而可以用SIMATIC指令完成更多功能。

·IEC 1131-3规定变量必须使用类型声明,而且支持系统数据类型检查。 理解程序编辑器中使用的惯例

STEP7-Micro/WIN在所有程序编辑器中使用以下惯例: ·在符号名前加#(#Var1)表示该符号为局部变量。 ·在IEC指令中%表示直接地址。

·操作数符号“??”或者“????”表示需要配置操作数。

LAD程序被分为程序段。一个程序段是按照顺序安排的以一个完整电路的形式连接在一起的触点、线圈和盒,不能适中或者开路,也不能有能流倒流的现象存在。STEP7-Micro/WIN允许你为LAD程序中的每一个程序段加注释。FBD编程同样使用程序段的概念和允许注释程序。

STL程序不用分段,但是你可以用关键词NETWORK将程序分段。 LAD编辑器中使用的惯例

在LAD编辑器中,你可以使用F4、F6和F9来快速输入触点、盒和线圈指令。LAD编辑器使用以下惯例:

·符号“——>>”表示开路或者需要能流连接。 ·符号“→∣”表示指令输出能流,可以级连或串联。 ·符号“>>”表示你可以使用能流。 FBD编辑器中使用的惯例

在FBD编辑器中,你可以使用F4、F6和F9来快速输入AND、OR和盒指令。FBD编辑器使用以下惯例:

·在EN操作数上的符号“——>>”表示能流或者操作数指示器。它也可用于表示开路或者需要能流连接。

26

·符号“→∣”表示指令输出能流,可以级连或串联。 ·符号“<<”和“>>”表示你可以使用数值或能流。

·反向圈:操作数或者能流的负逻辑或者反向输入表示为在输入端加一个小圆圈。在图5-5中Q0.0是10.0的非和10.1与的结果。反向圈仅用于能够作为参数或者能流的布尔信号。

反向输入

立即输入

图5-5 FBD惯例

·立即输入:如图5-5中所示,在FBD编辑器中,用在FBD指令输入端加一条垂直线的方法来表示布尔操作数的立即输入。立即输入直接从物理输入点上读取数据。立即操作数只能用物理输入点。

·没有输入或者输出的盒:一个盒没有输入意味着这条指令与能流无关。 提示:

AND和OR指令的操作数的个数可以扩展到最多32个。要增加或者减少操作数的个数,用键盘上的“+”或者“-”。

S7-200编程的通用惯例 EN/ENO的定义

EN(使能输入)是LAD和FBD中盒的布尔输入。要使盒指令执行,必须使能流到达这个输入。在STL中,指令没有EN输入,但是要想使STL指令执行,堆栈顶部的逻辑值必须是“1”。

ENO(使能输出)是LAD和FBD中盒的布尔输出。如果盒的EN输入有能流并且指令正确执行,则ENO输出会将能流传递给下一元素。如果指令的执行出错,则能流在出错的盒指令处被中断。

在STL中没有使能输出,但是STL指令象相关的有ENO输出的LAD和FBD指令一样,置位一个特殊的ENO位。这个位可以由AND ENO(AENO)指令访问,并且能与盒指令的ENO产生同样的影响。

提示

EN/ENO操作数的数据类型并没有在每条指令中的操作数表中给以说明,因为这一操作数在所有LAD和FBD指令中都是一样的。表5-1列出了这些LAD和FBD中的操作数和数据类型。这些操作数对本手册中介绍的所有LAD和FBD指令均适用。

表5-1 LAD和FBD中EN/ENO操作数和数据类型

27

程序编辑器 LAD FBD

输入/输出 EN、ENO EN、ENO 操作数 能流 I、Q、V、M、SM、S、T、C、L 数据类型 BOOL BOOL 条件输入/无条件输入

在LAD和FBD中,如果一个盒或者线圈的左侧没有任何元素,则它与能流有关。如果一个盒或者线圈的左侧直接连接到能量线上,则它与能流无关。表5-2中给出了条件输入和无条件输入的例子。

表5-2 条件输入和无条件输入的表示方法 能流 与能流有关的指令(条件输入) 与能流无关的指令(无条件输入)

没有输出的指令

无法级连的盒指令被表示为没有布尔输出。这些包括子程序调用、跳转和条件返回指令。梯形线圈也只能放在能量线之后。这些指令包括标签、装载SCR、SCR条件结束和SCR结束指令。这在FBD中用无输出的盒指令作为与其它指令的区别。

比较指令

无论是否有能流,比较指令都会被执行。如果无能流则输出0。如果有能流,输出值取决于比较结果。在STMATIC FBD、IEC梯形图和IEC FBD中,比较指令都用盒表示,尽管它实现的是触点操作。

便用向导帮你创建控制程序

STEP7-Micro/WIN提供向导使你的编程变得更自动更容易。在第6章中,具有相关向导的指令会有一个指令向导图标。

S7-200中的出错处理

S7-200将错误分为致使错误和非致使错误。你可以在命令菜单中选择PLC>Information来得到所产生错误的错误代码。图5-6中显示PLC信息对话框,其中包括错误代码和错误描述。

LAD FBD 28

图5-6 PLC信息对话框

Last Fatal区显示S7-200发生的前一致使错误代码。如果RAM区是掉电保持的,该代码也会保持。当S7-200全清或者RAM区掉电保持失败时,该区也被清除。

Total Fatal区是前一次CPU清除所有存储区后产生致使错误的次数。如果RAM区是掉电保持的,这个次数也会保持。当S7-200全清或者RAM区掉电保持失败时,该区也被清除。

附录C中列出了S7-200的错误代码。附录D中描述了可用于监视错误的特殊存储器(SM)标志位。

非致使错误

非致使错误是指用户程序结构问题、用户程序指令执行问题和扩展I/O模块问题。你可以用STEP7-Micro/WIN来得到所产生错误的错误代码。

程序编译错误

当下载程序时,S7-200会编译程序。如果S7-200发现程序违反了编译规则,会停止下载并产生一个错误代码。(已经下载到S7-200中的程序会存储在EEPROM中,不会丢失。)可以在修正错误后再次下载程序。编译错误列表参见附录C。

I/O错误

启动时,S7-200从每个模块读取I/O配置。正常运行过程中,S7-200周期性的检测每个模块的状态与启动时得到的配置相比较。如果S7-200检测到差别,它会将模块错误寄存器中的配置错误标志位置位。在模块配置再次匹配之前,S7-200不再读写模块的输入输出数据。

模块的启动信息存储在特殊存储器(SM)标志位中。应用程序可以监视这些标志位。 有关用于I/O错误报告的SM标志的更多信息参见附录D。

29

程序执行错误

在程序执行过程中有可能产生错误。这类错误有可能来自使用了不正确的指令或者在过程中产生了非法数据。例如:一个编译正确的间接寻址指针,在程序执行过程中,可能会改为指向一个非法地址。这是一个实时程序问题的例子。当实时程序问题发生时,SM4.3会在CPU处于RUN模式期间置位。(实时程序问题的列表参见附录C)。程序执行错误信息存储在特殊寄存器(SM)标志位中。应用程序可以监视这些标志位。有关用于程序SM标志的更多信息参见附录D。

当S7-200发生非致使错误时,S7-200并不切换到STOP模式。它仅仅是把事件记录到SM想念器中并继续执行应用程序。但是如果用户希望在发生非致使错误时,将CPU切换注意到STOP模式,可以通过编程实现。下列例子程序用于监视两个非致使错误标志位。当两个标志中任意一个置位,S7-200将切换到STOP模式。

致使错误

致使错误会导致S7-200停止程序执行。按照致使错误的严重程度,S7-200使其部分或全部功能无法执行。处理致使错误的目的是把CPU引向安全状态,CPU可以对存在的错误条件作出响应。当CPU检测到一个致命错误时,CPU会切换到STOP模式,点亮系统错误LED和STOP(停止)LED指示灯,并忽略输出表,关闭所有输出。S7-200会一直保持这种状态,直到消除致使错误条件。

一旦消除了致使错误条件,必须重新启动CPU。可以用以下方法重新启动CPU: ·重新启动电源

·将模式开关由RUN或者TERM变为STOP

·在STEP7-Micro/WIN命令菜单中选择PLC>Power-Up Reset,可以强制CPU启动并清除所有致使错误。

重启CPU会清除致使错误,并执行上电诊断测试来确认已改正错误。如果发现其它致使错误,CPU会重新点亮错误LED指示灯,表示仍存在错误。否则CPU会开始正常工作。

有些错误可能会使CPU无法进行通讯。这种情况下你无法看到来自CPU的错误代码。这种错误表示硬件故障,CPU模块需要修理,而修改程序或清除CPU内丰是无法清除这些错误的。

在数据块中指定地址和初始值

30

数据块编辑器只用于为V存储器(变量存储器)指定初始值。你可以以字节、字或者双字的形式来分配V存储,也可以选择输入注释。

数据块编辑器是一个自由格式的文本编辑器,也就是说,没有特定的区域被定义用于特定类型的信息。当你完成一行的输入并按回车键确认后,数据块编辑器将该行格式化(将地址、数据和注释分别列对剂,V存储器地址大写)并重新显示。数据块编辑器根据你所定义变量的地址和长度(字节、字或者双字)为V存储器分配空间。

图5-7 数据块编辑器

数据块的第一行必须有一个明确的地址分配。接下来的行中可以是明确的地址,也可以使用隐含地址。隐含地址是由编辑器分配的。当你在一个地址后面输入多个数据或者在一行中只输入数据时,你使用的是隐含地址。

数据块编辑器接受大小写字母,并且用逗号、制表符或者空格作为地址与数据之间的分隔符。

用符号表来定义变量的符号地址

符号表允许你定义和编辑符号名,使你能在程序中用符号地址访问变量。你可以创建多个符号表。你也可以在程序中使用系统定义的符号表。符号表也被称作全局变量表。你可以使用绝对地址或者符号地址来输入指令操作数。绝对地址用存储区加上位或字节地址来标识地址。符号地址则用一串字母组合来标识地址。

图5-8 符号表

在SIMATIC程序中,你可以使用符号表中定义的全局符号,在IEC程序中,你可以使用全局变量表中定义的全局符号。

31

为地址定义符号按如下步骤:

1.在操作栏中单击符号表图标打开符号表。

2.在Symbol Name列中输入一个符号名(例如:Input1),符号名的最大长度为23个字符。

3.在Address列中输入地址(例如:10.0)

4.对于IEC的全局变量表,在数据类型列中输入一个值或者从列表中选择一个。 你可以创建多个符号表,但无论是在同一个符号表中还是在不同的符号表中,都不能多次使用同一个字符串作为全局符号。

使用局部变量

你可以使用程序编辑器中的局部变量表来为子程序和中断服务程序分别指定变量,如图5-9所示。

图5-9 局部变量表

局部变量可用于子程序传递参数,它增强了子程序的可移殖性和再利用性。 用状态图来监视用户程序

状态较允许你在控制程序运行的过程中对过程变量的值进行监视和修改。你可以跟踪程序的输入、输出或者变量,显示它们的当前值。状态图也允许你强制或者改变过程变量的值。

为了临近应用程序中不同部分的元素,你可以创建多个状态图。

在命令菜单中选择View>Component>Status Chart或者在操作过程中单击Status Chart图标来访问状态图。

当创建状态图时,你应该输入要监控的过程变量的地址。你无法监视常数、累加器和局部变量的状态。你可以按位或者字两种形式来显示定时器和计数器的值。以位形式显示的是定时器和计数器的状态位,而以字形式则显示定时器和计数器的当前值。

32

图5-10 状态图

建立一个状态图来监视变量,按以下步骤: 1.在地区输入需要的地址。 2.在格式列中选择数据类型。

3.在命令菜单中选择Debug>Chart Status来监视S7-200中过程变量的状态。 4.要连续采样数值或者单次读取状态,可以点击工具栏中相应的按钮。状态图也允许你强制或者修改过程变量的值。

在命令菜单中选择Edit>Insert>Row可以在状态图中插入一行。 提示:

你可以按逻辑分组为变量创建多个状态图,使每个状态图更短,便于分别监视。 创建一个指令库

STEP7-Micro/WIN允许你创建自己的指令库,也允许你使用其它人已建好的库。见图5-11。

图5-11 指令库

创建指令库的同时,你也在STEP7-Micro/WIN中建立了子程序和中断服务程序。为了防止意外地改动或者保护作者的技术专利,你可以隐藏这些程序代码。

要创建一个指令库,你需要完成以下任务:

1.创建一个标准的STEP7-Micro/WIN项目,并且把指令库中包括的功能写入一个子程

33

序或者中断服务程序中。

2.确保在子程序或中断服务程序中使用的V存储器都定义了符号名。使用连续的V存储区来最小化其要求的数量。

3.将子程序或者中断服务程序更名为你希望在指令库中显示的名称。 4.在命令菜单中选择File>Create Library来编译新的指令库。 在STEP7-Micro/WIN的在线帮助中,你可以得到有关指令库的更多信息。 用下列步骤访问指令库中的指令:

1.在命令菜单中选择File>Add Libraies来在指令树中增加一个库。

2.选择选择特定的指令插入你的程序。(就象使用任何标准指令一样。)如果库程序要求V存储器,STEP7-Micro/WIN会提示你分配一个存储器志。用库存储器对话框来分配存储器块。

应用程序的调试

STEP7-Micro/WIN具备以下特点帮助你调试应用程序: ·书签允许你在很长的程序中方便地来回移动。 ·交叉参考表允许你检查程序的使用参考信息。

·RUN模式下编辑允许你在小规模修改程序的过程中,对过程控制产生最小的影响。当在RUN模式下编辑程序时,你同样可以下载程序块。

S7-200程序的基本结构

运行在S7-200 PLC上的用户程序可以使用STEP-7 Micro/DOS在通用计算机上编制,也可以使用PG 702手持编程器来编制。用户程序的形式有梯形图(LAD)模式和语句表(STL)模式两种。但不管何种模式,一个完整的用户程序都应有一个主程序和若干子程序及中断处理程序组成,其具体要求如下:

1.如果使用子程序,则子程序必须紧跟在主程序后面(见图2.1)。每个子程序应有不重复的序号(SBR n),以便主程序调用。

2.如果使用中断处理程序,则也应跟在主程序后面(见图2.1)。每个中断处理程序应以RETI指令作为结束,且应有不同的序号(INT n),以便PLC在响应中断时调用。

3.属于一个主程序的各个子程序和中断处理程序的位置没有严格的规定,可以随意组合。

34

图2.1 S7-200用户程序的结构

用户程序的执行方式

在PLC中,自动重复执行用户程序,每一次执行称为一次扫描。每个基本扫描周期包括下述五个步骤(见图2.3):

1.将输入信号读入输入映象区; 2.执行用户程序; 3.通讯事务的处理; 4.PLC的内部事务的处理;

35

5.输出信号的刷新。

图2.3 S7-200的扫描周期

除上述五个基本步骤之外,PLC还可随时响应用户的中断请求,并按预先设定的中断优先级别依次异步执行,从这个意义上讲,每个扫描周期所占用的时间可能并不完全相同。

输入信号的读入

在每个扫描周期的开始,总是首先读入连接着该PLC的各输入信号的当前值(状态),并把这些值依次写入输入映象区。

输入映象区是数据空间的一部分,在图2.4中给出了CPU 212和CPU 214~CPU 216的输入映象区的分配情况。其中CPU 212单元本身只带8个数字量输入节点(对应于I 0.0~I 0.7),CPU 214和CPU 215单元本身带14个数字量输入节点(对应于I 0.0~I 0.7和I 1.0~I 1.5),而I 1.6和I 1.7在读入时期中自动清零,CPU 216单元本身有24个数字输入节点(I 0.0~I 2.7)。

36

图2.4 输入映象区的分布

程序的执行

PLC在每个扫描周期中,都从主程序的第一条指令开始执行,直至主程序结束为止,其中子程序是由主程序中的“调用”指令来调用的,因此可看成是主程序的一部分。如果在主程序中开放(使能)了中断,则在执行主程序的任意时刻产生中断请求时,可随时得到响应。所以中断服务程序并非在每个扫描周期中都执行,但也可能在一个扫描周期中执行多次,所以它的执行与主程序是“异步”的。

通讯处理

PLC对通讯端口信号处理,是在每个扫描周期中定时执行的,以便处理数据的传输等事务。如果系统没有接通讯模块,则自动跳过这个步骤。

PLC内部事务处理

此处所说的PLC内部事务主要指的是PLC定期检查系统中系统程序和用户程序区,以及检查I/O模板的状态,即它检查的是PLC内部的硬件系统,这是为提高PLC的可靠性而设置的。

输出信号的创新

PLC在执行用户程序的过程中,只把计算所得的输出信号存入输出映象区,而不直接送到输出节点(对象)上,只有在每个扫描周期的最后一个步骤,才统一将输出映象区中的输出信号同时送到输出节点(对象)上,这样有利于各控制对象动作之间的互锁和控制。

输出映象区的分配如图2.5所示。CPU 212的基本输出节点数是6个,故只占用输出映象区 的Q0.0~Q0.5共6位,CPU 214的基本输出节点数是10个,Q0.0~Q0.7及Q1.0~Q1.1共10位,而CPU 215和CPU 216的基本输出节点都有16个(Q0.0~Q1.7)。

需要强调的一点是,PLC在每个扫描周期中,对输入信号的读取和输出信号的刷新都是针对数字量而言的。因为这种自动操作是针对输入/输出映象区作操作的,而模拟量的输入/输出信号是不进入输入/输出映象区的,模拟量输入或输出的模/数、数/模转换是实时地在

37

模板上进行的,所以对应的存储区在模板上,在执行用户程序时实时地读/写数据。

S7-200的存储器结构

S7-200 CPU中的存储器结构如图2.6所示。它由一个EEPROM和一组PAM组成,此外CUP 214还可外插一个EEPROM存储卡。

内置EEPROM

内置EEPROM是与CPU上的RAM几乎成影象的存储器,一般情况下它只是一个只读存储器,仅在下述四种情况下可改变它的内容:

1.在STEP-7编程环境下,通过通讯电缆输入程序。

2.利用手持编程器PG 702可将外接存储卡上的内容复制进去。复制外接存储卡上的内容至PLC无需任何编辑操作,只需插卡后PLC上电即可。

3.用户程序中可利用系统标志,对其中的“动态存储数据”予以刷新。

4.如果系统(CPU 214)始终插有外接的存储卡,则在每次系统上电时都将用外接存储卡上的内容覆盖该EEPROM。这种情况应予以避免,以免降低该EEPROM的使用寿命。

由于EEPROM是只读存储器,因此在断电时,它仍可保存所有的内容。此外也便于邮寄新程序或备件程序。

图2.5 S7-200输出映象区的分布

38

读写存储器RAM

读写存储器RAM是S7-200的主内容。从广义上讲,它可分为以下三个区:

1.程序区 该区用以存放由内置EEPROM中程序区传送来的用户程序,它的容量对CPU 212/CPU 214分别为1K/4K字节。

2.数据区 该区有两个部分,一部分容量为200/1024个字节的数据区可由内置EEPROM传入有关参数,另一部分用以存储用户数据。

3.寄存器区 这个区的内存当作寄存器使用,其中包括标志寄存器,定时器和计数器等。

图2.6 S7-200的存储器的结构

S7-200系统中的读写存储器可由一个超容量的电容器“供电”,因此在掉电情况下仍可保持有关的内容。保持的区域可由用户自己定义。这个电容可供电的时间长达50小时,尤其是CPU 214,这个时间可长达200小时,因此可保证系统在假日或周末期间的数据安全。

外插EEPROM

在S7-200系列的CPU 214系统中,配有外插EEPROM存储卡的接口,以便用户可将EEPROM中的程序和数据复制到系统内置EEPROM中,而在手持编程器PG 702或装有STEP/Micro软件的编程设备控制下,将内置EEPROM中的内容复制到外接EEPROM中去。

设置外插EEPROM的目的并不是为了扩充系统的存储容量,它的作用有二个:

1.为保证用户程序或数据的安全,可以用外接EEPROM作为一个备份,以便归档和保存,这对只使用手持编程器为PLC编程的用户而言是十分重要的。

39

2.便于系统研制单位或PLC生产厂商和代理商向用户邮寄已恢复、修改或版本已升级的新软件。

S7-200的三种工作模式

在S7-200型的PLC工作面板上有一个工作模式选择开关,用以选择PLC的工作方式。该开关具有三档:STOP,TERM和RUN。

STOP(停止模式)

该模式是使PLC处于停止工作方式,在这种模式下可对PLC作如下操作: 1.利用编程设备向PLC装入程序。

2.用编程设备检查部分用户存储器(V存储器)的内容。 3.用编程设备改变V存储器的内容。 4.用编程设备改变PLC的各种配置。 RUN(运行模式)

在运行模式下,PLC按扫描周期循环执行用户程序,此时不能向PLC装入程序(PLC不予理睬程序的装入)。

TERM(暂态模式)

在该模式下,PLC的工作模式(STOP和RUN)可以由编程设备通过通讯方式输入适当的命令来改变,这种模式多数用于连网的PLC网络或用编程设备来调试程序时使用。

上电时PLC的状态

在给PLC上电时,若模式开关置于RUN位置,则PLC自动呈运行方式,若开关置于其它二个位置(STOP或TERM)时,PLC都自动呈STOP(停止)状态。

A.7 S7-200如何工作

S7-200 CPU的基本功能就是监视现场的输入信号,根据用户的控制逻辑进行控制运算,输出信号去控制现场设备的运行。

在S7-200系统中,控制逻辑由用户编程实现。用户程序要下载到S7-200CPU中执行。S7-200CPU按照循环扫描的方式,完成包括执行用户程序在内的各项任务。

连接PC/PPI电缆

图2-2给出了用PC/PPI电缆连接S7-200和编程设备的方法。步骤如下: 1.将PC/PPI电缆上RS-232的一端连在编程设备的串行口上(本例中为COM1)。 2.将PC/PPI电缆上,RS-485的一端连在S7-200的编程口上。 3.按照图2-2中所示设置DIP开关。

40

图2-2 连接PC/PPI电缆

打开STEP7-Micro/WIN

点击STEP 7-Micro/WIN的图标,打开一个新的项目,如图2-3所示。

图2-3 新的STEP 7-Micro/WIN项目

注意左侧的操作条。您可以用操作条中的图标,打开STEP7-Micro/WIN项目中的组件。 点击操作条中的通讯图标进入通讯对话框。你可以用这个对话框为STEP 7-Micro/WIN设置通讯参数。

为STEP7-Micro/WIN设置通讯参数

在本例中使用PC/PPI电缆的缺省设置。参数如下:

41

图2-4 设置通讯参数

1.PC/PPI电缆的通讯地址设为0。 2.接口使用COM1。 3.传输波特率用9.6Kbps。

如果你需改变通讯设置,请参考第7章。 与S7-200建立通讯

用通讯对话框与S7-200建立通讯:

图2-5 与S7-200建立通讯

1.在通讯对话框中双击刷新图标。STEP7-Micro/WIN搜寻并显示所连接的S7-200站的CPU图标。

2.选择S7-200站并点击OK。

如果STEP7-Micro/WIN未能找到你的S7-200 CPU,请核对你的通讯参数设置。 在与S7-200建立通讯之后,你可以准备创建和下载程序。 创建一个例子程序

创建这个便子程序将使你体会到使用STEP7-Micro/WIN编程有多简单。这个例子程序在三个程序段中用6条指令,完成了一个定时器自启动、自复位的简单功能。

在本例中,你用梯形图编辑器来录入程序。下面给出了完整的梯形图和语句表程序。语句表中的注释,解释了程序的逻辑关系。时序图给出了程序的操作结果。

42

打开程序编辑器

点击程序块图标,打开程序编辑器,如图2-6所示。

注意指令树和程序编辑器。你可以用拖拽的方式将梯形图指令插入到程序编辑器中。在工具栏图标中有一些命令的快捷方式。

在输入和保存程序之后,你可以下载程序到S7-200中。

图2-6 STEP7-Micro/WIN窗口

43

输入程序段1:启动定时器

当M0.0的状态为0时,常闭触点接通启动定时器。常闭触点M0.0的输入步骤如下: 1.双击位逻辑图标或者单击其左侧的加号可以显示出全部位逻辑指令。 2.选择常闭触点。

3.按住鼠标左键将触点拖到第一个程序段中。 4.单击“???”并输出地址:M0.0。 5.按回车键确认。

图2-7 程序段1

定时器指令T33的输入步骤如下: 1.双击定时器图标,显示定时器指令。 2.选择延时接通定时器TON。

3.按住鼠标左键将定时器拖到第一个程序段中。 4.单击定时器上方的“???”输入定时器号:T33。

5.按回车键确认后,光标会自动移动到预置时间值(PT)参数。 6.输出预置时间值:100。 7.按回车键确认。

输入程序段2:使输出点闭合

图2-8 程序段2

44

当定时器T33的定时值大于等于40时(大于等于0.4秒),S7-200的输出点Q0.0会闭合。

输入比较指令的步骤如下:

1.双击比较指令图标,显示所有的比较指令。选择“>=1”指令。 2.按住鼠标左键将比较指令拖到第二个程序段中。 3.单击触点上方的“???”并输出定时器号:T33。

4.按回车键确认后,光标会自动移动到比较指令下方的比较值参数。 5.在该处输入比较值40。 6.按回车键确认。 输出指令的输入步骤如下;

1.双击位逻辑图标,显示位逻辑指令并选择输出线圈。 2.按住鼠标左键将输出线圈拖到第二个程序段中。 3.单击线圈上方的“???”并输出地址:Q0.0。 4.按回车键确认。 输入程序段3:定时器复位

当计时值到达预置时间值(100)时,定时器触点会闭合。T33闭合会使M0.0置位。由于定时器是靠M0.0的常闭触点启动的,M0.0的状态由0变1会使定时器复位。

输入触点T33的步骤如下: 1.在位逻辑指令中选择常开触点。

2.按住鼠标左键将触点拖到第三个程序段中。 3.单击触点上方的“???”并输入地址:T33。 4.按回车键确认。

图2-9 程序段3

输入线圈M0.0的步骤如下: 1.在位逻辑指令中选择输出线圈。

45

2.按住鼠标左键将输出线圈拖到第三个程序段中。 3.双击线圈上方的“???”并输入地址:M0.0。 4.按回车键确认。 存储例子程序

在输入完以上三个程序段后,你就已经完成了整个例子程序。当你存储程序时,你也创建了一个包括S7-200CPU类型及其它参数在内的一个项目。存储项目的步骤如下:

1.在菜单条中选择菜单命令File>Save As。 2.在Save As对话框中输入项目名。 3.点击Save存储项目。

图2-10 存储例子程序

项目存储之后,你可以下载程序到S7-200。 下载例子程序 提示:

每一个STEP7-Micro/WIN项目都会有一个CPU类型(CPU 221、CPU 222、CPU 224、CPU 226或CPU 226XM)。如果你在项目中选择的CPU类型,与你实际连接的CPU类型不匹配,STEP7-Micro/WIN会提示你并要你作出选择。如果你在本例中遇到这种情况,可以选择“继续下载”。

1.你可以点击工具条中的下载图标或者在命令菜单中选择PLC>Download来下载程序。 2.点击OK下载程序到S7-200。如果你的S7-200处于运行模式,将有一个对话提示你CPU将进入停止模式。点击Yes将S7-200转入停止模式。

46

图2-11 下载例子程序

将S7-200转入运行模式

如果想通过STEP7-Micro/WIN软件将S7-200转入运行模式,S7-200的模式开关必须设置为TERM或者RUM。当S7-200转入运行模式后,程序开始运行:

1.单击工具条中的运行图标或者在命令菜单中选择PLC>RUN。 2.点击Yes切换模式。

当S7-200转入运行模式后,CPU将执行程序使Q0.0的LED指示灯时亮时灭。

图2-12 将S7-200转入运行模式

恭喜你!你已经完成了你的第一个S7-200程序。 你可以通过选择Debut>Program Status来监控程序。

STEP7-Micro/WIN显示执行结果。你可以用点击STOP图标或者在命令菜单中选择PLC>STOP来停止程序的运行。

要对S7-200 CPU进行编程、调试,还需要连接运行编程软件的PC机和S7-200 CPU的通讯连接。一般使用如下几种编程通讯方式:

● RS-232PPI电缆,连接PG/PC的串行通讯口(COM口)和CPU通讯口; ● Smart RS-232/PPI电缆,连接PG/PC的串行通讯口(COM口)与CPU通讯

口(Step7-Micro/WIN32 V 3.2 SP4以上);

● SUSB/PPI 电缆,连接PG/PC的USB端口和CPU通讯口(Step 7-Micro/WIN32

V 3.2 SP4以上);

● PG/PC上安装CP(通讯处理器)卡,通过MPI电缆连接CPU通讯口。(PCI

接口卡CP5611配合台式PC使用;PCMCIA卡CP5511配合便携机使用)

A.8 特殊存储器(SM)标志位

特殊存储器标志位提供大量的状态和控制功能,并能起到在CPU和用户程序之间交换信息的作用。特殊存储器标志位能以位、字节、字或双字使用。

本章概述 SMB0:状态位

47

SMB1:状态位

SMB2:自由口接收字符 SMB3:自由口奇偶校验错误 SMB4:队列溢出 SMB5:I/O状态

SMB6:CPU识别(ID)寄存器 SMB7:保留

SMB8到SMB12:I/O模块识别和错误寄存器 SMW22到SMW26:扫描时间 SMB28和SMB29:模拟电位器 SMB30和SMB130:自由口控制寄存器

SMB31和SMB32:永久存储器(EEPROM)写控制 SMB34和SMB35:定时中断时间间隔寄存器 SMB0:状态位

如表D-1所示,SMB0有8个状态位,在每个扫描周期的末尾,由S7-200 CPU更新这些位。

表D-1 特殊存储器字节SMB0(SM0.0-SM0.7) SM位 描述(只读) SM0.0 该位始终为1 SM0.1 该位在首次扫描时为1 ,用途之一是调用初始化子程序 SM0.2 若保持数据丢失,则该位在一个扫描周期中为1。该位可用作错误存储器位,或用来调用特殊启动顺序功能。 SM0.3 开机后进入RUN方式,该位将ON一个扫描周期,该位可用作在启动操作之前给设备提供一个预热时间 SM0.4 该位提供了一个时钟脉冲,30秒为1,30秒为0,周期为一分钟,它提供了一个简单易用的延时或1分钟的时钟脉冲 SM0.5 该位提供了一个时钟脉冲,0.5秒为1,0.5秒为0,周期为1秒钟。它提供了一个简单易用的延时或1秒钟的时钟脉冲 SM0.6 该位为扫描时钟,本次扫描时置1,下次扫描时置0。可用作扫描计数器的输入 SM0.7 该位指示CPU工作方式开关的位置(0为TERM位置,1为RUN位置)。当开关在RUN位置时,用该位可使自由端口通信方式有效,那么当切换至TERM位置时,同编程设备的正常通讯也会有效。

SMB1:状态位

48

如表D-2所示,SMB1包含了各种潜在的错误提示。这些位可由指令在执行时进行置位或复位。

表D-2 特殊存储器字节SMB1(SM1.0-SM1.7) SM位 描述(只读) SM1.0 当执行某些指令,其结果为0时,将该位置1 SM1.1 当执行某些指令,其结果溢出或查出非法数值时,将该位置1 SM1.2 当执行数学运算,其结果为负数时,将该位置1 SM1.3 试图除以零时,将该位置1 SM1.4 当执行ATT(Add to Table)指令时,试图超出表范围时,将该位置1 SM1.5 当执行LITO或FIFO指令,试图从空表中读数时,将该位置1 SM1.6 当试图把一个非BCD数转换为二进制数时,将该位置1 SM1.7 当ASCII码不能转换为有效的十六进制数时,将该位置1

SMB2:自由口接收字符

SMB2为自由端口接收字符缓冲区。如表D-3所示,在自由端口通信方式下,接收到的每个字符都放在这里,便于梯形图程序存取。

提示:

SMB2和SMB3由0口和1口共用。当0口接收到字符并使得与该事件(中断事件8)相连的中断程序执行时,SMB2包含0口接收到的字符,而SMB3包含该字符的校验状态。当1口接收到字符并使得与该事件(中断事件25)相连的中断程序执行时,SMB2包含1口接收到的字符,而SMB3包含该字符的校验状态。

表D-3 特殊存储器字节SMB2 SM位 描述(只读) SMB2 在自由端口通讯方式下,该字符存储从口0或口1接收到的每一个字符

SMB3:自由端口奇偶校验错误

SMB3用于自由端口方式,当接收到的字符发现有奇偶校验错时,将SM3.0置1。如表D-4所示,当检测到校验错误时,SM3.0接通。根据该位来废弃错误消息。

表D-4 特殊存储器字节SMB3(SM3.0-SM3.7) SM位 SM3.0 描述(只读) 口0或口1的奇偶校验错(0=无错,1=有错) SM3.1-SM3.7 保留

SMB4:队列溢出

49

如表D-5所示,SMB4包含中断队列溢出位,中断是否允许标志位及发送空闲位。队列溢出表明要么是中断发生的频率高于CPU,要么是中断已经被全局中断禁止指令所禁止。

表D-5 特殊存储器字节SMB4(SM4.0-SM4.7) SM位 描述(只读) SM4.01 当通信中断队列溢出时,将该位置1 SM4.1 当输入中断队列溢出时,将该位置1 SM4.2 当定时中断队列溢出时,将该位置1 SM4.3 在运行时刻,发现编程问题时,将该位置1 SM4.4 该位指示全局中断允许位,当允许中断时,将该位置1 SM4.5 当(口0)发送空闲时,将该位置1 SM4.6 当(口1)发送空闲时,将该位置1 SM4.7 当发生强置时,将该位置1 111 只有在中断程序里,才使用状态位SM4.0、SM4.1和SM4.2。当队列为空时,将这些状

态位复位(置0),并返回主程序。

SMB5:I/O状态

如表D-6所示,SMB5包含I/O系统里发现的错误状态位。这些位提供了所发现的I/O错误的概况。

表D-6 特殊存储器字节SMB5(SM5.0-SM5.7) SM位 SM5.0 SM5.1 SM5.2 SM5.3 描述(只读) 当有I/O错误时,将该位置1 当I/O总线上连接了过多的数字量I/O点时,将该位置1 当I/O总线上连接了过多的模拟量I/O点时,将该位置1 当I/O总线上连接了过多的智能I/O模块时,将该位置1 SM4.5-SM5.7 保留

SMB6:CPU识别(ID)寄存器

如表D-7所示,SMB6为CPU识别(ID)寄存器。SM6.4到SM6.7识别CPU的类型,SM6.0到SM6.3保留,以备将来使用。

表D-7 特殊存储器字节SMB6 SM位 格式 描述(只读) MSB LSB 7 0 CPU ID寄存器 × × × × r

r 50

r r

本文来源:https://www.bwwdw.com/article/mzzp.html

Top