论文部分内容阅读
雷达显控终端是船舶导航系统的核心组成设备。随着Android系统的流行,不依赖特定硬件、支持触控操作已成为雷达显控终端的发展趋势。本课题的任务是研究Android平台下雷达显控软件的高效渲染方案,并在搭载Android系统的硬件设备上实现雷达显控终端。首先,本文对航行中用到的导航设备与雷达显控系统进行了研究,确定了雷达显控软件的功能需求与性能需求。并对其功能划分了六个主要模块,包括人机交互模块、数据通信模块、数据处理模块、显示模块、控制模块、报警模块。同时根据软件需求与Android设备的特点,选择了开发平台和工具,设计了软件的总体框架。其次,对雷达显控软件开发涉及的关键技术进行了研究。确定了以OpenGL(Open Graphics Library)纹理映射与多重纹理技术为核心、充分利用图形处理器(Graphics Processing Unit,GPU)处理能力的渲染方案;确定了基于完全查表法的坐标变换方案,并基于两级索引表给出了内存优化方案;确定了基于公平锁技术的线程安全处理方案。然后,研究了雷达显控软件功能模块的设计与实现。第一步,根据Android设备的特点,利用抽屉布局、触控操作设计了合理、高效的人机交互方式。第二步,根据传输速率要求和Android硬件接口支持,设计并实现了基于无线局域网(Wireless Local Area Networks,WLAN)的通信方案。第三步,通过生产者消费者模型设计了数据存取模型,给出了数据容错处理方案,根据雷达回波数据高重复率的特点,实现了基于zip算法的数据压缩方案。第四步,结合OpenGL、异步消息、区域裁剪等技术及分层绘制思想,完成了雷达显控软件的视频图像显示功能。具体包括雷达平面位置显示器(Plan Position Indicator,PPI)显示与PPI偏心显示、图像回放显示、放大显示、目标多色显示、警戒区显示、尾迹显示、三种向上方式显示和助航设备信息显示。第五步,完成控制模块与报警模块。最后,搭建测试平台并进行功能与性能测试,测试结果表明本文所设计雷达显控软件完成了软件的功能需求,且拥有较好的实时性、较低的内存占用等特性,符合软件的性能需求。