版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章第七章主要内容vS7-200PLC编程的基本概念vS7-200PLC基本指令及编程方法vS7-200PLC功能指令及编程方法7.1 S7-200PLC编程的基本概念编程的基本概念编程语言编程语言 数据类型数据类型 存储器区域存储器区域 寻址方式寻址方式 程序的组织结构程序的组织结构 编程的一般规约编程的一般规约 一、一、S7-200 PLCS7-200 PLC的编程语言的编程语言S7-200 PLC有两种指令集:IEC 1131-3指令集 SIMATIC指令集IEC 1131-3IEC 1131-3指令集指令集 是国际电工委员会(是国际电工委员会(IECIEC)制定的制定的PLCPLC国
2、际标准国际标准1131-3 1131-3 Programming Language (Programming Language (编编程语言程语言) )中推荐的标准语言。中推荐的标准语言。v支持支持系统完全数据类型检查系统完全数据类型检查v只能用只能用梯形图梯形图(LADLAD)和和功能块图功能块图(FBDFBD)编程编程语言编程语言编程v指令执行时间较长指令执行时间较长SIMATICSIMATIC指令集指令集特点:特点:v大多数指令符合大多数指令符合IEC1131-3IEC1131-3标准标准v不支持不支持系统完全数据类型检查系统完全数据类型检查v可以用可以用梯形图(梯形图(LADLAD)、
3、功能块图(功能块图(FBDFBD)和和语句表(语句表(STLSTL)编程语言编程编程语言编程v指令执行时间较短指令执行时间较短由西门子公司设计由西门子公司设计1. 梯形图(梯形图(LAD) 梯形图(LAD)与电气控制电路图相呼应。 沿用了继电器、触点、串并联等术语 简化了图形符号 增加了特殊功能的指令 信号流向清楚、简单、直观、易懂I0.1Q0.1Q0.1I0.0 KMKM SB2 SB12. 功能块图(功能块图(FBD) 沿用了半导体逻辑电路的逻辑框图的表达方式= I Q 3 . 1L D I 3 . 1A N I 3 . 2= I Q 3 . 1Q 3 . 1Q 3 . 0I 3 . 0I
4、 3 . 2I 3 . 1A N D/Q 3 . 0 I 3 . 0I 3 . 1I 3 . 2= 1Q 3 . 1= 1IIL D I 3 . 03. 语句表(语句表(STL) 语句表(STL)是用助记符来编程。它类似于计算机的汇编语言。= I Q 3 . 1L D I 3 . 1A N I 3 . 2= I Q 3 . 1Q 3 . 1Q 3 . 0I 3 . 0I 3 . 2I 3 . 1A N D/Q 3 . 0 I 3 . 0I 3 . 1I 3 . 2= 1Q 3 . 1= 1IIL D I 3 . 0表明了指表明了指令要执行令要执行的功能,的功能,用用助记符助记符表示。表示。表明
5、了操作表明了操作码指定的操码指定的操作数或操作作数或操作数所在地址。数所在地址。有条件地相互转换有条件地相互转换= I Q 3 . 1L D I 3 . 1A N I 3 . 2= I Q 3 . 1Q 3 . 1Q 3 . 0I 3 . 0I 3 . 2I 3 . 1A N D/Q 3 . 0 I 3 . 0I 3 . 1I 3 . 2= 1Q 3 . 1= 1IIL D I 3 . 0= I Q 3 . 1L D I 3 . 1A N I 3 . 2= I Q 3 . 1Q 3 . 1Q 3 . 0I 3 . 0I 3 . 2I 3 . 1A N D/Q 3 . 0 I 3 . 0I 3
6、. 1I 3 . 2= 1Q 3 . 1= 1IIL D I 3 . 0 但是语句表(但是语句表(STLSTL)可以编写梯形图()可以编写梯形图(LADLAD)或功能块图(或功能块图(FBDFBD)无法实现的程序。)无法实现的程序。二、数据类型二、数据类型v基本数据类型基本数据类型v数据类型检查数据类型检查v数据长度与数值范围数据长度与数值范围 1 1基本数据类型基本数据类型(7 7种)种) 基本数据类型基本数据类型 内内 容容 数据范围数据范围 BOOL(1bit) 布尔型布尔型 0 、 1BYTE(8 bit) 无符号字节型无符号字节型 0 255WORD(16 bit) 无符号整数无符号
7、整数 0 65,535INT(16 bit) 有符号整数有符号整数 -32768 +32767DWORD(32 bit) 无符号双字整数无符号双字整数 0 232-1DINT(32 bit) 有符号双字整数有符号双字整数 -231 +231-1REAL(32 bit) 32位实数位实数 -1038 10382.数据类型检查数据类型检查 分分3 3级:级: 完全数据类型检查 简单数据类型检查 无数据类型检查程序编译时进行数据类型检查数据类型检查完全数据类型检查简单数据类型检查无数据类型检查用户选定用户选定数据类型数据类型等价的数等价的数据类型据类型用户选定用户选定数据类型数据类型等价的数等价的数
8、据类型据类型用户选定用户选定的地址的地址分配的等价数分配的等价数据类型据类型BOOLBOOLBOOLBOOLV0.0BOOLBYTEBYTEBYTEBYTEVB0BYTEWORDWORDWORDWORDINTVW0WORD、INTINTINTINTINTWORDVD0DWORD、DINT、REALDWORDDWORDDWORDDWORDDINTDINTDINTDINTDINT、DWORDREALREALREALREALSIMATIC指令集指令集 数据类型检查数据类型检查 S7-200PLCS7-200PLC不支持不支持完全数据类型检查完全数据类型检查 局部变量局部变量 执行简单数据检查执行简单
9、数据检查 全局变量全局变量 执行无数据类型检查执行无数据类型检查应保证操作数的数据类型和指令标识符相匹配应保证操作数的数据类型和指令标识符相匹配(指令操作数为地址)(指令操作数为地址)编程时编程时3. 数据长度与数据长度与数值范围数值范围 数据长度数据长度 无符号数无符号数有符号数有符号数 十进制十进制 十六进制十六进制 十进制十进制 十六进制十六进制 B(字节型):字节型):8 bit值值0 2550 FFW(字型):字型):16 bit值值0 65,5350 FFFF-32,768 32,7678000 7 FFF D(双字型):双字型):32 bit值值 0 4,294,967,2950
10、 FFFF FFFF-2,147,483,648 2,147,483,6478000 0000 7FFF FFFF R(实数型)(实数型): :32 bit值值 38381010三、用户存储器区域三、用户存储器区域 用户程序区用户程序区数据区数据区系统区(系统区(CPUCPU组态区)组态区)用户存储器用户存储器区域区域用户程序区用户程序区 存放用户程序存放用户程序数据区数据区 提供存储器的特定区域提供存储器的特定区域系统区系统区 存放存放PLC配置结构参数配置结构参数 的区域的区域 数据区数据区 特定区域特定区域 数据区是用户程序执行过程中的数据区是用户程序执行过程中的内部工作区域内部工作区域
11、,它与用户程序休戚,它与用户程序休戚相关。相关。 数据区数据区使使CPUCPU的运行更快、更有效的运行更快、更有效 (一一)数据区存储器地址的表示格式数据区存储器地址的表示格式位地址位地址字节地址字节地址字地址字地址双字地址双字地址 存储器由许多单元组成,每一个单元都有唯一存储器由许多单元组成,每一个单元都有唯一的地址,可以依据的地址,可以依据存储器地址存储器地址来存取数据。来存取数据。 数据区数据区存储器地址的表示有存储器地址的表示有四种格式四种格式:1 1位地址格式位地址格式v位号位号v字节地址字节地址v区域标识符区域标识符 MSB LSB76543210V0V1V2V3V4V2.4 隔开
12、隔开独立的元件独立的元件“软继电器软继电器”-( )-| |-| / |-2 2字节、字、双字地址格式字节、字、双字地址格式 v起始字节地址起始字节地址v数据长度数据长度v区域标识符区域标识符VB100VB101VB102VB103VB100VB100VB10100071531VD100VB100VW100VB100MSB LSB76543210V100V101V102V103V104VB100VW100最高有效字节最低有效字节VD100最低有效字节3 3其他地址格式其他地址格式v元件号元件号v区域标识符区域标识符T24l定时器:T24l计数器:C45l累加器:AC3l高速计数器:HC0(二二
13、) 数据区存储器区域数据区存储器区域(13种)种)1.1.输入映像寄存器(输入映像寄存器(I I)vPLCPLC的输入端子是从外部接收输入信号窗口。每一个的输入端子是从外部接收输入信号窗口。每一个输输入端子入端子与输入映像寄存器与输入映像寄存器相应位相应位相对应。相对应。vCPUCPU在每次扫描周期的在每次扫描周期的采样阶段采样阶段,对,对各输入端子各输入端子的状态的状态进行进行集中采样集中采样,并将采样值,并将采样值(0/1)(0/1)存于输入映像寄存器对存于输入映像寄存器对应的位中,作为程序处理时输入点状态的依据。应的位中,作为程序处理时输入点状态的依据。输入端子的外部电路接通输入端子的外
14、部电路接通 对应位的输入映像寄存器为对应位的输入映像寄存器为1输入端子的外部电路断开输入端子的外部电路断开 对应位的输入映像寄存器为对应位的输入映像寄存器为01.1.输入映像寄存器(输入映像寄存器(I I)续续 I的的每一位每一位又称又称输入继电器输入继电器,输入继电器的线圈,输入继电器的线圈只能只能由由外部输入信号外部输入信号驱动,不能由程序指令驱动。输入继驱动,不能由程序指令驱动。输入继电器的常开和常闭触点可供用户编程使用。电器的常开和常闭触点可供用户编程使用。输入继电器线圈常开和常闭触点常开和常闭触点输入映像寄存器(输入映像寄存器(I I)的地址格式的地址格式v位地址位地址 I字节地址字
15、节地址 . 位地址位地址 例例I0.1v字节、字、双字地址字节、字、双字地址 I长度长度 起始字节地址起始字节地址 例例IB4071503171507IB4IW4ID42.2.输出映像寄存器(输出映像寄存器(Q Q)v每一个每一个输出端子输出端子与输出映像寄存器的与输出映像寄存器的相应位相应位相对应。相对应。vCPUCPU将输出的结果存放在输出映像寄存器中,在扫描周将输出的结果存放在输出映像寄存器中,在扫描周期的期的输出刷新输出刷新阶段,阶段,CPUCPU以以集中处理集中处理方式将输出映像寄方式将输出映像寄存器的数值复制到相应的存器的数值复制到相应的输出端子输出端子上。通过输出模块将上。通过输
16、出模块将输出信号传送给外部负载。输出信号传送给外部负载。某位输出映像寄存器状态为某位输出映像寄存器状态为1 对应输出端子上的外部负载对应输出端子上的外部负载通电通电 某位输出映像寄存器状态为某位输出映像寄存器状态为0 对应输出端子上的外部负载对应输出端子上的外部负载断电断电 2.2.输出映像寄存器(输出映像寄存器(Q Q)续续 Q的的每一位每一位又称又称输出继电器输出继电器,其线圈,其线圈只能由程序只能由程序指令驱动指令驱动,输出继电器的常开和常闭触点可供,输出继电器的常开和常闭触点可供用户编程使用。用户编程使用。输出继电器线圈常开和常闭触点常开和常闭触点输出映像寄存器(输出映像寄存器(Q)地
17、址格式地址格式v位地址位地址 Q字节地址字节地址 . 位地址位地址, 例例Q1.1v字节、字、双字地址字节、字、双字地址 Q长度长度起始字节地址起始字节地址, 例例QB5QB5071503171507QW5QD5I/O设备设备 I/O端子端子I/O端子端子 I/O映像区映像区I端子端子 I映像区映像区 输入采样阶段输入采样阶段集中输入,并存放在I映像区中 每一个输入端子与每一个输入端子与I I映像区的相应位相对应映像区的相应位相对应 如输入端子I0.3 输入映像寄存器I0.3 程序执行期间,I映像区采样值被冻结O映像区映像区 O端子端子v输出刷新阶段输出刷新阶段集中输出:O映像区输出锁存器O端
18、子外部负载v每一个输出端子与每一个输出端子与O O映像区的相应位相对应映像区的相应位相对应 如输出映像寄存器Q0.4 输出端子Q0.4I/OI/O映像区映像区 I/OI/O映像区映像区每个位每个位都映像都映像I/O单元上的单元上的每个端子每个端子状态状态 PLCPLC通过通过I/OI/O映像区的映像区的各个位各个位与外部物理设备建立与外部物理设备建立联系联系 I/O I/O映像区实际上就是外部映像区实际上就是外部I/OI/O设备状态的映像区设备状态的映像区I/O映像区的映像区的每一位每一位 I/O继电器继电器在程序执行期间在程序执行期间 程序对输入程序对输入/ /出的存取是通过出的存取是通过I
19、/OI/O映像区,而不是实际的映像区,而不是实际的I/OI/O端端子。使程序与外界隔开,子。使程序与外界隔开,提高提高了系统了系统抗干扰能力抗干扰能力。 用户程序存取用户程序存取I/OI/O映像寄存器的数据要比存取映像寄存器的数据要比存取I/OI/O端子的速度端子的速度要快,要快,提高提高了系统了系统运行速度运行速度 外部输入点外部输入点/ /输出点输出点的存取只能的存取只能按位按位进行,而进行,而I/OI/O映像寄存器映像寄存器的存取可以按的存取可以按位位、字节字节、字字、双字双字进行,操作更灵活。进行,操作更灵活。3.3.模拟模拟量输入映像寄存器(量输入映像寄存器(AIAI) 模拟量输入模
20、块模拟量输入模块将外界输入的模拟量信号的模将外界输入的模拟量信号的模拟值转换成拟值转换成1 1个字长个字长(1616bitbit)的数字量,的数字量,转换后转换后存存放在模拟量输入存储器(放在模拟量输入存储器(AIAI)中,供中,供CPUCPU运算处理。运算处理。 CPU221无此区域无此区域 地址格式:地址格式:lAIWAIW起始字节地址起始字节地址 例:例:AIW8必须用偶数字节地址必须用偶数字节地址 只读只读 CPU224CPU224模块模拟量输入映像寄存器模块模拟量输入映像寄存器AIAI的有效地址的有效地址的范围为:的范围为:AIW(0AIW(062)62)4.4.模拟量输出映像寄存器
21、模拟量输出映像寄存器(AQAQ) vCPUCPU运算的运算的相关结果相关结果存放在模拟量输出映像寄存放在模拟量输出映像寄存器(存器(AQAQ)中,供)中,供模拟量输出模块模拟量输出模块将将1 1个字长个字长的数字值转换为模拟量,以驱动的数字值转换为模拟量,以驱动外部模拟量外部模拟量控制的设备控制的设备。vCPU221无此区域无此区域lAQWAQW起始字节地址起始字节地址 例:例:AQW10 只写只写v CPU224CPU224模块模拟量输出映像寄存器模块模拟量输出映像寄存器AQAQ的有效的有效地址的范围为:地址的范围为:AQW(0AQW(062)62)必须用偶数字节地址必须用偶数字节地址 5.
22、5.内部标志位存储器(内部标志位存储器(M M) 简称位存储器位存储器,是一种内部线圈存放中间操作状态模拟继电器控制系统中的中间继中间继电器电器内部标志位存储器(内部标志位存储器(MM)的地址格式的地址格式v位地址:位地址: M字节地址字节地址 . 位地址位地址 例例M20.7v字节、字、双字地址:字节、字、双字地址: M长度长度起始字节地址起始字节地址 例例MD20071503171507MD20MB20MW20按位位使用的M称为中间中间继电器继电器6.6.特殊标志位存储器(特殊标志位存储器(SMSM) 特殊内部线圈特殊内部线圈v用户程序与系统程序之间的界面用户程序与系统程序之间的界面v提供
23、特殊的控制功能及系统信息提供特殊的控制功能及系统信息v用户通知系统有特殊要求用户通知系统有特殊要求 v每一个每一个字节字节或或位位都有特殊含义都有特殊含义只读区域只读区域 可读写区域可读写区域只读区只读区 (SMB0SMB29) 只能用其触点只能用其触点*SM0.0 PLCPLC在在RUNRUN状态时,状态时,SM0.0SM0.0总为总为1 1*SM0.1 初始脉冲,初始脉冲,PLCPLC由由STOPSTOPRUNRUN时,时,* SM0.1 SM0.1 接通一个扫描周期接通一个扫描周期*SMB30 用于自由通信口设置用于自由通信口设置*SMB34/SMB35 用于定时中断间隔时间设置用于定时
24、中断间隔时间设置*可读写区可读写区(SMB30SMB179) 用于特殊控制功能用于特殊控制功能 特殊标志位存储器(特殊标志位存储器(SM) 的地址表示格式的地址表示格式v位地址:位地址: SM 字节地址字节地址 . 位地址位地址 例例SM86.7v字节、字、双字地址:字节、字、双字地址: SM 长度长度 起始字节地址起始字节地址 例例SMB86071503171507SMB86SMW86SMD867.7.变量存储器(变量存储器(V V) v存放程序执行过程中的中间结果v存放其他相关的数据全局全局是指同一个存储器可以被是指同一个存储器可以被任何程序存取(主程序、子程任何程序存取(主程序、子程序或
25、中断程序)序或中断程序) V存储器的地址格式存储器的地址格式v位地址:位地址: V字节地址字节地址 . 位地址位地址 例例V10.2v字节、字、双字地址:字节、字、双字地址: V长度长度起始字节地址起始字节地址 例例VW100071503171507VW100VB100VD1008.8.局部存储器(局部存储器(L L) v作暂时存储器作暂时存储器v为子程序传递参数为子程序传递参数 v可作为间接寻址的指针可作为间接寻址的指针v不能作为间接寻址的存储器区不能作为间接寻址的存储器区v存放局部变量,存放局部变量,局部有效局部有效局部有效是指某一局部存储器只能在某一程序局部有效是指某一局部存储器只能在某
26、一程序分区(主程序、子程序或中断程序)中使用。分区(主程序、子程序或中断程序)中使用。局部存储器(L)的地址格式v位地址:位地址: L 字节地址字节地址、位地址位地址 例例 L33.0v字节、字、双字:字节、字、双字: L 长度长度 起始字节地址起始字节地址,例,例LB33 071503171507LB33LW33LD339.9.顺序控制继电器存储器(顺序控制继电器存储器(S S) 顺序控制继电器存储器(顺序控制继电器存储器(S S)用于顺序控制或步进控制用于顺序控制或步进控制顺序控制继电器指令(顺序控制继电器指令(SCRSCR)是基于顺序功能图(是基于顺序功能图(SFCSFC)编编程的程的
27、顺序控制继电器存储器(顺序控制继电器存储器(S) 的地址格式的地址格式v位地址:位地址: S字节地址字节地址 . 位地址位地址 例例S4.1v字节、字、双字地址:字节、字、双字地址: S长度长度起始字节地址起始字节地址 例例SB4071503171507SB4SW4SD410.10.累加器(累加器(ACAC) 用来存储计算的中间值,也可用来向子程序传递参数,或从用来存储计算的中间值,也可用来向子程序传递参数,或从子程序返回参数子程序返回参数 CPU提供了提供了4个个32位位的累加器,其地址编号的累加器,其地址编号:AC0AC3 只能以字节、字、双字为单位存取。以字节或字存取时,只只能以字节、字
28、、双字为单位存取。以字节或字存取时,只能使用低能使用低8位或低位或低16位。数据存储长度由所用位。数据存储长度由所用指令决定指令决定。v地址格式:地址格式:vACAC累加器号累加器号 例:例:AC0累加器(累加器(AC) 字节传送指令字节传送指令 字减字减1指令指令 双字取双字取 反指令反指令 11.11.定时器存储器(定时器存储器(T T) v功能:相当于时间继电器,对时间间隔计数。 v时基有三种:1ms,10ms,100msv定时器的组成当前值存储器(当前值存储器( 16 位)定时器位存储器(位)定时器位存储器(1 位)位) v三种类型:接通延时、有记忆接通延时、断开延时v定时器的定时值由
29、程序赋值或外部设定v S7200 提供 256 个定时器(T0T255)15 8 7 0定时器当前值定时器当前值 定时定时 器位器位16 位符号整数位符号整数 存储定时器所存储定时器所累计的时间累计的时间 表征定时器状态,表征定时器状态,当前值当前值预设值预设值 该位置该位置 1或或0 11.11.定时器存储器(定时器存储器(T T)续续 定时器号(位地址)定时器号(位地址)区域标识(定时器)区域标识(定时器)触点指令触点指令 15 8 7 0定时器当前值定时器当前值 定时定时 器位器位15 8 7 0定时器当前值定时器当前值 定时定时 器位器位定时器号定时器号(当前值地址)(当前值地址)区域
30、标识(定时器)区域标识(定时器)I0.6 ENO 字传送指令字传送指令 定时器地址格式: T 定时器号定时器号 例:例:T3v 功能:用于累计由输入端子或程序产生的脉冲个数 v 该脉冲频率低于CPU扫描频率v 计数器的组成当前值存储器(当前值存储器( 16 位)计数器位存储器(位)计数器位存储器(1 位)位) v三种类型:加计数、减计数、加减计数v 计数器的预设值由程序赋值或外部设定v S7200 提供 256 个计数器(C0C255)12.12.计数器存储器(计数器存储器(C C)表征计数器状态,表征计数器状态,当前值当前值=预设值预设值或或=0时,该位置时,该位置 115 8 7 0计数器
31、当前值计数器当前值 计数计数 器位器位232316 位符号整数位符号整数 存储计数器所存储计数器所 累计的脉冲数累计的脉冲数 12.12.计数器存储器(计数器存储器(C C)续续 15 8 7 0计数器当前值计数器当前值 计数计数 器位器位2 323计数器号(位地址)计数器号(位地址)区域标识(计数器)区域标识(计数器) 触点指令触点指令 15 8 7 0计数器当前值计数器当前值 计数计数 器位器位2323计数器号计数器号(当前值地址)(当前值地址)区域标识(计数器)区域标识(计数器) OUT 字传送指令字传送指令 计数器地址格式: C 计数器号计数器号 例:例:C31 13.3.高速计数器(
32、高速计数器(HCHC) v用来累计用来累计比比CPUCPU扫描速度更快扫描速度更快的高速脉冲信号的高速脉冲信号vCPU224/226CPU224/226提供提供6 6个高速计数器(个高速计数器(HC0HC0HC5HC5),),使用主机上的使用主机上的专用端子:专用端子:I0.0-I0.5I0.0-I0.5v高速计数器地址格式:高速计数器地址格式: HC高速计数器号高速计数器号 例:例:HC1只读只读当前值只能以双字当前值只能以双字(32bit32bit)来访问)来访问表 5-5 S7-200CPU 操作数范围 存取方式 CPU 221 CPU 222 CPU224,CPU226 CPU226X
33、M V 0.0-2047.7 0.0-5119.7 0.0-10239.7 I 0.0-15.7 Q 0.0-15.7 M 0.0-31.7 SM 0.0-179.7 0.0-299.7 0.0-549.7 S 0.0-31.7 T 0-255 C 0-255 位存取(字节,位) L 0.0-63.7 VB 0-2047 0-5119 0-10239 IB 0-15 QB 0-15 MB 0-31 SMB 0-179 0-299 0-549 SB 0-31 LB 0-63 AC 0-3 字节存取 常数 常数 VW 0-2046 0-5118 0-10238 IW 0-14 QW 0-14 MW
34、 0-30 SMW 0-178 0-298 0-548 SW 0-30 T 0-255 C 0-255 LW 0-62 AC 0-3 AIW 0-30 0-62 AQW 0-30 0-62 字存取 常数 常数 VD 0-2044 0-5116 0-10236 ID 0-12 QD 0-12 MD 0-28 SMD 0-176 0-296 0-546 SD 0-28 LD 0-60 AC 0-3 HC 0,3,4,5 0-5 双字存取 常数 常数 一、基本逻辑指令 表5 - 5 S 7 - 2 0 0 C P U操 作 数 范 围 存 取 方 式 C P U 2 2 1 C P U 2 2 2
35、C P U 2 2 4 , C P U 2 2 6 C P U 2 2 6 X M V 0 .0 - 2 0 4 7 .7 0 .0 - 5 1 1 9 .7 0 .0 - 1 0 2 3 9 .7 I 0 .0 - 1 5 .7 Q 0 .0 - 1 5 .7 M 0 .0 - 3 1 .7 S M 0 .0 - 1 7 9 .7 0 .0 - 2 9 9 .7 0 .0 - 5 4 9 .7 S 0 .0 - 3 1 .7 T 0 - 2 5 5 C 0 - 2 5 5 位 存 取 ( 字节 , 位 ) L 0 .0 - 6 3 .7 V B 0 - 2 0 4 7 0 - 5 1 1 9
36、 0 - 1 0 2 3 9 I B 0 - 1 5 Q B 0 - 1 5 M B 0 - 3 1 S M B 0 - 1 7 9 0 - 2 9 9 0 - 5 4 9 S B 0 - 3 1 L B 0 - 6 3 A C 0 - 3 字 节 存 取 常 数 常 数 V W 0 - 2 0 4 6 0 - 5 1 1 8 0 - 1 0 2 3 8 I W 0 - 1 4 Q W 0 - 1 4 M W 0 - 3 0 S M W 0 - 1 7 8 0 - 2 9 8 0 - 5 4 8 S W 0 - 3 0 T 0 - 2 5 5 C 0 - 2 5 5 L W 0 - 6 2 A
37、 C 0 - 3 A I W 0 - 3 0 0 - 6 2 A Q W 0 - 3 0 0 - 6 2 字 存 取 常 数 常 数 V D 0 - 2 0 4 4 0 - 5 1 1 6 0 - 1 0 2 3 6 I D 0 - 1 2 Q D 0 - 1 2 M D 0 - 2 8 S M D 0 - 1 7 6 0 - 2 9 6 0 - 5 4 6 S D 0 - 2 8 L D 0 - 6 0 A C 0 - 3 H C 0 ,3 ,4 ,5 0 - 5 双 字 存 取 常 数 常 数 一 、 基 本 逻 辑 指 令 *CPU224存储器的范围存储器的范围V0.0-5119.7AC
38、0-3I0.0-15.7 0.0-0.7 1.0-1.5AI0-62 Q0.0-15.7 0.0-0.7 1.0-1.1AQ0-62 M0.0-31.7HC 0-5 SM0.0-549.7常数常数常数常数S0.0-31.7T0-255 C0-255L0.0-63.7AIW62AIB62-AIB63v按位、字节、字、双字存取按位、字节、字、双字存取v按字节、字、双字存取按字节、字、双字存取v按位、字存取按位、字存取v按字存取按字存取v按双字存取按双字存取四、四、S7-200CPUS7-200CPU的的寻址方式寻址方式 v立即寻址立即寻址 v直接寻址直接寻址 v间接寻址间接寻址 指令中如何提供指令
39、中如何提供操作数或操作数地址操作数或操作数地址(一)立即寻址(一)立即寻址 v指令指令直接给出操作数直接给出操作数,操作数紧跟着操作码。,操作数紧跟着操作码。v立即寻址方式可用来立即寻址方式可用来提供常数提供常数。 vCPU以二进制方式存储所有常数。以二进制方式存储所有常数。v常数值可分为字节、字、双字型数据。常数值可分为字节、字、双字型数据。v指令中可用十进制、十六进制、指令中可用十进制、十六进制、ASCII码或浮点数形式来书码或浮点数形式来书写常数。写常数。 例例: : MOVB 16#0B, SMB77 MOVB 485, SMB78操作数操作数l十进制常数:十进制常数:485485l十
40、六进制常数:十六进制常数:16#0B16#0BlASCIIASCII常数:常数:INPUTINPUTl实数或浮点常数:实数或浮点常数:+1.112234E-10+1.112234E-10l二进制常数:二进制常数:2#010111102#01011110 (二)直接寻址(二)直接寻址 指令指令直接给出操作数地址直接给出操作数地址操作数的存储器地址应操作数的存储器地址应按规定的格式表示按规定的格式表示指令中,数据类型应与指令标识符相匹配指令中,数据类型应与指令标识符相匹配 例:例:v位寻址:位寻址: LD I3.4v字节寻址:字节寻址: MOVB VB50,VB100v字寻址:字寻址: MOVW
41、VW50, VW100v双字寻址:双字寻址: MOVD VD50, VD100操作数操作数地址(三)间接寻址(三)间接寻址 v指令间接给出操作数地址间接给出操作数地址(指令给出了存放操作数地址的存储单元的地址)v操作数地址的地址称为指针指针,即用地址指针地址指针来寻找操作数vS7200 CPU 只能对 I、Q、V、M、S、T 和 C(T、C 仅当前值)等存储器区域使用间接寻址方式存取数据 v无法用间接寻址的方式访问位(bit)地址,也不能访问AI、AQ、HC、SM或L存储区v指针用*号表示,例*AC112345678VB199VB200VB201VB202VB203VB204AC0AC1VB2
42、00的地址MOVW *AC1,AC0MOVD &VB200,AC1把VB200的地址送入AC1建立指针把指针处的值送到AC01 2 3 41建立指针建立指针v将操作数所在存储单元的物理地址(操作数所在存储单元的物理地址(3232位)位)移入另一存储器或累加器中建立地址指针v地址指针为双字值双字值v只能用V、L、AC1 AC3作为指针,如*VD、*LD、*AC1v“&”符号表示12345678VB199VB200VB201VB202VB203VB204AC0AC1VB200的地址MOVW *AC1,AC0MOVD &VB200,AC1把VB200的地址送入AC1建立指针把
43、指针处的值送到AC01 2 3 4必须使用双字传送指令双字传送指令MOVD建立指针AC0不能作不能作为地址指针为地址指针2使用指针来存取数据使用指针来存取数据 依据指针中的内容值作为地址进行存取依据指针中的内容值作为地址进行存取 把指针处的值送入某存储器中(如把指针处的值送入某存储器中(如AC0AC0) 使用指针可以存取使用指针可以存取字节、字、双字型字节、字、双字型数据数据12345678VB199VB200VB201VB202VB203VB204AC0AC1VB200的地址MOVW *AC1,AC0MOVD &VB200,AC1把VB200的地址送入AC1建立指针把指针处的值送到A
44、C01 2 3 4MOVB *AC1,AC0MOVD *AC1,AC03修改指针修改指针处理连续存取数据时,可以通过改变指针的值来进行处理连续存取数据时,可以通过改变指针的值来进行由于指针是一个由于指针是一个3232位的数据,要用位的数据,要用双字指令双字指令(如(如INCDINCD)来改变指针的数值来改变指针的数值修改指针值时,应根据修改指针值时,应根据存取数据的长度存取数据的长度来进行调整:来进行调整:* *字节字节:指针值:指针值加加/ /减减1* *字字:指针值:指针值加加/ /减减2* *双字双字:指针:指针值加值加/ /减减4 五五 、程序的组织结构程序的组织结构 主程序(程序的主
45、体主程序(程序的主体 ) 子程序(可选,被调用时)子程序(可选,被调用时) 中断程序(可选,中断事件发生时)中断程序(可选,中断事件发生时) 在在CPUCPU的每个扫描周期,主程序的指令按顺序的每个扫描周期,主程序的指令按顺序 执行一次执行一次 合理优化程序结构,可减少扫描时间合理优化程序结构,可减少扫描时间构成 六、编程的一般规约六、编程的一般规约 v网络网络 v梯形图(梯形图(LAD)v允许输入端、允许输出端允许输入端、允许输出端 v条件输入条件输入/无条件输入无条件输入 v无允许输出端的指令无允许输出端的指令 1网络网络 v每个输出元素(线圈或方框)可以构成一个每个输出元素(线圈或方框)
46、可以构成一个梯级,梯级,每个每个梯级可由多个支路组成梯级可由多个支路组成v每个网络由一个或多个梯级组成每个网络由一个或多个梯级组成v梯形图中,把不可分割的最小程序段称之为梯形图中,把不可分割的最小程序段称之为网络网络v编写程序时,不同的网络应有对应的网络号,否则编译编写程序时,不同的网络应有对应的网络号,否则编译出错出错梯级网络梯级梯级2梯形图梯形图(LAD)v梯形图梯形图由若干由若干网络网络组成组成v梯形图或网络是梯形图或网络是触点触点、线圈线圈和和功能框功能框等等“元件元件”的的有序排列,有序排列,输入输入在图形的左边,在图形的左边,输出输出在图形的右边,在图形的右边,即触点与左母线相连,
47、线圈或功能框终止右母线。即触点与左母线相连,线圈或功能框终止右母线。v左、右母线之间是一个完整的左、右母线之间是一个完整的“电路电路”,不允许,不允许“短路短路”、“开路开路”,也不允许,也不允许“能流能流”反向反向“流流动动”。触点触点线圈线圈功能框功能框能流能流左母左母线线右母线右母线(可省可省略略)线圈只能引用一次,而触点可以用无数多次线圈只能引用一次,而触点可以用无数多次3.允许输入端允许输入端/允许输出端允许输出端允许输入端:允许输入端:允许输入端(允许输入端(EN)必须存在必须存在“能流能流”(EN=1),),才能执行该功能框的功能才能执行该功能框的功能 I0.1PENDATAS_
48、BITNSHRBI0.2V10.04ENO允许输入端允许输出端允许输出端vENO端允许功能框的布尔量输出端允许功能框的布尔量输出v如果(如果(EN)存在存在“能流能流”,且功能框准确无误地执行了其,且功能框准确无误地执行了其功能,那么允许输出端(功能,那么允许输出端(ENO)将把将把“能流能流”传到下一个传到下一个功能框的元件。(即功能框的元件。(即ENO=1,实现级联)实现级联)v如果执行过程中存在错误,那么如果执行过程中存在错误,那么“能流能流”就在出现错误的就在出现错误的功能框终止,即功能框终止,即ENO=0。I0.1PENDATAS_BITNSHRBI0.2V10.04ENO允许输允许
49、输出端出端4条件输入条件输入/无条件输入无条件输入 条件输入:条件输入: LAD LAD中,不直接与左母线连接的中,不直接与左母线连接的与与“能流能流”有关的功能框或线圈。有关的功能框或线圈。S T O PW D RE N DL D S M 5 . 0S T O PL D M 2 . 2W D RL D I 2 . 0E N DS M 5 . 0M 2 . 2I 2 . 0n e t w o r k 1n e t w o r k 1 6n e t w o r k 8 1.无条件输入无条件输入: 直接与左母线连接的与直接与左母线连接的与“能流能流”无无关的线圈或功能框。关的线圈或功能框。 SCR
50、S0.15无允许输出端的指令无允许输出端的指令 功能框中没有允许功能框中没有允许输出端(输出端(ENOENO)该指令方框不能用该指令方框不能用于级联控制于级联控制ENSBR_0ENSM0.1MAIN PROGRAM OB1LD SM0.1CALL SBR0LBL6SCRS0.1第二节 S7-200 PLC基本指令及编程方法v立即立即I/O指令指令v逻辑堆栈指令逻辑堆栈指令v取非触点指令取非触点指令v正正/负跳变触点指令负跳变触点指令v比较触点指令比较触点指令一、基本逻辑指令一、基本逻辑指令 v基本逻辑指令以位逻辑位逻辑操作为主v数据类型是Bool标准触点指令标准触点指令输出指令输出指令置位和复
51、位指令置位和复位指令 LAD STL 功能功能 LD bit A bit O bit LDN bit AN bit ON bit装载指令装载指令 (常开触点与左母线连接)(常开触点与左母线连接)与指令与指令 (常开触点串联)(常开触点串联)或指令或指令 (常开触点并联)(常开触点并联)取反后取反后装载指令(常闭触点与左母线连接)装载指令(常闭触点与左母线连接)取反后取反后与指令与指令 (常闭触点串联)(常闭触点串联)取反后取反后或指令或指令 (常闭触点并联)(常闭触点并联) bitbit标准触点指令标准触点指令标准触点指令标准触点指令操操 作作 数数 数据类型数据类型 bit(LAD、STL)
52、 I、Q、M、SM、T、C、V、S、LBOOL (一一) 标准触点指令标准触点指令 1梯形图(梯形图(LAD) v标准触点指令有常开和常闭触点指令两种标准触点指令有常开和常闭触点指令两种v标准触点指令标准触点指令代表代表CPU对存储器的对存储器的某个位地址某个位地址(bit)进行)进行操作,故常开(闭)触点使用次操作,故常开(闭)触点使用次数不受限制数不受限制v当当bit=1时时:常开触点闭合、常闭触点断开常开触点闭合、常闭触点断开v当当bit=0时时:常开触点断开、常闭触点闭合常开触点断开、常闭触点闭合常开触点常闭触点软触点动作无先后顺序2语句表(语句表(STL)LD I0.0= Q0.0L
53、DN I0.2O I0.3= Q0.1Q0.0A I0.1 I0.1Q0.1 I0.0 I0.2 I0.3(一一) 标准触点指令标准触点指令 vSTL通过逻辑堆栈(通过逻辑堆栈(Stack)实现逻辑处理实现逻辑处理v逻辑堆栈:逻辑堆栈:9级深度级深度1位宽度位宽度 后进先出后进先出逻辑堆栈逻辑堆栈(Stack)012345678栈顶栈顶栈顶用于存储逻栈顶用于存储逻辑运算的结果辑运算的结果其余其余8层层用于用于存储存储中间中间运算运算结果结果栈装载指令栈装载指令 LD(Load)LD I0.0= Q0.0LDN I0.2O I0.3= Q0.1Q0.0A I0.1 I0.1Q0.1 I0.0 I
54、0.2 I0.3012345678I0.0将存储区某将存储区某位(位(bit)值值装入栈顶。装入栈顶。 (堆栈最后(堆栈最后一级内容丢一级内容丢失)失) LD对应梯形图中一个对应梯形图中一个逻辑梯级常开触点的逻辑梯级常开触点的编程开始。编程开始。逻辑逻辑 “与与”指令指令 A(And)LD I0.0= Q0.0LDN I0.2O I0.3= Q0.1Q0.0A I0.1 I0.1Q0.1 I0.0 I0.2 I0.3A对应梯形对应梯形图中常开触图中常开触点串联点串联将某将某 bit值值“与与”栈顶值,运算栈顶值,运算结果存入栈顶结果存入栈顶I0.1 I0.0012345678I0.0堆栈没堆栈
55、没有压入有压入和弹出和弹出操作操作逻辑逻辑 “或或”指令指令 O(or) LD I0.0= Q0.0LDN I0.2O I0.3= Q0.1Q0.0A I0.1 I0.1Q0.1 I0.0 I0.2 I0.3O对应梯形对应梯形图中常开触图中常开触点的并联点的并联I0.2+I0.3012345678I0.0将某将某bit值值“或或”栈顶值,运算结栈顶值,运算结果仍存入栈顶果仍存入栈顶I0.2堆栈没堆栈没有压入有压入和弹出和弹出操作操作LDN、AN、ON指令v对常闭触点编程对常闭触点编程v将操作数的将操作数的bitbit值值取反取反后,再作相应的后,再作相应的“装装载载”、“与与”、“或或”操作。
56、操作。LD I0.0= Q0.0LDN I0.2O I0.3= Q0.1Q0.0A I0.1 I0.1Q0.1 I0.0 I0.2 I0.3012345678I0.0I0.2LDN对应梯形对应梯形图中一个逻辑图中一个逻辑梯级常闭触点梯级常闭触点的编程开始。的编程开始。将将I0.2的位的位值值取反取反后后,装入栈顶。装入栈顶。(二)输出指令(二)输出指令 LAD STL功能功能 bit线圈输出,逻辑置位指令线圈输出,逻辑置位指令bit ( )(二)输出指令(二)输出指令 在(在(LAD)中中v表示继电器输出线圈编程表示继电器输出线圈编程v输出指令输出指令代表代表CPU对存储器的对存储器的某个位地
57、址某个位地址(bit)进行)进行操作,操作,由于由于PLC自上而下扫描,故每个线圈自上而下扫描,故每个线圈只能使用只能使用1次次,若多于,若多于一次,其状态以最后一次为准一次,其状态以最后一次为准v线圈左侧触头组成线圈左侧触头组成逻辑运算关系逻辑运算关系:运算结果为运算结果为1,则,则“能流能流”到达线圈,使线圈到达线圈,使线圈通电通电,则,则bit=1运算结果为运算结果为0,则,则“能流能流”未到达线圈,使线圈未到达线圈,使线圈断电断电,则,则bit=0 在(在(STL)中中v输出指令把栈顶值输出指令把栈顶值复制复制到由操作数地址指到由操作数地址指定的存储器的对应位中定的存储器的对应位中v堆
58、栈操作过程中,传送前后堆栈值不变堆栈操作过程中,传送前后堆栈值不变 LD I0.0= Q0.0LDN I0.2O I0.3= Q0.1Q0.0A I0.1 I0.1Q0.1 I0.0 I0.2 I0.3012345678Q0.0(二)输出指令(二)输出指令 (三)置位和复位指令(三)置位和复位指令 LAD STL 功能功能S bit, NR bit, N从起始位(从起始位(bit)开始的)开始的N个元件置个元件置1从起始位(从起始位(bit)开始的)开始的N个元件清个元件清0bit ( S )N bit ( R )N v置位和复位点数置位和复位点数 N: 1255 在梯形图(在梯形图(LAD)
59、中中v能流到(常开触点脉冲前沿触发时),就执行置位指令(线圈通电锁能流到(常开触点脉冲前沿触发时),就执行置位指令(线圈通电锁存)或复位指令(线圈断电锁存)存)或复位指令(线圈断电锁存)v执行置位指令时,执行置位指令时,把从指令操作数指定的地址开始的把从指令操作数指定的地址开始的N个点都被个点都被置位且置位且保持保持,置位后,置位后即使能流断即使能流断,仍保持置位仍保持置位v执行复位指令时执行复位指令时,把从指令操作数指定的地址开始的,把从指令操作数指定的地址开始的N个点都被个点都被复位且复位且保持保持,复位后,复位后即使能流断即使能流断,仍保持复位仍保持复位v由于扫描工作方式,程序中写在后面
60、的指令有由于扫描工作方式,程序中写在后面的指令有优先权优先权(三)置位和复位指令(三)置位和复位指令 置位和复位指令中置位和复位指令中允许双线圈输出允许双线圈输出电动机起、停控制在语句表(在语句表(STL)中中v当栈顶值为当栈顶值为1时时,执行置位(或复位)指令,执行置位(或复位)指令v执行置位指令时执行置位指令时,把从指令操作数(,把从指令操作数(bit)指定的地址开始的指定的地址开始的N个点个点都被都被置位且保持置位且保持,置位后即使栈顶值变为,置位后即使栈顶值变为0,仍保持置位,仍保持置位v执行复位指令时执行复位指令时,把从指令操作数(,把从指令操作数(bit)指定的地址开始的指定的地址开始的N个点个点都被都被复位且
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年学生学习合同
- 2024年天然蜂蜜采购合同
- 2024年干果坚果加工销售合同
- 2024辅导班个性化课外辅导合同
- 2024【英文版买卖合同】英语销售合同模板
- 2024正式的代理合同模板
- 2024职业培训学校章程、合同、承诺
- 2024年基础设施建设项目分包合同
- 2024股权信托合同参考范本
- 2024宾馆员工合同范本
- 帕金森病机制
- 2024航空工业集团校园招聘笔试参考题库附带答案详解
- 燃气巡线员专业知识考试题库(附答案)
- 《如何做一名好教师》课件
- CORELDRAW 室内平面布置图课件
- 如何进行有效的课堂笔记
- WMT8-2022二手乘用车出口质量要求
- 零售行业数字化转型研究
- 结构力学试卷西南交通大学期中答案期中考试
- 广东省佛山市2022-2023学年高二上学期期末数学试题(学生版+解析)
- 药疹的健康宣教
评论
0/150
提交评论