雷达系统实验指导书-学生用2016_第1页
雷达系统实验指导书-学生用2016_第2页
雷达系统实验指导书-学生用2016_第3页
雷达系统实验指导书-学生用2016_第4页
雷达系统实验指导书-学生用2016_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 雷达系统技术实验指导书桂林电子科技大学信息与通信学院信息对抗系目 录实验一 数字脉冲压缩实现 3实验二 滤波器滤波算法仿真 13实验三 精密时序产生 19实验四 基于FPGA实现脉冲参数测量 51实验一 数字脉冲压缩实现一、 实验目的熟悉数字脉冲压缩原理及实现方法,并基于MATLAB仿真实现。二、 实验设备1、 计算机三、实验内容1. 熟悉数字脉冲压缩原理;2. 基于MATLAB仿真实现数字脉冲压缩。四、实验要求1、预习要求 (1)熟悉MATLAB软件开发流程; (2)熟悉数字脉冲压缩原理及实现方法。2、课后要求 按照实验内容和实验步骤完成实验内容,课后完成实验报告。五、 数字脉冲压缩原理脉

2、冲压缩技术因解决了雷达作用距离与分辨率之间的矛盾而成为现代雷达的一种重要体制,数字LFM(线性调频)信号脉冲压缩就是利用数字信号处理的方法来实现雷达信号的脉冲压缩,脉冲压缩器的设计就是匹配滤波器的设计,脉冲压缩过程是接收信号与发射波形的复共扼之间的相关函数,在时域实现时,等效于求接收信号与发射信号复共轭的卷积。若考虑到抑制旁瓣加窗函数,不但要增加存储器,而且运算量将增加1倍,在频域实现时,是接收信号的FFT值与发射波形的FFT值的复共轭相乘,然后再变换到时域而获得的。若求N点数字信号的脉冲压缩,频域算法运算量大大减少,而且抑制旁瓣加窗时不需增加存储器及运算量,相比较而言,用频域FFT实现脉冲压

3、缩的方法较优,因此选用频域方法来实现脉冲压缩,但是仍需要做大量的运算。脉冲压缩系统可以由两种方法来实现,即时域脉冲压缩系统和频域脉冲压缩系统。时域脉冲压缩处理系统采用FIR滤波,通过对两个有限长度序列进行线性卷积来实现脉冲压缩,滤波器复相关运算量随信号时宽的增加、序列长度的增加迅速增加,完成运算所需的芯片数量也随之迅速增加。频域脉冲压缩处理系统采用高速大容量数字信号处理芯片作为硬件平台,通对原本在时域进行卷积的两个有限长度序列采用傅立叶变换后,在频域相乘,将其乘积反变换至时域的方法,获得脉压处理结果。在序列长度较大时,采取频域处理方法,所需运算量比采取时域处理方法时小的多,完成运算所需的芯片也

4、同样少得多,而且性能指标也优于时域处理方法。时域卷积法时域匹配滤波法等效于求离散接收信号与发射波形离散样本之间的复相关运算 ,在脉冲压缩点数较短且压缩比要求不高的情况下经常采用。其具体算式如下:对于输入为复信号来说,令, (1-1) (1-2)(1-1)式中:分别为采样信号的实部和虚部;(1-2)分别为滤波器系数的实部和虚部。 (1-3) 图1 时域卷积法的数字脉冲压缩时域卷积法实现脉冲源压缩就是一个相关卷积的过程。时域卷积法控制时序简单,处理过程清晰直观。它最大的缺点是运行速度慢,另外一个缺点是时域法需要的横向滤波器的数量随参考码长的变化而变化,工程上不便于实现,缺点之三相对于频域快速卷积法

5、计算量大。 频域FFT法频域脉冲压缩和时域脉冲压缩的不同之处在于实现卷积的方式不同,时域脉冲压缩用非递归滤波器进行数字压缩是直接进行线性时域卷积,而频域脉冲压缩是基于频谱分析的正、反离散傅氏(DFT)法,即用DFT将离散输入时间序列变换为数字谱,然后乘以匹配滤波器的数字频率响应函数,再用IDFT还原成时间离散的压缩输出信号序列。为了实时处理的需要,一般是用FFT及其对应的IFFT来实现这一匹配滤波。根据卷积定理,如果两个以N为周期的序列和 ,其DFT分别为: (1-4) (1-5)时域的卷积等于频域相乘,因此y(n)的N点DFT为:, (1-6)从而可得出: (1-7)那么采用FFT算法,上式

6、可写成: (1-8)匹配滤波器的输出等于输入信号的离散频谱乘上匹配滤波器冲激响应的频谱(即频率响应)的逆变换。这便是用FFT法实现数字滤波的一般公式,因而也是数字脉冲压缩的一般公式。图2说明脉冲压缩匹配滤波器的频域实现方法它对任何雷达波形都能实现匹配滤波功能。图2 频域实现脉冲压缩框图LFM脉冲信号经匹配滤波器得输出信号表达式为:它是一固定载频的信号。当时,包络近似为辛克(sinc)函数。图3 匹配滤波的输出信号上,将此时的脉冲宽度定义为压缩脉冲宽度。LFM信号的压缩前脉冲宽度T和压缩后的脉冲宽度之比通常称为压缩比D,上式表明,压缩比也就是LFM信号的时宽频宽积。六、 实验步骤仿真基于matl

