(原创)使用C#开发高性能PLC上位机监控系统服务器应用程序
PLC服务器监控系统的特点:
1·使用微软C#面向对象开发语言开发应用程序。
2·使用了健壮性与性能良好的SUPER SOCKET服务器通信框架,实现自定义应用层通信协议,支持多台PC客户端访问服务器,实现管理层的电脑实时监控显示生产现场的所有PLC数据,不需要频繁行走车间,节约时间,提高工作效率。
3·使用了性能良好的MODBUS-TCP服务器通信组件HslCommunication.dll,支持数量众多的客户端主动同时访问读写服务器数据。
4·服务器端同时作为客户端采用西门子S7协议与西门子PLC进行高速通信,可主动连接多台西门子PLC(西门子S7协议),进行高速读写PLC数据。服务器端与PLC通信采用主动方式以100ms(可修改)的时间间隔刷写PLC数据,即使某次异常抖动通信失败都不会影响命令的执行,不会出现无反应的情况,保障长期运行的正确性。
5·使用了微软ADO.NET数据库访问技术和高性能的MYSQL8.0数据库,实现海量的PLC监控参数的实时保存功能。MYSQL支持并发数据写入与读取,可以频繁地同时进行保存PLC参数和读取参数用作界面的显示。
6·服务器作为上位机实现以下功能:多窗体快速切换,PLC参数的高低限报警功能,全局报警条的轮流闪烁显示,生产报表的打印,生产人员的用户管理,控件的操作权限设置功能,通信状态的全局显示,实时趋势图和历史趋势图功能同时显示多条参数曲线,电机控件动画显示等等。
7·多任务处理:使用微软多线程技术实现多任务处理。同时进行高速的PLC数据采集与控制,海量的PLC数据写入数据库,前台显示控件读取数据库,响应多客户端访问请求。
8·设置参数的掉电存储功能,运行状态的实时存储与恢复功能,当服务器出现异常或非正常关机(突然停电)后重新开机,电机,阀门等现场执行器件保持在掉电前的状态。
以下是服务器连接1台西门子S7-200SMART的截图,由于GIF图片和视频上传限制,只能用静态图片展示软件部分截图,图片质量损失较严重,动画播放损失严重。实际运行丝丝顺滑。流程图细节清晰,光影效果真实,可根据屏幕分辨率制作2k,4k超清流程图。
展示实时曲线和按钮开关,电机状态显示。


展示流程图和动画控件显示。

服务器窗口实时显示所有在线客户端,可以快速判断故障客户端。

展示实时参数报警功能,参数设置了高低限,当实时值超过限制值时进行报警显示,右下角有一条全局报警条轮流闪烁显示报警值。当参数恢复正常值,报警自动消失。可根据需求任意定制。

报表打印功能,可任意定制修改。


用户权限管理功能。生产人员,管理人员用户名密码和权限值添加后,保存至数据库。支持修改,删除操作。

