基于Virtools的三维交互虚拟精馏实验室的构建

  • 格式:pdf
  • 大小:619.42 KB
  • 文档页数:5

康译友,张永策,方丽,等:基于Virtools的三维交互虚拟精馏实验室的构建2011,Vol.32,No.2633

0引言

随着化工仿真技术的发展,以DCS(distributedcontrolsys-

tem)模式为代表的单一流程仿真虚拟实验平台已经不能满足

用户对逼真视觉感受的追求[1-2],运用以三维视景效果为优势

特征的虚拟现实技术[3]于化工仿真领域已成为一种趋势[4-7],特

别是具有沉浸感交互环境的虚拟实验室凭借其巨大的应用前

景越来越受国内外的关注,因而如何构建具有强烈沉浸感,高

交互,强大数据处理功能的三维虚拟实验室更是成为当前的

研究热点。

目前对于精馏虚拟实验的研究主要集中在仿真算法的设

计与优化方面,并且所开发的软件以平面形式为主[8],存在实

验现象表现不足、动态交互功能不强和临场感效果不明显等

缺陷。对于如何构建由虚拟人物引导的、三维沉浸式环境的、

高交互式精馏虚拟实验室,特别是将精馏过程与馏出液组成

色谱检测组合成一体化的仿真平台软件尚未见报道,基于此本文以板式塔为研究对象,采用Virtools为开发工具进行交互

设计,通过Aspen所得的模拟数据作为间接实验数据[9]来校核

精馏预测数学模型的参数,从多元化模式出发,制作了三维板

式精馏塔虚拟实验室,并对构建过程及实现方法进行了讨论。

所构建的虚拟实验室沉浸感强、功能完善、交互操作逼真,而

且具有开放式结构,既有利于实验备选物系的拓展和更新,还

便于平行实验项目的添加和扩充,其也将对构建其他化工虚

拟仿真软件具有借鉴作用。

1板式精馏塔虚拟实验室的构建模式

虚拟实验室是对真实实验状态与过程的模拟和仿真。本

文从虚拟装置结构的相似性、交互功能的完整性、实验现象的

真实性、模拟结果的可信性等原则出发,构建了以虚拟人物为

引导的三维情景化精馏虚拟实验室,考虑到其结构与功能的

多样性与复杂性,下面首先对精馏虚拟实验室的总体框架结

构与功能进行了设计与讨论。

收稿日期:2010-04-22;修订日期:2010-06-25。6342011,Vol.32,No.2计算机工程与设计ComputerEngineeringandDesign

1.1虚拟实验室的主体框架结构设计与讨论

三维仿真板式精馏塔的总体框架结构如图1所示。情景

化的虚拟实验室主体结构包括外部虚拟场景、可操作的虚拟

装置和虚拟人物三大基础部分,其中作为核心部分的虚拟装

置包括精馏分离和色谱检测两个模块。精馏分离模块又可分

为设计型和操作型两种平行模式,并以操作型为主。设计型

模式的模拟数据及灵敏度曲线可以为操作型模式提供优化工

艺参数的参考信息。

在虚拟实验过程中,交互操作包括双液系的选择、功率调

节、流量调节、色谱分析、图谱绘制、数据处理及跟踪评价指导

等环节,每个环节的操作都存在着数据的传递和信息的交换,

而这些交互操作功能的实现则需要构建必要的数学模型,有

关数学模型的构建将在下面讨论。为了强化虚拟实验的沉

浸感,本文特别设计了虚拟人物,并且提供三种视角(便于实

验操作的用户主视角、具有监控指导感受的尾随视角和视野

广阔的固定俯视视角)来体验实验操作全过程,不但增加了

操作的自由度,也极大提升了临场感。另外,考虑到软件的

扩展和升级,虚拟实验采用模块化开发技术,用户可根据需

要自行添加其他平行实验内容,制作出自己的完整虚拟化工

实验室系统。

功能完备是虚拟仿真平台与现实贴近甚至超越现实的必

然要求。对于精馏虚拟实验室而言,通过交互操作确定可变

参数对状态变量的影响是功能设计的重点和难点,而描述这

