第6章 FX2N PLC功能指令及应用

更新时间:2023-07-22 12:46:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第6章 FX2N PLC功能指令及应用6.1 功能指令使用要素6.2 程序流程控制(FNC00~FNC09)

6.3 传送和比较(FNC10~FNC19) 6.4 四则运算及逻辑运算(FNC20~FNC29)6.5 循环移位与移位(FNC30~FNC39) 6.6 数据处理(FNC40~FNC49) 6.7 高速处理(FNC50~FNC59) 6.8 方便指令(FNC60~FNC69)

6.1 功能指令使用要素 6.1.1 功能指令的表现形式功能指令按功能号(FUC00~FUC99)编排。每条功能指令都有一个助记符。

有些功能指令只需指定功能号即可。但许多功能指令在指定 功能号的同时还必须指定操作数或操作地址。有些功能指令还需 要多个操作数或地址。操作元件包括K、H、KnX、KnY、KnM、KnS、 T、C、D、V、Z。其中K表示十进制常数;H表示十六进制常数。

6.1.1 功能指令的表现形式[S ]:(SOURSE) 源操作数。若可使用变址功能时,表达为 [S· ]。有时源操作数不止一个,可用[S1· ]、[S2· ]表示。 [D]:(DESTINATION)目标操作数。若可使用变址功 能时,表达为[D· ]。目标不止一个时用[D1· ]、[D2· ] 表示。

m、n:其他操作数。常用来表示数的进制(十进制、 十六进制等)或者作为源操作数(或操作地址)和目标操 作数(或操作地址)的补充注释。需要注释的项目多时也 可以采用m1、m2等方式。

6.1.1 功能指令的表现形式例如下图中的功能指令是一个取平均值的指令

其功能如下式表达:[(D0)+(D1)+(D2)+(D3)]÷3→(D4Z) 图中标注[S· ]指取值首元件。n指定取值个数。[D· ]指定 计算结果存放地址。

6.1.2 数据长度及指令的执行形式

(1)16bit和32bit 功能指令可处理16位(bit)的数据和32(bit)位数据。功能指令中附有 符号(D)表示处理32位(bit)数据。如(D)MOV、 FNC(D)12、FNC12(D)。

处理32bit数据时, 用元件号相邻的两个元件组成 元件对。元件对的元件号用奇数、偶数均可。但为避 免错误,元件对的首元件建议统一用偶数编号。

32bit计数器(C200~C255)不能用作16bit指令的操作数。

6.1.2 数据长度及指令的执行形式(2)连续执行/脉冲执行 助记符后附有(P)符号表示脉冲执行,没有(P)符号的表示连续执行。

(P)和(D)可同时使用,如(D)MOV(P)表示32bit数据 传送,脉冲执行。 例如下图:

6.1.2 数据长度及指令的执行形式图中仅在X0由OFF变为ON时执行D10到D12间的数据传(只传送 一次),不需要每个扫描周期都执行。

当X1为ON时在每个扫描周期都被重复执行D20数 据到D22的传送。 当X0、X1为OFF时上述两个传送都不执行。在使用PLC 编程时,如果在程序中的数据不随时变化,而且变化是 可控的,这样的数据传送就可用脉冲方式。 有些指令,例如XCH、INC、DEC

等 例如,INC指令含义是加1。如果每个运行周期都执 行一次加1,其运行结果将无法确定。用连续方式时要 特别注意。

6.1.3 位元件和字元件只处理ON/OFF状态的元件,例如X、Y、M、和S,称为 位元件。其它处理数字数据的元件,例如T、C和D,称为字元件。 而位元件组合起来也可处理数字数据。 位元件的字可以由Kn加首元件号来表示。位元件每4bit为 一 组 合 成 单 元 , KnM0 中的 n 是 组 数 。 16bit 数 据 操 作 时 为 K1~K4。32bit数据操作时为K1~K8。 例如,K2M0即表示由M0~M7组成2个4bit组。

6.1.3 位元件和字元件当一个16bit的数据传送到K1M0、K2M0或K3M0(使用MOV指 令)时,只传送相应的低位(bit)数据。较高位的数据不传 送。32bit数据传送时也一样。 例如

若X1为ON时用连续传送的方式传送M0~M7组成的8位二 进制数到D0数据寄存器。传送前的M0~M15组成的16bit 数如下:M15 M14 M13 M12 M11 M10 M9 M8 M7 M60 1 0 1 0 1 0 1 1 1

M50 1

M4 M3 M20 1

M1 M00 1