(原创)使用C#开发高性能PLC上位机监控系统服务器应用程序的更多相关文章
- (原创)使用C#开发PLC上位机监控系统客户端应用程序
PLC客户端监控系统的特点: 0.客户端系统软件可部署在 多个管理层的PC机上,或者需要部署在距离服务器较远区域的PC机上,通过网线连接到服务器端的交换机. 1应用范围: (1)所有客户端都只有监视功 ...
- (原创)如何搭建PLC+上位机监控系统达到成本的最小化?
以西门子PLC举例; 西门子PLC有几个型号:S7-200SMART,S7-1200,S7-300,S7-400,S7-1500,价格从低到高. 1个项目中要求的IO数量:600点的DI+DO,若干个 ...
- 微信团队原创分享:iOS版微信的内存监控系统技术实践
本文来自微信开发团队yangyang的技术分享. 一.前言 FOOM(Foreground Out Of Memory),是指App在前台因消耗内存过多引起系统强杀.对用户而言,表现跟crash一样. ...
- 基于QT的全自动超声波焊接机上位机追溯系统(已经在设备上应用)
应用说明: 本上位机程序是我在做锂电池产线项目的时候开发的,用于采集设备数据以及实现设备自动控制,下位机采用基恩士PLC,超声波机采用上海一家的超声波焊接机,实现电芯极耳的自动焊接,上位在设备焊接过程 ...
- openldap+openssh+jumpserver实现跳板机监控系统
首先感谢 http://www.jumpserver.org/ 提供的优秀跳板机系统. 我们把跳板机系统经过二次开发主要是 弃用角色功能使用ldap自动登录. 添加登录后临时认证. 上传下载我们自己在 ...
- Winform 快速开发框架,上位机开发,工控机程序开发,CS程序开发
1.当客户让你做个CS程序时,当你手上一穷二白,所有都要重复造轮,你是不是很烦. 2.但如果有一个通用的,快速开发框架,就可以把你从这些基础的工作解救出来,你专注做业务就好了. 3.本人其中一个项目的 ...
- 上位机开发之西门子PLC-S7通信实践
写在前面: 就目前而言,在中国的工控市场上,西门子仍然占了很大的份额,因此对于上位机开发而言,经常会存在需要与西门子PLC进行通信的情况.然后对于西门子PLC来说,通信方式有很多,下面简单列举一下: ...
- C#上位机开发(一)—— 了解上位机
在单片机项目开发中,上位机也是一个很重要的部分,主要用于数据显示(波形.温度等).用户控制(LED,继电器等),下位机(单片机)与 上位机之间要进行数据通信的两种方式都是基于串口的: USB转串口 — ...
- C# MODBUS协议 上位机(转)
源:C# MODBUS协议 上位机 C#写了一款上位机监控软件,基于MODBUS_RTU协议. 软件的基本结构: 采用定时器(Timer控件)为时间片. 串口采用serialPort1_DataRec ...
随机推荐
- Python从零开始——循环语句
一:Python循环语句知识概览 二:while循环 三:for遍历 四:循环控制
- TEE(Trusted Execution Environment)简介【转】
转自:https://blog.csdn.net/fengbingchun/article/details/78657188 TEE(Trusted Execution Environment),可信 ...
- 3-1 Pandas-概述
Pandas章节应用的数据可以在以下链接下载: https://files.cnblogs.com/files/AI-robort/Titanic_Data-master.zip Pandas:数据分 ...
- csp 201809-2 买菜
两人在一段时间买菜装车,装车时会聊天,求聊天的时长. 使用数组记录,求重叠部分即可 代码: #include<iostream> #include<string> #inclu ...
- 搭建稳固的MySQL运维体系
MySQL 监控要点 MySQL 监控要点,主要涉及服务器和 MySQL 两个方向的监控告警. 在这两个监控告警方向需要重点关注监控策略.监控趋势图及报警方式. 监控策略指的是每个监控项的告警阈值,例 ...
- Netty4的介绍(一)
Netty是由JBOSS提供给的一个java开源框架.Netty提供异步的.事件驱动的网络应用框架和工具,用以快速开发高性能.高可靠的网络服务器和客户端程序. 也就是说,Netty是一个基于NIO的客 ...
- Shell编程——位置参数变量
1. (1)创建Shell脚本: (2)赋予执行权限: (3)执行Shell脚本: (4)对脚本赋值后执行脚本: $n:n为数字,$0代表命令本身,$1-9代表第一到第九个参数,十以上的参数用大括号包 ...
- linux在目录下查字符串, 查文件数目
在目录下所有文件中查找某个字符串(递归查) grep -rnl '字符串' 目录名 统计一个文件夹下目录数或文件数, 如下分步讲解: 1. 显示目录下内容: ls -l ...
- 【2019.7.26 NOIP模拟赛 T1】数字查找(figure)(数学)
推式子 我们设\(n=kp+w\),则: \[(kp+w)a^{kp+w}\equiv b(mod\ p)\] 将系数中的\(kp+w\)向\(p\)取模,指数中的\(kp+w\)根据欧拉定理向\(p ...
- 【LG5171】Earthquake
[LG5171Earthquake] 题面 洛谷 题解 本题需要用到类欧几里得算法. 前置知识:类欧几里得 就是求函数\[\varphi (a,b,c,n)=\sum_{i=0}^n \left\lf ...