几个PLC功能指令的理解.docVIP

  • 76
  • 0
  • 约2.02千字
  • 约 5页
  • 2017-08-11 发布于重庆
  • 举报
几个PLC功能指令的理解

PLC功能指令实际上就是功能各异的PLC子程序块。FX2N系列PLC的功能指令有程序流程、传送比较、四则逻辑运算、旋转移位、数据处理、高速处理、方便指令、外部设备处理、浮点数、时钟运算、接点比较等若干类。本节仅介绍FX2N系列PLC常用的功能指令。 一、功能指令形式 1.功能指令格式?   功能指令用编号FNC00~FNC246表示,并给出对应的语句名称,每条功能指令都有一个指令表。例如FNC45是一条数据处理平均值功能的指令,助记符为MEAN,使用简易编程器时输入FNC45,而采用智能编程器或计算机编程时也可输入助记符MEAN。图1是一条取平均值功能指令的梯形图。 图1 MEAN示例梯形图   图中MEAN是功能指令的语句名称,也可使用FNC45(但不直观);D0是源操作数的首元件;D4Z是指定计算结果存放的数据寄存器的地址;K3是指定取值的个数为3。显然该功能指令的含义是D4Z =(D0+D1+D2)/3,即将(D0+D1+D2)/3的运算结果赋值给D4Z。   功能指令的指令段通常占1个程序步,16位操作数占2步,32位操作数占4步。 2. 功能指令执行方式?   功能指令有连续执行和脉冲执行两种类型。图2中第1支路的MOV是连续执行型指令,即当X001接通时,各运算周期都执行一次,而第2支路的MOV(P)是脉冲执行型型指令,(P)就表示当X000由OFF转换为ON时,仅执行一次指令。 图2 功能指令执行方式示例 3.可处理数据长度?   功能指令可处理16位数据,也可处理32位数据,见图3示例梯形图。第1梯级中,当X000接通,则移位MOV功能指令处理的数据为16位,即将D10 的内容传送至D12;而在第2梯级中,(D)MOV功能指令处理的数据为32位,将D21D20(由D21、D20构成的32位数据)的内容传送到 D23D22(由D23、D22组成的32位数据存储单元)。 图3 功能指令处理数据长度示例 BCD码就是用四位二进制数表示一位十进制数的编码是将D0中的值转为BCD码,然后送到K1Y0这个单元中。 BIN码就是二进制编码比如十进制数的1,用BIN码表示就是是将D0中的值转为码,然后送到K1Y0这个单元中。条件跳转指令?   当执行条件跳转指令CJ指令时,跳过CJ指令和指针标号之间的程序,见图4。当X30接通时,跳转到P20处执行该行及以后程序,如果X30不接通,则跳转不执行,程序按原顺序执行。指令可用的有效指针范围为P0~P127。 图4 CJ指令应用示例 执行跳转指令CJ后,对于不被执行的指令,即使输入零件状态发生改变,输出元件的状态也维持不变。.子程序调用指令 图5 CALL指令示例 ?  子程序调用CALL指令的操作数为P0~P127,占用3个程序步。需与子程序返回指令SRET(无操作数)配合使用,见图5。   若X0接通,则转到标号P10处去执行子程序。当执行到子程序结束SRET指令时,返回到CALL指令的下一步执行。使用子程序调用与返回指令时应注意转移标号不能重复,也不可与跳转指令的标号重复。子程序调用可以嵌套调用,最多可达5级嵌套。   FEND是主程序结束指令,无操作数,占用1个程序步。表示主程序结束,当执行到FEND时,PLC进行输入/输出处理,监视定时器刷新,完成后返回起始步。 1.CMP指令 图6 CMP指令示例 ?   比较CMP指令有3个操作数,其中是将2个源操作数相比较,将比较结果送到目标操作数中,见图6示例。当X0接通时,比较K100和C10当前值的大小,分三种情况分别接通M0、M1、M2中一个辅助继电器,另二个辅助继电器则不接通。若X0不接通,则CMP指令也不执行。2.ZCP指令?   区间比较ZCP指令是将1个源数据与2个源源数据相比较,比较结果将影响目标存储器的数据状态,见图7。当X0接通时,根据C30与K100、K120之间的比较结果,分别对M3、M4、M5进行赋值。 图7 ZCP指令示例 ALT是交替指令,一次触发为ON ,再一次触发就OFF,再触发又ON,如此交替下去ALT 同ALTP的区别:一个 是 脉冲 带P的只在一个扫描周期 执行一次 一个是 每个周期都执行意思,执行条件一直接通时,ALTP只执行一个扫描周期(执行条件上升沿时),ALT在每个扫描周期都执行。七段译码指令SEGD 七段译码指令SEGD(P)图所示,将[S.]指定元件的低4位所确定的十六进制数(0~F)经译码后存于[D.]指定的元件中,以驱动七段显示器, 如SEGD k1 k2y0 数码管就显示数字1(因为十进制1,变为十六进制也是1) SEGD k10 k2y0 数码管显示字母A (因为十进制k10,变为十六进制为A) 五、区间复位指令ZRST? ZRST 成批复位指令,比如ZRST Y0 Y7,

文档评论(0)

1亿VIP精品文档

相关文档