一种数控系统界面组态开发方法与流程

文档序号:11199008阅读:1433来源:国知局
一种数控系统界面组态开发方法与流程

本发明属于数控系统人机界面组态化领域,具体涉及一种数控系统界面组态开发方法。



背景技术:

组态软件能够实现对自动化过程和装备的监视和控制。它能从自动化过程和装备中采集各种信息,并将信息以图形化等更易于理解的方式进行显示,将重要的信息以各种手段传送到相关人员,对信息执行必要分析处理和存储,发出控制指令等等。人机界面的组态化开发技术在自动化监控系统领域已经得到了众多应用,其高效性和高扩展性已经被广泛认可。但是在实际数控系统界面的开发中,大多还是采用传统的编码式的开发模式,组态化界面开发技术的应用较少,目前也没有一套完整的技术方案可以实现组态化开发,因而导致数控系统界面的开发效率低,灵活性和扩展性不高,用户体验差,不能满足数控系统开放化、智能化的发展要求。

组态的核心是功能组件的组合,现有的数控系统组态化方案中只进行了图形界面的组态,没有考虑数控系统数据及人机交互的组态化实现。同时,组态载体是相对封闭的,其仅保存了图形界面相关的组态信息,结果导致组态界面的灵活性不高。利用组态化思想进行开发的数控组态界面,大多直接基于自动化监控系统组态软件,由于自动化监控界面与数控系统界面存在差异性,导致构建的数控组态界面无法满足数控系统人机界面的功能和交互需求。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提供了一种数控系统的界面组态开发方法。本发明技术方案的方法,将数控界面系统划分为图形、数据和交互模块,提取各模块相应的独立功能组件,以图形可视化的方式对功能组件进行参数化组合,快速地构建数控系统组态界面;同时采用开放式脚本作为组态界面载体,大幅增加数控组态界面编辑的灵活性,提升了数控界面开发效率和扩展性。

为实现上述目的,按照本发明的一个方面,提供了一种数控系统的界面组态开发方法,其特征在于,包括

s1按照功能和/或结构特点,将界面系统划分为多个模块;

s2根据粒度对所述模块内的基本单元按照功能和/或结构特点进行划分,整理所述基本单元,生成功能单元集;

s3对所述功能单元集进行抽象处理,封装形成功能组件,所述功能组件可以实现特定功能;

s4构建相应的数控系统界面组态开发环境,设置管理单元对所述模块的功能组件进行管理;

s5通过所述管理单元对功能组件进行组态配置,构建组态界面;

s6对构建完成的组态界面进行模拟运行,确认所述组态界面是否满足功能需求;若满足,将组态信息保存在组态脚本中,并将所述脚本置于组态运行环境中;若不满足,进入步骤s5;

s7加载组态脚本,运行组态界面。

作为本发明的一个优选技术方案,步骤s1中所述模块包括图形模块、数据模块和交互控制模块。

作为本发明的一个优选技术方案,步骤s4中所述管理单元包括图形管理单元、数据管理单元和交互控制单元;所述图形管理单元管理图形模块,所述数据管理单元管理数据模块,所述交互控制单元管理交互控制模块。

作为本发明的一个优选技术方案,步骤s5中所述组态配置包括,

s51对各模块功能组件控制参数直接地进行参数赋值;

s52以图形可视化方式对图形组件进行堆叠和/或组合;

s53建立图形组件与数据组件之间的数据连接;

s54编写图形组件对应的交互控制脚本。

作为本发明的一个优选技术方案,步骤s6中所述模拟运行包括,对所述组态界面进行动态验证,对运行数据和/或运行逻辑进行调试。

换而言之,本发明主要的技术方案优选利用mvc设计框架,对数控系统人机界面按照功能和结构特点,将界面系统划分为包括图形模块、数据模块以及交互控制三个模块在内的多个模块。分别步骤s6中所述模拟运行包括,对所述组态界面进行动态验证,以及运行数据和/或运行逻辑进行调试。对这三个模块按照一定的粒度对模块内的基本单元按照功能、结构与逻辑上的特点进行基本单元的划分,按照功能相似性对各个基本单元进行功能提取、整合,构成多个功能单元集。对模块中的功能单元集以面向对象类的思想进行抽象并提供符合特定规范的组合接口,将其封装成能够实现特定功能、可复用、低耦合的功能组件。

构建相应的数控系统界面组态开发环境,分别提供单独的管理单元对三个模块的功能组件进行管理与维护,图形库管理图形模块功能组件,数据中心管理机床数据模块功能组件,交互控制中心管理逻辑交互的功能组件。通过相应的管理单元,对功能组件组态配置进行组件的实例化,生成相应的组件实例对象。以图形可视化方式对图形组件进行拖拽式的堆叠与组合,并建立图形组件与数据组件之间的数据连接,为图形组件编写相应的交互控制脚本,即将这些组件对象进行参数化的组合来构建组态界面。

