




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,第3章S7-200系列PLC的基本指令及应用,3.1基本逻辑指令3.2程序控制指令3.3PLC顺序控制程序设计3.4顺序控制指令,.,2,指令是用户程序中最小的独立单位,由若干条指令顺序排列在一起就构成了用户程序。在S7-200的编程软件中,用户可以选用梯形图LAD(ladder)、功能块图(FunctionBlockDiagram)或语句表STL(StatementList)等编程语言来编制用户程序。语句表和梯形图语言是一个完备的指令系统,支持结构化编程方法,而且两种编程语言可以相互转化。在用户程序中尽管它们的表达形式不同,但表示的内容却是相同或相似的。3.1基本逻辑指令此类指令是PLC中最基本最常用的一类指令,主要包括位逻辑指令、堆栈操作指令、置位/复位指令、立即指令以及微分指令等。,.,3,3.1.1位逻辑指令位逻辑指令主要用来完成基本的位逻辑运算及控制。1.LD、LDN和=(Out)指令LD(Load)、LDN(LoadNot):取指令。启动梯形图任何逻辑块的第一条指令时,分别连接动合触点和动断触点。=(Out):输出指令。线圈驱动指令,必须放在梯形图的最右端。LD、LDN指令操作数为:I、Q、M、T、C、SM、S、V。=指令的操作数为:M、Q、T、C、SM、S。,.,4,图3-1LD、LDN和=指令梯形图及语句表应用示例,.,5,2.A和AN指令A(And):逻辑“与”指令,用于动合触点的串联。AN(AndNot):逻辑“与非”指令,用于动断触点的串联。A和AN指令的操作数为:I、Q、M、SM、T、C、S、V。图3-2A和AN指令梯形图及语句表应用示例,.,6,3.O和ON指令O(Or):逻辑“或”指令,用于动合触点的并联。ON(OrNot):逻辑“或非”指令,用于动断触点的并联。O和ON指令的操作数为:I、Q、M、SM、T、C、S、V。图3-3O和ON指令梯形图及语句表应用示例,.,7,4.ALD指令ALD(AndLoad):逻辑块“与”指令。用于并联电路块的串联连接。ALD指令无操作数。图3-4ALD指令梯形图及语句表应用示例,.,8,5.OLD指令OLD(OrLoad):逻辑块“或”指令。用于串联电路块的并联连接。OLD指令无操作数。图3-5OLD指令梯形图及语句表应用示例,.,9,3.1.2堆栈指令。1.堆栈操作S7-200有一个9位的堆栈,栈顶用来存储逻辑运算的结果,下面的8位用来存储中间运算结果。堆栈中的数据按“先进后出”的原则存取。图3-6OLD指令对堆栈的影响,.,10,对堆栈进行操作时,执行各指令的情况如下:执行LD指令时,将指令指定的位地址中的二进制数据装入栈顶。执行A指令时,将指令指定的位地址中的二进制数和栈顶中的二进制数相“与”,结果存入栈顶。执行O指令时,将指令指定的位地址中的数和栈顶中的数相“或”,结果存入栈顶。图3-6OLD指令对堆栈的影响执行LDN、AN和ON指令时,取出位地址中的数后,先取反,再做出相应的操作。执行输出指令“=”时,将栈顶值复制到对应的映像寄存器。执行ALD、OLD指令时,对堆栈第一层和第二层的数据进行“与”、“或”操作。并将运算结果存入栈顶,其余层的数据依次向上移动一位。最低层(栈底)补随机数。,.,11,2.堆栈操作指令。堆栈操作指令包含LPS、LRD、LPP、LDS几条命令。各命令功能描述如下:LPS(LogicPush):逻辑入栈指令(分支电路开始指令)。该指令复制栈顶的值并将其压入堆栈的下一层,栈中原来的数据依次向下推移,栈底值推出丢失。LRD(LogicRead):逻辑读栈指令。该指令将堆栈中第二层的数据复制到栈顶,29层的数据不变,原栈顶值丢失。LPP(LogicPop):逻辑出栈指令(分支电路结束指令)。该指令使栈中各层的数据向上移一层,原第二层的数据成为新的栈顶值。LDS(LogicStack):装入堆栈指令。该指令复制堆栈中第n(n=18)层的值到栈顶,栈中原来的数据依次向下一层推移,栈底丢失。,.,12,栈操作示意图如图3-7所示。图3-7堆栈操作的过程,.,13,3.1.3置位/复位指令1.置位指令SS(SET):置位指令,将从bit开始的N个元件置1并保持。STL指令格式如下:Sbit,N其中,N的取值为1255。2.复位指令RR(RESET):复位指令,将从bit开始的N个元件置0并保持。STL指令格式如下:Rbit,N其中,N的取值为1255。,.,14,置位和复位指令应用的梯形图及指令表如图3-8所示。图3-8置位和复位指令应用示例,.,15,3.1.4立即指令I立即指令I包含LDI、LDNI;OI、ONI;AI、ANI;=I;SI、RI几条命令,各命令功能描述如下:LDI、LDNI:立即取、立即取非指令。OI、ONI:立即“或”、立即“或非”指令。AI、ANI:立即“与”、立即“与非”指令。=I:立即输出指令。SI、RI:立即置位、立即复位指令。立即指令I(Immediate)是为了提高PLC对输入/输出的响应速度而设置的,它不受PLC扫描周期的影响,允许对输入和输出点进行快速直接存取。当用立即指令读取输入点的状态时,对I进行操作,相应的输入映像寄存器中的值并未更新;当用立即指令访问输出点时,对Q进行操作,新值同时写到PLC的物理输出点和相应的输出映像寄存器。,.,16,立即指令应用示例如图3-9所示。图3-9立即指令应用示例,.,17,3.1.5微分指令微分指令又叫边沿触发指令,分为上升沿微分和下降沿微分指令。EU(EdgeUP):上升沿微分指令,其作用是在上升沿产生脉冲。指令格式如下:该指令无操作数。ED(EdgeDown):下降沿微分指令,其作用是在下降沿产生脉冲。指令格式如下:该指令无操作数。在使用EU指令时,当其执行条件从OFF变为ON时,EU就会变成ON一个周期,而使用ED指令时,当其执行条件从ON变成OFF时,ED就会变成为ON一个周期。,.,18,微分指令应用示例如图3-10所示。3-10微分指令应用示例及时序图3.1.6取反指令NOT:取反指令。将其左边的逻辑运算结果取反,指令没有操作数。,.,19,取反指令应用示例如图3-11所示。图3-11NOT指令应用示例3.1.7空操作指令NOP:空操作指令,不影响程序的执行。指令格式如下:NOPN/N为执行空操作指令的次数,N=0255。,.,20,3.1.8定时器指令定时器是PLC常用的编程元件之一,S7-200系列PLC有三种类型的定时器,即:通电延时定时器(TON)、断电延时定时器(TOF)和保持型通电延时定时器(TONR),共计256个。定时器分辨率(S)可分为三个等级:1ms、10ms和100ms。1.通电延时型定时器TON(On-DelayTimer)通电延时型定时器(TON)用于单一时间间隔的定时。输入端(IN)接通时,开始定时,当前值大于等于设定值(PT)时(PT=132767),定时器位变为ON,对应的常开触点闭合,长闭触点断开。达到设定值后,当前值仍继续计数,直到最大值32767为止。输入电路断开时,定时器复位,当前值被清零。,.,21,2.断电延时定时器TOF(Off-DelayTimer)断电延时定时器(TOF)用于断电后的单一间隔时间计时。输入端(IN)接通时,定时器位为ON,当前值为0。当输入端由接通到断开时,定时器的当前值从0开始加1计数,当前值等于设定值(PT)时,输出位变为OFF,当前值保持不变,停止计时。3.保持型通电延时定时器TONR(RetentiveOn-DelayTimer)保持型通电延时定时器TONR用于对许多间隔的累计定时。当输入端(IN)接通时,定时器开始计时,当前值从0开始加1计数,当前值大于等于设定值(PT)时,定时器位置1;当输入IN无效时,当前值保持,IN再次有效时,当前值在原保持值基础上继续计数,TONR定时器用复位指令R进行复位,复位后定时器当前值清零,定时器位为OFF。,.,22,4.定时器当前值刷新方式在S7-200系列PLC的定时器中,定时器的刷新方式是不同的,从而在使用方法上也有所不同。使用时一定要注意根据使用场合和要求来选择定时器。常用的定时器的刷新方式有1ms、10ms、100ms三种。(1)1ms定时器定时器指令执行期间每隔1ms对定时器和当前值刷新一次,不与扫描周期同步。(2)10ms定时器执行定时器指令时开始定时,在每一个扫描周期开始时刷新定时器,每个扫描周期只刷新一次。(3)100ms定时器只有在执行定时器指令时,才对100ms定时器的当前值进行刷新。,.,23,3.1.9计数器指令计数器主要用于累计输入脉冲的次数。S7-200系列PLC有三种计数器:递增计数器CTU、递减计数器CTD、增减计数器CTUD。三种计数器共有256个。1.递增计数器CTU(CountUp)指令格式如下:CU:加计数脉冲输入端;R:复位输入端;PV:设定值。,.,24,2.递减计数器CTD(CountDown)指令格式如下:LD:复位脉冲输入端;CD:减计数脉冲输入端。3.增减计数器CTUD(CountUP/Down),.,25,指令格式如下:CU:加计数脉冲输入端;CD:减计数脉冲输入端。3.1.10比较指令比较指令用来比较两个数IN1和IN2的大小。在梯形图中,满足比较关系式给出的条件时,触点接通。比较运算符有:=、=、=。,.,26,3.2程序控制指令程序控制类指令主要用于较复杂程序设计,使用该类指令可以用来优化程序结构,增强程序功能。它包括循环、跳转、停止、子程序调用、看门狗及顺序控制等指令。3.2.1循环指令循环指令主要用于反复执行若干次相同功能程序的情况。循环指令包括循环开始指令FOR和循环结束指令NEXT。FOR指令表示循环的开始,NEXT指令表示循环的结束。当驱动FOR指令的逻辑条件满足时,反复执行FOR和NEXT之间的程序。在FOR指令中,需要设置指针或当前循环次数计数器(INDX),初始值(INIT)和终值(FINAL)。,.,27,指令格式如下:INDX操作数为:VW、IW、QW、MW、SW、SMW、LW、T、C、AC、*VD、*AC、和*CD,属INT型。INIT和FINAL操作数除上面外,再加上常数。也属INT型。,.,28,3.2.2跳转指令跳转指令包括:跳转指令JMP和标号指令LBL。当条件满足时,跳转指令JMP使程序转到对应的标号LBL处,标号指令用来表示跳转的目的地址。JMP与LBL指令中的操作数n为常数0255。JMP和对应的LBL指令必须在同一程序块中。3.2.3停止指令STOP停止指令STOP可使PLC从运行模式进入停止模式,立即停止程序的执行。如果在中断程序中执行停止指令,中断程序立即终止,并忽略全部等待执行的中断,继续执行主程序的剩余部分,并在主程序的结束处,完成从运行方式至停止方式的转换。,.,29,3.2.4结束指令结束指令包括两条:END和MEND。1.END条件结束指令,不能直接连接母线。当条件满足时结束主程序,并返回主程序的第一条指令执行。2.MEND无条件结束指令,直接连接母线。程序执行到此指令时,立即无条件结束主程序,并返回第一条指令。这两条指令都只能在主程序中使用。3.2.5看门狗复位指令WDR看门狗复位指令WDR(WatchDogReset)作为监控定时器使用,定时时间为300ms。,.,30,3.2.6子程序子程序在结构化程序设计中是一种方便有效的工具。S7-200PLC的指令系统具有简单、方便、灵活的子程序调用功能。与子程序有关的操作有:建立子程序、子程序的调用和返回。1.建立子程序建立子程序是通过编程软件来完成的。2.子程序调用(1)子程序调用指令CALL在使能输入有效时,主程序把程序控制权交给子程序。(2)子程序条件返回指令CRET在使能输入有效时,结束子程序的执行,返回主程序中。,.,31,3.带参数的子程序调用子程序中可以有参变量,带参数的子程序调用扩大了子程序的使用范围,增加了调用的灵活性。(1)子程序参数子程序最多可以传递16个参数,参数在子程序的局部变量表中加以定义。参数包含下列信息:变量名、变量类型和数据类型。变量名:变量名最多用8个字符表示,第一个字符不能是数字。变量类型:变量类型是按变量对应数据的传递方向来划分的,可以是传入子程序(IN)、传入和传出子程序(IN/OUT)、传出子程序(OUT)和暂时子程序(TEMP)4种变量类型。数据类型:局部变量表中还要对数据类型进行声明。数据类型可以是:能流、布尔型、字节型、字型、双字型、整数型、双整数和实型。,.,32,(2)参数子程序调用的规则常数参数必须声明数据类型。输入或输出参数没有自动数据类型转换功能。参数在调用时必须按照一定的顺序排列,先是输入参数,然后是输入输出参数,最后是输出参数。(3)变量表使用按照子程序指令的调用顺序,参数值分配给局部变量存储器,起始地址是L0.0。使用编程软件时,地址分配是自动的。参数子程序调用指令格式为:CALL子程序,参数1,参数2,参数n3.2.7“与”ENO指令ENO是LAD中指令块的布尔能流输出端。如果指令块的能流输入有效,且执行没有错误,ENO就置位,并将能流向下传递。ENO可以作为允许位,表示指令成功执行。,.,33,3.3PLC顺序控制程序设计本节主要介绍顺序功能图(SFC)和梯形图程序设计。顺序功能图设计方法可以向设计者提供控制问题描述方法的规律。3.3.1SFC设计方法SFC功能图设计方法是专用于工业顺序控制程序设计的一种方法。它能完整地描述控制系统的工作过程、功能和特性。是分析、设计电器控制系统控制程序的重要工具。1.SFC基础SFC的基本元素为:流程步、有向线段、转移和动作说明。(1)流程步流程步又叫工作步,表示控制系统中的一个稳定状态。,.,34,(2)转移与有向线段转移就是从一个步向另外一个步之间的切换条件,两个步之间用一个有向线段表示,说明从一个步切换到另一个步,向下转移方向的箭头可以省略。(3)动作说明步并不是PLC的输出触点的动作,步只是控制系统中的一个稳定的状态。这个状态可以包含一个或多个PLC输出触点的动作,也可以没有任何输出动作,步只是启动了定时器或一个等待过程,所以步和PLC的动作是两件不同的事情。2.SFC图的结构(1)顺序结构顺序结构是最简单的一种结构,该结构的特点是步与步之间只有一个转移,转移与转移之间只有一个步。,.,35,(2)选择性分支结构选择性分支结构是一个控制流可以转入多个可能的控制流中的某一个,不允许多路分支同时执行。具体进入哪个分支,取决于控制流前面的转移条件哪一个为真。(3)并发性分支结构如果某一个工作步执行完后,需要同时启动若干条分支,这种结构称为并发性分支结构。(4)循环结构循环结构用于一个顺序过程的多次重复执行。(5)复合结构复合结构就是一个集顺序、选择性分支、并发性分支和循环结构于一体的结构。,.,36,3.SFC转换成梯形图SFC一般不能被PLC软件直接接受,需要将SFC转换成梯形图后才能被PLC软件所识别。(1)进入有效工作步(2)停止有效工作步(3)最后一个工作步(4)工作步的转移条件(5)工作步的得电和失电(6)选择性分支(7)并发性分支(8)第0工作步(9)动作输出,.,37,3.3.2PLC编程举例1.汽车自动清洗装置一台汽车自动清洗机的动作如下:按下起动按钮后,打开喷淋阀门,同时清洗机开始移动。当检测到汽车到达刷洗范围时,启动旋转刷子开始清洗汽车。当检测到汽车离开清洗机时,停止清洗机移动、停止刷子旋转并关闭阀门。当按下停止按钮时,任何时候均立即停止所有动作。图3-31汽车清洗机SFC,.,38,图3-32汽车清洗机的梯形图及语句表,.,39,3.4顺序控制指令3.4.1顺序控制指令介绍顺序控制指令是PLC生产厂家为用户提供的可使功能图编程简单化和规范化的指令。S7-200PLC提供了三条顺序控制指令。一个SCR程序段一般有以下三种功能:(1)驱动处理即在该段状态有效时,要做什么工作,有时也可能不做任何工作。(2)指定转移条件和目标即满足什么条件后状态转移到何处。(3)转移源自动复位功能状态发生转移后,置位下一个状态的同时,自动复位原状态。,.,40,3.4.2举例说明在使用功能图编程时,应先画出功能图,然后对应于功能图画出梯形图。如图3-35所示为顺序控制指令使用的一个简单例
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 船舶安全生产考试题库及答案解析
- 辽宁水利建造师安全员B卷题库及答案解析
- 医院护理消防考试题库及答案解析
- 证券从业资格考试无座位及答案解析
- 烟草安全培训资格题库及答案解析
- 南通护理招聘考试题库及答案解析
- 垌乡安全工程师考证题库及答案解析
- 2025年上海选调生考试行测真题及答案解析
- 2025年国家开放大学《计算机原理与应用》期末考试备考试题及答案解析
- 2025年江苏省常熟市电工证考试题模拟试题初级电工试题(附答案)
- MOOC 颈肩腰腿痛中医防治-暨南大学 中国大学慕课答案
- 媒介素养概论 课件 第0-2章 绪论、媒介素养、媒介素养教育
- 2024年米粉项目实施方案
- 顶管顶力计算
- 综合实践活动课程的设计与实施
- 《影视鉴赏》教学课件 《影视鉴赏》第三章
- 职工三级安全教育卡模版
- 新疆民族团结模范人物
- 供应链金融业务培训课件
- 幼儿教育政策法规解读-高职-学前教育专业课件
- 污染场地环境风险管理与原位地下水修复技术 陈梦舫
评论
0/150
提交评论