CN104731584B - 一种开放式数控***人机界面可定制的组态设计方法 - Google Patents
一种开放式数控***人机界面可定制的组态设计方法 Download PDFInfo
- Publication number
- CN104731584B CN104731584B CN201510087823.7A CN201510087823A CN104731584B CN 104731584 B CN104731584 B CN 104731584B CN 201510087823 A CN201510087823 A CN 201510087823A CN 104731584 B CN104731584 B CN 104731584B
- Authority
- CN
- China
- Prior art keywords
- interface
- control
- display
- lua
- 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.)
- Active
Links
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种开放式数控***的人机界面可定制的组态设计方法,采用面向对象的编程方法,将自绘控件操作函数导出为LUA接口,采用组合模式将控件树形结构进行组织管理,进行个性化的界面设计和定制,并保存到XML文件中;将数控***中的内部变量和操作接口导出,与控件事件响应的LUA函数进行关联,使LUA脚本文件能够直接调用,实现数控***人机界面和控制流程可定制的要求,同时使界面显示与数控软件可独立编写调试,可移植性强,降低了开发成本。
Description
技术领域
本发明属于开放式数控***的人机界面设计领域,涉及界面、流程可定制的组态设计方法,具体涉及一种开放式数控***人机界面可定制的组态设计方法。
背景技术
体系结构开放是数控***发展的总趋势,其体现之一就是友好、灵活、可靠的人机界面。传统的数控***软件开发没有考虑用户界面的特殊性,将用户界面与数控***的开发混合在一起,这样不仅难度大,而且设计出来的用户界面结构复杂,难于理解,同时也很难满足用户对人机交互界面的要求。
经文献检索发现,中国专利申请号为:CN 201210584554,发明名称为:一种界面可自定义的数控***及实现方法,该专利申请提出了一种利用MFC、MiniGUI和SQLITE数据库技术实现的人机界面可定制***,该技术只处理显示控件信息,对定制控件的事件响应控制流程方面存在设计不足;采用SQLITE保存控件信息使得数据结构呆板,对控件树形管理的层级有限制。
发明内容
为了克服现有技术中存在的缺陷,本发明提出了一种开放式数控***人机界面可定制的组态设计方法,采用“所见即所得”的先进理念,使用户能设计出友好的、针对性强、流程可控制的人机界面,且提高开发效率、减少开发成本,对于用户和数控***制造商都具有现实意义。其技术方案如下:
一种开放式数控***人机界面可定制的组态设计方法,包括以下步骤:
步骤1:在图形用户接口GUI***中,采用wxWidget作为底层的图形后端接口,采用面向对象的编程方法,实现数控***所需各种控件的自绘接口和事件响应接口,并导出为LUA语言接口。
步骤2:在数控***中,将控制器的内部变量和流程操作接口导出为LUA语言接口,GUI***通过LUA脚本调用可进行数控***内部变量的显示编辑、流程控制的动态操作。
步骤3:在PC计算机上进行界面自定义设计,将数控***上所需的各种控件添加到界面设计中,按照个性化要求修改控件的布局和属性,采用组合模式将控件树形结构进行组织管理,设计完成时采用XML文件格式保存。
步骤4:进行界面自定义设计的同时,创建控件事件响应处理流程的LUA函数,利用步骤1和步骤2中导出的函数接口进行个性化处理流程编辑,并保存到对应的LUA脚本文件中。
步骤5:数控***运行时,加载XML文件并解析出控件树形结构中的各种信息,按照设计布局和控件属性进行自定义界面的显示。
步骤6:交互界面接收用户的鼠标键盘操作,转换为对应控件的事件响应处理,调用步骤4)中设计LUA脚本文件中对应的处理函数,进行个性化的流程响应控制。
步骤7:在图形用户接口GUI***中,采用观察者模式将数控***中机床坐标、进给速度等实时变化数据进行动态刷新。
优选地,步骤1中描述的数控***控件包括标题栏、坐标显示、程序文本编辑栏、负载进度条、PLC编辑控件、刀具表格等等,所有控件采用自绘方式实现,同时实现该控件的各种消息事件响应接口。控件自绘时周期性检测该控件关联的变量是否发生变化,无变化则不自刷新,减少CPU利用率,提高刷新效率。
优选地,步骤2中描述的数控***内部变量包括宏变量、PLC寄存器、坐标位置、工作方式、运行状态、当前程序、模态信息、***参数、坐标系、刀具偏置等等。流程控制包括***复位、循环启动、进给保持、调整倍率、工作方式切换、参数修改、偏置编辑、IO控制等等。
优选地,步骤5中控件属性包括控件索引号、显示位置、字体大小、颜色、关联变量、页面切换、数据输入、动画效果等。在进行页面设计时所有控件采用组合模式实现树形结构的管理,并最终用XML文件格式进行保存。
优选地,步骤5中自定义界面的显示时采用双缓冲的图形刷新机制,提高刷新效率和增强显示效果。
优选地,步骤7中观察者模式中发布者为***内部变量数据,订阅者为显示界面中的各种自绘控件。发布者通告消息到达时,如果自绘控件处于非显示状态,则不进行显示刷新,有效节约***资源。
本发明的有益效果为:
1.为数控***提供界面可定制功能,使界面软件与数控***控制软件可以独立编写和调试,可移植性强,降低了开发成本。
2.引入了LUA语言,利用其可以动态运行的特性,配合自定义界面控件的XML文件和数控***的内部操作函数接口,实现了数控***的界面与控制流程的动态设计;
3.本发明在进行控件管理时采用了组合模式和XML格式作为自定义界面的控件属性文件,对于控件的树形管理层级没有限制;
附图说明
图1为数控***人机界面可定制组态设计方法的结构流程图。
具体实施方式
下面结合附图和具体实施方式对本发明的技术方案作进一步详细地说明。
参照图1,一种开放式数控***人机界面可定制的组态设计方法,包括以下步骤:
1.在图形用户接口GUI***中,采用wxWidget作为底层的图形后端接口,采用面向对象的编程方法设计显示控件,实现数控***所需各种控件的自绘接口和事件响应接口;利用LUA脚本语言的导出函数规则,将自绘控件的操作函数导出为接口,使LUA脚本文件能够直接调用该接口,用于显示和编辑数控***的内部数据,并能动态调整控件的属性。
2.在数控***控制器中,利用LUA脚本语言的导出函数规则,将数控***中的内部变量和操作接口导出,使LUA脚本文件能够直接调用该接口,内部变量用于界面模块的实时显示和编辑,可以是数控***中的任何数据,包括坐标位置、工作方式、运行状态,当前程序、模态信息,***参数、宏变量、PLC数据等。操作函数接口能够让LUA脚本直接调用控制数控***的执行控制动作,如***复位、模式切换、IO控制等;
3.在PC计算机上进行自定义界面的设计,将数控***上所需的各种控件添加到界面设计画面中,包括标题栏、坐标显示、当前行号、运行程序、工作方式、进给速度等自绘控件,并用组合模式将控件树形数据结构进行组织管理,并最终用XML文件保存该界面设计。
4.在进行界面自定义设计时,每个控件的索引号需指定为不同,以便LUA脚本语言能够根据索引号遍历到该控件的指针或句柄。
5.在进行界面自定义设计时,创建控件事件响应处理流程的LUA函数,对控件的事件响应函数进行编辑,利用步骤1)和步骤2)中导出的函数接口进行个性化处理流程编辑,并保存到对应的LUA脚本文件中。响应事件主要包括鼠标、键盘的输入事件和数控***的周期性刷新事件。
6.数控***运行过程中,图形用户接口GUI读取XML文件,解析出控件树结构的设计布局和控件属性,按照自定义设计在屏幕上显示出交互界面。同时等待用户鼠标、键盘的输入事件。
7.当外界有鼠标键盘的输入事件时,图形用户接口GUI根据控件索引号遍历找到控件指针,并根据事件类型调用步骤5)中LUA脚本文件的响应函数。在响应函数中调用步骤1)中导出的控件操作函数可动态修改控件属性(如动态修改控件位置、大小、页面切换、数据输入、动画效果等等),调用步骤2)中导出的数控***操作函数可动态修改变量数据和执行控制动作(如***复位、循环启动、进给保持、调整倍率、工作方式切换、参数输入等等)。
8.在图形用户接口GUI中,采用观察者模式进行数控***动态变化数据的实时刷新,其中发布者为***内部变量数据,订阅者为显示界面中的各种自绘控件。发布者通告消息到达时,如果自绘控件处于非显示状态,则不进行显示刷新,有效节约***资源。动态变化的数据包括机床坐标、主轴转速、进给速度、当前刀具、宏变量状态等。
以上所述,仅为本发明较佳的具体实施方式,本发明的保护范围不限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可显而易见地得到的技术方案的简单变化或等效替换均落入本发明的保护范围内。
Claims (6)
1.一种开放式数控***人机界面可定制的组态设计方法,其特征在于,包括以下步骤:
步骤1:在图形用户接口GUI***中,采用wxWidget作为底层的图形后端接口,采用面向对象的编程方法,实现数控***所需各种控件的自绘接口和事件响应接口,并导出为LUA语言接口;
步骤2:在数控***中,将控制器的内部变量和流程操作接口导出为LUA语言接口,GUI***通过LUA脚本调用可进行数控***内部变量的显示编辑、流程控制的动态操作;
步骤3:在PC计算机上进行界面自定义设计,将数控***上所需的各种控件添加到界面设计中,按照个性化要求修改控件的布局和属性,采用组合模式将控件树形结构进行组织管理,设计完成时采用XML文件格式保存;
步骤4:进行界面自定义设计的同时,创建控件事件响应处理流程的LUA函数,利用步骤1和步骤2中导出的LUA语言接口进行个性化处理流程编辑,并保存到对应的LUA脚本文件中;
步骤5:数控***运行时,加载XML文件并解析出控件树形结构中的各种信息,按照设计布局和控件属性进行自定义界面的显示;
步骤6:交互界面接收用户的鼠标键盘操作,转换为对应控件的事件响应处理,调用步骤4中设计LUA脚本文件中对应的处理函数,进行个性化的流程响应控制;
步骤7:在图形用户接口GUI***中,采用观察者模式将数控***中机床坐标、进给速度实时变化数据进行动态刷新。
2.根据权利要求1所述的开放式数控***人机界面可定制的组态设计方法,其特征在于,步骤1中所述的各种控件包括标题栏、坐标显示、程序文本编辑栏、负载进度条、PLC编辑控件、刀具表格,所有控件采用自绘方式实现,同时实现该控件的各种消息事件响应接口;控件自绘时周期性检测该控件关联的变量是否发生变化,无变化则不自刷新。
3.根据权利要求1所述的开放式数控***人机界面可定制的组态设计方法,其特征在于,步骤2中所述的数控***内部变量包括宏变量、PLC寄存器、坐标位置、工作方式、运行状态、当前程序、模态信息、***参数、坐标系、刀具偏置;流程控制包括***复位、循环启动、进给保持、调整倍率、工作方式切换、参数修改、偏置编辑、IO控制。
4.根据权利要求1所述的开放式数控***人机界面可定制的组态设计方法,其特征在于,步骤5中所述控件属性包括控件索引号、显示位置、字体大小、颜色、关联变量、页面切换、数据输入、动画效果;在进行页面设计时所有控件采用组合模式实现树形结构的管理,并最终用XML文件格式进行保存。
5.根据权利要求1所述的开放式数控***人机界面可定制的组态设计方法,其特征在于,步骤5中自定义界面的显示时采用双缓冲的图形刷新机制。
6.根据权利要求1所述的开放式数控***人机界面可定制的组态设计方法,其特征在于,步骤7中观察者模式中发布者为***内部变量数据,订阅者为显示界面中的各种自绘控件;发布者通告消息到达时,如果自绘控件处于非显示状态,则不进行显示刷新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510087823.7A CN104731584B (zh) | 2015-02-26 | 2015-02-26 | 一种开放式数控***人机界面可定制的组态设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510087823.7A CN104731584B (zh) | 2015-02-26 | 2015-02-26 | 一种开放式数控***人机界面可定制的组态设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104731584A CN104731584A (zh) | 2015-06-24 |
CN104731584B true CN104731584B (zh) | 2018-10-02 |
Family
ID=53455502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510087823.7A Active CN104731584B (zh) | 2015-02-26 | 2015-02-26 | 一种开放式数控***人机界面可定制的组态设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104731584B (zh) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105022638A (zh) * | 2015-08-06 | 2015-11-04 | 许继集团有限公司 | 一种嵌入式装置业务逻辑可视化展示方法 |
CN105138230B (zh) * | 2015-10-10 | 2016-11-23 | 珠海安联锐视科技股份有限公司 | 嵌入式图形用户界面框架***及其程序管理方法 |
CN105242931A (zh) * | 2015-10-15 | 2016-01-13 | 福建天晴数码有限公司 | 对游戏界面编辑并生成代码的方法及*** |
CN106814696B (zh) * | 2015-11-30 | 2019-07-02 | 沈阳高精数控智能技术股份有限公司 | 一种数控***人机界面二次开发平台***及其实现方法 |
CN105824684B (zh) * | 2016-01-08 | 2019-04-19 | 中国人民解放军63686部队 | 一种多模式大数据软件模拟器的实现方法 |
CN105912339B (zh) * | 2016-04-15 | 2019-01-29 | 华中科技大学 | 一种数控***中应用的开发与集成方法及*** |
CN106020994A (zh) * | 2016-05-06 | 2016-10-12 | 福建创意嘉和软件有限公司 | 一种脚本界面互通方法及装置 |
CN105955076A (zh) * | 2016-05-11 | 2016-09-21 | 深圳市合信自动化技术有限公司 | 一种工业人机界面变量访问方法及*** |
CN106055338B (zh) * | 2016-06-08 | 2019-05-10 | 常州数控技术研究所 | 一种开放式数控***人机界面二次开发平台及其设计方法 |
CN108108165B (zh) * | 2016-11-25 | 2022-01-04 | 盛趣信息技术(上海)有限公司 | 图形接口编辑***及方法 |
CN106649725B (zh) * | 2016-12-22 | 2019-11-29 | 前海节事科技(深圳)有限公司 | 一种页面切换方法及装置 |
CN106814701B (zh) * | 2016-12-26 | 2019-04-23 | 武汉华中数控股份有限公司 | 管控数控平台***及其构建方法 |
CN106681770B (zh) * | 2016-12-29 | 2020-10-13 | 金蝶软件(中国)有限公司 | 一种复合组件中子组件属性的动态修改方法及装置 |
CN106802804B (zh) * | 2017-01-12 | 2020-01-10 | 合肥速显微电子科技有限公司 | 一种人机界面的可视化变量关联组件的方法及*** |
CN107220064B (zh) * | 2017-06-27 | 2019-06-25 | 华中科技大学 | 一种数控***界面组态开发方法 |
CN107436796A (zh) * | 2017-08-07 | 2017-12-05 | 苏州速显微电子科技有限公司 | 一种基于寄存器的虚拟机及其实现方法 |
TWI650705B (zh) * | 2017-08-17 | 2019-02-11 | 凌華科技股份有限公司 | 架構於非侵入式資料擷取系統客製化顯示畫面的系統模組及方法 |
CN108563477B (zh) * | 2018-03-02 | 2022-04-26 | 北京奇艺世纪科技有限公司 | 一种页面事件响应方法和装置 |
CN108733472A (zh) * | 2018-03-21 | 2018-11-02 | 北京猎户星空科技有限公司 | 一种任务创建方法及装置 |
CN108874376B (zh) * | 2018-06-19 | 2021-09-07 | 北京智明星通科技股份有限公司 | 函数和类的导出方法及装置、终端和计算机可读存储介质 |
CN109408991B (zh) * | 2018-11-02 | 2022-12-09 | 宜宾职业技术学院 | 一种基于fanuc picture人机界面的模型参数可视化加工方法 |
CN111324348A (zh) * | 2018-12-17 | 2020-06-23 | 北京华航无线电测量研究所 | 一种导引设备地面操控台的人机交互界面实现方法 |
CN109918070A (zh) * | 2019-03-30 | 2019-06-21 | 佛山点度物联科技有限公司 | 一种平台基于浏览器的自定义监控组态的***及方法 |
CN110333861B (zh) * | 2019-06-13 | 2023-06-27 | 宝鸡石油机械有限责任公司 | 一种基于plc的上位机通用ui设计方法 |
CN110554896B (zh) * | 2019-08-02 | 2022-09-13 | 中电科思仪科技(安徽)有限公司 | 一种基于预置图片像素锚点信息处理的界面设计方法 |
CN111182019B (zh) * | 2019-08-08 | 2021-10-15 | 腾讯科技(深圳)有限公司 | 跨平台通信方法及装置、电子设备 |
CN110531693B (zh) * | 2019-08-27 | 2022-05-24 | 泉州市大鲨鱼机械科技有限公司 | 一种绳锯机数控***的图形编辑界面设计方法 |
CN110673879A (zh) * | 2019-10-24 | 2020-01-10 | 珠海格力电器股份有限公司 | 组态软件的元件样式的一键调整方法及装置 |
CN110825031B (zh) * | 2019-12-04 | 2023-03-31 | 上海维宏电子科技股份有限公司 | 实现数控***实时自定义控制的***及其方法 |
CN111338626B (zh) * | 2020-03-04 | 2023-09-05 | 北京奇艺世纪科技有限公司 | 一种界面渲染方法、装置、电子设备及介质 |
CN111666022A (zh) * | 2020-05-15 | 2020-09-15 | 上海东方泵业(集团)有限公司 | 一种plc预留开放式通讯接口处理 |
CN112506137B (zh) * | 2020-11-02 | 2023-07-04 | 南通恒康数控机械股份有限公司 | 应用于数控海绵切割机的控制界面的设计方法 |
CN113112566A (zh) * | 2021-04-14 | 2021-07-13 | 深圳市合信自动化技术有限公司 | 一种绘制xy坐标轴体系轨迹的控件 |
CN114936053A (zh) * | 2022-03-23 | 2022-08-23 | 深圳市爱都科技有限公司 | 可穿戴设备的图形用户界面框架、嵌入式***及绘制方法 |
CN114741073B (zh) * | 2022-04-27 | 2023-10-17 | 傲拓科技股份有限公司 | 一种plc组态***及顺序控制图形生成方法 |
CN117707099B (zh) * | 2024-02-06 | 2024-05-24 | 浙江求是创芯半导体设备有限公司 | 基于界面的单晶炉控制方法、***、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201097202Y (zh) * | 2007-11-12 | 2008-08-06 | 上海电气集团股份有限公司 | 一种图形化交互式编程装置 |
CN101692233A (zh) * | 2009-10-13 | 2010-04-07 | 北京理工大学 | 一种开放式数控刀具信息存储方法及*** |
CN103176784A (zh) * | 2011-12-23 | 2013-06-26 | 中国科学院沈阳计算技术研究所有限公司 | 基于面向对象可重构的开放式数控***人机界面设计方法 |
CN104331024A (zh) * | 2014-10-16 | 2015-02-04 | 大族激光科技产业集团股份有限公司 | 自动控制方法及基于pc机的开放式数控*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130205282A1 (en) * | 2012-02-07 | 2013-08-08 | Microsoft Corporation | Transferring program execution from compiled code to interpreted code |
-
2015
- 2015-02-26 CN CN201510087823.7A patent/CN104731584B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201097202Y (zh) * | 2007-11-12 | 2008-08-06 | 上海电气集团股份有限公司 | 一种图形化交互式编程装置 |
CN101692233A (zh) * | 2009-10-13 | 2010-04-07 | 北京理工大学 | 一种开放式数控刀具信息存储方法及*** |
CN103176784A (zh) * | 2011-12-23 | 2013-06-26 | 中国科学院沈阳计算技术研究所有限公司 | 基于面向对象可重构的开放式数控***人机界面设计方法 |
CN104331024A (zh) * | 2014-10-16 | 2015-02-04 | 大族激光科技产业集团股份有限公司 | 自动控制方法及基于pc机的开放式数控*** |
Also Published As
Publication number | Publication date |
---|---|
CN104731584A (zh) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104731584B (zh) | 一种开放式数控***人机界面可定制的组态设计方法 | |
CN105653644B (zh) | 一种页面构造器及页面构造方法 | |
CN108279964B (zh) | 蒙层渲染的实现方法、装置、智能设备及存储介质 | |
US8407661B2 (en) | Method and system for creating HMI applications for an automation process | |
CN105094832A (zh) | 一种所见即所得的动态生成用户界面的方法和*** | |
CN104685466B (zh) | 用于提供多个视图的浏览器级背景页面 | |
CN101196818A (zh) | 快速图形化开发*** | |
US9703443B2 (en) | Method and system for creating a free-form visual user interface element | |
CN111881662A (zh) | 表单生成方法、装置、处理设备及存储介质 | |
CN105404512B (zh) | 一种应用程序窗口界面更改方法及装置 | |
CN102609252A (zh) | 基于测量仪器的逻辑菜单资源智能配置方法 | |
CN105242931A (zh) | 对游戏界面编辑并生成代码的方法及*** | |
CN106126254A (zh) | 一种关联的平视界面游戏编辑***与方法 | |
CN110427185A (zh) | 一种基于电力脚本语言实现人机浏览器功能的方法 | |
US9158452B2 (en) | Early drawing system and method to improve touch screen response | |
KR20180135654A (ko) | 프로그램의 직관적 제작방법 | |
WO2013170525A1 (zh) | 一种以逻辑流程图示方式展示或绘制计算机应用程序组织逻辑流程关系的方法及装置 | |
CN104951314A (zh) | 对话框的显示方法及*** | |
CN105045774B (zh) | 一种所见即所得的用户界面操作手册编写及生成方法 | |
CN102959509A (zh) | 程序生成装置以及图像控制*** | |
CN111308961A (zh) | 一种运动控制器的人机界面组态开发方法 | |
Kavaldjian et al. | Semi-automatic user interface generation considering pointing granularity | |
CN108572859A (zh) | 一种可配置的执行程序***及其控制方法 | |
Kim et al. | Multi-platform document-oriented guis | |
Chatty | Supporting multidisciplinary software composition for interactive applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 430073 room 02, room 01-11, floor 16, building a, Wuhan Optical Valley International Business Center, No. 111, Guanshan Avenue, Donghu New Technology Development Zone, Hongshan District, Wuhan City, Hubei Province Patentee after: Wuhan aikewei Technology Co., Ltd Address before: 430074 Hubei city of Wuhan province East Lake Development Zone Luoyu Road No. 243 building of science and technology Patentee before: Wuhan Ai Kewei automation Science and Technology Ltd. |