2. 中国海事服务中心, 北京 100029
2. China Maritime Service Center, Beijing 100029, China
船舶导航雷达是船舶系统的主要导航设备之一,在船舶航行中,主要用来进行定位、导航和避碰。由于船舶导航雷达能准确测定目标的方位和距离,直观地显示船舶周围的目标回波,并具有探测距离较远、受天气昼夜等自然因素影响较小可全天候使用的优点,所以成为船舶航行特别是夜雾中航行必不可少的导航设备[1]。由于雷达在船舶航行特别是避碰中的地位不可替代,因此,对海员的雷达培训也就显得尤为重要。现行雷达培训方式主要有雷达真机和雷达模拟器 2 种。真机价格昂贵、设备磨损不可避免,而模拟器灵活多变、可重复利用、经济,因此雷达模拟器被广泛使用。
近年来综合船桥思想被广泛提及[2],为实现这一目标,雷达被赋予许多新的功能。IMO(International Maritime Organization,国际海事组织)也针对雷达提出了一些新的性能标准和强制性要求[3],为此,多功能船用雷达应运而生。它已不再是传统意义上的雷达,而是一个多功能工作站。尽管雷达真机发展迅速[4],但雷达模拟器的发展却相对滞后。现有雷达模拟器虽能满足一般系统研发、维护、操作培训等需要,但操作界面老旧、功能单一[5]。落后的模拟器与先进的真机形成鲜明对比。
通过调研,本文选取目前较为先进的 JRC-JMA-9100 系列雷达为仿真对象,采用 WPF(Windows Presentation Foundation)开发框架及 C# 语言[6],模拟该雷达界面和相关功能,并对该雷达真机部分新型实用功能进行仿真。
1 雷达模拟器组成和功能设计要求 1.1 模拟器系统组成如图 1 所示,雷达模拟器是由教练员站和多个本船构成的仿真系统,系统中各单元通过网络连接。每个本船主要由 PC 机和车舵操纵台组成。教练员在教练员站上设置练习,练习初始信息包括航行环境,本船信息、目标船信息等,设置好的练习将发送给本船。本船收到练习后,启动相应界面,受训人员在本船上利用 PC 机、车舵操纵台对船舶进行相应操作,本船通过船舶运动模型解算出本船航向、航速、位置、转速、实际舵角等信息,并显示在雷达、海图等 PC 机上,直至练习结束。
本文致力于设计实现新型雷达模拟器,要求新型雷达模拟器在满足一般性能标准的基础上,力求技术先进、功能完备。其功能设计要求主要包括以下 2 个方面:
1) 一般功能:参照 IMO 雷达性能规范进行开发,使其能满足 IMO 关于雷达模拟器的一般性能标准,可用于科研、教学培训等[7]。
2) 新增功能:新型雷达模拟器要有全新界面交互系统,要求界面美观、布局合理、操作简单方便。同时实现对新一代雷达新增功能的模拟,使其多功能化。
2 关键模块本文选取的 JRC-JMA-9100 系列雷达,功能繁多,仿真工作复杂。为简化工作,本文采取模块化思想,对雷达功能聚类分析,分模块模拟。
2.1 岸线回波和杂波图像生成模块岸线回波的生成是雷达仿真的核心技术,回波图像的质量将直接影响模拟器的效果。为了达到更好更合理的效果,本文提出一种生成岸线回波的新方法,该方法可有效解决使用墨卡托投影坐标生成岸线回波图像的变形问题[8]。
首先将雷达视频显示区与操作区分层显示,操作区在上,视频区在下。对操作区进行圆域裁剪,裁剪大小、形状与雷达 PPI(Plan Position Indicator,平面位置指示器)一致,这样既可透过操作区对视频区进行操作,也实现了对雷达回波图像的圆域裁剪的效果。然后从电子海图中提取岸线数据,利用 Vincenty 公式[9]将岸线经纬度坐标转换为以雷达位置为中心原点的平面坐标形式。由于电子海图岸线数据较多,直接使用会造成回波绘制效率下降,本文利用包围盒和无参数自适应 RDP(Ramer-Douglas-Peucker)改进算法[10]对岸线数据进行简化处理。最后利用扫描线求交算法绘制岸线回波图像[11]。
雷达杂波主要包括机器内部噪声、海杂波、雨雪杂波、同频干扰等。本文依据各杂波特性分别采用瑞利分布、韦伯分布、均匀分布等模型来建立杂波模型[12]。跟据杂波分布范围和强度确定杂波模型参数,产生杂波粒子。杂波通过位图呈现,一个杂波粒子对应位图上一个像素点,通过绘制位图生成杂波。一般来讲,杂波体积较小,数量较多形状复杂,使用扫描线求交很难实现杂波的圆周扫描。为此,本文通过对位图进行圆周裁剪来实现。
2.2 偏心显示、量程和显示模式切换模块偏心显示、量程和显示模式切换是雷达必不可少的功能,在航行中被频繁使用。关于偏心显示、量程和显示模式切换一般做法是使用坐标系变换[13],但该方法计算复杂,严重影响回波绘制效率。针对这一问题,本文对原方法进行了改进,通过对雷达视频区域的平移、旋转、缩放来实现雷达的偏心显示、量程及显示模式切换。该方法避免了大量坐标系变换,提高了回波绘制效率,同时也便于理解和实现。对于偏心显示,可认为是回波图像的整体平移;对于量程切换,是对回波图像的放大缩小;对于显示模式的切换,是对回波图像的旋转与平移。好比透过一扇窗看一幅画,可以通过移动画看到画被遮挡的一部分,可以把画缩放以决定是否看画的全部还是局部,可以通过旋转画实现换角度看画,也可以选择移动自身而画不动的方式来看画。
偏心显示时,刻度线的位置会随之改变,关于刻度线位置的计算,本文采用极坐标的形式计算。如图 2 所示,设O 为 PPI 圆心,r 为其半径;O' 为偏心显示时的扫描中心,坐标为(x1,y1);圆O' 是以点O' 为圆心,PPI 的外切大圆;D 为θ 刻度线与 PPI 圆的交点,D' 为θ 刻度线的尾点;A 为刻度线DD' 的延长线与圆O' 的交点。A 的坐标(x2,y2)很容易求出,下面给出D(x,y)与D'(x’,y')的坐标值计算方法。
O'A 的参数方程为:
$ x = \left( {{x_2}-{x_1}} \right)t + {x_1}\text{,} $ | (1) |
$ y = \left( {{y_2}-{y_1}} \right)t + {y_1}\text{,} $ | (2) |
圆O 的参数方程为:
$ {x^2} + {y^2} = {r^2}\text{,} $ | (3) |
D 位于圆O 上,其坐标满足圆O 的方程,则有
$ {\left[ {\left( {{x_2}-{x_1}} \right)t + {x_1}} \right]^2} + {\left[ {\left( {{y_2}-{y_1}} \right)t + {y_1}} \right]^2} = {r^2}\text{,} $ | (4) |
即
$ \begin{array}{l} {r^2}{\rm{ = }}{t^2}\left[ {{{\left( {{x_2}-{x_1}} \right)}^2} + {{\left( {{y_2}-{y_1}} \right)}^2}} \right] + \\ \;\;\;\;\;\;\left[ {2{x_1}\left( {{x_2}-{x_1}} \right) + 2{y_1}\left( {{y_2}-{y_1}} \right)} \right]t + \left( {{x_1} + {y_1}} \right)\text{。} \end{array} $ | (5) |
求解一元二次方程,求出t,取满足 0 ≤t ≤ 1 的t 值代入O'A 的参数方程,即可求出D 点坐标(x,y)。根据θ 的度数设置刻度线长度r0,则O'D' =O'D +r0,求出D' 的坐标(x',y'):
$ x{\rm{'}} = O{\rm{'}}D{\rm{'}}\sin \theta + {x_1}\text{,} $ | (6) |
$ y' =-O'D'\cos \theta + {y_1}\text{。} $ | (7) |
利用D 和D' 点绘制刻度线。
2.3 雷达刻度信息系统模块雷达刻度信息系统主要包括 FRM(Fixed Range Marker,固定距标圈),VRM(Variable Range Marker,活动距标圈),EBL(Electronic Bearing Line,电子方位线),PI(PI Parallel Index Line,平行指示线)的显示与使用。本文将刻度信息与雷达回波分层处理,通过图像生成的方式显示,这样既方便处理,又使图像连续光滑。通过控制图像的显示与隐藏来实现刻度信息的显示与关闭。需要注意的问题是:
1) 根据 IMO 对船用雷达标准的要求,雷达不同量程对应的 FRM 个数有所不同,当量程变换时每个 FRM 距离也会相应变化。本文依据量程确定 FRM 的个数,确定各距标圈显示圆的半径,进而绘制各固定距标圈。
2) VRM、EBL 和 PI 的生成与 FRM 的类似,但与之不同的是:VRM 可以通过光标控制其半径和中心位置,EBL 可以通过光标控制其端点位置以及方位,PI 可以通过光标实现其旋转和移动。本文通过图像坐标平移实现 VRM,EBL 和 PI 的移动,通过图像坐标旋转实现 EBL 和 PI 的转动,通过图像坐标缩放来实现 VRM 半径的改变。
图 3 为雷达刻度信息系统设计图。
雷达 TT(Target Tracking,目标跟踪)与 AIS(Automatic Identification System,自动识别系统)目标报告是雷达不可或缺的重要功能,在船舶避碰中发挥着重要作用。由于该功能的强制性和重要性,对该功能的仿真显得尤为重要。仿真工作主要包括 TT 与 AIS 目标图标标识的模拟、目标信息的显示、目标捕获功能的模拟、AIS 与 TT 目标的关联、矢量(相对矢量,真矢量)的模拟、过去位置、尾迹、会遇局面与碰撞危险判断及试操船的模拟。其中目标捕获又分为人工捕获和自动捕获,人工捕获通过操作光标来实现,自动捕获通过设定捕获区域来实现。图 4 为雷达目标跟踪与 AIS 目标报告功能设计效果图。由于本模块功能繁杂,所涉及算法较多,本文只对本模块中使用较多的目标船 CPA(Closest Point of Approach,最短会遇距离)和 TCPA(Time to Closest Point of Approach,最短会遇时间)[14]的计算进行介绍。
目标船CPA/TCPA 的计算如图 5 所示,其中O(XO,YO)为本船位置;T(XT,YT)为目标船位置;VO 为本船运动速度矢量;VT 为目标船真运动矢量;θO 为本船航向;θT 为目标船真航向;RT 为目标船与本船距离;θA 为本船相对目标船的方位;VR 为目标船相对运动速度矢量;θR 为相对运动速度矢量幅角。由矢量三角形可知VR =VT-VO,求出相对运动矢量的模 |VR|。设正北单位向量NO 为(0,1),则相对运动速度矢量的幅角θR 为矢量NO 与VR 之间夹角。
$ {R_T} = OT = \sqrt {{{\left( {{X_O}-{X_T}} \right)}^2} + {{\left( {{Y_O}-{Y_T}} \right)}^2}} \text{;} $ | (8) |
本船在目标船方位为:
$ {\theta _A} = {\tan ^{-1}}\left( {\left( {{Y_T}-{Y_O}} \right)/\left( {{X_T}-{X_O}} \right)} \right) + \pi \text{,} $ | (9) |
在求得RT,θR,θA,VR 的基础上求得目标船的CPA 与TCPA,即
$ {CPA} = \left| {{R_T}\sin \left( {{\theta _R}-{\theta _A}} \right)} \right|\text{,} $ | (10) |
$ {TCPA} = \left| {{R_T}\cos \left( {{\theta _R}-{\theta _A}} \right)} \right|/\left| {{V_R}} \right|\text{。} $ | (11) |
控制面板是雷达操作系统重要组成部分,驾驶人员可以通过操作控制面板来控制和使用雷达。控制面板为雷达主要控制功能单元,便于随时操作,因此被驾驶员广泛使用。现有雷达模拟器多是对雷达显示器的仿真,忽略了对控制面板的模拟。为弥补这一缺陷,本文实现了此功能。控制面板里较多按钮和旋钮,其关键技术是旋钮的实现。以往旋钮的实现是通过对位图的切换处理[15],但这种方式不仅需要较多位图,而且画面不连续,旋转效果较差。本文使用一种新方法来模拟旋钮(见图 6 )。
1) 定义 Point(点)变量 Po,Pt,Pc 以及旋钮初始旋转角度 α0;
2) 当鼠标进入旋钮并开始拖动时获取鼠标在旋钮上初始坐标 Po;
3) 在鼠标拖动后获取鼠标在旋钮上的坐标 Pt。分别求取 Po,Pt 与旋钮中心 Pc 的向量$\overrightarrow{{{P}_{o}}{{P}_{c}}}$和$\overrightarrow{{{P}_{t}}{{P}_{c}}}$,并求出两向量的夹角:
$ \Delta {\rm{\alpha }} = {\cos ^{-1}}\left( {\overrightarrow {{P_o}{P_c}} \cdot \overrightarrow {{P_t}{P_c}} /\left( {\left| {\overrightarrow {{P_o}{P_c}} } \right| \cdot \left| {\overrightarrow {{P_t}{P_c}} } \right|} \right)} \right)\text{。} $ | (12) |
利用α =α0 + ∆α 求出旋钮旋转角度α,并以Pc 为中心旋转图片,然后将Pt 坐标赋给Po。
4) 重复进行第 3 步,从而实现旋钮的旋转。
2.5.2 深度指示器、风向/风速指示器、航向舵角指示 器、温度指示器的开发为了方便驾驶员瞭望,又完成驾驶操作。目前越来越多的雷达将 Conning(综合信息显示处理系统)功能融合进来,以协助航行。本文对其中的一些重要功能进行模拟,分别为深度指示器、风向/风速指示器、航向舵角指示器、温度指示器。正常情况这些功能不启动,处于隐藏状态。用户可以根据需要将它们在屏幕指定区域单独或全部显示。
2.5.3 系统语言切换现有雷达操作系统语言多为英语,相应的雷达模拟器也以英语为其系统语言。但目前船员的英语水平参次不齐,单一操作语言并不合理,也不利于船员培训。为此,本文提供了多语言支持,用户可根据需要设置系统语言。主要原理是通过 WPF 的 MVVM(Model-View-ViewModel)模式进行程序开发,将雷达程序界面层与逻辑层分开,以此实现程序的界面更换,从而实现系统语言切换。
2.5.4 统一共同基准点的设置新规对雷达 CCRP(Consistent Common Reference Point,统一共同基准点)的设置提出了要求,雷达真机也都增加了此功能,但多数雷达模拟器却还未实现对此功能的模拟。本文通过对本船参数的设置,自动绘制本船比例轮廓图形,然后利用不同颜色图标指示 CCRP、雷达天线、GPS 天线的位置。通过虚拟键盘输入参数,图标自动出现在本船比例轮廓图形上对应位置,程序根据参数值自动计算补偿值,进而完成设置,操作过程简单直观。
2.5.5 捕获区域的模拟AZ(Acquisition/Activation Zone,捕获区域)一直是船舶导航雷达的强制性能标准,目前各雷达模拟器也均实现了此功能。但目前捕获区域的设置均较为复杂,模拟效果不好。本文使用了一种新的捕获区域设置方法:首先显示捕获区域,移动光标到捕获区域边线上,光标形状由十字变为箭头,左击捕获区域边线,其上出现 8 个白色基准点,拖动基准点即可调整捕获区域位置、形状。当捕获区域到达指定位置或理想形状时,单击捕获区域外任意位置,即可完成捕获区域设置。本文通过碰撞检测判断目标是否进入或离开捕获区域,以实现捕获区域自动捕获、激活等功能。
3 仿真实现本文开发的雷达模拟器主功能界面如图 7(a)~图 7(f)所示,其中图 7(a)为本文雷达模拟器对岸线回波和杂波的模拟结果(本文选取大连港为模拟对象),图 7(b)为本文雷达模拟器对偏心显示、量程、显示模式切换的模拟,图 7(c)为本文雷达模拟器的刻度信息系统,图 7(d)~图 7(e)分别为本文对捕获区域设置和试操船功能的模拟,图 7(f)为对目标跟踪与 AIS 目标报告的模拟,模拟内容包括 TT 与 AIS 目标图标标识、目标信息的显示、AIS 与 TT 目标的关联、矢量、过去位置、尾迹等。图 8(a)~图 8(f)给出了本文雷达模拟器对真机上部分新型实用功能的仿真结果,其中图 8(a)为控制面板及其上旋钮的实现结果,图 8(b)~图 8(e)为本文模拟器对温度指示器、航向舵角指示器、深度指示器、风向/风速指示器的仿真界面,图 8(f)为 CCRP 设置的模拟界面。
本文采用模块化思想,在 WPF 框架基础上提出新方法,设计开发了一款新型雷达模拟器。仿真结果表明,该雷达模拟器拥有全新交互界面,易于识别,方便使用。该模拟器即能满足雷达模拟器一般性能标准,又实现了对真机上部分新型实用功能的仿真,具有一定应用价值。
[1] | 杜芳磊. 训练模拟器雷达模拟技术的研究[D]. 哈尔滨:哈尔滨工程大学, 2012. http://cn.bing.com/academic/profile?id=83a1098197c402f722587584c0a15f84&encoded=0&v=paper_preview&mkt=zh-cn |
[2] | 刘荣兰. 综合船桥系统中基于电子海图的导航信息融合技术研究[D]. 武汉:武汉理工大学, 2013. http://cn.bing.com/academic/profile?id=9b190343627d48b174054201ca2900dc&encoded=0&v=paper_preview&mkt=zh-cn |
[3] | IMO. Resolution MSC. 192(79):Revised Recommendation on Performance Standards for Radar Equipment[R]. London:IMO, 2004. |
[4] | 张杨, 曾浩, 察豪, 等. 国外航海雷达现状及发展趋势[J]. 电讯技术, 2013 (12):1649–1653. |
[5] | 倪德山. 航海雷达模拟器训练[M]. 大连: 大连海事大学出版社, 2011. |
[6] | MMACDONALD M. Pro WPF in C# 2010:Windows Presentation Foundation in. NET 4.0[M]. Berkeley: Apress, 2010. |
[7] | 中华人民共和国海事局. 1978年海员培训、发证和值班标准国际公约马尼拉修正案[M]. 大连: 大连海事大学出版社, 2010. |
[8] | 郭禹. 航海学[M]. 大连: 大连海事大学出版社, 2005. |
[9] | VINCENTY T. Direct and inverse solutions of geodesics on the ellipsoid with application of nested equations[J]. Survey Review, 1975, 23 (176):88–93. DOI: 10.1179/sre.1975.23.176.88 |
[10] | PRASAD D K, LEUNG M K H, CHAI Q, et al. A novel frame-work for making dominant point detection methods non-parame-tric[J]. Image and Vision Computing, 2012, 30 (11):843–859. DOI: 10.1016/j.imavis.2012.06.010 |
[11] | 尹勇, 刘秀文, 李志华. 采用真雷达显示器的航海雷达模拟器的关键技术[J]. 系统仿真学报, 2007, 19 (5):1014–1017. |
[12] | 张润泽. 船舶导航雷达(第三册)[M]. 北京: 人民交通出版社, 1990. |
[13] | 金一丞, 尹勇. 航海模拟器[M]. 北京: 科学出版社, 2013. |
[14] | 吴兆麟, 赵月林. 船舶避碰与值班(第三版)[M]. 大连: 大连海事大学出版社, 2008. |
[15] | 陈大军, 任鸿翔, 肖方兵. 语音识别技术在船舶甚高频仿真设备中的应用[J]. 大连海事大学学报, 2014, 40 (2):73–76. |