Thông báo

Collapse
No announcement yet.

Project: Mô phỏng OFDM sử dụng Matlab

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Project: Mô phỏng OFDM sử dụng Matlab

    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 ạ

  • #2
    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')

    Comment

    Về tác giả

    Collapse

    kaiser1991 Tìm hiểu thêm về kaiser1991

    Bài viết mới nhất

    Collapse

    Đang tải...
    X