通用上位机框架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/

 

HwLib(慧兰博)技术团队专注于高端自动化技术,如果您对我们的技术教程感兴趣的话,可以X宝上搜索店铺“hwlib”或者“慧兰博”

关于HwLib(慧兰博)技术团队的更多信息:http://www.hwlib.com.cn

HwLib(慧兰博)技术团队技术资料:

https://pan.baidu.com/s/1t-5BPQmeUbWRVH9FJ-tjPg

提取码:63rt

 

HwLib(慧兰博)公众号

专注于工业自动化高端编程应用

HwLib(慧兰博)微信号