APP下载

船用柔性绳索收绞的过程仿真

2017-03-04梁民仓尹勇

船海工程 2017年1期
关键词:卷筒锚链缆绳

梁民仓,尹勇

船用柔性绳索收绞的过程仿真

梁民仓,尹勇

针对航海领域相关仿真系统中尚未涉及绞缆机收绞缆绳的模拟过程,以及柔性绳索收绞时的碰撞检测会产生不稳定现象的问题,采用改进的结构-弯曲弹簧模型模拟柔性绳索并进行三维可视化,提出一种改进的圆柱螺旋线算法。通过预先计算出绳索每一个质点在卷筒上的位置坐标,并在收绞时为即将绞上卷筒的绳索质点位置赋值,调整质点间的朝向和旋转角度以避免出现不正常扭曲现象。通过使用卷筒收绞缆绳和锚链的仿真实验对算法的可靠性和通用性进行了验证。

柔性绳索;结构-弯曲弹簧模型;三维可视化;圆柱螺旋线;卷绕

柔性绳索的模拟是虚拟现实研究领域的难点之一,其在虚拟吊装系统仿真、拖船拖带作业、船舶靠离泊、虚拟手术等工程领域应用十分广泛。船用缆绳、吊索以及锚链的模拟,本质上属于柔性绳索仿真[1]。随着计算机硬件设备性能的不断提升,虚拟现实场景的真实感、实时性等众多需求的不断提升,柔性绳索仿真要求也越来越高。

目前船用柔性绳索主要是拖船拖带、船舶靠离泊时使用的缆绳以及锚链。随着航海模拟器的出现,众多学者对船用缆绳的模拟进行了大量的研究,其中国内主要有:大连海事大学尹勇基于悬链线理论对船上绳索物进行了三维可视化并应用于V.Dragon系列航海模拟器中,该方法只适用于缆绳处于悬垂状态下的模拟;大连海事大学任鸿翔等人基于质点弹簧模型建立了船用缆绳的模型并进行仿真,其模型采用传统的质点-弹簧模型,可以模拟任意状态的绳索,但质点处的弯曲未进行限制,不受力时易出现不正常弯曲现象;国外航海模拟器生产厂商如英国Transas和挪威Kongsberg,其研制出的模拟器均包含了船用缆绳的模拟并具有较好的效果,但也仅有拖船与被拖船之间的连接效果。综合以上研究[2-6],船用缆绳的模拟均是针对船与船、船与岸之间的连接部分,并未涉及缆绳在绞缆机卷筒上卷绕的过程模拟。深海绞车自动排缆系统的研究并不适用于实际商船船用绞缆装置[7]。针对这一问题,本研究采用改进的结构-弯曲弹簧模型模拟柔性缆绳并进行三维可视化,提出了缆绳在滚筒上卷绕的算法,并运用该算法模拟使用卷筒收绞缆绳及锚链的过程,验证算法的可靠性及通用性。

1 柔性绳索的模拟及三维可视化

柔性物体建模主要采用质点-弹簧模型、有限元分析法两种,其中质点-弹簧模型易于理解,算法复杂度低,并且易于实现,因此众多国内外学者对其进行了深入研究[8-9]。质点-弹簧模型是将柔性绳索离散成一系列等质量的质点,质点之间通过无质量的弹簧进行连接(见图1),其中m表示等质量质点的质量。传统上,利用质点-弹簧模型模拟布料等柔性物体时,采用结构弹簧、弯曲弹簧,以及剪切弹簧3种弹簧连接构成网格状的质点平面[9],根据力学理论并选取合适的数值解算方法,可以较好地对柔性物体进行仿真。但柔性绳索模拟是将绳子质点和弹簧进行线性连接,中间连接的弹簧为结构弹簧,由于未能限制质点之间的弯曲度,因此造成模型很容易发散,效果失真。基于前人的研究成果,提出了结构-弯曲弹簧模型,即在结构弹簧的基础上,外加弯曲弹簧对质点之间的弯曲进行限制(如图1),并可通过调整弯曲弹簧的弹性系数和阻尼系数模拟不同硬度的绳索,并结合经典力学和胡克定律很好地模拟柔性绳索的物理特性。

1.1 受力分析

此处质点受力分为内力和外力,内力是质点之间的相互作用力,主要包括弹簧的弹性形变力和阻尼力[10];外力是外界对质点施加的扰动力,主要包括重力、摩擦阻力,以及外界施加的力等。质点的受力满足牛顿第二定律,即

