项目6功能指令的应用

上传人:xiao****1972 文档编号:74032066 上传时间:2019-01-26 格式:PPT 页数:46 大小:3.28MB
返回 下载 相关 举报
项目6功能指令的应用_第1页
第1页 / 共46页
项目6功能指令的应用_第2页
第2页 / 共46页
项目6功能指令的应用_第3页
第3页 / 共46页
项目6功能指令的应用_第4页
第4页 / 共46页
项目6功能指令的应用_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《项目6功能指令的应用》由会员分享,可在线阅读,更多相关《项目6功能指令的应用(46页珍藏版)》请在金锄头文库上搜索。

1、项目6 功能指令的应用,2,引言,PLC的基本指令是基于继电器、定时器、计数器类等软元件,主要用于逻辑处理的指令。作为工业控制计算机,PLC仅有基本指令是远远不够的。现代工业控制在许多场合需要数据处理,因而PLC制造商在PLC中引入应用指令,也称功能指令。 FX系列PLC除了基本指令、步进指令外,还有200多条功能指令。可分为程序流向控制、数据传送与比较、算术与逻辑运算、数据移位与循环、数据处理、高速处理、方便指令、外部设备通信(I/O模块、功能模块)、浮点运算、定位运算、时钟运算、触点比较等几大类。功能指令实际上就是许多功能不同的子程序。,3,6.1 工作模块12 八盏流水灯控制程序,控制要

2、求: 8盏流水灯每隔1s顺序点亮,并不断循环,采用功能指令编程更简单,经验设计法还是顺序功能图设计法?,一、任务导入,4,1.功能指令的基本格式,梯形图格式,指令表格式,步序 操作码 操作数 0 LD X0 1 MEAN D0 D10 K3 8 。,二、相关知识,5,操作码与操作数 操作码(指令助记符):表示指令的功能 操作数:指明参与操作的对象 源操作数S:执行指令后数据不变的操作数,两个或两个以上时 为S1、S2 目标操作数D:执行指令后数据被刷新的操作数,两个或两个以上时为D1、D2。如果可使用变址功能,用S和D表示。 其它操作数m、n:补充注释的常数,用K(十进制)和H(十六进制)表示

3、,作为源和目标操作数的补充说明,两个或以上时为m1、m2、n1、n2。,6,2.数据长度及执行方式,数据长度 16位:参与运算的数据默认为16位二进制数据 32位:32位数据时在操作码前面加D(Double),(D0)(D1),(D3D2)(D5D4),对于32位功能指令,其助记符在16位指令助记符上添加符号D。,7,执行方式 连续执行方式:每个扫描周期都重复执行一次, 操作数的内容每个扫描周期都变化。 脉冲执行方式:只在信号OFFON时执行一次, 在指令后加P(Pulse)。,8,数据格式 在FX系列PLC内部,数据是以二进制(BIN)补码的形式存储,所有的四则运算都使用二进制数。 二进制补

4、码的最高位为符号位,正数符号位为0,负数符号位为1。 为更精确地进行运算,可采用浮点数运算。在FX系列PLC中提供了二进制浮点运算和十进制浮点运算 。,9,数据寄存器(D) 通用数据寄存器D0D199共200点。 只要不写入其它数据,已写入的数据不会变化。但是PLC状态由运行停止时,全部数据均清零。 断电保持数据寄存器D200 D511共312点,只要不改写,原有数据不会丢失。 特殊数据寄存器D8000 D8255共256点 这些数据寄存器供监视PLC中各种元件的运行方式用。 文件寄存器D1000 D2999共2000点。,10,3.传送指令 FNC12 MOV,传送指令FNC12 MOV (

5、D)MOV(P) 该指令的功能是将源数据传送到指定的目标。,操作数 S1: 所有数据类型 D:KnY、KnM、KnS、T、C、D、V、Z。 梯形图,K100D10,11,(一)I/O资源分配:,输入信号: 起动按钮X20 停止按钮X21; 输出信号: 8盏灯Y0Y7。,三、任务实施,12,(二)程序设计,13,6.2 工作模块13 抢答器控制程序设计,一、任务导入,14,1.子程序调用指令CALL和子程序返回指令SRET,二、相关知识,15,2.子程序指令,子程序调用指令 FNC01 CALL 操作数:指针P0P127 子程序返回指令 FNC02 SRET 无操作数 说明 子程序应该在主程序结

