首页 > 其他分享 >Mitsubishi 三菱FXPLC学习之条件转移

Mitsubishi 三菱FXPLC学习之条件转移

时间:2023-08-07 10:34:50浏览次数:41  
标签:CJ FEND 三菱 程序 指令 FXPLC PLC Mitsubishi 转移

  PLC在执行程序的过程中,是按照程序步从头到尾一步一步扫描的。但PLC也有特异功能,它的程序执行可以瞬移!从当前程序步瞬间转移到其他程序步执行,如下图就是PLC的条件转移,执行CJ转移指令后,直接跳过第8~12步程序,从第14步程序开始往下执行。

PLC在程序执行过程中发生转移的现象,称为程序流程转移,即跳过一段程序去执行指定程序。造成这种程序转移的有条件转移、子程序调用、中断服务和循环程序。

如果把PLC的程序执行看作爬山,程序的执行过程就是从山头爬到山顶的过程。此时,PLC的几种程序流程转移就好比以下几种情况:

1、它全程不停的一步一步往上走,这就是PLC程序步的顺序执行;
2、它在爬山过程中,坐了缆车,直接跨过了一段山路,这就是PLC的条件转移;
3、它在爬山过程中,因为沿途的风景过于漂亮,去拍了几张美照,再继续爬,这就是PLC的子程序调用;
4、它在爬山过程中,由于三急去了一趟厕所,这就是PLC的中断服务;

PLC的程序流程转移是靠相对应的指令是实现的。就如我们这次学习的条件转移所用的指令 CJ 。在学习程序流程指令之前,我们得先知道什么是主程序区、什么是副程序区。

▎一、PLC的程序区

  PLC的用户程序一般分为主程序区和副程序区,主、副程序区的分界线为主程序结束指令FEND,而副程序在FEND指令和END指令之间编写。主程序显然是必不可少的,且只有一个,它是完成用户控制要求的程序。就像手机,打电话是手机必不可少的功能,如果没有通话功能,这也就不叫手机了。

  副程序区是子程序、中断服务程序的所在区域,它们不是必须的,可以根据具体要求而编写。也就说,PLC必须有主程序,副程序可有可无。PLC执行程序就好比打酱油,你妈妈叫你打酱油,这是主程序,然后你妈妈又说如果有苹果的话顺便买点回来,这个买苹果就是子程序,酱油是一定要打的,但苹果却不一定要买。

▎二、主程序结束指令FEND

FEND指令没有驱动条件,也就说这个指令的前面不能有触点控制,如下图所示。执行FEND指令和执行END指令功能是一样的,执行输入和输出刷新。

  在主程序区,FEND指令可以多次使用,但每次只能有一个有效。PLC在程序扫描时,只要扫到任一个FEND指令,就会向0步程序返回,重新开始。如下图所示,程序中有两个FEND指令,它两种情况,若转移指令CJ没被驱动,程序扫描到第一个FEND之后,就会返回到程序的第0步再次开始;若CJ的驱动条件成立,此时程序会发生转移,跳过第一个FEND,从指针P5处往下执行,直到扫到第二个FEND再返回到程序的第0步再次开始。

  另外,如上文所言,副程序是在FEND指令和END指令之间编写的,更确切地说,应该是副程序是在最后一个FEND指令和END指令之间编写的。FEND指令是主程序区和副程序区的分界,所以,显然FEND指令也是不能出现在子程序中的。

  当然,如果用户程序本身就比较简单,没必要编写中断程序和子程序,那么FEND指令也就没必要了,直接以END指令作为结束指令。知道了什么是主程序、副程序后,我们接着学习这次的主要内容:程序的条件转移。

▎三、程序的条件转移

  程序的条件转移是应用条件转移指令CJ实现的,用于主程序,其可用软元件只有分支指针P。

1、转移指令CJ

 转移指令CJ和分支指针P组合使用,从上图可以看到,转移指令CJ有两种执行方式:连续执行型和脉冲执行型。它们的执行形式如下图所示。

  连续执行型指令CJ在驱动条件成立期间,每一个扫描周期都会执行一次转移,知道X0断开(OFF);而脉冲型指令CJP只有在X0接通的上升沿才会执行,尽管X0接通时间持续多个扫描周期,CJP也执行一次,直到X0断开再次接通,CJP才会再执行。

2、分支指针P

  在FX2N PLC中,指针有分支指针P和中断指针I两种,分支指针P必须和转移指令或子程序调用指令CALL组合使用。可用的分支指针有P0~P127共128个,但P63是向结束指令END步转移的特殊指针,不能用于标记。

  在程序中,指针的使用很简单,在对应程序行左母线的左侧编写即可。指针标号具有唯一性,不能重复使用。也就说,每个标号的指针在左母线左侧只能出现一次。但同一标号指针,可以和多个CJ指令组合,作为多个CJ指令的程序转移入口地址,如下图所示。

  另外,标号可以变址寻址使用,变址寻址我在上一篇文章已经讲过,如下图所示,变址寄存器内容为K10,此时指针标号就变成了P15。

3、转移方式

  利用CJ转移时,可以向CJ指令的后面程序转移,也可以向CJ指令的前面程序转移。但一般都是用于向后面程序转移,因为像前面程序转移,一不注意吗,就会造成死循环,如下图所示。若驱动条件X1一直接通,程序就会在转移地址入口P5处和CJ指令之间不断运行,造成死循环。

