PLC应用技术3.4 知识点4数据处理指令

  • 格式:docx
  • 大小:2.71 MB
  • 文档页数:14

知识点4 数据处理指令1.知识目标(1)掌握数据处理指令的用法;(2)掌握高速处理指令的用法;(3)掌握部分方便指令、外部设备指令的用法;2.能力目标(1)能够运用功能指令编写8站小车的呼叫控制。

(2)能用功能指令编写花式喷泉控制程序(3)能用所学指令编写5台电动机顺序控制等控制程序。

(4)能用所学指令编写复杂彩灯控制程序并调试。

案例1引入:8站小车呼叫控制系统应用背景在工业生产和其他领域内,由于工作的需要,人们总是采用小车进行生产运输。

这可以减少工人的劳动强度,使人们避免受到其他的危害。

本项目将采用功能指令设计一个8站小车的呼叫控制系统,要求车所停位置号小于呼叫号时,小车右行至呼叫号处停车;车所停位置号大于呼叫号时,小车左行至呼叫号处停车;小车所停位置号等于呼叫号时,小车原地不动;小车运行时呼叫无效;同时小车在运行中具有左行、右行定向指示、原点不动指示;具有小车行走位置的七段数码管显示,如图4.4.1所示。

知识点4-数据处理指令一览1.区间复位指令ZRST(P)的编号为FNC40。

指令功能:它是将指定范围内的同类元件成批复位。

指令格式:如图所示,当X0由OFF→ON时,位元件M500~M599成批复位,字元件C235~C255也成批复位。

ZRST指令用法:1)[D1.]和[D2.]可取Y、M、S、T、C、D,且应为同类元件,同时[D1]的元件号应小于[D2]指定的元件号,若[D1]的元件号大于[D2]元件号,则只有[D1]指定元件被复位。

2)ZRST指令只有16位处理,占5个程序步,但[D1.][D2.]也可以指定32位计数器。

2.译码指令(1)译码指令DECO(P) 指令的编号为FNC41。

指令功能:根据n位输入的状态对2n个输出进行译码。

指令格式:如图所示,n=3 则表示[S.]源操作数为3位,即为X0、X1、X2。

其状态为二进制数,当值为011时相当于十进制3,则由目标操作数M7~M0组成的8位二进制数的第三位M3被置1,其余各位为0。

如果为000则M0被置1。

用译码指令可通过[D.]中的数值来控制元件的ON/OFF。

译码指令用法:1)位源操作数可取X、T、M和S,位目标操作数可取Y、M和S,字源操作数可取K,H,T,C,D,V和Z,字目标操作数可取T,C和D。

2)目标操作数为字元件T、C、D时应使用n≦4,因为字软元件是16位的,否则目标操作元件的位数将≥24(16),也将出错。

3)目标操作数为位元件Y、M、S时则n=1~8,因为当n>8时,目标软元件的位数将≥28(256),就会超出PLC的资源而出错。

译码指令(DECO)功能1)当[D]为字元件时,若以[S]为首地址的n位连续的位元件所表示的十进制码值为N,则DECO指令把以D为首地址的目标操作元件的第N位置1,其它位置0。

2)当[D]为字元件时,若以[S]所指定字元件的低n位所表示的十进制码为N,则DECO指令把以[D]所指定目标字元件的第N位置1,其它位置0。

3、编码指令ENCO(P)指令指令编号为FNC42。

指令功能:将2n个输入的状态按n位进行编码输出。

指令格式:如图3-55所示,当X1有效时执行编码指令,将[S.]中最高位的1(M3)所在位数(4)放入目标元件D10中,即把011放入D10的低3位。

编码指令用法:1)源操作数是字元件时,可以是T、C、D、V和Z;源操作数是位元件,可以是X、Y、M 和S 。

目标元件可取T 、C 、D 、V 和Z 。

编码指令为16位指令,占7个程序步。

2)源操作数为字元件时应使用n ≦4,因为字软元件是16位的,否则源操作元件的位数将≥24(16),也将出错。

3)源操作数为位元件时则n=1~8,因为当n>8时,源软元件的位数将≥28(256),就会超出PLC 的资源而出错。

4)若n=0时程序不作处理。

5)若指定源操作数中有多个1,则只有最高位的1有效。

编码指令ENCO 的功能1)当S 为位元件时,在以[S]为首地址、长度为2 n 的位元件中,最高位置1的位置被存放到目标[D]所指定的元件中,[D]中数值的位数由n 确定。

2)当S 为字元件时可作类似分析。

注:[S]内的多个位为1时,低位忽略不计。

实例2:用解码指令实现单开关控制5台电动机启停用一个开关实现5台电动机的顺序启动控制。

要求:合上X0,电动机M1~M5按顺序间隔6S 启动运行;断开开关,5台电动机同时停止。

(P231)4.七段译码指令SEGD 及其应用如图所示,将[S.]指定元件的低4位所确定的十六进制数(0~F )经译码后存于[D.]指定的元件中,以驱动七段显示器,[D.]的高8位保持不变。

如果要显示0,则应在D0中放入数据为3FH 。

指令格式:5、ASEII 码转换指令ASCII 码转换指令ASC (FNC76)的功能是将字符变换成ASCII 码,并存放在指定的元件中。

如图所示,当X3有效时,则将FX2A变成ASCII码并送入D300和D301中。

源操作数是8个字节以下的字母或数字,目标操作数为T,C,D。

它只有16位运算,占11个程序步。

案例1 8站小车呼叫与显示:步骤1:控制要求分析用功能指令设计一个8站小车的呼叫控制系统,其控制要求如下:①车所停位置号小于呼叫号时,小车右行至呼叫号处停车;②车所停位置号大于呼叫号时,小车左行至呼叫号处停车;③小车所停位置号等于呼叫号时,小车原地不动;④小车运行时呼叫无效;⑤具有左行、右行定向指示、原点不动指示;⑥具有小车行走位置的七段数码管显示。

步骤2:I/O点的确定与分配步骤3:I/O接线图绘制步骤4 程序设计及调试 根据控制要求编写PLC 程序根据PLC 编程控制要求。

小车初始位置应停在8个工作站中的任意一个,并压合该站点的位置开关;当启动开关(SA )开启后,系统开始运行,可接受工作站的呼叫。

设小车当前停靠在n 号工作站,m 号工作站有呼叫信号,即SQn 压合,SBm 呼叫按钮按下,则:(1)车所停位置号小于呼叫号时,小车右行至呼叫号处停车; (2)车所停位置号大于呼叫号时,小车左行至呼叫号处停车; (3)小车所停位置号等于呼叫号时,小车原地不动; (4)小车运行时呼叫无效;(5)具有左行、右行定向指示、原点不动指示; (6)具有小车行走位置的七段数码管显示。

(7)编制梯形图。

按照上述要求编制梯形图如图4.4.3所示。

图4.4.2 8站小车的呼叫控制I/O 接线练一练 1、试用SFTL 指令实现广告牌的闪耀控制。

要求:用HL1~HL4分别照亮“欢迎光临”四个字,其控制流程如下,HL1~HL4每个灯间隔1S 轮流点亮 →全亮2S →闪亮4S (间隔1S )→全亮1S →全灭。

(P233)2、 试用DECO 指令实现某喷水池花式喷水控制。

第一组喷水4S →第2组喷水2S →均停1S →重复上述过程。

(P223)6. ON 位数统计和ON 位判别指令(1)ON 位数统计指令 (D)SUM(P)指令的编号为FNC43。

指令功能:该指令是用来统计指定元件中1的个数,并将结果送入目标操作数。

指令格式:如图所示,当X0有效时执行SUM 指令,将源操作数D0中1的个数送入目标操作数[D2]中,若D0中没有1,则零标志M8020将置1。

指令用法:1)源操作数可取所有数据类型,目标操作数可取KnY ,KnM ,KnS ,T ,C ,D ,V 和Z 。

图4.4.3 8站小车呼叫程序2)16位运算时占5个程序步,32位运算则占9个程序步。

(2)ON位判别指令(D)BON(P)指令的编号为FNC44。

指令功能:用于检测指定元件中的指定位是否为1。

指令格式:如图所示,当X1为有效时,执行BON指令,由K4决定检测的是源操作数D10的第4位,当检测结果为1时,则目标操作数M0=1,否则M0=0。

指令用法:1)源操作数可取所有数据类型,目标操作数可取Y、M和S。

2)进行16位运算,占7程序步,n=0~15;32位运算时则占13个程序步,n=0~31。

7.报警器复位指令(ANR)报警器复位指令ANR无操作数,如图(b)所示,若X3接通,则信号报警器S900~S999中正在动作的信号报警器复位。

如果多个信号报警器动作,则将新地址号的状态复位。

若将X3再次接通,则下一地址号的信号报警器复位。

8.平均值指令(MEAN)平均值指令MEAN是用来求n(1~64)个操作数[S]的代数和被n除的商,商存在[D]中,余数略去,如图(a)所示。

9.二进制平方根指令(SQR)平方根指令SQR的源操作数[S]应大于零,可取K、H、D,目标操作数为D。

如图10-11(b)所示,X2为ON时,将存放在D45中的数开平方,结果存放在D123内,即→(D123)。

计算结果舍去小数,只取整数。

M8023为ON时,将对32位浮点数开方,结果为浮点数。

源操作数为整数时,将自动转换为浮点数。

如果源操作数为负数,运算错误标志M8067将为ON。

10.二进制整数与二进制浮点数转换指令(FLT)二进制整数→二进制浮点数转换指令(D)FLT(P)的编号为FNC49。

如图所示,当X1有效时,将存入D10中的数据转换成浮点数并存入D12中。

指令格式:二进制整数与二进制浮点数转换指令FLT的源操作数和目标操作数均为D。

指令含义:如图10-11(c)所示,当X4为ON时,且M8023(浮点数标志)为OFF 时,该指令将存在源操作数D10中的数据转换为浮点数,并将结果存放在目标寄存器D13和D12中。

M8023为ON时,将把浮点数转换为整数。

用于存放浮点数的目标操作数应为双整数,源操作数可以是整数或双整数。

使用FLT指令时应注意:1)源和目标操作数均为D。

2)16位操作占5个程序步,32位占9个程序步。

11.高低字节交换指令(SW AP)一个16位的字由两个8位的字节组成。

在进行16位运算时,高低字节交换指令SWAP 能够交换源操作数的高字节和低字节。

在进行32位运算时,会先交换低位字的高字节和低字节,再交换高位字的高字节和低字节。

高速处理指令(FNC50~FN59)(扩展知识点)12.输入输出相关的指令(1)输入输出刷新指令REF REF(P)指令的编号为FNC50。

FX系列PLC采用集中输入输出的方式。

如果需要最新的输入信息以及希望立即输出结果则必须使用该指令。

如图所示,当X0接通时,X10~X17共8点将被刷新;当X1接通时,则Y0~Y7、Y10~Y17、共16点输出将被刷新。

使用REF指令时应注意:1)目标操作数为元件编号个位为0的X和Y,n应为8的整倍数。

2)指令只要进行16位运算,占5个程序步。

(2)滤波调整指令REFF REFF(P)指令的编号为FNC51。

在FX系列PLC中X0~X17使用了数字滤波器,用REFF指令可调节其滤波时间,范围为0~60ms(实际上由于输入端有RL滤波,所以最小滤波时间为50μs)。