内河船舶操纵模拟器中缆绳的模拟
2015-04-23周立松
周立松
摘 要:分析了靠离泊过程中缆绳的受力情况,考虑了缆绳的系缆张力、重力、空气阻力和摩擦力等的影响,利用弹簧-质点模型对缆绳进行建模和绘制。通过改变质点的数量模拟缆绳的绞缆和出缆过程。针对缆绳和码头岸壁间的碰撞检测,采用“降维”的方法通过判断二维平面内线段间是否存在交点来实现。所做工作已应用到内河船舶操纵模拟器中,满足模拟器对缆绳的显示要求。
关键词:内河船舶操纵模拟器 缆绳 模拟 弹簧-质点模型 碰撞检测
用内河船舶操纵模拟器代替实船进行船员培训和考试目前已成为一种趋势,而现有的内河船舶操纵模拟器并没有实现缆绳的模拟。而船船靠离码头时,绞缆和出缆过程是操纵者关注的焦点之一,很有必要对此进行深入研究。
缆绳的模拟涉及的问题
建模与绘制方法。缆绳是典型的柔性物体,而柔性物体的建模与绘制一直是计算机图形学领域的难题。
受力情况。缆绳的受力分析是缆绳模拟的前提,缆绳受系缆张力、重力、空气阻力、摩擦力等多种力的作用,其受力情况较为复杂。
碰撞检测。缆绳运动时可能会与周围的物体(码头岸壁、他船等)发生碰撞,需要进行碰撞检测。
围绕上述三个问题,本文开展了相关的研究,实现了缆绳的逼真模拟,并应用到内河船舶操纵模拟器的视景中。
建模与绘制方法
缆绳是一种典型的柔性物体,对于该类物体的模拟一些学者已经进行了研究,并提出了几种有效的方法,如弹簧-质点模型、悬链线、粒子系统、基于物理的建模绘制等。通过对比,考虑到弹簧-质点模型计算效率高、构建方便等特点,本文采用弹簧-质点模型对缆绳进行建模与绘制。
如图1所示,依据弹簧-质点模型,可将缆绳视为由n个理想质点A0,A1,A2...An-1构成,相邻两个质点之间用弹簧连接。在初始状态下,弹簧和质点彼此受力平衡,保持静止。一旦对任何一个质点施加干扰,受力平衡的状态就被打破,在外力的作用下,受力质点发生位移,相连的弹簧随之受力,并将受力向相邻的质点传递。
受力分析
在实际操纵过程中,缆绳主要受系缆张力、重力、空气阻力和摩擦力等的共同作用。模拟缆绳时,应充分考虑各种外力对缆绳的影响。采用弹簧-质点模型模拟缆绳时,对于任意一个质点Ai,其受力情况如图2所示:
图中Fl、Fr分别为来自Ai左、右两侧弹簧的张力;Fg、Fa、Ff为质点Ai所受的重力、空气阻力和摩擦力。
质点Ai所受外力可用以下公式计算:
设模拟缆绳的弹簧-质点模型A0,A1,A2...An-1中,A0系于船舶导缆孔位置,则A0的左侧弹簧的张力应为系缆张力。系缆张力的获得相对比较复杂,它要通过船舶运动数学模型的计算来得到。
缆绳的模拟
通过对弹簧-质点模型的受力分析,可计算出各质点的实时位置,将各质点依次相连便可以模拟出完整的缆绳。为了体现缆绳的粗度,本文对每个相邻质点间的缆绳段用正六棱柱进行绘制,并进行相应的纹理映射。
在绞缆、出缆时,缆绳的长度变化很大,可能在几米到几百米范围内。单单通过弹簧-质点模型中弹性系数等参数的改变很难模拟缆绳长度的大范围变化。为了实现这一效果,可改变弹簧-质点模型中的质点数量。
碰撞检测
在绞缆、出缆操纵时,缆绳可能会与周围的物体特别是岸壁等发生碰撞,如果不进行碰撞检测,缆绳可能会进入岸壁内部(如图5所示),影响模拟的真实感。
对于碰撞检测已有不少较为成熟的算法,如包围盒、空间剖分法、层次包围体树法等。这些碰撞检测算法各有各的特点和适用范围,算法的效率很大程度上取决于物体的表示方法和场景的复杂程度。缆绳与岸壁之间的碰撞检测属于三维碰撞检测,利用传统的包围盒、空间剖分等方法,或者计算精度难以保证,或者计算量较大,为此本文针对缆绳和岸壁的特点,设计了一种快速、准确的碰撞检测方法。
分析缆绳的运动可知,缆绳仅在船舶或岸壁周围有限空间内运动,一般运动速度较慢,与缆绳发生碰撞的码头岸壁,其高度通常是固定值。鉴于以上原因,我们采用“降维”的方法,先不考虑缆绳和岸壁的高度信息,将缆绳和岸壁投影到水平面,在水平面内判断两者是否相交。
由于模拟缆绳的质点数量较多,质点间的间距较小,该方法可以保证碰撞检测的精度;同时该方法的主要工作量是判断二维平面内线段间是否存在交点,所以效率较高。利用该方法,我们实现了缆绳与岸壁之间的实时碰撞检测。与图5对应,图7为对缆绳与岸壁进行碰撞检测后的效果。
模拟效果
图8为模拟缆绳的整个流程图,我们利用OSG场景管理软件实现了上述算法,并将模拟的缆绳加入到内河船舶操纵模拟器的视景中,如图9。
结语
实践证明,本文提出的方法综合考虑了缆绳所受到的各种外力对缆绳的影响,可逼真地绘制缆绳,并可模拟缆绳由弯曲到拉直的运动过程,同时,实现了缆绳与岸壁间的碰撞检测,满足了船舶操纵模拟器对缆绳的显示要求。
缆绳是船舶操纵模拟器用户关注的焦点之一,今后还需要继续深入研究,如:考虑风对缆绳影响;考虑缆绳没入海水后,其受力和运动的变化;考虑码头地面对缆绳的作用等。
参考文献:
[1]陆熊,宋爱国.力/触觉再现中柔性物体可视化物理形变模型研究进展[J].计算机辅助设计与图形学学报,2008, 20(11):1389-1394.
[2]吕梦雅,李发明,唐勇,等.基于弹簧质点模型的快速逼真的布料模拟仿真[J]. 系统仿真学报,2009,21(16): 5236-5239.
[3]刘凌霞,宋强.基于简化的质点-弹簧模型织物变形仿真研究[J].计算机仿真,2011,28(5):406-409.
[4]石爱国,侯建军,万林,等.拖轮协助大型舰船靠泊操纵建模及仿真[J].系统仿真学报,2006, 18(S2): 104-107.
[5]杨盐生.船舶靠离泊操纵数学模型的研究[J].大连海事大学学报,1996,22(4):11-15.
[6]Delmer T N, Stephen T C, Tremills J A. Numerical simulation of cable-towed acoustic arrays[J]. Ocean Engineering, 1988, 15(5): 511-548.
[7]康勇,熊岳山,费先宏等.基于空间分解和包围盒层次的混合碰撞检测算法[J]. 计算机仿真, 2010,27(6): 191-193.
[8]唐敏,林江,童若锋.图形硬件加速的柔性物体连续碰撞检测[J].计算机学报,2010,33(10):2022-2029.
(作者单位:广西交通运输学校)endprint