APP下载

基于GLScene的潜标姿态回放系统

2011-01-10杨书凯鲁成杰杨俊贤

海洋技术学报 2011年4期
关键词:潜标标的姿态

刘 慧,杨书凯,刘 敏,鲁成杰,杨俊贤

(山东省科学院海洋仪器仪表研究所,山东 青岛 266001)

基于GLScene的潜标姿态回放系统

刘 慧,杨书凯,刘 敏,鲁成杰,杨俊贤

(山东省科学院海洋仪器仪表研究所,山东 青岛 266001)

论述了三维可视化场景建立过程中如何应用GLScene实现上浮下潜浮标模型的建立、调入和姿态回放过程。建立了上浮下潜浮标的模型,显示了上浮下潜浮标的运动轨迹和在各阶段的运动姿态,最后给出了上浮下潜浮标运动过程中的场景效果图。

GLScene;潜标;姿态

上浮下潜浮标系统(以下简称潜标系统)是一种可以搭载多种传感器进行海洋剖面数据调查的重要技术装备。潜标装备有绞车和水下电机,平时工作在水下,利用自身动力按设定时间定时下潜和上浮,并在上浮或下潜过程中采集海洋剖面的数据,如图1所示。由于潜标系统一般不具备与用户实时通信功能,因此潜标回收后,对潜标记录姿态数据的回放非常重要,它是确认潜标是否正常工作和进行故障分析的重要依据[1]。利用潜标姿态变化曲线可以对潜标的工作过程进行分析研究,但由于潜标运动过程具有多个自由度[2],会同时进行横摇、纵摇、旋转和位置变化,所以单独使用曲线进行姿态分析还并不够直观。因此笔者提出了利用潜标姿态数据通过三维图形技术在三维空间重建潜标工作过程的方法,该方法对于分析潜标的工作过程,验证潜标系统的设计,研究潜标姿态变化规律与波浪、潮汐和海流的关系都有重要的意义。

图1 潜标系统结构示意图

当前三维图形技术已经非常成熟,并广泛应用在军事、航海、航天等领域。它以一种更为直观有效的方式极大地提高了效率并节省了资源,例如美国著名的毒刺导弹虚拟训练系统[3]。但是直接进行三维图形的编程非常复杂,技术人员通常通过3D图形编程接口进行编程。其中最为人熟知的3D图形编程接口是OpenGL和Direct3D。虽然通过OpenGL和Direct3D等3D图形编程接口编程已经减少了编程人员的大量工作量,但三维图形编程仍然十分复杂。GLScene是一套基于OpenGL图形编程接口的3D图形引擎,它对OpenGL的API进行了进一步的封装,提供了丰富的图形接口资源。GLScene图形引擎使得三维图形编程更加简单,也使编程人员可以将精力更专注于实际应用,而不是三维图形编程本身。文中使用Delphi和GLScene图形引擎完成潜标姿态回放系统的软件设计,不仅降低了三维图形编程的复杂度,也缩短了开发周期。

1 GLScene三维场景的建立

GLScene场景主要包括基本场景、摄像机、灯光系统、基本物体、材质贴图和场景观察器等要素。

首先需要建立基本场景,基本场景是所有其它物体的父容器,构建的所有可视物体或特效都将在场景中显示;然后需要建立潜标系统的三维模型,目前建立三维模型的专业软件有 AutoCAD、3DS Max、Creator等,GLScene 自带的场景编辑器也提供一些基本的几何形状用于创建较简单的模型[4],由于潜标的几何形状比较简单,实际应用中采用了GLScene场景编辑器创建潜标的三维模型,潜标的三维模型如图2所示。其次需要添加摄像机,摄像机是场景和用户之间的视觉接口,用户只有通过摄像机才能观察场景中的内容,摄像机的类型可设为默认的透视摄像机,其他的参数如景深、焦距、方向和场景缩放等属性也可根据要求设置。再次需要添加灯光并设置相应属性,灯光的设置很大程度上决定了场景效果,一个OpenGL场景中最多支持8盏灯光,过多的灯光将使渲染速度降低。最后需要设置场景观察器相关属性,它的主要属性是摄像机的选择。

图2 潜标的三维模型图

上述过程只是建立了GLScene的三维场景,实际程序还需要通过编程建立场景中三维潜标模型与姿态数据的关联。三维场景中主要通过以下6个属性控制潜标模型的6个自由 度 变 化 :Position.X,Position.Y,Position.Z,PitchAngle,TurnAngle,RollAngle,即潜标的位置和潜标的横摇、纵摇、旋转的角度。

2 潜标姿态回放系统

潜标姿态回放系统是国际合作项目“自升沉式上浮下潜浮标系统”中数据回放系统的一个子模块,主要负责完成对潜标运动姿态数据的回放和分析,为用户提供一个简洁友好的人机界面。

潜标姿态动态回放系统的主界面如图3所示。主要包括潜标姿态三维场景显示窗口1、深度显示标尺2、仪表盘窗口3、动态曲线显示窗口4、回放速率选择旋钮5和回放控制面板6。

图3 潜标姿态回放系统主界面

潜标姿态三维场景显示窗口可以根据回放的潜标姿态数据以三维图形方式同步显示潜标的姿态和深度变化。而且用户可以用鼠标拖动潜标模型旋转到任意角度,可以模拟用户在各个角度观察潜标姿态的变化,如图4所示。