(1)

式中:m为质点质量;X为所需要求解的质点位置;Fout(X,t)为质点所受外力;Fin(X,t)为质点所受内力。

本模型的质点受力计算需要分别计算结构弹簧和弯曲弹簧所产生的内力。理想的质点-弹簧模型,弹簧的形变是线性变化,与弹簧的弹性系数和形变量有关,满足胡克定律,即:

(2)

式中:Fs为弹簧拉(压)力;Ks为弹性系数;XAB为质点A、B的位置向量;L为弹簧的初始长度。

弹簧的阻尼力与相连质点的速度有关,是阻止弹簧发生过度变形、维护系统稳定的力,作用于质点A的阻尼力表示为

(3)

式中:FSD为弹簧的阻尼力;KSD为弹簧的阻尼系数;VA、VB为质点A、B的速度矢量。

质点的重力计算公式:G=mg

(4)

式中:g为重力加速度,取值为(0.0,-9.81,0.0)m/s2。

质点所受外界的摩擦阻力主要包括空气摩擦阻力,以及与其他物体表面接触产生的摩擦阻力,其中后者不是一直存在的,可视模拟的环境进行添加。质点所受空气阻力

Fa=0.5CρaSV2=KaV2

(5)

式中:C为空气流系数;ρa为空气密度;S为绳索在运动方向上的投影而积;V为质点瞬间速度;Ka为空气阻力系数。由于绳索的投影面积变化不大,此处可简化为后者,Ka可在模拟环境中自行设定。

1.2 数值解算

质点-弹簧模型中质点的运动状态方程在时间域上可表示为

(6)

运用数值积分求解二阶微分方程,常用的方法有显式Euler法、隐式Euler法、梯形法、四阶Runge-Kutta法以及Verlet法。无论何种方法,都会涉及到计算效率、精度,以及稳定性问题[10]。显式欧拉法计算效率高,但是精度较低,系统运行不稳定;隐式Euler法,以及四阶Runge-Kutta法计算精度高,但是计算量大,效率会受到影响,可能达不到实时性要求。综合计算精度和计算效率,本文采用改进的Euler法进行求解。

针对质点速度使用改进的Euler法求解方程为

K1=f(tn,Vn)

K2=f(tn+h,V0+hK1)

(7)

式中: f(tn,Vn)为关于速度和时间的导数;h为时间步长;tn、Vn为当前时刻状态变量;tn+1、Vn+1为要求取的下一时刻的状态值。

改进的欧拉算法对积分进行两次计算,计算量不大,但精度有了很大提高,满足仿真系统的需要。

1.3 三维可视化

柔性绳索是具有一定半径的三维物体,建立物理模型时将其简化成一个个由弹簧相连的质点,为了更真实地显示绳索的三维效果,采用多边形包围质点构成多面体的方法对绳索进行三维绘制[11],绘制模型如图2所示。

质点N1、N2、N3由正n多边形包围,在自身局部坐标系下,假定Y轴竖直向上,多边形各顶点的计算公式为

(8)

式中:i为质点的标识号;(XN,YN,ZN)为质点N的位置坐标;(Xi,Yi,Zi)为包围该质点的多边形第i个顶点位置坐标;n为多边形的边数;r为绳索的半径。

在自身局部坐标系中计算的多边形是水平的,为了使绳索在质点处弯曲更加平滑,需计算当前质点与前一个质点的方向向量,作为当前质点的朝向,计算出当前质点局部坐标系Y轴旋转至计算朝向的旋转向量,将多边形所有顶点按照此旋转向量进行旋转,得到最终包围该质点的多边形。确定所有顶点位置后,依次确定构成三角面的顶点顺序并添加纹理。

2 柔性绳索的卷绕算法

基于上述物理模型控制绳索的运动,为了使绳索效果更为真实,需要进行绳索与外界物体及自身的碰撞检测处理。当柔性绳索在卷筒上卷绕时,绳索与静止卷筒之间的碰撞不会产生较大影响,但柔性绳索自身的碰撞检测则会导致绳索节点之间不能像实际绞缆时那样紧密的排列,尤其当卷绕到达边界与卷筒壁产生挤压时,会因剧烈的抖动而产生不稳定现象。为了使绳索能够真实稳定地排列在绞缆筒上,就需要通过算法动态地给出质点位置,使其相对不受物理引擎的影响而跟随卷筒运动,缆绳放出时再解除此限制。

