CN114185655A - 基于c#的上位机控制系统 - Google Patents

基于c#的上位机控制系统 Download PDF

Info

Publication number
CN114185655A
CN114185655A CN202111471941.XA CN202111471941A CN114185655A CN 114185655 A CN114185655 A CN 114185655A CN 202111471941 A CN202111471941 A CN 202111471941A CN 114185655 A CN114185655 A CN 114185655A
Authority
CN
China
Prior art keywords
data
management module
project
data processing
control system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111471941.XA
Other languages
English (en)
Inventor
王伟
何宗明
杨勇
黄彬
邹志航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lngtop Tech Jiangsu Co ltd
Original Assignee
Lngtop Tech Jiangsu Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lngtop Tech Jiangsu Co ltd filed Critical Lngtop Tech Jiangsu Co ltd
Priority to CN202111471941.XA priority Critical patent/CN114185655A/zh
Publication of CN114185655A publication Critical patent/CN114185655A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Abstract

本发明公开了一种基于C#的上位机控制系统,其包括数据处理系统、通讯接口驱动和页面系统,其中:所述数据处理系统具有多线程,其用于根据不同的硬件选择不同的驱动程序去处理硬件请求和接收、解析数据信息;所述通讯接口驱动用于对不同类型的硬件设备进行二次封装,统一接口,方便调用;所述页面系统包括用户权限管理模块,项目配置模块,项目管理模块和控件管理模块。本系统适用于中小型工业自动化和过程监视与控制等领域,它可以使操作员方便、直观地获取到现场设备的实时数据,并可以下达控制指令达到数据监控、实时操作的目的,同时减少企业使用组态软件的基础支出。

Description

