您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > DSP试验大作业(精)
DSP实验课程序设计报告学院:学号:姓名:指导教师:DSP实验课大作业设计一实验目的在DSP上实现线性调频信号的脉冲压缩、动目标显示(MTI)和动目标检测(MTD,并将结果与MATLAB上的结果进行误差仿真。二实验内容2.1MATLAB仿真设定带宽、脉宽、采样率、脉冲重复频率,用MATLAB产生16个脉冲的LFM,每个脉冲有4个目标(静止,低速,高速),依次做2.1.1脉压2.1.2相邻2脉冲做MTI,产生15个脉冲2.1.316个脉冲到齐后,做MTD,输出16个多普勒通道2.2DSP实现将MATLAB产生的信号,在visualdsp中做脉压,MTI、MTD,并将结果与MATLAB作比较。三实验原理3.1线性调频线性调频信号是指频率随时间而线性改变(增加或减少的信号。本实验中用的是线性调频矩形脉冲信号,其表达式可写为:其中信号的复包络为T为脉冲宽度,为调频斜率,B为调频带宽,也称频偏。3.2脉冲压缩原理脉冲压缩处理将发射的宽脉冲信号压缩成窄脉冲信号,它既可以发射宽脉冲以提高平均功率和雷达的检测能力,又能保持窄脉冲的距离分辨率。本实验中是对线性调频脉冲信号的压缩处理,是通过在发射的长脉冲上加上频率调制,并通过匹配滤波器接收机来压缩接受到的信号,其过程如下图所示:图1LFM脉冲压缩处理框图(频率域)3.3MTI(动目标显示)原理MTI是指利用用杂波抑制滤波器来抑制各种杂波,提高雷达信号的信杂比,以利于运动目标检测的技术。实验中使用的是单延迟对消器,其原理如下图所示:图2单延迟线对消3.4MTD(动目标检测)原理MTD是一种利用多普勒滤波器组来抑制各种杂波,以提高雷达在杂波背景下检测运动目标能力的技术。四实验步骤以下是该实验中设定的几个参数BandWidth=2.0e6------------------------------------------------------------------带宽TimeWidth=42.0e-6----------------------------------------------------------------脉宽Fs=2.0e6---------------------------------------------------------------------------采样率PRT=240e-6---------------------------------------------------------------脉冲重复周期TargetDistance=[30008025802512000]----------------------------------目标距离TargetVelocity=[500-120225]----------------------------------------------目标速度假设接收到的回波数是16个,噪声为高斯随机噪声。4.1在MATLAB中产生线性调频信号。4.2根据目标距离得出目标回波在时域的延迟量,根据目标速度得出多普勒相移,从而在MATLAB中产生4个目标的16个回波串(接收到的回波含噪声)。4.3由匹配滤波理论产生对应于目标回波的滤波系数(脉压系数),在时域中做线性卷积,实现匹配滤波(时域脉压);在频域中做回波信号和脉压系数的FFT,点乘后作逆FFT,实现频域脉压。两者进行比较,讨论其差别。4.4对16个去暂态点后的脉冲串按接收顺序进行排列,用一次相消器(一种滤波方式)实现MTI。4.5做16通道的FFT,实现MTD。4.6在DSP中对MATLAB产生的回波数据和脉压系数进行处理,实现频域脉压。导入DSP的回波数据为时域数据,而脉压系数为频域数据。将导入DSP的时域回波数据进行一次FFT变换到频域,然后将其与频域脉压系数进行点积,得到频域脉压结果。对该结果再做一次IFFT,将频域转换成时域。在这一步中需要调用库函数fft_flp32.asm。该子程序可实现8192点复数的FFT功能。由于C语言中无法实现复数运算,因此,对8192个复数按照实部虚部交替的顺序进行重排列,用长度为16384的数组来存放时域回波数据。频域相乘后,做乘积结果的IFFT,得到脉压结果。做IFFT,仍需调用库函数fft_flp32.asm,此时要通过FFT子程序实现IFFT的功能,要对频域的数据进行处理,才能达到这一目的。4.7对脉压后的数据按照脉冲号重排,相邻序列的数据相减(滑动对消),实现MTI。4.8调用子程序fft_16.asm,做16通道FFT,实现MTD。入口参数为16通道的脉压数据。五实验结果及讨论5.1脉压、MTI、MTD结果分析:5.1.1脉压图2脉压结果如图所示(修改程序,使横轴表示目标距离,以便分析),试验初试是设置的目标距离参数为TargetDistance=[300080258025,12000],现在图中只看到三个目标分别是(300,41.94)、(8025,122.7)、(12000,84.74),因为目标2和目标3的距离参数相同,即使距离参数不同,在小于雷达的距离分辨力的情况下依然不能分辨。对于幅度sqrt(SigPower(k=[1,1,0.5,1],目标1的回波由于雷达闭锁的影响,幅度较低;目标2和目标3的回波叠加在一起,且由于相位的影响,两个回波同相叠加而增强或者反相抵消而减弱,所以在16个回波中目标2和目标3的回波的和幅度有时增强,有时减弱;目标4回波的幅度是一般情况。5.1.2MTI050100150200250300350400450500051015020406080100120140160180X:108Y:1Z:71.2MTIresultX:161Y:9Z:163.4X:41Y:15Z:32.86图2(aMTI三维图图2(bMTI正面图在实验中做的是单延迟对消MTI,即相邻两个脉冲做差,最后只剩下15个脉冲,对于静止目标,两次回波相差不大,互相抵消,回波2此时只剩下目标3的回波;由于MTI滤波器幅频响应特点的影响,目标1和目标3的回波幅度减小大于目标4的回波幅度的减小,所以出现上图的幅度现象;另,由于随机噪声的影响,各次脉冲的幅度有一定的起伏。5.1.3MTD050100150200250300350400450500-8-6-4-2024680200400600800100012001400X:160Y:-7Z:1318MTDresultX:107Y:-5Z:632.6X:107Y:0Z:1330X:40Y:2Z:640.1图3(aMTD三维图图3(cMTDY-ZView对图3中的幅度分析,MTD中的目标的幅度是由不同脉冲相干积累得到,同时由于FFT存在频谱泄漏,主瓣展宽等,所以结果中目标的幅度近似为脉压的16倍。对图3进行多普勒和时延分析,可以看图目标1的距离和速度都已经测出,目标2和目标3由于速度不同,落在了不同的FFT通道,从而区分出来。在该实验参数的设置下目标4的速度-174.16m/s,这显然是和实际不符的,即速度出现了模糊,究其原因为在该实验参数下的测速范围是-199~199m/s,超出这个范围将会产生速度模糊(多普勒模糊)。本实验雷达的多普勒分辨率为对应的径向速度为:其中,N=TotalNumber=SampleNumber*PulseNumber=7680,在PulseNumber不变的情况下,更改PRT可以改变SampleNumber,进而改变雷达的测速范围,下面将更改PRT为150e-6,此时,,测速范围为-318~318m/s,可满足试验要求。结果如下图:050100150200250300-8-6-4-2024680200400600800100012001400X:107Y:-3Z:671.4MTDresultX:107Y:0Z:1351X:160Y:6Z:1072X:41Y:1Z:375X:40Y:1Z:573.8图4解多普勒模糊此时目标4的速度V=228.8,存在一定的误差,但较原参数已有很大的改善。以上方法在仿真实验中可以解决存在的问题,然而在实际中由于目标的速度是未知的,所以上述方法显然是不可行的。实际中为了解决多普勒模糊,采用两种脉冲重复频率,即和来解决多普勒模糊,且选择和,使得它们相互成质数,一种选择是使,在所希望的一个脉冲重复间隔()周期内,两个脉冲重复频率和只在某一个位置上重合,此时:如果,则,如果,则,且真实多普勒为,最后,如果,则,此时,可能发生盲多普勒,可用第三种脉冲重复频率加以解决。5.2DSP结果与Matlab结果对比,误差分析。图5频域脉压的相对误差图6MTI数据的相对误差图7MTD数据的相对误差从上面的图中可以看出,MATLAB和DSP的相对误差均在10-4之内,误差在可以接受的范围内。这样的误差可能是由于算法和不同字长的舍入造成的误差。六实验思考题及心得6.1MTI结果中看不到静止目标答:MTI中利用相邻脉冲差值来检测目标,当目标静止时,两次回波的幅度和相位变化不大(杂波的影响),相差后几乎为零,所以MTI结果中看不到静止的目标。6.3MTD速度/多普勒通道的含义答:不同的多普勒通道对应着不同的速度,目标速度的不同,导致多普勒频移不同,落到不同的多普勒通道。6.2速度模糊如果目标的多普勒频移不超过单个滤波器带宽的一半,即,多普勒滤波组就可以分辨出目标的多普勒频移,否则就会产生多普勒模糊。也就是说,雷达发射脉冲的重复频率PRF不能低于目标最大多普勒频移的2倍,否则雷达无法分辨目标的多普勒信息练习五、编写C程序,建立磁盘文件,练习读写数据一实验目的在VisualDSP4.5中学习并掌握对磁盘文件的读写,并对数据进行简单的运算。二实验内容2.1编写C程序,产生1000个随机浮点数(随机类型和参数自行确定),建立一个磁盘文件,把所有随机数依序、按照相应格式写入文件。2.2关闭文件,再打开此文件,从文件中把数据读入,计算其均值、方差,并写入另一个文件中。三实验原理3.1随机数的产生利用rand(产生所需要的数据;3.2磁盘文件的读写运用格式化文件输入、输出函数:intfprintf(FILE*stream,constchar*format,/*args*/...;intfscanf(FILE*stream,constchar*format,/*args*/...;3.3均值、方差四实验步骤4.1熟悉实验原理4.2编写C程序4.3仿真、调试程序,直至程序满足实验要求五实验结果及讨论5.1产生的随机数据和从外部文件中调入所产生的数据图1数据对比5.2均值和方差图2均值和方差六实验思考题及心得6.1此练习中,计算机和DSP各自起什么作用?如果DSP脱离计算机,此程序还能运行吗?答:在此练习中,计算机提供文件存储的磁盘空间,DSP向计算机磁盘写入或读出数据,并进行运算;在此过程中DSP需要借助计算机的磁盘完成功能,因此,DSP脱离计算机后该程序将无法正常运行。练习六、调试器和EZ-KIT板的性能比较一实验目的对比程序在仿真环境下和EZKIT板上的执行性能,并分析原因。二实验内容2.1把练习二改为执行5次、10次,在软仿真环境下运行,并用记录执行的时间;2.2在EZKIT板上执行此程序,记录执行时间。三实验原理运用VisualDSP中的linearprofiling窗口观察并记录程序在仿真环境和EZKIT板上执行的时间。四实验步骤4.1修改练习二的程序,在程序中加入控制次数的for循环,以控制程序执行5次、10次。4.2编译成功后,打开VisualDSP的linearprofiling窗口观察并记录程序在仿真环境下的执行时间,通过tool/linearprofiling打开linearprofiling窗口。4.3生成LDF文件,点击\tools\expertlinker\creatLDF,按照默认选项,依次选择1:文件保存的路径(与原工程一致)、projecttype选择assembly;2:选择单处理器(singleprocess),
本文标题:DSP试验大作业(精)
链接地址:https://www.777doc.com/doc-7149344 .html