在组态开发环境中,对构建完成的组态界面进行机床运动和加工数据的模拟,对组态界面的图形界面、功能性、交互操作等方面进行动态验证,模拟运行时可以对的相应的数据与运行逻辑进行调试。在组态界面验证的基础上,对于不满足功能需求组态界面则返回组态配置阶段进行调整。对于满足功能和操作性需求的组态图形界面,将组态界面中的图形组件的参数及布局关系、机床数据组件的数据定义、交互控制组件的数据连接关系、以及事件响应与逻辑控制命令等全部的组态信息都以元素对象的形式保存在如qml形式的脚本中,每个数控组态画面对应于一个脚本,通过将组态脚本以自动化的方式放置于组态运行环境中即可完成组态界面的运行部署。部署完成后,组态运行环境加载组态脚本,将组态脚本解析转换为组态界面,对组态界面进行执行,实现人机交互界面的运行与维护。

按照本发明技术方案的另一个方面,提供了一种数控系统的界面组态开发系统,其特征在于,包括

系统划分模块,用于按照功能和/或结构特点,将界面系统划分为多个模块;

功能单元模块,用于对所述模块内的基本单元按照功能和/或结构特点以特定粒度进行划分,整理所述基本单元,生成功能单元集;

单元封装模块,用于对所述功能单元集进行抽象处理,封装形成功能组件,所述功能组件可以实现特定功能;

组态环境模块,用于构建相应的数控系统界面组态开发环境,设置管理单元对所述模块的功能组件进行管理;

组态配置模块,用于通过所述管理单元对功能组件进行组态配置与组件组合,构建组态界面;

模拟运行模块,用于对构建完成的组态界面进行模拟运行,确认所述组态界面是否满足功能需求;若满足,将组态信息保存在组态脚本中,并将所述脚本置于组态环境中;若不满足,进入步骤s5;

组态运行模块,用于加载组态脚本,对组态界面进行执行。

作为本发明的一个优选技术方案,多个模块包括图形模块、数据模块和交互控制模块。

作为本发明的一个优选技术方案,管理单元包括图形管理单元、数据管理单元和交互控制单元;所述图形管理单元管理图形模块,所述数据管理单元管理数据模块,所述交互控制单元管理交互控制模块。

作为本发明的一个优选技术方案,组态配置模块包括,

组态配置模块,用于对各模块功能组件控制参数直接地进行参数赋值;

可视化编辑模块,用于以图形可视化方式对图形组件进行参数编辑与组件堆叠和/或组合;

数据连接模块,用于建立图形组件与数据组件之间的数据连接;

脚本编辑模块,用于编写图形组件对应的交互控制脚本。

作为本发明的一个优选技术方案,模拟运行模块包括,

动态验证模块,用于对所述组态界面进行动态验证;

调试模块,用于对运行数据和/或运行逻辑进行调试。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:

(1)本发明技术方案的数控系统界面组态开发方法,在组态界面的运行过程中,可以利用文本编辑器或者可视化的组态开发软件进行组态界面的再次组态编辑,编辑完成后运行环境重新加载组态脚本,实现了数控人机界面的“运行时组态”;

(2)本发明技术方案的数控系统界面组态开发方法,对数控人机界面系统进行了模块化划分,并进一步根据粒度将其划分为基本单元,按照功能进行封装管理,提升了数控组态界面的可管理性;

(3)本发明技术方案的数控系统界面组态开发方法,实现了数控系统数据及数控人机界面交互控制的组件化,提升了数控组态界面的开放性与灵活性;

(4)本发明技术方案的数控系统界面组态开发方法,采用开放式脚本对数控组态界面进行存储,提升组态界面部署的便携性。

附图说明

图1是本发明的数控系统界面组态化开发方法的一个实施例的流程图;

图2是本发明的数控系统界面组态化开发方法的一个实施例的数控组态界面qml组态脚本示例。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。下面结合具体实施方式对本发明进一步详细说明。

如图1所示,本发明技术方案的一种基于开放式脚本的数控系统组态界面开发方法的实施例包括以下几个步骤:

(1)将数控界面系统采用软件设计中mvc模式依据功能性可划分为图形模块、数据模块、交互控制模块三部分。图形模块主要包含数控界面的图形界面部分,即构成图形界面所有可视化单元;数据模块主要包含和人机界面数据相关的部分,如机床加工数据、机床逻辑设备(通道,轴,寄存器,plc)以及机床的运行状态等。交互控制模块主要负责人机交互相关的部分,图形与数据模块之间是相互独立的,这两个模块之间的数据交换由交互控制模块来实现,交互模块同时还负责处理人机交互事件响应的逻辑代码等。

(2)将数控界面系统的模块进行基本单元划分,生成功能单元集合。基本单元划分是指将组成界面系统各模块的基本单元,依据功能和结构方面的差异,通过相应的划分方法,按照一定划分粒度,将具有独立功能且与其他基本单元低耦合的功能单元提取出来。在划分过程中,采用的划分粒度不同,划分的基本单元的大小也不同,划分粒度过大将导致基本单元可配置性差,组态界面的整体灵活性不高;而粒度过小,则会导致界面系统过于复杂,可维护性性不够,划分粒度的选择应按照模块特点及划分依据进行选择。

