微波散射特性测量软件设计与实现

2017-09-20 03:13张浙东许心瑜张玉石
现代计算机 2017年22期
关键词:调用分析仪极化

张浙东,许心瑜,张玉石

(中国电波传播研究所电波环境特性及模化技术重点实验室,青岛266107)

微波散射特性测量软件设计与实现

张浙东,许心瑜,张玉石

(中国电波传播研究所电波环境特性及模化技术重点实验室,青岛266107)

针对地海面背景不同极化、不同角度的大规模电磁散射特性数据采集与管理的需求,提出设计开发一套集硬件控制、数据采集与管理为一体的自动测量软件。为此,从系统的功能需求出发,采用面向对象的建模理论和UML建模技术,结合UDP网络协议、SELECT模型和多线程编程技术,实现微波散射特性自动测量软件。经用户的实际使用检验,极大地提高电磁散射特性测量效率。

散射特性;面向对象;UML;多线程;SELECT模型

0 引言

雷达回波与被雷达发射电磁波所照射的背景性质(如草地、沙漠、灌木丛、海浪等)有着直接的联系[1]。相同的背景对不同波段的电磁波存在不同的影响效果,不同的背景对相同波段的电磁波也存在着不同的影响效果。不同的地、海背景雷达回波是影响雷达目标[1]检测性能的重要影响因素,因此,开展对不同波段、不同背景类型的电磁散射特性的研究,对提升雷达的目标检测性能具有重要意义。

为了对不同背景电磁散射特性[2]的研究,最直接和最有效的一种方法是对不同背景进行长期的大规模试验数据获取,包括涉及影响地海面散射特性众多参数,如不同波段、不同极化、不同方位角、不同入射角、不同季节等条件下的海量数据采集试验。而微波散射特性测试系统[3]就是为了满足这种需求而研发的移动测量平台,设备不但具备便利部署的特点,同时也开发了一套自动测量软件,实现对系统的远程控制、数据采集以及数据管理等。

1 系统硬件设计

系统主要由远程主控计算机、矢量网络分析仪[4]、伺服、极化控制、温度监控、系统平衡控制、视频监控单元以及控制网络组成。远程主控计算机是系统的大脑,利用网络实现对相关设备的控制、数据采集与管理;矢量网络分析仪是系统的核心单元,接收远程控制指令,按照设定的脉冲参数,实现信号的接收与发射;通过对极化控制单元的控制,实现系统不同极化方式(HH、VV、VH、HV)的切换;通过对伺服方位和俯仰角度的转动,实现对不同方位角、不同俯仰角的天线波束指向的控制;温度监控由数字温度传感器与风冷设备组成,实时温度传感器的数据并确定是否启动风冷设备,确保系统正常的环境工作温度;系统平衡由倾角仪和制动器[5](共有四个制动器组成,采用等高十字交叉分别制动的设计方式)组成,实时监视倾角仪角度,利用制动器实现天线波束指向角与伺服指向角度的一致性设计;视频监控单元实时采集天线照射区域的视频实况,为后期数据分析服务。

系统软件采用VisualC++[6]功能强大的集成开发环境,实现面向对象类、界面等方面的设计开发;利用UDP网络协议,并采用异步方式结合Winsock提供的6种I/O模型中的SELECT(选择)[7]模型,实现对不同设备控制与管理;采用多线程编程以及同步技术,确保设备通讯控制、数据采集及管理的平行运行;采用Access数据库[8]以及ADO接口实现对数据的管理与访问。

系统设计结硬件构如图1所示。

图1 系统硬件设计结构图

2 软件系统设计

2.1 散射特性测量典型流程

散射特性测量是一项比较复杂的功能,涉及到对各个设备单元的控制、信号的发射与接收、数据的处理与存储。为了更加清晰的描述各个设备之间的协同工作关系,提出采用UML[9-10]中的用例场景描述方法,实现对散射特性测量流程进行详细描述。具体散射特性测量流程如表1所示。

