首页 > 其他分享 >Mitsubishi 三菱FXPLC学习之功能块指令

Mitsubishi 三菱FXPLC学习之功能块指令

时间:2023-08-07 11:00:42浏览次数:46  
标签:功能 27 PLC 梯形图 指令 功能块 FXPLC Mitsubishi

  在PLC的编程语言中,最简单的就是图形语言,如我们所学的梯形图与SFC,这两者在编程软件中都属于简单工程。

  而我之前所分享的文章中,讲到的那些基本指令和功能指令,都是基于简单梯形图形式进行示例。其实,对于很多功能(函数),如四则运算、比较传送等,在PLC编程中还有另外一种形式,那就是功能块形式,它们在编程软件中为结构化工程类型。

  除此之外,PLC的编程语言中还有比较复杂的文本语言,即ST语言。提及ST语言,简直令我等凡夫俗子望而却步,因为它就是传说中的纯打代码,为了我的头发,ST语言我还是直接放弃吧。

  既然放弃了ST语言,那么我今天就来给大家简单分享一下功能块指令的内容吧!

一、什么是功能块(FB、FUN)

  所谓功能块,如下图27-1所示,简单来说,就是可以实现某些特定功能或函数的块,即FB块或FUN块,一般情况下把功能块叫FB块,但其实在三菱PLC中,功能块除了FB块之外,还有FUN块,即函数块。

  类似于子程序,功能块可以将特定的且需要经常使用的功能打包成一个块,在程序中多次调用,另外还可以打包成一个库文件,用于多台电脑上拷贝使用。

  这个“经常使用的功能”可以是我们自定义的,也可以是编程软件自带的。

  例如电机的起保停程序,我们可以把整个起保停程序打包成一个功能块,如下图27-2所示,该功能块的输入输出、起保停的启动、停止和电机都以标签的形式定义,直到被调用时再由用户指定具体的软元件,如起保停的启动用“X0”、电机用“Y0”等。

  这个“起保停”的功能块,对应梯形图如下图27-3所示。还是类似于子程序,功能块在调用之前,如果是用户自定义的,显然,用户还需自己先编好一个功能块。

  当然,和子程序不同的是,这个自定义的功能块,其中的一些触点、线圈等只是用标签命名,如图27-3中的“启动”、“电机”等就是用文字命名的标签。

二、功能块与功能指令的区别

  功能块用于结构化梯形图中,可以自行调用,如下图27-4所示,可以看到,这个结构化梯形图中有很多的块状结构(功能块),除此之外还有一些触点和线圈。所以结构化梯形图和简单梯形图其实区别不大,都是为了实现特定功能的程序。

  但到底是选用简单梯形图还是结构化梯形图,这就看个人喜欢了。就像是在顺控程序中,你可以用SFC的形式编写,也可以直接编写梯形图,问题不大。

  而功能块和功能指令,若是对于一般的功能而言,其实两者区别不大,例如我们要实现两个数的相加:当驱动条件X0成立时,把D0的当前值加上K10,结果保存到D10中。

  它可以通过功能指令实现,也可以运用功能块实现。如下图27-5所示为功能指令形式,X0接通,(D0)=K20,执行ADD指令后,D10的当前值为“和”K30。

   而功能块形式如图27-6所示,依然是X0接通,(D0)=K20,执行程序后,D10的当前值为“和”K30。

  从以上实现加法功能来看,功能指令和功能块可以自行选择用哪个,但对于较为复杂的功能,显然两种的区别还是比较明显的。

  这是因为功能块可以自定义,而功能指令却不行。 例如我们要实现D0、D1的值相加,再乘以D2的值,这就要用上两个功能指令ADD、SUB,而功能块可以把加和乘集中到一个块中,直接调用。此时的功能块,其功能其实更倾向于类似子程序的作用。

  但更深入的功能块知识,我在这里就不再展开讲解啦,大家如果感兴趣,可以观看我们官网的相关课程哦!我在这里只不过是给大家了解一下,PLC编程中还有功能块这个玩意就行了~

  其实,对于初学者,例如我这种小白而言,功能块这部分知识还是有点难度的,所以我还需要更多的时间去深入学习它,所以我也就不在这里班门弄斧了。

最后,希望有更多的志同道合的人(在PLC知识海洋中挣扎的人)和我一起共同努力、共同进步吧!

标签:功能,27,PLC,梯形图,指令,功能块,FXPLC,Mitsubishi
From: https://www.cnblogs.com/ybqjymy/p/17610868.html