7、ab进行。1、进入MATLAB。2、新建m文件。2.1 LFM信号产生模块仿真 通过在Matlab仿真软件中编写程序,模拟产生数字的LFM信号。观测LFM信号的时域波形以及它的频谱。时宽为200、调频带宽为1MHz的线性调频信号的Matlab 部分程序如下: 仿真图形如图4所示:图4 LFM 的Matlab 仿真图形显然,在调制脉宽内,调制信号的载频是不断增加的。为此信号的载频是线性变化的,故称之为线性调频信号。当然LFM信号的载频也可以线性减少。若载频不是线性变化的调频信号,称为非线性调频。在满足大的时宽带宽积的条件下,线性调频脉冲信号的振幅谱接近矩形函数,频谱宽度近似等于信号的调频变化范围

8、,而与时宽无关。线性调频脉冲信号的相位谱具有平方律的特性。其频谱结构如图5所示:图5 Matlb 中LFM 信号的频谱结构2.2 匹配滤波模块仿真 匹配滤波器的响应是回波信号的镜像共轭,即。其程序编写如下:Matlab仿真结果如下图:图6 匹配滤波器的时域冲击响应对照图4,可知,仿真结果正确。从这两个仿真波形看,匹配滤波器的响应确实是回波信号的镜像共轭。2.3 距离旁瓣抑制仿真本设计选择海明函数作为系统的加权网络的系数,其数学表达式为 海明窗的时域波形如下图:图7 海明窗波形在不加权抑制旁瓣时,脉冲压缩的输出波形应该类似于Sinc波形包络。下图为Matlab 仿真的未加权的脉压输出:图8 未加

9、权的脉压输出波形依据旁瓣抑制理论,在进行旁瓣抑制加权后,脉压输出旁瓣幅度被抑制,主瓣时宽变大,输出结果的信噪比损失。下图是海明加权后的脉压Matlab仿真输出图9 海明加权后的脉压输出比较图8与图9 ,得出结论未加权的脉压输出主瓣旁瓣之比为20db左右,海明加权后输出的主旁瓣之比优于40db。如果在抑制距离旁瓣时选择的窗型不同,则脉冲压缩的结果也不同,依据不同应用场合对脉压性能指标的要求不同,来选择合适的窗型。当窗型分别为三角窗、汉宁窗和海明窗时,脉冲压缩的部分程序如下:脉冲压缩的结果如下图所示:图10 不同窗型的脉压结果由上图10可知,在未加窗时脉压输出的脉冲宽度最小但旁瓣幅度却最大。加三角

10、窗时脉压输出脉宽最大、旁瓣只是仅优于未加窗时的脉压结果,很显然这不是最优的窗型选择。加汉宁窗时脉压输出的时宽比三角窗的小但还是大于未加窗是的脉压输出,然而它的主旁瓣比值是最好的;在旁瓣抑制性能指标要求很高而对脉压比要求又不是太高时,选择汉宁窗就能很好地满足系统的性能要求。加海明窗是脉压输出的时宽仅差于未加窗时的输出,它的输出时宽比加三角窗和汉宁窗都小;它的脉压输出主旁瓣比值由于-50db;因此,在优先考虑脉压比而旁瓣抑制又能够满足指标时,应选择海明加权。本系统选择海明窗进行加权已经满足系统的性能指标要求。折中考虑距离旁瓣抑制,选择海明窗加权可以达到很好的脉冲压缩倍数。2.4高斯白噪声干扰仿真自

11、然界中存在各种影响系统性能的噪声,这些噪声是何时何地都存在的;我们无法完全地消除这些不必要的噪声,可以通过一些必要的有效的措施抑制减弱它们对系统的不良影响。在Matlab 仿真软件中给雷达回波信号LFM信号叠加一个信噪比为20db的高斯白噪声的部分程序如下:调用Matlab软件库中awgn()函数在线性调频信号lfm上叠加一个信噪比为20db的高斯白噪声。其叠加后的仿真波形如下图:图11 加高斯白噪声后的LFM信号考虑到系统中存在噪声时,脉冲压缩Matlab仿真结果如下图:图12 加噪声后脉压输出对比很显然,叠加信噪比为20db的高斯白噪声后LFM的压缩结果差于没有噪声的脉压仿真,同样是海明加

12、权但是叠加噪声后的主旁瓣比值约为-40db,而无噪声脉压仿真的主旁瓣比值约为-50db;两者相差了10db。此时,若要求较高的主旁瓣比,可以选用汉宁窗加权。七、实验思考1多普勒频移对数字脉冲压缩的影响。八、实验报告要求及格式实验报告应在整理与计算实验数据记录的基础上写出。不同的实验类型,要求的实验报告的内容也不同。但每份实验报告都应有如下的报头:雷达对抗技术实验报告姓名 班级 实验组别 同组者 实验日期 指导教师 实验名称实验报告的主要内容应包括:实验目的;实验内容;经过整理的数据及计算结果(列成表格);结论与讨论注意:实验报告要求字迹清楚,数据明了,内容齐全。实验二滤波器滤波算法仿真一、 实

