课题四-功能指令的应用_第1页
课题四-功能指令的应用_第2页
课题四-功能指令的应用_第3页
课题四-功能指令的应用_第4页
课题四-功能指令的应用_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

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

文档简介

任务1抢答器的PLC控制任务2天塔之光的PLC控制任务3密码锁的PLC控制任务4数值运算的PLC控制任务5彩灯循环的PLC控制任务6箱体包装工序的PLC控制任务1抢答器的PLC控制学习目标1.了解功能指令的分类及用途。2.掌握JMP、LBL及SEG指令的功能及应用方法。3.提高综合运用所学各种指令编程的能力。

工作任务任务要求:(1)总台设置1个复位按钮、1个蜂鸣器以及1个七段数码管。分台设有4个抢答按钮。(2)按下4个抢答按钮中的任意一个后,数码管能及时显示该组编号并使蜂鸣器发出响声(蜂鸣器响3s后停止),同时锁住抢答器,直至复位按钮被按下后才能进行下一轮抢答。(3)具有短路保护等必要的保护措施。

任务分析输入量有1个复位按钮SB0和4个抢答按钮SB1、SB2、SB3、SB4,输出量包括七段数码显示管和蜂鸣器。对应七段数码管的每一段都应分配一个输出端子,可以设计不同的程序驱动七段数码显示管。各组抢答按钮之间应采用电气联锁,以保证某一组抢答按钮按下时,其他组即使按下抢答按钮也无效。复位按钮不仅要将抢答器复位,同时应将七段数码管复位。本任务主要采用PLC功能指令中的跳转、标号指令以及七段译码指令编程设计梯形图程序。相关知识一、PLC的功能指令简介PLC的功能指令或称应用指令,是指在完成基本逻辑控制、定时控制、顺序控制的基础上,PLC制造商为满足用户不断提出的一些特殊控制要求而开发的指令。1.功能指令的分类及用途(1)程序控制类。含跳转、子程序、中断、循环等指令,用于程序结构及流程的控制。(2)数据处理类。含传送、比较、移位与循环移位、数字运算、逻辑操作、转换等指令,用于各种运算。(3)特种功能类。含时钟、高速计数、表功能、PID处理等指令,用于实现某些专用功能。(4)外部设备类。含输入输出接口设备指令及通信指令等,用于主机内外设备间的数据交换。2.功能指令的表示形式及使用要素(1)功能框及指令的标题。(2)语句表达式。(3)操作数类型及长度。(4)指令的执行条件及执行形式。

(5)指令执行结果对特殊标志位的影响。(6)指令的机型适用范围。二、跳转、标号指令程序控制指令包括条件结束、停止、看门狗复位、For-Next循环指令、跳转与标号指令、顺控继电器(SCR)指令、诊断LED指令等。跳转JMP(Jump)指令、标号LBL(Label)指令的梯形图和语句表三、七段译码指令数据转换指令包括BCD码转换指令、数据类型转换指令、数据的编码和译码指令、七段译码指令、ASCІІ码转换指令以及字符串类型转换指令。七段译码SEG(Segment)指令的梯形图和语句表任务实施一、I/O地址分配二、绘制PLC控制线路图

三、设计梯形图程序1.创建及保存项目2.编辑符号表

3.编写并输入梯形图程序(1)采用跳转与标号指令的梯形图程序

(2)采用七段译码指令的梯形图程序

四、线路安装

五、运行及调试程序

六、整理技术文件

知识拓展一、END、STOP、WDR指令1.结束指令END/MEND结束指令分为有条件结束指令(END)和无条件结束指令(MEND)。两条指令在梯形图中以线圈形式编程,指令不含操作数。执行完结束指令后,系统结束主程序,返回到主程序起点。2.STOP指令STOP指令即停止指令,其功能是在执行条件成立时,停止执行用户程序,令CPU工作方式由RUN转到STOP。STOP指令既可以在主程序中使用,也可以在子程序和中断程序中使用。如果在中断程序中执行STOP指令,该中断程序立即终止,并且忽略所有挂起的中断,继续扫描主程序的剩余部分。在本次扫描的最后,将CPU由RUN切换到STOP。3.WDR指令WDR(WatchDogReset)指令,即看门狗复位指令,又称系统监视定时器复位指令或警戒时钟刷新指令。二、DECO和ENCO指令译码DECO(Decode)指令、编码ENCO(Encode)指令的梯形图和语句表任务1初识PLC学习目标任务2天塔之光的PLC控制

