- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于Matlab的DDS线性调频信号的仿真应用
3 Matlab软件建模实现线性调频信号
本程序遵照上述软件编程实现线性调频信号的原理图编写,采用.m文件的方式编写,下面是实现的源程序:
%调频信号的累加器实现
clear all;clc %清除所有变量,清屏
M=2^11; %采样的点数
a(1:1:M)=0; %频率累加器的数值
b(1:1:M)=0; %相位累加器的数值
y(1:1:M)=0; %输出的波形数据
K=400; %调频斜率
Kc=10; %初始频率控制字
N=10; %幅度量化位数
L=24; %相位累加器位数
%下面一段实现频率累加器
a(1)=0.5*K; %初始频率步进量
for i=2:1:M
a(i)=a(i-1)+K;
end
%下面一段实现相位累加器
b(1)=Kc+a(1); %相位初始值
for i=2:1:M
b(i)=b(i-1)+(Kc+a(i));
end
%下面一段实现了查找表ROM以及进行幅度量化
for i=1:1:M
y(i)=floor(2^N*cos(2*pi/(2^L)*b(i)));
end
%下面一段画出相应的图形
figure(1);plot(y);axis([0 M,-2^N-100 2^N+100]);
figure(2);freqz(y)
上面这段程序中,有很多的变量,包括调频斜率K、频率控制字Kc、幅度量化位数N以及相位累加器位数L等等,修改不同变量值可以得到各,不同的线性调频信号。具体的实现要根据实际的需要来设置。
4 实验结果
根据上面的程序,取调频斜率为400,频率控制字为10,幅度量化为10位(和所使用的D/A配合),相位累加器为24位,用Matlab仿真得到的线性调频信号的波形和相应的幅频响应如图3和图4所示。
结束语图3 K=400,Kc=10,N=10,L=24的情况下的线性调频信号
图4 针对图3的幅频特性曲线
本文所讲的线性调频信号的产生原理和方法有很好的可扩展性,修改频率累加器的内容即可以实现其他的各种调频信号。作为线性调频信号,由于广泛应用于高分辨率的雷达系统中,因此正确理解线性调频信号的产生原理和掌握其产生的方法是很有现实意义的。在实际应用中主要采用专用DDS芯片或者FPGA来实现线性调频信号(各有优缺点),而本文则基于Matlab软件的良好编程性来验证这一方案,仿真结果较好的证明本方案的可行性,完成了预期的方案设计和论证。
来源:维库开发网