基于matlab的2ASK调制解调仿真
- 實驗目的
- 實驗內容及要求
- 實驗原理
- 振幅鍵控是正弦載波的幅度隨數字基帶信號而變化的數字調制。當數字基帶信號為二進制時,則為二進制振幅鍵控。設發送的二進制符號序列由 0,1 序列組模擬信號源調制器信道解調器受信者噪聲源調制器信道解調器基帶信號輸入噪聲源基帶信號輸出成, 發送 0 符號的概率為 P,發送 1 符號的概率為 1-P, 且相互獨立。該二進制符號序列可表示為:
-
其中:
-
則二進制振幅鍵控信號可表示為:
?
?2AS調制解調流程圖
?
- 實驗代碼
clc
close
a=round(rand(1,10));%產生10個碼元
band=ones(1,500);%帶寬為500
m=length(band);
N=length(a);
c=a(1)*band;
t0=1;
for?i=1:N-1
c=[c,a(1+i)*band];
end
fc=200;
t=linspace(0,t0,N*m);
T=length(t);
w=(-T/2:T/2-1)./t0;
carri=cos(2*pi*fc*t);%載波信號
ask_modu=carri.*c;%調制
figure(1)
subplot(221);plot(t,c);title("基帶信號");axis([0,1,-0.2,1.2]);
subplot(222);plot(w,abs(fftshift(fft(c))));title("基帶信號的頻譜");
subplot(223);plot(t,carri);title("載波信號");
subplot(224);plot(w,abs(fftshift(fft(carri))));title("載波信號的頻譜");
figure(2)
subplot(221);plot(t,ask_modu);title("已調信號");
subplot(222);plot(w,abs(fftshift(fft(ask_modu))));title("已調信號的頻譜");
%信噪比10
snr=10;
ask_1=awgn(ask_modu,snr);
%解調
%經過帶通濾波器
subplot(223);plot(t,ask_1);title('加噪之后的ask調制信號')
subplot(224);plot(w,abs(fftshift(fft(ask_1))));title('加噪之后的ask調制頻譜')
fs=N*m;
fstop1=fc-100;
fstop2=fc+100;
fpass1=fc-20;
fpass2=fc+20;
band1=kais(fs,fstop1,fpass1,fpass2,fstop2);
b_2fsk1=filtfilt(band1,1,ask_1);
figure(3)
subplot(221);plot(t,b_2fsk1);title('經過帶通濾波器之后的時域波形');
subplot(222);plot(w,abs(fftshift(fft(b_2fsk1))));title('經過帶通濾波器之后的時域頻譜');
%經過低通濾波器
fm=N;
at=b_2fsk1.*cos(2*pi*fc*t);
s_lpf1=lpf_kasi(fs,fm,2*fm);
s_lpf=filtfilt(s_lpf1,1,at);
subplot(223);plot(t,s_lpf);title('經過lpf之后的時域波形');
subplot(224);plot(w,abs(fftshift(fft(s_lpf))));title('經過lpf之后的頻譜波形');
%抽樣判決
szl=reshape(s_lpf,length(band),N);%重構數組,將1×5000的數組重構成500×10
for?i=1:N
if?szl(length(band)/2,i)>0.25
????szl(:,i)=1;
else
????szl(:,i)=0;
end
end
?szl=reshape(szl,[1,5000]);%重構數組,將500×10的數組重構成1×5000
figure(4)
subplot(221);plot(t,szl);axis([0,1,-0.2,1.2]);title('解調信號的時域波形');
subplot(222);plot(w,abs(fftshift(fft(szl))));title('解調信號的頻域波形');
- 實驗結果
?
?
?
?
總結
以上是生活随笔為你收集整理的基于matlab的2ASK调制解调仿真的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微元素——答题
- 下一篇: ask调制与解调matlab仿真,ask