13、验目的熟悉滤波器滤波算法,并基于MATLAB仿真实现。二、 实验设备1、 计算机三、实验内容1. 熟悉滤波器滤波算法;2. 基于MATLAB仿真实现滤波器。四、实验要求1、预习要求 (1)熟悉MATLAB软件开发流程; (2)熟悉熟悉滤波器滤波算法及实现方法。2、课后要求 按照实验内容和实验步骤完成实验内容,课后完成实验报告。五、滤波器滤波算法在目标跟踪过程中,如果利用对每一个时刻目标的测量来确定目标的位置,将给系统的实时计算带来困难,因此,滤波和预测算法占有很重要的地位。而滤波器正是利用目标在运动过程中轨迹连续性的特点,利用目标前一状态位置信息来预测当前状态位置信息,一方面减少了计算量,另一

14、方面在一定程度上排除其他物体对跟踪的影响,较好的保证跟踪的可靠性。滤波器滤波可以实现对匀速和匀加速运动目标进行跟踪,作为Kalman滤波器的简化,算法相对简单因此在实际的测距跟踪等工程中广泛应用。滤波器虽然也能跟踪匀加速度的运动目标,但是不能给出加速度的平滑预测估值,而常系数滤波器可以根据当前观测目标的位置、速度和加速度的状态值预计下一时刻的位置、速度和加速度的平滑估计值,并且能够预计出下一时刻的观测位置和速度的估计值。按照滤波器中所假定的目标运动模型,常系数滤波器的滤波方程可以表示为: (2-1) (2-2) (2-3)预测方程表示为: (2-4) (2-45) (2-6)方程中参数说明:为

15、k时刻的位置估值;为k时刻的速度估值;为k时刻加速度估值;为k时刻预测位置;为k时刻预测速度;为k时刻预测加速度;为k时刻观测位置;T为采样周期;,为系统增益,或分别称为位置增益、速度增益和加速度增益。对于常系数滤波器的增益系数值可以根据经验值确定,通常在给定的情况下,计算和值也有两种方法: (2-7)方法一: (2-8) (2-9)其中R是系统特征方程三重正实根也即滤波器的平滑系数,取,深度平滑时取,而轻度平滑时取。方法二: (2-10) (2-11)对于变系数的滤波器假设滤波器采用三点启动,启动时:,k=1,2,3 (2-12) (2-13) (2-14) (2-15)启动后的N步中,时刻

16、k的参数为: (2-16) (2-17) (2-18)启动N+3步后,保持不变,、与关系为: (2-19) (2-20)距离自动跟踪系统的原理框图如图1所示。回波误差产生器速度支路滤波距离支路滤波速度产生器距离产生器波门产生器波门+R误差计数时钟图1 距离自动跟踪系统原理框图在自动测距系统中,不是直接测量回波脉冲相对与发射脉冲的延迟时间,而是由距离自动跟踪回路产生一个可以移动的波门,与回波信号重合,将回波信号跟踪波门一起送到误差产生器(通常也称之为时间鉴别器或距离比较器),比较的到回波信号偏离跟踪波门中心的距离误差,经滤波器平滑预测后得到平滑距离和预测距离,将预测距离送至波门产生器产生下一个波

17、门,形成闭环跟踪,使误差趋于零,此时波门所在的位置即为测量目标的距离,从而实现对目标回波的自动跟踪。在单独研究滤波器时,为了便于确定较为理想的滤波器增益系数值,将回波信号直接用一个输入的阶跃信号替代,经过采样离散化,通过滤波前设置一个单位的延迟,经过求和模块即可求出输入的距离真实值即量测值与预测距离值之间的差值作为误差输入滤波器,从而实现误差产生器功能。滤波器通过不断的迭代误差值从而实现滤波,减小量测值和预测值之间的误差,形成闭环跟踪,进而实现对目标的正确跟踪定位。此外,因为在现代测量雷达中已普遍采用了中频采样、数字脉压等技术,当前周期的回波信息(如距离误差)需要延迟K个重复周期才能送至测距系

18、统,K大约为23,相当于在距离跟踪回路里引入了一个二阶或三阶的延迟环节,K需要根据实际延迟的重复周期数来确定。引入延迟环后其离散化回路的结构框图如图2所示。图2 引入了K阶延迟环节的II型线性离散系统距离跟踪回路的结构图2中,D代表误差产生器,是单位延时算子,是积分器的传递函数,、分别是距离支路滤波增益系数和速度支路的滤波增益系数,K为延迟的重复周期数。该跟踪回路的闭环传递函数可以表示为:(2-21)当K=0时,图2所示回路的闭环传递函数的表达式为: (2-22)当K=2时,图2所示回路的闭环传递函数的表达式为: (223)当K=3时,图2所示回路的闭环传递函数的表达式为: (2-24)六、

