em đang làm project này mà tìm hiểu các thông tin về OFDM mà cảm thấy mơ hồ quá, ai hướng dẫn em làm bài này với, thank các bác ạ
Project: Mô phỏng OFDM sử dụng Matlab
Collapse
X
-
Tags: None
-
gửi bạn code mà mình viết.
mình mô phỏng trong trường hợp mô hình kênh chỉ có fading
cái này bạn có thể thấy rằng tỷ lệ lỗi bit không được cải thiện nhiều lắm vì ofdm nó có thể chống lại nhiễu ISI.
mình chưa hiểu lắm về kênh fading nên chưa mô phỏng, bạn có thể dựa vào cái này để phát triển lên kênh fading
% truyen dan ofdm
% su dung dieu che 16 QAM
% cp=1/4, cai nay minh se khong mo phong ve toc do
% vi khi mo phong toc do khong quan trong lam.
% so diem IFFT/FFT=64
%fc= 200 H
clear all
clc
close all
N=10^6; %so bit mo phong
n= 64; %so diem fft va ifft
x= randsrc(1,N,[-3 -1 1 3]) + j*randsrc(1,N,[-3 -1 1 3]);
scatterplot(x);title('chom sao tin hieu')
%bien doi noi tiep song song
a=64*ceil(N/64) - N;
a1= ones(1,a);
x1=[x a1]; % them cac bit 0 vao cuoi tin hieu
x1=reshape(x1,64,ceil(N/64)); % tao ma tran 64 hang , va N/64 cot
% bien doi ifft
for ii= 1:size(x1,2)
a= x1(:,ii);
b=ifft(a,64);
y(:,ii)=b;
end
% chen cp
cp=1/4;
cp=cp*n;
for ii=1:size(y,2)
a=y(:,ii);
b=a(size(y,1)- cp +1:size(y,1));
y1(:,ii)=b;
end
y=[y1;y];
% ve ky hieu dau tien
n=size(y,1);
t=1:n;
figure(2)
subplot(2,1,1)
plot(t(1:cp),real(y((1:cp),1)),'r',t(cp+1:n),real( y(cp+1:n,1)),'b');
title('phan thuc ky hieu ofdm thu nhat')
legend('phan cp','ky hieu ofdm chua chen cp')
subplot(2,1,2)
plot(t(1:cp),imag(y((1:cp),1)),'r',t(cp+1:n),imag( y(cp+1:n,1)),'b');
title('phan thuc ky hieu ofdm thu nhat')
legend('phan cp','ky hieu ofdm chua chen cp')
% kenh truyen
% chuyen doi song song noi tiep
[a1 b1]= size(y);
y=reshape(y,1,a1*b1);
% gia su dang truyen trong tin hieu bang goc,
% neu can co the nhan phia truyen voi exp(-j*2*pi*fc*t)
%phia thu nhan voi exp(-j*2*pi*fc*t)
% cong nhieu awgn
snr=linspace(5,15,7);% SNR don vi dB
for ii=1:length(snr)
y1=awgn(y,snr(ii),'measured');%cong nhieu
%bien doi noi tiep thanh song song
y3=reshape(y1,a1,b1);
%loai bo cp
y4=y3(cp+1:size(y3,1),
;
% bien doi fft
for iii=1:size(y4,2)
sig= y4(:,iii);
sig=fft(sig,64);
re(:,iii)=sig;
end
re;
[a b]= size(re);
% bien doi song song thanh noi tiep
res=reshape(re,1,a*b);
%loai bo cac so 0 da them vao ban dau
res=res(1:N);
% khoi phuc tin hieu
res=round(res);
% dem bit loi
n_err=0;
hat=res-x;
for i=1:length(hat)
if abs(hat(i)) ~= 0
n_err=n_err+1;
end
end
ber(ii)=n_err/N;
end
figure(3)
semilogy(snr,ber,'-*r')
Bài viết mới nhất
Collapse
-
Trả lời cho Nhờ ae hướng dẫn sửa máy bắn cosbởi Nexus 6PE k biết vẽ nên mới đi hỏi nè
-
Channel: Điện tử dành cho người mới bắt đầu
04-10-2026, 09:13 -
-
bởi thaodmttChào các bác kỹ sư nhúng,
Hôm nay mình muốn trao đổi về vấn đề an toàn khi nạp firmware từ xa (FOTA). Khi triển khai hàng trăm thiết bị ở xa, rủi ro lớn nhất là đang cập nhật firmware thì mất điện hoặc rớt mạng giữa chừng khiến...-
Channel: Hệ thống nhúng
02-10-2026, 15:01 -

Comment