配色: 字号:
第7章 应用指令2
2022-12-15 | 阅:  转:  |  分享 
  
第7章 应用指令的程序设计7.1 字逻辑运算指令7.3 方便类指令7.2 数据处理指令7.4 外部I/O设备指令7.5 FX系列外部
设备指令7.6 浮点数运算指令7.7 时钟运算指令7.8 高速处理指令7.1 字逻辑运算指令字逻辑运算指令包括:WAND
(字逻辑与,FNC 26)、WOR (字逻辑或,FNC 27)、WXOR (字逻辑异或,Exclusive Or,FNC 28)N
EG (求补,Negation,FNC 29)使用举例:当X000为ON,则D0与D2进行位与运算,并将运算结果存入D4位与数字逻
辑运算的结果求补运算指令使用举例:将[D]指定的数的每一位取反后再加1,结果存于同一元件内。(注:结果会将原始数据覆盖)7.2
数据处理指令数据处理指令包含区间复位、编译码指令、平均数计算等。见下表:7.2.1区间复位指令 ZRST 7.2.2解码指令DEC
O 7.2.2解码指令DECO D0D17.2.3编码指令ENCO ENCO(Encode) 同DECO指令相反,将源数据内1所在
的位号转换成二进制码。功能:举例:7.2.4求置ON位总数指令 SUM 功能:统计源操作数中为ON的位的个数7.2.5 ON位判别
指令BON功能:举例:用来检测指定元件中的指定位是否为ON7.2.6平均值指令MEAN 功能:举例:用来求n个源操作数的代数和被n
除的商7.2.7 定时信号警报器设定/复位指令ANS / ANR功能:举例:启动一个定时器,当它时间到设定计时周期后,将信号报
警器设置为ON7.2.8二进制平方根指令SQR 功能:举例:计算源数据的平方根,将结果保持到目标元件中。7.2.9 浮点数转换指令
FLT 功能:举例:该指令将存放在源操作数中的数据转换为浮点数,并将结果存放在目标寄存器7.2.10高低字节交换指令SWAP 功能
:举例:该指令交换源操作数的高字节和低字节7.3方便指令方便类指令可以利用最简单的顺控程序进行复杂控制。见下表:7.3.1 状态初
始化指令IST 功能:举例:状态初始化指令IST(Initial State)与STL(步进梯形)指令一起使用,用于自动设置多种工
作方式的系统的顺序控制编程。7.3.2 数据搜索指令SER 功能:举例:用于在数据表中查找指定的数据被搜索的数据搜索结果7.3.3
绝对值式凸轮顺控指令ABSD 功能:举例:ABSD(Absolute Drum)可以产生一组对应于计数值变化的输出波形,用来控制最
多64个输出变量(Y、M和S)的ON/OFF在指令表图的程序中,有4个输出点(n=4)用M0~M3来控制。对应于旋转台旋转一周期间
,M0~M3的ON/OFF状态变化是受凸轮通过X1提供的角度位置脉冲(1o/脉冲)控制的。D300的数据如表7-4所示: 表
7-4 D300的数据对照表图7-6 绝对值式凸轮M0-M3输出示意图若X0为OFF,各输出点的状态不变。本指令只能使用一次。7
.3. 4 增量式凸轮顺控指令INCD功能:举例:INCD(Increment Drum)指令根据计数器对位置脉冲的计数值,实现对
最多64个输出变量(Y、M和S)的循环顺序控制,使它们依次为ON,并且同时只有一个输出变量为ON。INCD指令用来产生一组对应于计
数值变化的输出波形。在指令表图的程序中,有4个输出点(n=4)用M0~M3来控制,它们的ON/OFF状态受凸轮提供的脉冲个数控制。
从D300开始的4个(n=4)数据寄存器,用来存放使M0~M3处于0N状态的脉冲个数,可以用MOV指令将它写入D300~D303,
指令表图中D300~D303的值分别为20、30、10和40。7.3.5 示教定时器指令TTMR 功能:举例:使用TTMR指令可以
用一只按钮调整定时器的设定时间。指令表图中的示教定时器将按钮X10按下的时间乘以系数10n后作为定时器的预置值,按钮按下的时间由D
301记录,该时间乘以10n后存入D300。即n=0时存入t,n=1时存入10t,n=2时存入100t。X10为OFF时,D301
复位,D300保持不变。7.3.6特殊定时器指令STMR 功能:举例:特殊定时器指令用来产生延时断开定时器、单脉冲定时器和闪动定时
器。图7-9 特殊定时器指令动作示意图7.3.7交替输出指令ALT 功能:举例:当指令中的输入信号由OFF变为ON时,ALT对应的
D元件的状态改变一次,7.3.8 斜坡信号输出指令RAMP 功能:举例:斜坡信号输出指令RAMP的源操作数和目标操作数均为D,n=
1~32 767。该指令只能作16位运算。图7-11斜坡信号输出7.3.9旋转工作台控制指令ROTC功能:举例:旋转工作台控制指令
ROTC使工作台上指定位置的工件以最短的路径转到出口位置。表7-6 M0-M7输出表表7-7 D200-D202功能表7.3.
10 数据排序指令SORT功能:举例:SORT的源操作数和目标操作数均为D。SORT指令将数据编号,按指定的内容重新排列,该指令只
能使用一次。表7-8 数据进行排序原表表7-9 数据排序表1 表7-10 数据排序
表27.4 外部I/O设备指令外部I/O设备指令PLC是可供与外部设备交换数据的指令,这类指令可以通过最少的程序和外部接线,简单地
进行复杂的控制。见下表:7.4.1十键输入指令TKY 功能:举例:使用外部的十个按键,组成0-9的十个数字,可作为输入键盘7.4.
2键输入指令HKY 功能:举例:使用外部的十六个按键,组成0-9,A-F的十六个数字,可作为16进制输入键盘HKY指令输入的数字0
~9 999以二进制数的方式存放在D0中,大于9 999时溢出。DHKY双字指令可以在D0和D1中存放数字0~99 999 999
。按下任意一个数字键时M7置1(不保持)。功能键A~F与M0~M5相对应,按下任意一个功能键时M6置1(不保持)。7.4.3数字开
关指令DSW 功能:举例:DSW指令用于读入一组或两组4位BCD码数字开关的设置值,占用PLC的4个或8个输入点和4个输出点。图中
的第一组4位BCD码数字开关接到X10~X13,按Y10~Y13的顺序选通读入,数据以二进制数的形式存放在D0中。n=2时有两组数
字开关,第二组数字开关接到X14~X17,仍由Y10~Y13顺序选通读入,数据以二进制数的形式存放在D1中。7.4.4 7段译码
指令SEGD 功能:举例:SEGD(Seven Segment Decoder)将源操作数[S]指定的元件的低4位中的十六进制数(
0~F)译码后送给7段显示器显示7.4.5带锁存的7段显示指令SEGL功能:举例:SEGL(Seven Segment with
Latch)用12个扫描周期显示一组或两组4位数据,占用8个或12个晶体管输出点。图中若使用一组输出(n=0~3),DO中的二进制
数据转换为BCD码(0~9 999),各位依次送到Y0~Y3。若使用两组输出(n=4~7),DO中的数据送到Y0~Y3,D1中的数
据送到Y10~Y13,选通信号由Y4~Y7提供。7.4.6方向开关ARWS功能:举例:用方向开关(4只按钮)来输入4位BCD数据。
移位按钮用来移动输入和显示的位,增加键和减少键用来修改该位的数据。ARWS指令将数据写入DO,DO中存放的是十六进制数,但为了方便
以BCD码表示(0~9 999)。X0刚接通时,指定的是最高位,每按一次右移键,指定位往右移动一位,按一次左移键时则往左移动一位,
指定位由接到显示器的选通信号(Y4~Y7)上的LED发光二极管来确认。图7-21使用方向开关指令修改定时器设定值的外部接线图7.4
.7 ASCⅡ码转换指令ASC 功能:举例:ASC指令将字符变为ASCⅡ码并存放在指定的元件中。7.4.8 ASCⅡ码打印指令PR
功能:举例:PR指令用于ASCⅡ码的打印输出,PR指令和ASCⅡ指令配合使用,可以用外部显示单元显示出错信息等。7.5 FX系列
外部设备指令FX系列外部设备指令(FNC80~89)包括与串行通信有关的指令、模拟量功能扩展板处理指令和PID运算指令。见下表:7
.5.1 并联运行指令 PRUN功能:举例:用于控制FX的并行链接适配器FX2-40AW/AP,它将源数据传送到位发送区,并行链
接通信用特殊M标志控制。7.5.2 HEX→ASCⅡ码转换指令ASCI 功能:举例:该指令将源操作数中的16进制数转换为ASCⅡ
码。7.5.3 ASCⅡ→HEX转换指令HEX 功能:举例:该指令将源操作数中最多256个ASCⅡ码转换为4位HEX数7.5.4
校验码指令CCD 功能:举例:该指令将源操作数指定的连续n个字节的8位二进制数据求和并异或校验7.5.5 FX-8AV模拟量功能扩
展板读出指令VRRD 功能:举例:该指令可在内置8路AD机型的PLC上读取模拟量7.5.6 FX-8AV模拟量功能扩展板开关设定指
令VRSC 功能:举例:VRSC指令将电位器读出的数四舍五入,整量化为0~10的整数值,存放在[D]中,7.5.7 PID回路运
算指令PID 功能:举例:PID指令是用来调用PID运算程序,在PID运算开始之前,应使用MOV指令将参数设定值预先写入对应的数据
寄存器中。7. 6 浮点数运算指令浮点数运算指令包括浮点数的比较、变换、四则运算、开平方和三角函数等指令,浮点数为32位数。见下表
:7.6.1浮点数比较指令ECMP 功能:举例:ECMP指令用来比较源操作数[S1]和[S2],比较结果用目标操作数[D]指定的元
件的ON/OFF状态来表示。7.6.2浮点数区间比较指令EZCP功能:举例: 将[S3]指定的浮点数与提供比较范围的源操作数[S1
]和[S2]相比较,比较结果用目标操作数指定的元件的ON/OFF状态来表示7.6.3浮点数转换指令EBCD功能:举例:将2进制浮点
数→10进制浮点数转换7.6.4 浮点数转换指令EBIN功能:举例:将10进制浮点数→2进制浮点数转换【例7.2】将数3.14转换
为二进制浮点数。下面是满足此要求的指令表程序:7.6.5 浮点数转换为二进制整数INT功能:举例:2进制浮点数—BIN整数转换7.
6.6 浮点数的加法指令EADD 与减法指令ESUB功能:举例:对两源操作数进行加法/减法后,结果存入目标操作数中注:带D的指令为
双字节运算7.6.7浮点数的乘法指令EMUL 与除法指令EDIV功能:举例:对两源操作数进行乘法/除法后,结果存入目标操作数中【例
7.3】将D0中的16位整数和由X0~X7输入的2位BCD码数(X0输入的为最低位,X7输入的为最高位)转换为浮点数,然后进行下式
中的浮点数运算:(D0)÷(X7~X0)×34.5→(D11,D10)运算结果转换为十进制浮点数和32位二进制整数。7.6.8 浮
点数开平方指令ESQR功能:举例:对源操作数进行开方运算,并将结果存入目标操作数中7.6.9浮点数三角函数运算指令SIN/COS/
TAN功能:举例:对源操作数进行三角函数运算【例7.4】在X0的上升沿求sin45的浮点数值。下面是满足此要求的指令表程序:7.
7 时钟运算指令PLC内的实时钟 年、月、日、时、分和秒分别存放在D8018~D8013中,星期存放在D8019中7. 7 时钟运
算指令三菱PLC对时钟运算的指令有如下几条:7.7.1时钟数据比较指令TCMP功能:举例:该指令用来比较指定时刻与时钟数据的大小。
7.7.2 时钟数据区间比较指令TZCP功能:举例:将[S]中的时间与[S1],[S2]指定的时间区间相比较,比较的结果用来控制[
D]~[D]+2的ON/OFF7.7.3 时钟数据加法指令TADD功能:举例:TADD指令将两个源数据中的时钟数据相加后存入目标数
据中7.7.4 时钟数据减法指令TSUB功能:举例:TSUB指令将两个源数据中的时钟数据相减后存入目标数据中7.7.5 时钟数据读
出指令TRD功能:举例:该指令用来读出内置的实时钟的数据,并存放在[D]开始的7个字内。7.7.6时钟数据写入指令TWR功能:举例
:该指令用来将时间设定值写入内置的实时钟,写入的数据预先放在[S]开始的7个单元内。【例7.5】将PLC的实时钟设置为2015年3
月15日(星期一)10时30分25秒。下面是满足此要求的指令表程序图7-26:7.7.7 小时定时器指令HOUR功能:举例:小时定
时器指令HOUR中,在[D1]超过[S]时,则报警输出([D2])变为ON。7. 8 高速处理指令 FX系列PLC的高速处理指令,
这些指令使得用户可以用最新的输入输出程序控制,并能有效地利用PLC的高速处理能力进行中断处理。7.8.1 输入输出刷新指令REF功
能:举例:REF指令是将X或Y的n位继电器值进行立即刷新。7.8.2 滤波调整 REFF 功能:举例:用REFF指令可调节其滤波时
间,范围为0~60ms(实际上由于输入端有RL滤波,所以最小滤波时间为50μs)。7.8.3 矩阵输入MTR功能:举例:指令可以将
8点输入与n点输出构成8行n列的输入矩阵,从输入端快速,批量接收数据。指令表中S(?)只能指定X000,X010,X020……等最
低位为0的X作起始点,占用连续8点输入,通常选用X010以后的输入点,若选用输入X000~X017虽可以加快存储速度,但会因输出晶
体管还原时间长和输入灵敏度高而发生误输入,这时必须在晶体管输出端与COM之间接3.3K?/0.5W负载电阻;D1(?)只能指令Y0
00,Y010,Y020……等最低位为0的Y作起始点,占用n点晶体管输出;D2(?)可指定Y,M,S作为储存单元,下标起点应为0,
数量为8xn。因此,使用该指令最大可以用8点输入和8点晶体管输出存储64点输入信号。表图指令中n=3,是一个8点输入,3点输出,可
以存储24点输入的矩阵。图(a)是指令的矩阵电路,3点输入Y020,Y021,Y022依次反复为ON,每一次第一列,第二列,第三列
的输入依次反复存储,存入M30~M37,M40~M47,M50~M57中。存储顺序如图(b)所示。驱动条件应采用M8000,PLC
运行中,常置于ON状态,确保指令正常工作。7.9运算指令实训工业人机界面Human Machine Interface,简称HMI
,又称触摸屏监控器,是一种智能化操作控制显示装置。工业人机界面以特殊设计的计算机系统32位RISC CPU芯片为核心,在STN、T
FT液晶显示屏或EL电发光显示器上罩盖有透明的电阻网络式触摸屏。触动屏幕时,电阻网络上的电阻和电压发生变化并由软件计算出触摸位置。
HMI的主要功能有:数据的输入与显示;系统或设备的操作状态方面的实时信息显示;在HMI上设置触摸控件可把HMI作为操作面板进行控
制操作;报警处理及打印;此外,新一代工业人机界面还具有简单的编程、对输入的数据进行处理、数据登录及配方等智能化控制功能。 7.9.
1实训内容内容1:密码锁开锁,判断密码,然后开锁。报警器置位复位指令ANS (FNC 46)及复位指令ANR内容2 :测试HKY指
令,测试数字开关指令DSW指令。内容3:测试绝对值式凸轮顺控指令ABSD,使用该指令设计交通灯。内容4:状态初始化指令IST,完成机械手程序设计,接线图见第五章。内容5:测试浮点数转换指令FLT,再由常数转换浮点数指令,显示在触摸屏上。内容6:测试旋转工作台控制指令ROTC。内容7:测试方向开关ARWS,并制作显示电路。内容8:MTR 矩阵输入指令。本章小结 本章介绍了FX2N系列PLC的除数据传送、算术运算、循环移位与移位、比较、程序流向控制之外功能指令。这些有200多条功能指令(也称为功能指令)。字逻辑运算指令、浮点运算、定位、时钟运算、方便指令、格雷码变换、外部设备等功能指令,实际上是许多功能不同的子程序。与基本逻辑指令只能完成一个特定动作,功能指令能完成实际控制中的许多不同类型的操作,能完成一系列的操作,使可编程控制器的功能变得更强大,这些指令并不是使程序设计变得难了,而是使程序变得简单了。习 题 七 设计题:1、5、6。本章学习结束。Goodbye!
献花(0)
+1
(本文系籽油荃面原创)