19、实验步骤1、基于Simulink中构造出滤波器模型可以在Simulink中方便地构造出滤波器模型。建立模型时,为了使仿真效果更好,在回路中加入一个延迟环,但在实际应用中通常加入两个到三个延迟环。建立上述模型所需要的系统模块均可在Simulink公共模块库中方便的选用。在Matlab命令窗口中输入simulink或者直接点击菜单栏上的快捷启动按钮,启动Simulink Library Browser并新建一个系统模型文件,命名为abfilter.mdl(Simulink Model File)保存,将需要使用到的模块拖拽到系统模型文件的编辑窗口中。下面将建立滤波器仿真模型需要用到的模块列出如下:

20、(1)系统输入模块库(Source)中的阶跃信号Step模块:产生一个阶跃输入信号,便于观测波形从而进行滤波器增益系数的选择。(2)离散系统模块库(Discrete)中的零阶采样和保持器Zero-Order Hold:输入信号每过一个采样时间更新一次,并且保持到下一次采样(输入信号可以是标量,向量等,将连续信号离散化),对连续的阶跃信号进行采样,使信号离散化;单位延迟模块Unit Delay:线性离散系统的零极点模块Discrete Zero-Pole:实现积分器的传递函数。(3)数学运算库(Math)中的增益模块Gain:设置滤波器的增益系数和;求和模块Sum:求和以及求差值,在滤波器输入部

21、分作为误差产生器,滤波器中实现叠加运算。(4)系统输出模块(Sinks)中的Scope模块:对动态系统的仿真结果或系统模型中指定的信号进行定性分析。这里为了直观地观察到滤波器跟踪预测效果,将一个Scope与输入滤波器的误差信号相连接,另外用一个信号组合器MUX将原始输入的阶跃信号,以及经过滤波器后得到的跟踪预测信号组合起来同时送给另一个Scope1以便于观察二者波形,直观定性的观察滤波器跟踪效果。以Simulink模型中三个基本元素:信号源模块、系统模块和输出显示模块之间的相互关系为建立模的整体思路,结合滤波器原理详细的说明,即可将各个模块连接如图3所示。图3 Alpha-Beta滤波器仿真模

22、型模型建立好之后即可进行系统的仿真分析。Simulink仿真包括两个阶段:初始化阶段和模型执行阶段。(1) 模块初始化。在初始化阶段主要完成以下工作:模型参数传递给Matlab进行估值,得到的数值结果将作为模型的实际参数;展开模型的各个层次,每一个非条件执行的子系统被它所包含的模块替代;模型中的模块按更新的次序进行排序。排序算法产生一个列表以确保具有代数环的模块在产生它的驱动输入的模块更新后才更新;决定模型中有无显示式设定的信号属性,如名称、数据类型等等,并且检查每个模块是否能够接收连接到它们输入端的信号。Simulink使用属性传递的过程来确定为被设定的属性,这个过程将源信号的属性传递到它所

23、驱动的模块输入端作为输入信号;决定所有无显示设定采样时间的模块的采样时间;分配和初始化用于存储每个模块的状态和输入当前的存储空间。(2) 模型执行。一般模型是使用数值积分来进行仿真的。所运用的仿真解算器,及仿真算法,依赖于模型提供的连续状态微分能力。计算微分分为两个步骤:首先按照所排次序计算每个模块的输出;然后,根据当前时刻的输入和状态来决定状态的微分,得到微分向量后再把它返回给解算器,用于计算下一个采样点的状态向量。当新的状态向量计算完毕,被采样的数据源模块和接收模块才被更新。仿真开始时,模型设定待仿真系统的初始状态和输出。每一个时间步中Simulink计算系统的输入、状态和输出,并更新模型

24、来反映计算出的值。在仿真结束时,模型得出系统的输入、状态和输出。因此建模后仿真前,还需要根据系统的要求设置各个模块的参数与系统仿真参数,如果没有正确设置参数则仿真过程中会出现错误和警告,或者得到错误的仿真结果。例如,如果没有正确设置每个模块的采样时间,则经过滤波器滤波显示的波形就是错误的,因为模拟的滤波器模型中既有连续模块也有离散模块,虽然运行时不会有出错警告但是却无法得到预期正确的实验结果。滤波器模型中各个模块参数设置如下:(1) 阶跃信号Step模块:使用系统的默认取值,即单位阶跃信号。(2) 零阶采样和保持器Zero-Order Hold:设置采样时间(Sample time)为1/30

25、0。(3) 单位延迟模块Unit Delay:初始状态(Initial condition)设置为0.0,采样时间设置为1/300,延迟数(Number of delay)取默认值1。(4) 增益模块Gain:将距离支路增益重命名为alpha,速度支路增益重命名为beta。根据经验值暂时设定一个最初的增益取值,经过仿真后不断进行调整,得到一个最佳值,采样时间为1/300,其它值设置为默认值。(5) 线性离散系统的零极点模块Discrete Zero-Pole:设置零点Zeros为0,设置极点Poles为1,增益为1,采样时间设置为1/300。在设置系统模块参数之后,还应使用Simulation