操作员关闭制动器,控制伺服回到初始位置状态,打开制动器,开始平衡调整,并实时提取倾角仪数据,当倾角仪显示的纵倾角与横倾角的角度小于某一数据值时,关闭制动器,完成平衡调整;平衡调整完成后,操作员设定散射特性测量参数(包括频率、带宽、极化、入射角范围、方位角范围、角度步进值等),按照“改变极化—改变入射角—改变方位角—数据采集—保存数据”的顺序进行散射特性自动测量;在散射特性测量过程中,系统实时监视收发单元模块的工作温度,通过风冷的方式控制收发单元的工作温度。

2.2 软件类结构设计

在软件类结构设计过程,本文以矢量网络分析仪、伺服、极化控制、温度监控、系统平衡控制、视频监控单元等各个硬件单元为基础,采用类图的方式来描绘系统中各个对象的类型、接口以及它们之间的静态结构和关系。

表1 散射特性测量流程描述

系统类图如图2所示。系统主要由以下类组成:CMainFrame(主控类),CMeasScatter(散射特性自动测量控制类)、CPNXMeas(收发单元控制类)、CDataMan⁃age(数据管理类)、CSysMonitor(系统设备管理类)、CPo⁃larMonitor(极化监控类)、CFanMonitor(风扇监控类)、CBrakeMonitor(制动器监控类)、CTempMonitor(温度监视类)、CNetwapaView(图像采集设备管理类)、CServo⁃Monitor(伺服管理类)、CIMMonitor(倾角仪监视类),CMUMonitor是CPolarMonitor、CFanMonitor、CBrake⁃Monitor、CTempMonitor的父类,实现对硬件的相关通讯与控制。从系统类图中也可以看出,系统主要分成两大部分,以CMeasScatter为主的散射特性测量管理部分,通过对收发单元的控制实现对数据的采集,调用数据管理类实现对采集数据与测量参数的管理;以CSys⁃Monitor为主的设备管理部分,实现对相关设备任务调配、消息分发等,并配合CMeasScatter完成散射特性测量。

2.3 关键软件功能实现

(1)矢量网络分析仪远程控制

矢量网络分析仪提供了两种二次开发命令控制方式,分别为基于SCPI(Stand Commands for Programma⁃ble Instrumentation)和基于COM(Component Object Model)。这两种命令开发方式都是独立于硬件的通用接口语言,用户在设计开发时只需要调用其提供的标准命令,与平台硬件无关。但是,这两种命令方式也存在差异,SCPI命令是基于GPIB电缆,其中GPIB电缆价格昂贵且传输距离有限;而COM命令方式可以基于以太网实现远距离控制,还具有开发简单、传输速度快、可移植性号好等优点。在编程语言方面,可以采用VB、VC或Agilent VEE等。本文中采用VC+COM方式实现对矢量网络分析的远程控制。矢量网络分析仪控制[11]主要在CPNXMeas类中实现,基本步骤如下:

①利用CoCreateInstance函数创建COM对象,利用COM对象的QueryInterface函数创建矢量网络分析控制对象;

//创建COM组件对象m_pUnk

CoCreateInstance(CLSID_Application,0,CLSCTX_ALL, IID_IUnknown,(void**)&m_pUnk);

//创建矢量网络分析仪控制对象m_PNA

m_pUnk->QueryInterface(IID_IApplication,(void**)&m_pNA);

②设置测量参数,如测量模式、测量通道、功率、中心频率、中频带宽、扫描点数等;

//设置测量模式为,如设为S21

m_pNA->CreateMeasurement(1,_bstr_t("S21"),1,1);

//获取当前的测量通道

m_pNA->get_ActiveChannel(&m_pChan);

案例教学法[4]是一种以案例为基础的教学法,教师在教学过程中扮演着设计者的角色,组织学生积极参与讨论,对案例进行分析和讨论,提出问题并得出合理的解决方案。在此过程中,学生身临其境将自己带入案例中,分析、讨论并表达自己的见解,将所学知识得到了应用,使学生积极主动地学习,培养了学生的独立判断分析食品质量和安全管理的能力。

//设置功率,中心频率,带宽以及点数

ChannelSetup(m_pChan,true,1,m_dblPower,m_dblCenter⁃ Freq,m_dblSpanFreq,m_lPointNum));

//设置中频带宽

m_pPulseMeasCon->put_AutoIFBandWidth(false);

m_pChan->put_IFBandwidth(m_lIFBandWidth);

