Automation softPLC 教學指南 (2):子程序和用戶自定義功能塊 UDFB
本篇將教您如何在 Automation softPLC Studio 中建立與使用 IEC 子程序(Sub Program)與 用戶自定義功能塊 UDFB(User Defined Function Block), 協助工程師提升 PLC 程式的模組化、重複使用性與維護效率。
回顧第 1 篇:Automation softPLC 入門操作指南文章目錄
什麼是 Automation softPLC 子程序與 UDFB?
Automation softPLC 是一套支援 Linux、Xenomai、INtime、Windows 等即時作業系統的 PLC 編程環境, 適合需要使用 IEC 61131-3 與 PLCopen 標準進行控制系統開發的工程師。
在 Automation softPLC Studio 中,用 IEC 語言編寫的函數稱為 子程序(Sub Program);使用 IEC 語言開發的功能塊則稱為 UDFB(User Defined Function Block,用戶自定義功能塊)。
子程序與 UDFB 有什麼差異?
| 項目 | 子程序 Sub Program | UDFB 用戶自定義功能塊 |
|---|---|---|
| 主要用途 | 封裝可重複呼叫的程式邏輯 | 建立可重複使用的功能模組 |
| 適合情境 | 簡單運算、流程控制、固定邏輯 | 複雜控制邏輯、狀態保存、模組化設計 |
| 開發優勢 | 讓程式更簡潔、降低重複撰寫 | 提升程式可維護性與可擴充性 |
| SEO 關鍵概念 | IEC 子程序、PLC Sub Program | IEC Function Block、PLC UDFB |
Step 1:如何建立和使用 Automation softPLC 子程序?
1. 從工作區選單插入新程序
進入 Automation softPLC Studio 後,從工作區選單中點擊「插入新程序」。
2. 命名子程序並選擇 IEC 語言
為子程序命名後,選擇需要使用的 IEC 編程語言。需注意的是,此處不能選擇 SFC。
3. 定義子程序的輸入與輸出
點擊確定後,系統會開啟另一個對話框,讓使用者定義子程序的輸入與輸出參數。
4. 修改子程序參數
如需調整參數,可以透過工作區選單進一步修改。
5. 在局部變量編輯器中確認參數
在局部變量編輯器中,您仍然可以看到這些參數,並可進行補充或修改。
6. 在其他 POU 中調用子程序
完成設定後,該子程序即可被其他 POU 呼叫使用,讓 PLC 程式架構更清楚、更容易維護。
Step 2:如何建立和使用 UDFB 用戶自定義功能塊?
建立 UDFB 的流程與建立子程序相似,但需在 New Program 對話框中選擇 UDFB 選項。UDFB 適合用於封裝可重複使用的控制邏輯, 尤其適合較複雜、需要模組化管理的 PLC 應用。
Automation softPLC 子程序與 UDFB 使用注意事項
避免命名混亂
建議使用具備功能意義的命名方式,避免後續維護時難以辨識用途。
先規劃輸入輸出
建立前先確認輸入、輸出與變數類型,可降低後續修改成本。
善用模組化
將重複邏輯拆成子程序或 UDFB,可提升整體程式可讀性。
確認語言限制
建立子程序時需注意語言選擇限制,例如不能使用 SFC。
常見問題 FAQ
Q1:Automation softPLC 的 UDFB 是什麼?
UDFB 是 User Defined Function Block 的縮寫,意思是用戶自定義功能塊,可用於封裝可重複使用的控制邏輯。
Q2:子程序和 UDFB 哪一個比較適合模組化設計?
若只是簡單邏輯重複使用,可使用子程序;若需要更完整的功能模組與較高維護性,UDFB 通常更適合。
Q3:Automation softPLC 支援哪些 IEC 61131-3 語言?
Automation softPLC 支援 ST、IL、FBD、SFC、LD 等符合 IEC 61131-3 標準的 PLC 編程語言。
Q4:建立子程序時可以選擇 SFC 嗎?
不建議,也不適用於此流程。建立子程序時,語言選擇不能是 SFC。
想了解 Automation softPLC 如何應用於工業控制系統?
宏虹可協助企業評估 Automation softPLC、IEC 61131-3 編程環境、PLCopen 架構與工業控制系統整合需求。