船舶运动控制算法测试仿真系统的制作方法

文档序号:6458447阅读:210来源:国知局
专利名称:船舶运动控制算法测试仿真系统的制作方法
技术领域
本发明涉及一种高可信度的船舶运动控制算法测试仿真系统。
背景技术
由于船舶航行实船实验的费用很高,所以大多数船舶运动控制理论工作者只能进行仿真 研究。仿真工作者对控制算法的研究偏多,对被控对象的研究偏少,而被控对象逼真度不高 直接导致整个系统的仿真逼真度不高,这样就导致了算法测试仿真结论可信度不高,降低了 工程人员对控制理论工作者工作的认可程度,从而延缓了一些先进控制理论在实际工程中的 应用。控制系统仿真属于控制理论与仿真技术交叉的领域,但当前很少有控制理论工作者把 控制系统仿真当作一个系统仿真的问题来处理,而普通的仿真理论工作者又很难从事控制理 论相关的工作,这在一定程度上影响了先进仿真理论在控制系统仿真这一交叉领域中的应用, 也导致了控制系统仿真存在着"仿真可信度不高"的问题。

发明内容
本发明针对船舶运动控制仿真这一具体的问题,基于系统建模与仿真的校核、验证和验 收技术,研制一套高可信度的船舶运动控制算法测试仿真系统,加速先进控制理论在船舶运 动控制领域中的应用。
本发明一种高可信度的船舶运动控制算法测试仿真系统主要具有以下功能
(1) 船型的选择以及实船数据的输入。本仿真系统提供5446TEU大型集装箱船和3万吨油轮
两种船型,使用者还可根据需要自行输入不同船型及实船数据。
(2) 船舶运动数学模型的选择与参数计算。根据算法测试的不同目的和要求,使用者可以选
择不同类型的模型,本系统提供两种船舶运动模型响应模型和分离模型。使用者选择 完船型和数学模型种类后,本系统就可计算并显示出相应船模的所有参数值。
(3) 船舶模型的测试。本系统可进行船舶回转运动仿真、Z型实验仿真,与实船实验数据比较,
便可测试模型的有效性。
(4) 控制算法的加载与测试。本系统提供PID控制、自适应控制、模糊控制等常用控制模块;
使用者只需将自己设计的控制算法按规定的格式编译成动态连接库,就可加入到本平台 中。根据控制算法的不同,使用者可进行船舶航向和船舶航迹控制仿真测试;平台还提 供一个"事件编辑器",可方便用户进行更复杂的事件仿真测试。在测试过程中,用户 可以观察航向、舵角、船速等参数的动态数据和显示曲线,同时可观察船舶运动虚拟现 实仿真场景,据此可对控制算法进行测试、优化和改进。
(5)历史数据的保存。在测试过程中,可将船舶运动状态的重要动态数据保存下來,便于以 后的进一歩研究应用。
本发明的技术方案是船舶运动控制算法测试仿真系统,主要出船舶模型的设置与测试
模块l、控制算法的加载与测试模块2、船舶运动数学模型模块3、船舶航向与航迹曲线显示 界面4和船舶运动虚拟现实仿真场景5五部分组成。船舶模型的设置与测试模块1、控制算 法的加载与测试模块2分别与船舶运动数学模型模块3进行双向数据连接;船舶运动数学模 型模块3单向传输数据至船舶航向与航迹曲线显示界面4和船舶运动虚拟现实仿真场景5中; 同时船舶航向与航迹曲线显示界面4和船舶运动虚拟现实仿真场景5都可单向传输数据至船 舶模型的设置与测试模块1和控制算法的加载与测试模块2。所述的船舶模型的设置与测试 模块l、控制算法的加载与测试模块2、船舶运动数学模型模块3、和船舶航向与航迹曲线显 示界面4用¥0++开发,所述的船舶运动虚拟现实仿真场景5由VC"^和Vega混合编程实现。
本发明一种高可信度的船舶运动控制算法测试仿真系统的工作原理是 船舶模型的测试首先根据测试目的和要求不同由船舶模型的设置与测试模块1选择合 适的船型、计算出船舶参数并传输到船舶运动数学模型模块3中,接着船舶运动数学模型模 块3进行船舶回转实验仿真,同时仿真结果输出到船舶航向与航迹曲线显示界面4和船舶运 动虚拟现实仿真场景5中,将仿真实验结果与实船实验数据进行比较,当回转圈航迹误差小 于在一个船长时,则认为所建立的船舶运动数学模型是有效的,否则无效。
控制算法的测试当建立了有效的船舶运动数学模型后,就可进行控制算法的测试。首 先由控制算法的加载与测试模块2加载需要测试的控制算法,然后与船舶运动数学模型模块 3构成闭环控制系统,通过"事件编辑器"对船舶航行环境、船舶转向点等条件进行设置, 接着进行船舶运动控制仿真,同时将仿真结果输出到船舶航向与航迹曲线显示界面4和船舶 运动虚拟现实仿真场景5中,最后分析船舶航线、航迹和动态数据等仿真结果,并判断所加 载控制算法的控制特性。
本发明的优点和有益效果是与通常的算法测试仿真过程相比,本发明船舶运动控制
算法测试仿真系统增加了许多仿真的工作,其中多种模型的选择明确了仿真的目的,而合适
的模型能够更为有效地进行算法测试;对模型的完整性和精确性的要求能够明显地提高仿真 逼真度;"事件仿真算法测试"能够在连续的时间轴上进行算法测试,对于控制算法的鲁棒性、 自适应性都能进行更好的测试。
本系统中船舶模型的测试工作实际属于仿真工作,并不包含太多的控制理论知识,并且 具有一定的通用性,可以提前完成,即可提前构造一套有效的、高可信度的控制系统,然后 更换控制算法来测试控制效果就可以得到可信度较高的算法结论分析。因此,该仿真系统能
够减少船舶系统控制研究者大量的重复性工作,帮助科研工作者更快速有效的进行船舶运动 控制算法仿真测试,方便控制算法改进,得到可信度较高的仿真测试结论,从而实现减少海 上试验次数,降低试验成本,缩短开发周期,加速先进控制理论在实际工程中的应用。


