APP下载

基于万维引擎的游艇驾驶虚拟仿真系统研发

2018-09-05李超陈哲潘义川

关键词:运动仿真游艇虚拟现实

李超 陈哲 潘义川

【摘 要】论文通过对船舶运动分析,再基于Unity下的开发软件万维引擎,针对游艇虚拟操纵平台完成游艇操纵、虚拟仪表和运动模拟以及驾驶交互设计,通过测试完成游艇驾驶虚拟仿真程序的发布。

【Abstract】Through the analysis of ship motion , and then based on the development software of Very Engine under the Unity, the yacht manipulation, virtual instrument and motion simulation and driving interactive design for the yacht virtual manipulation platform are finished.Through the test completed the launch of the yacht driving virtual simulation program.

【关键词】游艇;虚拟现实;驾驶模拟;运动仿真

【Keywords】 yacht; virtual reality; driving simulation; motion simulation

【中图分类号】U674.942 【文献标志码】A 【文章编号】1673-1069(2018)05-0189-03

1 引言

虚拟仿真技术在早期主要应用于船舶驾驶模拟,近些年由于虚拟技术发展在游艇的仿真也取得相应进展,如姜文刚通过对高速游艇的运动和姿态以及舵机、主机,进行了建模和计算机仿真。结合高速游艇船体等实物,搭建了半实物的高速游艇模拟驾驶实时仿真系统[1];半實物仿真系统由于研发周期和造价高昂在满足日渐加速发展的虚拟现实技术需求方面明显不足。多自由度模型是进行游艇虚拟设计时较为重要的步骤。目前我国建立高速滑行艇前进、升沉、纵摇三自由度运动模型并进行运动预报与仿真[2],正横规则波四自由度模型[3]等,随着近几年虚拟现实技术的快速发展,适合快速发展的桌面式和沉浸式环境下的游艇驾驶操纵仿真系统能够解决游艇多自由度运动的问题,在复杂运动表达方面具有快速更改、编程简易的优势。

2 游艇驾驶系统开发平台

Unity与万维引擎:

Unity是由Unity Technologies开发的让用户根据自身需求开发互动内容的多平台的综合型开发平台,是一个全面整合的专业开发虚拟系统的引擎[4]。

万维引擎是一款基于Unity环境开发的虚拟现实软件开发平台,其打破了传统的计算机编程开发模式,通过使用C#编程语言将抽象的基本操作功能指令转化为具体的功能指令,将功能指令存储于表格中,进行虚拟开发时是通过Excel中编辑功能文本指令,软件运行通过表格驱动读取对应文本功能。

3 游艇驾驶系统整体设计

此游艇驾驶仿真系统应具有以下基本功能:模拟游艇的运动姿态;模拟游艇在威海小石岛附近的三维场景;模拟主机、舵机运行以及相关仪器仪表;接近真实的原比例驾驶操纵台,可供用户借助外部设备进行沉浸式操作;应具有操作流程交互提示。

4 游艇运动数学模型

4.1 游艇五自由度运动方程

按船舶质心运动定理和相对质心运动的动量矩定理[5]:对于动系,有: = + x M= + x (1)

式中, 是动系o-xyz转动的角速度; —船的动量; —船相对于质心G运动的动量矩。

忽略纵摇,写成投影式,建立游艇五自由度的运动方程式: M( +qw-rv)=X M( +ru-pw)=Y I +qrI =L Iz +qpI =N M( +pv-qu)=Z (2)

4.2 游艇横摇垂荡运动方程

根据自由横摇的固有周期计算公式[6],一般游艇横摇惯性力矩M( )为:M( )=-(Jxx+ΔJxx) =- φ (3)

游艇横摇阻尼系数由试验取得其静水横摇阻尼,再使用经验公式修正游艇的横摇阻尼力矩为: M( )=-2N =-2μφφ (4)

根据滑行原理可知[7]。可以得到游艇的横摇恢复力矩计算式:M(φ)=-{( -Z sinφ)-LHR-[ +Z sinφ]LHR} (5)

对于横摇波浪主扰动力矩,参照常规船舶横摇波浪主扰动力矩的计算方法,得到滑行艇横摇波浪主扰动力矩MW的一般表达式: MW=ΔhXφα0sinμsinωet (6)

将几式联立得出游艇在规则波中横摇运动方程:

φ+2μφφ +[( -Z sinφ)LHR-( +Z sinφ)LHR]=ΔhXφα0sinμsinωet (7)

船舶在水面运动受到的外界力使船舶在纵向运动一般表现为垂荡和纵摇,而纵摇一般静水域和正常情况下是非常微弱的,因此只讨论垂向运动。

