.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 数据库帮助组件,同时为变量数据归档提供支持。ClientDriver、ModbusDriver、OPCDriver、FileDriver:各类通讯组件。
Example 目录 [存放样例]:
参照
Document/部署流程,还原数据库,修改配置文件。启动
BatchCoreTest.exe(服务端)。再启动
CoreTest.exe(客户端)。
项目计划
1、支持 .NET Core
当前已有测试版位于CoreApp文件夹中。
2、实现更多通讯接口
计划支持欧姆龙、OPC UA 等通讯协议。
3、提供更多图元组件
增加适用于楼宇自控、化工等行业的新图元组件。
4、功能扩展
进一步增强数据处理能力和过程控制功能。
5、增强安全性
安全性是重中之重,目前在这方面还需要进一步加强。
项目效果



项目地址
GitHub:https://github.com/GavinYellow/SharpSCADA
最后
如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。
也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

.NET 工控网关 轻量级组态软件的更多相关文章
- 开源纯C#工控网关+组态软件
一. 前言 在园子潜水也七八年了.说来惭愧,这么多年虽然一直自称.NET铁杆粉丝,然仅限于回几个不痛不痒的贴,既没有发布过代码,也没有写过文章. 看着.NET和C#在国外风生水起,国内却日趋没落, ...
- 开源纯C#工控网关+组态软件(二)工控网关的实现
一. 工控网关是什么 网关是物联网和工控系统的核心组件.网关起的是承上启下的作用.上即上位机,电脑/触屏监控系统.MES这些:下即下位机,包括PLC.传感器.嵌入式芯片等. 不同厂家的下位机,往往 ...
- 开源纯C#工控网关+组态软件(八)表达式编译器
一. 引子 监控画面的主要功能之一就是跟踪下位机变量变化,并将这些变化展现为动画.大部分时候,界面上一个图元组件的某个状态,与单一变量Tag绑定,比如电机的运行态,绑定一个MotorRunning ...
- 开源纯C#工控网关+组态软件(七)数据采集与归档
一. 引子 在当前自动化.信息化.智能化的时代背景下,数据的作用日渐凸显.而工业发展到如今,科技含量和自动化水平均显著提高,但对数据的采集.利用才开始起步. 对工业企业而言,数据采集日益受到重视, ...
- 开源纯C#工控网关+组态软件(九)定制Visual Studio
一. 引子 因为最近很忙(lan),很久没发博了.不少朋友对那个右键弹出菜单和连线的功能很感兴趣,因为VS本身是不包含这种功能的. 大家想这是什么鬼,怎么我的设计器没有,其实这是一个微软黑科技 ...
- 开源纯C#工控网关+组态软件(十)移植到.NET Core
一. 引子 写这个开源系列已经十来篇了.自从十年前注册博客园以来,关注了张善友.老赵.xiaotie.深蓝色右手等一众大牛,也围观了逗比的吉日嘎啦.精密顽石等形形色色的园友.然而整整十年一篇文章都 ...
- 最新工控\建模仿真\组态\监控集成开发平台源码解决方案2019 ---所有VC++源码100%提供!
使用E-Form++可视化企业版本,构建属于自己的专业工控.建模仿真. 监控组态.培训仿真平台! -- 100%源码 (全部采用VC++/MFC编写,支持.NET, Java, Web, Delphi ...
- 开源纯C#工控网关+组态软件(六)图元组件
一. 图元概述 图元是构成人机界面的基本单元.如一个个的电机.设备.数据显示.仪表盘,都是图元.构建人机界面的过程就是铺排.挪移.定位图元的过程. 图元设计是绘图和编码的结合.因为图元不仅有显示和 ...
- 开源纯C#工控网关+组态软件(三)加入一个新驱动:西门子S7
一. 引子 首先感谢博客园:第一篇文章.第一个开源项目,算是旗开得胜.可以看到,项目大部分流量来自于博客园,码农乐园,名不虚传^^. 园友给了我很多支持,并提出了很好的改进意见.现加入屏幕分辨率自 ...
- 开源纯C#工控网关+组态软件(四)上下位机通讯原理
一. 网关的功能:承上启下 最近有点忙,更新慢了.感谢园友们给予的支持,现在github上已经有.目标是最好的开源组态,看来又近一步^^ 之前有提到网关是物联网的关键环节,它的作用就是承上启下. ...
随机推荐
- 【MySQL】JSON相关
一些概念 MySQL里的json分为json array和json object. $表示整个json对象,在索引数据时用下标(对于json array,从0开始)或键值(对于json object, ...
- 【Vue】Re15 Router 第二部分(缺省路由、动态路由)
一.设置首页重定向: import Vue from 'vue'; import Router from 'vue-router'; import Home from "../compone ...
- 【Docker】10 容器存储
将容器保存为一个镜像: docker commit 容器的名称 创建的镜像的名称 将镜像保存为一个tar包文件: docker save -o tar包文件名称.tar 镜像名称 可以看到Docker ...
- python库 —— gym retro 的 ROMs文件下载地址
如题: python库 -- gym retro 的 ROMs文件下载地址: https://archive.org/details/No-Intro-Collection_2016-01-03_Fi ...
- 乌克兰学者的学术图谱case3
============================================ 背景: 弗兰采维奇材料问题研究是欧洲最大的材料科研院所,在核电.航空.航天.军工及其他装备制造领域的先进材料研 ...
- baselines算法库common/atari_wrappers.py模块分析
common/atari_wrappers.py模块代码如下: import numpy as np import os os.environ.setdefault('PATH', '') from ...
- 手把手教你安装MINIGUI编程环境 (MINIGUI版本3.2.0)
0. MINIGUI MiniGUI 是一款面向嵌入式系统的高级窗口系统(Windowing System)和图形用户界面(Graphical User Interface,GUI)支持系统,由魏永明 ...
- 如何诱导AI犯罪-提示词注入
我们用到的大模型基本把政治类信息.犯罪相关信息都已屏蔽.但是,黑客依旧可以使用提示词诱导和提示词注入的方式对大模型进行攻击. 1.提示词诱导 如果直接让AI提供犯罪过程,AI会直接拒绝.虽然AI对于大 ...
- C++ 中string,wstring,CString常用方法
一.概念 string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中.wstring是操作宽字符串的类.C++标准程序库对于string的设 ...
- 【漏洞分析】OSN 代币攻击事件:一笔资金伪造多个分红大户
背景 OSN 是一种 fee on transfer 代币,会根据用户分红账户的余额对用户发放分红.攻击者利用漏洞增发分红账户的余额,随后触发分红机制完成获利. OSN:https://bscscan ...