下面结合附图对本发明做进一步详细地描述
图1是本发明一种高可信度的船舶运动控制算法测试仿真系统的组成结构框图。 图中1、船舶模型的设置与测试模块,2、控制算法的加载与测试模块,3、船舶运动
数学模型模块,4、船舶航向与航迹曲线單示界面,5、船舶运动虚拟现实仿真场景。
具体实施例方式
如图1所示,本发明的一种高可信度的船舶运动控制算法测试仿真系统,主要由船舶模
型的设置与测试模块l、控制算法的加载与测试模块2、船舶运动数学模型模块3、船舶航向 与航迹曲线显示界面4和船舶运动虚拟现实仿真场景5五部分组成。船舶模型的设置与测试 模块1、控制算法的加载与测试模块2分别与船舶运动数学模型模块3进行双向数据连接; 船舶运动数学模型模块3单向传输数据至船舶航向与航迹曲线显示界面4和船舶运动虚拟现 实仿真场景5中;同时船舶航向与航迹曲线显示界面4和船舶运动虚拟现实仿真场景5都可 单向传输数据至船舶模型的设置与测试模块1和控制算法的加载与测试模块2。
船舶运动数学模型模块3设计实现了响应型模型,三自由度MMG模型和四自由度的平 野模型。
船舶航向与航迹曲线显示界面4可以显示航向、航迹、命令舵角、实际舵角、主机转速、 航速、,以及等参数的实时数据和曲线。 一、船舶模型的设置与测试模块1的设计与实现
1. 模型的选择
本仿真系统将模型分为响应型模型和分离模型两种,由于Nomoto模型过于简化,在最 近几年己经很少使用,所以此处的响应型模型特指Norrbin模型;分离模型在仿真的使用中, 可以分为三自由度MMG模型和四自由度的平野模型。
2. 模型重要参数的输入
仿真系统通过"打开"和"保存"按钮实现数据的存取;模型的重要参数包括船舶自身 参数以及海洋参数;在此处的参数通过单击"参数确认正确"按钮就可以导入仿真系统中。 本系统中带有5446TEU系列集装箱的COSCO Shanghai号的和3万吨油轮的重要数据可供用 户使用。
3. 模型验证由于模型的不同,所以验证时分为Norrbin模型、三自由度MMG模型与四自由度平野模 型三种情况进行。但是,由于Norrbin响应型模型本身是一个定常模型,而回转实验中,主 机通常都是定油门运行,整个回转运行中航速都会有较大变化,已经超出模型摄动的范围, 所以基于Norrbin模型进行的回转实验分为两种, 一种是定参数Norrbin模型回转, 一种是 变参数NorrbJn模型回转,在变参数Norrbin模型中,通过时间分段改变Norrbin模型的参 数来近似船舶回转中的降速。
(1) 定参数Norrbin模型回转实验
由于Norrbin模型本身是一个匀速的定参数模型,所以采用Norrbin模型进行回转实验 本身就是有一定困难的,但为了比较这几种模型,本系统可进行定参数Norrbin模型的仿真 回转实验。
(2) 变参数Norrbin模型回转实验
为了表现出船舶回转过程中降速的过程,本系统可采用分段变参数的办法,即根据船舶 数据以及实船实验数据,计算出不同航速下的模型参数,然后在回转实验中,分段采用不同 的参数。
(3) 三自由度MMG模型和四自由度的平野模型回转实验
山于三0由度MMG模型和四自由度平野模型都是时变模型,所以在给出回转实验图时给出 仿真回转实验中的数据曲线图。在基于三自由度MMG模型的回转实验中的数据曲线图中给 出航向、航速、主机转速的曲线图,基于三自由度MMG模型的回转实验中的数据曲线图中 再加上横摇角的曲线图。
二、控制算法的加载与测试模块2的设计与实现
如何方便用户快速加载新的算法,是本发明仿真系统的一个重要内容。如果系统的控制 算法仍然需要用户自己通过加代码的方式把算法写入程序中,这显然是无法令人满意的,本 系统采用通过动态链接库(DLL)的方式来加载算法。
动态链接库的名称可以根据编写算法的内容任取,但动态链接库中必须包含一个名为 ShipState的结构体,同时在命名为Controller ()的函数中编写控制算法。算法通过定义 形如ShipState *m—PShiPState格式的指针m—PShiPState,来与輕序交换数据,算法需要的 实际航向或航迹,设定航向或航迹的数据通过指针m—PShipState都可得到,算法需要存储的 中间变量放在ComputeStatePara数组中,最后计算出的控制量保存在变量RudderD中。
struct ShipState
{ double nowCourseDirect:〃当前航向 doub〗e SetCourseDirect:〃设定航向
double CourseError;〃当前航向偏差5
doub〗e LastCourseError; 〃上一时刻航向偏差s
double CourseErrorChange;〃航向偏差变化率(微分)
double CourseErrorChangeSum; 〃航向偏差变化率积分
double RudderD;〃舵角
double MovingU;〃纵向速度
double ErrorX;〃位置x的偏差
double ErrorY:〃位置y的偏差
double Errorlocation; 〃当前位置的偏差
double LastErrorLocation; 〃上一时刻位置的偏差
double LocationErrorChange;〃位置偏差变化率(微分);
double LocationErrorChangeSum;/位置偏差变化率积分
double h:〃仿真歩长
double ComputeStatePara[100]: 〃中间变量 double t:〃仿真时间
void Controller(ShipState *m—PShipSt£ite) { 〃用户控制算法程序
在控制算法测试方面,本发明提出状态仿真算法测试与事件仿真算法测试两种方法,定 义如下
状态仿真算法测试是建立仿真系统之后,在一定的设定条件下,研究控制算法在某单 一-信号,通常为阶跃信号下的控制效果的测试方法。
事件仿真算法测试是建立仿真系统之后,在一定的设定条件下,在时间轴上,研究被 控对象在进行一系列活动的过程中,控制算法在多种信号下的控制效果的测试方法。
针对事件仿真算法测试本系统设计了一个事件编辑器。如果主要研究船舶航向控制、航 迹控制,那么影响船舶运动控制的船舶的主要活动就是主机操纵,而外界主要影响就是风、 浪、流扰动变化,所设计的"事件编辑器"是一个方便用户,只要调整几个参数就可以仿真 实船一系列活动的对话框。通过"事件编辑器"的方式,用户可以快速地实现"事件仿真算 法测试",在整个事件中,主机转速以及风、浪、流外界干扰都可以多次变化。虽然输入内容 增多,仍这样仿真的效果更接近于实际情况,有更高的可信度。
三、船舶运动虚拟现实仿真场景5的设计与实现该模块由¥。++和¥绍&混合编程实现。 Vega是美国Multigen-Paradigm公司用于虚拟现实、实时实景仿真、声音仿真以及其他可 视化领域的世界领先级应用软件工具。它支持快速复杂的视觉仿真程序,能为用户提供一种 复杂仿真事件的便捷手段,它将易用的工具和高级仿真功能巧妙地结合起来,使用户以简单 的操作迅速地创建、编辑和运行复杂的仿真应用程序。由于Vega大幅度地减少了源代码的编 程,使软件的维护和实时性能的进一歩优化变得更加容易,从而大大提高了工作效率。
Vega提供了很多功能模块,各模块带有方便的接口。其中Vega海洋仿真模块为实现逼 真的海洋仿真提供了完善的动态和静态海洋模型、区域矢量以及各种各样的海洋特殊效果等, 使用海洋仿真模块用户可以快捷地开发出极具创造性的海洋仿真应用,所有的海洋效果都可 以通过扩展的图形界面方便地进行设置,或者实时地通过该模块的应用程序编程接口加以控 制。
本系统基于VC"K+的SDI框架,利用Vega开发船舶运动虚拟场景。 程序主框架为
main( int argc, char*argv[])
vglnitSysO; /*初始化Vega系统*/
vglnitMarineO; /*初始化海洋模块*/
vglnitFxO; /*调用特效模块*/
vgDefineSys(argv[ 1 ]); /*定义系统:读取ADF文件V vgConfigSysO; /*系统配置*/
while ( 1) /*主循环*/
{vgSyncFrameO; /*帧同歩*/
vgFrameO; /*当前帧下进行所有内部处理工作*/
/*应用程序具体实现代码*/
所设计与实现的船舶运动虚拟现实仿真场景具有以下功能海洋颜色可调,海浪等级可 调,船舶尾迹,天空可变,光线可调,多视角观察船舶运动姿态,船舶四自由度运动,以及 舵和减摇鳍的实时运动。
权利要求
1.船舶运动控制算法测试仿真系统,其特征在于,主要由船舶模型的设置与测试模块(1)、控制算法的加载与测试模块(2)、船舶运动数学模型模块(3)、船舶航向与航迹曲线显示界面(4)和船舶运动虚拟现实仿真场景(5)组成,船舶模型的设置与测试模块(1)、控制算法的加载与测试模块(2)分别与船舶运动数学模型模块(3)进行双向数据连接;船舶运动数学模型模块(3)单向传输数据至船舶航向与航迹曲线显示界面(4)和船舶运动虚拟现实仿真场景(5)中;同时船舶航向与航迹曲线显示界面(4)和船舶运动虚拟现实仿真场景(5)都可单向传输数据至船舶模型的设置与测试模块(1)和控制算法的加载与测试模块(2)。
2、根据权利要求1所述的的船舶运动控制算法测试仿真系统,其特征在于,所述的船舶 模型的设置与测试模块(1)、控制算法的加载与测试模块(2)、船舶运动数学模型模块(3)、 和船舶航向与航迹曲线显示界面(4)用¥0++丌发,所述的船舶运动虚拟现实仿真场景(5) 由VOH"和Vega混合编程实现。
全文摘要
本发明涉及船舶运动控制算法测试仿真系统,由船舶模型的设置与测试模块、控制算法的加载与测试模块、船舶运动数学模型模块、船舶航向与航迹曲线显示界面和船舶运动虚拟现实仿真场景五个部分组成。船舶模型的设置与测试模块、控制算法的加载与测试模块分别与船舶运动数学模型模块进行双向数据连接;船舶运动数学模型模块单向传输数据至船舶航向与航迹曲线显示界面和船舶运动虚拟现实仿真场景中;同时船舶航向与航迹曲线显示界面和船舶运动虚拟现实仿真场景都可单向传输数据至船舶模型的设置与测试模块和控制算法的加载与测试模块。该仿真系统方便控制算法改进,减少海上试验次数,降低试验成本,缩短开发周期,加速先进控制理论在实际工程中的应用。
文档编号G06F17/50GK101373491SQ20081001185
公开日2009年2月25日 申请日期2008年6月13日 优先权日2008年6月13日
发明者光 叶, 沈智鹏, 晨 郭 申请人:大连海事大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1