PLC原理及应用第五章S7-200 PLC的指令系统_第1页
PLC原理及应用第五章S7-200 PLC的指令系统_第2页
PLC原理及应用第五章S7-200 PLC的指令系统_第3页
PLC原理及应用第五章S7-200 PLC的指令系统_第4页
PLC原理及应用第五章S7-200 PLC的指令系统_第5页
已阅读5页,还剩318页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本章主要介绍本章主要介绍S7-200S7-200系列系列PLCPLC的编程语言的编程语言、基本指基本指令令系统、系统、功能指令功能指令及编程方法。及编程方法。 学习目标:学习目标: 熟练掌握梯形图和语句表的编程方法,掌握基熟练掌握梯形图和语句表的编程方法,掌握基本指令和功能指令中的常用指令,了解其他指令。本指令和功能指令中的常用指令,了解其他指令。教学内容:教学内容: 5.1 S7-200 PLC编程基础编程基础 5.2 S7-200 PLC的基本指令及编程方法的基本指令及编程方法 5.3 S7-200 PLC的功能指令及编程方法的功能指令及编程方法(参阅目录,以了解概况,对照其他语言)(参阅

2、目录,以了解概况,对照其他语言) S7-200系列系列PLC主机中有两类指令集:主机中有两类指令集:IEC11313指令集和指令集和SIMATIC指令集。指令集。 IEC11313指令集是国际电工委员会(指令集是国际电工委员会(IEC)制定的)制定的PLC国际标准国际标准 11313 Programming Language(编程语言编程语言)中推荐的标准语言。中推荐的标准语言。SIMATIC指令集指令集是西门子公司为是西门子公司为S7-200 PLC设计的设计的编程语言,该指令执行时间短,而且可以用梯形图编程语言,该指令执行时间短,而且可以用梯形图(LAD-LADder)、功能块图()、功能

3、块图(FBD-Function Block Diagram)和语句表()和语句表(STL-Statement List)三种编程语)三种编程语言。言。SIMATIC指令集是西门子公司专为指令集是西门子公司专为S7-200 PLC设计设计的编程语言。该指令集中,大多数指令也符合的编程语言。该指令集中,大多数指令也符合IEC11313标准。标准。SIMATIC指令集不支持系统完全数据类型检查。指令集不支持系统完全数据类型检查。使用使用SIMATIC指令集,可以用梯形图(指令集,可以用梯形图(LAD)、功)、功能块图(能块图(FBD)和语句表()和语句表(STL)编程语言编程。)编程语言编程。1.

4、梯形图编程语言梯形图编程语言梯形图编程语言是在梯形图编程语言是在继电接触器控制系统原理图继电接触器控制系统原理图的的基础上演变而来的。基础上演变而来的。梯形图的阅读方法是按梯形图的阅读方法是按自上而下,从左到右自上而下,从左到右的顺序的顺序排列,最左边的竖线称为排列,最左边的竖线称为起始母线起始母线,然后按一定的控制,然后按一定的控制要求和规则连接各个接点,最后以要求和规则连接各个接点,最后以继电器线圈继电器线圈结束,称结束,称为一个为一个逻辑行逻辑行或一个或一个“梯级梯级”,或一个或一个子系统子系统。如图。如图5-1所示,梯形图由此而得名。所示,梯形图由此而得名。右母线省略右母线省略图5-1

5、 梯形图(LAD)图5-2 功能块图(FBD)对应图对应图5-1中的I0.1常闭触点2. 功能块图(功能块图(FBD)编程语言)编程语言 功能块图(功能块图(FBD)类似于普通逻辑功能图,它沿用)类似于普通逻辑功能图,它沿用了半导体逻辑电路的了半导体逻辑电路的逻辑框图逻辑框图的表达方式。一般用一种的表达方式。一般用一种功能方框表示一种特定的功能,功能方框表示一种特定的功能,3. 语句表(语句表(STL)编程语言)编程语言语句表编程语言类似于计语句表编程语言类似于计算机中的算机中的助记符语言助记符语言,它是最,它是最基本的编程语言。也是一种应基本的编程语言。也是一种应用很广泛的语言。用很广泛的语