26、菜单下的Configuration Parameters设置系统仿真参数,具体设置如下所述:(1) 仿真时间范围为010s。(2) 使用变步长连续求解器,仿真算法为ode45。(3) 最大仿真步长设置为auto或0.01(要小于采样时间1/300)。(4) 绝对误差为1e-6。(5) 其余仿真参数使用默认取值。设置好各个模块参数以及系统仿真参数,并检查连接无误以后即可对系统模型运行仿真。对模块参数与系统仿真参数进行合适的设置并运行系统进行仿真,仿真结束后打开Scope模块,由它的窗口可以观察到跟踪预测的误差以及跟踪预测波形与原始阶跃函数波形的图像。通常精密跟踪测量雷达测距系统典型的工程技术指标

27、要求重复频率即采样频率一般为585.5322Hz或292.7661Hz,通常仿真时可以设置为300Hz或600Hz,在以上的模块参数设置中将重复频率设置为300Hz。根据经验值最初设定,得到最初的跟踪波形,误差值相对较大,经过仿真调整设定一组和值见表2.1,相应的仿真波形如图4。表2. 1滤波器增益系数仿真值序号距离支路增益系数alpha速度支路增益系数beta10.095080.000888920.15260.00333330.19840.01444a序号1参数对应跟踪预测误差b序号1参数对应实际波形与预测波形比较c序号2参数对应跟踪预测误差d序号2参数对应实际波形与预测波形比较e序号3参数

28、对应跟踪预测误差f序号3参数对应实际波形与预测波形比较图4 三组数对应的据仿真波形图由以上仿真的波形及数据可以看出:当和这两个增益取值较小时,在初始预测时能有效减少跟踪误差,但是滤波跟踪速度较慢;当和这两个增益值取较大值时,滤波器能够较快的跟踪运动目标,但是,初始时不能快速减少跟踪误差值,因此在实际应用中需要综合考虑各种因素,折中选择合适的距离支路增益系数值和速度支路增益系数值。2、滤波器Matlab函数实现由滤波器可以在Matlab中用函数实现,并且Matlab本身具有丰富的内部函数,例如需要用到的零均值高斯白噪声函数,在Matlab中就不需要另外编写噪声函数。图形绘制函数等大大简化了编程问

29、题。要在Matlab函数实现滤波器并且进行相关滤波性能的比较,在了解原理及滤波算法之后,最重要的还要考虑增益系数的选择,在考虑如何选择增益系数的方法之前,先考虑滤波器的主要目的。使用滤波器的主要目的可以从两方面来阐述:一方面,滤波器需要良好的跟踪噪声减少,要求小的a 和b;另一方面,滤波器必须能以尽可能小的残余(跟踪误差)有良好的跟踪机动跟踪能力,要求大的a 和b。这两方面是相互矛盾的,虽然总是要求折中考虑,但平滑方程应建立在对于期望跟踪噪声衰减的最佳折中上。Benedict和Bordner定义了一种瞬时跟踪能力的方法,并将a 和b 的关系表示为:(2-25)这样,可以选择满足上式的a 和b

30、以便使跟踪滤波器跟随一个特定的值变化。在这种情况下,可以根据平滑系数的基础上来选择滤波器的增益系数,其中。增益系数为: (2-26) (2-27)当深度平滑时,轻度平滑时。结合滤波器原理部分的介绍和上面滤波器增益系数的选择说明,可以用Matlab语言编辑M文件命名为ab.m来实现滤波器的功能。调用ab.m函数的句法为:residual,estimate=ab(X0,smoocof,inp,npts,T,nvar)。其中使用的符号说明见表2.2。表2.2 ab.m函数符号说明符号描述状态X0初始状态向量输入smoocof希望的平滑系数输入inp位置测量阵列输入npts输入位置中的点数输入T取样间

31、隔输入nvar加入的噪声方差输入residual位置误差(残余)阵列输出estimate预计位置阵列输出功能实现函数及相关说明如下:functionresidual,estimate=ab(X0,smoocof,inp,npts,T,nvar)rn=1.;X=X0; %读入预测估计的初始状态向量theta=smoocof; %设定平滑系数值w1=1.-(theta3); %计算距离支路增益系数w2=(1.-theta)2)/T; %计算速度支路增益系数PHI=1,T;0,1; %设置传输矩阵PHI,详见原理部分介绍公式(2-13)while rnnpts;XN=PHI*X; %由状态转移矩阵预