基于C#的上位机控制系统
技术领域
本发明涉及计算机领域,特别涉及一种基于C#的上位机控制系统。
背景技术
一般情况下,项目上位机都是利用西门子WIN CC、力控、组态王等组态软件。这些组态软件对于一些特定的需求或者逻辑,会有一定的局限性,使用上也受到软件本身的约束。如果能基于C#开发上位机完全自主开发,几乎不存在功能上的限制,并且扩展方便。另外组态软件需要按套、按点位收费,意味着每个项目无形中都有一个基础成本;而C#开发上位机自主开发,不需要二次授权费用,并且开发一套之后,可以快速应用到其他项目中,同时满足后续人员在此体系架构下进行扩展和研究。
发明内容
本发明的目的在于提供一种基于C#的上位机控制系统,以克服当前现有技术存在的不足。
本发明采取的技术方案是:一种基于C#的上位机控制系统,其包括数据处理系统、通讯接口驱动和页面系统,其中:
所述数据处理系统具有多线程,其用于根据不同的硬件选择不同的驱动程序去处理硬件请求和接收、解析数据信息;
所述通讯接口驱动用于对不同类型的硬件设备进行二次封装,统一接口,方便调用;
所述页面系统包括用户权限管理模块,项目配置模块,项目管理模块和控件管理模块;所述用户权限管理模块与数据库链接判断是否有权限等级,根据用户登录的权限设置等级;所述项目配置模块结合XML文件,将画面组态转换成XML的操作;所述页面管理模块将主页面与按钮之间建立链接,显示对应的界面;所述控件管理模块基于微软的工具箱,对其进行二次开发添加必要属性,形成项目所需的项目控件库。
进一步的,所述通讯接口驱动负责与控制设备通信,将I/O设备寄存器中的数据读出后,传送到数据处理系统中,最后界面运行系统会在画面上动态显示。
进一步的,所述硬件设备包括PLC和智能仪表。
进一步的,所述数据处理系统一方面处理来自通讯接口的数据解析、储存以及展示,另一方面处理来自页面系统的人机交互数据。
进一步的,所述数据处理系统中建立多线程去处理不同的业务逻辑,其中,线程一:针对不同设备建立不同的数据读取解析处理存入共享内存中;线程二:将需要处理的数据按照要求从共享内存中获取并按要求执行操作数据库的要求;线程三:将共享内存中数据传给界面系统。
进一步的,所述控制系统利用mysql数据库作为储存运行数据库,可自定义时间选择储存的时间间隔或者事件。
本发明的有益效果是:本发明通过基于C#上位机系统可以代替组态软件的功能,开发一套,即可满足对类似项目监控操作功能,从而节约每个项目的基础成本。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1是本上位机控制系统的整体架构图。
图2是数据处理系统建立多线线处理数据请求示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例一。
一种基于C#的上位机控制系统,其包括数据处理系统、通讯接口驱动和页面系统。其中:
通讯接口驱动采用I/O驱动程序实现,其用于对不同类型的硬件设备进行二次封装,统一接口,方便调用,这里硬件包括PLC、智能仪表等。
数据处理系统建立多线线去处理数据请求:根据不同的硬件选择不同的驱动程序去处理硬件请求和接收,解析数据信息;将解析的数据存放共享内存中,一方面按照用户需求设置更新数据的操作,将共享内存中的数据存储到数据库中;另一方面将定时触发将共享数据更新数据界面系统中,用户更新状态信息和动态现实等。
页面系统(View)包括用户权限管理模块,项目配置模块,项目管理模块和控件管理模块。用户权限管理模块根据不同的用户级别有不同的管理权限,将用户名和密码加密存储至数据库中,每次登录用户时,会对比对用户权限操作。项目配置模块为读取和操作XML文件的模块,将配置信息的操作转换成相应格式XML操作(即将配置操作转换成文本操作)。页面管理模块将相应的按钮绑定成页面系统通过点击按钮加载画面,可将部分画面的内容形成加载XML文件实现画面内容的填充,实现人机交互效果。控件管理模块基于微软的工具箱,对其进行二次开发添加必要属性,形成自定义的项目控件库,可将流程图、报警信息、时间信息、历史曲线、参数设置、报表系统等形成控件画面,为以后开发节省时间,使后续扩展性更强。
实施例二。
一种基于C#的上位机控制系统的实现方法,包括:
(1)建立基于C#简易上位机系统与常见西门子设备的通讯链接。所述通信链接是基于DLL接口模块或厂家模块等常用协议进行二次封装,形成I/O驱动程序;此I/O驱动程序负责与控制设备的通信,它将I/O设备寄存器中的数据读出后,传送到数据处理系统中,最后界面运行系统会在画面上动态显示。
(2)建立数据处理系统。一方面处理来自通讯IO链接的数据解析和储存以及展示。另一方面处理来自View画面的人机交互数据。
该系统利用mysql数据库作为储存运行数据库,可以自定义时间选择储存的时间间隔或者事件。上位机软件系统的数据处理核心,构建分布式应用系统的基础,它负责实时数据处理、历史数据存储、统计数据、报警处理、数据服务请求处理等。
基于数据处理系统特殊性,建立多线程去处理不同的业务逻辑。线程一:针对不同设备建立不同的数据读取解析处理存入共享内存中。线程二:将需要处理的数据按照要求从共享内存中获取并按要求执行操作数据库的要求。线程三:将共享内存中数据传给界面系统。意在处理不至于一线程死机导致系统瘫痪。
(3)项目数据展示和操作控制功能画面View。数据操作展示包含:
用户权限管理模块:与数据库链接判断是否有权限等级,根据用户登录的权限设置等级。
项目配置模块:结合XML文件,将画面组态转换成XML的操作。
页面管理模块:所有的主界面,将主页面与按钮之间建立链接,显示对应的界面。
控件管理模块:基于微软的工具箱,对其进行二次开发添加必要属性,形成项目所需的项目控件库。
综上,本系统主要用于中小型工业自动化和过程监视与控制等领域,它可以使操作员方便、直观地获取到现场设备的实时数据,并可以下达控制指令达到数据监控、实时操作的目的。总体来说就是为了替代中小型项目中使用组态软件上位机项目,减少企业使用组态软件的基础支出。
以上显示和描述了本发明的基本原理、主要特征和优点。本领域的普通技术人员应该了解,上述实施例不以任何形式限制本发明的保护范围,凡采用等同替换等方式所获得的技术方案,均落于本发明的保护范围内。
本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。

Claims (6)

