王 印,池文慧
(上汽通用五菱汽車股份有限公司,廣西 柳州545007)
?
巧用Function Block功能簡(jiǎn)化FANUC梯形圖程序
王 印,池文慧
(上汽通用五菱汽車股份有限公司,廣西 柳州545007)
摘要:研究了FANUC Function Block的功能原理,分析了FB功能塊的運(yùn)行機(jī)制邏輯,闡述了FB功能塊在簡(jiǎn)化編程方面的作用。結(jié)合實(shí)際案例介紹FB功能塊的設(shè)計(jì)方法與過程,提高數(shù)控機(jī)床PMC編程的效率。
關(guān)鍵詞:FANUC Function Block;PMC編程;模塊化
FANUC 30i/31i/32i-MA系列數(shù)控系統(tǒng),作為選項(xiàng)功能,配置了PMC(Programmable machine controller可編程機(jī)床控制器)[1]梯形圖的Function Block功能。該功能可以對(duì)梯形圖中的模塊化功能子程序進(jìn)行歸納,同時(shí)將功能化子程序合并為一個(gè)功能塊[2],相當(dāng)于在PMC中新建了用戶自定義的功能指令,極大地簡(jiǎn)化梯形圖結(jié)構(gòu),提高程序的緊湊型和可移植性。并且Function Block功能塊還具備密碼保護(hù)功能,防止被誤改,從而提升梯形圖的安全性。本文結(jié)合發(fā)動(dòng)機(jī)廠大量應(yīng)用的FANUC 31i數(shù)控系統(tǒng)的加工中心PMC編程實(shí)例,通過歸納PMC程序中的功能化子程序的結(jié)構(gòu)特點(diǎn),提出改進(jìn)的編程方案,旨在簡(jiǎn)化PMC梯形圖編程,提高編程效率。
Function block是梯形圖程序的特殊應(yīng)用。如圖1所示,在實(shí)際的編程過程中,有部分的梯形圖程序出現(xiàn)頻率非常高,比如,PMC判斷各伺服軸是否到位,比較伺服軸的坐標(biāo)值是否在目的坐標(biāo)的設(shè)定誤差內(nèi),PMC利用窗口讀功能讀取大量的宏變量數(shù)據(jù),這些的梯形圖寫法、結(jié)構(gòu)相同,如果重復(fù)編寫,將使得程序非常龐大,加大編程的工作量。因此,對(duì)于高頻使用的梯形圖程序,通過定義Function Block功能塊,設(shè)置功能塊的輸入輸出參數(shù),即可在程序中反復(fù)運(yùn)用這一功能塊,可減少編程時(shí)間,提高編程效率。
圖1 Function Block功能原理
2.1FB功能塊實(shí)例
常見的如氣缸的動(dòng)作,兩個(gè)到位傳感器檢測(cè)位置,當(dāng)兩個(gè)傳感器同時(shí)接通表示傳感器異常;當(dāng)兩個(gè)傳感器同時(shí)斷開一定時(shí)間后表示氣缸動(dòng)作異常,按圖2編寫功能塊程序,在之后的氣缸、油缸動(dòng)作的監(jiān)測(cè)等同類動(dòng)作,都可以通過復(fù)制梯圖語句,重新修改地址,即可實(shí)現(xiàn)。
圖2 Function Block功能塊實(shí)例
以上可以看出,這些類似功能的PMC梯圖語句除了輸入輸出信號(hào)的不同,其整個(gè)邏輯處理過程是相同的。因此就可以利用另外一種編程方法,可以更簡(jiǎn)便高效地實(shí)現(xiàn)一系列類似功能的編寫,就是Function Block功能塊。
將上述提到的氣缸動(dòng)作檢測(cè)需要用到的異或邏輯程序進(jìn)行編輯封裝,即可得到如圖3所示的FB模塊。
圖3 Function Block功能塊封裝
FB模塊相當(dāng)于自定義的PMC功能指令,因此可非常方便的進(jìn)行調(diào)用。那么所有氣缸類似的雙位置傳感器的檢查程序編寫即可通過調(diào)用Sensor_PairCheck模塊,設(shè)定輸入輸出地址,即可輕松實(shí)現(xiàn)。
2.2FB庫(kù)文件管理
(1)FB庫(kù)文件調(diào)用
FB庫(kù)文件用以存放已編寫完的FB模塊,在梯圖中通過直接調(diào)用FB庫(kù)文件,即可使用FB庫(kù)文件中的所有FB模塊,從而避免了將FB模塊一個(gè)個(gè)重復(fù)的拷貝至原有梯圖中Function Block目錄下的繁瑣操作(如圖4所示)。而反編譯之后的存儲(chǔ)卡文件重新在Ladder 3上進(jìn)行編譯時(shí),F(xiàn)B模塊會(huì)自動(dòng)生成在Function Block目錄下。
圖4 Function Block功能塊庫(kù)文件歸檔
(2)FB庫(kù)文件保護(hù)
將常用的梯圖處理程序封裝為FB模塊,F(xiàn)B模塊本身也提供了讀寫密碼的設(shè)定,可以實(shí)現(xiàn)FB模塊的保護(hù),這和梯圖的讀寫密碼類似。
FB庫(kù)文件也提供了一種保護(hù)方法。通過如下設(shè)定:Tool-Option-Compile中取消Output FB Definition的勾選(見圖5)。完成上述設(shè)定后,編譯后生成的存儲(chǔ)卡文件中不含F(xiàn)B源文件,即FB模塊的源文件不會(huì)被輸出。FB源文件的不輸出并不影響梯圖中FB模塊所在程序段的正常執(zhí)行。而將其反編譯時(shí),F(xiàn)unction Block目錄下為空,之前的Sensor_PairCheck模塊源文件不會(huì)出現(xiàn)。而在此基礎(chǔ)上,再進(jìn)行編譯時(shí),即會(huì)產(chǎn)生報(bào)警,提示無Sensor_PairCheck模塊,無法完成梯圖編譯。那么可知,即使從NC拷貝出梯圖,但也無法直接使用,除非將使用FB模塊的程序段全部刪除才能進(jìn)行編譯。因此,可對(duì)重要的程序段進(jìn)行FB封裝,在編譯時(shí)不輸出FB源文件,而一二級(jí)程序或者子程序中調(diào)用的FB模塊即成為了黑匣子,無法破譯,確保了PMC程序的安全性。
圖5 Function Block功能塊保護(hù)
通過在機(jī)床PMC程序中應(yīng)用 Fanuc Function Block功能,極大地提高了編程的便利性以及安全性,并且功能塊可以推廣到同類型數(shù)控系統(tǒng)的不同設(shè)備上,有很高的實(shí)用價(jià)值。
參考文獻(xiàn):
[1]宋松,王悅,楊中力.圖解FANUC PMC編程與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2011.
[2]北京發(fā)那科機(jī)電有限公司.FANUC PMC設(shè)計(jì)與編程培訓(xùn)教程[M].北京:高等教育出版社,2011.
中圖分類號(hào):TG659
文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1672-545X(2016)04-0162-02
收稿日期:2016-01-02
作者簡(jiǎn)介:王?。?983-),男,湖北咸寧人,本科,工程師,研究方向?yàn)樵O(shè)備管理;池文慧(1983-),男,甘肅武威人,本科,工程師,研究方向?yàn)閿?shù)控加工。
Simplified FANUC LAD Program by Smart Application of Function Block Fuction
WANG Yin,CHI Wen-hui
(SAIC-GM-Wuling Auto Co.,Ltd,Liuzhou Guangxi 545007,China)
Abstract:This paper studied on the principle of the FANUC Function Block,analyzed the operation principle of FB function block,elaborated the FB function block in simplified programming.Combined with the actual case to introduce the design method and process of FB function block,improved the efficiency of CNC machine programming of PMC.
Key words:FANUC function block;PMC programming;modularization;