1.了解传送、移位指令的分类及用途。2.掌握传送、移位指令的功能及使用方法。3.能正确使用传送、移位指令编写控制程序。

工作任务本任务就是应用PLC的功能指令,设计天塔之光PLC控制系统。任务要求:(1)按下启动按钮SB1,彩灯HL1亮,2s后熄灭;彩灯HL2、HL3、HL4、HL5亮,2s后熄灭;彩灯HL6、HL7、HL8、HL9亮,2s后熄灭;然后HL1再亮……如此循环下去,形成由内向外发射形的灯光效果,直到按下停止按钮SB2,所有彩灯全部熄灭。(2)具有短路保护等必要的保护措施。

任务分析分析控制要求可知,9盏彩灯可以分成3组分别控制。在PLC的输出端子电流容量允许的前提条件下,可以将每组彩灯用一个输出端子控制。如果PLC的输出端子电流容量较小,也可以用一个端子控制一盏灯的方法进行控制。上述两种接线方法采用的程序各不相同,应分别进行程序设计。完成上述控制要求可以有很多种方法,本任务使用数据传送指令、移位和循环移位指令来设计程序。另外,由于上述指令属于数据处理类指令,因此在使用上述指令时,尤其要注意PLC的数据类型和编址方式问题。

相关知识一、数据传送指令数据传送指令有字节、字、双字和实数的单个传送指令,字节立即传送(读和写)指令和以字节、字、双字为单位的数据块的块传送指令,其用来完成各存储器单元之间的数据传送。单个传送指令(Move)一次完成一个字节、字、双字的传送。二、移位指令移位指令包括左/右移位、循环左/右移位、移位寄存器和字节交换指令。

1.左移位指令使能端输入有效时,将输入的字节、字、双字左移N位,右端补0,并将结果输出至OUT指定的存储器单元,最后一次移出的位保存在SM1.1中。

2.右移位指令当使能输入有效时,将输入的字节、字或双字IN右移N位后(左端补0),将结果输出到OUT所指定的存储器单元中,最后一次移出位保存在SM1.1中。循环移位指令包括循环左移位ROL(RotateLeft)指令和循环右移位ROR(RotateRight)指令。3.循环左移位指令使能端输入有效时,字节、字、双字循环左移N位后,将结果输出至OUT指定的存储单元中,并将最后一次移出的位送至SM1.1存放。4.循环右移位指令使能端输入有效时,字节、字、双字循环右移N位后,将结果输出至OUT指定的存储单元中,并将最后一次移出的位送至SM1.1存放。任务实施一、I/O地址分配二、绘制PLC控制线路图三、设计梯形图程序1.创建及保存项目2.编辑符号表3.编写并输入梯形图程序

(1)采用数据传送指令和左移位指令的梯形图程序

(2)采用数据传送指令和循环左移位指令的梯形图程序四、线路安装

五、运行及调试程序

六、整理技术文件