6、束之后编程。 CJ指令的指针与CALL的指针不能重复。 子程序允许嵌套,嵌套级别最多为5级。 子程序只能用T192T199和T246T249作定时器。,16,3.主程序结束指令FEND,主程序结束指令FEND无操作数。 FEND表示主程序结束,当执行到FEND时,PLC进行输入/输出处理,监视定时器刷新,完成后返回起始步。 END是指整个程序(包括主程序和子程序)结束。 一个完整的程序可以没有子程序,但一定要有主程序。,使用FEND指令时应注意: (1)子程序和中断服务程序应放在FEND之后。 (2)子程序和中断服务程序必须写在FEND和END之间,否则出错。,17,(一)I/O资源分配,三、

7、任务实施,18,(二)程序设计,19,6.3 工作模块14 自动售货机的PLC控制,控制要求: 此自动售货机可投入1元、5元或10元硬币,投完币后,确认,投币显示灯灭。 当投入的硬币总值等于或超过12元时,食品指示灯亮;当投入的硬币总值超过15元时,食品、饮料指示灯都亮。 当食品指示灯亮时,按食品按钮选择要购买的食品,按购买键确认后,食品指示灯灭,出货口指示灯亮,显示正出物品,一会熄灭。 当饮料指示灯亮时,按饮料按钮选择要购买的饮料,按购买键确认后,饮料指示灯灭,出货口指示灯亮,显示正出物品,一会熄灭。 若投入硬币总值超过购物所需钱数时,则退币处的指示灯亮,显示正在进行退币工作,退完币后,退币

8、指示灯熄灭,等待下一次售货。,一、任务导入,20,1.算术运算指令,二进制加减运算指令 加法 FNC20 ADD (Addition) 减法 FNC21 SUB (Subtraction) 操作数 S1、S2:K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z D:KnY、KnM、KnS、T、C、D、V,Z 梯形图,二、相关知识,21,说明 指令是代数加减运算,数据的最高位为符号位。 进行16位加减运算时,数据范围为3276832767;32位运算时,数据范围为21474836482147483647。 运算结果为0时,零标志置位(M8020=1);运算结果大于32767(或21474

9、83647)时,进位标志置位(M8022=1);运算结果小于32768(或2147483648)时,借位标志置位(M8021=1)。 该指令可以进行连续/脉冲执行方式。,22,2.二进制乘除运算指令,乘法 FNC22 MUL (Multiplication) 除法 FNC23 DIV (Division) 操作数 S1、S2:K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z D:KnY、KnM、KnS、T、C、D、V,Z 梯形图,23,说明 指令进行二进制运算,数据最高位为符号位。 可以进行16/32位乘除运算,16位运算时,积为32位数据,商和余数为16位数据;32位运算时,积为6

10、4位数据,商和余数为32位数据。 0作除数时程序出错。被除数和除数中有一个为负数时,商为负数;被除数为负数时,余数也为负数。 位元件作为32位乘法运算的目标元件时,只能得到积的低32位数据。 可以进行连续/脉冲执行方式。,24,3.比较指令 FNC10 CMP (Compare),操作数 S1、S1 : K,H、KnX、KnY、KnM、KnS、T、C、D、V、Z D:Y、M、S 梯形图,25,说明 该指令是将源操作数S1和S2的中数据进行比较,结果送目标操作数D中去。 D由3个元件组成,指令中D给出首地址,其它两个为后面的相邻元件。 当X0由ONOFF时,不执行CMP指令,M0M2保持断开前的

11、状态,用复位指令RST才能清除比较结果。 CMP是进行二进制代数比较。 可以32位二进制数比较和脉冲执行方式。 如果指令中指定的操作数不全、元件超出范围、软元件地址不对时,程序出错。,26,I/O资源分配,三、任务实施,27,程序设计,28,29,6.4 工作模块15 五台电机的启停,控制要求: 用按钮实现5台电机的启停控制。按钮按数次,最后一次保持1s以上后,则号码与次数相同的电机运行,再按按钮,该电机停止。,一、任务导入,30,解码与编码指令 解码(译码)指令FNC40 DECO (Decode) 编码指令FNC41 ENCO(Encode),DECO操作数 S:K、H、X、Y、M、S、T

