吴仁彪,胡鹏举,卢晓光
(中国民航大学天津市智能信号与图像处理重点实验室,天津 300300)
机载气象雷达具有气象探测、气象回避、地形测量、地图测绘等功能,是民航飞机必不可少的机载电子设备。机载气象雷达的关键是信号处理以及数据处理部分,也是决定其性能的主要因素。为了开发高效的信号处理算法和合理的数据处理方法,需要利用真实的机载气象雷达回波信号进行验证。只有高保真的雷达回波信号,包括多种气象目标(湍流、风切变等)、多种模式(湍流、风切变模式)下的回波信号,才能满足需要。
目前,雷达回波信号的仿真大部分是针对某一体制的雷达设计的,如文献[1-6]给出了一些常见体制雷达的回波信号仿真方法和系统。由于机载气象雷达的特殊性,针对其回波信号仿真的研究相对较少,文献[7]中仿真模型是简化的风切变模型,不能做到高保真地对气象目标进行仿真,故不能正确反映气象目标的特点。文献[8]没有对气象目标建模,仅仅对地杂波进行了回波仿真,且没有考虑真实场景中雷达的扫描。
雷达回波信号仿真的关键在于仿真模型的建立,常见的方法有3种,分别是外场实测法、紧凑场测量法以及理论建模评估法。理论建模评估法通用性最强,应用最多,这类方法大多是基于目标起伏特性所建立的模型。对于气象目标模型的建立,不同于一般的目标建模,常见的目标建模大多基于目标的起伏特性在时间上的相关性,建立相应的统计模型,对于气象目标仿真模型,不仅要考虑在时间维上的相关性,还应考虑其在空间维上的相关性,因此不能采用简单的统计模型的方法。
本文利用流体力学仿真软件对气象目标高保真建模和仿真的数据,依照雷达不同的工作模式如风切变模式、湍流模式,设置相应的载机参数、雷达参数、扫描参数、波束参数等,真实地模拟载机扫描过程,得到机载气象雷达回波信号。在此基础上搭建了机载气象雷达回波仿真系统平台,完成数据读取、参数设置、仿真过程展示以及结果的验证和导出,为后续信号处理提供可靠的数据支持。
机载气象雷达回波仿真流程如图1所示[9]。
图1 雷达回波仿真流程图Fig.1 Flow chart of radar echo simulation
机载气象雷达回波仿真流程具体实现步骤如下:
1)读取气象目标建模生成的数据,主要是速度场数据和密度场数据。
2)对载机参数、雷达参数、波束参数、波形参数、场景参数等参数进行初始化。
3)判断当前波束内的散射点,计算一个波束内的雷达回波。
气象目标属于一种体分布弥散目标,在整个范围内由大量的微粒组成。对于每个散射点的回波由幅度和相位组成,对于风场中处于雷达照射范围内的第m个微粒,雷达回波可表示为
式中:Am(t)表示该微粒的回波幅度;φm(t)表示该微粒回波的相位。
分别计算每个散射点的雷达回波,而在整个波束范围内,雷达所接收到的回波可以表示为波束范围内所有散射微粒回波的叠加
式中:n0为接收机噪声,仿真过程中可以由雷达的接收机噪声门限所确定。
4)更新飞机位置、气象信息,更新天线扫描角。
5)判断扫描是否完成,若完成,输出回波信号;若未完成,返回步骤3),继续操作。
2.1.1 系统模块
结合雷达扫描过程,机载气象雷达回波信号仿真系统采用模块化设计,这样既方便系统逐步实现,也方便对系统进行调试。仿真系统做了如下模块划分,主要模块包括数据读取模块、飞行模式选择及雷达参数设置模块、雷达回波仿真模块、信号处理模块及视图模块。
1)数据读取模块 由于流体力学软件仿真的风场数据较大,而且作为雷达回波仿真系统,所要读入的数据种类繁多,因此单独设计一个数据读取模块,完成对所需数据的读取,并对数据在格式以及类型等方面进行预处理,使得经过数据读取模块读入并预处理后的数据可以直接进行应用。对风场建模得到的密度场数据及速度场数据进行读取,并对读取的风场数据进行初步处理。
2)雷达工作模式选择及参数设置模块 为了尽可能逼真地仿真雷达回波信号,根据飞机的实际飞行方式以及雷达的实际扫描参数对飞机飞行模式及雷达参数进行设置。依据机载气象雷达的参数,按照雷达回波仿真的需要对飞行模式进行选择,然后根据选择的飞行模式,对载机参数、雷达参数、波束参数、扫描参数等进行合理设置。通过对雷达工作模式的选择和参数的设置,真实地模拟机载气象雷达的扫描过程。
3)雷达回波仿真模块 雷达回波仿真模块是机载气象雷达回波信号仿真的核心,利用流体力学软件根据NASA提出的TASS模型对风场进行风场建模,对数据在读取模块进行读取,然后设置合理的参数,根据撒点法仿真的原理,按照机载气象雷达的扫描方式对气象目标的雷达回波进行计算。在此模块,根据雷达回波信号仿真的流程,进行后台运行,由于数据量较大,运算时间较长,设置仿真进度条对运行状态进行监视。
4)信号处理模块 雷达回波信号仿真的目的,在于对雷达回波信号处理,在进行雷达回波信号仿真后,根据不同数据的雷达回波仿真,进行不同的信号处理,如杂波抑制、雨衰补偿、风切变的检测、湍流的定标等操作。
5)视图模块 为了更形象地展示对机载气象雷达回波仿真过程,需要对飞机扫描过程进行展示,对扫描结果动态显示、对信号处理的结果进行展示,因此设置视图模块,更形象地对雷达回波仿真系统全过程进行展示。
2.1.2 系统工作流程图
软件工作流程如图2所示。软件运行后,建立此次雷达回波仿真的项目文件,然后读取需要进行回波仿真的风场模型,主要是密度场数据和速度场数据,读取完成后,选择飞机的工作模式,如湍流模式、风切变模式等,然后对载机参数、雷达参数等参数进行设置,进行雷达回波仿真。仿真结束后,可以对仿真数据进行数据验证、数据展示、数据保存及导出等操作。
图2 软件工作流程图Fig.2 Flow chart of software operation
为了更有效地实现机载气象雷达回波仿真系统,本文使用C#和Matlab联合编程的方法,C#是微软为.NET Framework量身订做的程序语言,C#拥有C/C++的强大功能以及Visual Basic简易使用的特性,是第1个组件导向的程序语言,同C++与Java一样亦为对象导向程序语言。Matlab是主要面对科学计算、可视化以及交互式程序设计的高级语言,在数学类科技应用软件中在数值计算方面首屈一指而被广泛应用在数字信号处理领域。运用C#与Matlab联合编程,能够充分利用C#友好的界面实现能力以及Matlab强大的数值计算能力。
2.2.1 C#与Matlab联合编程
要实现C#与Matlab联合编程,实现C#调用Matlab中的函数,关键是解决接口问题。通过将Matlab的M文件编译成DLL文件,然后在C#中进行调用以实现C#与Matlab的联合编程。
调用过程流程图如图3所示,具体步骤为:
1)在Matlab中编写函数,如test,调试并保存。
2)在Matlab命令窗口运行命令deploytool,然后在对话框中创建project,将test加入生成的项目,进行编译。
3)在C#中分别添加Matlab中的MWArray.dll文件和上述步骤中生成的test.dll文件。
4)添加调用语句,实现对Matlab函数的调用,完成C#与Matlab的联合编程。
图3 C#调用Matlab函数流程图Fig.3 Process of invoking Matlab function by C#
2.2.2 具体实现过程
为使仿真过程更加条理,在C#进行界面设计时采用菜单形式完成,主要有数据读取菜单、参数设置菜单、雷达回波仿真菜单以及视图菜单。
1)数据的读取
设置openfiledialog对话框,通过StreamReader指令完成对指定目录下风场建模数据的读取,为了方便后续计算,这里将读入的数据进行格式转换,这里将数据都转换成Double类型。
2)参数的设置
参数的设置通过Windows窗体进行实现,在窗体中,每一个参数对应一个TextBox,而每个参数均定义为全局变量,不同的飞行模式下对每个参数进行不同的初始化赋值,如若对某个参数进行修改,直接在TextBox中进行修改即可。
3)雷达回波仿真
雷达回波仿真过程通过C#调用Matlab函数进行实现。首先,在Matlab中编写雷达回波仿真函数,将风场数据及各个参数做为输入,将雷达回波仿真数据做为输出,调试并保存;然后在Matlab命令窗口运行命令deploytool,在对话框中创建project,将雷达回波仿真函数加入project中进行编译;最后在C#完成引用及调用过程。这里需注意的是,调用完成后,输出的参数为MWArray类型,必须进行格式转换,否则会提示类型转化错误。
4)视图显示
视图显示过程通过调用Matlab的画图函数进行实现。将需要画图的函数或数据作为输入,然后调用画图函数进行画图,设置图片不显示,然后将图片按指定的格式保存在指定的位置。在C#进行展示的Windows窗体中添加Panel容器,将保存的图片进行调取,予以显示。
启动机载气象雷达回波仿真系统后,首先弹出系统登陆界面,如图4所示,用户输入正确的用户名及密码后即可进入主界面。
雷达回波仿真系统的主界面如图5所示,界面采用双菜单栏的形式,即在顶部用menuStrip菜单,在左侧用treeView控件添加菜单。系统主要包括数据读取、参数设置、视图显示、数据导出这几个菜单,每个菜单中有相应的子菜单,点击子菜单弹出相应的系统界面。
图6为参数设置界面,在参数设置菜单中,选取雷达回波仿真的飞行模式,然后弹出该飞行模式下的参数设置界面,在参数界面中,对常用的参数进行了初始化,如果对参数修改,输入相应的参数值点击确定即可。
仿真信号功率谱如图7所示,仿真风场模型横向距离为8 000 m,高度为2 000 m,飞机距离风场中心7 000 m,所以在距离飞机0~3 km处只有噪声分布,在3~11 km处为气象目标的回波,能够看出受距离的影响,回波幅度随距离的增加呈现下降趋势,而多普勒速度随距离的变化呈现出反“S”曲线。图8和图9是对仿真信号进行脉冲对法处理所得到的速度分布和谱宽,在图中能够看出在0~3 km的谱宽明显超过其他区域,谱宽反映速度的估计精度,在0~3 km处并没有气象目标,只有噪声存在;而在其他区域,谱宽较小,说明能正确估计速度分布,在速度分布图中,在3~11 km范围内,即气象目标分布范围内,风速呈现反“S”型,符合风切变风场的特征。
图10为流体力学软件进行风场建模时导出的风场建模的网格图、速度分布图以及密度分布图,右侧为相应的风场建模参数。
图11为三维风场风切变雷达回波仿真结果。仿真气象目标为半径4 000 m的圆柱体区域,飞机距中心风场 8 000 m,从-45°~45°进行扫描,得到的扫描结果仿真如图11所示。在图11中,左上图为雷达回波幅度图,能够看出,在气象目标区域有较强的雷达回波,且回波强度随距离的增大而减小;右上图为利用脉冲对法估计得到的径向速度图,能够看出,靠近飞机一侧半圆区域径向速度呈现负值,表示飞机逆风,远离飞机一侧半圆区域径向速度呈现正直,表示飞机顺风;下图是在某一方位上的径向速度分布曲线,能够看出,曲线呈现出明显的反“S”型,这也与风切变的回波特征相符。
本文利用C#软件搭建了机载气象雷达回波仿真平台,对雷达回波仿真的过程进行了说明,实现了不同飞行模式下利用高保真风场建模数据的机载气象雷达回波信号仿真,对雷达回波信号的验证说明回波信号仿真数据的正确性,从而为后续信号处理提供可靠的数据基础。目前所进行的仿真是基于二维风场数据的仿真,而真实场景中,气象目标场景为三维场景,下一步将对三维风场数据进行仿真。
[1]王海彬.基于高频电磁散射理论的电大复杂目标宽带雷达回波快速计算方法[J].电子学报,2010,38(3):561-566.
[2]陈秋菊,莫翠琼.面向识别的雷达回波仿真技术可信度分析[J].雷达科学与技术,2010,8(1):54-59.
[3]赵会芳,许家栋,陈 芳.基于相参脉冲串的多普勒雷达回波仿真[J].计算机仿真,2010(1):17-19.
[4]袁仕继,高勋章,金光虎.极化SAR直线运动目标建模与雷达回波仿真[J].航天电子对抗,2009(5):14-17.
[5]贺治华.直升机的雷达回波仿真研究[J].计算机仿真,2008,25(8):36-39.
[6]李晋生,王钦伟.合成孔径雷达回波仿真技术研究[J].计算机仿真,2005,22(1):268-270.
[7]张晓荣,李 勇,李 滔,等.机载前视风切变雷达回波信号的一种仿真方法[J].系统仿真学报,2009,21(22):7023-7025.
[8]陶 文,李晓波,崔 博.基于C#和Matlab的雷达回波信号仿真软件的实现[C]//中国通信学会第六届学术年会论文集(下),2009:112-117.
[9]FAN YI,WU RENBIAO,MENG ZHICHAO,et al.Wind Shear Signal Simulation of the Airborne Weather Radar[C]//2011 IEEE Radar Conference,2011:710-713.