基于VRMLJAVA的虚拟现实及其协同环境的开发吴波.docx
- 文档编号:10077580
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:35
- 大小:26.88KB
基于VRMLJAVA的虚拟现实及其协同环境的开发吴波.docx
《基于VRMLJAVA的虚拟现实及其协同环境的开发吴波.docx》由会员分享,可在线阅读,更多相关《基于VRMLJAVA的虚拟现实及其协同环境的开发吴波.docx(35页珍藏版)》请在冰豆网上搜索。
基于VRMLJAVA的虚拟现实及其协同环境的开发吴波
基于VRML-JAVA的虚拟现实及其协同环境的开发
吴波周之平张飒兵吴介一
(东南大学CIMS中心,南京210096)
虚拟现实(
&’()*+,-.+,’)/
)最初指应用沉浸式技术在三维
交互式可视化环境中提供真实体验。
通常具有三个基本特征,
即沉浸感(
’00.(1’23
),浏览性(
3+4’5+)’23
)和多感官的交互(
’36
).(+7)’23
)能力。
由于这样的系统造价高昂,操作复杂,尚无法在
普通的工作环境中得到应用。
因此目前虚拟现实的含义有所拓
宽,使用半沉浸和非沉浸式技术,通过显示器对三维物体进行
浏览同样可被称为虚拟现实系统,从而在更大的范围中普及和
应用虚拟现实技术。
各种虚拟现实系统的核心通常都是带有增
强的功能和行为表现的三维计算机模型。
&-89
(
&’()*+,-.6
+,’)/82:
.,’359+35*+5.
)就是一种用于通过
;2(,:
;’:
.;.<
发布这种模型并允许用户使用带有插件的普通浏览器对三维
物体进行浏览的国际标准。
虽然它不具备沉浸感,但是由于其
易于实现、适合网络传输,对建立基于
;.<
的三维可视化交互
式应用提供了一种很好的解决方案。
随着网络带宽和计算机硬
件性能的不断提高,作为
;.<=>
技术主流的
&-89
正日益
拓宽其应用领域。
虚拟装配是虚拟现实技术在制造业中的一项重要应用。
传
统的装配体设计采用自底向上的方式,需要将零件制造出来后
进行装配,往往会造成装配体各部件的干涉以及与设计目标不
符等缺陷。
如此反复导致设计成本增加,开发周期延长。
虚拟装
配借助虚拟现实技术可以在设计阶段进行装配仿真,从而克服
传统装配设计的缺陷。
敏捷制造是为了应对激烈的市场竞争而提出的先进制造
模式,以多种形式实现竞争环境下的敏捷性,主要包括个性化
需求满足、快速反应性、低成本、生产系统的重组与资源的重用
等。
它强调各盟员企业之间的信息和资源共享。
敏捷制造模式
中的虚拟装配有其自身特点:
企业联盟动态形成,各企业的设
计开发环境不尽相同,因此构建的虚拟装配系统需要不受软硬
件平台和
?
@>
环境的约束。
同时出于设备造价和易操作性方
面的考虑,笔者提出建立
?
@AA
生成系统,然后对其产生的装
配工艺在普通工作站上通过开放式三维技术仿真装配设计过
程,以此作为虚拟装配的一种简化形式,将这种方式称为可视
化装配。
&-89
作为一种开放的国际标准,可以用其构建一个统一
的三维交互式平台,并可与同样具有平台无关性的
B+4+
语言
相结合以满足复杂应用系统的需求。
但
&-89
作为一种通用
基于
!
"#$%&’!
’的虚拟现实
及其协同环境的开发
吴波周之平张飒兵吴介一
(东南大学
?
C8D
中心,南京
!
E""FG
)
HI0+’,
:
4’37.3)JKKLEG=$720
摘要虚拟现实技术对于制造业信息化有着重要意义。
为建立开放技术标准之上的可视化装配系统,该文对基于
&-89IB@&@
的虚拟现实技术在工程设计领域的应用进行了研究,提出一种新型的
;.<
环境下
=>
交互仿真结构,复杂
的运算和仿真在服务器上进行,从而实现服务器端装配模型和客户端显示模型的分离。
并在此基础之上提出协同环境开
发的系统结构。
该模型不仅可用于网络环境下的可视化装配,也适合于其他领域基于
;.<
的科学可视化。
关键词
&-89B@&@
装配可视化协同
;.<
文章编号
E""!
IM==EI
(
!
""#
)
"%I"E=GI"=
文献标识码
@
中图分类号
NA=FE$F
!
"#$%&’!
’()*+,!
-./0)1"+)1-/2)3,4556+.)/-53
-3’**+7812!
-*0)1-9)/-53
:
0(5;<50;<-6-3=;<)3=>)8-3=:
0&-+2-
(
?
C8D?
.3).(
,
D2*)O.+1)P3’4.(1’)/
,
Q+3R’35!
E""FG
)
’8*/.)?
/
:
&’()*+,-.+,’)/).7O32,25/’14.(/’0K2()+3))2?
20K*).(C3).5(+).:
8+3*S+7)*(’35D/1).0$N2:
.4.,2K)O.
4’1*+,+11.0<,/1/1).0<+1.:
232K.3).7O32,25/
,
)O.&-89IB@&@<+1.:
&’()*+,-.+,’)/).7O32,25/’1:
’17*11.:
$NO’1
K+K.(K(.1.3)1+324.,’3).(+7)’4.=>1’0*,+)’231/1).0S2(;.<<+1.:
.34’(230.3)1$=>4’1*+,’T+)’23’1.U.7*).:
23)O.
7,’.3)1’:
.+3:
720K,.U720K*)+)’23+3:
1’0*,+)’2323)O.1.(4.(1’:
.$NO*1
,
)O.4’1*+,’T+)’2302:
.,+3:
)O.+11.0<,/
02:
.,+(.:
’1)(’<*).:
$V+1.:
23)O’1).7O32,25/
,
)O.K+K.(<(’351S2(W+(:
+1/1).0723S’5*(+)’23S2(722K.(+)’23$NO’1
+(7O’).7)*(.32)23,/7+3<.*1.:
’34’1*+,+11.0<,/1/1).0<*)+,12’11*’)+<,.S2(4’1*+,’T+)’23’32)O.((.1.+(7O+(.+$
@+2A5.,*
:
&-89
,
B@&@
,
@11.0<,/
,
&’1*+,’T+)’23
,
?
22K.(+)’23
,
;.<
基金项目:
江苏省自然科学基金资助项目(编号:
VX!
""E!
"#)
作者简介:
吴波(
EF%GI),男,硕士研究生,主要研究方向是计算机网络7’01和虚拟现实。
周之平(EF%GI),男,博士研究生,主要研究方向是计算
!
""#$%
计算机工程与应用
备智能,无法在各事件间建立复杂的联系,为了扩展
&’()
的
交互能力和处理能力需要程序语言的介入,
&’()
标准本身没
有指定编程语言,但在网络环境下,
*+,+
是最具魅力的语言,它
和
&’()
的结合显得相当自然,当前的主流
&’()
浏览器也
都对
*+,+
编程提供了支持。
图
!
&’()事件模型
在
&’()
中使用
*+,+
有两种方式,即通过内部
-./012
节
点和外部编程接口(
345
)。
(
6
)内部
-./012
节点
-./012
节点的
7’)
域可以包含一段
*+,+-./012
程序或者是
链接的一个
*4&4.8+99
。
当
:
0/;.2<=21=2
域为
>4)-3
时可以将
-./012
节点理解为事件通路上的一个智能节点,它接收事件输
入对其处理后产生事件输出,这条事件通路仍由
’<7?
3
指
定。
当
:
0/;.2<=21=2
为
?
’73
时程序可以获得其他节点的引用,
并直接对其域进行赋值,而不必遵从
’<7?
3
指定的事件通路。
(
!
)外部编程接口(
3@2;/A+84=2BC/0AD5A2;/E+.;
)
345
-./012
节点从
&’()
场景内部提供了与
*+,+
的连接,而
345
定义了与外部
F?
()
页面中的
4118;2
通信的接口。
它的基
本思想是将
*+,++118;2
与
&’()
置于同一
G;H
页面,在
*+,+
+118;2
中建立
H/CI9;/
对象以标识一个唯一的
&’()
场景,并
由此获得对
&’()
场景中已定义节点的引用,它通过直接指
定引用节点的域值而达到动态效果。
这样,
*+,++118;2
即可控
制
&’()
场景,也能进行与
F?
()
等其他媒体的交互以及网
络控制,从而可以实现复杂的虚拟环境系统。
345
作为
&’()
标准的扩充已经提交
5-<
,有望在将来正式成为国际标准的一
部分。
总之,很多功能既可通过
-./012
节点也可利用
345
实现,
一般来说对于单一的
&’()
事件实现交互及运算功能可选择
内部的
-./012
,若需集成多种媒体,并进行复杂网络控制,则更
宜于使用
345
,自然其编程也要复杂一些。
在该文的系统实现中需要进行大量与服务器的通信,同时
有比较复杂的用户界面控制,为此采用
345
作为与
&’()
的
交互手段。
6$J协同环境的实现
5A2;/A;2
的发展使得协同工作技术的研究也开始转移到了
5A2;/A;2
上来。
基于
5A2;/A;2
的协同应用研究同时也使协同环境
得到了巨大的发展。
目前在
5A2;/A;2
上的协同应用由于受到
5A2;/A;2
本身及其应用开发技术和工具的影响,使得在
5A2;/A;2
上开发协同应用并不能随心所欲。
特别是目前的网络带宽限制
使开发的协同环境无论是在场景的构造上还是在协作者的交
互方法上都有很大的不足。
该文提出一种基于
5A2;/A;2
虚拟现实交互的协同应用结
构。
它是利用
&’()
来搭建
5A2;/A;2
上的虚拟工作空间,作为
协作者的交互空间。
&’()
搭建的
5A2;/A;2
上的虚拟现实场景
可以使用户产生身临其境的感觉,利用
&’()
的感应结点接
受用户的输入信息以及相应的反馈,来增加虚拟场景的交互
性,虚拟现实的场景是完全符合人们感知心理的一个交互环境。
协作者的所有活动都发生在这个虚拟的空间中,就象人们
现实中生活、工作、学习一样,总归离不开周围的环境。
不管是
协作者与应用系统之间的交互还是协作者之间的交互都通过
虚拟空间来进行,包括实时的和非实时的。
虚拟空间在其中起
着中间代理的作用,它接收用户发出的所有消息,并做必要的
处理和反馈。
发生一次最简单的任务事件的消息流如下:
图
K
!
协作者
4
提出事务请求;
"
服务器接受
4
的请求;
#
服务器根据请求内容做分类处理;
$4
提出的对服务器的请求,服务器直接产生响应并反馈
给
4
;
4
提出的对协作者
L
的请求由服务器传递给
L
;
%L
响应
4
的请求,产生相应动作;
&L
再将
4
的响应结果传递给服务器;
’
最后由服务器传回
4
,完成一次事务。
建立协同环境将有利于各地工作人员的信息交流,对设计
带来很大的方便,促进设计效率的提高。
构建分布式协同工作
环境的关键在于实现一个协调服务器,用以维护各个虚拟场
景,并在同一个场景中的客户端之间传递需要共享的信息数据。
图
#系统流程图
用户之间的交流可以通过一些简单的文本或是对话框来
(下转
!
6K
页)
6KM建模语言,并不是专为工程应用领域设计的,为了适应网络传
输的需要,其模型与
&’(
模型相比,在精确性和信息量方面要
相差很多,因此它在制造业中的应用受到了一定限制。
该文对
基于
)*+,
的可视化装配系统进行了研究,提出一种装配模
型与显示模型分离的功能结构,即以
-./012.342.52.
为架构,
装配模型与显示模型互为镜像,装配模型在服务器端进行仿真
运算,而三维显示模型下载到客户端供用户浏览。
这样可以充
分发挥
)*+,
模型的三维显示、浏览功能,并通过仿真模型扩
充系统功能。
多用户的
)*+,
虚拟空间协同系统能使异地的多个用户
同时参加装配工作,共同生成一个
)*+,
虚拟空间,也可以使
多个用户及时地交流信息,使得设计装配更加有效。
6
系统结构和关键技术
6$6
研究背景
如何增强
)*+,
的
7(
浏览、交互能力并将其应用于工程
设计领域,国内外已进行了一定的研究。
+89:
;81=1>:
和
-2.?
:
8.@A=?
B
C6D
设计的
-E’)E*
系统,采用基于
F2G
的技术
实现了网络环境下家具的虚拟装配;密歇根大学的虚拟现实实
验室开展了一系列关于
)*+,
在制造业中应用的研究项目
C!
D
,
如船体运动仿真,船体制造仿真,虚拟制造中的机器人模型等
等;笔者对
)*+,
的模型特点、交互控制进行了研究,提出了
一种新型的应用结构,并对其在敏捷制造环境下的虚拟装配中
的应用进行了探索。
东南大学机械工程系先前开展的装配
&’HH
和虚拟装配技术研究
C7D
中,采用寄生于
&’(
环境的虚拟
装配系统对装配
&’HH
系统生成的装配工艺进行可视化装配
验证。
但由于不能脱离
&’(
环境,对于在网络环境下进行虚拟
装配验证和装配顺序动画演示的发布带来了一定的困难,异地
的用户必须具备相同的
&’(
环境才能对虚拟装配的过程进行
再现,而这一点对于敏捷制造环境下的企业来说通常不能保
证。
因此笔者考虑采用
)*+,
和
A858
等完全基于
F2G
的平台
无关技术,这样可在不同的硬件环境和软件平台上实现对装配
工艺的可视化验证,并且其结果可供管理、销售等人员参考,而
不仅仅限于工程技术人员,从而拓宽了信息共享的范围。
文献
C6
,
!
D
中采用的方法对实现以上目标均有不足,对此在这篇论文
中提出一种网络环境下基于
)*+,
的虚拟装配系统结构,并
对其中的
&’(
环境下信息的提取和模型建立、
)*+,
和
A858
的交互、碰撞检测的实现、基于动态模型的网上动画演示等关
键技术进行了研究。
6$!
系统结构
图
6系统功能框图
该文采用三层
-./012.342.52.
结构,图
6
显示了系统的功
能框图。
&’(
客户端和装配客户端分别提供基于浏览器的零
件信息维护和可视化装配的用户界面。
应用层提供
I99J
服务
以及仿真运算和数据库操作。
资源层的数据库存储零件模型和
相关信息。
客户层的三维显示与应用层的仿真运算分离,不仅
是增强
)*+,
功能的有效途径,也有利于核心运算模块的升
级维护,提高系统的适应性和扩展性。
6$7&’(环境下的信息提取以及模型的建立
为使系统具备平台无关以及适于网络传输的特性,需要将
不同工作环境,不同
&’(
软件产生的零部件信息和装配信息
导入为一种中性的格式,并由此产生用于客户端三维显示的
)*+,
模型和用于服务器端装配仿真的装配模型。
&’(
模型具
有非常精确的描述,包括用于制造或运算的尺寸描述和材料数
据,其表面往往由
或 4JL;? 2 定义,但当其用于实时交互 时会带来相当大的渲染运算量。 )*+, 为了提高实时交互性 能,采用基于多边形的模型表面描述,所采用的多边形数量越 多,模型越精确,但同时带来的渲染数据量也越大。 )*+, 中采 用 M? @2N2@O8>2429 节点描述面的形状,并通过面的拼接实现任 意形状的几何体外观。 当 &’( 模型转换为 )*+, 模型之后,将 会丢失精确性和具体的装配特征从而不利于装配时对其进行 精确控制,为了增强 )*+, 环境下的控制和仿真功能,笔者考 虑在服务器端建立一个与客户端 )*+, 模型互为镜像的模 型,客户端发出的碰撞检测和精确控制等指令通过网络传到服 务器端进行运算并将结果传回,然后由 A858’JJL29 通过 E’M 控制 )*+, 模型的运动以反应仿真结果。 同时这样的实现方 式可以降低对客户端软硬件环境的要求,不须额外安装定制的 软件,当对服务器端的核心功能库进行更新时也不用对客户端 进行改动,具有很好的扩展性和灵活性。 实现 &’( 环境下的信息提取有以下几种可能的途径: ( 6 )直接利用 &’( 软件的 )*+, 导出功能 目前主流的 &’( 软件如 H./E , 4/L;@E@B2 都支持 )*+, 格式的输出,可以很方便地将其导入 )*+, 装配环境,但由于 无法了解其转换细节,因此无法控制转换精度也较难建立对应 的镜像模型,在功能的扩充上限制较大。 ( ! )通过产品模型数据转换标准 4PEH 4PEH 作为国际标准得到了广泛的支持,对 &’( 软件导出 的 4PEH 文件进行解析并由此得到 )*+, 模型和装配模型是 一种可行的办法。 文献 C#D 对此进行了研究。 ( 7 )通过 &’( 软件的 ’HM 通过 &’( 软件提供的应用编程接口( ’HM )是一种更为安 全的做法,由程序供应商提供的编程接口可以保证在各版本之 间的一致性以及信息的精确性。 HP& 公司的 (;5;1;/? +/>Q=J CRD 采用了这种方式将 &’( 数据转换到它自己的专用数据格式, 同样也可以通过这种方式建立 )*+, 模型。 但它需要对不同 &’( 软件开发不同的接口,实现起来较为复杂。 6$#)*+,和A858的结合 )*+, 的节点中定义了事件作为节点对外的接口,分为代 表输入接口的事件输入( 252? 9M? )和代表输出接口的事件输出 ( 252? 9S=9 )。 事件模型可由图 ! 说明。 节点间的事件通路由关键字 *SKPE 指定,当事件源有事 件发生,就可以通过事件通路使相应的节点发生变化,达到动 态的效果。 但仅仅通过这种简单的事件模型还不能使 )*+, 具 67%计算机工程与应用 ! ""#$% (上接 &’( 页) 进行,可以在 )*+*,--./0 中设置接受对话框和发送对话框。 为了避免多个用户同时对同一物体进行操作而引起冲突, 可以采用分级权限的办法来实现,当一个用户对某一个物件要 进行操作时,首先要向服务器发出一个请求,服务器首先检查 该物件是否被操作,若没有被操作,就返回该用户“可以对这物 件操作”的响应,同时锁定其他用户对该物件操作的权限;若该 物件在操作,则返回该用户“请等待”的响应。 一个用户只有在一个物件解锁以后才能对另一个物件申 请锁定的请求。 ! 应用实例 系统基于 )*+* 技术构建,用户界面采用 12345 组件,出于 实现的简单性和通用性考虑,通过 --./061/7+./0 通信实现客 户端和服务器之间的位置传递和结果返回。 基于 189: ;! $" 的 碰撞检测模块用 <== 编写并编译成为动态链接库,由服务器上 的 )*+* 程序通过 )>: ( )*+*>*03+/: 40/7? *@/ )对其进行调用。 目 前基于“堆叠”思路的装配验证方式已经完成, ABC9 模型直接 由 <,; 文件输出,装配模型为类似的多边形表面描述辅以装 配关系约束。 用户在客户端按照装配顺序依次拖动零件到合适 的装配位置,期间可以进行角度姿态调整,同时对装配时的关 键点位置进行记录并保存到服务器,几个用户同时进行操作的 时候,只能有一个用户是主要装配,其他的用户只能辅助装配, 装配时是否发生干涉由碰撞检测模块实时运算。 ’结论 网络环境下的可视化装配是一个仍在不断发展的课题,其 中许多关键技术有待进一步深入研究。 其中笔者提出的协同环 境系统利用 D@-E: F 协议下 )*+*1G@H/0 网络通信机制,实现了 服务器对多客户机的多点传输;根据 ABC9 虚拟环境生成的 特定的系统环境变量,构造了相应的网络数据传输包;根据分 级权限的机制,避免了多用户操作可能产生的冲突。 该文提出 的客户端完成三维浏览显示和服务器端进行仿真运算的结构 不仅可用于网络环境下的可视化装配,也适合于其他领域基于 I/J 的科学可视化。 该文提出的协同环境的系统框架也同样适 用于其他网络虚拟系统,例如虚拟聊天室,虚拟教室,多用户虚 拟商场购物系统,网上多人 ’; 游戏等等。 (收稿日期: ! ""’ 年 # 月) 参考文献 &$>GKL@MC*0M3*L,)K45N/74M*7O$<,;G40M/IG7.OI3O/I/J: A370K*. LL/PJ.QG? RK7430K7/230MNS,ASBT 4: F7G@//O345LABC9VVG? 0M/? GK70MLQP-GL3KPG4DM/+370K*.7/*.30QPGO/.345.*45K*5/,F*O/76 JG74W/7P*4Q,&VVV6"! : &&’X&&V ! $N/3/7.*KL6F/0/7$I/J6N*L/OA370K*.B/*.30Q34;/L354*4OC*4K? *@0K76 345,--.3@*03G4LT 4: &L0: 40/74*03G4*.SK7G /7/4@/G4 --.3@*03G4L*4O: 4? G7P*03G4D/@M4G.G5Q340M/C*7303P/: 4OKL073/L, M00-: EE2226+7.$KP3@M$/OKEJ/3/7EF*-/7LE@GP-30! """EI/JN*L/OAB$M0P ! ""&6"& ’$顾建钧$敏捷制造环境下装配<,FF和虚拟装配技术研究T;U$南京: 东 南大学机械工程系, ! """ #$Y3P 40/74/06J*L/O 4: 40/7*@03+/’;1QL0/P230MC*7HK-T 4: F7G@//O345LG? <: SV(: 1CS&(0M ? /7/4@/: ;SD S[[! ! [$M00-: EE222$O3+3L3G4$@GPE,! """6&! \$任浩,谭庆平$基于ABC9和)*+*的物理建模方法与实现T)U$计算机 工程与科学, ! """;! ! (! ): ’\X’V %$W: >8A,>;S>NSBWS>$,R*L0*4OBGJKL0W)Y: P-./P/40*03G4 ? G7 EE222$234$0K/$4.E@LE 00E534GELG.3OE,! """6"( ($<*P/7G4$S4M*4@345W)Y: J/02//4@G4+/]-G.QM/O7*T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VRMLJAVA 虚拟现实 及其 协同 环境 开发