12、、C、D、V、Z D:Y、M、S、T、C、D,ENCO操作数 S:X、Y、M、S、T、C、D、V、 D:T、C、D、V、Z,二、相关知识,31,编码与解码指令使用说明,图a中:X002X000组成的3位(n3)二进制数为011, 相当于十进制数3,由目标操作数M7M0组成的8位二进制 数的第3位(M0为第0位)M3被置1,其余各位为0。如源数 据全零,则M0置1。 图b中:n=3,编码指令将源元件M7M0中为“1”的M3的位 数3编码为二进制数011,并送到目标元件D10的低3位。,32,解:根据控制要求,梯形图如图6-54所示。输入电机编号的按钮接于X0,电机号数使用加1指令记录在K1M10

13、中。DECO指令则将K1M10中的数据解读并令M0右侧和K1M10中数据相同的位元件置1。M9及T0用于输入数字确认和停车复位控制。Y0-Y4接五台电机。,三、任务实施,33,6.5 工作模块16 机械手的PLC控制,一、任务导入,图 机械手动作示意图,34,控制要求: 如上图所示是一气动机械手,其功能是将工件从A处送到B处。气动机械手的升降和左右移行分别使用了双线圈的电磁阀,在某方向的驱动线圈失电时能保持在原位,必须驱动反方向的线圈才能反向运动。上升、下降对应的电磁阀线圈分别是YV2、YVl,右行、左行对应的电磁阀线圈分别是YV3、YV4。机械手的夹钳使用单线圈电磁阀YV5,线圈通电时夹紧工

14、件,断电时松开工件。通过设置限位开关SQl、SQ2、SQ3、SQ4分别对机械手的下降、上升、右行、左行进行限位,而夹钳不带限位开关,它是通过延时1.7s来表示夹紧和松开动作的完成。,35,状态初始化指令 状态初始化指令FNC60 IST(Initial State)与步进梯形STL指令一起使用, 用于自动 设置多种工作方式的控制系统的初始状态,以及设置有关的特殊辅助 继电器的状态。指令中S指定运行模式的初始输入。,操作数 S: X、Y、M D1 D2 :S20S899 D1D2,状态初始化及数据搜索指令使用说明,二、相关知识,36,IST指令的源操作数可取X、Y和M,用来指定与工作方式有关的首

15、地址,它实际指定了从首址开始的8个连续号的同类元件具有以下意义: X20:手动 X24:连续运行(全自动) X21:回原点 X25:回原点启动 X22:单步运行 X26:自动运行启动 X23:单周运行(半自动) X27:停止,IST指令的目标操作数D1和D2用来指定在自动 操作中用到的状态元件的最低和最高元件号,可取S20S899。,IST指令执行条件满足时,S0、S1、S2和下列特殊辅助继电器 被自动设定为以下功能;若以后执行条件变为OFF,这些元件 的功能仍然保持不变,37,如上图所示为机械手的操作面板,机械手能实现手动、回原位、单步、单周期和 连续等五种工作方式。手动工作方式时,用各按钮

16、的点动实现相应的动作;回原 位工作方式时,按下“回原位”按钮,则机械手自动返回原位;单步工作方式时, 每按一次启动按钮,机械手向前执行一步;选择单周期工作方式时,每按一次启 动按钮,机械手只运行一个周期就停下;连续工作方式时,机械手在原位,只要 按下启动按钮,机械手就会连续循环动作,直到按下停止按钮,机械手才会最后 运行到原位并停下;而在传送工件的过程中,机械手必须升到最高位置才能左右 移动,以防止机械手在较低位置运行时碰到其他工件。,三、任务实施,38,I/O资源分配,39,(2)PLC接线图,40,机械手的控制程序,41,6.6 其他一些功能指令,(一)块传送指令 FNC15 BMOV,操作数 S:K,H、KnX、KnY、KnM、KnS、T、C、

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号