通用上位机框架HwLib.Automation(C#)

概述

  现在的工业自动化领域,虽然组态软件因简单易用、价格合理而被广泛部署到各行各业的控制系统上。但对于一部分应用场景来说,自己开发上位机应用程序依然占有不小的市场,诸如:

  1、标准化设备厂商,大量的软件授权也是一笔不菲的软件成本费用;

  2、某一行业的系统提供商,每个控制系统差异不大,容易标准化;

  3、上位机要求高,常规的组态软件无法满足;

  4、特有的算法或者模型需要技术保密;

  5、其它小规模、低成本项目;

  组态软件之所以盛行最主要还是因为其可以快速实现控制需求,丰富的图库、驱动,集成的报警、归档功能,简单的配置即可实现数据可视化,这些无论是C#、VB或者DELPHI都无法比拟的。虽然我们采用C#的开发速度和组态软件无法相比,但是我们可以通过一系列的方法最大限度的提高使用C#开发上位机的效率,比如封装驱动,开发自定义控件来提高程序的复用性等。

HwLib.Automation

  HwLib.Automation就是这样的一套使用C#开发的工业控制程序框架。它的目标是帮助客户快速实现需求,节省之前耗费在数据采集、用户管理、画面规划等基础工作上面的时间。使客户能够将精力集中在业务需求上面,最大化的提高工程交付质量和速度。比如通过简单的配置就可以实现和PLC的数据交互。

图1 HwLib.Automation

  HwLib.Automation采用工业标准设计,源码级交付。到目前为止,HwLib.Automation已经经受了同时和16台PLC交互数据、2200余外部变量的项目考验。

  HwLib.Automation具有下列功能与特点。

  1、集成画面管理;

  2、集成用户管理;

  3、操作权限管理;

  4、集成S7驱动,无需编写一行代码即可实现和西门子系列PLC通信;

  5、符合工业控制需求的自定义控件;

  6、扩展的窗体类,使用HwLib控件无需编写一行代码即可和PLC进行数据交互;

  7、预留扩展接口,可以基于HwLib.Automation进一步丰富功能;

  8、框架涉及了委托、反射、泛型等经典C#技术,有助于进一步提升编程技能;

  9、经过实际项目考验,稳定、可靠,符合工业标准;

  10、原创的源码级交付,没有任何版权风险,可以放心的应用到工程项目中;

特色功能简介

1、双向数据绑定

  框架中包含了常用的一些自定义控件,比如按钮、指示灯、仪表盘等。所有的控件均支持数据双向绑定,也就是说只要我们在控件的属性中指定了驱动顺序号以及变量名称,框架会按照指定的周期自动更新数据。在用户操作时,比如从I/O域中输入新的数值或者按下按钮等操作框架会自动将新值写入到PLC中,这些过程全部由框架完成,无需开发人员编写一行代码。

图2 框架内置控件I/O域

2、权限管理

  HwLib.Automation集成了用户权限管理,权限等级为从0-9,0表示最低权限,9表示最高权限。如果当前登录的用户权限大于控件的访问级要求则可以操作该控件,反之则禁止操作。

图3 按钮控件的权限展示

  在上图中,自定义按钮控件的访问级为2,那么只有当已登录用户的权限大于2才可以点击该按钮,反之则该按钮为禁用状态。

3、用户管理

框架内置用户管理功能,支持新建、修改和删除用户信息。便于进行用户权限管理。

图4 用户权限管理

4、驱动管理

  框架内置了主流通信协议(目前暂时只有西门子的S7协议,支持和S7-200Smart/300/400/1200/1500通信)。通过简单配置即可完成和PLC等设备的数据交互。

图5 驱动管理

  我们把这里创建的变量名称填写到控件的属性“TagName”中即可实现数据的双向绑定,这些过程无需我们的开发人员编写一行代码。

5、开放式接口

通过开放式接口我们可以将网络上优秀的开源组件改造成符合HwLib.Automation要求的组件,实现数据双向绑定,提高开发效率以及项目交付速度与质量(下图来自于网络)。

演示视频:

https://www.ixigua.com/i6743851163612873223/

原文地址:https://www.cnblogs.com/hwlib/p/11622411.html

时间: 2024-08-09 02:13:40

通用上位机框架HwLib.Automation(C#)的相关文章

物联网框架ServerSuperIO.Core(.netcore)跨平台,一套设备驱动通吃嵌入式、上位机、云服务

1.      概述... 2 2.      ServerSuperIO.Core跨平台开发环境... 2 3.      ServerSuperIO.Core特点... 2 4.      ServerSuperIO.Core与ServerSuperIO区别... 2 5.      嵌入式应用... 2 6.      上位机应用... 2 7.      云服务应用... 2 8.      应用和测试说明,以Linux平台为例... 2   概述 我们的大数据平台(云)平台的数据接收服

EZUSB 和 CYUSB 及驱动上位机的区别【转发】

转改发自:[喝小酒的网摘]http://blog.const.net.cn/a/9033.htm 如果你的固件里VID ,PID是04B4,1002(或者其他,具体看ezusbw2k.inf文件的支持),那么这个时候你对应的驱动就是EZUSB驱动文件 ezusb.sys.ezusbw2k.inf,这个驱动就是所谓的通用驱动GPD( General Purpose Drive):相应的,控制台使用EZ-USB Control Panel进行调试,如下图: 这个时候后,上位机变成就使用Winapi编

[自娱自乐] 4、超声波测距模块DIY笔记(四)——终结篇·基于C#上位机软件开发

前言 上一节我们已经基本上把超声波硬件的发射和接收模块全部做好了,接下来我们着手开发一个软硬结合的基于C#的平面定位软件! 目录 一.整体思路 二.效果提前展示 2-1.软件部分展示 2-2.硬件部分展示 三.基于C#的客户端软件说明 3-1.整体框架介绍: 3-2.部分技术细节介绍 3-2-1.串口操作 3-2-2.JiSuan函数说明及核心算法介绍 四.阶段小结 五.相关链接 一.整体思路 >_<" 如下图,利用我们上三节开发的超声波发射与接收设备构成一个:2固定接收头+1可移动

项目总结-上位机

概述 总结 明确目的 软件结构设计 软件页面的设计与实现 串口通信的实现 关于注释 一些需要注意的问题 评价 结果展示 软件打包 代码 概述: 前几天受朋友之托,给他们的项目写个上位机.有些经验分享给大家 项目要求是上位机收到通过串口发送的数据,根据数据显示空车位的数量. *最终上位机拥有的值得一谈的功能: 1.串口通信的相关设置 2.数据保存 3.界面随窗口缩放的实现 4.软件打包 5....然后就没有了 总结 1.明确目的 开始写软件之前首先明确目的,软件应该实行什么功能,然后设计界面,最后

局域网控制系统-上位机-Android手机

.java文件源码(供参考,请使用前自行作修改): 1 package com.example.hello; 2 3 import java.io.DataInputStream; 4 import java.io.DataOutputStream; 5 import java.io.IOException; 6 import java.net.Socket; 7 import java.util.Timer; 8 import java.util.TimerTask; 9 10 import

VIP 视频开发板 上位机 测试软件 下载地址,玩转各自分辨率

本上位机最高测试帧率 133fps 目前支持分辨率:更多分辨率支持,敬请期待或给我留言VGA:640*4801.3M:1280*10242M:1600*1200786p:1024*768 格式兼容:1.兼容cb mini vip开发板2.usb2.0 摄像头评估板(30w-300w)3.VIP_V101 fpga 视频评估板4.线阵ccd 行显示 评估板 程序采用vs2008 mfc框架编制 如无法运行 请自行下载相关动态库 dll,或与我邮件联系最后更新日期:20150420 淘宝店铺:htt

VC++编写简单串口上位机程序

转载: http://blog.sina.com.cn/s/articlelist_1809084904_0_1.html VC++编写简单串口上位机程序 串口通信,MCU跟PC通信经常用到的一种通信方式,做界面.写上位机程序的编程语言.编译环境等不少,VB.C#.LABVIEW等等,我会的语言很 少,C语言用得比较多,但是还没有找到如何用C语言来写串口通信上位机程序的资料,在图书管理找到了用VC++编写串口上位机的资料,参考书籍,用自己相 当蹩脚的C++写出了一个简单的串口上位机程序,分享一下

C#上位机开发(二)

上一篇大致了解了一下单片机实际项目开发中上位机开发部分的内容已经VS下载与安装,按照编程惯例,接下来就是"Hello,World!" 1.新建C#项目工程 首先选择新建Windows窗体应用(.NET Framework),然后选择项目保存位置,填写项目名称,这里因为我们不需要用git进行进行版本管理,所以不用新建GIT存储库: 框架是指.net框架,4以及4以下的.NET框架可以在xp上运行,4以上可以在win7/8/10上运行,鉴于当前大多数操作系统都是win7或win10,选择4

基于OPC技术的上位机与PLC之间的通信

分享一下我老师大神的人工智能教程吧.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net 1 引言现代工业控制系统通常以PC机为上位机,通过与现场工控设备如PLC的数据交换与处理,实现对生产过程的自动控制.对于小型控制系统,采用专门的组态软件成本太高,用VB设计监控系统则可以降低成本,但首先要解决上位机与PLC之间通信问题.以往使用较多的进程间通信方式是DDE(动态数据交换)方式,随着OPC技术的发展和普及,它已成为工业