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

  • 相关阅读:
    集群模式执行Spark程序(第七弹)
    郑州大学编译原理实验三算符优先分析算法JAVA
    Aspose.Words for .NET查找和替换教程——使用元字符查找和替换文本
    用java语言写一个RSA方式的数据签名、验签,服务端和客户端双方各生成一对RSA公私钥,并交换公钥。己方私钥用于加密,对方公钥用于验签,代码实例类编写。
    鸿蒙开发系列教程(二十三)--List 列表操作(2)
    关于数据中心的设计方案,数据中心网络规划设计
    插上u盘显示格式化怎么办?
    我认为除了HelloWorld之外,Python的三大数据转换实例可以作为开始学习Python的入门语言。
    Linux下设置网关以及网络相关命令
    [附源码]计算机毕业设计JAVAjsp昭通推广网站开发
  • 原文地址:https://www.cnblogs.com/1312mn/p/18436159