知识拓展一、S7-200PLC寻址方式S7-200系列PLC指令系统的寻址方式有直接寻址和间接寻址。1.直接寻址直接寻址是指在指令中直接使用存储器的地址编号,直接到指定的区域读取或写入数据,如I0.1、MB10、VW200等。2.间接寻址间接编址使用指针存取内存中的数据。指针是包含另一个内存位置地址的双字内存位置,而且只能用V、L或AC1、AC2、AC3做指针。欲建立指针,还必须使用“移动双字”指令(MOVD),将间接编址内存位置移至指针位置。指针还可以作为参数传递至子程序。S7-200CPU允许用指针对下述存储区域进行间接寻址:I、Q、V、M、S、T(仅当前值)和C(仅当前值)。间接寻址不能用于位地址、AI、AQ、HC、SM或L。二、字节立即传送(读和写)指令字节立即传送指令允许在物理I/O和存储器之间立即传送一个字节数据。字节立即传送指令包括字节立即读BIR(ByteImmediatelyRead)指令和字节立即写BIW(ByteImmediatelyWrite)指令。三、数据块传送指令数据块传送BLKMOV(BlockMove)指令包括字节、字、双字数据块传送指令。

四、寄存器移位指令寄存器移位SHRB(ShiftRegisterBit)指令是一个移位长度可以指定的移位指令。五、字节交换指令字节交换(SWAPBytes)指令用来实现字中高、低字节内容的交换。任务3密码锁的PLC控制学习目标1.掌握数值比较指令的功能及使用方法。2.掌握递增和递减指令的功能及使用方法。3.能正确使用数值比较指令及递增和递减指令编写控制程序。工作任务任务要求:(1)6位密码预设为“791026”;用户按正确顺序输入这6位密码,按确认键后,门开;用户输入错误,按确认键后,门不开同时报警;按复位键可以重新输入密码。(2)具有短路保护等必要的保护措施。(3)用PLC控制方式来实现此系统的功能。

任务分析在程序设计时,要注意考虑必须按正确顺序输入6位密码,否则即使输入正确的6位密码数字,但是顺序不对,也不能开锁。当然输入密码的位数不足6位或者多于6位,也不能开锁。本任务主要采用PLC功能指令中的数值比较指令和递增指令编程设计梯形图程序。相关知识一、数值比较指令数值比较指令用来比较两个操作数IN1与IN2的大小关系,如大于、大于等于、等于、小于、小于等于及不等于。数值比较指令在梯形图中用带参数(即两个操作数IN1、IN2)和运算符的触点表示,比较条件成立时,触点就闭合,否则断开,所以数值比较指令实际上也是一种位指令。在语句表中,数值比较指令与基本逻辑指令LD、A和O进行组合后编程,当比较结果为真时,PLC将栈顶值置1。数值比较指令为上、下限控制以及数值条件判断提供了方便。数值比较指令的类型有:字节比较、整数比较、双字整数比较和实数比较。数值比较指令的运算符有:>、>=、==、<、<=和<>。对数值比较指令可进行LD、A和O编程。对上述这三种条件进行组合,可以得到4×6×3=72条数值比较指令。字节比较用于比较两个字节型整数值IN1和IN2的大小,字节比较是无符号的。整数比较用于比较两个一个字长的整数值IN1和IN2的大小,整数比较是有符号的(最高位为符号位),其范围是16#8000~16#7FFF。例如,16#7FFF>16#8000(后者为负数)。双字整数比较用于比较两个双字长整数值IN1和IN2的大小。它们的比较也是有符号的(最高位为符号位),其范围是16#80000000~16#7FFFFFFF。例如,16#7FFFFFFF>16#80000000(后者为负数)。实数比较用于比较两个双字长实数值IN1和IN2的大小,实数比较是有符号的(最高位为符号位)。负实数范围为-1.175495E-38~-3.402823E+38。正实数范围是+1.175495E-38~+3.402823E+38。二、递增和递减指令数字运算指令包括算术运算指令(加、减、乘、除指令以及整数乘法产生双整数指令和带余数的整数除法指令)、数学功能指令以及递增和递减指令。递增和递减指令用于自增/自减操作,以实现累加计数和循环控制等程序的编制,包括字节、字、双字递增和递减指令。

