概述
西門子S7-1200編程可以使用的代碼塊有 OB 塊,FC 塊和 FB 塊。功能塊 (FB) 是從另一個代碼塊(OB、FB 或 FC)進行調用時執行的子例程。在調用 FB 塊時會生成與之相匹配的背景數據塊,在背景數據塊中可以存儲定義的接口參數及靜態變量。下面將具體介紹 FB 塊的使用,主要包含以下 5 個方面:
FB 塊支持的編程語言
FB 塊的塊接口
FB 塊的編程
FB 塊的調用
FB 塊的背景數據塊屬性修改
S7-1200 使用 FB 塊編程支持的編程語言有 LAD、FBD、 SCL 以及 CEM (博途 V17 開始支持),如圖 1 所示。
圖 1. FB 塊支持的編程語言
二、FB塊的接口FB 塊有一個塊接口區,可以用來定義塊接口。在 FB 的塊接口區域中可以定義的接口類型:Input(輸入)、Output(輸出)、InOut(輸入輸出)、Static(靜態變量)、Temp(臨時變量)以及 Constant (常量),如圖 2 所示。
圖 2. FB 塊接口區
對于 FB 塊的塊接口訪問如表 1 所示:
接口類型 | 讀寫訪問 | 描述 |
Input | 只讀 | 調用 FB 塊時,將數據傳送到 FB 塊,實參可以為常數 |
Output | 讀寫 | 將 FB 塊執行的結果輸出,實參不可以為常數 |
Inout | 讀寫 | 讀取外部實參數值并且將結果返回到實參,實參不可為常數 |
Static | 讀寫 | 靜態變量存儲在背景 DB 塊中,不參與對外的參數傳遞 |
Temp | 讀寫 | - |
Constant | 只讀 | - |
表 1. FB 塊塊接口訪問
對于帶參數的 FB 塊,有形參和實參 2 個概念,如圖 3 所示。
形參:塊接口區域定義的 Input,Output,InOut 參數;在調用 FB 塊時,會以引腳方式出現在 FB 塊上。Input 和 InOut 類型的變量出現在 FB 塊的左側;Output 類型的變量出現在 FB 塊的右側。
實參:在調用帶參數的 FB 塊時,為形參填寫的實際變量。
圖 3.形參和實參
二、FB塊編程FB 塊在編程時可以選擇是否在塊接口區定義變量。可以主要分為有 兩種情況:
(1)情況1:FB 塊帶參數——定義塊接口,FB 塊中通常不出現任何全局變量(DB、I、Q、M);優點:模塊化編程,對于相同的功能/邏輯只需要編寫一個 FB 塊,無需重復多次編寫相同的代碼,進行大量重復性工作;還可將 FB 塊做成項目庫或全局庫,以便后續其他項目或其他工程師使用。FB 塊編寫程序代碼,如圖 4 所示。
圖 4.帶參數的 FB 塊編程
FB 塊調用以及實參參數的填寫,參考圖 3 。右鍵打開圖 3 中 FB 塊的背景數據塊 “motor_DB”,顯示內容如圖 5 所示。在背景數據塊中可顯示 Input、Output、InOut 及 Static 變量,Temp 和 Constant 變量不會出現在背景數據塊中。
圖 5. FB 塊背景數據塊顯示內容
編寫的帶參數的 FB 塊,可以多次調用,只需為每次調用的 FB 塊填寫不同的實參。同樣的功能僅需編寫一次即可,無需重復編寫相同的代碼。注意:一般情況下每次調用需要生成不同的背景數據塊。對于部分系統 FB 指令,可能有不同要求,詳見具體指令說明。
////////////////////////////////////////////////////////////////////////////////
(2)情況2:FB 塊不帶參數——不定義任何塊接口,FB 塊編程中,使用全局變量;此種方式不推薦。如果在 FB 塊中編程時不定義任何塊接口變量,那么,在 FB 塊中編程時只能使用全局變量。FB 塊編程如圖 6 所示。
圖 6.不帶參數 FB 塊編程
不帶參數的 FB 塊調用及其背景數據塊,如圖 7 所示。
圖 7.不帶參數 FB 塊調用及其背景數據塊
- 16平方的電纜居然帶不動18.5KW的電機? 2024-12-02
- 還不會S7-1200安全保護嗎?教你用向導輕松搞定! 2024-12-02
- S7-1200技術參考V4.2全新發布! 2024-12-02
- 西門子 S7-1500 訂貨號說明與選型(二) 2024-12-02
- 西門子 S7-1500 訂貨號說明與選型 2024-12-02
- 圖解西門子 S7-1200 通訊 2024-12-02
- 西門子 S7-1200 參數匯總 2024-12-02
- 圖解非標自動化設備開發流程 2024-12-02
- 一步步教你Modbus通訊,再不會就真的沒辦法了! 2024-12-02
- 巧用西門子CPU時鐘信號,讓定時更精準! 2024-12-02
- 如何設置西門子CPU系統執行時間? 2024-12-02
- 為什么要選用S7-1200這款PLC? 2024-12-02
- 圖解S7-1200運動控制軸 2024-12-02
- 西門子伺服V90選型須知 2024-12-02
- 西門子S7-1500與S7-300型譜對照表 2024-12-02
聯系方式
- 電 話:13922889745
- 經理:向小姐
- 手 機:18475208684
- 微 信:18475208684