天津职业技术师范大学第五章PLC基本指令及程序设计电气控制与PLC应用技术1本章内容5.1PLC的基本逻辑指令及举例5.2程序控制指令5.3PLC初步编程指导5.4典型的简单电路编程5.5PLC程序的简单设计法及应用举例●PLC的基本指令及程序设计25.1PLC的基本逻辑指令及举例1.逻辑取及线圈驱动指令指令LD(Load):取指令LDN(LoadNot):取反指令=(Out):线圈驱动指令NOT:取反指令用法●PLC的基本指令及程序设计35.1PLC的基本逻辑指令及举例1.逻辑取及线圈驱动指令使用说明LD、LDN指令不只是用于网络块逻辑计算开始时与母线相连的常开和常闭触点,在分支电路块的开始也要使用LD、LDN指令,与后面要讲的ALD、OLD指令配合完成块电路的编程。并联的=指令可连续使用任意次。在同一程序中不要使用双线圈输出,即同一个元器件在同一程序中只使用一次=指令。LD、LDN、=指令的操作数为:I、Q、M、SM、T、C、V、S和L。T和C也作为输出线圈,但在S7-200PLC中输出时不使用=指令形式(见5.1.10~5.1.11)。●PLC的基本指令及程序设计45.1PLC的基本逻辑指令及举例1.触点串联指令指令A(And):与指令。用于单个常开触点的串联连接。AN(AndNot):与反指令。用于单个常闭触点的串联连接。用法●PLC的基本指令及程序设计55.1PLC的基本逻辑指令及举例1.触点串联指令使用说明A、AN是单个触点串联连接指令,可连续使用。但在用梯形图编程时会受到打印宽度和屏幕显示的限制,S7-200PLC的编程软件中规定的串联触点使用上限为11个。A、AN指令的操作数为:I、Q、M、SM、T、C、V、S和L。对连续输出电路,可以反复使用=指令,但次序必须正确,不然就不能连续使用=指令编程了。●PLC的基本指令及程序设计65.1PLC的基本逻辑指令及举例1.触点并联指令指令O(OR):或指令。用于单个常开触点的并联连接。ON(OrNot):或反指令。用于单个常闭触点的并联连接。用法●PLC的基本指令及程序设计75.1PLC的基本逻辑指令及举例1.触点并联指令使用说明单个触点的O、ON指令可连续使用。O、ON指令的操作数为:I、Q、M、SM、T、C、V、S和L。●PLC的基本指令及程序设计85.1PLC的基本逻辑指令及举例1.置位/复位指令指令●PLC的基本指令及程序设计95.1PLC的基本逻辑指令及举例1.置位/复位指令用法●PLC的基本指令及程序设计105.1PLC的基本逻辑指令及举例1.置位/复位指令使用说明对位元件来说一旦被置位,就保持在通电状态,除非对它复位;而一旦被复位就保持在断电状态,除非再对它置位或使用线圈指令。S/R指令可以互换次序使用,但由于PLC采用扫描工作方式,所以写在后面的指令具有优先权。如果对计数器和定时器复位,则计数器和定时器的当前值被清零。定时器和计数器的复位有其特殊性(见5.1.10~5.1.11)。N的范围为1~255,N可为:VB、IB、QB、MB、SMB、SB、LB、AC、常数、*VD、*AC和*LD。一般情况下使用常数。S/R指令的操作数为:I、Q、M、SM、T、C、V、S和L。●PLC的基本指令及程序设计115.1PLC的基本逻辑指令及举例1.RS触发器指令指令SR(SetDominantBistable):置位优先触发器指令。当置位信号(S1)和复位信号(R)都为真时,输出为真。RS(ResetDominantBistable):复位优先触发器指令。当置位信号(S)和复位信号(R1)都为真时,输出为假。●PLC的基本指令及程序设计125.1PLC的基本逻辑指令及举例1.RS触发器指令用法●PLC的基本指令及程序设计135.1PLC的基本逻辑指令及举例1.边沿脉冲指令指令●PLC的基本指令及程序设计145.1PLC的基本逻辑指令及举例1.边沿脉冲指令举例●PLC的基本指令及程序设计例如:称重计量,按一次按钮,加一份质量。如果不使用边沿脉冲指令,按一次按钮可能会连续加好几份质量!155.1PLC的基本逻辑指令及举例1.比较指令作用:比较指令是将两个数值或字符串按指定条件进行比较,条件成立时,触点就闭合。所以比较指令实际上也是一种位指令。类型:字节比较、整数比较、双字整数比较、实数比较和字符串比较。数值比较指令的运算符有:=、=、、=、和等6种,字符串比较指令有=和两种。对比较指令可进行LD、A和O编程。比较指令属于“位指令”具体指令(细节见表5-6)●PLC的基本指令及程序设计165.1PLC的基本逻辑指令及举例1.定时器最常用的器件种类TON:接通延时定时器(On-DelayTimer)TONR:记忆接通延时定时器(RetentiveOn-DelayTimer)TOF:断开延时定时器(Off-DelayTimer)●PLC的基本指令及程序设计175.1PLC的基本逻辑指令及举例1.定时器分辩率与定时时间的计算定时器的分辨率,即精度:单位时间的时间增量。S7-200PLC定时器有3个精度等级:1ms、10ms和100ms。定时器定时时间T:T=PT×S。式中:T为实际定时时间,PT为设定值,S为分辨率。例如:TON指令使用T97(为10ms的定时器),设定值为100,则实际定时时间为:T=100×10=1000ms设定值PT的数据类型为INT型。操作数可为:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常数,其中常数最为常用。●PLC的基本指令及程序设计185.1PLC的基本逻辑指令及举例1.定时器定时器的编号用定时器的名称和它的常数编号(最大为255)来表示,即T***。如:T40。包含两方面的信息:定时器位和定时器当前值。定时器位:与其他继电器的输出相似。当定时器的当前值达到设定值PT时,定时器的触点动作。定时器当前值:存储定时器当前所累计的时间,它用16位符号整数来表示,最大计数值为32767。●PLC的基本指令及程序设计195.1PLC的基本逻辑指令及举例1.定时器定时器的编号编号表(纵向分布规律:?)●PLC的基本指令及程序设计205.1PLC的基本逻辑指令及举例1.定时器定时器的编号注意事项:TON和TOF使用相同范围的定时器编号,所以在同一个PLC程序中决不能把同一个定时器号同时用作TON和TOF。例如:在程序中,不能既有接通延时(TON)定时器T32,又有断开延时(TOF)定时器T32。●PLC的基本指令及程序设计215.1PLC的基本逻辑指令及举例1.定时器定时器的指令及使用指令●PLC的基本指令及程序设计225.1PLC的基本逻辑指令及举例1.定时器接通延时定时器TON用于单一时间间隔的定时。上电周期或首次扫描时,定时器位为OFF,当前值为0。输入端接通时,定时器位为OFF,当前值从0开始计时;当前值达到设定值时,定时器位为ON,当前值仍连续计数到32767。输入端断开,定时器自动复位,即定时器位为OFF,当前值为0。●PLC的基本指令及程序设计235.1PLC的基本逻辑指令及举例1.定时器记忆接通延时定时器TONR具有记忆功能,用于对有许多间隔的累计定时。上电周期或首次扫描时,定时器位为掉电前的状态,当前值保持在掉电前的值。当输入端接通时,当前值从上次的保持值继续计时,当累计当前值达到设定值时,定时器位ON,当前值可继续计数到32767。只能用复位指令R对其进行复位操作。复位后,定时器位为OFF,当前值为0。●PLC的基本指令及程序设计245.1PLC的基本逻辑指令及举例1.定时器断开延时定时器TOF用于断电后的单一间隔时间计时。上电周期或首次扫描,定时器位为OFF,当前值为0。输入端接通时,定时器位为ON,当前值为0;当输入端由接通到断开时,定时器开始计时;当达到设定值时定时器位为OFF,当前值等于设定值,停止计时。输入端再次由OFF→ON时,TOF复位,这时TOF的位为ON,当前值为0。如果输入端再从ON→OFF,则TOF可实现再次启动。●PLC的基本指令及程序设计255.1PLC的基本逻辑指令及举例1.定时器定时器的指令及使用举例●PLC的基本指令及程序设计265.1PLC的基本逻辑指令及举例1.定时器定时器的刷新方式和正确使用1ms、10ms、100ms定时器的刷新方式不同~使用方法上也有很大不同。——和其他PLC有很大区别1ms定时器由系统每隔1ms刷新一次,与扫描周期及程序处理无关。采用的是中断刷新方式。~当扫描周期大于1ms时,在一个周期中可能被多次刷新。其当前值在一个扫描周期内不一定保持一致。10ms定时器由系统在每个扫描周期开始时自动刷新。~由于是每个扫描周期只刷新一次,故在一个扫描周期内定时器位和定时器的当前值保持不变。●PLC的基本指令及程序设计275.1PLC的基本逻辑指令及举例1.定时器定时器的刷新方式和正确使用100ms定时器在定时器指令执行时被刷新。~100ms定时器被激活后,如果不是每个扫描周期都执行定时器指令或在一个扫描周期内多次执行定时器指令,都会造成计时失准。——所以在后面讲到的跳转指令和循环指令段中使用定时器时,要格外小心。仅用在定时器指令在每个扫描周期执行一次的程序中。●PLC的基本指令及程序设计285.1PLC的基本逻辑指令及举例1.定时器及其使用定时器的刷新方式和正确使用举例一般情况下,不要把定时器自身的常闭触点作为自身的复位条件。●PLC的基本指令及程序设计Q0.0肯定能输出,但定时不准Q0.0肯定不能输出Q0.0肯定能输出,只要每个扫描周期执行一次,计时肯定准确295.1PLC的基本逻辑指令及举例1.定时器时间间隔定时器这是在最新版本的CPU中增加的特殊功能定时器。——2条指令:可以记录某一信号的开通时刻以及开通延续的时间。PLC停电后,停止记录。触发时间间隔(BITIM,BeginningIntervalTime)用来读取PLC中内置的1毫秒计数器的当前值,并将该值存储于OUT。双字毫秒值的最大计时间隔为2的32次方,即49.7天。计算时间间隔(CITIM,CalculateIntervalTime)计算当前时间与IN所提供时间的时间差,并将该差值存储于OUT。双字毫秒值的最大计时间隔为2的32次方,即49.7天。2条指令的有效操作数:IN和OUT端均为双字。●PLC的基本指令及程序设计305.1PLC的基本逻辑指令及举例1.定时器及其使用时间间隔定时器举例●PLC的基本指令及程序设计315.1PLC的基本逻辑指令及举例1.计数器种类:CTU(增计数器),CTUD(增减),CTD(减)编号用计数器名称和数字(0~255)组成,如C6。包含两方面的信息:计数器位和计数器当前值。计数器位:和继电器一样,是一个开关量;表示计数器是否发生动作的状态。当计数器的当前值达到设定值时,该位被置位为ON。计数器当前值:计数器当前累计的脉冲个数,用16位符号整数来表示,最大数值为32767。存储于一个内定的存储单元。●PLC的基本指令及程序设计325.1PLC的基本逻辑指令及举例1.计数器计数器输入端和操作数设定值输入(PV):数据类型为INT型。寻址范围:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常数。一般情况下使用常数作为计数器的设定值。●PLC的基本指令及程序设计335.1PLC的基本逻辑指令及举例1.计数器指令●PLC的基本指令及程序设计345.1PLC的基本逻辑指令及举例1.计数器CTU的使用首次扫描时,计数器位为OFF,当前值为0。在计数脉冲输入端CU的每个上升沿,使当前值增加1。当前值达到设定值时,计数器位为ON,当前值可继续计数到32767后停止计数。