基于三维技术的实时数据采集与数据库的设计与实现_第1页
基于三维技术的实时数据采集与数据库的设计与实现_第2页
基于三维技术的实时数据采集与数据库的设计与实现_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于三维技术的实时数据采集与数据库的设计与实现

一、从三维到三维随着计算机硬件和软件的开发,虚拟技术在不同的行业和领域中得到了广泛应用。尤其在军事中的应用更体现出了它的优势。随着技术的不断发展,其在民用工业中的应用也不断扩大,如汽车测试仿真系统、产品展示系统等。现存的民用虚拟仿真系统着重于场景的动态渲染和视角的切换,目的在于为用户提供最为真实的虚拟环境。但随着应用范围的不断扩大,在场景中加入对实时数据的表现已经成为虚拟仿真系统发展的趋势。随着物联网技术与数据库技术的不断发展,实时数据的采集、传输与存储已经成为现实。这就为三维的实时虚拟仿真系统的实现提供了有力的支持。三维引擎技术在近几年得到了有力的发展,现有的三维引擎都具备场景搭建、实时交互、服务器通信等功能。本文涉及的三维引擎Unity3d是一款成熟的三维引擎,其长期的被用于三维游戏的设计中,所以具有非常优异的三维显示、实时交互功能,与服务器之间的数据交互也简单高效。各方面技术的成熟使得针对三维的实时虚拟仿真系统的研究成为可能,本文针对目前存在的一些问题,提出一些具体可行的解决方案,并且将其与实际的应用相结合,为进一步的研究提供了依据。二、数据层和服务层由于需要支持大量实时数据的显示和虚拟场景的互动,所以系统采用C/S模式。系统的组成如下图所示:数据采集端主要负责数据的采集及传输工作,其包含各种传感器设备及必要的网络传输设备,通过Internet回传实时获取的数据,为了保证数据传输的安全性,所以传输使用TCP/IP协议。数据层主要负责数据的存储,包含实时数据、模型数据及其他数据的存储。其中需要说明的是Unity3d中的模型是以特殊的.unity3d格式存储的。事实是模型数据在存入数据库前在三维引擎中进行了处理,生成了Unity3d可以识别的文件格式。模型数据在此系统中以文件的格式存储在服务器上,并且生成了一个Json格式的配置文件存储与同一服务器上。服务层主要为应用层提供服务,其中数据服务是核心,因为上层的实时虚拟仿真系统中的数据的实时性就依靠这一层来保证。应用层主要是一个进行实时虚拟仿真的平台,其包含三方面的关键技术,分别为:Unity3d引擎、动态加载技术及实时交互技术。三、关键技术1.模型存储技术模型数据及配置文件存放在服务器端。当系统启动时,先从服务器端加载配置文件,之后进行模型的加载。配置文件的基本格式如下图所示2.数据的动态加载在一个大型的虚拟场景中,不能让用户长时间的等待所有资源的加载。而应该先加载用户附近的场景资源,其他的资源在程序运行过程中在不影响操作的情况下,让其在后台加载,直到所有资源都加载完毕。这就不可避免的需要使用到数据的动态加载技术。因为模型文件的加载需要缓冲,所以就必须为其在客户端设计一个缓冲池。首先加载配置文件,因为配置文件为Json格式,所以必须对其进行解析。利用开源库LitJson可以实现配置文件的解析,之后加载配置文件中的模型文件。在加载过程中必须对加载的每一帧进行监听,判断该帧是否为文件的结尾。将加载文件首先置于缓冲池中。在加载的同时客户端也开始处理显示模型,需要将模型的属性信息赋予对应的模型,并且将对应的脚本添加到模型上,最后在三维引擎中显示。Unity3d中的WWW类可以用于数据的请求和传输,WWW类是Unity3d中的关键类。它负责请求模型和加载模型数据。3.动态实时交互功能三维仿真场景的动态交互是仿真平台非常重要的一个特性,以Unity3d三维引擎开发的虚拟仿真系统具有良好的动态交互性能。它可以通过附加在GameObject上的脚本实现三维场景的动态交互,本文系统内使用到的脚本由C#实现。Unity3d中有许多非常重要常用的类,具体见下表:通过C#脚本为本来静态的场景添加了动态的实时交互功能,例如用户可以使用鼠标选中某个模型,并显示一些关键信息。使得用户获得更好的体验。四、使用示例将该实时虚拟仿真系统利用与风车监控中,取得了较好的效果,具体的实现如下:1.风力发电机的状态信息将模型资源文件和配置文件同时上传到服务器,保存到制定目录下。对于采集的实时信息,由于针对的是风力发电机,所以包括:当前环境情况和风机的一些状态信息。服务器端数据库的设计参考采集的实时信息,所以其对应的数据表有多张。2.客户客户端利用Unity3d开发,使用C/S模式。运行与windows平台之上。3.系统的实时仿真实时仿真的过程主要是首先建立仿真的场景:主要依赖于数据的动态加载技术。其次就是实时数据的展现:主要是通过场景来模拟真实参数的变化,以达到实时性的需求。下图为系统实时仿真的一个场景:仿真场景的生成过程:在用户启动虚拟仿真平台时,客户端就主动向服务器请求模型数据,使用动态加载技术可以使画面平滑逼真。实时的数据传输依靠Unity3d内部的updata函数,实时的向服务器请求实时数据。服务器接到数据请求以WWW方式返回数据,虚拟仿真平台解析返回的数据并在平台上展示。五、实时的虚拟仿真系统将成为发展方向本文对基于Unity3d的实时虚拟仿真系统做了深入的研究讨论,对服务器端的设计及客户端人机交互做重点研究,并结合实例实现了一个应用系统。随着计算机技术及虚拟仿真技术的发展,传感器技术及三维引擎技术的进步,虚拟仿真软件功能的日益完善,极大地提高了系统仿真的开发水平。市

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论