字节递增指令INC_B和字节递减指令DEC_B将输入字节(IN)加1或减1,并将结果存入OUT指定的变量中。字节递增和递减指令是无符号的,这些功能影响SM1.0(零)和SM1.1(溢出)。字递增指令INC_W和字递减指令DEC_W将输入字(IN)加1或减1,并将结果存入OUT指定的变量中。字递增和递减指令是有符号的(16#7FFF>16#8000)。双字递增指令INC_D和双字递减指令DEC_D将输入双字(IN)加1或减1,并将结果存入OUT指定的变量中。双字递增和递减指令是有符号的(16#7FFFFFFF>16#80000000)。在梯形图中,IN+1=OUT,IN-1=OUT;在语句表中,OUT+1=OUT,OUT-1=OUT。任务实施一、I/O地址分配

二、绘制PLC硬件接线图

三、设计梯形图程序1.创建及保存项目2.编辑符号表

3.编写并输入梯形图程序四、线路安装

五、运行及调试程序

六、整理技术文件

知识拓展一、两个数值比较指令相与的应用当两个数值比较指令相与时,只有当第一个数值比较指令满足比较关系接通后,第二个数值比较指令才能被执行,否则第二个数值比较指令不能被执行。二、表功能指令数据表是用来存放字型数据的表格。数据表任务4数值运算的PLC控制学习目标1.掌握数据类型转换指令、BCD码转换指令、算术运算指令和逻辑运算指令的功能及使用方法。2.能熟练使用数据类型转换指令进行数据类型的转换。3.能使用数据类型转换指令、BCD码转换指令以及算术运算和逻辑运算指令编写程序。工作任务本任务是要求使用PLC的算术运算和逻辑运算指令,设计一个数值运算PLC控制系统。任务要求:(1)将从BCD拨码器SA1和SA2输入的数值按下面公式进行运算,然后用数码管显示结果中的个位上的数值。(2)具有短路保护等必要的保护措施。

任务分析分析工作任务中的公式,SA2的数值不能为0。输出采用七段数码管显示结果中个位上的数值。在应用某些功能指令时,会受到该指令操作数范围的限制,应注意用数据类型转换指令进行数据类型的转换以满足编程需要。本任务中除要用算术运算指令完成算术运算之外,为了只保留个位上的数值还要使用到逻辑运算指令。相关知识一、8421BCD拨码器二、数据类型转换指令数据类型转换指令包括字节与字整数之间的转换、字整数与双字整数之间的转换以及双字整数与实数之间的转换指令三、BCD码转换指令BCD码转换指令包括BCD码转换成整数(BCDI)指令和整数转换成BCD码(IBCD)指令。

四、算术运算指令算术运算指令包括整数、双整数和实数的加(Add)、减(Subtract)、乘(Multiply)、除(Divide)运算指令,整数乘法产生双整数(MultiplyIntegertoDoubleInteger)指令和带余数的整数除法(DivideIntegertoDoubleInteger)指令。五、逻辑运算指令逻辑运算指令是对逻辑数(无符号数)进行处理,参与运算的操作数可以是字节、字或者双字。逻辑运算指令包括与、或、异或指令和取反指令。其中,根据参与运算的操作数的不同,与、或、异或指令又可分为字节、字和双字的与、或、异或指令。

任务实施一、I/O地址分配

二、绘制PLC硬件接线图

三、设计梯形图程序1.创建及保存项目2.编辑符号表

3.编写并输入梯形图程序四、线路安装

五、运行及调试程序

六、整理技术文件

知识拓展一、取反指令INV取反指令有字节、字、双字取反指令。逻辑取反指令的功能是将源操作数IN数据进行二进制按位取反,并将逻辑运算结果存入目标操作数OUT中。二、循环指令FOR、NEXT如果需要重复执行若干次同样的任务可以使用循环指令。FOR指令表示循环开始,NEXT指令表示循环结束,并将堆栈的栈顶值设为1。驱动FOR指令的逻辑条件满足时,反复执行FOR与NEXT之间的指令。在FOR指令中,需要设置指针INDX(或称为当前循环次数计数器)、循环次数起始值INIT和循环计数结束值FINAL,它们的数据类型均为整数。INDX的值从INIT变到FINAL,执行次数为FINAL-INIT+1。任务5彩灯循环的PLC控制学习目标1.掌握子程序指令的功能及使用方法。2.掌握中断指令的功能及使用方法。3.能正确使用子程序指令及中断指令编写控制程序。工作任务本任务要求使用PLC功能指令中的子程序指令和定时中断指令,设计一个简单的彩灯循环PLC控制系统。任务要求:(1)按下启动按钮后,系统开始工作。先设定8个彩灯在QB0处显示,并设初始值“7”,然后每隔1s彩灯循环左移一位。按下停止按钮,彩灯全灭。(2)具有短路保护等必要的保护措施。

任务分析通过对任务要求的分析可知,每隔1s彩灯就会循环左移一位,因此彩灯循环左移一位的动作可以作为一个经常发生的外部突发事件来处理,而中断指令就是PLC处理外部突发事件的一个重要手段。根据任务要求,在设计梯形图程序时,可以将程序分为三部分:第一部分为主程序,包括启动/停止系统、调用子程序以及系统停止时的清零复位工作;第二部分为子程序,包括首先显示彩灯HL1、HL2、HL3准备循环以及连接中断程序;第三部分为中断程序,即实现每计时1s彩灯就循环左移一位的输出。相关知识S7-200PLC的控制程序由主程序、子程序和中断程序组成。软件窗口里为每个POU(ProgramOrganizationalUnit,程序组织单元)提供了一个独立的页。主程序总是第1页,后面是子程序和中断程序。各个程序在编辑器窗口里被分开的,编译时,在程序结束的地方自动加入END、MEND、RET或RETI指令。如果在程序里加了这些指令,编译时反而会出错。一、子程序指令1.子程序的作用欲在程序中使用子程序,必须执行下列三项任务:(1)建立子程序。(2)在子程序局部变量表中定义参数(带参数调用子程序时必须执行,在知识拓展中介绍)。(3)从适当的POU(从主程序或另一个子程序)调用子程序。2.建立子程序方法3.子程序指令子程序指令包括子程序调用指令CALL和子程序返回指令RET。4.子程序的调用可以在主程序、另一子程序或中断程序中调用子程序,但是不能在子程序中调用自己(即不允许递归调用)。5.子程序的嵌套调用程序中最多可创建64个子程序。子程序可以嵌套调用(在子程序中调用别的子程序),最大嵌套深度为80。6.程序的有条件返回在程序中,用触点电路控制RET(从子程序有条件返回)指令,触点电路接通时条件满足,子程序被终止。编程软件自动地为主程序和子程序添加无条件返回指令。类似地,可以在主程序中用触点电路驱动END(有条件结束)指令。7.子程序中的定时器

二、中断指令1.中断源及种类中断源即中断事件发出中断请求的来源。S7-200可编程序控制器具有最多可达34个中断源,每个中断源都分配一个编号用以识别,称为中断事件号。这些中断源大致分为三大类:通信口中断、输入/输出中断和时基中断。(1)通信口中断通信口中断包括通信口0和通信口1产生的中断。(2)输入/输出(即I/O)中断S7-200对I/O点状态的各种变化产生中断,包括外部输入中断(包括上升沿中断或下降沿中断)、高速计数器HC(HighSpeedCounter)中断和脉冲串输出(PTO)中断。这些事件可以对输入的上升或下降状态、高速计数器或者脉冲输出作出响应。(3)时基中断时基中断包括定时中断(TimedInterrupt)和定时器T32、T96中断。2.中断优先级S7-200CPU规定的中断优先权由高到低依次是通信中断、I/O中断和定时中断。每类中断又有不同的优先级。3.中断指令中断指令共有6条,包括中断连接、中断分离、清除中断事件、中断禁止、中断允许和中断条件返回。4.中断程序

中断程序不是由程序调用,而是在中断事件发生时由操作系统调用,使系统对特殊的内部或外部事件作出响应。在中断程序中可以调用一级子程序,累加器和逻辑堆栈在中断程序和被调用的子程序中是公用的。任务实施一、I/O地址分配

二、绘制PLC硬件接线图

三、设计梯形图程序1.创建及保存项目2.编辑符号表

3.编写并输入梯形图程序四、线路安装

五、运行及调试程序

六、整理技术文件

知识拓展一、局部变量存储器L变量存储器V用来存放全局变量,全局变量是全局有效的。全局有效是指同一个变量可以被任何程序(主程序、子程序和中断程序)访问。局部变量存储器L用来存放局部变量,局部变量只是局部有效。局部有效是指变量只和特定的程序(或主程序或子程序或中断程序)相关联。二、局部变量表程序中的每个POU均有自己的由64字节L存储器组成的局部变量表。在带参数调用子程序中,参数的传递就通过局部变量表进行的。1.局部变量与全局变量的区别2.局部变量的变量类型3.局部变量的数据类型4.在局部变量表中赋值

5.在局部变量表中增加新的变量6.局部变量的数据类型检查

三、带参数的子程序调用指令1.带参数的子程序子程序可能有要传递的参数(变量和数据),这时可以在子程序调用指令中包含相应参数,这些参数可以在子程序与调用程序之间传送。如果子程序仅用要传递的参数和局部变量,则为带参数的子程序。2.带参数的子程序调用指令

调用带参数的子程序时首先要设置调用的参数,参数在子程序的局部变量表中定义。子程序中的参数必须有一个符号名(最多为23个字符)、一个变量类型和一个数据类型。各子程序最多可调用16个参数,如果超出16个,会返回一则错误信息。任务6箱体包装工序的PLC控制学习目标1.了解旋转编码器的原理和应用。2.理解高速计数器的工作模式及计数方式。3.掌握高速计数器指令的功能及使用方法。4.会编写高速计数器的初始化程序。5.能使用高速计数器指令编写控制程序。工作任务本任务要求使用PLC功能指令中的高速计数器指令,设计一个基于高速计数器的箱体包装工序PLC控制系统。任务要求:(1)按下启动按钮,电动机开始工作,传送带开始输送包装箱。当传感器A检测到箱体时,高速计数器开始计数。当计数到1000个脉冲时,箱体刚好到达封箱机下方进行封箱,此时传送带继续运转。工作任务在封箱过程中,箱体继续前行,设封箱过程需500个脉冲,然后封箱机停止工作。箱体继续前行,当计数脉冲又累加了300个时,喷码机开始喷码,喷码需6s,喷码结束后,整个工作过程结束。按下停止按钮,电动机停止工作,传送带停止输送包装箱,高速计数器停止计数。(2)具有短路保护等必要的保护措施。

任务分析箱体包装工序控制严密,需要精确控制。PLC提供了高速计数器和高速计数器指令,可以用来精确控制箱体包装工序。S7-200CPU226有6个高速计数器,由于高速计数器的输入端不像普通输入端那样由用户自由定义,而是由系统指定的输入点输入信号。因此,一旦选择某个高速计数器在某种工作模式下工作,就必须按系统指定的PLC输入点接入旋转编码器,以输入高速计数脉冲信号。

高速计数器指令包括高速计数器定义指令HDEF和高速计数器指令HSC。使用高速计数器指令设计梯形图程序时,为了减少程序运行时间优化程序结构,一般以子程序的形式先对高速计数器进行初始化,即使用HDEF指令和HSC指令分别定义高速计数器和激活高速计数器。因此,在设计本任务的梯形图程序时采用主程序和子程序结构。相关知识一、光电编码器

1.增量式光电编码器

2.绝对式光电编码器

3.混合式绝对值编码器

二、高速计数器HC普通计数器要受CPU扫描速度的影响,对高速脉冲信号的计数会发生脉冲丢失现象。高速计数器脱离主机的扫描周期而独立计数,它可对脉宽小于主机扫描周期的高速脉冲准确计数。高速计数器常用于电动机转速检测等场合

温馨提示

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

评论

0/150

提交评论