信道模擬編程
① 求一個MATLAB信道模擬的實例
無線信道?
高斯白雜訊信道還行
n=randn(1,1000);%高斯白雜訊
x=rand(1,1000)%[-1,1]上均勻分布
for i=1:1000
if (x(i)>0.5) or (x(i)==0.5)
x(i)=1;
elseif x(i)<0.5
x(i)=0;
end;
end;%0與1均勻出現的信號
y=x+n;
e=0;
for i=1:1000
if (y(i)>0.5) or (y(i)==0.5);
y(i)=1;
elseif y(i)<0.5;
y(i)=0;%判決
end;
if y(i)~=x(i);
e=e+1;%誤碼次數
end;
end;
P=e./1000;%誤碼率
還有什麼判決門限都可以修改的
自己按這個修改就可以了
② 如何用Matlab實現高斯信道模擬
Tz是要輸入的信號,然後通過下面代碼對它加上方差為0.2,均值為0的高斯雜訊
len=length(Tz);
std_val=0.2;
m=std_val*randn(1,len);%加入高斯雜訊
Tz=Tz+m;
③ MIMO無線信道模型的matlab模擬源程序
我最近下載了一個WINNER II的MIMO信道模型,你可以去看一下,有點復雜,不過文件比較全,其中D1.1.2 是信道模型的說明。網址:www.ist-winner.org/deliverables.html ; 源代碼及說明可以再這個網址里找到:www.ist-winner.org/phase_2_model.html
源程序裡面有幫助文件,解釋了函數的用處,我建議多考慮輸入輸出,注意函數要干什麼而不要太糾結於函數的具體。
④ BSC信道模擬
聲音空洞
這景色黑暗而荒蕪
彷彿有不詳哈哈的東西
在暗處潛伏著
夜是個舞者
在夜與清晨之間的
⑤ 用Matlab實現AWGN信道模擬
function recieve=awgnchan(transmit,snr,offset)
noise_trans=awgn(transmit,snr,'measured'); %經過高斯白雜訊信道
%noise_trans=transmit; %不加雜訊
for i=1:length(noise_trans) %給信號加頻偏
recieve(i)=noise_trans(i)*exp(1j*2*pi*i*offset);
end
⑥ 如何用MATLAB進行無線信道模擬
matlab自帶了一個mimo信道的模塊,在block simulink里,這個簡短不了;
部分參考如下:
SNR=0; %定義信噪比為0HZ
A=10^(SNR/10); %信噪比的單位轉換關系式
Im=eye(1); %這里的"1"為發射天線和接收天線兩者數目少的根數
sum=0; %初始化sum為0
for i=1:10000 %程序循環10000次
H=randn(1,4); %產生高斯信號源
Q=H*H'; %求威沙特矩陣
sum=sum+log2(det(Im+A*Q/4)); %10000次循環得到的信道容量總和
end
C=sum/10000 %10000次循環的平均值
⑦ 求matlab來模擬無線信道的程序
是要高斯雜訊和頻率的關系函數嗎?
⑧ 我想問一下,OFDM信道估計用matlab模擬怎麼設計啊具體流程我不太懂,有沒有高手給我講下流程啊
你好 希望可以幫到你
%本程序用於OFDM基本原理模擬
%數據調制採用QPSK
clear all; clc;
%*****************參數設置部分**********************
SNR=10; %信噪比取值,dB為單位
fl=128; %設置FFT長度
Ns=6; %設置一個幀結構中OFDM信號的個數
para=128; %設置並行傳輸的子載波個數
gl=32; %設置保護時隙的長度
%***************發送端部分*************************
Signal=rand(1,para*Ns*2)>0.5; %產生0,1隨機數列,符號個數為para*2*Ns
%for i=1:para
%for j=1:Ns*2
% SigPara(i,j)=Signal(i*j); 錯誤的,作者是傻X
%串並轉換,將隨機產生的二進制矩陣變換為行數為para,列數為2*Ns的矩陣
%end
%end
SigPara=reshape(Signal,para,2*Ns);
%***********進行QPSK數據調制,將數據分為兩個通道**************
for j=1:Ns
ich(:,j)=SigPara(:,2*j-1);
qch(:,j)=SigPara(:,2*j);
end
kmod=1./sqrt(2);
ich1=ich.*kmod;
qch1=qch.*kmod;
x=ich1+qch1.*sqrt(-1); %產生復信號
y=ifft(x); %通過傅里葉反變換,將頻域數據轉換為時域數據
ich2=real(y); %I信道取變換後的實部
qch2=imag(y); %I信道取變換後的虛部
%*******************插入保護間隔*******************
ich3=[ich2(fl-gl+1:fl,:);ich2];
qch3=[qch2(fl-gl+1:fl,:);qch2];
%******************並串轉換*********************
ich4=reshape(ich3,1,(fl+gl)*Ns);
qch4=reshape(qch3,1,(fl+gl)*Ns);
%*****************形成復數發射數據***************
TrData=ich4+qch4.*sqrt(-1);
ReData=awgn(TrData,SNR,'measured');
%接收端 移去保護時隙
idata=real(ReData);
qdata=imag(ReData);
idata1=reshape(idata,fl+gl,Ns);
qdata1=reshape(qdata,fl+gl,Ns);
idata2=idata1(gl+1:gl+fl,:);
qdata2=qdata1(gl+1:gl+fl,:);
%********FFT*****************
Rex=idata2+qdata2*sqrt(-1);
ry=fft(Rex);
ReIchan=real(ry);
ReQchan=imag(ry);
ReIchan=ReIchan/kmod;
ReQchan=ReQchan/kmod;
%*******QPSK逆映射*********
for j=1:Ns
RePara(:,2*j-1)=ReIchan(:,j);
RePara(:,2*j)=ReQchan(:,j);
end
ReSig=reshape(RePara,1,para*Ns*2);
%符號抽樣判決
ReSig=ReSig>0.5;
figure
subplot(2,1,1)
stem(ReSig(1:1000))
legend('輸出數據')
grid
subplot(2,1,2)
stem(Signal(1:1000))
legend('輸入數據')
grid
%end of script file
⑨ 幾個問題關於Matlab編寫BPSK信號通過AWGN信道的模擬(在線跪求大神,不勝感激)!!!
求一份完整的Matlab編寫BPSK信號通過AWGN信道模擬過程的程序。最好能有注釋。在線求啊 主程序部分: %programm 3-1 %bpsk.m % % Simulation program
⑩ 無線通信模擬用哪些程序或軟體
一般都用Matlab中的Simulink做無線通信的模擬。Matlab命令欄中輸入「simulink」(不輸入引號)。其中,在左面列出的庫中有Communications Blockset,可以在新建文檔中拖入模塊,如信道,調制方式,CRC校驗,編碼方式等等,進行系統級的模擬。
祝學習愉快!