一化工过程则需要建立能够反映变化规律和过程机理的数学

模型来实现。

综上所述,精馏虚拟实验室的开发流程分为3部分,即数

学建模、实体建模和虚拟交互设计,三者之间紧密关联,形成一个有机整体,以下分别进行讨论。1.2虚拟实验室的功能结构设计

1.2.1主要功能设计与讨论(1)物系选择功能:提供多种完全互溶双液系,可分为理想

双液系和非理想双液系两类,如苯和甲苯混合溶液属于理想

物系,乙醇和水混合溶液属于非理想物系。采用分类化的物

系选择模式不但可以丰富物系内容,也使模拟的适用范围更

加广泛。(2)多参数调节功能:这是交互虚拟实验室的核心部分。

通过虚拟角色可以对虚拟设备和仪器的阀门开关等进行模拟

操作控制,完成进料位置、进料流量、回流流量、塔顶采出流量

等参数的调节及对分离产物的取样等交互操作。在操作过程

中,可实时显示实验状态,如液位、流量、操作进程等内容。为

保持整体效果的一致性与局部显示的需要,设计了独立小窗

体来放大局部实验现象,以便于实时观察条件改变时气液接

触状态的动态效果,使仿真软件更加人性化。交互设计中还

借鉴游戏的任务读取方式同步显示并提示操作步骤,实现对

虚拟实验的有效指导。(3)色谱检测功能:由于要实现完整的交互式动态精馏过

程,参数的改变必然影响到馏出液的组成,因此,完整的精馏

实验过程应该包括精馏过程和馏出液的检测两部分。具备检

测功能是精馏虚拟实验与实际吻合的必然要求,然而大多数仿

真平台恰恰将这一部分简化甚至省略,降低体系的完整性。本

文强化了色谱检测模块,实现了塔顶馏出液的实时分析检验。(4)监控评价功能:三维动态交互式虚拟实验在为用户提

供了较大的操作自由度的同时也带来如何对实验操作过程进

行正确评价的困难。本文对动态交互操作数据进行记录与管

图1板式精馏塔虚拟实验室的总体框架结构板式精馏塔虚拟实验室

虚拟场景虚拟装置虚拟人物

学习模块精馏分离信息传递色谱检测监控评价

三维结构展示理论素材设计型操作型

参数设置灵敏度分析信息参照双液系选择虚拟人物交互气相色谱仪虚拟人物交互信息传递分离条件操作监控操作信息操作评价

理想体系非理想体系塔板数设置流量调节控制阀操作

分析反馈分离结果

模拟过程评价分析结果康译友,张永策,方丽,等:基于Virtools的三维交互虚拟精馏实验室的构建2011,Vol.32,No.2635

理的同时跟踪操作质量,及时对错误操作给予警告提示和记

录,最终给予评判。

1.2.2辅助功能设计与讨论(1)内部构件展示功能:设备仪器的各种属性通过超现实

的内部构件呈现方式得以观察,达到更深层次的认识效果。如

观察精馏塔的具体结构,可以直观的了解气液两相的接触状

态,为加强理论与实际的联系提供了媒介。(2)虚拟漫游功能:虚拟角色的引入顺应了虚拟仿真发展

的趋势,不但能提高漫游的沉浸感,还能使虚拟场景更加贴近

实际。本文对人物的控制采用基于C语言的VSL(virtoolsscript

language)编程语言和BB(buildingblock)模块相结合的方式实

现,相比于在3D-CG交互动画中通过编写CPSL脚本语言[10]控

制CyberPerson的形式更加灵活简便。虚拟人物的引入明显

增强操作者的参与感,使其能够快速进入实验角色。(3)外接硬件功能:外接硬件的引入在扩展交互方式的同

时可以提升用户的自主性。如添加鼠标和游戏手柄的数据输

入接口,使用者可以通过使用鼠标和游戏手柄进行虚拟漫游,

以一种新的交互控制媒介实现灵活的操作,达到更好的互

动效果。(4)其他功能:加入许多相关理论及操作的辅助内容,使资

料学习和实验操作一体化。如多媒体课件、Flash视频、操作指

