實現了一套面向IEC-61131-3 v2.0版本的PLC集成開發環境。
整套軟件從主機端工具到PLC設備端的軟件,全自研!
操作系統
- 目前在Linux上運行
- 后續支持RT-Thread、OpenHarmonyOS
IEC-61131-3 RTE
- 基於標准C語言和POSIX接口開發
- 實現了對MODBUS TCP的支持
- 實現了PLC應用狀態管理
- 實現了PLC應用調試帶來
設備通信
- 基於UDP廣播發現局域網中的設備
- 基於TCP與設備進行通信
- 實現了在開發環境中修改設備的IP、網關等信息
- 實現了在開發環境中查看設備資源使用情況,如:CPU、內存
- 實現了在開發環境中查看PLC運行時日志信息
- 實現了在開發環境中下載PLC 應用到設備中
編譯器
- 實現了Ladder到ST的轉換
- 實現了FBD到ST的轉換
- 實現了ST到C語言的轉換
調試器
- 實現了針對ST語言的源碼級調試
- 實現了針對ST語言的運行時斷點
- 實現了針對ST語言的源碼級單步
變量監控
- 實現了對全局變量、PROGRAM中的變量、FB中的變量的監控
- 實現了在線修改變量值
運行控制
- 實現了對PLC設備中的任務停止/運行的控制
針對ST的支持如下
- 編輯器實現了語法高亮
- 編輯器實現了智能提示
- 編輯器實現了代碼自動補全
- 編輯器實現了關鍵字大小寫自動轉換
- 實現了IEC-61131-3 v2.0全部語法
- 支持在ST中使用引用、指針
- 支持MODBUS TCP
- 實現了IEC-61131-3 v2.0中的標准庫
- 提供了一套完善的MODBUS TCP FB庫
針對Ladder的支持
- 實現了基於Ladder創建POU
- 實現了基於梯形圖的變量監控
針對FBD的支持
- 實現了基於FBD創建POU
- 實現了基於FBD的變量監控
軟件部分截圖
- ST編輯器
- Ladder編輯器
- 項目視圖
在開發這一套軟件的過程中,深感行業知識的匱乏以及原創技術之路的不易。
希望和志同道合的人、組織一起前進!