今天利用閑暇時間給朋友們梳理一下這些程序塊到底是是代表什么意思,我們又該如何去用它們。首先我們先解答一下什么是“塊”。“FC”函數的意義及使用在PLC編程軟件中的"FC"是指函數的意思,它是用戶自己編寫的程序塊。比如I0.0和I0.1是啟動和停止,Q0.0是輸出控制電機,我們把這種函數的調用叫絕對調用,很顯然這種方式是不夠靈活的。
什么是PLC的FB,FC,DB,OB,這些塊是什么意思?怎么用?
朋友們好,我是電子及工控技術,我來回答這個問題。很多不管是學習西門子PLC的還是學習施耐德或者是三菱的PLC,在PLC的編程軟件中我們會常常遇見到“FB”、“FC”、“DB”、“OB”這樣的程序塊,以至于使初學PLC編程的朋友常常對此很容易產生混淆,甚至用錯。今天利用閑暇時間給朋友們梳理一下這些程序塊到底是是代表什么意思,我們又該如何去用它們。
學過PLC的朋友都知道,在對軟件編寫程序的時候我們常常用三種編程方法,一種是結構化編程,另一種是線性化編寫程序,還有一種是模塊化的程序編寫。特別是在模塊化編程和結構化編程中就會常常用到上述用戶塊的功能。首先我們先解答一下什么是“塊”?!皦K”的誕生和功能1、“塊”的功能在PLC程序中有兩種程序,一種是廠家在生產PLC時把它固化在PLC內部CPU中的系統(tǒng)程序,還有一種就是我們需要自己編寫且能夠隨意“擦寫”和下載的用戶程序。
我們在編寫PLC程序時,為了使我們的程序條理清晰和便于管理維護和閱讀,軟件制作者給我們規(guī)制制作了不同功能的塊,我們在編寫程序時就把不同功能的程序寫在不同的程序塊中,當PLC運行時,它的CPU就會按照程序需要運行的條件去命令相應的“塊”來完成特定的控制任務,這就是塊的功能?!癋C”函數的意義及使用在PLC編程軟件中的"FC"是指函數的意思,它是用戶自己編寫的程序塊。
在函數(FC)中是沒有數據存儲器的,它是可以通過調用使用,在調用時要給它的形式參數送一個具體的數值才可以用。另外在這個“FC”函數里面是有局部變量表和塊參數的,比如這些變量可以是有輸入、輸出和輸入/輸出和臨時變量等。它有點類似一個子程序,可以在主程序中調用。舉個PLC啟??刂频暮唵卫?,我們可以在主函數中建立一個子函數“FC”命名為“啟??刂艶C1”,建立好函數后給啟動按鈕與停止按鈕以及輸出繼電器關聯一個具體的實際參數就可以了。
比如I0.0和I0.1是啟動和停止,Q0.0是輸出控制電機,我們把這種函數的調用叫絕對調用,很顯然這種方式是不夠靈活的?!癋B”函數塊的意義和作用這個“FB”函數塊是我們自己編寫程序時自己可以創(chuàng)建的,我們創(chuàng)建的這個函數塊FB具有他的參數是可以分配的特點,具有相應的存儲空間。比如剛才講的我們在主程序創(chuàng)建了“FC”函數,由于采用了絕對調用顯得不夠靈活,如果我們用“FB”函數塊來操作就顯得很“柔性化”了。
我們先在項目中建立一個函數塊,在輸入參數中建立兩個變量分別命名“啟動變量”和“停止變量”,再在輸出參數中建立一個變量,命名為“電機變量”。然后再通過主程序調用后,啟動和停止按鈕就不僅限于I0.0和I0.1了,我們可以任意地相關聯就可以了,所以通過“FB”函數塊的使用使程序更加靈活,增加了程序的“柔性化”。
“DB”數據塊的意義和作用“DB”是數據塊,它的作用是儲存我們所編寫程序時所用的數據的,以及所我們所設置的中間變量也都有它存儲。我們把這種數據塊“DB”分成全局數據塊、數據背景數據塊和數據類型數據塊三種。全局數據塊是存儲程序數據的,它可以存儲我們前面所設置的變量,比如前面說的“啟動變量”和“停止變量”等。
“OB”組織塊的意義和作用“OB”組織塊是PLC的軟件操作系統(tǒng)與我們所編寫程序的接口,在PLC啟動后,PLC里面的CPU就會循環(huán)執(zhí)行OB組織塊,在“OB”組織塊中我們可以調用“FC”函數和“FB”函數塊?!癘B”具有多個種類,比如有主程序快“OB1”、中斷程序塊“OB10”等,這樣以來組織塊“OB”是具有優(yōu)先級的。