1. Trang chủ
  2. » Luận Văn - Báo Cáo

Cải thiện chất lượng và dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng

144 9 0

Đ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

Đại Học Quốc Gia Tp Hồ Chí Minh TRƯỜNG ĐẠI HỌC BÁCH KHOA HUỲNH ĐỨC HẠNH CẢI THIỆN CHẤT LƯỢNG VÀ DUNG LƯỢNG HỆ THỐNG THÔNG TIN KHÔNG DÙNG DÃY ANTEN THÍCH NGHI BĂNG RỘNG Chuyên ngành : KỸ THUẬT ĐIỆN TỬ MÃ NGÀNH : 605270 LUẬN VĂN THẠC SĨ                   TP HỒ CHÍ MINH, tháng 12 năm 2008  CƠNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Cán hướng dẫn khoa học : (Ghi rõ họ, tên, học hàm, học vị chữ ký) Cán chấm nhận xét : (Ghi rõ họ, tên, học hàm, học vị chữ ký) Cán chấm nhận xét : (Ghi rõ họ, tên, học hàm, học vị chữ ký) Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 26 tháng 12 năm 2008 Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị Hội đồng chấm bảo vệ luận văn thạc sĩ) Xác nhận Chủ tịch Hội đồng đánh giá LV Bộ môn quản lý chuyên ngành sau luận văn sửa chữa (nếu có) Chủ tịch Hội đồng đánh giá LV Bộ môn quản lý chuyên ngành TRƯỜNG ĐH BÁCH KHOA TP HCM PHÒNG ĐÀO TẠO SĐH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc Tp HCM, ngày 30 tháng 11 năm 2008 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Huỳnh Đức Hạnh Phái: Nam Ngày, tháng, năm sinh: 01 – 03 – 1974 Nơi sinh: Tp HCM Chuyên ngành: Kỹ Thuật Điện Tử MSHV:01407337 I- TÊN ĐỀ TÀI: Cải thiện chất lượng dung lượng hệ thống thông tin không dây dung dãy anten thích nghi băng rộng II- NHIỆM VỤ VÀ NỘI DUNG: Tổng quan phương pháp liên quan đến đề tài Tìm hiểu sở lí thuyết anten thích nghi tạo búp sóng Tìm hiệu kỹ thuật tạo búp sóng Ứng dụng tạo búp sóng băng rộng miền tần số cho dãy anten thích nghi băng rộng Mô đánh giá chất lương, dung lượng hệ thống với ứng dụng tạo búp sóng băng rộng miền tần số cho dãy anten thích nghi băng rộng III- NGÀY GIAO NHIỆM VỤ (Ngày bắt đầu thực LV ghi QĐ giao đề tài): 15 – 06 – 2008 IV- NGÀY HOÀN THÀNH NHIỆM VỤ: 30 – 11 – 2008 V- CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên): TS ĐỖ HỒNG TUẤN CÁN BỘ HƯỚNG DẪN (Học hàm, học vị, họ tên chữ ký) CN BỘ MÔN QL CHUYÊN NGÀNH LÍ LỊCH TRÍCH NGANG HỌ VÀ TÊN : Huỳnh Đức Hạnh PHÁI : NAM NGÀY SINH : 01 – 03 – 1974 NƠI SINH : TP HCM ĐỊA CHỈ : 150 tỉnh lộ 8, ấp 2A, Xã Hòa Phú, Huyện Củ Chi, Tp.HCM QUÁ TRÌNH ĐÀO TẠO ĐẠI HỌC : Từ 1995 – 2000, sinh viên khoa Điện - Điện tử, thuộc trường Đại học Bách Tp HCM CAO HỌC : từ 2007 đến 2009, học viên cao học ngành Kĩ thuật Điện tử trường Đại học Bách Khoa Hồ Chí Minh Q TRÌNH CƠNG TÁC Từ năm 2000 đến công tác Trung tâm viễn thông khu vực II Địa chỉ: 137 Pasteur, F4, Q3, Tp HCM Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Lời Cam Đoan Tơi xin cam đoan cơng trình nghiên cứu riêng dựa sở tài liệu tham khảo “Các số liệu, kết nêu luận văn trung thực chưa cơng bố đâu cơng trình khác” Huỳnh Đức Hạnh HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -i- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Lời Cảm Ơn! Tôi xin bày tỏ lời biết ơn sâu sắc tới thầy TS Đỗ Hồng Tuấn cô TS Phạm Hồng Liên tận tình hướng dẫn suốt trình làm luận văn Đặc biệt,sự bảo tận tình trình thực luận văn thầy TS Đỗ Hồng Tuấn có ý nghĩa vơ to lớn để tơi hồn thành luận văn Tơi xin bày tỏ lịng biết ơn đến thầy khoa điện tận tình truyền đạt kiến thức thời gian học trường Tôi xin cảm ơn bạn học viên lớp Cao Học Kỹ thuật Điện tử 2007 góp ý, trao đổi quan trọng trình thực luận văn Cuối cùng, xin cảm ơn bố mẹ, tất gia đình, bạn bè, người thân trực tiếp hay gián tiếp giúp đỡ, chia sẻ, động viên nhiều để hồn thành luận văn TP HCM tháng 12 năm 2008 Huỳnh Đức Hạnh HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -ii- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Tóm tắt Trong năm gần đây, tăng trưởng nhanh số lượng người sử dụng mạng không dây, đặc biệt lĩnh vực thông tin di động Sự tăng trưởng nhanh thơng di động địi hỏi có thêm dung lượng hệ thống thông qua sử dụng hiệu phổ tần số giữ mức nhiễu mức nhiễu giao thoa thấp tốt Trong quản lý tài nguyên vô tuyến ngày nay, anten dãy thích nghi có vai trị quan trọng vấn đề tăng dung lượng hệ thống kiểm sốt nhiễu giao thoa thơng tin di động Anten dãy thích nghi hệ thống anten mà phần tử anten phân chia không gian sử dụng xử lý tín hiệu nhận với xử lý tín hiệu số Anten dãy thích nghi làm giảm nhiễu giao thoa đồng kênh sử dụng hiệu băng thông việc hướng búp sóng có độ lợi cao hướng mong muốn độ lợi thấp hướng không mong muốn cách thích nghi, mặt kỹ thuật ta gọi tạo búp sóng thích nghi Bộ tạo búp sóng thích nghi cho phép trạm gốc hướng búp sóng tới đến hướng nguồn trực tiếp tạo mức không đến nguồn nhiễu giao thoa, từ cải thiện chất lượng tín hiệu Anten thơng minh hay dãy anten thích nghi giải pháp tốt để tăng dung lượng hệ thống hiệu suất mạng thông tin di động tương lai Trong hệ thống không dây hệ tương lai, yêu cầu tăng cao dung lượng đòi hỏi cần sử dụng tín hiệu băng rộng hệ thống truyền dẫn (ví dụ hệ thống UWB) Do luận văn nghiên cứu sử dụng tạo búp sóng thích nghi băng rộng cho hệ thống anten thông minh tương lai Hiện hầu hết giải thuật cho anten thông minh sử dụng dùng cho tạo búp sóng băng hẹp [5] Phương pháp tạo búp sóng băng rộng kiểu truyền thống miền thời gian sử dụng lọc TDL (tapped delay line) lọc mở rộng tần số [5] Ở HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -iii- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn đề nghị phương pháp để tạo búp sóng băng rộng miền tần số, tín hiệu băng rộng từ phần tử anten chuyển đổi sang miền tần số cách sử dụng chuyển đổi fourier nhanh (FFT) nhóm tần số tín hiệu nối trọng số phức Pha trọng số phức lựa chọn độc lập thích hợp đồ thị hướng tính tạo búp sóng khơng đổi theo tần số băng tần Trong luận văn hướng đến việc sử dụng tạo búp sóng thích nghi băng rộng miền tần số cho dãy anten thích nghi để cải thiện chất lượng dung lượng hệ thống thông tin không dây băng rộng tương lai HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -iv- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Abstract In recent years there has been a rapid growth in the number of wireless users, particularly in the area of mobile communications This rapid growth in mobile communications demands for more system capacity through efficient utilization of frequency spectrum and also keeping the Interference as low as possible In today’s Radio resource management, Adaptive array antennas have an important role in increasing the system capacity and controlling the interference in mobile communications Adaptive array antenna is an antenna system, which uses spatially separated antennas called array antennas and processes the received signals with a digital signal processor Simply speaking these array antennas can reduce the co channel interference and effectively utilize the bandwidth by steering a high gain in the direction of interest and low gains in the undesired directions, technically this is called adaptive beamforming This adaptive beamforming enables the base station to form narrow beam towards desired user and nulls towards the interfering user, hence improving the signal quality The smart antennas (Adaptive array antennas) are one of the best solutions for increasing the system capacity and performance in future mobile communication systems In this thesis, we consider the wideband beamforming issue, which is one of the main functions in future smart antennas systems Most of proposed methods in literature are narrowband beamforming Conventional wideband beamforming methods are in time domain using tapped delay line filters [4] or frequency dilation filters [5] In this thesis, we propose a new method for wideband adaptive beamforming in frequency domain where wideband signals from each antenna element are transformed into frequency HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -v- Cải thiện chất lượng dung lượng hệ thống thông tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn domain using the fast Fourier transform (FFT) and then at each frequency bin the signals are weighted by complex weights The phases of the complex weights are selected independently and appropriately so that the beam-pattern of the beamformer is constant over the frequency band In this thesis, we will use wideband beamforming in frequency domain to improve quality and capacity of wireless communication system in future HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -vi- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn end;%h %====================================================== sig_arr=((ctranspose(WEIGHT')*(Sig_ARRo+Sig_inter)))^2; inter_arr=((ctranspose(WEIGHT')*Sig_inter))^2; SIR_arr=10*log10((sig_arr)/(inter_arr));%dB sumSIRFRBin(1,k)=sumSIRFRBin(1,k)+SIR_arr; %1 frequency bin end;%k end;%i SIRFRBin=sumSIRFRBin; SIR_out=0; for k=1:FR_BIN SIR_out=SIRFRBin(1,k)+SIR_out; end sumSIRout=sumSIRout+abs(SIR_out); end SIRout=sumSIRout/repeat SIR muy_max mu %====================================================== %SIR_outARRAYnarrow.m close; clear; % SIRout=[]; N=8; point_scan=361; range_phi=[0 180];%degree long_message=5100; phi=[80;83;85;90;95;96;100]; phiuser=[80;90]; d=length(phi); spacing=0.5; % for LMS -Iteration=5000; % -if (N/2)-fix(N/2)==0 %N:even x=([-(N/2-1)*d:d:(N*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); else %odd x=([-((N-1)*d/2):d:((N-1)*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); end; % -Sum_SIR_arr=0; SIR=1;%dB % INTER=[];% for i=1: length(phi) if phi(i)==90 d_phiB=i; end; end; INTER=interference(d,long_message,d_phiB,SIR); % %======================================================== omega_range=[0.5 0.7];%,normilized over fs/2 used for FIR filters omega_L=sprintf('%6.4f',omega_range(1)); omega_H=sprintf('%6.4f',omega_range(2)); BW=omega_range(2)-omega_range(1); HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -112- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn FR_BIN=21; % frequency bins in BW omega=linspace(omega_range(1),omega_range(2),FR_BIN); %======================================================== repeat=1; SIR_out=0; for rt=1:repeat SIRout=0; %======================================= Sum_SIR_arr=0; SIR_aRR=0; %===================================== theta0=90; phi0=90; u0=cos(phi0*pi/180)*sin(theta0*pi/180); v0=sin(phi0*pi/180)*sin(theta0*pi/180); w0=cos(theta0*pi/180); theta=90; %====================================== SINR_arr=0; WW=[]; YY=[]; A=steering_matrix_ULA(N,phi,spacing); Ds=abs(round(rand(d,long_message))*2)-1; % BPSK signal D=INTER.*Ds; d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); Sig_ARRo=A(:,d_phiB)*D(d_phiB,Iteration);%signal out array at convergence Sig_inter=A(:,[(1:d_phiB-1),d_phiB+1])*D([(1:d_phiB-1),d_phiB+1],Iteration); for k=1:FR_BIN %k %====================LMS================= mu=0.005;%win=ones(1,N); ww=ones(N,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; %============================================================ for h=1:point_scan deg_phi=range_phi(1)+(h-1)*(range_phi(2)-range_phi(1))/(point_scan-1); u=cos(deg_phi*pi/180)*sin(theta*pi/180); v=sin(deg_phi*pi/180)*sin(theta*pi/180); w=cos(theta*pi/180); % -FDB weight=exp(j*2*pi*omega(k)*(x*u0+y*v0+z*w0)) ; steer=exp((-j*2*pi*omega(k)*(x*u+y*v+z*w))); WEIGHT=(weight.*ww'); end;%h %====================================================== sig_arr=((ctranspose(WEIGHT')*(Sig_ARRo+Sig_inter)))^2; inter_arr=((ctranspose(WEIGHT')*Sig_inter))^2; SIR_arr=10*log10((sig_arr)/(inter_arr));%dB Sum_SIR_arr=Sum_SIR_arr+SIR_arr; end;%k SIR_aRR=(Sum_SIR_arr/FR_BIN); SIR_out=SIR_out+abs(SIR_aRR); end HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -113- Cải thiện chất lượng dung lượng hệ thống thông tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn muy_max mu SIR N SIRout=SIR_out/repeat %end %SIRout %====================================================== %SIR_outARRAY.m close; clear; % N=8; point_scan=361; range_phi=[0 180];%degree long_message=10100; phi=[50;70;90;95;110]; d=length(phi); spacing=0.5; % for LMS -Iteration=5000; % -if (N/2)-fix(N/2)==0 %N:even x=([-(N/2-1)*d:d:(N*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); else %odd x=([-((N-1)*d/2):d:((N-1)*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); end; % -Sum_SIR_arr=0; SIR=1;%dB % sumW=zeros(N,Iteration); sumw=zeros(N,1); INTER=[];% for i=1: length(phi) if phi(i)==90 d_phiB=i; end; end; INTER=interference(d,long_message,d_phiB,SIR); % %======================================================== omega_range=[0.5 0.7];%,normilized over fs/2 used for FIR filters omega_L=sprintf('%6.4f',omega_range(1)); omega_H=sprintf('%6.4f',omega_range(2)); BW=omega_range(2)-omega_range(1); FR_BIN=21; % frequency bins in BW omega=linspace(omega_range(1),omega_range(2),FR_BIN); %======================================================= repeat=5; SIR_out=0; for rt=1:repeat sumSIRout=0; %======================================= Sum_SIR_arr=0; SIR_aRR=0; HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -114- Cải thiện chất lượng dung lượng hệ thống thông tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn %===================================== theta0=90; phi0=90; u0=cos(phi0*pi/180)*sin(theta0*pi/180); v0=sin(phi0*pi/180)*sin(theta0*pi/180); w0=cos(theta0*pi/180); theta=90;%90 %====================================== SINR_arr=0; repeat=5; WW=[]; YY=[]; A=steering_matrix_ULA(N,phi,spacing); Ds=abs(round(rand(d,long_message))*2)-1; % BPSK signal %Ds=GeDS(d,long_message,d_phiB); D=INTER.*Ds; d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); Sig_ARRo=A(:,d_phiB)*D(d_phiB,Iteration);%signal out array at convergence Sig_inter=A(:,[(1:d_phiB-1),d_phiB+1])*D([(1:d_phiB-1),d_phiB+1],Iteration); %====================LMS================= mu=0.035;%win=ones(1,N); ww=ones(N,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; sumw=sumw+ww; sumW=sumW+WW; for i=1:N Win=sumw(i); sumSIRFRBin=zeros(1,FR_BIN); for k=1:FR_BIN %k SIR_arr=0; %============================================================ for h=1:point_scan deg_phi=range_phi(1)+(h-1)*(range_phi(2)-range_phi(1))/(point_scan-1); u=cos(deg_phi*pi/180)*sin(theta*pi/180); v=sin(deg_phi*pi/180)*sin(theta*pi/180); w=cos(theta*pi/180); % -FDB weight=exp(j*2*pi*omega(k)*(x*u0+y*v0+z*w0)) ; steer=exp((-j*2*pi*omega(k)*(x*u+y*v+z*w))); WEIGHT=(weight.*Win); end;%h %====================================================== sig_arr=((ctranspose(WEIGHT')*(Sig_ARRo+Sig_inter)))^2; inter_arr=((ctranspose(WEIGHT')*Sig_inter))^2; SIR_arr=10*log10((sig_arr)/(inter_arr));%dB sumSIRFRBin(1,k)=sumSIRFRBin(1,k)+SIR_arr; %1 frequency bin end;%k end;%i SIRFRBin=sumSIRFRBin; SIR_out=0; for k=1:FR_BIN SIR_out=SIRFRBin(1,k)+SIR_out; end HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -115- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn sumSIRout=sumSIRout+abs(SIR_out); end SIRout=sumSIRout/repeat SIR muy_max mu %====================================================== %SNR_outARRAY.m close; clear; % SIRout=[]; N=8; point_scan=361; range_phi=[0 180];%degree long_message=5100; phi=[50;70;90;95]; d=length(phi); spacing=0.5; % for LMS -Iteration=5000; % -if (N/2)-fix(N/2)==0 %N:even x=([-(N/2-1)*d:d:(N*d/2)]);%only for spacing 0.5 y=zeros(5,N); z=zeros(1,N); else %odd x=([-((N-1)*d/2):d:((N-1)*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); end; % -Sum_SNR_arr=0; %SIR=1;%dB SNR=5; % INTER=[];% for i=1: length(phi) if phi(i)==90 d_phiB=i; end; end; INTER=fornoise(d,long_message,d_phiB,SNR); % %======================================================== omega_range=[0.5 0.7];%,normilized over fs/2 used for FIR filters omega_L=sprintf('%6.4f',omega_range(1)); omega_H=sprintf('%6.4f',omega_range(2)); BW=omega_range(2)-omega_range(1); FR_BIN=21; % frequency bins in BW omega=linspace(omega_range(1),omega_range(2),FR_BIN); %======================================================== repeat=1; SNR_out=0; for rt=1:repeat %======================================= Sum_SNR_arr=0; SNR_aRR=0; %===================================== theta0=90; phi0=90; HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -116- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn u0=cos(phi0*pi/180)*sin(theta0*pi/180); v0=sin(phi0*pi/180)*sin(theta0*pi/180); w0=cos(theta0*pi/180); theta=90; %====================================== %SNR_arr=0; WW=[]; YY=[]; A=steering_matrix_ULA(N,phi,spacing); Ds=abs(round(rand(d,long_message))*2)-1; % BPSK signal NOISE=(sqrt(1/4)/(10^(SNR/10)))*randc(N,long_message); D=INTER.*Ds; d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D+NOISE; Sig_ARRo=A(:,d_phiB)*D(d_phiB,Iteration);%signal out array at convergence Sig_inter=A(:,[(1:d_phiB-1),d_phiB+1])*D([(1:d_phiB1),d_phiB+1],Iteration)+NOISE(:,Iteration); for k=1:FR_BIN %k % -LMS mu=0.035;%win=ones(1,N); ww=ones(N,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); %WW=[WW,abs(ww)]; YY=[YY,y]; end; %============================================================ for h=1:point_scan deg_phi=range_phi(1)+(h-1)*(range_phi(2)-range_phi(1))/(point_scan-1); u=cos(deg_phi*pi/180)*sin(theta*pi/180); v=sin(deg_phi*pi/180)*sin(theta*pi/180); w=cos(theta*pi/180); % -FDB weight=exp(j*2*pi*omega(k)*(x*u0+y*v0+z*w0)) ; steer=exp((-j*2*pi*omega(k)*(x*u+y*v+z*w))); WEIGHT=(weight.*ww'); end;%h %====================================================== sig_arr=(abs(ctranspose(WEIGHT')*(Sig_ARRo+Sig_inter)))^2; inter_arr=(abs(ctranspose(WEIGHT')*Sig_inter))^2; SNR_arr=10*log10((sig_arr)/(inter_arr));%dB Sum_SNR_arr=Sum_SNR_arr+SNR_arr; end;%k SNR_aRR=(Sum_SNR_arr/FR_BIN); SNR_out=SNR_out+abs(SNR_aRR); end SNRout=(SNR_out/repeat) %end mu% %SNRout %====================================================== %SNR_outARRAY3userok close; clear; % N=10 point_scan=361; range_phi=[0 180];%degree phi=[50;60;80;90;110;120;130]; SOI=[2,4,6]; d=length(phi); spacing=0.5; long_message=50100; % for LMS HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -117- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Iteration=5000; % -if (N/2)-fix(N/2)==0 %N:even x=([-(N/2-1)*d:d:(N*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); else %odd x=([-((N-1)*d/2):d:((N-1)*d/2)]);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); end; % -Sum_SNR_arr=0; SNR=-18;%dB % INTER=[];% INTER=fornoiseN(d,long_message,SOI,SNR); % %======================================================== omega_range=[0.5 0.7];%,normilized over fs/2 used for FIR filters omega_L=sprintf('%6.4f',omega_range(1)); omega_H=sprintf('%6.4f',omega_range(2)); BW=omega_range(2)-omega_range(1); FR_BIN=32; % frequency bins in BW omega=linspace(omega_range(1),omega_range(2),FR_BIN); %======================================================== repeat=100; SNR_out=0; for rt=1:repeat sumSNRout=0; %======================================= Sum_SNR_arr=0; SNR_aRR=0; %===================================== theta0=90; phi0=90; u0=cos(phi0*pi/180)*sin(theta0*pi/180); v0=sin(phi0*pi/180)*sin(theta0*pi/180); w0=cos(theta0*pi/180); theta=90; %====================================== SINR_arr=0; WW=[]; YY=[]; A=steering_matrix_ULA(N,phi,spacing); Ds=abs(round(rand(d,long_message))*2)-1; % BPSK signal %Ds=abs(sign(randn(d,long_message))); % BPSK signal D=INTER.*Ds; for i=1: length(SOI); d_training=D(SOI(i),1:Iteration);%training sequence for LMS end U=A*D; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); for i=1:length(SOI) Sig_ARRo=A(:,SOI(i))*D(SOI(i),Iteration);%signal out array at convergence Sig_inter=A(:,[(1:SOI(i)-1),SOI(i)+1])*D([(1:SOI(i)-1),SOI(i)+1],Iteration); end %====================LMS================= mu=abs(muy_max);%win=ones(1,N); ww=ones(N,1); HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -118- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; for i=1:N Win=ww(i); sumSNRFRBin=zeros(1,FR_BIN); for k=1:FR_BIN %k SNR_arr=0; %============================================================ for h=1:point_scan deg_phi=range_phi(1)+(h-1)*(range_phi(2)-range_phi(1))/(point_scan-1); u=cos(deg_phi*pi/180)*sin(theta*pi/180); v=sin(deg_phi*pi/180)*sin(theta*pi/180); w=cos(theta*pi/180); % -FDB weight=exp(j*2*pi*omega(k)*(x*u0+y*v0+z*w0)) ; steer=exp((-j*2*pi*omega(k)*(x*u+y*v+z*w))); WEIGHT=(weight.*Win); end;%h %====================================================== sig_arr=((ctranspose(WEIGHT')*(Sig_ARRo+Sig_inter)))^2; inter_arr=((ctranspose(WEIGHT')*Sig_inter))^2; SNR_arr=10*log10((sig_arr)/(inter_arr));%dB sumSNRFRBin(1,k)=sumSNRFRBin(1,k)+SNR_arr; %1 frequency bin end;%k end;%i SNRFRBin=sumSNRFRBin; SNR_out=0; for k=1:FR_BIN SNR_out=SNRFRBin(1,k)+SNR_out; end sumSNRout=sumSNRout+abs(SNR_out); end SNRout=sumSNRout/repeat SNR muy_max mu %================================================= %LCMV.m function [Wlcmv,phiuser]=LCMV(DOA,N, FR_BIN,omega,theta) number_DOA=length(DOA);%nuber DOAs are SOI=[(round(sqrt(rand)*length(DOA)))]; phiuser=DOA(SOI); number_SOI=length(SOI); d_divide_lampda=0.5; reference_samples=1000;%total samples of reference signal for simulation number_simulation=1000;%total times simulation number_points_angle=361; Vector_Weight_SOI=zeros(N,number_SOI);%weight vectors after simulations beam=zeros(1,number_points_angle);%average of beam performance after simulating P_SOI_dB=5;%power of SOI in dB P_interference_dB=-2;%power of interference in dB P_noise_dB=-2;%power of noise in dB P_soi_W=10^(P_SOI_dB/10);%power of SOI in W P_interference_W=10^(P_interference_dB/10);%power of interference in W P_noise_W=10^(P_noise_dB/10);%power of noise in W reference_gain=[];%gain of reference signal for x=1:number_DOA%repeat number_DOA times temp=1; for y=1:number_SOI%repeat number_SOI times if x==SOI(y) reference_gain=[reference_gain;(sqrt(P_soi_W))*ones(1,reference_samples)]; temp=0; HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -119- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn break; end; end; if temp==1 reference_gain=[reference_gain;(sqrt(P_interference_W))*ones(1,reference_samples)]; end; end; Wlcmv=zeros(N, FR_BIN); for k=1:FR_BIN for tr=1:number_simulation % -LCMV -S=steering_matrix(N,DOA,omega(k),theta); w=zeros(N,number_SOI);%average of weight vectors after simulations Rm=round(rand(number_DOA,reference_samples))*2-1;%BPSK signal modulation Rs=reference_gain.*Rm;%multiply corresponding elements to each other noise_white=(sqrt(P_noise_W))*randc(N,reference_samples);%white noise U=S*Rs+noise_white;%received signals at antenna array R=U*U'/reference_samples;%sample covariance matrix %R=R+100*min(eig(R))*eye(length(R));%diagonal loading R=R+(P_noise_W)*eye(length(R));%diagonal loading Rinv=inv(R); g=1; C=zeros(N,number_SOI); for in=1:number_SOI C(:,in)=S(:,SOI(in)); w(:,in)=Rinv*C(:,in)*inv(C(:,in)'*Rinv*C(:,in))*g;%update weight vectors Vector_Weight_SOI(:,in)=Vector_Weight_SOI(:,in)+w(:,in); end; % -end;%number_simulation w=Vector_Weight_SOI/number_simulation; Wlcmv(:,k)=w; end Wlcmv; %=============================================================================== function [Wlms]=LMS_WW(M,phi,GoA, FR_BIN,omega,theta) d=length(phi); spacing=0.5; long_message=10100; % for LMS -Iteration=5000; % sumW=zeros(M,Iteration); sumw=zeros(M,1); INTER=[]; SNR=5;%dB SIR=1;%dB SINR_el=10*log10(1/(1/(10^(SIR/10))+1/(10^(SNR/10))));%dB %d_phiB=round(sqrt(rand)*length(phi));% for i=1: length(phi) if phi(i)==GoA d_phiB=i; end; end; %phi0=GoA; INTER=interference(d,long_message,d_phiB,SIR); Wlms=zeros(M, FR_BIN); for k=1:FR_BIN repeat=5; for t=1:repeat WW=[]; YY=[]; % -D wide-band sources -A=steering_matrix(M,phi,omega(k),theta); HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -120- Cải thiện chất lượng dung lượng hệ thống thông tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Ds=round(rand(d,long_message))*2-1; % BPSK signal D=INTER.*Ds; NOISE=(sqrt(1/(10^(SNR/10))))*randc(M,long_message); d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D+NOISE; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); % -LMS mu=muy_max; ww=ones(M,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; sumw=sumw+ww; sumW=sumW+WW; end; w=sumw/repeat; W=sumW/repeat; Wlms(:,k)=w; end Wlms; %====================================================== %LMS_weight.m clear; close; phi=[10;25;45;60;70];%round(rand(1,6)*180-90);phi%[10;20;-40;60;35;-10;-20;45];%source wideband d=length(phi); spacing=0.5; N=8; %N elements antenna sprintf('%d',N) if (N/2)-fix(N/2)==0 %N:even x=linspace(-(N*spacing/2),(N/2-1)*spacing,N);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); else %odd x=linspace(-(N-1)*spacing/2,(N-1)*spacing/2, N);%only for spacing 0.5 y=zeros(1,N); z=zeros(1,N); end; Draw_Antarray_Structure(N,x,y); long_message=101000; % for LMS -Iteration=5000 % point_scan=361; sumW=zeros(N,Iteration); sumw=zeros(N,1); sumerr=zeros(1,Iteration); afactor=zeros(1,point_scan); Pspec=zeros(1,point_scan); sumy=0; INTER=[]; SNR=5;%dB SIR=1;%dB SINR_el=10*log10(1/(1/(10^(SIR/10))+1/(10^(SNR/10))));%dB d_phiB=3;%round(sqrt(rand)*length(phi));d_phiB%direction of desired signal, others are interferences HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -121- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn phi_desired=phi(d_phiB); phi_desired INTER=interference(d,long_message,d_phiB,SIR); repeat=5; for t=1:repeat WW=[]; YY=[]; A=steering_matrix_ULA(N,phi,spacing); Ds=round(rand(d,long_message))*2-1; % BPSK signal %Ds=abs(sign(randn(d,long_message))); D=INTER.*Ds; NOISE=(sqrt(1/(10^(SNR/10))))*randc(N,long_message); d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D+NOISE; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); SoARR=A(:,d_phiB)*D(d_phiB,Iteration);%signal out array at convergence interplnoise=A(:,[(1:d_phiB-1),d_phiB+1])*D([(1:d_phiB1),d_phiB+1],Iteration)+NOISE(:,Iteration); %interference plus noise out array at convergence % -LMS mu=muy_max; ww=ones(N,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; t=1:Iteration; tt=Iteration+1:long_message; % range_phi=[-90 90]; for h=1:point_scan arrayvec=array_vector(N,range_phi,point_scan,h, spacing); af(h)=transpose(ww)*(arrayvec);%array factor %powerspec(h)=(abs(ctranspose(ww)*U(:,Iteration)))^2; end; sumW=sumW+WW; sumw=sumw+ww; afactor=afactor+af; %Pspec=Pspec+powerspec; sumerr=sumerr+e.^2; sumy=sumy+y; sig_arr=(abs(ctranspose(ww)*SoARR))^2; inter_arr=(abs(ctranspose(ww)*interplnoise))^2; sig_el=(abs(SoARR(1)))^2; inter_el=(abs(interplnoise(1)))^2; end;%repeat W=sumW/repeat; w=sumw/repeat AF=afactor/repeat; mse=sumerr/repeat; SINR_arr=10*log10((sig_arr/repeat)/(inter_arr/repeat));%dB SINR_el=10*log10((sig_el/repeat)/(inter_el/repeat));%dB SINR_gain=SINR_arr-SINR_el;%dB HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -122- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn ttt=[range_phi(1):(range_phi(2)-range_phi(1))/(point_scan-1):range_phi(2)]; figure ; plot(t,20*log10(abs(mse)),'- b') ; title('Learning Curve') ; xlabel('Iteration Number') ; ylabel('Mean Squared Error in dB') ; grid figure ; plot(t,(abs(W(1,:))),' r',t,(abs(W(2,:))),' g',t,(abs(W(3,:))),' b',t,(abs(W(4,:))),' m',t,(abs(W(5,:))),' c', t,(abs(W(6,:))),' k',t,(abs(W(7,:))),': k',t,(abs(W(8,:))),' y ') ; legend('W1','W2','W3','W4','W5', 'W6','W7', 'W8'); grid title('Weight Magnitudes element') ; xlabel('Iteration Number') ; ylabel('Weight Magnitudes') ; end figure ; plot(ttt,20*log10((abs(AF))/max((abs(AF)))),' b') ; title('Normalized array factor') ; ylabel('Array factor in dB') ; xlabel('Angles in degrees') ; grid %========================================================== function [w]=LMS_w(M,phi,GoA) d=length(phi); spacing=0.5; long_message=101000; % for LMS -Iteration=10000; % sumW=zeros(M,Iteration); sumw=zeros(M,1); INTER=[]; SNR=5;%dB SIR=1;%dB SINR_el=10*log10(1/(1/(10^(SIR/10))+1/(10^(SNR/10))));%dB %d_phiB=round(sqrt(rand)*length(phi));% %for i=1: length(phi) % if phi(i)==GoA % d_phiB=i; % end; %end; SOI=[2,4,6]; INTER=interferenceN(d,long_message,SOI,SIR); % repeat=5; for t=1:repeat WW=[]; YY=[]; A=steering_matrix_ULA(M,phi,spacing); Ds=round(rand(d,long_message))*2-1; % BPSK signal D=INTER.*Ds; for i=1: length(SOI); d_training=D(SOI(i),1:Iteration);%training sequence for LMS end NOISE=(sqrt(1/(10^(SNR/10))))*randc(M,long_message); %d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D+NOISE; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); for i=1:length(SOI) Sig_ARRo=A(:,SOI(i))*D(SOI(i),Iteration);%signal out array at convergence Sig_inter=A(:,[(1:SOI(i)-1),SOI(i)+1])*D([(1:SOI(i)-1),SOI(i)+1],Iteration); end % -LMS mu=muy_max; HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -123- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn ww=ones(M,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; sumw=sumw+ww; sumW=sumW+WW; end; %sumW=sumW+WW; %W=sumW/repeat; w=sumw/repeat; W=sumW/repeat; %============================================================================= function [w]=LMS_w(M,phi,GoA) d=length(phi); spacing=0.5; long_message=101000; % for LMS -Iteration=10000; % sumW=zeros(M,Iteration); sumw=zeros(M,1); INTER=[]; SNR=5;%dB SIR=1;%dB SINR_el=10*log10(1/(1/(10^(SIR/10))+1/(10^(SNR/10))));%dB %d_phiB=round(sqrt(rand)*length(phi));% for i=1: length(phi) if phi(i)==GoA d_phiB=i; end; end; INTER=interference(d,long_message,d_phiB,SIR); % repeat=100; for t=1:repeat WW=[]; YY=[]; A=steering_matrix_ULA(M,phi,spacing); Ds=round(rand(d,long_message))*2-1; % BPSK signal D=INTER.*Ds; NOISE=(sqrt(1/(10^(SNR/10))))*randc(M,long_message); d_training=D(d_phiB,1:Iteration);%training sequence for LMS U=A*D+NOISE; R=U*U'/long_message;%covariance matrix(Nxreference_samples) muy_max=1/trace(R); % -LMS mu=muy_max; ww=ones(M,1); for n=1:Iteration y=ctranspose(ww)*U(:,n); e(n)=d_training(n)-y; ww=ww+mu*U(:,n)*ctranspose(e(n)); WW=[WW,abs(ww)]; YY=[YY,y]; end; sumw=sumw+ww; sumW=sumW+WW; end; %sumW=sumW+WW; %W=sumW/repeat; w=sumw/repeat; HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -124- Cải thiện chất lượng dung lượng hệ thống thơng tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn W=sumW/repeat; %====================================================== function Draw_Antarray_Structure(M,x,y) figure grid axis ij axis equal hold on scatter(x,y,'v') title(['Structure of antenna array,' M ' antennas']) xlabel('X-direction (d/lambda)') ylabel('Y-direction (d/lambda)') %====================================================== function [INTER] = interference(d, no_samples,s_desired, SIR) INTER =[]; for in=1:d if in==s_desired INTER=[INTER;ones(1,no_samples)]; else INTER=[INTER;(sqrt(1/(10^(SIR/10))))*ones(1,no_samples)]; end; end; %====================================================== function [A]=steering_matrix_ULA(M,phi,d_2_lambda) %function [A]=steering_matrix_ULA(M,phi) number_DOA=length(phi); A=[]; for i=1:number_DOA a_vector=[]; for k=0:(M-1) a=exp(j*2*pi*d_2_lambda*sin(phi(i)*pi/180)*k); %a=exp(-j*k*pi*cos(phi(i)*pi/180)); a_vector=[a_vector;a]; end; A=[A,a_vector]; end; %====================================================== function [win]=sel_win(win_op,M), % -window for beampattern beta=0.1102*(100-8.7); %for kaiser window if win_op==1 win=transpose(M*kaiser(M,beta)/sum(kaiser(M,beta))); elseif win_op==2 win=transpose(M*blackmanharris(M)/sum(blackmanharris(M))); elseif win_op==3 win=transpose(M*bohmanwin(M)/sum(bohmanwin(M))); elseif win_op==4 win=transpose(M*barthannwin(M)/sum(barthannwin(M))); elseif win_op==5 win=transpose(M*gausswin(M,3.5)/sum(gausswin(M,3.5))); elseif win_op==6 win=transpose(M*chebwin(M,100)/sum(chebwin(M,100))); elseif win_op==7 win=ones(1,M);%rectangular window elseif win_op==8 win=transpose(M*hanning(M)/sum(hanning(M)));% Hanning window elseif win_op==9 win=transpose(M*hamming(M)/sum(hamming(M)));% Hamming window elseif win_op==10 win=transpose(M*bartlett(M)/sum(bartlett(M))); elseif win_op==11 win=transpose(M*rectwin(M)/sum(rectwin(M))); HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -125- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng elseif win_op==12 win=transpose(M*triang(M)/sum(triang(M))); elseif win_op==13 win=transpose(M*nuttallwin(M)/sum(nuttallwin(M))); elseif win_op==14 win=transpose(M*tukeywin(M,.5)/sum(tukeywin(M,.5))); elseif win_op==15 win=transpose(M*boxcar(M)/sum(boxcar(M))); end; %====================================================== HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -126- GVHD: TS Đỗ Hồng Tuấn ... sóng thích nghi băng rộng miền tần số cho dãy anten thích nghi để cải thiện chất lượng dung lượng hệ thống thông tin không dây băng rộng tương lai HVTH: Huỳnh Đức Hạnh MSHV: 01407337 -2- Cải thiện. .. -11- Cải thiện chất lượng dung lượng hệ thống thông tin không dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn Đồ thị hướng tính dãy anten Trong dãy anten, khoảng cách phần tử anten. .. 01407337 -5- Cải thiện chất lượng dung lượng hệ thống thông tin khơng dây dùng dãy anten thích nghi băng rộng GVHD: TS Đỗ Hồng Tuấn dây bao gồm hệ thống TDMA, FDMA, CDMA Vì băng rộng nên giải

Ngày đăng: 09/03/2021, 00:03

Xem thêm:

w