论文部分内容阅读
随着雷达相关技术的发展以及各种雷达元器件的技术革新,现代雷达的功能得到不断增强,系统复杂度不断提高,这也导致了雷达在研发过程中,各个研发部门之间的交流变得越来越频繁,阶段性测试越来越多,各个研发环节、研发部门间的数据交流越来越多。目前雷达在研发过程中存在以下主要问题。研发人员对其他部门的工作不熟悉;存在大量测试数据的人工输入及数据比对,工作量大且繁琐,容易出错。本文根据作者实习公司的需要和公司现状,设计并实现了雷达测试系统软件用来解决以上问题。本文首先分析了雷达在研发过程中数据交互的业务流程,总结了研发人员在研发雷达过程中需要与雷达进行交互的两个最基本的业务需求:获取雷达数据并解析,向雷达发送命令改变雷达工作状态。然后根据这两大业务需求具体划分了主要功能模块:数据接收模块、数据分发处理模块、显示模块、数据存储模块、数据质量监测模块、网络状态监测模块、命令发送模块。总结了实现各个功能模块的技术难点。首先是系统软件和雷达通信的问题。由于雷达的网络环境只支持到数据链路层的协议,所以没办法通过TCP/IP协议与雷达通信。本文利用WinPcap(Windows Packet Capture)平台捕获流经本机网卡的原始数据包,实现了对雷达数据的接收;同时借助WinPcap对雷达命令进行简单的封装和发送。其次是雷达数据量大,系统既要实现数据的获取,又要进行数据分析计算,很容易造成数据滞留内存的问题。针对以上问题,本文在设计过程中借鉴了乒乓操作数据流处理技巧,将内存分成与雷达数据帧大小相等的多个内存块,数据接收和分析计算在不同数据块中同时进行。数据接收由接收线程控制,数据分析计算由主线程控制,两个线程互相配合同时进行读、写操作,以此决了雷达数据滞留内存的问题。再次是分发处理、显示、存储、命令发送的并发问题。本文利用多线程技术设计了多条指令执行路径,各个执行路径相互配合,每条执行路径完成一个任务。实现了各个操作的并发。最终本文实现了界面友好的雷达研发测试软件并对系统进行了全面的功能测试和非功能测试。系统简化了雷达开发人员之间,以及开发人员与雷达之间的交流交互。并能够记录研发人员的操作场景方便相似测试场景的重复测试。系统开发完成后在公司内部使用,简化了雷达测试工作,并界定了各个开发部门间的职责。提高了公司的产品研发效率,方便了产品线上相关人员的管理,从某种程度上加快了海军的相关舰艇的全面装备速度。进一步增强了我国的国防力量。