自己网站建设和维护,想在百度做推广怎么做,微信小程序怎么做购物网站,网站关键词排名批量查询一、 前言 在园子潜水也七八年了。说来惭愧#xff0c;这么多年虽然一直自称.NET铁杆粉丝#xff0c;然仅限于回几个不痛不痒的贴#xff0c;既没有发布过代码#xff0c;也没有写过文章。 看着.NET和C#在国外风生水起#xff0c;国内却日趋没落#xff0c;我也早觉得有… 一、 前言 在园子潜水也七八年了。说来惭愧这么多年虽然一直自称.NET铁杆粉丝然仅限于回几个不痛不痒的贴既没有发布过代码也没有写过文章。 看着.NET和C#在国外风生水起国内却日趋没落我也早觉得有写一点东西的必要了。 二、 为什么要开源它能做什么 开源是大势所趋 现在已经不是兜售软件光盘卖授权的时代了。我自己开发这套系统也得益于开源。 起因是因为看到单位用的组态软件被版权问题困扰同时系统十分庞大动辄几个G安装部署调试都不方便同时脚本功能和扩展能力也有限。 开始就是自己研发同事普遍反对都认为组态软件是大公司玩的东西我靠一人一枪图样图森破。 然而我是个狂热分子参考了几百篇国内论文下载过几十上百个开源类库反复研究经常熬夜。 一段时间之后拿出来一套半成品也逐渐为大家所接受并一发不可收陆续做了不少工程逐步取代了原有的组态软件系统也不断成熟、壮大。 但限于精力和水平系统完善的空间还很大可以改进的功能还很多与其敝帚自珍不如交给社区共同完善。 这套系统只是提供了一套组件和工具并没有给出具体的行业解决方案和控制逻辑这属于不能开源的部分。 目标和功能 从一开始设计目标就很明确取代单位现有组态软件。实现“多快好省”。 系统架构图如下 分为网关驱动层、平台服务层、应用层。 网关负责转换各种工业以太网协议统一接口。 平台服务层负责轮询、储存、推送数据。提供各种查询、读写接口。 应用层主要是人机界面HMI和各种可视化功能组件如报警界面、趋势图、报表、图表、下订单、改参数、查日志等。 多就是适应面广比如工控网关能支持多种工业以太网、PLC普适性强可应用于多个行业。 目前已经支持 Modbus TCP/RTU OPC DA DDE AB EtherNetIP Mitsubishi Siemens S300/200/1200/1500 快这里包含三个意思设计效率高、安装部署快、运行速度快。 有方便的设计工具。驱动、变量、报警、归档管理器对就这样一个简单的配置器支持各种格式导入导出。 接下来是宇宙第一IDE,Visual Studio作为组态设计器。组态设计器本来是最难实现的部分现在VS一出秒杀一片。 速度按我自己做一套多工段上位机的画面快则一天内慢也就两三天。 运行速度按批量读写方式订阅-推送模式几千个变量几百个显示单元含动画通讯周期500毫秒很流畅。 好就是界面美观、功能齐全、易用性好扩展性好。 目前已完成的功能包括 工业网关支持多种协议。如有新驱动加入接口实现非常简便。 实时数据引擎实时推送变化的数据支持远程服务器N个客户端。 历史数据归档引擎支持N变量快速归档可为数据分析和数据挖掘提供支持。归档文件很小自带索引查询快速。 人机界面可以充分利用VS设计器的强大功能辅之以强大的插件自吹一下完全可以把VS设计器当做组态设计器来用。 扩展性加入新功能很快因为接口很简单。但是功能却不简单。 省顾名思义就是省钱省时间啦。 首先系统环境简单就是装个.NET因为只要求4.0WIN7自带数据库可用SQL EXPRESS没有采用任何第三方收费组件开源组件在github列了清单感谢作者。 VS作为设计器强大又好用可用社区免费版个人用用没关系企业的话最好联系微软买正版授权。 支持各种PLC单位老组态软件很多PLC不支持在这里加入一个新的设备驱动很方便。 三、 三个为什么 考虑到吹了半天牛B大家也许会问以下三个问题 为什么要用.NET 平台 第一本人是微软粉丝.NET忠实码农用了十多年了无往不利。无论是一心为公还是私活利器。首先.NET本身就是一个多快好省的平台配合宇宙第一IDE开发效率极高。 其二微软也越来越开放.NET跨平台能力也越来越强。至于被很多喷子狂喷的所谓.NET工资低那是因为国内特殊原因造成JAVA码农已先入为主。 本人这行业目前没有公司政治的问题因此也从来没考虑转型曾经为安卓APP写过JAVA也很简单但是我要吐槽一下同样功能JAVA实现起来太啰嗦)。 为什么要用WPF? WPF是一种声明式编程方式XAML语言非常适合工控界面设计。同时微软提供了Blend设计器实际上画这些控件的都是不会写代码的机械工程师。 实现了前后台分离的协作方式。加上有宇宙第一IDE的配合可以做的非常炫。 为什么要用Visual Studio 很简单宇宙第一IDE不是盖的。我见过很多家的组态画面设计器。无论效果还是易用性还是扩展性和VS没法比。VS同时还集成了项目管理和编译器。 关于VS扩展性大家很少用到本人也填过很多坑找了很多资料实现之后你才知道它的强大。 四、 下面的计划 完善功能。 在社区的协助下修补Bug,增强安全性稳定性。能用起来就是胜利。然后追求更加“多快好省”。 写一系列帖子把架构、原理讲清楚。 提纲和目录也拟好了。大致如下 网关层原理、接口说明 如何实现一个设备驱动 如何设计图元 VS插件模块及原理 归档模块及文件格式 如何进行功能扩展 github地址https://github.com/GavinYellow/SharpSCADA。 github上面有说明书。下载包里还包括如何安装部署、如何用来设计的Word文档。比较粗略欢迎提问。 原文地址http://www.cnblogs.com/evilcat/p/7617720.html.NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注