1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

TÌM HIỂU các kỹ THUẬT điều CHẾ TRONG OFDM (có code bên dưới)

30 594 7

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 30
Dung lượng 1,17 MB

Nội dung

TÌM HIỂU các kỹ THUẬT điều CHẾ TRONG OFDM (có code bên dưới) ............ TÌM HIỂU các kỹ THUẬT điều CHẾ TRONG OFDM (có code bên dưới) ............ TÌM HIỂU các kỹ THUẬT điều CHẾ TRONG OFDM (có code bên dưới) ............ TÌM HIỂU các kỹ THUẬT điều CHẾ TRONG OFDM (có code bên dưới) ............ TÌM HIỂU các kỹ THUẬT điều CHẾ TRONG OFDM (có code bên dưới) ............

ĐỒ ÁN TÌM HIỂU CÁC KỸ THUẬT ĐIỀU CHẾ TRONG OFDM MỤC LỤC DANH MỤC CÁC HÌNH VẼ DANH MỤC CÁC TỪ VIẾT TẮT ASK Amplitude Shilf Keying BASK Binary Amplitude Shilf Keying FSK Frequency Shilf Keying PSK Phase Shilf Keying QPSK Quadrature Phase Shilf Keying BPSK Binary Phase Shilf Keying QAM Quadrature Amplitude Modulation ĐỒ ÁN Trang 5/27 CHƯƠNG GIỚI THIỆU ĐỀ TÀI 1.1 Giới thiệu kỹ thuật điều chế số Điều chế số: trình biến đổi thành phần sóng mang, ví dụ như: tần số, pha , biên độ theo dạng chuỗi số nhị phân đầu vào Vì thế, ta có kiểu điều chế :ASK, FSK , PSK, QAM… 1.1.1 Điều chế dịch biên ASK (Amplitude Shilf Keying) Khái niệm: Trong điều chế ASK, biên độ sóng mang hình sine tần số cao bị biến thiên theo mức luận lý chuỗi tín hiệu số Tổng quát hơn, tín hiệu số có m mức tín hiệu khác Trong trường hợp m=2, ta có điều chế dịch biên nhị phân BASK Hình 1-1: Dạng sóng tín hiệu điều chế số ASK [1] Hình 1-2: Dạng sóng giải điều chế ASK [1] Sơ đồ điều chế ASK: Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 6/27 Hình 1-3: Sơ đồ điều chế ASK [1] Sơ đồ giải điều chế ASK kiểu kết hợp: Hình 1-4: Sơ đồ giải điều chế ASK [1] Ưu điểm: dung sóng mang, dễ thực hiện, thích hợp với truyền tốc độ thấp Nhược điểm: khả bị ảnh hưởng nhiễu cao, đồng khó, áp dụng thực tế Ứng dụng cáp 1.2 Điều chế dịch pha PSK ( Phase Shilf Keying ) Khái niệm: Pha sóng mang hình sine tần số cao bị biến thiên theo mức logic logic chuỗi số Với M=2N số pha trạng thái khác sóng mang, với N số bit nhị phân Điều chế dịch pha có kiểu điều chế M-ary: BPSK, QPSK 1.1.2 Điều chế BPSK: Dạng sóng tín hiệu BPSK: Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 7/27 Hình 1-4: Dạng sóng tín hiệu BPSK [1] Sơ đồ điều chế BPSK: Hình 1-5: Sơ đồ điều chế BPSK [1] Sơ đồ giải điều chế BPSK: Hình 1-6: Sơ đồ giải điều chế BPSK [1] 1.1.3 Điều chế QPSK Khái niệm: QPSK trình điều chế pha sóng mang với trạng thái khác vng góc với Sơ đồ khối giải điều chế QPSK: Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 8/27 Hình 1-7: Sơ đồ khối giải điều chế QPSK [1] Ưu điểm: lỗi, nhạy với nhiễu pha bị mơi trường tần số ảnh hưởng Nhược điểm: dễ sinh tượng sai pha điều chế mức cao, thực mạch điều chế khó Ứng dụng rộng rãi mạng wifi, di động CDMA 1.3 Điều chế FSK ( Frequency Shilf Keying ) Khái niệm: biểu thị bit bit cách sử dụng tần số khác sóng mang Tần số thấp với bit tần số cao với bit Hình 1-8: Dạng sóng tín hiệu điều chế FSK [1] Ưu điểm: so sánh với điều chế ASK FSK bị ảnh hưởng nhiễu hơn, lỗi Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 9/27 Nhược điểm: tốc độ truyền bị hạn chế tần số cao dễ bị nhiễu, đồng thời khó đồng Ứng dụng nhiều truyền số liệu Dùng tần số cao (3-30MHz) để truyền sóng radio cáp đồng trục truyền liệu mang tốc độ 1200bp hay thấp mạng điện thoại 1.4 Điều chế QAM ( Quadratude Amplitude Modulation ) Khái niệm: QAM loại điều chế kết hợp điều biên điều pha Các dạng điều chế QAM : 4-QAM, 16-QAM, 64-QAM Phương pháp điều chế M-QAM phương pháp tăng suất kênh truyền mà không cần tăng công suất hay độ rộng băng thông Dưới ví dụ trạng thái pha tín hiệu 16-QAM Hình 1-8: Giản đồ chòm 16-QAM [1] Mạch điều chế giải điều chế 16-QAM: Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 10/27 Hình 1-10: Mạch điều chế 16-QAM [1] Hình 1-11: Mạch giải điều chế 16-QAM [1] Ưu điểm: kiểu điều chế cho phép tăng dung lượng bit kênh truyền khơng làm tăng dải thơng kênh truyền Vì QAM thích hợp cho ứng dụng tốc độ cao Nhược điểm: công suất phát, trường hợp tăng mức điều chế tăng thêm lỗi Ứng dụng: truyền hình số mặt đất, DVB-T, DiBEG… Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 16/27 Hình 3-1: Thiết kế giao diện GUIDE Để tiện cho việc theo dõi tín hiệu kiểu điều chế khác nhau, tạo guide để hiển thị thông tin mong muốn Ở đây, tơi mơ quan sát tín hiệu ngõ điều chế số, ngã fft, tín hiệu ofdm phía phát, ngõ vào giải điều chế số, ngõ vào fft, tín hiệu ofdm phía thu 1.11 Mơ điều chế ASK OFDM Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 17/27 Hình 3-2: Mơ điều chế ASK OFDM Nhận xét: Các tín hiệu điều chế ASK có phần thực mà khơng có phần ảo điểu chế PSK hay QAM Phần tín hiệu OFDM phát có đoạn tín hiệu nhấp nhơ tăng cao bất thường 1.12 Mô điều chế PSK OFDM Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 18/27 Hình 3-3: Mơ điều chế PSK OFDM Nhận xét: Các tín hiệu vào điều chế PSK có biên độ tối đa 1, giá trị phần thực ảo thay đổi từ -1 đến tùy thuộc vào mức điều chế khác Các tín hiệu OFDM PSK có độ ổn định cao so với OFDM điều chế ASK 1.13 Mơ điều chế QAM OFDM Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 19/27 Hình 3-5: Mơ điều chế QAM OFDM Nhận xét: Tương tự điều chế PSK, nhiên tín hiệu vào điều chế QAM có biên độ lớn Càng nhiều mức điều chế giá trị cao Khi số mức tín hiệu cao kéo theo biên độ tín hiệu OFDM sau qua IFFT lớn Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 20/27 CHƯƠNG KẾT LUẬN OFDM phương pháp truyền tương đối phức tạp kênh vật lý với nguyên lý truyền lượng lớn ký tự thời điểm kỹ thuật đa song mang Kỹ thuật OFDM có nhiều ưu điểm hiệu sử dụng phổ cao, khả chống giao thoa đa đường tốt (nhất hệ thống không dây), đồng thời dễ lọc bỏ nhiễu (các tần số lân cận bị bỏ qua, không sử dụng kênh tần số bị nhiễu) Một ưu điểm quan trọng khác hệ thống sử dụng đa sóng mang sóng mang riêng hoạt động tốc độ bit nhỏ dẫn đến chu kỳ ký tự tương ứng kéo dài Thông qua đồ án này, tơi trình bày điểm hệ thống OFDM mô phần hệ thống gồm khối điều chế số Để nâng cao chất lượng hệ thống này, ta bổ xung thêm kỹ thuật mã hóa, tín hiệu Pilot để ước lượng kênh truyền bên phía thu Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 21/27 TÀI LIỆU THAM KHẢO Hình Ảnh: [1]: https://www.hus.edu.vn, “Các kỹ thuật điều chế số” [2]: http://www.revolutionwifi.net, "PHY Basics: How OFDM Subcarriers Work" Tiếng Việt: [1] Matlab ứng dụng viễn thông- TS.Phạm Hồng Liên, TS.Đặng Ngọc Khoa, TS Trần Thanh Phương, “Matlab” [2] https://www.slideshare.net, “Các kỹ thuật điều chế số” [3] https://vi.wikipedia.org, “OFDM” Tiếng Anh: [1] https://en.wikipedia.org, : “OFDM” Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 22/27 PHỤ LỤC A function varargout = OFDM(varargin) % OFDM MATLAB code for OFDM.fig % OFDM, by itself, creates a new OFDM or raises the existing % singleton* % % H = OFDM returns the handle to a new OFDM or the handle to % the existing singleton* % % OFDM('CALLBACK',hObject,eventData,handles, ) calls the local % function named CALLBACK in OFDM.M with the given input arguments % % OFDM('Property','Value', ) creates a new OFDM or raises the % existing singleton* Starting from the left, property value pairs are % applied to the GUI before OFDM_OpeningFcn gets called An % unrecognized property name or invalid value makes property application % stop All inputs are passed to OFDM_OpeningFcn via varargin % % *See GUI Options on GUIDE's Tools menu Choose "GUI allows only one % instance to run (singleton)" % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help OFDM % Last Modified by GUIDE v2.5 11-Nov-2017 16:15:25 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, 'gui_Singleton', gui_Singleton, 'gui_OpeningFcn', @OFDM_OpeningFcn, 'gui_OutputFcn', @OFDM_OutputFcn, 'gui_LayoutFcn', [] , 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 23/27 end % End initialization code - DO NOT EDIT % - Executes just before OFDM is made visible function OFDM_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to OFDM (see VARARGIN) % Choose default command line output for OFDM handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes OFDM wait for user response (see UIRESUME) % uiwait(handles.figure1); % - Outputs from this function are returned to the command line function varargout = OFDM_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % - Executes on button press in pushbutton1 function pushbutton1_Callback(hObject, eventdata, handles) % M = 4; % QPSK signal constellation no_of_data_points = 64; % have 64 data points block_size = 32; % size of each ofdm block cp_len = ceil(0.1*block_size); % length of cyclic prefix no_of_ifft_points = block_size; % points for the FFT/IFFT no_of_fft_points = block_size; % % B: % +++++ TRANSMITTER +++++ Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 24/27 % % Generate x 64 vector of data points phase representations % data_source = randsrc(1, no_of_data_points, 0:M-1) luachon=get(handles.luachon,'value'); luachon2=get(handles.luachon2,'value'); %- Dieu che so if luachon==1 if luachon2==1 M=4; elseif luachon2==2 M=8; elseif luachon2==3 M=16; elseif luachon2==4 M=32; else M=64; end data_source = randsrc(1, no_of_data_points, 0:M-1); modulated_data =pskmod(data_source, M); axes(handles.axes1); hold off; stem(real(modulated_data),'b'); hold on; stem(imag(modulated_data),'xr'); grid on; xlabel('Data Points (Tan so)'); ylabel('Amplitude'); xlim([1 length(modulated_data)]); ylim([-1 1]); hold off elseif luachon==2 if luachon2==1 M=4; elseif luachon2==2 M=8; elseif luachon2==3 M=16; elseif luachon2==4 M=32; else M=64; Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 25/27 end data_source = randsrc(1, no_of_data_points, 0:M-1); modulated_data =qammod(data_source, M); axes(handles.axes1); hold off; stem(real(modulated_data),'b'); hold on; stem(imag(modulated_data),'xr'); grid on; xlabel('Data Points (Tan so)'); ylabel('Amplitude'); xlim([1 length(modulated_data)]); % ylim([-1 1]); hold off; else M=4; data_source = randsrc(1, no_of_data_points, 0:M-1); for i=1:64 if data_source(i)==0 modulated_data(i)=1; elseif data_source(i)==1 modulated_data(i)=3; elseif data_source(i)==2 modulated_data(i)=5; else modulated_data(i)=7; end end axes(handles.axes1); stem(real(modulated_data)) grid on; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(modulated_data)]); ylim([0 8]); end num_cols=length(modulated_data)/block_size; data_matrix = reshape(modulated_data, block_size, num_cols); cp_start = block_size-cp_len; cp_end = block_size; for i=1:num_cols, ifft_data_matrix(:,i) = ifft((data_matrix(:,i)),no_of_ifft_points); % Bieu IFFT Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 26/27 axes(handles.axes3); if luachon==3 plot(real(ifft_data_matrix),'b'); grid on; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(ifft_data_matrix)]); else hold off; plot(real(ifft_data_matrix),'b'); hold on; plot(imag(ifft_data_matrix),'r'); grid on; hold off; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(ifft_data_matrix)]); ylim([-1 1]); hold off end for j=1:cp_len, actual_cp(j,i) = ifft_data_matrix(j+cp_start,i); end ifft_data(:,i) = vertcat(actual_cp(:,i),ifft_data_matrix(:,i)); end [rows_ifft_data cols_ifft_data]=size(ifft_data); len_ofdm_data = rows_ifft_data*cols_ifft_data; ofdm_signal = reshape(ifft_data, 1, len_ofdm_data); %-Tin hieu ofdm phia phat axes(handles.axes5); if luachon==3 plot(real(ofdm_signal),'b'); grid on; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(ofdm_signal)]); else hold off; plot(real(ofdm_signal),'b'); hold on; plot(imag(ofdm_signal),'r'); grid on; hold off; Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 27/27 xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(ofdm_signal)]); ylim([-1 1]); hold off end % -% E: % +++++ RECEIVER +++++ % -% Pass the ofdm signal through the channel recvd_signal = ofdm_signal; %-Tin hieu ofdm phia thu axes(handles.axes6); if luachon==3 plot(real(recvd_signal),'b'); grid on; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(recvd_signal)]); else hold off; plot(real(recvd_signal),'b'); hold on; plot(imag(recvd_signal),'r'); grid on; hold off; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(recvd_signal)]); ylim([-1 1]); hold off end % Convert Data back to "parallel" form to perform FFT recvd_signal_matrix = reshape(recvd_signal,rows_ifft_data, cols_ifft_data); % Remove CP recvd_signal_matrix(1:cp_len,:)=[]; %-Tin hieu truoc FFT %-Tin hieu ofdm phia thu axes(handles.axes4); if luachon==3 plot(real(recvd_signal_matrix),'b'); Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 28/27 grid on; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(recvd_signal_matrix)]); else hold off; plot(real(recvd_signal_matrix),'b'); hold on; plot(imag(recvd_signal_matrix),'r'); grid on; hold off; xlabel('Data Points (Time)'); ylabel('Amplitude'); xlim([1 length(recvd_signal_matrix)]); ylim([-1 1]); end % Perform FFT for i=1:cols_ifft_data, % FFT fft_data_matrix(:,i) = fft(recvd_signal_matrix(:,i),no_of_fft_points); end % Convert to serial stream recvd_serial_data = reshape(fft_data_matrix, 1,(block_size*num_cols)); if luachon==1 axes(handles.axes2); hold off; stem(real(recvd_serial_data),'ob'); hold on; stem(imag(recvd_serial_data),'xr'); grid on; xlabel('Data Points (Tan so)'); ylabel('Amplitude'); xlim([1 length(recvd_serial_data)]); ylim([-1 1]); hold off elseif luachon==2 axes(handles.axes2); hold off; stem(real(recvd_serial_data),'ob'); hold on; stem(imag(recvd_serial_data),'xr'); grid on; Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 29/27 xlabel('Data Points (Tan so)'); ylabel('Amplitude'); xlim([1 length(recvd_serial_data)]); % ylim([-1 1]); hold off else axes(handles.axes2); stem(real(recvd_serial_data),'b'); grid on; xlabel('Data Points (Tan so'); ylabel('Amplitude'); xlim([1 length(recvd_serial_data)]); ylim([0 8]); end % Giai dieu che so if luachon==1 qpsk_demodulated_data = pskdemod(recvd_serial_data,M); elseif luachon==2 qam_demodulated_data = qamdemod(recvd_serial_data,M); else for i=1:64 if recvd_serial_data(i)==1 demodulated_data(i)=0; elseif recvd_serial_data(i)==3 demodulated_data(i)=1; elseif recvd_serial_data(i)==5 demodulated_data(i)=2; else demodulated_data(i)=3; end end end function luachon_Callback(hObject, eventdata, handles) function luachon_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % - Executes on button press in pushbutton2 function pushbutton2_Callback(hObject, eventdata, handles) Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 30/27 % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; % - Executes on selection change in luachon2 function luachon2_Callback(hObject, eventdata, handles) % hObject handle to luachon2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = cellstr(get(hObject,'String')) returns luachon2 contents as cell array % contents{get(hObject,'Value')} returns selected item from luachon2 % - Executes during object creation, after setting all properties function luachon2_CreateFcn(hObject, eventdata, handles) % hObject handle to luachon2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: listbox controls usually have a white background on Windows % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end Tìm hiểu kỹ thuật điều chế OFDM ... vào mức điều chế khác Các tín hiệu OFDM PSK có độ ổn định cao so với OFDM điều chế ASK 1.13 Mô điều chế QAM OFDM Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 19/27 Hình 3-5: Mơ điều chế QAM OFDM. .. [1] Mạch điều chế giải điều chế 16-QAM: Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang 10/27 Hình 1-10: Mạch điều chế 16-QAM [1] Hình 1-11: Mạch giải điều chế 16-QAM [1] Ưu điểm: kiểu điều chế cho... sát tín hiệu ngõ điều chế số, ngã fft, tín hiệu ofdm phía phát, ngõ vào giải điều chế số, ngõ vào fft, tín hiệu ofdm phía thu 1.11 Mơ điều chế ASK OFDM Tìm hiểu kỹ thuật điều chế OFDM ĐỒ ÁN Trang

Ngày đăng: 09/03/2018, 19:28

TỪ KHÓA LIÊN QUAN

w