4、CJ指令的应用

  PLC程序对CJ转移指令的应用比较多,因为CJ指令简单有方便。例如教材中就提到,在工业控制中,常常有自动和手动两种工作方式供以切换。如下图所示,X0是手动模式的切换开关,当X0断开时,程序默认执行自动模式,若接通X0,程序会条转到手动模式执行。

  CJ指令的实例应用还有很多,这些都是要靠我们在实际的工作中去发现和摸索。但只要我们知道的CJ指令的含义和用法,能在梯形图中读懂它是功能和作用,就已经可以了。

  关于PLC的条件转移,就分享到这里,大家有什么见解的,欢迎留言评论。

标签:CJ,FEND,三菱,程序,指令,FXPLC,PLC,Mitsubishi,转移
From: https://www.cnblogs.com/ybqjymy/p/17610775.html

相关文章

  • Mitsubishi 三菱FXPLC学习之寻址方式
    继电控制系统离不开各种接触器、继电器等的接线。同样的,PLC的编程,离不开各种软元件(编程元件)的应用。而寻址方式,简单来说,就是对各种软元件的操作方式。这就好比你妈妈找你回家吃饭,她的方式有很多,可以采用夺命连环CALL的电话方式、可以亲自去找你当场把你提回来、或者叫你老爸去找......
  • Mitsubishi 三菱FXPLC学习之子程序调用与循环
    上次,我们学习了程序流程转移中的条件跳转CJ,这次,我们接着向子程序调用CALL和FOR循环发起进攻吧!显然,子程序调用CALL和FOR循环和条件跳转CJ一样,都是PLC程序中用于流程转移的,所以,上次所学的程序区、主程序结束指令FEND等知识点可不要丢哟~在这里我也不再赘述了,这是为了给读者......
  • Mitsubishi 三菱FXPLC学习之中断服务
    “前面我先是分享了PLC程序流程转移中的条件跳转CJ,然后紧接着进攻了子程序调用CALL和循环FOR,这次,我要向“终极BOSS”中断服务发出挑战了!要学习中断服务,我们就得知道什么是中断。那就让我们看看什么是中断吧!一、中断是什么所谓中断,是指PLC按顺序执行程序扫描的过程中,当有需......
  • 三菱 网络模块 MC协议 通信配置
    三菱 plc mc 协议 QJ71E71-100  百度一下 三菱mc协议配置,再参考一下  ......
  • Mitsubishi 三菱FXPLC学习之数据处理指令(下)
    本来打算花一篇文章的篇幅来写数据处理指令的,但写着写着发现,一篇文章根本写不完QAQ。上篇文章结束得有点突兀,那这里也再不啰嗦,我们直奔主题吧。01、字交换指令XCH字交换指令,顾名思义,就是将两个字软元件的数据相互交换。从编程手册的截图可以看到,XCH指令可以用于16位和32位......
  • Mitsubishi 三菱FXPLC学习之通信指令(上)
    通信指令本身不难,难的是对通信的理解。在学习PLC通信指令之前,我曾尝试去看通信相关的课程,然后告诉自己:算了,不必勉强自己,学不会的始终学不会。 数据的传输方式有并行和串行两种,其中并行是指同一时刻可以传输多个bit位的信号,有多少个信号位就需要多少根信号线;而串是指同一......
  • Mitsubishi 三菱FXPLC学习之通信指令(下)
    继上篇文章所分享的RS数据传送指令和CCD校验码指令,这次我们接着分享同样受数据处理模式标志继电器M8161控制的ASCI指令和HEX指令。ASCI指令和HEX指令是一对互逆的指令,基于十六进制字符与ASCII码之间的转换。ASCII码,我在之前的文章就有简单的介绍过,在这里再简单提一下。......
  • Mitsubishi 三菱FXPLC扫描周期讲解
    一、程序显示奇怪现象二、PLC的工作过程内部处理:系统初始化、软元件复位、进行自诊断以及内部工作任务,检查有没有错误以确保系统可靠运行;通信服务:和外部通信联系,比如电脑软件监控更新显示内容,又如PLC和触摸屏通信,触摸屏上一直刷新显示;输入处理:依次读入所有输入状态和数据,并......
  • Mitsubishi 三菱FX3U的232通信板,与PC串口调试助手通信测试
    在某个项目中,需要用到上位机来控制PLC中的气缸,采用的通信方式是无协议通信,硬件使用FX3U的PLC以及一块FX3U-232C-BD扩展板。具体测试如下所示。01使用硬件 如图所示: 02测试软件03具体步骤1、编写PLC控制程序,如图所示:程序解释:D8120是通信格式设置地址,设置成H0C81(二进制......
  • Mitsubishi FX5U与三菱ROBOT CC‐LINK IEF Basic通讯
    步骤一:新建工程登录配置文件(配置文件可以根据机械手型号跟厂家获取,这里以CR-800机器人为例); 步骤二:CC‐LINKIEFBasic设置 步骤三:远程IO刷新设置 链接侧为机器人;CPU侧为FX5UCPU;1.位元件RX:机器人的输出作为PLC的远程输人即PLCM6000-M6063的状态是随着M_out(6......