相关文章

  • Mitsubishi 三菱FXPLC入门之自动小车控制程序
    学而不思则罔,不管是学习任何知识,可以说“学以致用”才是学习的意义。“学以致用”就需要我们结合实际,把所学的知识发挥到最大的用处,而非纸上谈兵。PLC也是如此,作为自动化控制的一门技术,掌握PLC,就必须要把它运用到实际中解决各种问题。学习三菱PLC也有一段时间了,在我以为......
  • Mitsubishi 三菱FXPLC入门之定时器和计数器
    “小时候总想着,自己要是可以控制时间就好了,给时间按下暂停键,然后把班里的那个死对头打一顿哈哈哈哈哈嗝,做梦呢。虽然我不可以控制时间,但是我可以通过定时器控制PLC的程序执行呀,这也是从另一方面实现我控制时间的的梦想了,激动!PLC中,定时器和计数器是两个非常主要的编程元件......
  • Mitsubishi 三菱FXPLC入门之我眼中的PLC
    同样是电工,为什么有的人干着又脏又累的苦力活却拿着三四千的工资,而有的人衣鲜靓丽只需动动手指却能拿到七八千甚至上万的月薪?在知道PLC之前,我以为低压电工就是那种一身脏衣服蓝帽子、满头大汗的大叔,知道了PLC之后,我大概明白了为什么有些电工能拿高薪了,因为PLC能让一个人的工作......
  • Mitsubishi 三菱FXPLC学习之功能指令格式解读
    随着自动化技术的发展,PLC已不仅仅是用于替代传统的继电控制系统。由于CPU的植入,PLC可以说是一台微型电脑,它除了能处理逻辑开关量外,还可以用于对数字的变换、运算、处理PLC与外部设备的数据传送和控制,以及程序流程控制等。这些强大的功能基本是得益于PLC的功能指令。PLC......
  • Mitsubishi 三菱FXPLC学习之条件转移
    PLC在执行程序的过程中,是按照程序步从头到尾一步一步扫描的。但PLC也有特异功能,它的程序执行可以瞬移!从当前程序步瞬间转移到其他程序步执行,如下图就是PLC的条件转移,执行CJ转移指令后,直接跳过第8~12步程序,从第14步程序开始往下执行。PLC在程序执行过程中发生转移的现象,称为程......
  • Mitsubishi 三菱FXPLC学习之寻址方式
    继电控制系统离不开各种接触器、继电器等的接线。同样的,PLC的编程,离不开各种软元件(编程元件)的应用。而寻址方式,简单来说,就是对各种软元件的操作方式。这就好比你妈妈找你回家吃饭,她的方式有很多,可以采用夺命连环CALL的电话方式、可以亲自去找你当场把你提回来、或者叫你老爸去找......
  • Mitsubishi 三菱FXPLC学习之子程序调用与循环
    上次,我们学习了程序流程转移中的条件跳转CJ,这次,我们接着向子程序调用CALL和FOR循环发起进攻吧!显然,子程序调用CALL和FOR循环和条件跳转CJ一样,都是PLC程序中用于流程转移的,所以,上次所学的程序区、主程序结束指令FEND等知识点可不要丢哟~在这里我也不再赘述了,这是为了给读者......
  • Mitsubishi 三菱FXPLC学习之中断服务
    “前面我先是分享了PLC程序流程转移中的条件跳转CJ,然后紧接着进攻了子程序调用CALL和循环FOR,这次,我要向“终极BOSS”中断服务发出挑战了!要学习中断服务,我们就得知道什么是中断。那就让我们看看什么是中断吧!一、中断是什么所谓中断,是指PLC按顺序执行程序扫描的过程中,当有需......
  • Mitsubishi 三菱FXPLC学习之数据处理指令(下)
    本来打算花一篇文章的篇幅来写数据处理指令的,但写着写着发现,一篇文章根本写不完QAQ。上篇文章结束得有点突兀,那这里也再不啰嗦,我们直奔主题吧。01、字交换指令XCH字交换指令,顾名思义,就是将两个字软元件的数据相互交换。从编程手册的截图可以看到,XCH指令可以用于16位和32位......
  • Mitsubishi 三菱FXPLC学习之通信指令(上)
    通信指令本身不难,难的是对通信的理解。在学习PLC通信指令之前,我曾尝试去看通信相关的课程,然后告诉自己:算了,不必勉强自己,学不会的始终学不会。 数据的传输方式有并行和串行两种,其中并行是指同一时刻可以传输多个bit位的信号,有多少个信号位就需要多少根信号线;而串是指同一......