?? multipathfading.m
字號(hào):
%多徑衰落信道
%按F5開始運(yùn)行
%主要用于多徑無線接口
%多徑衰落信道公式和圖形
%M文件運(yùn)行后,輸入顯示為藍(lán)色
%輸出為紅色, 輸出載波變動(dòng)、增加、減弱
% L
%a=an*exp(-j*2*pi*fc*nT)
%c=a*exp(-j*2*pi*fc*time_1);
%g=int(c*sin(B*(v-n*T))/(B*(v-n*T)),v);
%x=g*[zeros(1,100),signal_in]
%signal_out=symsum(x,time_1,0,N);
% k
% S(t)--------T-----T-----T-----T-------------! Delay
% ! ! ! ! ! !
% ! ! ! ! ! !
% *g0 *g1 *g2 *g3 *g4 --- *gN response
% ! ! ! ! ! !
% ! ! ! ! ! !
% !-----!-----!-----!-----!----------!-----Sum----r(t)signal out
close all;
N_path=5; %設(shè)定多徑時(shí)延個(gè)數(shù)為N個(gè)
f=2; %信號(hào)頻率取f=2kHZ
f_c=5; %未調(diào)制的載波頻率,f_c>=2f
an=1; %設(shè)定衰減系數(shù)
N_point=1000; %對(duì)信號(hào)取點(diǎn)總數(shù)
B=10; %設(shè)定系統(tǒng)帶寬(T=1/B),信道最大傳輸速率為20Mbps
%在無噪情況下,B=R/2,R/2=10*1024*1024b/s約等于10b/us
T=1/B %采樣周期ms
time_1 = (linspace (0, N_path, N_point)); %時(shí)間單位為ms
x_min=-0.1;
x_max=0.1;
y_min=0;
y_max=1; %定義畫圖范圍
signal_in = sin(2*pi*f*time_1); %輸入正弦波
plot (time_1, signal_in, 'b') %藍(lán)色輸入信號(hào)
syms x; %定義變量x
grid on; %畫網(wǎng)格線
xlabel('時(shí)間');ylabel('振幅');
title('多徑衰落信道信號(hào)')
hold on
signal_1=zeros(1,N_point); %定義輸出信號(hào)長(zhǎng)度
for n = 1:1:N_path %疊代
a=an*exp(-j*2*pi*f_c*n*T); %
a_1=a*exp(-j*2*pi*f_c*time_1(n)); %時(shí)延的復(fù)衰減
c=a_1*exp(-j*2*pi*f_c*time_1(n)); %定義復(fù)低通沖激響應(yīng)
% c=a*exp(-j*2*pi*f_c*x); %定義復(fù)低通沖激響應(yīng)
gg=int(c*sin(pi*B*(x-n*T))/(pi*B*(x-n*T)),x,0,N_path*T); %沖激響應(yīng)函數(shù)
g=double(gg); %將符號(hào)常數(shù)轉(zhuǎn)變?yōu)閿?shù)值常數(shù)
s_1=signal_in/cos(2*pi*f_c*time_1(n));
signal_1=signal_1+g*[zeros(1,n*N_point/N_path*T),s_1(1:end-n*N_point/N_path*T)]; %輸出信號(hào)
signal_out=signal_1+signal_in;
plot(time_1,signal_out,'g') %紅色信號(hào)輸出線
pause (0.5) %時(shí)間間隔
end
plot(time_1,signal_out,'r') %紅色信號(hào)輸出線
figure;
xlabel('頻率');ylabel('振幅');
title('多徑衰落信道信號(hào)');
grid on; %畫網(wǎng)格線
hold on
f_out=-0.5:1/N_point:0.5-1/N_point; %對(duì)輸出頻譜圖橫軸fo取點(diǎn)
signal_ff=fft(signal_out); %進(jìn)行FFT變換
signal_fff=signal_ff/max(signal_ff); %歸一化處理
signal_f=fftshift(abs(signal_fff)); %歸攏處理
plot (f_out,signal_f,'r') %紅色頻譜圖
axis([x_min x_max y_min y_max]) %設(shè)定坐標(biāo)軸取值范圍
hold off
figure;
xlabel('頻率');ylabel('振幅');
title('輸入信號(hào)');
grid on; %畫網(wǎng)格線
hold on
f_out=-0.5:1/N_point:0.5-1/N_point; %對(duì)輸出頻譜圖橫軸fo取點(diǎn)
signal0=sin(2*pi*f*time_1);
signal1=fft(signal0); %進(jìn)行FFT變換
signal2=signal1/max(signal1); %歸一化處理
signal3=fftshift(abs(signal2)); %歸攏處理
plot (f_out,signal3,'r') %紅色頻譜圖
axis([x_min x_max y_min y_max]) %設(shè)定坐標(biāo)軸取值范圍
%plot (f_out,abs(signal_f),'r') %紅色頻譜圖
hold off
%signal_out=zeros(1,2000)
%for n = 1:1:N %疊代
%c=a*exp(-j*2*pi*fc*time_1(n)); %定義復(fù)低通沖激響應(yīng)
%gg=int(c*sin(B*(v-n*T))/(B*(v-n*T)),v); %沖激響應(yīng)函數(shù)
%g=vpa(gg); %將符號(hào)常數(shù)轉(zhuǎn)變?yōu)閿?shù)值常數(shù)
%signal_out=signal_out+g*[zeros(1,n*100),signal_in,zeros(1,(N-n)*100)];%輸出信號(hào)
%plot (time_1,(signal_out),'r') %紅色輸出線
%pause (0.5) %時(shí)間間隔
%end
%for n =1:1:N %疊代
%c=a*exp(-j*2*pi*fc*time_1(n)); %定義復(fù)低通沖激響應(yīng)
%g=int(c*sin(B*(v-n*T))/(B*(v-n*T)),v); %沖激響應(yīng)函數(shù)
%x=g*[zeros(1,n*100),signal_in(1:end-(n*100))];
%signal_out=symsum(x,1,N) %輸出信號(hào)
%plot (time_1,(signal_out),'r') %紅色輸出線
%pause (0.5) %時(shí)間間隔
%end
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -