CN104866376A - 一种基于可编辑文本驱动的虚拟样机及其方法 - Google Patents
一种基于可编辑文本驱动的虚拟样机及其方法 Download PDFInfo
- Publication number
- CN104866376A CN104866376A CN201510283342.3A CN201510283342A CN104866376A CN 104866376 A CN104866376 A CN 104866376A CN 201510283342 A CN201510283342 A CN 201510283342A CN 104866376 A CN104866376 A CN 104866376A
- Authority
- CN
- China
- Prior art keywords
- function
- virtual
- prototype
- virtual prototype
- main program
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于可编辑文本驱动的虚拟样机及其方法,包括通用主程序、功能文档、功能函数库、样机模型,通用主程序,用于持续监控触发信号,当探测到触发信号时,立即在功能文档中搜索与该触发信号相关的功能描述并进行解读,然后调用功能函数库中的相关函数,驱动样机模型按功能描述的意图进行动作。本发明将各种虚拟样机的特定功能从主程序中分离出来,放入可扩展的功能函数库中,从而使主程序与具体的虚拟样机品种(如虚拟数控车床、虚拟加工中心等)无关,成为虚拟样机的通用执行程序,可由专人开发和维护,显著提升了虚拟样机的可靠性。
Description
技术领域
本发明涉及虚拟样机仿真软件领域,尤其涉及一种基于可编辑文本驱动的虚拟样机及其方法。
技术背景
虚拟样机是一种计算机仿真软件,采用虚拟现实技术在计算机上模拟各种真实的机电设备(如机床、仪器仪表、家用电器等)的工作原理和操作。现有的虚拟样机主要由两部分组成,一是被模拟对象的三维模型资源。二是可执行程序,用于实现被模拟对象的原理和操作等功能。
虚拟样机的开发仍采用典型的虚拟仿真软件开发方式,即在某个虚拟现实平台上进行程序开发,然后编译生成可执行程序,其存在的问题是开发门槛较高。开发人员不仅需要懂得软件开发,还往往需要具备相当的图形学、计算几何的背景知识。同时,还需要了解被模拟对象(如数控机床)有关的专业知识。因此,相关人才非常缺乏。
上述问题导致目前虚拟样机的开发周期长、成本高,非一般企业能够承受。
发明内容
针对现有的虚拟样机开发技术存在的不足,本发明提供了一种基于可编辑文本驱动的虚拟样机及其方法,其技术方案简述如下。
一种基于可编辑文本驱动的虚拟样机包括:
通用主程序,用于持续监控触发信号,当探测到触发信号时,立即在功能文档中搜索与该触发信号相关的功能描述并进行解读,然后调用功能函数库中的相关函数,驱动样机模型按功能描述的意图进行动作;
功能文档,用于存放虚拟样机的功能描述;
功能函数库,用于执行功能文档所描述的功能;
样机模型,采用三维CAD软件进行建模,并以STL通用格式导入,为模拟对象及其辅助设备、周边环境的三维模型。
所述的功能文档针对某一虚拟样机而构建,采用可编辑文档格式,以可阅读理解的方式,描述了该虚拟样机的组成结构、所具有的所有功能,以及各个功能之间的运行逻辑关系。
所述的功能函数库用于执行功能文档所描述的功能,分为共用功能函数库和专用功能函数库,所述的共用功能函数库与具体的虚拟样机品种无关,用于执行功能文档所描述的通用功能,可供各类虚拟样机开发共享;所述的专用功能函数库为专用于特定虚拟样机产品的功能执行。
所述的虚拟样机的运行方法是:
1)通用主程序调入功能文档中的对象信息,建立系统内部的对象状态模型;
2)通用主程序实时、连续地监控虚拟样机的外部触发,探测到有效的触发后,根据触发信息及各对象的功能文档,调用对象的状态表达式,并由状态表达式计算出各对象的状态值,及其对应的输出函数;
3)将功能参数传递给功能函数库中对应的输出函数,调用并执行该函数,驱动样机模型执行功能动作,从而实现对触发的响应;
4)返回步骤2)。
与已有技术相比,本发明的有益效果在于:
1)将各种虚拟样机的特定功能从主程序中分离出来,放入可扩展的功能函数库中,从而使主程序与具体的虚拟样机品种(如虚拟数控车床、虚拟加工中心等)无关,成为虚拟样机的通用执行程序,由专人开发和维护,显著提升了可靠性。
2)虚拟样机的功能运行逻辑关系主要由可编辑文档进行描述,而非原有的计算机程序语言,使得不同种类虚拟样机的功能开发,其大部分工作可由非程序开发人员承担,因此大大降低了虚拟样机开发的门槛和开发成本,缩短了开发周期。同时,与执行程序相比,外部可编辑文档具有即时修改的特点,可有效提升虚拟样机交付后的现场维护性能。同时,还带来非常好的开放特性,用户甚至可以通过对功能文档的编辑,自行开发出新的软件功能。
附图说明
图1为本发明方案涉及的虚拟样机的结构与运行原理图;
图2虚拟样机示例;
图3功能文档示例。
具体实施方式
本发明涉及的虚拟样机由通用主程序、功能文档、功能函数库、样机模型组成。
通用主程序承担软件启动、外部触发探测、功能调度、数据管理、界面管理,以及少量共性功能,如观察工具箱、结构树等。其容量小、开放,与具体虚拟样机产品无关。
功能文档用于存放虚拟样机的功能描述,包括虚拟样机产品的构成元素信息、产品功能及动画描述、功能逻辑关系、配置信息等信息等。功能文档是具有一定的语法规范的可编辑文档(如EXCEL、TXT、XML等)。
功能函数库完成产品功能(各类触发、响应等)的执行,以及部分动画、特效等,以DLL文件分类存放和调用。功能函数库又分为专用功能函数库(即专用于某虚拟样机产品的功能函数)和共用功能函数库,以提升软件的可组合特性。
样机模型是指被模拟对象(如机床)及其辅助设备、周边环境的三维模型。
在本发明中,构成虚拟仿真(包括物体、环境、界面等)的一切元素个体或其集合称为对象。对象的各个属性,如颜色、动静、大小、位置、是否干涉等,称为对象的状态。显然,一个对象可能会同时具有多种类型的状态,每种状态可能会有多种取值(如不同的颜色值),它的取值既可能受其它对象状态值的影响,同时又影响着其它对象的状态取值,由对象的状态关系表达式定义。所谓虚拟样机的功能,是指一组对象在特定条件(如外部触发)下,所引发的状态变化,并以可视化的方式输出。
因此,我们必须为虚拟样机中的每一个对象定义状态参数、状态关系式、状态可视化输出函数等,从而构建出以对象为中心的功能描述文档,即功能文档。
图1为本方案涉及的虚拟样机组成结构及工作原理。运行完全由一个通用的对象状态计算平台进行管理,其运行基本原理及流程为:
1)调入功能文档中的对象信息,建立系统内部的对象状态模型。
2)实时、连续地监控虚拟样机的外部触发(如鼠标、键盘操作),探测到有效的触发后,根据触发信息及各对象的功能文档,调用对象的状态表达式,并由状态表达式计算出各对象的状态值,及其对应的输出函数。
3)将功能参数传递给功能函数库中对应的输出函数,调用并执行该函数,驱动样机模型执行功能动作,从而实现对触发的响应。
4)返回2)。
图2为一个简单的虚拟样机示例,它由按键和方块两个对象组成,当鼠标左键点击按键B01时,B01被激活变亮,方块CUBE沿X轴正向匀速移动。再次点击按键B01时,B01进入等待状态,并变暗,同时方块CUBE停止移动。
针对该样机的功能文档可以是各种可编辑的文档格式,如TXT、EXCEL等。
图3是该虚拟样机的功能文档示例。当B01受到鼠标点击时,引发其状态表达式REV_ON_OFF(S_IFACTIVE)的运行,它是二值状态切换函数,S_IFACTIVE当前值为0(表示未按下)时,将其变为1(表示按下);否则变为0。CHANGE_PIC(B01,S_ACTIVE,a.jpg,b.jpg)则为B01外观切换函数,若S_ACTIVE为1(按键B01激活),则将B01显示为高亮,否则显示为暗色。
在B01的功能文档中,其关联对象为CUBE01,因此当B01进行状态计算后,需要接着对CUBE01的状态进行计算。显然,根据CUBE01的功能文档描述,其状态变量S_IFMOVE的取值与B01的状态变量B01.S_IFACTIVE相同,即当B01的状态为激活(S_IFACTIVE=1)时,S_IFMOVE的值也为1。之后,根据CUBE01功能文档的描述,系统引用输出函数MOVE驱动CUBE01的三维模式沿X方向以50mm/s的速度运动。
本方案所述虚拟样机的开发,分以下几个方面:
1)通用主程序:采用计算机程序语言,由专人进行开发。由于通用主程序主要承担对功能文档的调用、解读、执行,与具体的虚拟样机品种无关,因此其开发工作从理论上说是“一次性”的。
2)功能函数库:采用计算机程序语言,由专人进行开发。功能函数分两类,一类是通用功能,如示例中的二值切换函数REV_ON_OFF、运动函数MOVE、颜色变换函数CHANGE_PIC等,与具体的虚拟样机品种无关,可供各类虚拟样机开发共享,其开发也是“一次性”。另一类是某个虚拟样机特有的专用功能,难以共享,需要临时订制开发。
3)功能文档:针对某一虚拟样机而构建的功能描述文档,采用EXCEL、TXT等可编辑文档格式,以可阅读理解的方式,描述了该虚拟样机的组成结构(如机床的零部件),该虚拟样机所具有的所有功能,以及各个功能之间的运行逻辑关系。功能文档的开发,构成了具体虚拟样机开发的核心,为减少开发工作量,我们还设计了一个功能文档可视化编辑调试工具箱,可帮助开发人员快速构建、检查、调试功能文档,例如,可方便地显示任何时刻的状态表并可进行筛选、只查看发生转变的状态、可动态跟踪触发后状态的变化路径、自动检查语法错误等。从而大幅度提升功能文档的编辑效率。
4)虚拟样机模型:采用三维CAD软件进行建模,并以STL通用格式导入。
由上述可见,在本发明方案中,虚拟样机中需要进行程序开发的,有两方面内容:一是通用主程序,二是功能函数库。而这两项开发工作大部分是“一次性”的,与具体的虚拟样机产品(如虚拟加工中心、虚拟数控车床)无关。也就是说,当我们一次性地完成通用主程序和共享函数库的开发之后,当需要开发一个新的虚拟样机时,主要的开发工作就是构建功能文档和虚拟样机三维模型,只有少量的特殊功能函数需要订制开发。
因此,本发明方案使虚拟样机的程序开发最大程度地实现共享(即最大程度地与虚拟样机种类无关)。采用本发明方案,在开发一种新的虚拟样机时,其大部分的开发工作由程序编制变为功能文档编制。
Claims (4)
1. 一种基于可编辑文本驱动的虚拟样机,其特征在于包括:
通用主程序,用于持续监控触发信号,当探测到触发信号时,立即在功能文档中搜索与该触发信号相关的功能描述并进行解读,然后调用功能函数库中的相关函数,驱动样机模型按功能描述的意图进行动作;
功能文档,用于存放虚拟样机的功能描述;
功能函数库,用于执行功能文档所描述的功能;
样机模型,采用三维CAD软件进行建模,并以STL通用格式导入,为模拟对象及其辅助设备、周边环境的三维模型。
2.根据权利要求1所述的一种基于可编辑文本驱动的虚拟样机,其特征在于所述的功能文档针对某一虚拟样机而构建,采用可编辑文档格式,以可阅读理解的方式,描述了该虚拟样机的组成结构、所具有的所有功能,以及各个功能之间的运行逻辑关系。
3.根据权利要求1所述的一种基于可编辑文本驱动的虚拟样机,其特征在于所述的功能函数库用于执行功能文档所描述的功能,分为共用功能函数库和专用功能函数库,所述的共用功能函数库与具体的虚拟样机品种无关,用于执行功能文档所描述的通用功能,可供各类虚拟样机开发共享;所述的专用功能函数库为专用于特定虚拟样机产品的功能执行。
4.一种如权利要求1所述的虚拟样机的运行方法,其特征在于:
1)通用主程序调入功能文档中的对象信息,建立系统内部的对象状态模型;
2)通用主程序实时、连续地监控虚拟样机的外部触发,探测到有效的触发后,根据触发信息及各对象的功能文档,调用对象的状态表达式,并由状态表达式计算出各对象的状态值,及其对应的输出函数;
3)将功能参数传递给功能函数库中对应的输出函数,调用并执行该函数,驱动样机模型执行功能动作,从而实现对触发的响应;
4)返回步骤2)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510283342.3A CN104866376A (zh) | 2015-05-29 | 2015-05-29 | 一种基于可编辑文本驱动的虚拟样机及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510283342.3A CN104866376A (zh) | 2015-05-29 | 2015-05-29 | 一种基于可编辑文本驱动的虚拟样机及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104866376A true CN104866376A (zh) | 2015-08-26 |
Family
ID=53912225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510283342.3A Pending CN104866376A (zh) | 2015-05-29 | 2015-05-29 | 一种基于可编辑文本驱动的虚拟样机及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104866376A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107122184A (zh) * | 2017-04-21 | 2017-09-01 | 杭州万维镜像科技有限公司 | 一种虚拟现实软件开放式开发系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090113526A1 (en) * | 2007-10-24 | 2009-04-30 | Mcafee, Inc. | Method and system for ensuring a sharing violation free environment for a trusted software agent |
CN102129718A (zh) * | 2011-03-16 | 2011-07-20 | 西安电子科技大学 | 一种无失真的异构cad模型转换方法 |
CN104504171A (zh) * | 2014-11-20 | 2015-04-08 | 北京索为高科系统技术有限公司 | 一种基于统一建模环境的建模方法 |
CN104503737A (zh) * | 2014-11-20 | 2015-04-08 | 北京索为高科系统技术有限公司 | 一种统一建模平台 |
-
2015
- 2015-05-29 CN CN201510283342.3A patent/CN104866376A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090113526A1 (en) * | 2007-10-24 | 2009-04-30 | Mcafee, Inc. | Method and system for ensuring a sharing violation free environment for a trusted software agent |
CN102129718A (zh) * | 2011-03-16 | 2011-07-20 | 西安电子科技大学 | 一种无失真的异构cad模型转换方法 |
CN104504171A (zh) * | 2014-11-20 | 2015-04-08 | 北京索为高科系统技术有限公司 | 一种基于统一建模环境的建模方法 |
CN104503737A (zh) * | 2014-11-20 | 2015-04-08 | 北京索为高科系统技术有限公司 | 一种统一建模平台 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107122184A (zh) * | 2017-04-21 | 2017-09-01 | 杭州万维镜像科技有限公司 | 一种虚拟现实软件开放式开发系统及方法 |
WO2018192142A1 (zh) * | 2017-04-21 | 2018-10-25 | 杭州万维镜像科技有限公司 | 一种虚拟现实软件开放式开发系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Valavanis | On the hierarchical modeling analysis and simulation of flexible manufacturing systems with extended Petri nets | |
Konstantinov et al. | The cyber-physical e-machine manufacturing system: Virtual engineering for complete lifecycle support | |
US10684936B2 (en) | Observer for simulation test and verification | |
CN103076762A (zh) | 基于htm40100车铣复合加工中心三维在线防碰撞方法 | |
CN104765843B (zh) | 一种用于电力实时监控系统的图形界面控制方法 | |
CN104317236A (zh) | 基于软plc技术的无线传感器网络控制终端 | |
CN103123598A (zh) | 一种编译型软plc的在线调试实现方法 | |
CN103941650A (zh) | 逻辑与运动集成控制器 | |
CN102722601B (zh) | 数控系统的模型转换形式化语义集成框架的实现方法 | |
CN102968519A (zh) | 电力系统中空心线圈电子式电流互感器模型及其建模方法 | |
Pereira et al. | DINASORE: A Dynamic Intelligent Reconfiguration Tool for Cyber-Physical Production Systems. | |
US9424005B1 (en) | Templatized component | |
CN116070305A (zh) | 一种数字孪生体建模实现系统、方法和存储介质 | |
CN102289530A (zh) | 一种起重机通用型主梁参数化计算机建模系统 | |
Drozdov et al. | Formal verification of cyber-physical automation systems modelled with timed block diagrams | |
CN104866376A (zh) | 一种基于可编辑文本驱动的虚拟样机及其方法 | |
CN104238438A (zh) | 一种plc通用平台及其设计方法 | |
Uddin | High-level simulation of concurrency operations in microthreaded many-core architectures | |
Luder et al. | Formal models for the verification of IEC 61499 function block based control applications | |
Hossain et al. | Virtual control system development platform with the application of PLC device | |
CN111308961A (zh) | 一种运动控制器的人机界面组态开发方法 | |
Yuncheng | Research on modeling and design of real-time embedded systems | |
CN116679974A (zh) | 一种多软件封装运行方法、计算机程序产品及终端设备 | |
Xie | Modelling predictable component-based distributed control architectures | |
Parson et al. | A framework for simulating heterogeneous virtual processors |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150826 |
|
RJ01 | Rejection of invention patent application after publication |