缆绳在卷筒上的分布符合圆柱螺旋线规律(见图3),基于螺旋线原理计算卷绕在卷筒上的绳索质点的位置公式为

(9)

式中:卷筒坐标轴与世界坐标系坐标轴轴向相同,此螺旋线的旋转轴为Z轴;(X0,Y0,Z0)为计算起始点;R为卷筒半径;r为绳索半径;θ为该点的旋转角度,rad;(X(θ),Y(θ),Z(θ))为绕卷筒旋转θ角度之后的质点位置。

按照上述公式控制缆绳的卷绕只能卷绕一层,而实际缆绳在卷筒上的卷绕可能是多层的,周而复始。为了使绳索可以多层卷绕,需要在上述公式的基础上进行改进,改进之后的质点位置计算公式为

(10)

式中:RC为当前质点位置相对卷筒转轴的半径;Z′为所计算的质点位置在Z轴方向上的偏移量。

计算过程中需自行控制变化的量为RC、Z′和θ,通过控制偏移量Z′将绳索限制在卷筒宽度W范围内;对于当前半径RC,每一层的半径值是固定的,但当绳索到达卷筒边界时,为了使绳索平滑过渡至下一层,设定旋转一周才使得计算半径变化为下一层的数值。

在Z轴方向上质点位置偏移量Z′的计算公式为

(11)

式中:D为绳索在卷筒上卷绕的方向,取值为-1表示向左,1表示向右。

当绳索到达卷筒边界时,在卷绕过渡圈内当前半径RC的计算公式为

(12)

按照上述改进后的算法进行编程实现,对卷筒的位置、半径、绳索半径以及其他参数进行初始化,计算出的位置点正视图和侧视图效果分别见图4。

由图4可见,该算法的计算结果符合圆柱螺旋线规律,并且在边界处可以平滑地过渡至下一层,所以利用本文的卷绕算法进行计算的结果作为绳索质点的位置,可以较真实地模拟柔性绳索在卷筒上卷绕的过程。

缆绳收放过程中卷筒是旋转的,已经在卷筒上的缆绳质点需要跟随卷筒一起旋转,使得其相对卷筒静止,所以需要先进行坐标转换,再跟随卷筒做旋转变换。以上述算法为例,滚筒坐标轴与世界坐标系的坐标轴轴向一致,则需要先进行平移变换,再绕Z轴进行旋转变换即可[12]。设平移变换矩阵为T1,旋转矩阵为SZ,绳索质点跟随滚筒旋转的合变换矩阵为T,则有

(13)

(14)

T=SZ·T1

(15)

3 仿真实现

基于本文的算法,在Unity3D引擎中对船上使用绞缆机收放缆绳的过程进行模拟,效果见图5。常见船用柔性绳索还包括锚链,锚链相对于一般概念上的柔性绳索质点之间的距离更大。为了验证本文算法的正确性和通用性,同时对使用卷筒收绞锚链的过程进行仿真,效果见图6。

模拟过程中可以发现,利用该算法计算出的位置点比较准确,但卷曲的过程中需要适时地为将要卷上卷筒的绳索质点指定位置,并调整质点与质点之间的朝向和旋转角,避免出现不正常扭曲现象,同时受到放出的缆绳或锚链拖拽力的影响,会产生抖动现象,但不会发散,随着收绞过程的进行将趋于稳定。

4 结论

提出改进的结构-弯曲弹簧模型,相比于传统的质点-弹簧模型,改进的模型可以很好地控制质点连接处的弯曲,并且弯曲弹簧的弹性系数越大,绳索的硬度越大;相比于有限元分析法,本文提出的模型有效地降低了模型复杂度。通过研究绳索在卷筒上卷绕的过程,提出了基于圆柱螺旋线原理的卷绕算法,通过该算法动态控制绳索质点的位置与朝向,可真实地模拟绳索在卷筒上的分布情况。最后,选用船用缆绳和锚链进行模拟,对比验证了本文算法的正确性和通用性。本文提出的绳索卷绕算法可应用于船舶缆绳、吊货索以及其他柔性绳索的收绞过程模拟,该过程不是简单的动画效果演示,而是具有力的反馈和碰撞交互的仿真,可以较为真实地再现绳索在卷筒上卷进、卷出的过程,满足相关船舶模拟系统真实感的要求。

