一种基于QT的SCADA系统HMI开发方法技术方案

技术编号:23851274 阅读:97 留言:0更新日期:2020-04-18 08:46
本发明专利技术公开了一种基于QT的SCADA系统HMI开发方法,SCADA系统HMI分为HMI编辑系统和HMI运行系统,HMI编辑系统用来设计具体的画面,HMI运行系统用来显示设计好的画面;首先利用QT创建SCADA系统HMI编辑系统画布,建立图元工具箱;然后使用图元工具箱在画布上绘制相应的图元,图元的绘制使用QT图形框架实现;将画面和画面上的图元保存在本地;最后HMI运行系统读取保存的画面和图元信息,根据设定的起始画面进行显示。本发明专利技术可以满足scada系统不同的应用场景,编辑系统的图元工具箱可以扩展,可根据项目需要进行二次开发。

A development method of SCADA HMI based on QT

【技术实现步骤摘要】
一种基于QT的SCADA系统HMI开发方法
本专利技术属于计算机软件
,涉及一种人机交互界面开发方法,尤其涉及一种基于QT的SCADA系统HMI开发方法。
技术介绍
HMI(HumanMachineInterfqace,人机界面)是系统和用户之间进行信息交互和命令传输的媒介,在SCADA(SupervisoryControlAndDataAcquisition,数据采集与监视控制)系统中,HMI可用于显示工业现场设备的状态,现场的环境状况(如温度,湿度等),同时还可以对现场指定设备进行控制。目前大多数SCADA系统的HMI只能在指定的操作系统上运行,HMI软件的跨平台性能不足。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种基于QT的SCADA系统HMI开发开发方法。本专利技术所采用的技术方案是:一种基于QT的SCADA系统HMI开发方法,SCADA系统HMI分为HMI编辑系统和HMI运行系统,HMI编辑系统用来设计具体的画面,HMI运行系统用来显示设计好的画面;其特征在于,包括以下步骤:步骤1:利用QT创建SCADA系统HMI编辑系统画布,建立图元工具箱;步骤2:使用图元工具箱在画布上绘制相应的图元,图元的绘制使用QT图形框架实现;步骤3:将画面和画面上的图元保存在本地;步骤4:HMI运行系统读取保存的画面和图元信息,根据设定的起始画面进行显示。本专利技术可以满足SCADA系统不同的应用场景,编辑系统的图元工具箱可以扩展,可根据项目需要进行二次开发附图说明图1是本专利技术实施例的HMI系统的框架图;图2是本专利技术实施例的图元类继承关系的说明图;图3是本专利技术实施例在某管廊项目中应用HMI运行系统的主界面图;图4是本专利技术在某管廊项目中应用HMI编辑系统画面图。具体实施方式为了便于本领域普通技术人员理解和实施本专利技术,下面结合附图及实施例对本专利技术作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本专利技术,并不用于限定本专利技术。本专利技术提供的一种基于QT的SCADA系统HMI开发方法,SCADA系统HMI分为HMI编辑系统和HMI运行系统,HMI编辑系统用来设计具体的画面,HMI运行系统用来显示设计好的画面;具体包括以下步骤:步骤1:利用QT创建SCADA系统HMI编辑系统画布,建立图元工具箱;步骤2:使用图元工具箱在画布上绘制相应的图元,图元的绘制使用QT图形框架实现;步骤3:将画面和画面上的图元保存在本地;步骤4:HMI运行系统读取保存的画面和图元信息,根据设定的起始画面进行显示。如图1,显示了本专利技术所设计的HMI系统的框架,HMI系统分为HMI编辑系统和HMI运行系统,HMI编辑系统的功能是绘制scada场景需要显示的画面,并设置画面及画面上的图元的属性,HMI运行系统根据设置的起始界面显示对应的画面。HMI编辑系统主界面分为画面树形结构,画面属性框,画布和图元工具箱四个部分;图元工具箱包括各种基本的图形元素,点击上面的图元按钮,在画布上通过鼠标移动可以绘制指定的图元。下面具体阐释HMI编辑系统的实现过程:画布上图元的绘制是基于QT的graphicsView框架实现的。GraphicsView框架自从QT4.2开始引入,用于取代QT3中的Canvas模块,并作出了改进。GraphicsView框架实现了模型-视图结构的图形管理,能对大量的图元进行管理,支持碰撞检测(图元之间是否发生碰撞),坐标变换和图元组等多种方便的功能。GraphicsView框架结构主要包含三个类:场景类(QGraphicsScene),视图类(QGraphicsView)和图元类(QGraphicsItem),统称为"三元素"。本专利技术中的画布就是继承自QgraphicsView类,图元继承自QgraphicsItem类,本专利技术中定义了一个QgraphicsScene类的对象,具体的图元绘制在对象上,将QgraphicsScene类的对象增加到视图类中可实现在画布上绘制图元。图2显示了上述所述的图元类的继承关系:画面树形结构是在Qt的QtreeWidget控件上实现的。QtreeWidget控件的每一个子项QtreeWidgetItem既可以作为画面,也可作为画面组。该树形结构支持创建若干画面组,每一个画面组下支持新建若干画面,画面和画面组支持重命名和删除。画面属性框是继承自Qwidget窗体控件,属性框中添加Qt第三方库QtProperty类对象,可实现画面和图元的属性设置,包括:画面背景,图元线条颜色,封闭图元颜色,图元线条样式,图元关联字体的颜色和大小,图元关联文本本专利技术中,同时也提供了一种HMI数据的保存方法。界面数据包括画面树形结构,画布和画面属性,起始画面信息。画面数据的读取和保存使用QT的QXmlStreamReader和QxmlStreamWriter来完成。具体保存结构如下:在工程文件下新建View文件夹,View文件夹下新建startHmiConfig.xml文件,该文件夹记录运行系统需要显示的起始布局,以及起始布局上各区域关联的画面的UUId。View文件夹下新建View文件夹,子View文件夹下新建viewConfig.xml文件,用于显示画面树形结构,该文件以递归的形式记录了画面和画面组的UUID。子View子文件夹下建立了以画面uuid_action.xml命令的文件,该文件记录了指定画面的属性数据,包括画布属性,以及画布上图元的属性。以为某一画面下画面属性数据的内容。HMI运行系统使用QxmlStreamReader类来读取startHmiConfig.xml的数据,通过起始画面的uuid来读取画面属性数据,并通过QgraohicsView框架河读取出来的画面属性数据将起始界面恢复出来。请见图3,为本实施例在某管廊项目中应用HMI运行系统的主界面图,图4为本实施例在某管廊项目中应用HMI编辑系统画面。本专利技术实现了一种scada系统的HMI开发方法,可以在此基础上实现SCADA界面的二次开发,同时,使用QT开发的界面可以实现在不同的系统平台上运行应当理解的是,本说明书未详细阐述的部分均属于现有技术;上述针对较佳实施例的描述较为详细,并不能因此而认为是对本专利技术专利保护范围的限制,本领域的普通技术人员在本专利技术的启示下,在不脱离本专利技术权利要求所保护的范围情况下,还可以做出替换或变形,均落入本专利技术的保护范围之内,本专利技术的请求保护范围应以所附权利要求为准。本文档来自技高网...

