0
点赞
收藏
分享

微信扫一扫

【通信】基于宽带信号的通道均衡的FIR算法附matlab代码

1 简介

本程序在matlab环境下仿真了基于宽带信号的通道均衡的FIR算法,给出了利用FIR均衡后的效果。

2 完整代码

%% 通道均衡FIR滤波仿真
%% 信号生成
%% 信号参数 中心频率 0 MHz, 带宽 200MHz ,脉宽 100微秒 采样结果中取M点
clear;
clc;
M=4096;%采样点数
N=16;%FIR滤波器阶数
Fs=500*10^6;%采样率
B=200*10^6;%带宽
%% 非均衡通道
% 通道参数
a0=1;a1=0.2;
b0=0.1;b1=0.1;
w=linspace(-B*pi/Fs,B*pi/Fs,M);%带宽-B/2~B/2转换到数字域为B/2*2pi*T
for i=1:1:M
C(i)=1;%理想通道
H(i)=(a0+a1*sin(6*w(i)))*exp(sqrt(-1)*(b0*w(i)+b1*cos(5*w(i)))); % H(i) 为待均衡通道的频率响应
b(i)=C(i)/H(i);
end
%% 计算 A 矩阵
for m=1:1:M
for n=1:1:N
A(m,n)=exp(-sqrt(-1)*pi*B/Fs*(2*m-M-1)*(n-1)/(M-1));
end
end
%% 对 A'*A 计算分解
% [G,err]=chol(abs(A'*A));
%
% %% FIR 滤波器结果
% h=inv(conj(G'))*inv(G)*A'*conj(b');
h=inv(A'*A)*A'*conj(b');
f=A*h;
H1=H.*conj(f');
x(1:M-100)=H(51:M-50);
y(1:M-100)=H1(51:M-50);
xlable=linspace(-B/2,B/2,M-100);
subplot(2,2,1)
plot(xlable,abs(x));
axis([-B/2,B/2,0.5,1.5])
title('均衡前通道幅频响应')
xlabel('Hz')
subplot(2,2,2)
axis([-B/2,B/2,0.5,1.5]);
plot(xlable,abs(y))
axis([-B/2,B/2,0.5,1.5])
title('均衡后通道幅频响应')
xlabel('Hz')
subplot(2,2,3)
axis([-B/2,B/2,-15,15]);
plot(xlable,angle(x).*180./pi);
axis([-B/2,B/2,-20,20])
title('均衡前通道相频响应')
xlabel('Hz')
ylabel('度')
subplot(2,2,4)
axis([-B/2,B/2,-15,15]);
plot(xlable,angle(y).*180./pi)
axis([-B/2,B/2,-20,20])
title('均衡后通道相频响应')
xlabel('Hz')
ylabel('度')

3 仿真结果

【通信】基于宽带信号的通道均衡的FIR算法附matlab代码_参考文献

4 参考文献

[1]姚富强, 李勇, 关胜勇,等. 宽带跳频通信系统频域均衡算法[J]. 系统工程与电子技术, 2015, 37(3):6.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

【通信】基于宽带信号的通道均衡的FIR算法附matlab代码_电子技术_02


举报

相关推荐

0 条评论