1. 首页
  2. 技术文章
  3. FANUC

FANUC | FUNCTION BLOCK 功能编写

案例介绍 | FANUC FUNCTION BLOCK 功能编写

一期我们介绍了FANUC新发布的0i-F系统中,全系标配了梯形图的Function Block功能。本期我们来看使用本功能的一些案例。该功能可以对梯形图中的模块化功能子程序进行归纳,同时将功能化子程序合并为一个功能块,类似于在PMC中新建了自定义的功能指令,调用起来十分方便,可以极大的简化梯形图结构。同时该功能块还可以使用密码进行保护,防止被误改,从而提升梯形图的安全性。

1入门案例

 

在编写机床操作面板的按键功能时,例如编写单段按键,通过按键产生上升沿,随后进行异或逻辑处理并接通系统G信号。之后在编写跳过、选择停止、机床锁住等类似按键之时,都可以通过复制梯图语句,重新修改地址,即可实现。

以上可以看出,这些类似功能的PMC梯图语句除了输入输出信号的不同,其整个逻辑处理过程是相同的。那么是否存在另外一种编程方法,可以更简便高效的实现一系列类似功能的编写。答案是肯定,Function Block功能正是为此而生。

FANUC新发布的0iF系统中,全系标配了梯形图的Function Block功能。该功能可以对梯形图中的模块化功能子程序进行归纳,同时将功能化子程序合并为一个功能块,类似于在PMC中新建了自定义的功能指令,调用起来十分方便,可以极大的简化梯形图结构。同时该功能块还可以使用密码进行保护,防止被误改,从而提升梯形图的安全性。

将上述提到的单段运行、程序跳过等功能中需要用到的异或逻辑程序进行编辑封装,即可得到如下的FB模块:

案例介绍 | FANUC FUNCTION BLOCK 功能编写

FB模块相当于自定义的PMC功能指令,因此可非常方便的进行调用。那么单段、跳过按键的编写即可通过调用FB_XOR模块,设定输入输出地址,即可轻松实现。

案例介绍 | FANUC FUNCTION BLOCK 功能编写

 

2FB库文件

1

FB库文件调用

如上所描述的一样,通过将一些比较常用的PMC程序处理逻辑进行封装,这样可以再后续PMC梯图编写中重复的调用,避免常规复制粘贴之后的地址修改。

FB库文件用以存放已编写完的FB模块,在梯图中通过直接调用FB库文件,即可使用FB库文件中的所有FB模块,从而避免了将FB模块一个个重复的拷贝至原有梯图中Function Block目录下的繁琐操作。而反编译之后的存储卡文件重新在Ladder 3上进行编译时,FB模块会自动生成在Function Block目录下

案例介绍 | FANUC FUNCTION BLOCK 功能编写

2

FB库文件保护

将常用的梯图处理程序封装为FB模块,FB模块本身也提供了读写密码的设定,可以实现FB模块的保护,这和梯图的读写密码类似。在此提供另外一种FB模块保护的方法。

上文提到调用FB库文件就可以实现对所有存放在库文件中FB模块的调用,那么FB库文件也提供了一种保护方法。通过如下设定:Tool-Option-Compile中取消Output FB Definition的勾选

案例介绍 | FANUC FUNCTION BLOCK 功能编写

完成上述设定后,编译后生成的存储卡文件中不含FB源文件,即FB模块的源文件不会被输出。FB源文件的不输出并不影响梯图中FB模块所在程序段的正常执行。而将其反编译时,Function Block目录下为空,之前的FB_XOR模块源文件不会出现,如下所示。

案例介绍 | FANUC FUNCTION BLOCK 功能编写

而在此基础上,再进行编译时,即会产生报警,提示无FB_XOR模块,无法完成梯图编译。那么可知,即使从NC拷贝出梯图,但也无法直接使用,除非将使用FB模块的程序段全部删除才能进行编译

案例介绍 | FANUC FUNCTION BLOCK 功能编写

因此,MTB可对其重要的程序段进行FB封装,在编译时不输出FB源文件,而一二级程序或者子程序中调用的FB模块即成为了黑匣子,无法破译,确保了PMC程序的安全性。

案例介绍 | FANUC FUNCTION BLOCK 功能编写

 
问答社区  发起问答  报警查询  技术文章  维修服务  资料下载  加交流群  申请 VIP   

本文转载来自【北京发那科】,仅供大家学习交流,如侵权请联系站长删文。

发表评论

登录后才能评论

联系我们

在线咨询:点击这里给我发消息

联系微信:QQ594673193

联系邮箱:594673193@qq.com

工作时间:08:00~20:00

QR code