1.一种基于C#的上位机控制系统,其特征在于,包括数据处理系统、通讯接口驱动和页面系统,其中:
所述数据处理系统具有多线程,其用于根据不同的硬件选择不同的驱动程序去处理硬件请求和接收、解析数据信息;
所述通讯接口驱动用于对不同类型的硬件设备进行二次封装,统一接口,方便调用;
所述页面系统包括用户权限管理模块,项目配置模块,项目管理模块和控件管理模块;所述用户权限管理模块与数据库链接判断是否有权限等级,根据用户登录的权限设置等级;所述项目配置模块结合XML文件,将画面组态转换成XML的操作;所述页面管理模块将主页面与按钮之间建立链接,显示对应的界面;所述控件管理模块基于微软的工具箱,对其进行二次开发添加必要属性,形成项目所需的项目控件库。
2.根据权利要求1所述的一种基于C#的上位机控制系统,其特征在于,所述通讯接口驱动负责与控制设备通信,将I/O设备寄存器中的数据读出后,传送到数据处理系统中,最后界面运行系统会在画面上动态显示。
3.根据权利要求1或2所述的一种基于C#的上位机控制系统,其特征在于,所述硬件设备包括PLC和智能仪表。
4.根据权利要求1所述的一种基于C#的上位机控制系统,其特征在于,所述数据处理系统一方面处理来自通讯接口的数据解析、储存以及展示,另一方面处理来自页面系统的人机交互数据。
5.根据权利要求1或4所述的一种基于C#的上位机控制系统,其特征在于,所述数据处理系统中建立多线程去处理不同的业务逻辑,其中,线程一:针对不同设备建立不同的数据读取解析处理存入共享内存中;线程二:将需要处理的数据按照要求从共享内存中获取并按要求执行操作数据库的要求;线程三:将共享内存中数据传给界面系统。
6.根据权利要求1所述的一种基于C#的上位机控制系统,其特征在于,所述控制系统利用mysql数据库作为储存运行数据库,可自定义时间选择储存的时间间隔或者事件。
CN202111471941.XA 2021-12-06 2021-12-06 基于c#的上位机控制系统 Pending CN114185655A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111471941.XA CN114185655A (zh) 2021-12-06 2021-12-06 基于c#的上位机控制系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111471941.XA CN114185655A (zh) 2021-12-06 2021-12-06 基于c#的上位机控制系统

Publications (1)

Publication Number Publication Date
CN114185655A true CN114185655A (zh) 2022-03-15

Family

ID=80542281

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111471941.XA Pending CN114185655A (zh) 2021-12-06 2021-12-06 基于c#的上位机控制系统

Country Status (1)

Country Link
CN (1) CN114185655A (zh)

Similar Documents

Publication Publication Date Title
Daneels et al. What is SCADA?
EP2148259B1 (en) Field device management apparatus and field device management system
US8196155B2 (en) XML-based event driven interface for OPC data access
JP2005502028A (ja) 統合された診断システム関連の出願本出願は、同時係属中の仮出願、2001年5月8日出願の60/289,116、2001年5月18日出願の60/291,622、2002年2月6日出願の60/354,204の出願日の利益を主張し、これらすべては、全体が本明細書に引用により援用される。
CN101510151A (zh) 综合监控跨平台组态人机界面系统
US7412625B2 (en) Method and system for remote software debugging
US7130760B2 (en) Reporting invalid parameter values for a parameter-based system
US6445973B1 (en) Personal computer-incorporated numerical control apparatus, and image transfer method for personal computer-incorporated numerical control apparatuses
CN111444609B (zh) 数据处理方法及仿真系统
CN1916866A (zh) 影音系统总线监控系统及方法
CN114185655A (zh) 基于c#的上位机控制系统
US7752558B2 (en) Plant operation supporting apparatus and plant operation supporting method
JPH1139190A (ja) 並列処理プログラムのデバッグシステム、及びそのデバッグ方法
CN114745257B (zh) 数据帧调试方法、装置、设备及存储介质
CN115291561A (zh) 一种制造系统与装备虚拟调试平台、方法、设备及应用
CN111736539B (zh) 一种监控数据显示方法、装置、系统、服务器及存储介质
CN111090430B (zh) 一种嵌入式系统下的应用软件开发系统
CN101819419B (zh) 主动型plc智能液晶显示器
EP0575145B1 (en) Open distributed digital control system
Romanov et al. Platform-Independent Client Applications for Working with Industrial Controllers
CN201355436Y (zh) 主动型plc智能液晶显示器
CN117608418A (zh) 显控设备、指令执行方法、画面显示方法和显控设备系统
HUT66465A (en) Interface system for coupling two computer environments
CN116360629A (zh) 一种大尺寸核电安全控制显示装置及其控制方法
JP2000010614A (ja) ユーザインタフェース利用ロボット操作方法及びシステム装置並びにそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination