基于GIS的AIS船舶监控系统的船舶分类显示

时间:2022-10-30 06:17:34

基于GIS的AIS船舶监控系统的船舶分类显示

摘要:该文简单介绍了GIS、AIS的基本知识和ARCGIS开发工具,并详细描述了采用面向对象的思想建立船舶类,并使用ArcObjects组件绘制船舶和渲染船舶,实现了船舶的动态显示和分类显示。

关键词:GIS;AIS;船舶;监控系统;分类显示

Ship Classified Display of GIS-based AIS Vessel Monitoring System

ZHOU Cui

(Wuhan University of Technology, Wuhan 430063, China)

Abstract: This paper briefly described the basic knowledge of GIS, AIS and ARCGIS development tools, and thoroughly described the establishment of ship classes with object-oriented thinking, and then realized the ship's dynamic and classified display using ArcObjects components to draw and render the ship.

Key words: GIS; AIS; ship; monitoring system; classified display

当前船舶日趋大型化、高速化,水上交通日趋繁忙,为了满足社会和经济的发展和监控对水上交通的需求,在原有的船舶综合监控系统的基础上,对于船舶分类显示的要求也日渐强烈。

1 地理信息系统的基本知识

1.1 GIS的概念

物质世界中的任何事物都被牢牢地打上了时空的烙印。人们的生产和生活中百分之八十以上的信息和地理空间位置有关。地理信息系统(Geographic Information System,简称GIS)作为获取、整理、分析和管理地理空间数据的重要工具、技术和学科,近年来得到了广泛关注和迅猛发展。由于信息技术的发展,数字时代的来临,理论上来说,GIS可以运用于现阶段任何行业。

1.2 GIS的技术特点

1) GIS能按照地理坐标和一定的数据格式对空间数据和属性数据进行统一的存储与管理,其数据结构主要有两种类型:矢数据结构和栅格数据结构。

2) GIS具有图属双向查询检索、统计计算和列表制图等功能,并且可以按照指定的范围进行图形和提供综合的空间分布数据;另外,GIS还具有很强图形功能。

3) 向用户提供空间数据多因素空间分析、复合评价、预测预报、模拟优化等功能。

1.3 GIS的应用

地理信息系统在最近的30多年内取得了惊人的发展,广泛应用于资源调查、环境评估、灾害预测、国土管理、城市规划、邮电通讯、交通运输、军事公安、水利电力、公共设施管理、农林牧业、统计、商业金融等几乎所有领域。

1.4 GIS的主要开发模式

1) 独立开发。指不依赖于任何GIS工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用某种程序设计语言,如Visual C++、Delphi等,在一定的操作系统平台上编程实现。这种开发的好处是无须任何商业GIs软件的支持,缺点是投资大、周期长而且功能上很难与商业化GIS工具软件相比。

2) 单纯的二次开发。指完全借助GIS软件提供的工具进行系统开发。用户一般都是在原有的GIS软件开发平台上,使用GIS软件厂商提供的宏语言,如ESRI的ArcView 的Avenue 语言,MapInfo的MapBasic 语言等来开发自己的应用程序。这种方式省时省心,但进行二次开发的脚本语言,作为编程语言,功能极弱,用它们来开发应用程序仍然不尽如人意,并且所开发的系统不能脱离GIS平台软件,是解释执行的,效率不高。

3) 集成二次开发。集成二次开发是指以通用软件开发工具为平台,利用专业的GIS工具软件所开发出来的GIS软件。其主要方式有采用对象链接和嵌入自动化技术和利用GIS工具软件生产厂商提供的建立在Ocx技术基础上的GIS功能控件。这种开发方式既可以充分利用商业GIS工具软件的功能,又可以利用可视化开发语言高效、方便等编程特点,开发出的软件具有可靠性高、易移植、便于维护等优点。唯一的不足之处是要购买GIS工具软件。

4) 基于GIS组件的二次开发。目前最为流行的是基于GIS组件的二次开发,它的基本思想想是把GIS各大功能模块划分为几个组件,每个组件完成不同的功能,各个组件之间以及GIS组件和非GIs组件之间可以方便地通过可视化软件开发环境集成起来,形成最终的GIS应用。它的主要特点是小巧灵活,价格便宜;开发简便;具有很强的扩展性;更加大众化和强大的GIS功能。

2 船舶自动识别系统的基本知识

2.1 AIS的组成结构

船舶自动识别系统(Automatic Identification System,简称AIS系统)由岸基(基站)设施和船载设备共同组成,是一种新型的集网络技术、现代通讯技术、计算机技术、电子信息显示技术为一体的数字助航系统和设备。它主要由船台设备和岸台系统两部分组成。

1) 船台设备是一种船载广播式应答器。它使用海上VHF频段工作,能够发出船舶的各种信息,包括身份、船位、船首向、船舶类型、船舶长度、宽度、吃水等信息。典型的AIS船台设备是由一台VHF发射机、两台VHF TDMA接收机、一台VHF DSC接收机、一台带有标准的船用电子通信接口(IED 61162/NMEA0183/200)的控制装置以及各种必要的传感器组成。

2) 岸台系统由一系列岸网而成。一个典型的岸台由VHF TDMA收发机、VHF DSC接收机、基站控制器(BSC)、网络设备、控制软件和应用软件组成。AIS基站收发机遵从ITU-RM.1371建议案《AIS技术特性标准》,可安装在VIS系统中或作为AIS沿海网络的核心单元。借助基站控制器(BSC),基站收发机可以相互连接实现对海岸线的覆盖。收发机还可配置为转发站。

2.2 AIS使用到的技术

AIS工作在VHF频带,可以做到每秒2000个报告,每2秒钟可更新一次。使用时分多址技术(TDMA)来满足高速传输速率并保证可靠的通信。AIS采用OSI七层工作模式中低四层:物理层、数据链路层、网络层和传输层。物理层主要实现数据流的传输,提供必要的物理设备。数据链路层定义数据的工作技术,用于校验数据和数据的同步收发。网络层负责建立和维持信道的连续,控制信道上的数据流向,优化信道的使用。传输层主要处理来自对话层、网络层、GNSS等定位导航仪器的信息,实现与OSI高三层协议的接口。

2.3 AIS的主要功能

IMO已在新修正SOLAS第5章和第19条中规定了通用AIS的配备要求。该系统的配置已于2002年7月1日起新造船舶开始强制执行,同时,对所有从事海上航行的船舶于2004年7月1日起强制装备,300总吨以上能够从事国际运输的船舶,500总吨及以上不从事国际航运的货船和所有客船,均需要安装AIS的设备。规则阐述AIS应有如下功能:

1) 自动向合适配备的岸台、其他船舶和航空器提供信息,包括船舶识别、类型、位置、航向、航速、航行状态和其他与安全有关的信息;

2) 自动接收来自其他船舶的有关信息;

3) 识别船只、检测和跟踪船舶;

4) 与岸基设施交换数据;

5) 简化信息交流和提供其他辅助信息以避免碰撞发生。

3 ARCGIS 9.0开发工具

ARCGIS是ESRI公司开发的,它作为一个可伸缩的平台,无论是在桌面,在服务器,在野外还是通过Web,为个人用户也为群体用户提供GIS的功能。ArcGIS 9是一个建设完整GIS的软件集合,它包含了一系列部署GIS的框架,有ArcGIS Desktop、ArcGIS Engine、移动GIS、服务端GIS和嵌入式GIS等。ARCGIS是基于一套由共享GIS组件组成的通用组件库实现的,这些组件被称为ArcObjectsTM。

ArcObjects包含了大量的可编程组件,从细粒度的对象(例如,单个的几何对象)到粗粒度的对象(例如与现有ArcMap文档交互的地图对象)涉及面极广,这些对象为开发者集成了全面的GIS功能。每一个使用ArcObjects建成的ArcGIS产品都为开发者提供了一个应用开发的容器,包括桌面GIS(ArcGIS Desktop),嵌入式GIS(ArcGIS Engine)以及服务端GIS(ArcGIS Server)。

4 船舶分类显示

船舶的分类显示功能可以细分为两步:首先,要根据用户的需求,设置特定的一类船舶的显示属性,包括船舶轮廓和填充的颜色、船舶是否闪烁、船舶显示的透明度等属性,同一类型的船舶存储的类型编号一样;其次是船舶在地图上的动态显示,包含船舶的形状、航行角度、以及用户自定义的属性。第二步是船舶显示的关键,下面将作较为详细的讲述。

4.1 船舶绘制

在S-57电子海图中,船舶地物采用等腰锐角三角形显示,底边的中点表示当前船舶的地理位置,顶角显示船舶当前的航行角度,用户可以自定义三条边的颜色和三角形的填充色来区别不同类型的船舶。根据面向对象的思想,船舶建立为一个对象类,船舶的位置、颜色、角度等作为船舶对象的属性,如下即为船舶类的定义:

Ship类中的setShipShape方法用来设置船舶的经纬度信息和航行角度,DrawShip是绘制船舶的方法,DrawShip函数有两个参数,AlarmType参数表示船舶对象所属的类型编号,非用户自定义的船舶默认编号为0,使用默认的属性显示,第二个参数ShipMMSI表示船舶的呼号,用以代表船舶唯一的编号。

根据船舶对象的经纬度信息确定船舶在地图上的位置后,DrawShip函数在地图相应位置上绘制一个锐角三角形代表该船舶,并且将三角形所属的类型编号记入船舶地物的属性中。在定时器中不断重绘船舶的位置,就在地图上的相应位置显示了动态航行的船舶。

4.2 船舶的分级渲染

船舶在地图上有ArcObjects组件有一个BreakClassRender方法,这是一个图层对象的方法,用于分级渲染地物,顾名思义,对于某一个图层上的点、线、面任一种地物来说,根据地物的某一个属性值的大小进行分类,对于处在同一属性值范围内的地物显示相同的样色。值得注意的是,船舶的种类由于用户需求的增加会无预计的增加,这里需要用到vector容器存储船舶的分类编号。

分级渲染后的船舶在地图上显示如右图1。

5 小结

通过将船舶抽象化,建立船舶类,使程序的重用性和可维护性更强了,船舶的分类显示和渲染主要采用了ArcObjects组件的方法,组件编程给软件开发带来了方便。

参考文献:

[1] 王志松,陈伟,赵鹏.GIS在电子江图显示与信息系统中的应用[D].武汉:武汉交通科技大学,2003.

[2] 吴建华,陶德馨,刘天才.AIS在海事管理领域的应用[D].武汉:武汉理工大学,2008.

[3] 陈伟,赵鹏,齐传新.电子江图显示与信息系统设计与实现[J].武汉理工大学学报,2001(4):2-3.

上一篇:基于MapGIS-IMS SOA的WebGIS研究与实现 下一篇:E-mail安全问题及其加密技术研究