导、设备照片、学习网站的开放接口等。

2精馏过程数学模型的建立

精馏过程的数学模型是反映可变参数与状态变量关系的

函数表达式,是对精馏单元操作分离效果进行预测的关键,也

是构建虚拟实验室的基础。精馏过程数学模型的表达式中如相对挥发度D=FnW*=+1+=**m*w(4)

B*

A*B*(5)lnB(6)式中:nW、nL分别为进料、塔底、塔顶、回流流量,W、为回流比,为相对挥发度。式中6362011,Vol.32,No.2计算机工程与设计ComputerEngineeringandDesign

式外还添加了单击左键结合中轴旋转的方式,如对以自身中

心线为旋转轴的旋钮和闸阀的操控,这种交互动作的实现方

法使沉浸感明显增强。由于部分交互操作的数据信息直接与

数学模型中的可控参数相关,并且涉及数据的记录和传递,所

以本文单独编写VSL程序模块实现交互操作与数学模型的关

联,完成信息传递过程。如调节进料流量康译友,张永策,方丽,等:基于Virtools的三维交互虚拟精馏实验室的构建2011,Vol.32,No.2637

模块中的Stretch配合LinearProgression通过3D模型mesh的

变形来完成的,但是mesh产生形变会导致后续交互控制比

较复杂;第2种方法是液体模型在3dsMax中导出时当作

Chara-cter处理,再把在3dsMax中制作好的液面升降关键帧

动画作为Animation导出,在Virtools中将Animation赋予液体

模型Chara-cter,实现液面改变的效果,第2种方法比较简捷,

容易控制。

3.2.5分离预测数学模型的参数调用实现方法

在精馏分离预测模型中,部分参数是由所选液系的属性

决定的,例如,计算纯组分饱和蒸汽压和温度关系的Antoine

公式中的参数A、B、C,如式(6),由此,如何在选定物系时调用

对应参数是一个关键点,本文通过在分离预测数学模型程序

模块中编写调用函数的方式实现。首先给不同的双液系分别

设置ID值,再用VSL语言编写调用函数getSampal(),通过if

循环语句搜寻Array数组中的对应参数,并将读取到的3个参

数赋给全局变量AA、BB、CC进行纯物质蒸汽压和温度的计

算。通过读取Array数组信息的方式完成参数传递,同时实现

了软件的开放功能,即可以对Array数组扩充更多的物质参

数,使精馏分离虚拟实验的内容更加广泛,还可以对已有的物

质参数及时更新。Array数组表的结构如图5所示,部分程序

代码如表2所示。

4结束语

本文在对精馏分离过程与虚拟实验室构建技术进行深入

研究的基础上,成功地建立了三维沉浸交互式精馏虚拟实验

室,完成了实验操作过程的仿真、气液组成和温度分布的模拟

计算。通过引入虚拟人物及对人物的交互控制,增强了用户

与虚拟环境之间的情感交流,使沉浸感大幅度增强,明显地提

升了三维交互模式的仿真表现能力。在构建过程中采用VSL

编程语言结合BB模块的方式较好地解决了交互过程中信息

实时传递的问题,实现了多参数调节和监控评价功能,并且通

过增加虚拟色谱检测装置和设计检测交互操作对精馏虚拟实验的完整性给予很好的体现,形成了一种具备完整精馏分离

和产品检测功能的虚拟实验室构建的新模式。另外,模块化

的开发模式还能实现虚拟实验项目的扩充和更新,使软件的

灵活性和适用性大幅度增强,也为其它化工模拟仿真软件的

开发提供了一种可以借鉴的构建模式。

参考文献:

[1]MichaelBMcGrath,JudithRBrown.Visuallearningforscience

andengineering[J].IEEEComputerGraphicsandApplications,

2005,25(5):56-63.[2]卫静莉,刘高亮,卢培晔.化工实验操作仿真的Flash实现[J].计

算机工程与设计,2005,26(12):3264-3266.[3]ChristopherDGeiger,JoergStoecklein,FlorianKlompmaker,et

al.Developmentofanaugmentedrealitygamebyextendinga3D