我的三菱FX PLC學習之功能塊指令
饒等
發(fā)布于2021-04-06 10:48
30
2
標簽:三菱FX PLC,三菱PLC,PLC程序,
【點擊領取】三菱案例 | 西門子案例 | 電工手冊 | 工具箱 軟件
【點擊獲取】三菱PLC例程117個|西門子PLC例程777個
【點擊下載】10款熱門電工仿真等軟件,免費下載!
在PLC的編程語言中,最簡單的就是圖形語言,如我們所學的梯形圖與SFC,這兩者在編程軟件中都屬于簡單工程。
而我之前所分享的文章中,講到的那些基本指令和功能指令,都是基于簡單梯形圖形式進行示例。其實,對于很多功能(函數(shù)),如四則運算、比較傳送等,在PLC編程中還有另外一種形式,那就是功能塊形式,它們在編程軟件中為結(jié)構(gòu)化工程類型。
除此之外,PLC的編程語言中還有比較復雜的文本語言,即ST語言。提及ST語言,簡直令我等凡夫俗子望而卻步,因為它就是傳說中的純打代碼,為了我的頭發(fā),ST語言我還是直接放棄吧。
既然放棄了ST語言,那么我今天就來給大家簡單分享一下功能塊指令的內(nèi)容吧!
一、什么是功能塊(FB、FUN)
所謂功能塊,如下圖27-1所示,簡單來說,就是可以實現(xiàn)某些特定功能或函數(shù)的塊,即FB塊或FUN塊,一般情況下把功能塊叫FB塊,但其實在三菱PLC中,功能塊除了FB塊之外,還有FUN塊,即函數(shù)塊。
圖27-1
類似于子程序,功能塊可以將特定的且需要經(jīng)常使用的功能打包成一個塊,在程序中多次調(diào)用,另外還可以打包成一個庫文件,用于多臺電腦上拷貝使用。這個“經(jīng)常使用的功能”可以是我們自定義的,也可以是編程軟件自帶的。
例如電機的起保停程序,我們可以把整個起保停程序打包成一個功能塊,如下圖27-2所示,該功能塊的輸入輸出、起保停的啟動、停止和電機都以標簽的形式定義,直到被調(diào)用時再由用戶指定具體的軟元件,如起保停的啟動用“X0”、電機用“Y0”等。
圖27-2
這個“起保?!钡墓δ軌K,對應梯形圖如下圖27-3所示。還是類似于子程序,功能塊在調(diào)用之前,如果是用戶自定義的,顯然,用戶還需自己先編好一個功能塊。
圖27-3
當然,和子程序不同的是,這個自定義的功能塊,其中的一些觸點、線圈等只是用標簽命名,如圖27-3中的“啟動”、“電機”等就是用文字命名的標簽。
二、功能塊與功能指令的區(qū)別
功能塊用于結(jié)構(gòu)化梯形圖中,可以自行調(diào)用,如下圖27-4所示,可以看到,這個結(jié)構(gòu)化梯形圖中有很多的塊狀結(jié)構(gòu)(功能塊),除此之外還有一些觸點和線圈。所以結(jié)構(gòu)化梯形圖和簡單梯形圖其實區(qū)別不大,都是為了實現(xiàn)特定功能的程序。
圖27-4
但到底是選用簡單梯形圖還是結(jié)構(gòu)化梯形圖,這就看個人喜歡了。就像是在順控程序中,你可以用SFC的形式編寫,也可以直接編寫梯形圖,問題不大。
而功能塊和功能指令,若是對于一般的功能而言,其實兩者區(qū)別不大,例如我們要實現(xiàn)兩個數(shù)的相加:當驅(qū)動條件X0成立時,把D0的當前值加上K10,結(jié)果保存到D10中。
它可以通過功能指令實現(xiàn),也可以運用功能塊實現(xiàn)。如下圖27-5所示為功能指令形式,X0接通,(D0)=K20,執(zhí)行ADD指令后,D10的當前值為“和”K30。
圖27-5
而功能塊形式如圖27-6所示,依然是X0接通,(D0)=K20,執(zhí)行程序后,D10的當前值為“和”K30。
圖27-6
從以上實現(xiàn)加法功能來看,功能指令和功能塊可以自行選擇用哪個,但對于較為復雜的功能,顯然兩種的區(qū)別還是比較明顯的。這是因為功能塊可以自定義,而功能指令卻不行。 例如我們要實現(xiàn)D0、D1的值相加,在乘以D2的值,這就要用上兩個功能指令ADD、SUB,而功能塊可以把加和乘集中到一個塊中,直接調(diào)用。此時的功能塊,其功能其實更傾向于類似子程序的作用。
但更深入的功能塊知識,我在這里就不再展開講解啦,大家如果感興趣,可以觀看我們官網(wǎng)的相關課程哦!我在這里只不過是給大家了解一下,PLC編程中還有功能塊這個玩意就行了~
其實,對于初學者,例如我這種小白而言,功能塊這部分知識還是有點難度的,所以我還需要更多的時間去深入學習它,所以我也就不在這里班門弄斧了。
最后,希望有更多的志同道合的人(在PLC知識海洋中掙扎的人)和我一起共同努力、共同進步吧!
注:本文章內(nèi)容都是基于三菱 PLC 所寫
(技成培訓網(wǎng)原創(chuàng),作者:楊思慧,未經(jīng)授權(quán)不得轉(zhuǎn)載,違者必究)

技成培訓
微信公眾號:jcpeixun
|

技成電工課堂
微信公眾號:jcdgkt
|

學PLC聯(lián)盟
微信公眾號:jcpx006
|