图2 系统类图

③调用Single函数,启动矢量网络分析仪进行单次扫描;

④处理、显示和保存数据

调用getScalar函数提取数据,调用ShowSin⁃gleSweepData函数在远程控制计算机显示回波数据,调用AccumulateData函数对扫描数据进行积累处理。循环调用步骤(3),直至积累完成。调用SaveData函数保存数据。

⑤完成测量,退出对矢量网络分析仪的控制。

(2)设备监视与控制

系统在运行过程中,需要监视与控制的设备比较多,如果采用多线程多套接字的方式实现,那么将导致系统扩展性能的下降。而VC通信模式中的SELECT模型就可以解决这个问题。为此,提出了采用多线程+SELECT模型的方式,即设备控制与状态监视采用不同的线程进行分离设计实现对系统控制的实时性。设备状态监视线程与设备控制线程织之间,通过事件同步机制,协调各个设备之间的协同工作。如对倾角仪的控制相关代码封装在CIMMonitor线程类中、对温度与极化设备的控制封装在CMUMonitor线程类中、对伺服的控制封装在CServoMonito线程类中。而对不同设备的状态监视采用SELECT模型实现,相关代码封装在CSysMonitor线程类中。设备控制线程由状态监视线程类CSysMonitor的实例进行启动与维护。设备控制与监视的基本步骤如下:

①定义各设备的套接字句柄并初始化,如倾角仪套接字句柄m_LocalIMSocket、极化和温控套接字句柄m_LocalMUSocket、伺服控制套接字句柄m_LocalServo⁃Socket;

②定义套接字集合并初始化

fd_set fdSocket;//定义套接字集合

FD_ZERO(&fdSocket);//初始化套接字集合对象

③将设备监视相应的套接字句柄分配给套接字集合

FD_SET(m_LocalIMSocket,&fdSocket);//将倾角仪套接字句柄添加至集合

FD_SET(m_LocalMUSocket,&fdSocket);//将极化与温度套接字句柄添加至集合

FD_SET(m_LocalServoSocket,&fdSocket);//将伺服套接字句柄添加至集合

④调用select函数

select(0,&fdSocket,NULL,NULL,NULL);

⑤用FD_ISSET对设备监视相应套接字进行检查,如果所关注的套接字句柄在套接字集合fdSocket里,可以调用不同设备控制对象的recvfrom函数读取缓存中设备的状态数据,通过PostMessage发送消息进行设备状态数据的解析与显示。

⑥而对于设备控制,相对比较简单,在CSysMonitor的实例中调用AutoStartDeviceMonitorAndControl函数启动倾角仪控制线程、温度和极化控制线程以及伺服控制线程,需要控制设备的状态时,调用相应的函数即可。如控制发射的极化为H极化,则只需将标志位设为MU_SETSENDH,然后调用MUCOMSendHPolar函数切换为H极化,如果状态监视显示的结果为H极化,就标志着极化控制成功。而线程之间采用定义CEvent的实例进行同步。

3 应用实例

微波散射特性测试系统软件界面效果如图3所示。

图3 软件界面效果图

微波散射特性测试系统以Ka波段对裸地进行散射特性自动测量,测量的入射角度从45°~70°,角度的步进值为5°,方位角度不变,测量的极化类型包括HH极化和VV极化两种。

图4 软件自动采集的实况照片示意图

软件自动测量采集的从近至远实况图片如图4所示,完成6个角度2种极化共12组数据的自动测量时间在5分钟左右,而单次手动测量完成相同参数的数据采集时间在7分钟左右或更长,测量效率提高了。

图5 散射系数随入射角变化曲线图

对获取的数据按照相同角度多组数据平均后的散射系数随入射角变化曲线图如图5所示。从图中可知,散射系数随着入射角的增大而减小,表征了基本的裸地杂波特性;而大入射角相对于小入射角的散射系数变化较大,是由于裸地比较平整,前向镜面反射较强,后先散射较弱的原因引起;裸地的HH极化略大于VV极化,是由于入射角在垂直取向散射分量多于水平分量所引起的。

总的来说,系统自动测量获取的散射特性数据已经正确反映出了背景杂波的特性,软件自动测量的效率也得到了验证。