【技术保护点】
1.一种基于QT的SCADA系统HMI开发方法,SCADA系统HMI分为HMI编辑系统和HMI运行系统,HMI编辑系统用来设计具体的画面,HMI运行系统用来显示设计好的画面;/n其特征在于,包括以下步骤:/n步骤1:利用QT创建SCADA系统HMI编辑系统画布,建立图元工具箱;/n步骤2:使用图元工具箱在画布上绘制相应的图元,图元的绘制使用QT图形框架实现;/n步骤3:将画面和画面上的图元保存在本地;/n步骤4:HMI运行系统读取保存的画面和图元信息,根据设定的起始画面进行显示。/n

【技术特征摘要】
1.一种基于QT的SCADA系统HMI开发方法,SCADA系统HMI分为HMI编辑系统和HMI运行系统,HMI编辑系统用来设计具体的画面,HMI运行系统用来显示设计好的画面;
其特征在于,包括以下步骤:
步骤1:利用QT创建SCADA系统HMI编辑系统画布,建立图元工具箱;
步骤2:使用图元工具箱在画布上绘制相应的图元,图元的绘制使用QT图形框架实现;
步骤3:将画面和画面上的图元保存在本地;
步骤4:HMI运行系统读取保存的画面和图元信息,根据设定的起始画面进行显示。


2.根据权利要求1所述的基于QT的SCADA系统HMI开发方法,其特征在于:HMI编辑系统主界面分为画面树形结构,画面属性框,画布和图元工具箱四个部分;
图元工具箱包括各种基本的图形元素,点击上面的图元按钮,在画布上通过鼠标移动绘制指定的图元。


3.根据权利要求2所述的基于QT的SCADA系统HMI开发方法,其特征在于:画布上图元的绘制是基于QT的graphicsView框架实现的;画布继承自QgraphicsView类,图元继承自QgraphicsItem类,同时定义了一个QgraphicsScene类的对象,具体的图元绘制在对...

【专利技术属性】
技术研发人员:赵强王胜勇
申请(专利权)人:中冶南方武汉自动化有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1