PLC应用技术34 知识点4数据处理指令.docx

上传人:b****8 文档编号:30676220 上传时间:2023-08-19 格式:DOCX 页数:19 大小:821.11KB
下载 相关 举报
PLC应用技术34 知识点4数据处理指令.docx_第1页
第1页 / 共19页
PLC应用技术34 知识点4数据处理指令.docx_第2页
第2页 / 共19页
PLC应用技术34 知识点4数据处理指令.docx_第3页
第3页 / 共19页
PLC应用技术34 知识点4数据处理指令.docx_第4页
第4页 / 共19页
PLC应用技术34 知识点4数据处理指令.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

PLC应用技术34 知识点4数据处理指令.docx

《PLC应用技术34 知识点4数据处理指令.docx》由会员分享,可在线阅读,更多相关《PLC应用技术34 知识点4数据处理指令.docx(19页珍藏版)》请在冰豆网上搜索。

PLC应用技术34 知识点4数据处理指令.docx

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

知识点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也成批复位。

指令名称

助记符

指令代码位数

操作元件范围

程序步

[D1·]

[D2·]

ZRST、ZRSTP…5步

区间复位

ZRST

ZRST(P)

FNC40◥

(16)

Y、M、S、T、C、D

(D1元件号≤D2元件号)

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。

指令名称

助记符

指令代码位数

操作元件范围

程序步

[S·]

[D·]

n

译码

DECO

DECO(P)

FNC41◥

(16)

K、H、X、Y、M、S、T、C、D、V、Z

Y、M、S

T、C、D

K、H

1≤n≤8

DECO、DECOP…7步

译码指令用法:

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]为首地址、长度为2n的位元件中,最高位置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。

指令格式:

指令名称

助记符

指令代码位数

操作元件范围

程序步

[S·]

[D·]

七段码

译码

SEGD

SEGD(P)

FNC73

(16)

K、H、KnX、KnY、KnM、KnS、T、C、D

KnY、KnM、KnS、T、C、D、V、Z

SEGD、

SEGDP…7步

5、ASEII码转换指令

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

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

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

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

 

案例18站小车呼叫与显示:

步骤1:

控制要求分析

用功能指令设计一个8站小车的呼叫控制系统,其控制要求如下:

1车所停位置号小于呼叫号时,小车右行至呼叫号处停车;

2车所停位置号大于呼叫号时,小车左行至呼叫号处停车;

3小车所停位置号等于呼叫号时,小车原地不动;

4小车运行时呼叫无效;

5具有左行、右行定向指示、原点不动指示;

6具有小车行走位置的七段数码管显示。

步骤2:

I/O点的确定与分配

输入

X0

SB1

X5

SB6

X10

SQ3

X15

SQ8

X1

SB2

X6

SB7

X11

SQ4

X2

SB3

X7

SB8

X12

SQ5

X3

SB4

X8

SQ1

X13

SQ6

X4

SB5

X9

SQ2

X14

SQ7

输出

YO

正转KM1

Y1

反转KM2

Y4

左行指示灯

Y5

右行指示灯

Y10-Y16

数码管abcdefg

步骤3:

I/O接线图绘制

步骤4程序设计及调试

根据控制要求编写PLC程序

根据PLC编程控制要求。

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

设小车当前停靠在n号工作站,m号工作站有呼叫信号,即SQn压合,SBm呼叫按钮按下,则:

(1)车所停位置号小于呼叫号时,小车右行至呼叫号处停车;

(2)车所停位置号大于呼叫号时,小车左行至呼叫号处停车;

(3)小车所停位置号等于呼叫号时,小车原地不动;

(4)小车运行时呼叫无效;

(5)具有左行、右行定向指示、原点不动指示;

(6)具有小车行走位置的七段数码管显示。

(7)编制梯形图。

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

练一练

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。

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.高低字节交换指令(SWAP)

一个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)。

如图3-61所示,当X0接通时,执行REFF指令,滤波时间常数被设定为1ms。

 

使用REFF指令时应注意:

1)REFF为16位运算指令,占7个程序步。

2)当X0~X7用作高速计数输入时或使用FNC56速度检测指令以及中断输入时,输入滤波器的滤波时间自动设置为50ms。

(3)矩阵输入指令MTR MTR指令的编号为FNC52。

利用MTR可以构成连续排列的8点输入与n点输出组成的8列n行的输入矩阵。

如图所示,由[S]指定的输入X0~X7共8点与n点输出Y0、Y1、Y2(n=3)组成一个输入矩阵。

PLC在运行时执行MTR指令,当Y0为ON时,读入第一行的输入数据,存入M30~M37中;Y1为ON时读入第二行的输入状态,存入M40~M47。

其余类推,反复执行。

使用MTR指令时应注意:

1)源操作数[S]是元件编号个位为0的X,目标操作数[D1]是元件编号个位为0的Y,目标操作数[D2]是元件编号个位为0的Y、M和S,n的取值范围是2~8。