32、测下一状态值error=(inp(rn)+normrnd(0,nvar)-XN(1);residual(rn)=error; %输出跟踪预测误差值tmp1=w1*error;tmp2=w2*error; X(1)=XN(1)+tmp1; %计算下一个状态值X(2)=XN(2)+tmp2;estimate(rn)=X(1); %输出距离跟踪预测值rn=rn+1.;endreturn其中使用函数normrnd.m来产生零均值高斯白噪声,零均值高斯白噪声是Matlab统计工具箱的一部分。程序中normrnd(0,nvar)就是产生均值为零,均方误差为nvar的高斯白噪声。为直观的观察函数的滤波效果,

33、可以通过Matlab中绘图功能将信号实际值和跟踪预测值的曲线图形绘出。将目标轨迹设置为,其中采样点数为5000点,时间范围是01秒,误差取500个点,时间范围是00.1秒,噪声方差取值为0.01(可根据实际的环境调整噪声方差)。平滑系数分别取两个不同值0.1和0.9,并分别画出跟踪预测波形和实际波形比较图形以及跟踪预测误差曲线,其中跟踪误差为真值与正态分布的系统噪声的和减去跟踪结果的差值。产生图形对应的部分程序如下:clear all;eps=0.0000001; %设置浮点相对精度npts=5000; %设置输入序列长度del=1./5000.; %采样间隔t=0.:del:1.;inp=1

34、+t.3+.5.*t.2; %产生输入序列(可以通过改变这里设定不同的输入)X0=3,1; %读入初始预测状态向量T=100.*del; %更新时间间隔xi=0.1; %平滑系数(分别设置为0.1和0.9得到两个不同平滑系数的图形)residual,estimate=ab(X0,xi,inp,npts,T,.01); %调用ab.m函数进行滤波通过绘图函数plot分别绘出平滑系数为0.1和0.9时的实际值与跟踪预测值比较图形分别如图5和图7所示,以及跟踪预测残余的误差值分别如图4和图6所示。图5平滑系数=0.1时输入曲线和跟踪预测曲线图6 平滑系数=0.1时的跟踪误差图7 平滑系数=0.9时输

35、入曲线和跟踪预测曲线图8 平滑系数=0.9时的跟踪误差曲线由跟踪结果可以看出,当时,跟踪波形毛刺较多,收敛较快,但误差较大;当时跟踪曲线比较平滑,收敛速度较慢,误差很小。由此可得,平滑系数越小,收敛速度越高,但跟踪误差较大,精度较差;越大收敛速度越慢,但跟踪误差较小,精度较高。改变输入的目标轨迹可以的到不同的波形,跟踪规律与上述波形的规律相似,误差波动范围也相一致。不同的跟踪效果主要取决于滤波器距离支路增益系数和速度支路增益系数的设置,上述方法将二者同一归结于对平滑系数的选取。3、滤波器的函数实现及结果分析与滤波器进行类比,结合滤波器原理部分对滤波器滤波方程和预测方程的介绍并参照增益系数的选择

36、方法中的方法一,同样用Matlab语言对滤波器编程仿真,按照滤波器函数ab.m的编程思路,相似的可以编写出Matlab程序,并保存为M文件abg.m来实现滤波器的功能。它的句法为:functionresidual,estimate=abg(X0,smoocof,inp,npts,T,nvar)。其中符号说明与ab.m函数符号说明相同见表3.1,而函数的不同点主要在于滤波器增益系数的计算以及滤波算法的的区别,这些区别已在原理部分进行了详细的论述。下面对功能函数进行详细说明:functionresidual,estimate=abg(X0,smoocof,inp,npts,T,nvar)rn=1.

37、;X=X0;%读入预测估计的初始状态向量theta=smoocof;%设定平滑系数值w1=1.-(theta3);%计算距离支路增益系数w2=1.5*(1.+theta)*(1.-theta)2)/T;%计算速度支路增益系数w3=(1.-theta)3)/(T2);%计算加速度支路增益系数PHI=1,T,(T2)/2.;0,1,T;0,0,1.;%设置状态转移矩阵while rnnpts; XN=PHI*X;%由状态转移矩阵预测下一状态值 error=(inp(rn)+normrnd(0,nvar)-XN(1);%计算跟踪预测残余误差 residual(rn)=error;%输出跟踪预测误差

38、tmp1=w1*error; tmp2=w2*error; tmp3=w3*error; X(1)=XN(1)+tmp1; %滤波方程组预测下一个状态值 X(2)=XN(2)+tmp2; X(3)=XN(3)+tmp3; estimate(rn)=X(1);%输出距离跟踪预测值 rn=rn+1.;endreturn同样可以通过Matlab中绘图功能将信号实际值和跟踪预测值的曲线图形绘出。设置目标轨迹为,其中采样点数为5000点,时间范围是01秒,误差取500个点,时间范围是00.1秒,噪声方差取值为0.01(可根据实际的环境调整噪声方差)。平滑系数分别取0.1和0.9,并分别画出跟踪预测波形和

39、实际波形比较图形以及跟踪预测误差曲线,其中跟踪误差为真值与正态分布的系统噪声的和减去跟踪结果的差值。产生图形相应的部分程序说明如下:clear all;eps=0.0000001; %设置浮点相对精度npts=5000; %设置输入序列长度del=1./5000.; %采样间隔t=0.:del:1.;inp=1+cos(2.*pi.*7.*t)+0.5.*t.2+t.3; %产生输入序列(可以通过改变这里设定不同的输入)X0=3,1,0; %读入初始预测状态向量T=100.*del; %更新时间间隔xi=0.1; %平滑系数(分别设置为0.1和0.9得到两个不同平滑系数的图形)residual

40、,estimate=abg(X0,xi,inp,npts,T,.01); %调用abg.m函数进行三阶滤波。通过绘图函数plot分别绘出平滑系数为0.1和0.9时相应的实际值与跟踪预测值比较图形分别如图9和图11所示,以及跟踪预测残余的误差值分别如图10和图12所示。图9 平滑系数=0.1时输入曲线和跟踪预测曲线图10 平滑系数=0.1时的跟踪误差图11 平滑系数=0.9时输入曲线和跟踪预测曲线图12平滑系数=0.9时的跟踪误差由跟踪结果可以看出,当时,跟踪波形毛刺较多,收敛较快,但误差较大;当时跟踪曲线比较平滑,收敛速度较慢,误差很小。由此可得,平滑系数越小,收敛速度越高,跟踪误差大,精度越

41、差;越大收敛速度越低,跟踪误差小,精度越高。同样如果改变输入的目标轨迹也可以的到不同的波形,跟踪规律与上述波形的规律相似,即误差波动范围相一致。不同的跟踪效果主要取决于滤波器距离支路增益系数、速度支路增益系数加速度支路增益系数三个系数值的设置,上述方法选择将三者同一归结于对平滑系数的选取。根据需要选取不同的平滑系数值就会的到不同的跟踪效果。通过设置不同的输入信号可以发现,滤波器和滤波器均可以对目标实现有效的跟踪,改变平滑系数的取值会获得不同的跟踪预测效果。七、实验思考1滤波与Kalman滤波关系。八、实验报告要求及格式实验报告应在整理与计算实验数据记录的基础上写出。不同的实验类型,要求的实验报

42、告的内容也不同。但每份实验报告都应有如下的报头:雷达对抗与技术实验报告姓名 班级 实验组别 同组者 实验日期 指导教师 实验名称实验报告的主要内容应包括:实验目的;实验内容;经过整理的数据及计算结果(列成表格);结论与讨论注意:实验报告要求字迹清楚,数据明了,内容齐全。实验三 精密时序产生一、 实验目的雷达定时器是为了能让雷达全系统同步工作,向雷达的各个分系统提供各种同步信号和状态信号等。本实验要求基于FPGA实现雷达定时器的功能。二、 实验设备1 计算机三、实验内容了解基于FPGA的雷达定时器的基本原理,分析了定时器的具体设计方法。使用Verilog HDL语言来进行编程,以Altera公司

43、开发的EDA工具Quartus作为编译、仿真平台,给出真结果。四、实验要求1、预习要求 (1)熟悉FPGA开发流程; (2)了解基于FPGA实现雷达定时器。2、课后要求 按照实验内容和实验步骤完成实验内容,课后完成实验报告。五、 实验原理定时器是雷达系统的重要组成部分,它为雷达全机提供所需的各种主脉冲定时信号和波门定时信号。在最初的设计中,定时器大多采用纯硬件的实现方法,用分立元件搭建逻辑电路,电路复杂,工作量大,可读性差,可靠性低,根据特定的需求设计特定的电路,基本不具备通用性。在采用可编程器件后,可以尽可能在可编程器件内部实现所有功能,减少外围器件,以达到统一板级设计,提高定时精度及可靠性

44、,降低成本,以及实现硬件的灵活配置的目的。FPGA在继承中小规模集成电路EPLD优点的基础上又具备集成度高、输入输出口数量多等特点,将其应用在定时器中,就可以用比以前少得多的硬件来实现比以前复杂得多的逻辑时序关系。随着现代雷达技术的不断发展,对定时器小型化、模块化、通用性、可编程性、可修改性的要求越来越迫切,FPGA的应用则能满足这些方面的需要。定时器模块设计的特点是:采用大容量FPGA,尽可能在FPGA内部实现所有功能,减少外围器件,以达到统一板级设计、提高定时精度及可靠性、降低成本、实现硬件的灵活配置的目的。定时器包括主脉冲定时信号产生模块、波门定时信号产生模块、I/O译码模块、读写模块等

45、部分。I/O译码模块通过对DSP进行译码将数据送往主脉冲定时信号产生模块或波门定时信号产生模块。定时产生模块采用FPGA,结合I/O译码模块的控制等功能构成核心的时序产生电路,可方便地对定时时序进行修改调试,产生各路定时信号,该模块根据各分系统的要求,将各路定时信号以不同的信号形式送往各分系统,此部分电路将留有冗余通道备用,并具有对送往不同分系统的信号延时进行补偿的功能。原理框图见图1。图1 定时器框图雷达系统中的定时器的时序电路设计主要分为主脉冲定时信号的时序电路设计和波门定时信号的时序电路设计两大部分。产生主脉冲定时信号的时序电路,利用外部送来的时钟产生雷达工作重频的方波、发射主脉冲及雷达

46、工作所需的各种主脉冲导前或滞后信号。产生波门定时信号的时序电路则是根据距离码产生正常波门、波门导前或滞后信号。这里以主脉冲定时信号的产生为例介绍定时器的原理。首先设置主脉冲信号为低电平或者高电平,并使计数器在输入时钟下计数,当计数到某个设定值时,使主脉冲信号反向跳变,然后使计数器归零重新计数,这样就可以产生周期性的主脉冲信号,通过设置计数值就可以设置主脉冲的周期了;若指定某一个脉冲为主脉冲,则在此脉冲之前的脉冲称为主脉冲导前信号,在其之后的脉冲称为主脉冲滞后信号,产生这些导前或者滞后脉冲信号的方法与主脉冲信号产生的方法是类似的,都是通过同一计数器在不同的计数值时使信号发生跳变即可。波门定时信号

47、的产生原理、过程与主脉冲定时信号的产生原理、过程类似。现在雷达工作方式多样、定时时序关系变化复杂,控制信号由DSP输出并发送到雷达的定时器和其他系统,定时器的控制部分由I/O译码模块、读写模块等组成。其中I/O译码模块完成的功能是接收DSP送来的数据,并根据送过来的地址数据进行译码,进而控制FPGA完成相应的操作,这些操作包括主脉冲频率选择,模拟目标中心位置数据传输和波门中心位置数据传输;读写模块完成的功能是根据I/O译码模块的控制信号完成主脉冲频率设置,模拟目标中心位置设置以及波门中心位置设置等操作。在完成定时器的基本功能时也可以在FPGA中再加入两个扩展模块,分别是模拟目标模块和目标检测模

48、块,模拟目标模块完成的功能是根据设置好的模拟目标中心位置产生相应的模拟目标;目标检测模块完成的功能是对波门内的目标进行检测,当检测到波门内有目标时输出目标中心所在波门的相对位置。六、 实验步骤编程和仿真都是基于QUARTUS II平台下进行。1、进入QUARTUS II。2、新建工程。3、系统整体设计定时器可分为时序电路部分和控制电路部分,而时序电路部分又可分为主脉冲定时信号的时序电路设计和波门定时信号的时序电路设计两大部分,因此开始设计的首要任务是确定各个信号间的时延关系,然后根据这些信号间的时延关系设置计数值,并使相应的信号在其设定好的计数值发生相应的信号跳变。各个信号的脉宽以及信号间的时

49、延关系示意如图2所示:图2 主脉冲、波门及各导前滞后脉冲信号时序图在设定好各个脉冲信号间的时序关系后,就可以根据他们的时间先后顺序在同一个计数器的不同计数值分别使相应的信号产生跳变从而产生各个脉冲信号,在完成主脉冲信号及各个导前滞后脉冲信号的产生后再加上相应的定时器控制电路部分就可以组成一个完整的定时器系统了。定时器的控制电路部分可分为I/O译码模块、读写模块、模拟目标模块、目标检测模块等。其中I/O译码模块完成的功能是接收DSP送来的数据,并根据送过来的地址数据进行译码,进而控制FPGA完成相应的操作,这些操作包括主脉冲频率选择,模拟目标中心位置数据传输和波门中心位置数据传输;读写模块完成的

50、功能是根据I/O译码模块的控制信号完成主脉冲设置,模拟目标中心位置设置以及波门中心位置设置等操作;模拟目标模块完成的功能是根据设置好的模拟中心目标位置产生相应的模拟目标;目标检测模块完成的功能是对波门内的目标进行检测,当检测到波门内有目标时输出目标中心所在波门的相对位置。定义好各个模块的功能,并在熟悉了Verilog HDL语言的基本语法后,就可以根据各个模块的功能进行编程了。4、系统各个模块设计定时器的整体设计已经在上面进行了论述,由于使用Verilog HDL在Quartus软件中进行程序编写有一个好处,就是可以将整个设计分成相应的模块,再依次编写每个模块的程序,然后分模块进行功能仿真,如

51、果仿真通过或者满足设计的要求时,可以将该模块生成一个原理图元件,等到所分模块的功能都能实现时,再把各个模块通过电路原理图的方式连接起来,最终组成设计的整个系统。这种方法也称为“自顶向下”设计方法。这样设计的好处是可以将一个大的系统先分模块设计,这就允许多个设计者同时设计一个硬件系统中的不同模块,以节省时间;而且这样设计后,对系统进行调试,改错也相对明了,可移植性也大大提高了。本设计就是使用“自顶向下”的方法进行设计的。可将整个系统分为计数器模块、主脉冲模块。下面就分模块一一介绍。4.1 计数器模块设计计数器模块是在外加时钟的促发下进行计数,由于本系统输入的是50MHz的时钟,即每计数一次的时间为20ns,然后通过设置相应的计数值,就可以产生相应频率的主脉冲信号了。该模块的主体程序为:always ( negedge pow_rst or posedge CLK50MHz ) if ( ! pow_rst ) Q_AP = 0; else begin Q_AP = Q_AP+1; if (Q_AP=prf_cn

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论