设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
排行榜
积分充值
帖子
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
控制专题
›
『高级语言/组态软件/触摸屏』
›
工程级的C#上位机项目实例功能预览
返回列表
发新帖
工程级的C#上位机项目实例功能预览
[复制链接]
55513
|
0
|
2024-12-24 17:38:29
|
显示全部楼层
|
阅读模式
经过相当一段时间的准备,我们全新的工程级C#上位机项目实例总算准备发布了。在正式发布之前,我们制作了一套功能预览版。感兴趣的同学可以下载预览版进行体验,同时我们也欢迎大家提出建议。C#上位机项目实例在我们的整个C#教学体系中差不多位于中级水平。
这是预览版的下载地址,包含C#上位机可执行文件和PLC程序。
链接:
https://pan.baidu.com/s/1wXJYgFf-FIUVNbC7IHdxEg?pwd=1234
提取码:1234
这个C#上位机实例源自我们早期的一个真实项目。但是因为年代久远,加上当时时间仓促。一些地方处理得不是很好。现在为了满足教学需求,我们对部分功能进行了裁剪,同时也增加了一些功能,比如消息和曲线。整个项目架构也采用四层架构进行重构。实现了UI部分和程序逻辑分离,也就是说我们完全可以把这个程序的UI部分改成WEB或者WPF。驱动、报表、消息和画面等也都全部重写了。另外为了方便大家仿真,我们还提供了一个简单的PLC程序。只要下载这个PLC程序,然后再运行上位机程序,我们就可以看到整个项目的运行效果。
01
基本功能介绍
这个上位机项目实例基本涵盖了一个运行于生产环境的SCADA所具备的全部功能。它的画面结构如下。
左侧是画面导航区。上面是一些信息总览,包含企业Logo、项目标题、设备通信状态、当前登录用户等。中间是画面区域。点击左侧的按钮即可切换画面。
工艺画面展示的是产线的生产状态。这里我们还可以对产线进行控制,比如启动、停止、复位以及设置参数等。在产线生产之前,我们需要先设置订单信息。点击按钮“SETTING”即可打开参数设置页面。
设置完订单参数后,点击按钮启动即可开始生产。点击停止按钮即可停止生产。按钮清除用于清除已经生产的产品数据。
我们可以通过报表按钮查看已经生产的产品信息。
另外还有曲线和消息画面也可以查看,目前预览版还未开放。在系统设置页面我们可以对用户进行管理,也可以设置数据保存时间等。
系统也提供了权限管理。一些功能需要不同的权限才能使用。但是预览版还没有设置权限。
02
技术特点与功能特色
重构后的上位机一方面注重扩展性,我们只需要以它为模板,修修改改就可以用于其它项目。另一方面也注重代码的简洁性,使可读性、可维护性更强。我们汇总了下,这个项目实例涉及到的技术点有下面几个。
面向对象、接口、抽象类等;
自定义控件;
委托与事件;
数据库;
ORM;
驱动封装
异步编程;
画面布局;
在项目架构上,它具有下面一些特色。
基于四层架构;
业务逻辑和驱动分离。UI以及业务代码通过变量名称进行读写访问,不关心具体驱动实现;
UI与逻辑分离,可以轻松替换掉UI,比如自己改成WEB或者WPF等;
采用CodeFirst方式,数据库免维护;
二次封装的通信驱动模板;
通信驱动模板化,可以很方便地接入其它驱动;
报表、曲线和报警,完整的工业上位机功能;
03
如何仿真
这个C#上位机项目实例功能完整,包含了一个上位机必需的工艺画面、报表、报警消息、权限管理、趋势曲线和通信驱动。项目的数据访问使用了ORM框架,采用CodeFirst方式,只要你安装了SQL SERVER数据库,运行上位机程序后它会自动创建所需的数据表。对于系统中有WINCC的同学,因为在WINCC安装时已经自带了SQL SERVER数据库,所以无需再安装。如果电脑中没有SQL SERVER数据库,可以通过下面连接下载安装。
链接:
https://pan.baidu.com/s/1wXJYgFf-FIUVNbC7IHdxEg?pwd=1234
提取码:1234
这两个软件分别是数据库管理工具和EXPRESS版本的SQL SERVER。它们都是免费的,不用担心版权问题,放心下载安装即可。
安装后先下载PLC程序,可以用PLCSIMADV仿真,也可以使用真实PLC。但是PLC的IP地址在上位机里面已经固定了,所以我们首先要按照TIA项目中的地址设置网络。下载PLC程序后,切换PLC到运行模式。
然后运行上位机程序。首先切换到系统设置页面。因为第一次运行,我们的数据库名称还没设置,所以可能启动时间会稍微长一点。
在系统设置页面里,我们修改下数据库实例名称。默认是WINCC。设置完成后,重新启动软件。然后切换到工艺画面。
我们的上位机工艺画面中共有4个站。每个站对应一个独立的PLC。当然为了方便仿真,实际上这4个PLC都是同样的IP地址。也就是这4个站连接的是同一台PLC。
在运行程序之前,我们需要点击SETTING按钮。
在设置窗口中我们需要预先设置一些订单信息。这些信息会体现在报表中。在实际项目中,这些订单信息也可能会是上游系统自动下发过来,比如ERP或者MES等。
配置完订单信息后,我们点击START按钮,程序开始运行。料仓会对下面的袋子进行灌装。当重量达到300KG时,袋子被输送到装卸位。同时产品信息会被记录到数据库。在报表页面中可以查询。
点击按钮STOP即可停止程序。点击按钮CLEAR用于清除当前的一些数据,比如重量等。RESET暂时没有使用。
PLC程序需要TIA Portal V18.0打开。如果你的TIA版本比较低,可以从PLC文件夹中下载db文件导入,然后按照打印出的程序文件手动照搬一下。
HwLib(慧兰博)技术团队专注于高端自动化技术,如果您对我们的技术教程感兴趣的话,可以X宝上搜索店铺“hwlib”或者“慧兰博”
关于HwLib(慧兰博)技术团队的更多信息:www.hwlib.com.cn
HwLib(慧兰博)技术团队技术资料:
https://www.jianguoyun.com/p/DR20ZAEQq_K3CBivk5kD
或者
https://pan.baidu.com/s/1wXJYgFf-FIUVNbC7IHdxEg?pwd=1234
提取码:1234
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
北岛李工
回复楼主
返回列表
『运动控制/工业总线』
『机器视觉/AI/IoT/机器人论坛』
『高级语言/组态软件/触摸屏』
『操作系统xp/xin7/win10/linux』