研究中发现:在绳索卷上的过程中,由于质点的当前位置和预定位置的偏差以及剩余绳索的后拽力的影响,会产生抖动现象,随着剩余绳索的减少而趋于稳定。针对本文研究的绳索相关算法,尚需进一步优化模型的解算算法,提高求解的效率和准确性;对卷绕过程中质点位置改变进行平滑调整,并且针对运行过程中可能出现的发散现象设定适当的边界条件,保证系统运行的稳定性。本研究成果已成功应用于航海模拟器中缆绳的收绞以及蛟龙号收放操作仿真系统中。

[1] 谢海波,谭晓兰,甘亮.基于质量弹簧系统的实时绳索仿真方法[J].暨南大学学报(自然科学版),2013,34(5):479-482.

[2] 尹勇,李万超.仿真系统中绳索物的实时绘制[C].第五届中国计算机图形大会,西安,2004:241-243.

[3]RENHongxiang,WANGKelun.CABLESimulationinsceneoftughangdlingsimulator[C].InternationalConferenceonMechatronicScience,ElectricEngineeringandComputer(MEC),shenyang,China,2013:2472-2476.

[4] 刘鑫.航海模拟器视景中缆绳的绘制[D].大连:大连海事大学,2011.

[5] 吴长林.航海模拟器中缆绳作业的仿真研究[D].大连:大连海事大学,2012.

[6] 赵士涛.船舶系离泊操纵中缆绳作业过程的仿真[D].大连:大连海事大学,2013.

[7] 易武志.海洋绞车自动排缆系统建模与仿真研究[D].长沙:湖南科技大学,2015.

[8]WANGLQ,XUYG,HEN,etal.ModelingandsimulationofflexiblecablePendulumsystemexcitedbyliftedobjectmotion[J].JournalofShanghaijiaotonguniversity,2012,46(9):1416-1420.

[9]SREENIVASANS,GOELP,GHOSALA.Areal-timealgorithmforsimulationofflexibleobjectsandhyper-redundantmanipulators[J].Mechanismandmachinetheory,2009,45(3):454-466.

[10] 王崴,周诚,杨云,等.基于改进弹簧-质点模型的柔性绳索仿真[J].计算机辅助设计与图形学学报,2015,27(11):2230-2236.

[11]DUY,ZLATANOVAS.Anapproachfor3Dvisualizationofpipelines[C]. 1stInternationalWorkshopon3DGeoinformation,KualaLumpur,Malaysia,2006:507-517.

[12] 蔡士杰,宋继强,蔡敏.计算机图形学[M].3版.北京:电子工业出版社,2011.

(大连海事大学 航海动态仿真和控制实验室,辽宁 大连 116026)

Process Simulation of Winching the Marine Flexible Rope

LIANG Min-cang, YIN Yong

(Key Laboratory of Marine Simulation & Control, Dalian Maritime University, Dalian Liaoning 116026, China)

In view of the problems that the process simulation of the flexible rope winding on the roller is not yet involved in the marine related simulation system, and due to the collision detection of winching the flexible rope will produce instability phenomenon, the rope was simulated by the structure-bending spring model and the 3D visualization was performed. A kind of circular helix improved algorithm was put forward. By pre-calculating the position of rope particle in the roller, setting the position to the particles which will be twisted to the roller, and adjusting the particle orientation and rotation angle, the abnormal distortion phenomenon can be avoided. Through the simulation process using the drum to winding the cables and anchor chain, the proposed method is verified to be correct and universal.

flexible rope; structure-bending spring model; 3D visualization; circular helix; winding

10.3963/j.issn.1671-7953.2017.01.039

2016-06-13

863课题(2015AA016404),海洋公益性行业科研专项(201505017-4),中央高校基本科研业务费专项资金资助(3132016310)

梁民仓(1991—),男,硕士生研究方向:航海动态仿真、交通系统虚拟现实技术

U675.9

A

1671-7953(2017)01-0157-05

修回日期:2016-06-21

猜你喜欢

卷筒锚链缆绳
锚链和锚链轮刚柔耦合动力学建模及啮合过程力学分析
航空拖曳诱饵系统机动过程缆绳张力仿真
高模量合成纤维缆绳在海洋调查绞车上的应用
MEG4 规范对导缆孔的新要求及 相应的设计改进
船用锚链发展及标准化现状
海流作用下舰船锚链运动模型研究
船舶靠泊过程中系缆作业仿真
针对自卸汽车改装洒水车技术的研究
锚唇受力分析
定位锚机卷筒有限元分析应用与实践