4 结语

本系统在需求分析和系统功能设计的基础上,采用面向对象的分析方法结合UML建模技术,从结构领域、动态领域等方面实现了散射特性自动测量软件的建模。采用高效运行语言VC++结合UDP网络协议、SELECT模型和多线程编程技术等,实现微波散射特性自动测量软件,为不同背景大规模的散射特性测量提供有力的保障,并提高了测量效率。本系统也存在一些有待改进的地方,如系统平衡调整需要操作员干预,而不能自动完成;数据库采用Access,虽然使用方便、对数据库管理人员的要求低,但是也存在对大数据管理效率不高、可扩展性差等缺点。总体来说,微波散射特性自动测量软件在实际的使用过程中发挥重要作用。

[1]黄培康,殷红成,许小剑编著.雷达目标特性.北京:电子工业出版社,2005.

[2]Merrill I.Skolnik主编.雷达手册.王军等译.北京:电子工业出版社,2003.

[3]温芳茹,尹志盈,孙芳等.多波段散射计系统性能的实验研究.现代雷达,1996,18(4):51-66,94.

[4]李敬,顾军,李晓慧.矢量网络分析仪中频采集处理设计与实现.应用天地,2016,35(5):79-82.

[5]刘斌,牟长军,张玉石,张浙东.某新型散射计抱闸装置结构设计.电子机械工程,2013,29(2):44-48.

[6]赛奎春主编.VisualC++工程应用与项目实践.北京:机械工业出版社,2005.

[7]王艳平,张越编著.Windows网络与通信程序设计.北京:人民邮件出版社,2008.

[8]范晓平编著.跟着实例学VisualC++6.0访问数据库·绘图·制表.北京:北京航空航天大学出版社,2003.

[9]徐锋,陈暄等编著.UML面向对象建模基础.北京:中国水利水电出版社,2006.

[10]温昱著.软件架构设计.北京:电子工业出版社,2014.

[11]赵立,魏薇,曾照勇,刘莉.导弹天线罩IPD远程自动测量系统研究.航天控制,2010,28(4):81-85.

Design and Im p lementation ofMeasurement Software forMicrowave Scattering Characteristics

ZHANGZhe-dong,XUXin-yu,ZHANGYu-shi
(National Key Laboratory of Electromagnetic Environment,China Research InstituteofRadiowave Propagation,Qingdao 26610

For the background of land and sea to different polarization,differentangle needs of large-scale electromagnetic scattering characteristics data acquisition and management,designs and develops the automaticmeasurement software,with hardware control,data acquisition and managementcapabilities.From the system's functional requirementsofusingobject-orientedmodeling theory and UMLmodeling technolo⁃gy,combined with UDP network protocol,SELECTmodel and multi-threaded programming technology,realizes the automatic measure⁃ment software ofmicrowave scattering characteristic.By the actual use of the users,this greatly improves the efficiency of electromagnetic scattering characteristicsmeasurement.

张浙东(1976-),男,浙江绍兴人,硕士,高级工程师,研究方向,为杂波数据分析处理、系统及数据库设计开发

2017-05-11

2017-07-257)

横向合同

1007-1423(2017)22-0065-06

10.3969/j.issn.1007-1423.2017.22.016

许心瑜(1982-),女,河南新乡人,硕士,高级工程师,研究方向为海杂波数据处理及特性分析

张玉石(1978-),男,辽宁葫芦岛人,博士,研究员,研究方向为地海杂波测试系统与方法、地海杂波特性与建模等

Scattering Characteristics;Object-Oriented;UML;Multi-Threaded;SelectModel

猜你喜欢
调用分析仪极化
Sekisui CP3000与STA Compact Max凝血分析仪检测项目比对分析
SYSMEX XN-550全自动血液分析仪的校准及性能评价
Sievers分析仪(苏伊士)
认知能力、技术进步与就业极化
极化雷达导引头干扰技术研究
基于干扰重构和盲源分离的混合极化抗SMSP干扰
核电项目物项调用管理的应用研究
非理想极化敏感阵列测向性能分析
系统虚拟化环境下客户机系统调用信息捕获与分析①
利用RFC技术实现SAP系统接口通信