在创建垂荡运动数学模型时依旧采用切片理论,在垂向运动上的力分为三种:恢复力、阻尼力、惯性力。

由船体运动而产生在整体上的垂荡力Fz,将上述各力乘以X(从船长到船尾)所得力矩:

根据牛顿第二定律,惯性力和外力平衡,船体的垂荡运动方程为:

联立公式(8-9)和垂向力得到以下垂荡运动方程:

式中:zs为垂荡时的船体在z轴的位移;Azz为垂荡时的船体附连质量;Bzz为垂荡时的船体阻尼力系数;Czz为垂荡时的船体恢复力系数;Fzc为波浪扰动力的余弦分量;Fzs为波浪扰动力的正弦分量。

4.3 游艇降速横倾

游艇回转横倾参考船舶回转运动,回转降速采用惯性环节模拟柴油发动机转速方法得出游艇操纵杆给定转速与n实际转速y传递函数以此为根据建立游艇理想条件下给定航速v与实际航速yv的传递函数降速模型

5 游艇驾驶模拟

5.1 游艇操控设备

此虚拟系统的游艇操控设备主要通过车钟、舵轮、侧推器等组成。

5.2 游艇驾驶虚拟仪表

本虚拟驾驶分系统基于真实物理模型建立虚拟操控设备应用Unity环境下的GUI系统进行设计。

主机仪表主要是对虚拟游艇主机的运行状态进行模拟,主要包括主机的水温、油压、转速、运行时间和报警五个方面进行模拟。

磁罗经主要应用于实时指示船体的方位,通过获取船体的方位传递给磁罗经显示给操作用户。获取船体角度并进行计算得出船体的方位变化在此同时将方位变化赋值给建立好的磁罗经物理模型。

舵角指示器用于在进行改变航向时,反馈舵叶的转动角度。由于将舵叶的实际角度与舵角指示的显示角度误差忽略不计,通过函数获取角度与设置角度值,具体C#语句为:float indicator.transform.rotate.z=rudder.transform.rotate.z。

5.3 游艇運动系统模拟

在虚拟系统中通过外部设备控制虚拟操控物理模型(外部设备主要是鼠标键盘和HTC VIVE虚拟设备),实现真实的驾驶流程与虚拟操纵过程模拟。通过以上外部设备的触发函数调用对应的响应型数学模型完成对游艇运动数学模型的模拟与表达。整个运动系统包含直航运动模拟、回转运动模拟、横摇垂荡运动模拟。

6 系统测试

系统硬件主要是台式计算机主机、鼠标键盘与高清显示器和HTC Vive进入驾驶模式,开启左右主机仪表、启动左右主机,进车操舵在无障碍区域直线航行,分别测试船体航速在3m/s、6m/s、12m/s时的横摇与垂荡。以下为直航时相对某时段特定帧率下3m/s时的横摇与垂荡实验仿真数据。

最大航速25节时,满舵35度右舷回转操纵时的回转轨迹仿真曲线。

定常回转直径:D=176m;相对回转直径:D/L=176/22=8m;战术直径:=180m ,战术直径与定常回转直径的比值为/D=1.02;正横距:=92m

7 总结

研究建立了虚拟环境下的游艇五自由度运动方程、游艇横摇与垂荡、游艇回转横倾与减速运动特征,针对操纵设备、虚拟仪表、运动模拟,建立了游艇虚拟操纵平台,并通过万维引擎与Unity实现整个驾驶模拟操纵系统的开发。

【参考文献】

【1】姜文刚,尚婕,邓志良,等.高速游艇驾驶仿真系统研究与设计[J].江苏科技大学学报,2005(6):12-15

【2】葛珅玮,王志东,凌宏杰,等.高速滑行艇三自由度运动预报与仿真[J]系统仿真学报,2013(6):1369-1375

【3】李笑晨.正横规则波中游艇操纵运动仿真[J].大连海事大学学报,2017(8):1-6

【4】黄裕兴.基于Unity3D引擎的Android手机益智类游戏开发[J].科教导刊一电子版(中旬),2014(1):138.

【5】范尚雍.船舶操纵性[M].北京:国防工业出版社,1988

【6】李积德.船舶耐波性[M].哈尔滨:哈尔滨船舶工程学院出版社,1992.

【7】王义,杨松林.滑行艇和翼滑艇在正横规则波中的线性横摇仿真研究[J]船海工程,2007,36( 2) : 13-16.

猜你喜欢

运动仿真游艇虚拟现实
风行游艇
REALITY BITES
买艘游艇怎么养
一种悬架运动仿真快速建模方法研究
软件仿真在理论力学教学中的应用?
虚拟现实技术向科幻小说借灵感
168ft大型游艇设计
浅谈虚拟现实