.NET 工控閘道器 輕量級組態軟體

小码编匠發表於2024-10-11

前言

C# 工控閘道器 + 輕量級組態軟體。

專案介紹

SharpSCADA 是一個開源專案,提供靈活且強大的解決方案,以滿足工業自動化和監控的需求。

作為一個輕量級的工業控制閘道器和組態軟體,SharpSCADA 支援多種工業協議,包括西門子的 Profinet、AB 的 EtherNet/IP、施耐德的 Modbus 以及 OPC 等,透過類 OPC 介面閘道器實現資料通訊。

主要特性

1、輕量級工控閘道器

支援主要的工業協議,包括西門子的 Profinet、AB 的 EtherNet/IP、施耐德的 Modbus 以及 OPC。

採用類 OPC 介面閘道器實現資料通訊。

2、資料採集、歸檔、預警及配置工具

支援實時資料採集、歷史資料歸檔、變數觸發預警。

使用 TagConfig 工具實現簡便的配置。

3、人機介面(設計時和執行時)

設計時:採用 Microsoft Visual Studio + 設計器外掛(已測試透過 VS2010 至 VS2015 社群版)。

透過繼承 HMIControlBase 介面並編寫少量程式碼即可實現複雜的圖元元件。支援圖元拖放、組合、連線、變數繫結及編輯功能。

執行時:透過 Microsoft Visual Studio 編譯為可執行檔案。

專案使用

1、測試原始碼

開啟專案工程檔案:在\SCADA\Program\DataExchange.sln執行(支援 VS2010 至 VS2015 各版本)。

2、執行可執行檔案測試

Server 端測試:在\SCADA\Program\BatchCoreTest\bin\Debug目錄下執行 BatchCoreTest.exe

Client 端測試:在\SCADA\Program\CoreTest\bin\Debug目錄下執行 CoreTest.exe

參考Document資料夾中的教程:

  • 《部署流程》

  • 《設計流程》

3、快速啟動

還原資料庫

修改配置檔案並複製到 C 盤根目錄下

修改資料庫內驅動程式的路徑

執行 DEMO

具體流程可參看《部署流程》文件。

4、開發工具

Visual Studio/Blend:作為組態設計器,推薦使用 VS2010 或 VS2015 版本。

專案目錄

Database 目錄 [存放資料檔案]:

  • db2014.bak:SQL Server 2014 資料備份檔案。

  • db2008.bak:SQL Server 2008 資料備份檔案。

  • test.opf:Kepserver 4.5 資料檔案(可透過該軟體還原為變數表)。

  • 兩個 .csv 檔案:兩組變數檔案。

DataConfig 目錄 [存放配置檔案]:

  • host.cfg:主配置檔案,第一行為閘道器伺服器名/IP地址。本地測試時,預設為 localhost

  • client.xml:客戶端配置檔案。

  • server.xml:閘道器服務配置檔案。

dll 目錄 [存放驅動程式及第三方元件]:

  • OPCDriver:OPC 通訊元件。

  • DynamicDataDisplay:開源歸檔資料顯示元件。

  • WPFToolkit:WPF 開源擴充套件工具包。

  • libnodave:西門子驅動開源庫。

TagConfig 目錄 [存放配置工具]:

  • 可方便配置驅動、組、變數、報警、量程等資訊。支援匯入匯出。

Program 目錄 [存放原始碼]:

  • BatchCoreTest 工程:閘道器伺服器測試程式碼(控制檯顯示)。

  • BatchCoreService 工程:與 BatchCoreTest 類似,但可編譯為 Windows 服務。

  • DataService 工程:框架及主要介面元件。

  • CoreTest 工程:樣例檔案,包含一系列介面元素。

  • HMIControl 工程:圖元元件,支援工具欄拖放。

  • LinkableControlDesignTime 工程:Visual Studio 設計器支援外掛。

  • DataHelper 工程:SQL 資料庫幫助元件,同時為變數資料歸檔提供支援。

  • ClientDriverModbusDriverOPCDriverFileDriver:各類通訊元件。

Example 目錄 [存放樣例]:

  • 參照 Document/部署流程,還原資料庫,修改配置檔案。

  • 啟動 BatchCoreTest.exe(服務端)。

  • 再啟動 CoreTest.exe(客戶端)。

專案計劃

1、支援 .NET Core

當前已有測試版位於CoreApp資料夾中。

2、實現更多通訊介面

計劃支援歐姆龍、OPC UA 等通訊協議。

3、提供更多圖元元件

增加適用於樓宇自控、化工等行業的新圖元元件。

4、功能擴充套件

進一步增強資料處理能力和過程控制功能。

5、增強安全性

安全性是重中之重,目前在這方面還需要進一步加強。

專案效果

.NET 工控閘道器 輕量級組態軟體

.NET 工控閘道器 輕量級組態軟體

.NET 工控閘道器 輕量級組態軟體

專案地址

GitHub:https://github.com/GavinYellow/SharpSCADA

最後

如果你覺得這篇文章對你有幫助,不妨點個贊支援一下!你的支援是我繼續分享知識的動力。如果有任何疑問或需要進一步的幫助,歡迎隨時留言。

也可以加入微信公眾號[DotNet技術匠] 社群,與其他熱愛技術的同行一起交流心得,共同成長!優秀是一種習慣,歡迎大家留言學習!

相關文章