.NET 工控网关 轻量级组态软件

前言

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、增强安全性

安全性是重中之重,目前在这方面还需要进一步加强。

项目效果

项目地址

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

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。

也可以加入微信公众号**[DotNet技术匠]** 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

相关推荐
专注VB编程开发20年8 小时前
C#全面超越JAVA,主要还是跨平台用的人少
java·c#·.net·跨平台
一个帅气昵称啊18 小时前
.Net通过EFCore和仓储模式实现统一数据权限管控并且相关权限配置动态生成
.net·efcore·仓储模式
helloworddm20 小时前
CalculateGrainDirectoryPartition
服务器·c#·.net
步步为营DotNet21 小时前
深度剖析.NET中HttpClient的请求重试机制:可靠性提升与实践优化
开发语言·php·.net
ChaITSimpleLove1 天前
使用 .net10 构建 AI 友好的 RSS 订阅机器人
人工智能·.net·mcp·ai bot·rss bot
专注VB编程开发20年1 天前
vb.net宿主程序通过统一接口直接调用,命名空间要一致
服务器·前端·.net
ChaITSimpleLove2 天前
基于 .NET Garnet 1.0.91 实现高性能分布式锁(使用 Lua 脚本)
分布式·.net·lua
用户4488466710602 天前
.NET进阶——深入理解线程(2)Thread入门到精通
c#·.net
一个帅气昵称啊2 天前
.Net——AI智能体开发基于 Microsoft Agent Framework 实现第三方聊天历史存储
人工智能·microsoft·.net