6、言。STEP 7-Micro/WIN 32的语句表如图所的语句表如图所示。示。图5-3 语句表(STL) 通常梯形图程序、功能块图程序、语句表程序可通常梯形图程序、功能块图程序、语句表程序可有条件的方便地转换。但是,语句表(有条件的方便地转换。但是,语句表(STL)可以编)可以编写梯形图或功能块图无法实现的程序。写梯形图或功能块图无法实现的程序。 1. 1. 基本数据类型及数据类型检查基本数据类型及数据类型检查(1)(1)基本数据类型基本数据类型 S7-200 PLC的的指令参数指令参数所用的所用的基本数据类型、长度基本数据类型、长度如下如下: 1位位 布尔型(布尔型(BOOL) 8位位 字节

7、型(字节型(BYTE) 16位位 无符号整数型(无符号整数型(WORD) 16位位 有符号整数型(有符号整数型(INT) 32位位 无符号双字整数型(无符号双字整数型(DWORD) 32位位 有符号双字整数型(有符号双字整数型(DINT) 32位位 实数型(实数型(REAL) PLC的存储器分为的存储器分为程序区程序区、系统区系统区、数据区数据区。程序区程序区用于存放用户程序,存储器为用于存放用户程序,存储器为EEPROM。系统区系统区用于存放有关用于存放有关PLC配置结构的参数。配置结构的参数。数据区数据区是是S7-200 CPU提供的存储器的特定区域。提供的存储器的特定区域。 用户对程序区

8、、系统区和部分数据区进行编辑,编用户对程序区、系统区和部分数据区进行编辑,编辑后写入辑后写入PLC的的EEPROM 。RAM为为EEPROM存储器提存储器提供备份存储区,用于供备份存储区,用于PLC运行时动态使用。运行时动态使用。 RAM由大容由大容量电容作停电保持。量电容作停电保持。1. 数据区存储器的地址表示格式数据区存储器的地址表示格式 存储器是由许多存储器是由许多存储单元存储单元组成的,每个存储单元都组成的,每个存储单元都有惟一的有惟一的地址地址,可以依据存储器地址来,可以依据存储器地址来存取数据存取数据。数据。数据区存储器地址的表示格式有区存储器地址的表示格式有位、字节、字、双字地址

9、格位、字节、字、双字地址格式。式。-(存取数据的规则)(存取数据的规则) (1)位地址格式位地址格式 数据区存储器区域的某一位的地址格式为:数据区存储器区域的某一位的地址格式为:Ax.y。 必须指定存储器区域必须指定存储器区域标识符标识符A、字节地址字节地址x及及位号位号y。位地址格式如图位地址格式如图5-4所示。所示。图5-4 位地址格式MSBMSB表示最高位表示最高位 LSBLSB表示最低位表示最低位 (2)(2)字节、字、双字字节、字、双字地址格式地址格式 数据区存储器区域的字节、字、双字地址格式为:数据区存储器区域的字节、字、双字地址格式为:A AT Tx x。字节、字、双字的地址格式

10、如图字节、字、双字的地址格式如图5-55-5所示。所示。图图5-5 5-5 字节、字字节、字、双字地址格式双字地址格式(3)其他地址格式其他地址格式 数据区存储器区域中,还包括定时器存储器数据区存储器区域中,还包括定时器存储器(T)、)、计数器存储器计数器存储器(C)、)、累加器累加器(AC)、)、高速计数器高速计数器(HC)等,它们是模拟相关的电器元件的。它们的地等,它们是模拟相关的电器元件的。它们的地址格式为:址格式为:Ay。由由区域标识符区域标识符A和和元件号元件号y组成,例如组成,例如T24表示某定表示某定时器的地址,时器的地址,T是定时器的区域标识符,是定时器的区域标识符,24是定时

11、器号是定时器号。 2. 2. 数据区存储器区域数据区存储器区域 (1)(1)输入输入/ /输出映像寄存器(输出映像寄存器(I/QI/Q) 输入映像寄存器(输入映像寄存器(I I)输出映像寄存器(输出映像寄存器(Q Q)输入映像寄存器(输入映像寄存器(I I)的)的地址格式地址格式为:为:位地址:位地址:I I 字节地址字节地址 . . 位地址位地址 ,如,如 I I0 0. .1 1。 字节、字、双字地址:字节、字、双字地址:I I 数据长度数据长度起始字节地址起始字节地址 ,如,如I IB B4 4、I IW W6 6、I ID D1010 CPU226模块输入映像寄存器的模块输入映像寄存器

12、的有效地址范围有效地址范围为:为: I(0.015.7););IB(015););IW(014););ID(012)。)。 在程序的执行过程中,对于输入或输出的存取通常在程序的执行过程中,对于输入或输出的存取通常是通过映像寄存器,而不是实际的输入是通过映像寄存器,而不是实际的输入/输出端子,输出端子,S7-200 CPU执行有关输入执行有关输入/输出程序时的输出程序时的操作过程操作过程如图如图5-6所示。所示。图5-6 S7-200 CPU输入、输出的操作 (2)(2)内部标志位存储器(内部标志位存储器(M M) 内部标志位存储器(内部标志位存储器(M M)也称)也称内部线圈内部线圈,是模拟继

13、电,是模拟继电器控制系统中的中间继电器,它器控制系统中的中间继电器,它存放中间操作状态存放中间操作状态,或存,或存储储其他相关的数据其他相关的数据。以。以位、字节、字、双字位、字节、字、双字为使用单位。为使用单位。 内部标志位存储器(内部标志位存储器(M M)的)的地址格式地址格式为:为: 位地址:位地址:MM字节地址字节地址 . .位地址位地址 ,如,如 M M2626. .7 7。 字节字节、字字、双字地址双字地址:M M 数据长度数据长度起始字节地址起始字节地址 ,如如 M MB B1111、M MW W2323、M MD D2626。 CPU226CPU226模块内部标志位存储器有效模

14、块内部标志位存储器有效地址范围地址范围: M M(0.031.70.031.7););MBMB(031031););MWMW(030030););MDMD(028028) (3) (3) 变量存储器(变量存储器(V V)-全局变量存储器全局变量存储器 变量存储器(变量存储器(V V)存放)存放全局变量全局变量、存放程序执行过程、存放程序执行过程中控制逻中控制逻辑操作的中间结果辑操作的中间结果或其他相关的或其他相关的数据数据。变量存储。变量存储器是器是全局有效全局有效。 V V存储器的存储器的地址格式地址格式为:为: 位地址:位地址:VV字节地址字节地址.位地址位地址 ,如如 V V1010.

15、.2 2。 字节字节、字字、双字地址双字地址:V V 数据长度数据长度起始字节地址起始字节地址 如如V VB B2020、V VW W100100、V VD D320320。 CPU226CPU226模块变量存储器的有效模块变量存储器的有效地址范围地址范围为:为: V(0.05119.7)V(0.05119.7);VB(05119)VB(05119);VW(05118)VW(05118);VD(05116)VD(05116) (4)(4)局部存储器(局部存储器(L L)-局部变量存储器局部变量存储器 局部存储器用来存放局部存储器用来存放局部变量局部变量。局部存储器是局部有。局部存储器是局部有效

16、的。效的。局部有效局部有效是指某一局部存储器只能在某一程序分区是指某一局部存储器只能在某一程序分区(主程序或子程序或中断程序)中使用。(主程序或子程序或中断程序)中使用。局部存储器(局部存储器(L L)的地址格式为:)的地址格式为: 位地址位地址:L L 字节地址字节地址 . . 位地址位地址 ,如,如 L L0 0. .0 0。 字节字节、字字、双字地址双字地址:L L 数据长度数据长度起始字节地址起始字节地址 如如 L LB B3333、L LW W4444、L LD D5555。 CPU226CPU226模块局部存储器的有效地址范围为:模块局部存储器的有效地址范围为: L L(0.063

17、.70.063.7););LBLB(063063););LWLW(062062););LDLD(060060) (5)(5)顺序控制继电器存储器(顺序控制继电器存储器(S S) 顺序控制继电器(顺序控制继电器(S S)用于)用于顺序控制顺序控制(或步进控制(或步进控制) )。顺序控制继电器指令(顺序控制继电器指令(SCRSCR)基于顺序功能图()基于顺序功能图(SFCSFC)的编)的编程方式。程方式。 顺序控制继电器存储器(顺序控制继电器存储器(S S)的)的地址格式地址格式为:为: 位地址位地址:S S 字节地址字节地址 . . 位地址位地址 ,如,如 S S3 3. .1 1。 字节字节、

18、字字、双字地址双字地址:S S 数据长度数据长度起始字节地址起始字节地址 ,如如 S SB B4 4、S SW W1010、S SD D2121。 CPU226CPU226模块顺序控制继电器存储器的模块顺序控制继电器存储器的有效地址范围有效地址范围为:为: S S(0.031.70.031.7););SBSB(031031););SWSW(030030););SDSD(028028) (6)(6)特殊标志位存储器(特殊标志位存储器(SMSM) 特殊标志位即特殊内部线圈。特殊标志位区域分为特殊标志位即特殊内部线圈。特殊标志位区域分为只只读读区域(区域(SM0.0SM29.7SM0.0SM29.7

19、,头,头3030个字节为只读区)和个字节为只读区)和可读写可读写区域,在只读区特殊标志位,区域,在只读区特殊标志位,用户只能利用其触点用户只能利用其触点。 特殊标志位存储器(特殊标志位存储器(SMSM)的)的地址格式地址格式为:为: 位地址位地址:SMSM 字节地址字节地址 . . 位地址位地址 ,如,如 SMSM0 0. .1 1。 字节字节、字字、双字地址双字地址:SMSM 数据长度数据长度起始字节地址起始字节地址 ,如如 SMSMB B8686、SMSMW W100100、SMSMD D1212。 CPU226CPU226模块特殊标志位存储器的模块特殊标志位存储器的有效地址范围有效地址范

20、围为:为: SMSM(0.0549.70.0549.7););SMBSMB(05490549););SMWSMW(05480548);); SMDSMD(05460546)。)。 (7)(7)定时器存储器(定时器存储器(T T) 定时器是模拟继电器控制系统中的定时器是模拟继电器控制系统中的时间继电器时间继电器。S7-S7-200 PLC200 PLC定时器的时基有三种:定时器的时基有三种:1ms1ms、10ms10ms、100ms100ms。 定时器存储器定时器存储器地址表示格式地址表示格式为:为:T T 定时器号定时器号 ,如,如T T2424。S7-200 PLCS7-200 PLC定时器

21、存储器的有效地址范围为:定时器存储器的有效地址范围为: T T(02550255)。 (8)计数器存储器(计数器存储器(C) 计数器是累计其计数输入端脉冲电平由低到高的次计数器是累计其计数输入端脉冲电平由低到高的次数,有三种类型:数,有三种类型:增计数增计数、减计数减计数、增减计数增减计数。 计数器存储器地址表示格式为:计数器存储器地址表示格式为:C计数器号计数器号,如,如C3。S7-200 PLC计数器存储器的有效地址范围为:计数器存储器的有效地址范围为: C(0255)。 (9)(9)模拟量输入映像寄存器(模拟量输入映像寄存器(AIAI) 模拟量输入模块将外部输入的模拟信号的模拟量模拟量输

22、入模块将外部输入的模拟信号的模拟量转换转换成成1 1个字长的数字量个字长的数字量,存放在模拟量输入映像寄存器(,存放在模拟量输入映像寄存器(AIAI)中,供中,供CPUCPU运算处理。运算处理。 模拟量输入映像寄存器(模拟量输入映像寄存器(AIAI)的)的地址格式地址格式为:为: AIWAIW 起始字节地址起始字节地址 ,如,如 AIWAIW4 4 CPU226 CPU226模块模拟量输入映像寄存器(模块模拟量输入映像寄存器(AIAI)的)的有效地址有效地址的范围的范围为:为:AIWAIW(062062)。 (10)(10)模拟量输出映像寄存器(模拟量输出映像寄存器(AQAQ) CPUCPU运

23、算的相关结果存放在模拟量输出映像寄存运算的相关结果存放在模拟量输出映像寄存器(器(AQAQ)中,供)中,供D/AD/A转换器转换器将将1 1个字长的数字量转换为模个字长的数字量转换为模拟量,拟量,以驱动外部模拟量控制的设备。模拟量输出映像以驱动外部模拟量控制的设备。模拟量输出映像寄存器(寄存器(AQAQ)的)的地址格式地址格式为:为: AQWAQW 起始字节地址起始字节地址 ,如,如 AQWAQW1010。CPU226CPU226模块模拟量输出映像寄存器(模块模拟量输出映像寄存器(AQAQ)的有效)的有效地址的范围地址的范围为:为:AQWAQW(062062)。 (11)(11)累加器(累加器

24、(ACAC) 累加器是用来累加器是用来暂时存储计算中间值暂时存储计算中间值的存储器,也可的存储器,也可向子程序传递参数或返回参数。向子程序传递参数或返回参数。S7-200 CPUS7-200 CPU提供了提供了4 4个个3232位累加器(位累加器(AC0AC0、AC1AC1、AC2AC2、AC3AC3)。)。 累加器的累加器的地址格式地址格式为:为:ACAC 累加器号累加器号 ,如,如 ACAC0 0。 CPU226CPU226模块累加器的有效模块累加器的有效地址范围地址范围为:为: ACAC(0303)。 ( (12)12)高速计数器(高速计数器(HCHC)高速计数器用来高速计数器用来累计高

25、速脉冲累计高速脉冲信号。高速计数器的当信号。高速计数器的当前值寄存器为前值寄存器为3232位(位(bitbit),读取高速计数器当前值应以),读取高速计数器当前值应以双字(双字(3232位)来寻址位)来寻址。 高速计数器高速计数器地址格式地址格式为:为: HCHC 高速计数器号高速计数器号 ,如,如 HCHC1 1。 CPU226CPU226模块高速计数器的有效模块高速计数器的有效地址范围地址范围为:为: HCHC(0505)。)。定义定义:指令中如何提供:指令中如何提供操作数操作数或或操作数地址操作数地址,称为,称为寻址方式。寻址方式。S7-200 PLC的寻址的寻址方式有方式有:立即寻址、

26、直接寻址、立即寻址、直接寻址、间接寻址。间接寻址。 1. 立即寻址立即寻址立即寻址方式立即寻址方式是:指令直接给出操作数,操作数紧是:指令直接给出操作数,操作数紧跟着操作码,在取出指令的同时也就取出了操作数,立跟着操作码,在取出指令的同时也就取出了操作数,立即有操作数可用,所以称为立即操作数或立即寻址。即有操作数可用,所以称为立即操作数或立即寻址。CPU以二进制方式存储以二进制方式存储所有常数。所有常数。但指令中但指令中可用十可用十进制、十六进制、进制、十六进制、ASCII码或浮点数形式来表示。表示码或浮点数形式来表示。表示格式举例如下:格式举例如下:十进制常数:十进制常数:30112 十六进

27、制常数:十六进制常数:16#42FASCII码式常数:码式常数:INPUT 实数或浮点常数:实数或浮点常数:+1.1E-10 二进制常数:二进制常数:2#0101 11102. 2. 直接寻址直接寻址 直接寻址方式直接寻址方式是:指令是:指令直接使用存储器或寄存器的元直接使用存储器或寄存器的元件名称和地址编号件名称和地址编号,根据这个地址就可以立即,根据这个地址就可以立即找到该数据。找到该数据。不同数据长度的不同数据长度的寻址指令格式寻址指令格式举例如下:举例如下:位寻址:位寻址:ANDAND Q Q5.5 5.5 Q Q5.1字节寻址:字节寻址:ORBORB VBVB3333,LBLB212

28、1字寻址:字寻址:MOVWMOVW ACAC0 0,AQWAQW2 2双字寻址:双字寻址:MOVDMOVD ACAC1 1,VDVD200200 间接寻址方式间接寻址方式:指令指令给出存放操作数地址给出存放操作数地址的的存储单元存储单元的地址的地址(也称(也称地址指针地址指针)。)。 S7-200 CPU S7-200 CPU 以以 V V、L L、ACAC的的内容值为地址内容值为地址进行间接寻进行间接寻址。址。 可间接寻址的存储器区域可间接寻址的存储器区域有:有:I I、Q Q、V V、M M、S S、T T(仅(仅当前值)、当前值)、C C(仅当前值)。(仅当前值)。(1)(1)建立指针建

29、立指针 间接寻址前,间接寻址前,应先建立指针应先建立指针。指针为。指针为双字长双字长,是所,是所要要访问的存储单元访问的存储单元的的3232位物理地址位物理地址。 只能只能使用、使用、 AC (1AC (1 3)3)作为指针,作为指针, ACAC不能。不能。3. 3. 间接寻址间接寻址 将所要访问的存储器单元的地址装入用来作为指针将所要访问的存储器单元的地址装入用来作为指针的存储器单元或寄存器,的存储器单元或寄存器,装入的是地址装入的是地址而而不是数据不是数据本身,本身,格式如下:格式如下: MOVD &VB200,AC1“&”为地址符号,与为地址符号,与单元组合单元组合(VB200VB200

30、3)表示所对应单元的表示所对应单元的32位物理地址。位物理地址。指令中的第二个地址数据长度指令中的第二个地址数据长度必须必须是双字长,如:是双字长,如:AC、LD和和VD。这里地址。这里地址“VB200”要用要用32位表示,因位表示,因而而必须必须使用双字传送指令(使用双字传送指令(MOVD)。)。(2)(2)间接存取间接存取 依据依据指针中的内容值作为地址指针中的内容值作为地址存取数据。使用指针存取数据。使用指针可可存取字节、字、双字型的数据存取字节、字、双字型的数据, 下面两条指令是建立指针和间接存取的应用方法:下面两条指令是建立指针和间接存取的应用方法: MOVD MOVD & &V V

31、B B200200,ACAC1 1 MOVW MOVW * *ACAC1 1,ACAC0 0如图所示,操作数如图所示,操作数(AC1)(AC1)前面的前面的* *号表示号表示该操作该操作数数(AC1)(AC1)为指针。为指针。 图5-7 间接寻址 把VB200的地址送入AC1建立指针 把指针处的值送到AC0 本指令是本指令是MOVWMOVW,为字型长度,则,为字型长度,则AC0AC0的高的高1616位空闲未用;位空闲未用;若是若是MOVDMOVD双字型指令,则将双字型指令,则将VB200VB200 VB203VB203的内容的内容( (即即12345678)12345678)送到送到AC0AC

32、0 这里给出的是起始字节地址,而并不表示数据长度这里给出的是起始字节地址,而并不表示数据长度(由随后间接存取指令类型决定)为字型。所以,如(由随后间接存取指令类型决定)为字型。所以,如果改为果改为&VB200&VB200或或&VD200&VD200效果完全相同。效果完全相同。(3)(3)修改指针修改指针 存取连续地址的存储单元中数据时,通过修改指针可存取连续地址的存储单元中数据时,通过修改指针可以非常方便地存取数据。以非常方便地存取数据。在在S7-200 PLCS7-200 PLC中,指针的内容不会自动改变,中,指针的内容不会自动改变,可用自可用自增或自减等指令修改指针值增或自减等指令修改指针

33、值。这样就可连续地存取存储单。这样就可连续地存取存储单元中的数据。元中的数据。 图图5-85-8中,用两次自增指令中,用两次自增指令INCD AC1INCD AC1,将,将AC1AC1指针中的指针中的值(值(VB200VB200)修改为)修改为VB202VB202后,指针即指向新地址后,指针即指向新地址VB202VB202。图5-8 修改指针 把指针增加两次,指向下一个字 把AC1(VW202)所指向的字数值送到AC0 用户程序可分为用户程序可分为三个程序分区三个程序分区:主程序、子程序和:主程序、子程序和中断程序。中断程序。主程序主程序(OB1):是用户程序的主体。):是用户程序的主体。CP

34、U在在每个每个扫描周期都要执行一次主程序指令。扫描周期都要执行一次主程序指令。子程序子程序:是程序的:是程序的可选可选部分,部分,只有当主程序调用时只有当主程序调用时,才能够执行。才能够执行。中断程序中断程序:是程序的:是程序的可选可选部分,部分,只有当中断事件发只有当中断事件发生时,才能够执行。生时,才能够执行。1. 网络网络 在梯形图(在梯形图(LAD)中,程序被分成称为)中,程序被分成称为网络网络的一的一些些程序段程序段。每个梯形图是由一个或多个。每个梯形图是由一个或多个梯级(子网络)梯级(子网络)组成。组成。 功能块图(功能块图(FBD)中,使用网络概念给程序分段。)中,使用网络概念给

35、程序分段。 语句表(语句表(STL)程序中,使用)程序中,使用“网络网络”这个关键词这个关键词对对程序分段。程序分段。2. 梯形图(梯形图(LAD)/功能块图(功能块图(FBD)梯形图中左、右垂直线称为左、右母线。在左、右梯形图中左、右垂直线称为左、右母线。在左、右母线之间是由触点、线圈或功能框组合的有序排列。梯母线之间是由触点、线圈或功能框组合的有序排列。梯形图的形图的输入总是输入总是在图形的在图形的左边左边,输出总是输出总是在图形的在图形的右边,右边,因而触点与左母线相连,因而触点与左母线相连,线圈或功能框线圈或功能框终止右母线终止右母线( (右右母线常省去),从而构成一个梯级。母线常省去

36、),从而构成一个梯级。 功能块图中输入总是在框图的左边,输出总是在框功能块图中输入总是在框图的左边,输出总是在框图的右边。图的右边。 3. 允许输入端、允许输出端允许输入端、允许输出端在梯形图(在梯形图(LAD)、功能块图()、功能块图(FBD)中,功能)中,功能框的框的EN端是允许输入端端是允许输入端,功能框的允许输入端,功能框的允许输入端必须存必须存在在“能流能流”,即与之相连的逻辑运算结果为即与之相连的逻辑运算结果为1(即(即EN=1),才能执行该功能框的功能。),才能执行该功能框的功能。 在语句表(在语句表(STL)程序中没有)程序中没有EN允许输入端,但允许输入端,但是允许执行是允许

37、执行STL指令的指令的条件是栈顶的值条件是栈顶的值必须是必须是“1”。 在梯形图(在梯形图(LAD)、功能块图()、功能块图(FBD)中,功能)中,功能框的框的ENO端是允许输出端端是允许输出端,允许功能框的,允许功能框的布尔量布尔量输出,输出,用于指令的用于指令的级联级联。4. 条件条件/无条件输入无条件输入 条件输入条件输入:在梯形图(:在梯形图(LAD)、功能块图()、功能块图(FBD)中,与中,与“能流能流”有关的功能框或线圈不直接有关的功能框或线圈不直接与左母线连与左母线连接。接。 无条件输入无条件输入:在梯形图(:在梯形图(LAD)、功能块图)、功能块图(FBD)中,与)中,与“能

38、流能流”无关的功能框或线圈直接无关的功能框或线圈直接与左与左母线连接。母线连接。5. 无允许输出端的指令无允许输出端的指令 在梯形图(在梯形图(LAD)、功能块图()、功能块图(FBD)中,无允)中,无允许输出端(许输出端(ENO)的指令方框,)的指令方框,不能用于级联不能用于级联。 S7-200 PLC的的基本指令基本指令多用于多用于开关量逻辑控制开关量逻辑控制,本节着重介绍梯形图指令和语句表指令,并讨论基本指本节着重介绍梯形图指令和语句表指令,并讨论基本指令的功能及编程方法。令的功能及编程方法。 编程时,编程时,应注意应注意各操作数的各操作数的数据类型数据类型及及数值范围数值范围。CPU对

39、非法操作数将生成编译错误代码。有关对非法操作数将生成编译错误代码。有关S7-200 CPU模块操作数的范围如表模块操作数的范围如表5-5所示。所示。 基本逻辑指令基本逻辑指令是构成是构成基本运算功能基本运算功能指令的集合,包指令的集合,包括基本的括基本的位操作位操作指令,指令,置位置位/ /复位复位指令指令、立即立即指令、指令、边边沿脉冲沿脉冲指令、指令、逻辑堆栈逻辑堆栈指令、指令、定时器定时器、计数器计数器、比较比较指指令、令、取非取非和和空操作空操作指令。指令。S7-200可编程序控制器使用一个可编程序控制器使用一个逻辑堆栈逻辑堆栈来分析控来分析控制逻辑,用语句表编程时要根据这一堆栈逻辑进

40、行制逻辑,用语句表编程时要根据这一堆栈逻辑进行组织组织程序程序,用相关指令来实现堆栈操作。,用相关指令来实现堆栈操作。S7-200S7-200可编程序控制器的可编程序控制器的主机逻辑堆栈结构主机逻辑堆栈结构如表如表5-5-6 6所示。所示。 逻辑堆栈逻辑堆栈结构结构是由九是由九个堆栈存储器位组成的串个堆栈存储器位组成的串联堆栈,栈顶是布尔型数联堆栈,栈顶是布尔型数据进出堆栈的必由之路。据进出堆栈的必由之路。进栈进栈时,数据由栈顶压入,时,数据由栈顶压入,堆栈中原来所存的数据被堆栈中原来所存的数据被串行下移一格。串行下移一格。表5-6 逻辑堆栈结构堆栈结构堆栈结构名称名称说明说明S0STACK0

41、第一个堆栈第一个堆栈 S1STACK1第二个堆栈第二个堆栈S2STACK2第三个堆栈第三个堆栈S3STACK3第四个堆栈第四个堆栈S4STACK4第五个堆栈第五个堆栈S5STACK5第六个堆栈第六个堆栈S6STACK6第七个堆栈第七个堆栈S7STACK7第八个堆栈第八个堆栈S8STACK8第九个堆栈第九个堆栈栈顶栈顶栈顶栈顶STACK 0STACK 0在逻辑堆栈的位运算中兼有累加器的在逻辑堆栈的位运算中兼有累加器的作用,作用,存放第一操作数存放第一操作数。基本逻辑指令主要包括基本逻辑指令主要包括标准触点标准触点指令、指令、正负跳变正负跳变指指令、令、置位和复位置位和复位指令等,主要是与位相关的

42、输入输出及指令等,主要是与位相关的输入输出及触点的简单连接。(触点的简单连接。(P116P116底行底行-逻辑运算及过程)逻辑运算及过程) 1. 标准触点指令标准触点指令标准触点指令有标准触点指令有LD、LDN、A、AN、O、ON、NOT、=指令。指令。 由于受编程软件的限制,语句表中由于受编程软件的限制,语句表中A、O、AN、ON指令最多可以连用有限次。同样,梯形图中,最多指令最多可以连用有限次。同样,梯形图中,最多一次串联或并联的触点数也有一定限制,一次串联或并联的触点数也有一定限制, 标准触点指令中如果有操作数,则为标准触点指令中如果有操作数,则为BOOL型,操型,操作数的编址范围可以是

43、:作数的编址范围可以是:I、Q、M、SM、T、C、S、V、L。 (1 1)装入常开指令:)装入常开指令:LD LD 装载指令,常开触点与母线相连,开始一个网络块中装载指令,常开触点与母线相连,开始一个网络块中的逻辑运算。的逻辑运算。指令格式:指令格式:LD bit; 例:例:LD I0.2(2 2)装入常闭指令:)装入常闭指令:LDN LDN 非装载指令,常闭触点与母线相连,开始一个网络块非装载指令,常闭触点与母线相连,开始一个网络块中的逻辑运算。中的逻辑运算。指令格式:指令格式:LDNLDN bitbit; 例:例:LDNLDN I I0 0. .2 2 (3)与与常开指令:常开指令:A 单

44、个常开触点串联单个常开触点串联连接指令,执行逻辑与运算。连接指令,执行逻辑与运算。指令格式:指令格式:A bit; 例:例: A M2.4 (4)与与常闭指令:常闭指令:AN 单个常闭触点单个常闭触点串联串联连接指令,执行逻辑与运算。连接指令,执行逻辑与运算。指令格式:指令格式:AN bit; 例:例: AN M2.4 (5)或或常开指令:常开指令:O O 单个常开触点并联连接指令,执行逻辑或运算。单个常开触点并联连接指令,执行逻辑或运算。指令格式:指令格式:O bit; 例:例: O M2.6 (6)或常闭指令:)或常闭指令:ON 单个常开触点并联连接指令,执行逻辑或运算单个常开触点并联连接

45、指令,执行逻辑或运算。指令格式:指令格式:ON bit; 例:例: ON M2.6 (7)输出指令:输出指令:= 将逻辑运算结果输出到指定存储器位或输出继将逻辑运算结果输出到指定存储器位或输出继电器对应的映像寄存器位,以驱动本位线圈。电器对应的映像寄存器位,以驱动本位线圈。指令格式:指令格式:= bit; 例:例: = Q2.6 在语句表中,在语句表中,LD、LDN、A、AN、O、ON,这几条指令的执行对逻辑堆栈的影响分别如表这几条指令的执行对逻辑堆栈的影响分别如表5-7、表表5-8及其后的说明。及其后的说明。 指令指令LD I0.1(假设(假设I0.1=1)执行情况如表)执行情况如表5-7所

46、示。如果所示。如果是是LDN指令,则将操作数取反后再装入栈顶,其他操作相同。指令,则将操作数取反后再装入栈顶,其他操作相同。 表5-7 LD I0.1的执行 名名 称称执执 行行 前前执执 行行 后后说说 明明STACK0S01将新值将新值I0.1=1装入堆栈装入堆栈 STACK1S1S0由由S0下移一个单元得到下移一个单元得到 STACK2S2S1由由S1下移一个单元得到下移一个单元得到STACK3S3S2由由S2下移一个单元得到下移一个单元得到STACK4S4S3由由S3下移一个单元得到下移一个单元得到STACK5S5S4由由S4下移一个单元得到下移一个单元得到STACK6S6S5由由S5

47、下移一个单元得到下移一个单元得到STACK7S7S6由由S6下移一个单元得到下移一个单元得到STACK8S8S7由由S7下移一个单元得到下移一个单元得到 原值原值S0S0串行串行下移一下移一个单元个单元, ,其余以其余以此类推。此类推。 原原S8S8自自动丢动丢失。失。 指令指令A I0.2(假设(假设I0.2=0)执行情况如表)执行情况如表5-8所示。所示。表5-8 指令A I0.2的执行 名名 称称执执 行行 前前执执 行行 后后说说 明明STACK010执行前栈顶值为执行前栈顶值为1。执行是用栈顶值和指令执行是用栈顶值和指令操作数(操作数(I0.2的值为的值为0)进行与运算,结果放回进行

48、与运算,结果放回栈顶。栈顶。即:即:S0*I0.2=1*0=0 S0 STACK1S1S1STACK2S2S2STACK3S3S3STACK4S4S4STACK5S5S5STACK6S6S6STACK7S7S7STACK8S8S8u对堆栈进行对堆栈进行操作操作时,执行各指令的情况如下:时,执行各指令的情况如下:u执行执行LD指令时,将指令指定的位地址中的二进制数指令时,将指令指定的位地址中的二进制数据装入栈顶。据装入栈顶。u执行执行A指令时,将指令指定的位地址中的二进制数和指令时,将指令指定的位地址中的二进制数和栈顶中的二进制数相栈顶中的二进制数相“与与”,结果存入栈顶。,结果存入栈顶。u执行

49、执行O指令时,将指令指定的位地址中的数和栈顶中指令时,将指令指定的位地址中的数和栈顶中的数相的数相“或或”,结果存入栈顶。,结果存入栈顶。u执行执行LDN、AN和和ON指令时,取出位地址中的数后,指令时,取出位地址中的数后,先取反,再做出相应的操作。先取反,再做出相应的操作。u执行输出指令执行输出指令“=”时,将栈顶值复制到对应的映像时,将栈顶值复制到对应的映像寄存器。寄存器。程序实例程序实例:仔细比较不同编程工具的区别与联系。:仔细比较不同编程工具的区别与联系。 LD I0.0 /装入常开触点装入常开触点O I0.1 /或常开触点或常开触点A I0.2 /与常开触点与常开触点= Q0.0 /

50、输出触点,输出触点, /如果本梯级中将如果本梯级中将I0.1I0.1的触点改的触点改 /为为Q0.0Q0.0的常开触点,则成为电的常开触点,则成为电 /机起动停止控制环节的梯形图机起动停止控制环节的梯形图 LDN I0.0 /装入常闭触点装入常闭触点ON I0.0 /或常闭触点或常闭触点AN I0.2 /与常闭触点与常闭触点= Q0.1 /输出触点输出触点 LD I0.0 /O I0.1 /A I0.2 /NOT /取非,即输出反相取非,即输出反相= Q0.3 /图图5-95-9 标标准准触触点点LADLAD和和STLSTL例例 1. 根据梯形图写出语句表指令根据梯形图写出语句表指令课堂练习课

51、堂练习:输入映象寄存器输入映象寄存器(输入软线圈输入软线圈)输出映象寄存器输出映象寄存器(输出软线圈输出软线圈)0100梯形图编程时:梯形图编程时:1. 只能使用只能使用输入软线圈的常开或常闭软触点,而输入软线圈的常开或常闭软触点,而不能使用不能使用输入输入 软线圈;软线圈;2. 对于输出对于输出即可以使用即可以使用输出软线圈的常开或常闭软触点,输出软线圈的常开或常闭软触点,也可也可 使用使用输出软线圈;输出软线圈; 3. 一般输出线圈不能直接与左母线相连;输出线圈后面不允许一般输出线圈不能直接与左母线相连;输出线圈后面不允许再接任何元件;再接任何元件;当用来控制一台电动机时:当用来控制一台电

52、动机时:1. 外接的输入设备外接的输入设备停止按钮停止按钮一般来讲都使用一般来讲都使用“常闭常闭”的按钮。在进行梯形图程序编写时,当用的按钮。在进行梯形图程序编写时,当用到这个停止按钮到这个停止按钮对应的软触点对应的软触点时,这个软触点要用时,这个软触点要用“常闭常闭”触点;触点; 2.外接的输入设备外接的输入设备起动按钮起动按钮一般来讲都使用一般来讲都使用“常常开开”的按钮。在进行梯形图程序编写时,当用到这的按钮。在进行梯形图程序编写时,当用到这个起动按钮个起动按钮对应的软触点对应的软触点时,这个软触点要用时,这个软触点要用“常常开开”触点;触点;2.电动机的点动长动混合控制线路电动机的点动

53、长动混合控制线路点动与长动控制线路点动与长动控制线路“正正停停反反”控制线路控制线路“正正反反停停”控制线路控制线路正反转梯形图程序正反转梯形图程序多地控制:多地控制:控制要求:在控制要求:在2个地方实现对一台电机的启动与停止控制。个地方实现对一台电机的启动与停止控制。I/O分配如下表:分配如下表:输入触点输入触点功能说明功能说明输出线圈输出线圈(KM)(KM)功能说明功能说明I0.0A地点启动按钮地点启动按钮SB3Q0.1电动机控制输出电动机控制输出I0.1A地点停止按钮地点停止按钮SB1I0.2B地点启动按钮地点启动按钮SB4I0.3B地点停止按钮地点停止按钮SB23组抢答器设计:组抢答器

54、设计: 控制要求:设计一个控制要求:设计一个3组抢答器,任一组抢先按下抢答按钮组抢答器,任一组抢先按下抢答按钮后,对应指示灯指示抢答结果,同时锁定抢答器,使其他组抢答后,对应指示灯指示抢答结果,同时锁定抢答器,使其他组抢答按钮无效。在按下复位开关后,可重新开始抢答。按钮无效。在按下复位开关后,可重新开始抢答。I/O分配见下表:分配见下表:输入触点输入触点功能说明功能说明输出线圈输出线圈功能说明功能说明I0.1第一组抢答按钮第一组抢答按钮Q0.1第一组抢答指示灯第一组抢答指示灯I0.2第二组抢答按钮第二组抢答按钮Q0.2第二组抢答指示灯第二组抢答指示灯I0.3第三组抢答按钮第三组抢答按钮Q0.3

55、第三组抢答指示灯第三组抢答指示灯I0.4复位按钮复位按钮P106:6. CPU226主机扩展配置时,应考虑哪些因素?主机扩展配置时,应考虑哪些因素?I/O是如是如何编址的?何编址的? 答:答:考虑因素:考虑因素: (1) 允许主机所带扩展模块数量;允许主机所带扩展模块数量; (2) 主机加扩展模块消耗总电流不能超过主机加扩展模块消耗总电流不能超过CPU模块提供模块提供的最大电流;的最大电流; (3) 数字量数字量I/O映像区大小;映像区大小; (4) 模拟量模拟量I/O映像区大小。映像区大小。 I/O编址:编址: (1) 主机最多扩展主机最多扩展7个模块,自带个模块,自带24点数字输入点数字输

56、入16点数点数 字输出;地址分配:字输出;地址分配:I0.0I2.7Q0.0Q1.7; (2) 数字数字I/O扩展:对不同模块以字节为最小单位分配地扩展:对不同模块以字节为最小单位分配地 址,最大能超过址,最大能超过128点输入点输入128点输出;点输出; (3) 模拟模拟I/O扩展:最多扩展扩展:最多扩展32个输入通道个输入通道32个输出通个输出通 道,每个通道占用两个字节。道,每个通道占用两个字节。主机主机模块模块0模块模块1模块模块2模块模块3CPU224(14IN/10OUT)EM221(8IN)EM231(4AI)EM235(4AI/1AQ)EM232(2AQ)I0.0I1.5Q0.

57、0Q1.1I2.0I2.5(6IN)AIW0AIW6(1)AIW8AQW0AQW2AQW4作业作业: P 107:72. 正负跳变指令正负跳变指令 正负跳变指令在梯形图中以触点形式使用。用于正负跳变指令在梯形图中以触点形式使用。用于检检测脉冲的正跳变(上升沿)或负跳变(下降沿)测脉冲的正跳变(上升沿)或负跳变(下降沿);可以可以产生一个扫描周期长度的微分脉冲产生一个扫描周期长度的微分脉冲。-功能功能(1)正跳变指令:正跳变指令:EU 正跳变触点检测到脉冲的每一次正跳变后,产生一正跳变触点检测到脉冲的每一次正跳变后,产生一个微分脉冲。个微分脉冲。指令格式:指令格式:EU (无操作数)(无操作数)

58、(2 2)负跳变指令:)负跳变指令:ED ED 负跳变触点检测到脉冲的每一次负跳变后,产生一负跳变触点检测到脉冲的每一次负跳变后,产生一个微分脉冲。个微分脉冲。指令格式:指令格式:ED (无操作数)(无操作数)正、负跳变触点指令编程举例如图正、负跳变触点指令编程举例如图5-125-12所示。所示。 图图5-125-12 正、负跳变触点指令编程正、负跳变触点指令编程 一个扫描周期长度一个扫描周期长度 3. 置位和复位指令置位和复位指令 置位即置置位即置1,复位即置,复位即置0。置位和复位指令可以。置位和复位指令可以将位将位存储区的某一位开始的一个或多个存储区的某一位开始的一个或多个(最多可达(最

59、多可达255个)个)同类存储器位同类存储器位置置1或置或置0。-功能功能表表5-95-9 置位和复位指令置位和复位指令操作数类型操作数类型及及范围范围 操作数操作数范范 围围 类类 型型 位位bitI,Q,M,SM,TC,V,S,L BOOL型型 数量数量N 可设置的范围:可设置的范围:1255(1)置位指令:)置位指令:S 将位存储区的指定位(位将位存储区的指定位(位bit)开始的)开始的N个同类存储个同类存储器位置位。器位置位。指令格式:指令格式: S bit, N; 例:例: S Q0.0, 1 (2)复位指令:)复位指令:R 将位存储区的指定位(位将位存储区的指定位(位bit)开始的)

60、开始的N个同类存储个同类存储器位复位。器位复位。指令格式:指令格式: R bit, N; 例:例: R Q0.2, 3 名名 称称置置 位位复复 位位 指令指令 S R 指令表格式指令表格式 S bit,N R bit,N 梯形图格式梯形图格式表表 S、R指令格式指令格式 在语句表(在语句表(STL)中,当栈顶值为)中,当栈顶值为1时,才能执行置时,才能执行置位指令位指令S或复位指令或复位指令R。置位后即使栈顶值变为。置位后即使栈顶值变为0,仍保持,仍保持置位;复位后即使栈顶值变为置位;复位后即使栈顶值变为0,仍保持复位。,仍保持复位。置位和复位指令应用编程序举例如图置位和复位指令应用编程序举

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论