Lọc thích nghi và ứng dụng thực thi trên KIT TMS320C6713

91 447 1
Lọc thích nghi và ứng dụng thực thi trên KIT TMS320C6713

Đ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

Lọc thích nghi và ứng dụng thực thi trên KIT TMS320C6713

ĐỒ ÁN TỐT NGHIỆP Trang i PHẦN A : GIỚI THIỆU Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang ii LỜI CẢM ƠN Nhóm thực đề tài xin đƣợc gửi lời cảm ơn chân thành đến quý Thầy cô khoa Điện – Điện Tử, quý Thầy cô thuộc môn Điện Tử Viễn Thông giảng dạy truyền đạt kiến thức chuyên ngành cho ngƣời thực đồ án thời gian vừa qua. Đặc biệt nhóm thực xin gửi lời cảm ơn sâu sắc tới thầy Ngô Quốc Cƣờng tận tình hƣớng dẫn nhƣ tạo điều kiện thuận lợi cho ngƣời thực đồ án để c thể thực hoàn thành tốt đề tài này. Nhóm thực đồ án không quên cảm ơn bạn lớp trao đổi, g p ý để ngƣời thực hoàn thành đề tài cách tốt đẹp thời gian. Mặc dù c nhiều cố gắng nỗ lực thực hiện, nhƣng kiến thức nhƣ khả thân nhiều hạn chế nên trình thực đề tài tránh khỏi sai phạm, thiếu s t…Rất mong nhận đƣợc góp ý, dẫn từ nơi quý thầy cô bạn sinh viên. Nhóm sinh viên thực đề tài Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang iii BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐH SƢ PHẠM KỸ THUẬT TP.HCM CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP-TỰ DO-HẠNH PHÚC  QUYẾT ĐỊNH GIAO ĐỀ TÀI Họ tên sinh viên : Võ Phong Phú MSSV : 10117050 Đỗ Minh Toán MSSV : 10117070 Ngành : Công nghệ Điện tử -Viễn Thông Đề tài : LỌC THÍCH NGHI VÀ ỨNG DỤNG THỰC THI TRÊN KIT TMS320C6713 1. Cơ sở ban đầu : 2. Nội dung phần thuyết minh tính toán: 3. Các vẽ : 4. Giáo viên hƣớng dẫn : ThS. Ngô Quốc Cƣờng 5. Ngày giao nhiệm vụ : …. /…/2014. 6. Ngày hoàn thành nhiệm vụ : …./…./2014. Giáo viên hƣớng dẫn Ngày …tháng….năm 2014 Chủ nhiệm môn Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang iv NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN . . . . . . . . . . . . . . . . . . . . . TP.HCM, Ngày …tháng ….năm 2014 Giáo viên hƣớng dẫn. Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang v NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN . . . . . . . . . . . . . . . . . . . . . Tp.HCM, Ngày….tháng….năm 2014 Giáo viên phản biện Phần A : Giới thiệu TP.HCM, Ngày….tháng….năm 2014 Giáo viên phản biện ĐỒ ÁN TỐT NGHIỆP Trang vi Abstract Echo and noise are common occurrence in today's telecommunication systems. Noise problems in the environment have gained attention due to the tremendous growth of technology that has led to noisy engines, heavy machinery, high speed wind buffeting and other noise sources. This acoustic echo is actually the noise which is created by the reflection of sound waves by the wall of the room and the other things exist in the room. This problem will cause the bad quality of voice signal and thus talkers could not hear clearly the content of the conversation, even thought lost the important information. The problem of cancellation the noise and echo provides an echo free environment for speakers during conversation . In last few years various adaptive algorithms are developed for noise cancellation. In this thesis we present an implementation of LMS (Least Mean Square), and RLS (Recursive Least Square) algorithms on MATLAB platform with the intention to compare their performance in noise cancellation. We simulate the adaptive filter in MATLAB with a noisy tone signal and white noise signal and analyze the performance of algorithms in terms of MSE (Mean Squared Error), percentage noise removal, computational complexity and stability. In this project , the concept of echo cancellation system and and noise cancellation system are studied, simulated and implemented in Matlab and TI TMS320C6713 DSK. The obtained results shows that RLS has the best performance but at the cost of large computational complexity and memory requirement. Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang vii Lời nói đầu Ngày xử lý tín hiệu số ngày phát triển mạnh mẽ làm thay đổi có tính cách mạng nhiều lĩnh vực, từ lĩnh vực tổng quát nhƣ phân tích tín hiệu, lọc số, lọc thích nghi đến việc áp dụng thuật toán FFT, LMS, RLS… để thiết kế, lập trình tạo nên thiết bị phần cứng ứng dụng lĩnh vực cụ thể. Sử dụng thuật toán thích nghi LMS, RLS…để triệt nhiễu, khử tạp âm trở nên phổ biến đƣợc ứng dụng rộng rãi thực tế nhờ vào hoạt động hiệu mà mạch lọc tƣơng tự trƣớc không đủ khả để đáp ứng. Chính để chứng minh khả hoạt động hiệu thuật toán thích nghi, nhóm thực chọn đề tài để tìm hiểu lý thuyết lọc số, lọc thích nghi, thuật toán thích nghi, mô đáng giá thuật toán thích nghi MATLAB. Nhóm thực tìm hiểu khả hoạt động thuật toán thích nghi ứng dụng thực tế môi trƣờng KIT DSP TMS320C6713. Nội dung đồ án gồm có phần : Phần A : Giới thiệu Phần B : Nội dung o Chƣơng 1: Tổng quan lọc số. o Chƣơng 2: Bộ lọc thích nghi. o Chƣơng 3: Ứng dụng lọc thích nghi. o Chƣơng : Giới thiệu phần mềm CCS KIT TMS320C6713 o Chƣơng : Khử nhiễu, triệt echo KIT TMS320C6713. o Chƣơng : Kết luận. Phần C : Phụ lục tài liệu tham khảo. Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang viii MỤC LỤC Trang PHẦN A :GIỚI THIỆU i LỜI CẢM ƠN . ii QUYẾT ĐỊNH GIAO ĐỀ TÀI iii NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN . iv NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN . v ABSTRACT . vi LỜI NÓI ĐẦU . vii DANH MỤC TỪ VIẾT TẮT . ix LIỆT KÊ BẢNG . xi LIỆT KÊ HÌNH . xii PHẦN B :NỘI DUNG . 14 CHƢƠNG 1: TỔNG QUAN VỀ LỌC SỐ . 15 1.1 Mở đầu . 15 1.2 Giới thiệu lọc số . 17 CHƢƠNG 2: BỘ LỌC THÍCH NGHI 19 2.1 Một số khái niệm 19 2.1.1 Biến ngẫu nhiên. . 19 2.1.2 Quá trình ngẫu nhiên. . 19 2.1.3 Đặc tính phần trình ngẫu nhiên rời rạc theo thời gian. . 20 2.1.4 Tƣơng quan tín hiệu. . 21 2.2 Giới thiệu lọc thích nghi. 21 2.3 Các cấu trúc lọc thích nghi. . 22 2.3.1 Khử nhiễu. 22 2.3.2 Nhận dạng hệ thống. . 23 2.3.3 Bộ dự đoán thích nghi. . 23 2.4 Các thuật toán lọc thích nghi. 24 2.4.1 Thuật toán LMS 24 2.4.2 Thuật toán RLS. . 27 CHƢƠNG : ỨNG DỤNG LỌC THÍCH NGHI . 33 3.1 Lý thuyết khử nhiễu thích nghi. . 33 Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang ix 3.1.1 Các chế độ khử nhiễu kiểu thích nghi. . 33 3.1.2 Các thuật toán cập nhật cho lọc. . 35 3.2 Các thuật toán thích nghi. 36 3.3 Giới thiệu Echo triệt echo dùng thuật toán thích nghi. . 43 3.3.1 Các loại tiếng vọng. 44 3.3.2 Quá trình triệt tiếng vọng. 44 CHƢƠNG : GIỚI THIỆU PHẦN MỀM CCS VÀ KIT TMS320C6713 49 4.1 Giới thiệu phần mềm CCS (Code Composer Studio). 49 4.2 Giới thiệu kit TMS320C6713. 50 4.2.1 Sơ đồ khối đặc trƣng kit TMS320C6713. 52 4.2.2 Hoạt động 53 4.2.3 Bản đồ nhớ. 53 4.3 Các thành phần kit TMS320C6713. 54 CHƢƠNG : KHỬ NHIỄU,TRIỆT ECHO TRÊN KIT TMS320C6713 59 5.1 Khử nhiễu thích nghi thuật toán LMS kit TMS320C6713. . 59 5.2 Khử nhiễu thích nghi thuật toán RLS kit TMS320C6713. 62 5.3 Triệt Echo dùng thuật toán LMS KIT TMS320C6713. . 64 5.4 Triệt echo sử dụng thuật toán RLS kit TMS320C6713. . 67 CHƢƠNG :KẾT LUẬN . 69 6.1 Kết đạt đƣợc. 69 6.2 Tồn hƣớng phát triển đề tài. 69 6.2.1 Những mặt tồn : . 69 6.2.2 Hƣớng phát triển. . 70 PHẦN C :PHỤ LỤC VÀ TÀI LIỆU THAM KHẢO . 71 Phụ lục A. . 72 1. Hƣớng dẫn biên dịch Simulink sang code C. 72 2. Hƣớng dẫn cài đặt CCS V3.3 Windows XP. . 79 Phụ lục B : Code Matlab. . 82 Tài liệu tham khảo 91 Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang x DANH MỤC TỪ VIẾT TẮT AEC Acoustic Echo Canceller AF Adaptive Filters ANC Active Noise Canceller CCS Code Composer Studio CPLD Complex Programmable Logic Device DSP Digital Signal Processing EMIF Extrenal Memory InterFace ERL Echo return loss ERLE Echo Return Loss Enhancement FIR Finite Impulse Response IIR Infinite Impulse Response LMS Least-Mean-Squared MSE Mean-Squared Error NLMS Normalized Least-Mean-Squared RLS Recursive Least-Squares Phần A : Giới thiệu ĐỒ ÁN TỐT NGHIỆP Trang 76 1.3 Build simulink sang ANSI C code . Nhấn vào biểu tƣợng Increment Build nhấn tổ hợp phím Ctrl+B. -Sau build xong , tự động mở cửa sổ làm việc CCS V3.3. với đầy đủ thƣ viện ,code C chƣơng trình dịch từ simulink sang. Phần C: Phụ lục tài liệu tham khảo ĐỒ ÁN TỐT NGHIỆP -Bây ta load file .out để nạp lên Kit TMS320C6713. Phần C: Phụ lục tài liệu tham khảo Trang 77 ĐỒ ÁN TỐT NGHIỆP -Kết nối thiết bị ngoại vi vào KIT C6713 Phần C: Phụ lục tài liệu tham khảo Trang 78 ĐỒ ÁN TỐT NGHIỆP 2. Hƣớng dẫn cài đặt CCS V3.3 Windows XP. Tiến hành cài đặt chƣơng trình. - Chọn Next để tiếp tục trình cài đặt - Sau thỏa mãn yêu cầu cấu hình,chọn Next để tiếp tục Phần C: Phụ lục tài liệu tham khảo Trang 79 ĐỒ ÁN TỐT NGHIỆP - Chọn Accept để tiếp tục - Chọn Typical Install Custom Install - Cuối chọn Finish để kết thúc. Trang 80  Composer studio setup.  -Chọn C6713 Device Cycle Accurate Simulator  Khi KIT C6713 c thể thiết lập chế độ mô làm việc bình thƣờng. Phần C: Phụ lục tài liệu tham khảo ĐỒ ÁN TỐT NGHIỆP -Ta kích chọn code - Giao diện Code Composer Studio Windows XP Phần C: Phụ lục tài liệu tham khảo Trang 81 ĐỒ ÁN TỐT NGHIỆP Phụ lục B : Code Matlab. 1. Khử nhiễu thích nghi sử dụng thuật toán LMS. % ANC - LMS algorithm % R - number of repetitions % I - iterations % sigmax - standard deviation of the input signal x % Wo - plant/system to be identified % sigman - standard deviation of the noise n % mi - step-size parameter % M - misadjustment % ind - sample index % MSE - Mean-squared error % MSEmin - Minimum Mean-squared error % K - Auxiliar vector to store the error btween the % orignal signal and the error signal. % E - Auxiliar vector to the error %Px - cong suat tin hieu ngo vao %Pe - cong suat tin hieu error %Pn - cong suat nhieu clear all; close all; R=10; I=50000; %Length of the adaptive filter L=5; N=L-1; mi= 0.0002; MSE=zeros(I,1); E=zeros(I,1); K=zeros(I,1); for r=1:R %input signal n = (1:I)'; s = sin(0.075*pi*n); %noise source signal v = 0.8*randn(I,1); %noise signal ar = [1,1/2]; v1 = filter(1,ar,v); %input signal + noise x = s + v1; %noise signal ma = [1, -0.8, 0.4 , -0.2]; v2 = filter(ma,1,v); %create the signals %tap-weight and input vector W=zeros(L,1); U=zeros(L,1); for i=1:I U=[v2(i) U(1:N)]; % desired signal d=x(i); % output estimate y=(W'*U); % error signal e=(d-y); Phần C: Phụ lục tài liệu tham khảo Trang 82 ĐỒ ÁN TỐT NGHIỆP Trang 83 E(i)=E(i)+e; K(i)=(s(i)-e); % new/updated filter W=(W+(2*mi*e*U)); % accummulation of MSE MSE(i)=norm(MSE(i)+ (K(i)^2)); % accummulation of MSE end end E=E/R; MSE=MSE/R; ind=0:(I-1); Px=mean((abs(s)).^2) Pe=mean((abs(E)).^2) Pn=mean((abs(v)).^2) % print the results figure() plot(n(9900:10000), [s(9900:10000), x(9900:10000), E(9900:10000)]); legend('Tin hieu ngo vao s(n)', 'Tin hieu + nhieu d(n)','Tin hieu ngo e(n)'); xlabel('Iterations'); ylabel('Bien do'); title('Khu nhieu tich cuc su dung thuat toan LMS'); 2. Khử nhiễu thích nghi sử dụng thuật toán RLS. %%% ANC - RLS algorithm % R - number of repetitions % I - iterations % sigmax - standard deviation of the input signal % Wo - plant/system to be identified % sigman - standard deviation of the noise % ind - sample index % W - Tap-weight of RLS algorithm % K - gain % lambda - Fortgetting factor < lambda < % LS - Weighted least-squares of the rls % CC - Cross-correlation matrix % delta - small positive constant % K - Auxiliar vector to store the error btween the % orignal signal and the error signal. % E - Auxiliar vector to the error %Px - cong suat tin hieu ngo vao %Pe - cong suat tin hieu error %Pn - cong suat nhieu clear all; close all; R=10; I=10000; %Length of the adaptive filter L=5; N=L-1; lambda = 1; delta = 20; LS=zeros(I,1); Phần C: Phụ lục tài liệu tham khảo ĐỒ ÁN TỐT NGHIỆP Trang 84 E=zeros(I,1); K=zeros(I,1); for r=1:R %input signal n = (1:I)'; s = sin(0.075*pi*n); %noise source signal v = 0.8*randn(I,1); %noise signal ar = [1,1/2]; v1 = filter(1,ar,v); %input signal + noise x = s + v1; %noise signal ma = [1, -0.8, 0.4 , -0.2]; v2 = filter(ma,1,v); %create the signals %tap-weight and input vector W=zeros(L,1); U=zeros(L,1); %Cross-correlation matrix fi CC=((1/delta)*eye(L,L)); for i=1:I U=[v2(i) U(1:N)]; % desired signal d=x(i); %Step 1: Calculation the gain G k=(((1/lambda)*CC*U)/(1+((1/lambda)*U'*CC*U))); %Step 2: Filtering %output estimate for the rls y=(W'*U); %Step 3: Error estimation %error of the rls e=(d-y); E(i)=E(i)+e; K(i)=(s(i)-e); %Step 4: Tap-weight vector adaptation W=W+k*conj(e); %Step 5: Correlation Update %calculating the CC of the rls algorithm CC =(((1/(lambda))*CC)-((1/lambda)*k*U'*CC)); % accummulation of LS LS(i)=(LS(i)+(lambda*K(i)^2)); end end E=E/R; LS=LS/R; ind=0:(I-1); Px=mean((abs(s)).^2) Pe=mean((abs(E)).^2) Pn=mean((abs(v)).^2) % print the results figure() plot(n(9900:end), [s(9900:end), x(9900:end), E(9900:end)]); legend('Tin hieu ngo vao s(n)', 'Tin hieu + nhieu d(n)','Tin hieu ngo e(n)'); xlabel('Iterations'); Phần C: Phụ lục tài liệu tham khảo ĐỒ ÁN TỐT NGHIỆP ylabel('Bien do'); title('Khu nhieu tich cuc su dung thuat toan RLS' ); 3. Triệt tiếng vọng sử dụng thuật toán thích nghi LMS  LMS – AEC % AEC - LMS algorithm % R - number of repetitions % I - iterations % sigmax - standard deviation of the input signal % Wo - plant/system to be identified % sigman - standard deviation of the noise % mi - step size % ind - sample index % MSE - Mean-squared error % MSEmin - Minimum Mean-squared error % D - Auxiliar vector to the desired response % E - Auxiliar vector to the error % Y - Auxiliar vector to the filter output clear all close all R = 10; I = 5000; % parameters sigmax = 1; sigman = 0.01; mi = 0.01; MSE=zeros(I,1); Y=zeros(I,1); D=zeros(I,1); E=zeros(I,1); MSEmin=zeros(I,1); Wo = randn(7,1); % length of the plant/system L=length(Wo); % order of the plant/system N=L-1; for r=1:R, X=zeros(L,1); W=zeros(L,1); % input n = (1:I)'; x = sin(0.0295*pi*n); % delayed version of the input delay=zeros(20,1); xd=[delay x(1:(I-20))]; % noise n=randn(I,1)*sigman; %awgn(n,); for i=1:I, X=[xd(i) X(1:N)]; % desired signal d=x(i)+xd(i); D(i)=(D(i)+d); % output estimate y=(W'*X); Phần C: Phụ lục tài liệu tham khảo Trang 85 ĐỒ ÁN TỐT NGHIỆP Y(i)=(Y(i)+y); % error signal e=(d+n(i)-y); E(i)=E(i)+e; % new/updated filter W=(W+(2*mi*e*X)); % accummulation of MSE MSE(i)=norm(MSE(i)+(e^2)); % accummulation of MSE MSEmin(i)=norm(MSEmin(i)+((n(i))^2)); end end % sample index ind=0:(I-1); MSE = MSE/R; MSEmin = MSEmin/R; % Misadjustment computation M=MSE./MSEmin-1; % print the results figure(); plot(ind,D, ind,Y,ind,E); xlabel('Iterations'); ylabel('Signal Value'); title('Acoustic Echo Canceller using the LMS Algorithm' ); legend('Desired','Output','Error'); 4. Triệt tiếng vọng sử dụng thuật toán thích nghi RLS  RLS – AEC %%% AEC - RLS algorithm % R - number of repetitions % I - iterations % sigmax - standard deviation of the input signal % Wo - plant/system to be identified % sigman - standard deviation of the noise % W - Tap-weight of RLS algorithm % K - gain % lambda - Fortgetting factor < lambda < % LS - Weighted least-squares of the rls % CC - Cross-correlation matrix % delta - small positive constant % D - Auxiliar vector to the desired response % E - Auxiliar vector to the error % Y - Auxiliar vector to the filter output clear all close all R = 10; I = 5000; % parameters sigmax = 1; sigman = 0.01; mi = 0.02; lambda = 1; delta = 0.01; LS=zeros(I,1); Y=zeros(I,1); D=zeros(I,1); E=zeros(I,1); Phần C: Phụ lục tài liệu tham khảo Trang 86 ĐỒ ÁN TỐT NGHIỆP MSEmin=zeros(I,1); Wo = randn(7,1); % length of the plant/system L=length(Wo); % order of the plant/system N=L-1; for r=1:R, X=zeros(L,1); W=zeros(L,1); % input n = (1:I)'; x = sin(0.0295*pi*n); % delayed version of the input delay=zeros(20,1); xd=[delay x(1:(I-20))]; % noise n=randn(I,1)*sigman; %Cross-correlation matrix fi CC=((1/delta)*eye(L,L)); for i=1:I, X=[xd(i) X(1:N)]; % desired signal d=x(i)+xd(i); D(i)=(D(i)+d); %Step 1: Calculation the gain G k=(((1/lambda)*CC*X)/(1+((1/lambda)*X'*CC*X))); %Step 2: Filtering %output estimate for the rls y=(W'*X); Y(i)=(Y(i)+y); %Step 3: Error estimation e=((d-n(i))-y); E(i)=E(i)+e; %Step 4: Tap-weight vector adaptation W=W+k*conj(e); %Step 5: Correlation Update %calculating the CC of the rls algorithm CC =(((1/(lambda))*CC)-((1/lambda)*k*X'*CC)); % accummulation of LS LS(i)=(LS(i)+(lambda*e^2)); end end % sample index ind=0:(I-1); n = (0:I-1)'; LS = LS/R; MSEmin = MSEmin/R; M=LS./MSEmin-1; figure(); plot(n(1:500),[D(1:500), Y(1:500),E(1:500)]); xlabel('Iterations'); ylabel('Signal Value'); title('Acoustic Echo Canceller using the RLS Algorithm' ); legend('Desired','Output','Error'); Phần C: Phụ lục tài liệu tham khảo Trang 87 ĐỒ ÁN TỐT NGHIỆP 5. So sánh thông số ERLE hai thuật toán RLS LMS clear all close all R = 10; I = 5000; sigmax = 1; sigman = 0.01; Wo = randn(7,1); % length of the plant/system L=length(Wo); % order of the plant/system N=L-1; Pn=zeros(I,1); %thong so LMS mi = 0.01; Ylms=zeros(I,1); Dlms=zeros(I,1); Elms=zeros(I,1); ERLElms=zeros(I,1); Pdlms=zeros(I,1); Pelms=zeros(I,1); %thong so RLS lambda = 1; delta = 0.01; ERLErls=zeros(I,1); Pdrls=zeros(I,1); Perls=zeros(I,1); Yrls=zeros(I,1); Drls=zeros(I,1); Erls=zeros(I,1); for r=1:R, %%% LMS Xlms=zeros(L,1); Wlms=zeros(L,1); %%%%RLS Xrls=zeros(L,1); Wrls=zeros(L,1); % input n = (1:I)'; x = sin(0.0295*pi*n); % delayed version of the input delay=zeros(20,1); xd=[delay x(1:(I-20))]; % noise n=randn(I,1)*sigman; %ma tran tuong quan cheo CC=((1/delta)*eye(L,L)); for i=1:I, %%cong suat nhieu pn(i)=abs(n(i))^2; Pn(i)=Pn(i)+pn(i); % desired signal d=x(i)+xd(i); Phần C: Phụ lục tài liệu tham khảo Trang 88 ĐỒ ÁN TỐT NGHIỆP %%%%%LMS Xlms=[xd(i) Xlms(1:N)]; Dlms(i)=(Dlms(i)+d); pdlms(i) = abs(Dlms(i))^2; Pdlms(i)=Pdlms(i)+pdlms(i); % output estimate ylms=(Wlms'*Xlms); Ylms(i)=(Ylms(i)+ylms); % error signal elms=(d+n(i)-ylms); Elms(i)=Elms(i)+elms; pelms(i)=abs(Elms(i))^2; Pelms(i)=Pelms(i)+pelms(i); % new/updated filter Wlms=(Wlms+(2*mi*elms*Xlms)); %SNR erlelms(i)=mean(Pdlms(i))/mean(Pelms(i)); ERLElms(i)=ERLElms(i)+erlelms(i); %%%%%%RLS Xrls=[xd(i) Xrls(1:N)]; Drls(i)=(Drls(i)+d); %Step 1: Calculation the gain G k=(((1/lambda)*CC*Xrls)/(1+((1/lambda)*Xrls'*CC*Xrls))); %Step 2: Filtering %output estimate for the rls yrls=(Wrls'*Xrls); Yrls(i)=(Yrls(i)+yrls); %Step 3: Error estimation %error of the rls erls=((d-n(i))-yrls); Erls(i)=Erls(i)+erls; %Step 4: Tap-weight vector adaptation Wrls=Wrls+k*conj(erls); %Step 5: Correlation Update %calculating the CC of the rls algorithm CC =(((1/(lambda))*CC)-((1/lambda)*k*Xrls'*CC)); % accummulation of LS pdrls(i) = abs(Drls(i))^2; Pdrls(i)=Pdrls(i)+pdrls(i); perls(i)=abs(Erls(i))^2; Perls(i)=Perls(i)+perls(i); erle(i)=mean(Pdrls(i))/mean(Perls(i)); ERLErls(i)=ERLErls(i)+erle(i); end end % sample index ind=0:(I-1); ERLElms=ERLElms/R; ERLErls=ERLErls/R; maxERLElms=max(10*log10(ERLElms)) meanERLElms=mean(10*log10(ERLElms)) maxERLErls=max(10*log10(ERLErls)) meanERLErls=mean(10*log10(ERLErls)) Phần C: Phụ lục tài liệu tham khảo Trang 89 ĐỒ ÁN TỐT NGHIỆP % print the resultsơ figure(); plot(10*log10(ERLElms)); hold on plot(10*log10(ERLErls),'r'); axis([0 200 -40 100]); title('echo return loss enhancement'); ylabel('dB'); xlabel('Iterations'); legend ('lms','rls'); Phần C: Phụ lục tài liệu tham khảo Trang 90 ĐỒ ÁN TỐT NGHIỆP Trang 91 TÀI LIỆU THAM KHẢO [1] “Adaptive filters: theory and applications”, John Wiley and Sons Ltd., Chichester, 1998. [2] “Adaptive Filtering Algorithms and Practical Implementation” , Paulo S.R. Diniz. [3] Simon Halkins, “Adaptive Filter Theory”,3 rd Newjercy, Princetonhall 1996. Edition, Englewoodclifes, [4] Homana, I.; Topa, M.D.; Kirei, B.S.; “Echo cancelling using adaptive algorithms”, Design and Technology of Electronics Packages, (SIITME) 15th International Symposium., pp. 317-321, Sept.2009. [5] J.G. Proakis and D.G. Manolakis, Digital Signal Processing Principles,Algorithms and Applications, Prentice Hall,1996. [6] Homer, J. 1994, Adaptive Echo Cancellation in Telecommunications. PhD thesis, University of Newcastle, Newcastle. [7] Michel Hutson, “Acoustic Echo Cancellation”, B.E. Thesis, The University of Queensland, Nov.2003. Phần C: Phụ lục tài liệu tham khảo [...]... cấu trúc lọc thích nghi Một số các cấu trúc thích nghi đã đƣợc sử dụng cho các ứng dụng khác nhau trong lọc thích nghi Mỗi ứng dụng có một cấu trúc thích nghi cụ thể tƣơng ứng Sau đây chúng ta chỉ xét ba trƣờng hợp cụ thể đ là: thứ nhất, cấu trúc thích nghi cho khử nhiễu( Noise Cancellation); thứ hai, cho hệ thống định vị( System Identification) và thứ ba, cho các bộ tiên đoán( Predictor) thích nghi 2.3.1... Chƣơng 2 : Bộ lọc thích nghi ĐỒ ÁN TỐT NGHI P Trang 33 CHƢƠNG 3 : ỨNG DỤNG BỘ LỌC THÍCH NGHI Chƣơng này tiếp cận các ý tƣởng cơ bản để thi t kế một bộ lọc thích nghi cho ứng dụng khử nhiễu, triệt tiếng vọng dựa trên các lý thuyết đã đƣợc giới thi u ở các chƣơng trƣớc Khử nhiễu và triệt tiến vọng dựa trên việc trừ nhiễu từ tín hiệu nhận đƣợc, một hoạt động đƣợc điều khiển theo kiểu thích nghi nhằm mục... một cấu trúc thích nghi đƣợc dùng cho ứng dụng nhận dạng hay mô hình mẫu Cùng một tín hiệu vào, đƣợc đƣa đến hai hệ thống song song là hệ thống chƣa xác định và bộ lọc thích nghi Tín hiệu sai số e là sự khác nhau giữa đáp ứng của hệ thống chƣa biết d và đáp ứng của bộ lọc thích nghi y Tín hiệu sai số này đƣợc phản hồi về bộ lọc thích nghi và đƣợc dùng để cập nhật( Update) các hệ số cho bộ lọc cho đến... hệ thống thích nghi có thể nắm bắt các đặc trƣng của tín hiệu và dò Chƣơng 2 : Bộ lọc thích nghi ĐỒ ÁN TỐT NGHI P Trang 22 theo các biến đổi chậm Một bộ lọc thích nghi có thể rất hữu ích cho sự bất định về các đặc trƣng của một tín hiệu hoặc khi các đặc trƣng đ thay đổi Hình 2.1 sau thể hiện một cấu trúc cơ bản của bộ lọc thích nghi d + e x Bộ lọc thích nghi y Hình 2.1: Cấu trúc bộ lọc thích nghi cơ... bƣớc nhảy vào bộ lọc và xem kết quả ở đầu ra hay;  Lấy tích phân của đáp ứng xung Còn đáp ứng tần số lấy từ biến đổi Fourier của đáp ứng xung Hình 1.2: Đáp ứng xung, đáp ứng bước và đáp ứng tần số của bộ lọc Chƣơng 1 : Tổng quan về lọc số ĐỒ ÁN TỐT NGHI P Trang 18 Phƣơng pháp trực tiếp nhất để thực hiện lọc số là dùng phép tích chập của tín hiệu vào với đáp ứng xung của bộ lọc số, khi đ đáp ứng xung... động xử lý thích nghi đƣợc kết thúc, và e tiến gần đến 0 Trong sự kết hợp này, bộ lọc thích nghi làm mẫu cho hệ thống chƣa xác định Hệ thống chƣa biết d x Bộ lọc thích nghi y + e - Hình 2.3: Cấu trúc bộ lọc thích nghi cho nhận dạng hệ thống 2.3.3 Bộ dự đoán thích nghi Hình 2.4 sau đây sẽ minh họa cho cấu trúc của một bộ dự đoán thích nghi, mà c thể cung cấp một sự ƣớc lƣợng của đầu vào Đầu vào IN1 =... Khối trễ Bộ lọc y(n) thích nghi IN2 Hình 2.4: Cấu trúc cho bộ dự đoán thích nghi Chƣơng 2 : Bộ lọc thích nghi ĐỒ ÁN TỐT NGHI P 2.4 Trang 24 Các thuật toán lọc thích nghi 2.4.1 Thuật toán LMS Thuật toán LMS, thƣờng đƣợc gọi là một thuật toán Stochastic Gradient; nó thƣờng đƣợc sử dụng cho các bộ lọc thích nghi, bởi vì các lý do sau đây:  N là cơ bản đầu tiên  Nó rất đơn giản  Trong thực tế nó làm... : Ứng dụng bộ lọc thích nghi ĐỒ ÁN TỐT NGHI P Trang 35 3.1.2 Các thuật toán cập nhật cho các bộ lọc Từ điều kiện các bộ lọc làm mẫu ở các thời điểm khác nhau, các bộ lọc phải khác nhau ở các thời điểm khác nhau, vì vậy các bộ lọc phải thích nghi Trong thực tế cho mục đích này, c nhiều thuật toán đƣợc đƣa ra nhƣ ta đã giới thi u ở chƣơng trƣớc có thể hoạt động rất tốt cho sự thích nghi của các bộ lọc. .. bản Trong đ ngõ ra y của bộ lọc thích nghi đƣợc so sánh với tín hiệu mong muốn (Desire) d để cho ra tín hiệu sai số ( Error ) e, tín hiệu sai số này đƣợc hồi tiếp về để điều chỉnh bộ lọc thích nghi Các hệ số của bộ lọc thích nghi đƣợc điều chỉnh, hay tối ƣu h a, sử dụng các thuật toán thích nghi nhƣ LMS, RLS dựa trên tín hiệu sai số e Ở phần các thuật toán của bộ lọc thích nghi chúng ta sẽ nói rõ về... giản, nên nó thích nghi liên tục cho bộ lọc  N đánh dấu sự thay đổi chậm trong thông tin tín hiệu số rất tốt Thuật toán này đi kèm với một bộ lọc FIR hiệu chỉnh đƣợc Các hệ số hay trọng số của bộ lọc FIR thích nghi có thể hiệu chỉnh dựa trên một môi trƣờng thay đổi nhƣ một tín hiệu vào Cũng c thể sử dụng bộ lọc IIR thích nghi, nhƣng các điểm cực của một bộ lọc IIR trong quá trình thích nghi có thể . TÀI H và tên sinh viên : Võ Phong Phú MSSV : 10117050  Minh Toán MSSV : 10117070 Ngành : Công ngh n t -Vin Thông Đề tài : LỌC THÍCH NGHI VÀ ỨNG DỤNG THỰC THI TRÊN KIT TMS320C6713. b lc thích nghi, các thut toán thích nghi, mô pht toán thích nghi bng MATLAB. Nhóm thc hi tìm hiu kh ng ca các thut toán thích nghi trong. cho vic thi t k mt b lc s thích nghi.  ÁN TT NGHI P Trang 17 ng quan v lc s. 1.2 Giới thi u về bộ lọc số Trong x lý tín hiu sng nói tín hiu vào và ra

Ngày đăng: 11/09/2015, 00:58

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan