《电气控制与PLC应用 教学课件 ppt 作者 张伟林 第5章 PLC功能指令的应用》由会员分享,可在线阅读,更多相关《电气控制与PLC应用 教学课件 ppt 作者 张伟林 第5章 PLC功能指令的应用(89页珍藏版)》请在金锄头文库上搜索。
1、第5章 PLC功能指令的应用,5.1 用数据传送指令实现电动机的Y-降压启动控制,5.2 用跳转指令实现选择运行程序段,5.3 算术运算指令与单按钮的功率控制,5.4 字逻辑运算指令及应用,5.5 子程序调用指令及应用,5.6 循环指令及应用,5.7 比较指令的应用与时钟控制程序,5.9 数码显示及应用,5.8 循环移位指令及应用,5.1 用数据传送指令实现电动机的Y-降压启动控制,5.1.1 位元件与字元件,1位元件 只具有接通(ON或1)或断开(OFF或0)两种状态的元件称为位元件。,2字元件 字元件是位元件的有序集合。FX系列的字元件最少4位,最多32位。,表5.1 字元件范围,(1)位
2、组件。多个位元件按一定规律的组合叫位组件,例如输出位组件KnY0,K表示十进制,n表示组数,n的取值为18,每组有4个位元件,Y0是输出位组件的最低位。KnY0的全部组合及适用指令范围如表5.2所示。,表5.2 KnY0的全部组合及适用指令范围,(2)数据寄存器D、V、Z,图5.1 16位与32位数据寄存器,表5.3 数据寄存器D、V、Z元件编号与功能,16位数据寄存器所能表示的有符号数的范围为K32 76832 767。,32位数据寄存器所能表示的有符号数的范围为K2 147 483 648 2 147 483 647,功能指令的使用说明: (1)FX2N系列PLC功能指令编号为FNC0FN
3、C246,实际有130个功能指令。 (2)功能指令分为16位指令和32位指令。功能指令默认是16位指令,加上前缀D是32位指令,例如DMOV。 (3)功能指令默认是连续执行方式,加上后缀P表示为脉冲执行方式,例如MOVP。 (4)多数功能指令有操作数。执行指令后其内容不变的称为源操作数,用S表示。被刷新内容的称为目标操作数,用D表示。,5.1.2 数据传送指令MOV,表5.4 MOV指令,图5.2 功能指令格式,5.1.3 数据传送指令应用举例,【例题5.1】 设有8盏指示灯,控制要求是:当X0接通时,全部灯亮;当X1接通时,奇数灯亮;当X2接通时,偶数灯亮;当X3接通时,全部灯灭。试设计电路
4、并用数据传送指令编写程序。,【解】 控制线路图如图5.3所示。,图5.3 例题5.1控制线路图,图5.4 例题5.1程序图,表5.5 例题5.1控制关系表,5.1.4 区间复位指令ZRST,表5.6 ZRST指令,图5.5 区间复位指令ZRST,如图5.5所示,当指令语句“ZRST Y0 Y3”执行时将Y0、Y1、Y2、Y3全部复位为0状态。,5.1.5 实习操作:电动机Y-降压启动控制线路与程序,图5.6 Y-降压启动控制线路,表5.7 Y-降压启动过程和传送控制数据表,图5.7 Y-降压启动程序梯形图,5.2 用跳转指令实现选择运行程序段,图5.8 手动/自动程序跳转,应用跳转指令的程序结
5、构如图5.8所示。X3是手动/自动选择开关的信号输入端。当X3未接通时,执行手动程序段,反之执行自动程序段。X3的常开/常闭接点起联锁作用,使手动、自动两个程序段只能选择其一。,5.2.1 条件跳转指令CJ,表5.8 CJ指令,1标号P的说明 (1)FX2N系列PLC的标号P有128点(P0P127),用于分支和跳转程序。 (2)标号P放置在左母线的左边,一个标号只能出现一次,如出现两次或两次以上,程序报错。标号P占一步步长。 2跳转指令CJ的说明 (1)如果跳转条件满足,则执行跳转指令,程序跳到以标号P为入口的程序段中执行。否则不执行跳转指令,按顺序执行下一条指令。 (2)多个跳转指令可以使
6、用同一个标号。 (3)如果用M8000作为控制跳转的条件,CJ则变成无条件跳转指令。,5.2.2 条件跳转指令应用举例,【例题5.2】 某台设备具有手动/自动两种操作方式。SB3是操作方式选择开关,当SB3处于断开状态时,选择手动操作方式;当SB3处于接通状态时,选择自动操作方式,不同操作方式进程如下: 手动操作方式进程:按启动按钮SB2,电动机运转;按停止按钮SB1,电动机停机。 自动操作方式进程:按启动按钮SB2,电动机连续运转1min后,自动停机。按停止按钮SB1,电动机立即停机。,图5.9 例题5.2控制线路图,【解】 根据控制要求,设计程序梯形图如图5.10所示。,图5.10 例题5
7、.2程序梯形图,5.3 算术运算指令与单按钮的功率控制,5.3.1 加法指令ADD,表5.10 ADD指令,1. 加法指令ADD的说明 (1)加法运算是代数运算。 (2)若相加结果为0,则零标志位M8020 = 1,可用来判断两个数是否为相反数。 (3)加法指令可以进行32位操作方式。,图5.11 32位加法指令操作数的构成,例如指令语句“DADD D0 D10 D20”的操作数构成如图5.11所示。被加数的低16位在D0中,高16位在D1中;加数的低16位在D10中,高16位在D11中;“和”的低16位在D20中,高16位在D21中。,2加法指令ADD举例,图5.12 加法指令ADD的举例1
8、,图5.13 加法指令ADD的举例2,图5.14 加法指令ADD的举例3,5.3.2 减法指令SUB,表5.11 SUB指令,1减法指令SUB的说明 (1)减法运算是代数运算。 (2)若相减结果为0时,则零标志位M8020 = 1,可用来判断两个数是否相等。 (3)SUB可以进行32位操作方式,例如指令语句:DSUB D0 D10 D20。,2减法指令SUB举例 两个数据寄存器中存储的数据相减,程序如图5.15所示。如果X0接点闭合,执行数据传送指令。如果X1接点闭合,执行减法指令,减法运算的结果差(82 = 6)存在D30中。,图5.15 减法指令SUB的举例,5.3.3 乘法指令MUL,表
9、5.12 MUL指令,1乘法指令MUL的说明 (1)乘法运算是代数运算。 (2)16位数乘法:源操作数S1、S2是16位,目标操作数D占用32位。,图5.16 16位乘法的积占用32位,例如乘法指令语句“MUL D0 D10 D20”,被乘数存储在D0,乘数存储在D10,积则存储在D21、D20组件中。操作数结构如图5.16所示。,2乘法指令MUL举例 运行监控模式的程序梯形图如图5.17所示。如果X0接点闭合,执行数据传送指令。如果X1接点闭合,执行乘法指令,乘法运算的结果(82 = 16)存储在D31、D30目标操作数中。图5.17中D31存储的数据为0,D30存储的数据为16。,图5.1
10、7 乘法指令MUL的举例,5.3.4 除法指令DIV,表5.13 DIV指令,1除法指令DIV的说明 (1)除法运算是代数运算。 (2)16位数除法:源操作数S1、S2是16位,目标操作数D占用32位。除法运算的结果商存储在目标操作数的低16位,余数存储在目标操作数的高16位中。,(3)32位除法:源操作数S1、S2是32位,但目标操作数却是64位。除法运算的结果商存储在目标操作数的低32位,余数存储在目标操作数的高32位。,例如除法指令语句“DIV D0 D10 D20”,被除数存储在D0,除数存储在D10,商存储在D20,余数存储在D21,操作数的结构如图5.18所示。,图5.18 16位
11、除法的商和余数构成32位目标操作数,2除法指令DIV举例 运行监控模式的程序梯形图如图5.19所示。如果X0接点闭合,执行数据传送指令。如果X1接点闭合,执行除法指令。除法运算结果的商7存储在D30,余数1存储在D31。可以看出,数据除2后根据余数为1或为0可判断数据的奇偶性。,图5.19 除法指令DIV的举例,5.3.5 加1指令INC,表5.14 INC指令,1加1指令INC的说明 (1)INC指令的执行结果不影响零标志位M8020。 (2)在实际控制中通常不使用每个扫描周期目标操作数都要加1的连续执行方式,所以,INC指令经常使用脉冲操作方式。 减1指令DEC和加1指令INC执行方式相似
12、。,2加1指令INC举例 运行监控模式的程序梯形图如图5.20所示。开机初始脉冲M8002将数据寄存器D10清0。在X0接点闭合的那个扫描周期执行加1指令,D10的数据被加1后存储,即(D10)+1(D10)。图中X0共接通5次,D10中存储的数据由0增加到5。,图5.20 加1指令INC的举例,5.3.6 实习操作:单按钮的功率控制程序,1单按钮的功率控制线路和控制要求 单按钮的功率控制线路如图5.21所示。控制要求是:加热功率有7个挡位可调,大小分别是0.5kW、1kW、1.5kW、2kW、2.5kW、3kW和3.5kW。有1个功率选择按钮SB1和1个停止按钮SB2。第一次按SB1选择功率
13、第1挡,第二次按SB1选择功率第2挡第八次按SB1或按SB2时,停止加热。,图5.21 单按钮的功率控制线路,2单按钮功率控制的工序,表5.16 单按钮功率控制的工序,3单按钮的功率控制程序,图5.22 单按钮的功率控制程序,5.4 字逻辑运算指令及应用,5.4.1 逻辑字“与”指令WAND,表5.17 WAND指令,1字“与”指令WAND的说明 (1)S1、S2为作相“与”逻辑运算的源操作数,D为存储“与”逻辑运算结果的目标操作数。 (2)字“与”指令的功能是将两个源操作数的数据,进行二进制按位相“与”,并将运算结果存入目标操作数。,2字“与”指令WAND举例 假设要求用输入继电器X0X4的
14、位状态去控制输出继电器Y0Y4,可用字元件K2X0去控制字元件K2Y0。对字元件多余的控制位X5、X6和X7,可与0相“与”进行屏蔽。程序如图5.23所示。,图5.23 应用字“与”指令的程序,图5.24 字“与”指令的位运算过程,5.4.2 逻辑字“或”指令WOR,表5.18 WOR指令,1字“或”指令WOR的说明 (1)S1、S2为两个相“或”的源操作数,D为存储“或”逻辑结果的目标操作数。 (2)指令的功能是将两个源操作数的数据,进行二进制按位相“或”,并将运算结果存入目标操作数。,2字“或”指令WOR举例 要求用输入继电器组成的字元件K2X0去控制由输出继电器组成的字元件K2Y0,但Y
15、3、Y4位不受字元件K2X0的控制而始终处于ON状态。可用字“或”指令屏蔽X3、X4位,程序如图5.25所示。,图5.26 字“或”指令的位运算过程,图5.25 应用字“或”指令的程序,5.4.3 逻辑字“异或”指令WXOR,表5.19 WXOR指令,1字“异或”指令WXOR的说明 (1)S1、S2为两个相“异或”的源操作数,D为存储“异或”逻辑结果的目标操作数。 (2)指令的功能是将两个源操作数的数据,进行二进制按位相“异或”,并将运算结果存入目标操作数。,2字“异或”指令WXOR举例 要求用输入继电器组成的字元件K2X0的相反状态去控制由输出继电器组成的字元件K2Y0,即X某位为“1”时,
16、Y的相应位为“0”;X某位为“0”时,Y的相应位为“1”。程序如图5.27所示。,图5.27 应用字“异或”指令的程序,图5.28 字“异或”指令运算过程,5.5 子程序调用指令及应用,图5.29 子程序调用与返回结构,5.5.1 子程序指令CALL、SRET与主程序结束指令FEND,表5.20 CALL、SRET、FEND指令,FEND指令表示主程序结束。END是指整个程序(包括主程序和子程序)结束。一个完整的程序可以没有子程序,但一定要有主程序。 子程序编写在FEND指令的后面,以标号P开头,以返回指令SRET结束。 如果子程序调用条件满足,则中断主程序去执行子程序,标号是被调用子程序的入口地址。在子程序结束处一定要使用返回指令SRET,意思是返回主程序中断处去继续执行主程序的下一条指令语句。 在子程序中,使用定时器的范围是T192T199。 如果在子程序中再调用其他子程序称为子程序嵌套,嵌套总数可达5级。 标号P63相当于END。 子程序调用指令CALL与跳转指令C