2)考虑到输入滤波应答延迟为10ms,对于每一个输出按20ms顺序中断,立即执行。

3)利用本指令通过8点晶体管输出获得64点输入,但读一次64点输入所许时间为20ms×8=160ms,不适应高速输入操作。

4)该指令只有16位运算,占9个程序步。

(4)高速计数器置位指令HSCS DHSCS指令的编号为FNC53。

它应用于高速计数器的置位,使计数器的当前值达到预置值时,计数器的输出触点立即动作。

它采用了中断方式使置位和输出立即执行而与扫描周期无关。

如图所示,[S1.]为设定值(100),当高速计数器C255的当前值由99变100或由101变为100时,Y0都将立即置1。

(5)高速计速器比较复位指令HSCR DHSCR指令的编号为FNC54。

如图所示,C254的当前值由199变为200或由201变为200时,则用中断的方式使Y10立即复位。

使用HSCS和HSCR时应注意:

1)源操作数[S1.]可取所有数据类型,[S2.]为C235~C255,目标操作数可取Y、M和S。

2)DHSCS指令的目标操作数可以指定为中断指针。

3)只有32位运算,占13个程序步。

(6)高速计速器区间比较指令HSZ DHSZ指令的编号为FNC55。

如图所示,目标操作数为Y20、Y21和Y22。

如果C251的当前值K2000时,Y22为ON。

使用高速计速器区间比较指令时应注意:

1)操作数[S1.]、[S2.]可取所有数据类型,[S.]为C235~C255,目标操作数[D.]可取Y、M、S。

2)指令为32位操作,占17个程序步。

(7)速度检测与脉冲输出指令

1)速度检测指令

速度检测指令SPD的编号为FNC56。

它的功能是用来检测给定时间内从编码器输入的脉冲个数,并计算出速度。

如图所示,[D.]占三个目标元件。

当X12为ON时,用D1对X0的输入上升沿计数,100ms后计数结果送入D0,D1复位,D1重新开始对X0计数。

D2在计数结束后计算剩余时间。

速度检测与脉冲输出指令

2)脉冲输出指令

脉冲输出指令(D)PLSY的编号为FNC57。

它用来产生指定数量的脉冲。

如图所示,[S1.]用来指定脉冲频率(2~20000Hz),[S2.]指定脉冲的个数(16位指令的范围为1~32767,32位指令则为1~2147483647)。

如果指定脉冲数为0,则产生无穷多个脉冲。

[D.]用来指定脉冲输出元件号。

脉冲的占空比为50%,脉冲以中断方式输出。

指定脉冲输出完后,完成标志M8029置1。

X10由ON变为OFF时,M8029复位,停止输出脉冲。

若X10再次变为ON则脉冲从头开始输出。

3)脉宽调制指令

脉宽调制指令PWM的编号为FNC58。

它的功能是用来产生指定脉冲宽度和周期的脉冲串。

如图所示,[S1.]用来指定脉冲的宽度,[S2.]用来指定脉冲的周期,[D.]用来指定输出脉冲的元件号(Y0或Y1),输出的ON/OFF状态由中断方式控制。

4)外部设备指令

外部I/0设备指令是FX系列与外设传递信息的指令,共有10条。

分别是10键输入指令TKY(FNC70)、16键输入指令HKY(FNC71)、数字开关输入指令DSW(FNC72)、七段译码指令SEGD(FNC73)、带锁存的七段显示指令SEGL(FNC74)、方向开关指令ARWS(FNC75)、ASCII码转换指令ASC(FNC76)、ASCII打印指令PR(FNC77)、特殊功能模块读指令FROM(FNC78)和特殊功能模块写指令T0(FNC79)。

1、10键输入指令(D)TKY

如图所示。

源操作数[S.]用X0为首元件,10个键X0~X11分别为对应数字0~9。

X30接通时执行TKY指令,如果以X2

(2)、X9(8)、X3(3)、X0(0)的顺序按键,则[D1.]中存入数据为2830,实现了将按键变成十进制的数字量。

当送入的数大于9999,则高位溢出并丢失。

使用32位指令DTKY时,D1和D2组合使用,高位大于99999999则高位溢出。

数据输入指令

当按下X2后,M12置1并保持至另一键被按下,其它键也一样。

M10~M19动作对应于X0~X11。

任一键按下,键信号置1直到该键放开。

当两个或更多的键被按下时,则首先按下的键有效。

X30变为OFF时,D0中的数据保持不变,但M10~M20全部为OFF。

此指令的源操作数可取X、Y、M、和S,目标操作数[D.]可取KnY、KnM、KnS、T、C、D、V和Z,[D2.]可取Y、M、S。

16位运算占7个程序步,32运算时占13个程序步。

该指令在程序中只能使用一次。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1