传送后D0寄存器的数据如下:0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1

6.1.3 位元件和字元件由于数据高8位没有在指令中定义而不能传送,16位(bit) 数据的符号位(最高位)为0,此时只能处理正数。

由上述例子可知,在作16位(bit)数据操作,而参与操作的元件由K1、K2、K3来指定时,高位(不足部分) 均作0。这就意味着只能处理正数(符号位为0)。在作 32bit数据操作,参与操作的元件由K1~K7来指定时也一

样。

6.1.4 变址寄存器(V、Z)变址寄存器在传送、比较指令中来修改操作对象的元件号。 其操作方式与普通数据寄存器一样。操作元件包括K.H、KnX、 KnY、KnM、KnS、T、C、D、V、Z。其中KnY、KnM、KnS、T、 C、D、V、Z可加入变址寄存器。 对32bit指令,V作高16bit,Z作低16bit。32bit指令中用到变址寄存 器时只需指定Z,这是Z就代表了V和Z。

6.1.4 变址寄存器(V、Z)

如上图所示: X0为ON时,K10(十进制数10)送到V。X1为ON时,K20(十进制 数20)送到Z。 当X2为ON时所作的加法 (D5V)+(D15Z)→(D40Z) (D15)+(D35)→(D60)。 M8000是内部特殊寄存器(常ON), 即无条件将十进制常数0(K 0)送入V,此时(V)、(Z)的数据 为0和20。 当X3为ON时执行(D)ADD指令,作32bit数据加法 (D0)+(D2)→(D 4Z) 就是(D1,D0)+(D3,D2)→(D25,D24)

6.2 程序流程控制指令: CJ FNC00(P)(16)条件转移 操作元件:指针P0~P127(允许变址修改) P63即END,无需再标注 程序步数: CJ 和 CJ (P)……3步 标号P××……1步 梯形图 功能: 用于跳过顺序程序中的某一部分,这样 可以减少扫描时间,并使双线圈操作成为 可能。如果X0为ON则跳到标记P8处继续执 行。

6

.2 程序流程控制指令: CALL FNC01(P)(16) 转子程序 操作元件:指针P0~P127(允许变址 修改) 程序步数:CALL和CALL(P)…3步标 号P××……1步 嵌 套:5级 梯形图 功能: 用 于 特 定 条 件下执行 某 个 子 程 序 , 可 减 少 程 序 重 复 。如果 X0 为 ON则调用P10为标记的子程序执行。 在执行子程序时也可调用子程序, 可嵌套5级。

6.2 程序流程控制

指令: SRET FNC02 操作元件:无 程序步数:1步 梯形图

子程 序返

功能: 与CALL指令对应的子程序结束返回 CALL指令后的程序顺序执行。

6.2 程序流程控制指令: IRET FNC03中断返回 操作元件:无 程序步数:1步 梯形图

功能: 中 断 服务 程序 的 结 束 标 记 。 在程序 执 行 到 IRET 指 令 后 表 示 该 中 断 服务 结 束 。 该 指令 后 的 程序 允 许 中 断 , 直 到DI指 令 出现 。

6.2 程序流程控制指令: EI FNC04允许中断 操作元件:无 程序步数:1步 梯形图 功能:

该指令后的程序允许中断, 直到DI指令出现。

6.2 程序流程控制指令: DI FNC05禁止中断断返回 操作元件:无 程序步数:1步

梯形图

功能: 该 指令 后 的 程序 不 可 中 断 , 直到EI指 令 出现。

6.2 程序流程控制指令: FEND FNC06主程序结束 操作元件:无 程序步数:1步

梯形图

功能: 执 行 到 FEND 时 进 行输出处理、输入 处理、警戒时钟刷 新后回到第0步。

6.2 程序流程控制指令: WDT FNC07 (P)警戒时钟 操作元件:无 程序步数:1步

梯形图

功能: 若 扫描 周期 超 过 100ms,PLC将停止运 行。此时,应将WDT 指令 插 入 到 合 适的 位 置刷新警戒时钟,使 程序执行到END。

6.2 程序流程控制指令: FOR FNC08(16) 循环区起点 操作元件: 程序步数: 3步 梯形图功能: FOR-NEXT间的程序 重 复 执 行 “ n” 次 后 , NEXT指令后的程序才被 执 行 。 利 用 CJ 指 令可跳 出循环体。FOR-NEXT 间还可使用FOR-NEXT 指令。循环指令最多允许 5级嵌套。

本文来源:https://www.bwwdw.com/article/jr9m.html

Top