(3)按照功能特点,将模块中的基本功能单元以面向对象的方式进行抽象和封装,形成模块功能组件。对于图形模块,依据数控系统图形界面特点,采用粗细两种划分粒度后,将图形模块分为两种类型的组件:常用组件及通用组件。常用组件是对图形界面中常用的功能单元如坐标显示,程序预览,文件选择,数据列表,报警显示,消息提示等进行抽象,提供相应的可配置参数,封装成可复用的qml脚本组件;通用组件主要包括构成图形界面的基本图形组件如文本、线条、矩形、图片以及常用的状态控件和交互控件,这些基本组件可以组合实现任意的界面系统,通用组件也是由常用组件封装而成,这些通用组件是通过继承qml中的item元素来实现的。对于机床数据模块的组件化,通过将数控系统中的结构化的数据按照逻辑结构的特点,划分为通道,轴,刀具,刀库,参数,寄存器,plc等数据单元以及nck核心控制单元,以面向对象的方式对数据单元进行封装,继承qml中的qobject,构成数据类。数据类提供相应的属性对机床数据进行存取,提供特定方法用于提供数控系统相关的访问api。交互控制模块组件化以将抽象的逻辑交互控制转换为具体的表现形式为主。交互控制模块分为两部分,一部分用于实现图形模块与数据模块的数据连接,将数控系统数据连接的两种方式“更新推送式”和“主动获取式”分别转变为qml中binding值绑定元素组件及timer定时器刷新组件;另一部分则用于实现人机交互的逻辑控制,将这一部分转换为对相应的组态界面的事件响应,如画面事件,鼠标事件,键盘事件,触屏事件等,通过将对事件的响应转化为命令脚本即qml中的function来实现这一部分的组件化。

(4)通过步骤3实现三个模块的组件化之后,搭建相应的数控组态开发平台对其进行管理。数控组态开发平台仍以这三个模块为中心,图元组件构成了组态平台的图形库,数据组件构成了数据中心部分,交互组件就构成了交互控制部分。

(5)通过组态开发平台,对组件进行参数化配置,将功能组件实化为相应的组件对象,组件对象相互组合就构成了数控组态界面。图形组件实例化通过图形库完成,在组态开发环境中通过从图形库中拖拽相应的图元组件至组态界面中,通过配置相应的参数或者进行鼠标操作,对图元的位置,尺寸等可视属性进行限定来实现实例化,依据人机界面的图形显示要求,通过图形组件相互的堆叠组合,来构成组态人机界面的图形部分。同时图元实例化与组合的整个过程是可视化的,构建过程中图元属性的修改会直接反映在组态界面的图形的变化,即组态界面构建中与运行时可视化部分是具有静态的一致性。数据中心负责实现数据组件对象实例化,数据中心间接地通过数据对象的管理类,以软件开发中的工厂模式来实现实例化,从而实现对机床数据对象的在逻辑上的数量限制(通道、轴、寄存器在数控系统中数量是有限制的),即通过传递相应的数据标识参数如通道号、轴索引、寄存器偏移量等至管理类来产生所要求的数据对象,通过数据对象的组合就构成的人机界面的数据源。交互控制中心负责实现交互组件的实例化。交互组件的实例化依赖于图元组件及数据对象,图元组件与数据对象实例化完成后利用交互组件来实现二者之间的数据连接,从而实现交互组件的实例化。除建立数据连接,用户通过交互中心编写相应的逻辑控制命令即qmlfunction来完成组态界面的事件响应和交互控制,从而实现交互组件另一种形式的实例化。交互控制组件的实例化在形式上都是依赖于其它两种组件,且是跨模块的,因此交互组件的实例化过程,也就实现了三种模块的组件实例化对象模块间的组合,从而实现了组态界面的整体构建过程。

(6)在步骤5的基础上即组态界面构建完成后,通过模拟数控系统的运行,模拟加工过程和加工数据,来对组态进行运行验证。如果不符合界面功能需求,则返回步骤(5)进行相应的修改。如果满足需求,则将组态界面转换为qml脚本,如图2所示是组态界面qml脚本示例,将组件对象的逻辑关系按照树形结构转换为qml脚本中的对象元素,交互逻辑控制命令脚本转换为qml中的function。组态界面的全部组态信息都保存在qml脚本中,一个组态画面对应于一个组态脚本。将组态脚本拷贝至组态运行软件的组态脚本目录下,即可完成组态界面部署,从而实现组态界面功能的扩充。

(7)完成组态界面部署后,组态运行软件到特定目录下读取组态脚本,将组态脚本解析转化为组态界面,进而实现数控组态界面的运行与人机交互。在组态界面的运行过程中,可以利用文本编辑器或者可视化的组态开发软件进行组态界面的再次组态编辑,编辑完成后运行环境重新加载组态脚本,实现数控人机界面的“运行时组态”。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1