.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技术匠]** 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

相关推荐
时光追逐者2 小时前
一款基于Fluent设计风格、现代化的WPF UI控件库
开发语言·ui·c#·.net·wpf·微软技术
Crazy Struggle10 小时前
推荐一款强大的开源物联网 Web 组态软件
物联网平台·工业上位机·web组态平台
三合视角14 小时前
他又又来了,c#开源sql解析引擎类库【SqlParser.Net 1.0】正式发布,它可以帮助你简单快速高效的解析和处理sql
c#·.net·sql解析·sql parse engine·sql parser·sql解析引擎
AitTech1 天前
.NET中的JSON序列化库:Newtonsoft.Json与System.Text.Json对比与示例
json·.net
冷眼Σ(-᷅_-᷄๑)1 天前
.net framework手动升级到.net core注意点
.net·.netcore
SEO-狼术1 天前
Enhance .NET 9 Apps with Advanced Charting
.net
张3蜂1 天前
.NET 8 Blazor Web项目中的 .razor 文件与 .cshtml 文件的本质区别
前端·.net
喵叔哟1 天前
19. 【.NET 8 实战--孢子记账--从单体到微服务】--记账模块--收支记录
大数据·微服务·.net
boligongzhu1 天前
.NET(C#) 如何配置用户首选项及保存用户设置
c#·.net