西门子PLC DI卡件EM232CN
储器区域的地址表示和寻址方法,接着重点介绍S7-200CNPLC的指令执行过程,*后结合实际例子详细介绍S7-200CN系列PLC的主要指令。本章内容侧重基础,目的在于使读者了解PLC程序的执行过程,掌握常用指令的使用方法,为PLC程序设计和系统开发奠定基础。本章重点
PLC的程序执行过程 数据类型和寻址方法
S7-200CN系列PLC的常用指令
2.1 S7-200 PLC的编程语言
PLC产品种类繁多,不同厂商生产的PLC的程序设计语言的指令基本相同,但也存在一些差别。为了规范化PLC程序设计语言,国际电工委员会(IEC)制定了一个PLC程序设计语言的全球标准,即IEC1131-3指令集,该指令集支持梯形图(Ladder Logic,LAD)和功能块图(Function BlockDiagram,FBD)编程语言。IEC 1131-3指令集的指令执行时间比较长。为此,西门子公司针对其生产的S7-200PLC设计了专门的指令集,即SIMATIC指令集。该指令集除了支持梯形图(LAD)和功能块图(FBD)外,还支持语言表(StatementList,STL)编程语言。下面分别介绍梯形图(LAD)、功能块图(FBD)和语言表(STL)这3种PLC编程语言。1.S7-200PLC的3种编程语言
1)梯形图(LAD)梯形图(LAD)是一种图形化的程序设计语言,用图形符号表示指令,其指令包括“触点
和“方框”3种。其中,“触点”代表逻辑输入条件,如开关和内部标志等;“线圈”表示逻辑输出结果,如继电器开关状态和内部输出条件等;“方框”代表一些附加指令,如定时器、计数器和算术运算指令等。梯形图程序常被划分成在逻辑上更好理解的段,这样的段被称为“网络(Network)”或“梯级”。通常一个梯形图由若干个“网络(Network)”组成(如图2-1(a)所示),一般一个网络对应于梯形图中的一个逻辑行,每个逻辑行*左侧的竖线称为“母线”。梯形图程序按照由上到下、由左到右的顺序排列和执行,可以模拟来自于电源的电流在电气线路中的流动,与电气控制电路图类似,很适合电气工程人员使用。梯形图简单、直观、易学,所有PLC产品都支持这种编程语言。本书将重点介绍这种编程语言。
2)功能块图(FBD)功能块图(FBD)也是图形化的编程语言,它的指令是类似于半导体逻辑门电路的逻辑指令“方框”没有梯形图中的“触点”和“线圈”,程序功能由这些逻辑“方框”间的连接关系决定,并且一个逻辑“方框”的输出可以作为另一个逻辑“方框”的输入。功能块图(FBD)适合熟悉电路和逻辑代数的人员使用。S7-200CNPLC仿真开发环境STEP7-Micro/WIN允许梯形图(LAD)、功能块图(FBD)和语言表(STL)之间的有条件转换,极大地提高了程序设计的灵活性。2.SIMATIC指令集与IEC1131-3指令集的差别
如上所述,国际电工委员会(IEC)制定了PLC标准指令集IEC1131-3,并鼓励PLC制造商向用户提供与该指令集一致的指令,而SIMATIC指令集是西门子公司为了克服IEC1131-3指令执行速度慢而专为S7-200系列PLC设计的指令集。
令集与IEC 1131-3指令集之间还存在下列主要区别。
1)支持的编程语言种类IEC1131-3指令集只能用于梯形图和功能块图编程,而SIMATIC指令集除了可以用于梯形图和功能块图编程外,还可以用于语言表编程。
2)指令兼容性 IEC 1131-3指令中指令较少,并且某些指令与SIMATIC指令集不兼容。
3)数据格式和数据格式检查 一些IEC 1131-3指令集中的方框指令可以接受多种数据格式,可实现指令的多重功能。IEC1131-3在定义变量时必须说明变量类型,并支持数据类型的系统检查,有利于减少编程语法错误。
2.2 S7-200CN PLC数据类型及寻址方式PLC存储空间可分为系统区(或参数空间)、程序区和数据区。
(1)系统区,存放PLC的配置参数,如保护口令、PLC站地址、停电记忆保持区、软件滤波、强制操作的设定信息等,存储器为EEPROM。
(2)程序区,主要用于存放用户应用程序,不同的CPU程序空间容量不同。
(3)数据区,该空间的主要部分用于存放工作数据。)位存储器(Bit MemoryArea:M)位存储器又称为内部辅助继电器、内部继电器、中间继电器或控制继电器,用于保存控制继电器的中间操作状态和控制信息。名为“位
数据区的数据既可以按位存取,也可以按字或双字存取。
5)定时器存储器(Timer MemoryArea:T)定时器可用于累计时间,相当于继电器系统中的时间继电器,其分辨率(时基增量)分为1ms、10ms和100ms三种。
6)计数器存储器(Counter MemoryArea:C)计数器用于累计其计数脉冲输入端上脉冲上升沿(电平由低变高)出现的次数。S7-200CN有增计数、减计数和增/减计数3种类型计数器。
7)高速计数器(High-SpeedCounters:HC)高速计数器与一般计数器不同之处在于:高速计数器对高速事件计数,它独立于CPU的扫描周期;一般计数器的计数值为16位,而高速计数器有一个32位的有符号整数计数值(或当前值)。高速计数器的当前值只能读,不能写。
8)累加器(Accumulators:AC)累加器是用来存储计算中间结果的寄存器,也可以用来向子程序传递参数。S7-200CPU中有4个32位累加器,即AC0~AC3,可以按字节、字或双字的形式来存取其中的数据。
9)特殊存储器(SpecialMemory:SM)特殊存储器的位提供了一种CPU与用户程序之间传递信息的手段,可以用这些位控制S7-200CPU的一些特殊功能或识别其运行状态。可以按位、字节、字或双字来存取SM。本书将在使用的时候对SM的位