仪表盘窗口动态显示潜标姿态的横摇倾角X和纵摇倾角Y和上浮下潜速度V。仪表盘可以以比较直观的方式显示潜标姿态倾角变化和速度变化的幅度,超过正常范围的倾角值和深度值在仪表盘上以红色表示,可以给用户以醒目的提示。

图4 在不同视角下潜标三维模型图

曲线显示窗口可以通过选择分别显示潜标姿态、深度、速度、加速度曲线。曲线相比仪表盘显示可以更直观地显示潜标姿态在一定时间段内的变化趋势,有仪表盘和直接数据显示无法取代的作用。潜标姿态和深度曲线可直接由三维电子罗盘和压力传感器的数据获得,速度和加速度曲线可以由深度数据间接获得。

由于主界面的显示区域有限,用户通过用鼠标双击曲线显示窗口还可以显示对应参数的频谱曲线,信号的频谱通过对信号进行快速傅立叶变换获得,如图5所示为X倾角变化曲线及对其傅立叶变换后的频谱曲线。信号的频谱可以帮助使用者观察信号中隐含的频率信息。从图5中曲线可获知X倾角信号角度变化在±3°范围内,存在周期分别为13 s和6 s的两个较大的频率分量。上述理论分析结果结合潜标三维图形的动态显示,可以使用户对潜标工作状态有更清楚直观的了解。

图5 姿态信号及其频谱曲线

表1 姿态数据文件记录

图6 潜标姿态回放系统程序流程图

回放控制窗口主要完成潜标姿态数据回放的控制功能,包括加载数据文件、回放、暂停和回放速率选择等功能,并且可以显示数据回放的进度和时刻。

潜标姿态动态回放系统的程序流程图如图6所示,潜标姿态回放系统的操作过程是首先加载回放的数据文件,数据文件中记录有潜标运行时每秒钟的姿态数据,主要包括横摇倾角X、纵摇倾角Y和深度D,文件采用二进制记录文件格式,具有操作方便,占用空间小等优点,文件记录如表1所示。然后点击控制面板上的回放按钮,系统就以设定速率(默认是实际采集速率)开始回放。首先系统读取回放当前时刻对应的潜标姿态数据和深度数据,然后把上述数据赋值给基本场景中的潜标模型,让潜标模型旋转相应的角度或移动相应比例的距离。下1 s来到时,程序移动文件指针去读取下一时刻的姿态数据,并判断是否已经到了文件尾,未到文件尾则继续播放。

由于以实际速度回放潜标1 d记录的姿态数据就需要1 d的时间,所以实际回放时也可以通过控制面板上的回放速率旋钮选择较快的回放速率。例如选择回放速率10,则回放1 d的姿态数据只需要大约2.5 h。用户也可以直接拖动控制面板上的回放进度条从某一时刻开始回放。系统在回放潜标姿态的同时在仪表盘窗口和曲线显示窗口同步显示对应的姿态数据,便于用户进行数据分析。

3 结束语

GLScene是一套基于OpenGL图形编程接口的高效3D图形引擎,它降低了三维图形程序开发的难度,缩短了潜标姿态动态回放程序的开发周期,也给用户分析潜标的工作状态提供了更直观、有效的工具。由于潜标拖缆的动力学计算比较复杂[2],目前在回放系统的三维场景中没有增加潜标拖缆的三维模型,在今后的应用中还可以继续完善。GLScene是一个功能非常强大的3D图形引擎,文中的应用只是GLScene功能的非常小的一部分,除此之外,GLScene还提供声音处理接口、操纵杆处理接口和GeForce显卡处理接口等许多功能接口,充分利用这些功能可以极大地提高工作效率。

[1]侯广利,张颖,等.一种潜标的水下姿态变化规律分析[J].海洋技术,2010,29(3):1-5.

[2]朱刚,杜月中.波浪作用下潜标拖缆动力学分析[J].海洋工程,2007,25(4):15-20.

[3]祝志兵,董奇帅,等.基于GLScene的空空导弹视景仿真技术研究[J].弹箭与制导学报,2008,28(5):74-82.

[4]李林珊,张春华.基于GLScene的仿真图像系统[J].兵工自动化,2007,26(3):28-41.

Attitude Replay System of Submersible Buoy Based on GLScene

LIU Hui,YANG Shu-kai,LIU Min,LU Cheng-jie,YANG Jun-xian
(Shandong Academy of Sciences Institute of Oceanographic Instrumentation,Qingdao Shandong 266001,China)

The construction and replay of a submarine buoy model using GLScene were discussed firstly.The motion model of submarine buoy was built and the tracks and attitudes in different status of the submarine buoy were displayed.Finally,the motion effects of submarine buoy were given.

GLScene;submersible buoy;attitude

TP391.41

B

1003-2029(2011)04-0029-03

2011-04-08

国际科技合作项目资助(2007DFR90130)

刘慧,女,助理研究员,研究方向为海洋仪器仪表研究。

猜你喜欢

潜标标的姿态
一种基于潜标基阵的信号接力定位方法*
攀爬的姿态
具有两个P’维非线性不可约特征标的非可解群
全新一代宋的新姿态
跑与走的姿态
红周刊绩优指数100只标的股一览
红周刊绩优指数100只标的股一览
红周刊绩优指数100只标的股一览
自升式连体潜标测量系统的设计与实施
潜标姿态变化对矢量水听器目标方位估计的影响