bài tập thiết kế lọc số và mã hóa băng con

12 583 0
bài tập thiết kế lọc số và mã hóa băng con

Đ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 ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN TỬ VIỄN THÔNG BÀI TẬP MÔN Thiết kế lọc số và mã hóa băng con Người hướng dẫn: Học viên thực hiện: TS. Ngô Văn Sỹ Phạm Hữu Phương Đà Nẵng, 12/2012 3.3c) Phân tích biến đổi DTFT của dãy sau vẽ đồ thị biên độ và pha của X(e jω u(n)} = 2 (1 0.5 ) Dùng MATLAB để vẽ đồ thị biên độ và pha của X(e jω w = [0:1:500]*pi/500; X = (0.5)*exp(-j*w) ./ ((1 - 0.5*exp(-j*w)).^(2)) ; magX = abs(X); angX = angle(X); subplot(2,1,1); plot(w/pi,magX); grid xlabel('frequency in pi units') ; title('Magnitude Part'); ylabel('Magnitude') subplot(2,1,2); plot(w/pi,angX); grid xlabel('frequency in pi units'); title('Angle Part'); ylabel('Radians')

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN TỬ VIỄN THÔNG BÀI TẬP MÔN Thiết kế lọc số hóa băng con Người hướng dẫn: Học viên thực hiện: TS. Ngô Văn Sỹ Phạm Hữu Phương Lớp: K25.KĐT.ĐN Đà Nẵng, 12/2012 3.3c) Phân tích biến đổi DTFT của dãy sau vẽ đồ thị biên độ pha của X(e ω j ) sử dụng MATLAB. x(n) = n(0.5) n u(n) X(e ω j ) = F{ n(0.5) n u(n)} = 2 )5.01( 5.0 ω ω j j e e − − − Dùng MATLAB để vẽ đồ thị biên độ pha của X(e ω j ) w = [0:1:500]*pi/500; X = (0.5)*exp(-j*w) ./ ((1 - 0.5*exp(-j*w)).^(2)) ; magX = abs(X); angX = angle(X); subplot(2,1,1); plot(w/pi,magX); grid xlabel('frequency in pi units') ; title('Magnitude Part'); ylabel('Magnitude') subplot(2,1,2); plot(w/pi,angX); grid xlabel('frequency in pi units'); title('Angle Part'); ylabel('Radians') 4.12a) Cho hệ thống tuyến tính bất biến được mô tả bởi hàm hệ thống dưới đây, xác định i) đáp ứng xung ii) phương trình hiệu iii) đồ thị điểm cực - điểm không iv) ngõ ra y(n) nếu ngõ vào x(n)= 3cos( π n/3)u(n) i) Xác định đáp ứng xung của hệ thống H(z) = 5.0 1 − + z z = -2 + 1 5.01 3 − − z h(n)= -2 δ (n) + 3(0.5) n u(n) ii) Xác định phương trình hiệu của hệ thống H(z)= )( )( zX zY = 5.0 1 − + z z = 1 1 5.01 1 − − − + z z Y(z) – 0.5 1− z Y(z) = X(z) + 1− z X(z) y(n) = x(n) + x(n-1) + 0.5y(n-1) iii) DùngMATLAB để vẽ đồ thị điểm không điểm cực của hệ thống b =[1,1]; a=[1,-0.5]; zplane(b,a) iv) Tìm ngõ ra y(n) nếu ngõ vào x(n)= 3cos( π n/3)u(n) x(n) = 3cos( π n/3)u(n) X(z) = 21 1 ) 3 (cos21 ) 3 (cos1 −− − +− − zz z π π , |z| 1〉 X(z) = 21 1 1 5.01 −− − +− − zz z Y(z)= H(z)X(z)= 1 1 5.01 1 − − − + z z x 21 1 1 5.01 −− − +− − zz z = 21 1 1 1 −− − +− + zz z Dùng MATLAP b =[1,1]; a=[1,-1,1]; [R,p,C]=residuez(b,a) R = 0.5000 - 0.8660i 0.5000 + 0.8660i p = 0.5000 + 0.8660i 0.5000 - 0.8660i C = [] Y(z)= 13/13/ 1 866.05.0 1 866.05.0 −−− − + + − − ze j ze j jj ππ y(n)= ( j866.05.0 − )e 3/ π jn u(n) + ( j866.05.0 + )e 3/ π jn− u(n) 6.10) Using the conjugate symmetry property of the DFT H(k) =    −=− = 1, ,1),(* 0),0( MkkMH kH and the conjugate symmetry of the W k M − factor, show that (6.12) can be put the form (6.13) and (6.14) for real FIR filters W k M − = W kM M − = (W k M )* H(z) = ( ∑ − = − − − − 1 0 1k- M W1 )( ) 1 ( M k M z kH M z (1) Can be put in the form H(z) = } 11 1 1 )2/( 1 )0( )(|)(|2 1 −− = − + + − +    − ∑ z MH z H zHkH M z L k k M Where L= 2 1−M for M odd, L = 1 2 − M for M even, and 2 0.8 , 60 s w Rp dB π = = 1 0.35 , 1 p w Rp dB π = = 2 0.65 , 1 p w Ap dB π = = 1 0.2 , 60 s w As dB π = = H k (z) = 21 1 ) 2 cos(21 ] 2 )(cos[)](cos[ −− − +− −∠−∠ z M k z M k kHzkH π π Proof. The sum in (1) can be expressed as (assuming M even) H(z) =       − + + + − + −         − ∑ ∑ − = −− − −= −−−− − 12/ 1 1 1 12/ 111 1 )( 1 )2/( 1 )( 1 )0(1 M k k M M Mk k M M zW kH z MH zW kH z H M z =       + + − + − − + −         − ∑ ∑ − = −−−− − −= −− − 12/ 1 111 1 12/ 1 1 )2/( 1 )0( *)(1 )(* 1 )(1 M k k M M Mk k M M z MH z H zW kMH zW kH M z =       + + − + − + −         − ∑ ∑ − = −−−− − = −− − 12/ 1 111 12/ 1 1 1 )2/( 1 )0( *)(1 )(* 1 )(1 M k k M M k k M M z MH z H zW kH zW kH M z =       + + − + −− −+−         − ∑ − = −−−−−− −−−− − 12/ 1 1111 11 1 )2/( 1 )0( *)(1][1[ )(*)(**))(()( 1 M k k M k M k M k M M z MH z H zWzW zWkHkHzWkHkH M z Consider 11 11 *)(1][1[ )(*)(**))(()( −−−− −−−− −− −+− zWzW zWkHkHzWkHkH k M k M k M k M = 21 11 )*]([21 )(**))(()(*)( −−−− −−−− ++− −−+ zWWz zWkHzWkHkHkH k M k M k M k M = 21 1 ) 2 cos(21 ] 2 )(cos[|)(|2)](cos[|)(|2 −− − +− −∠−∠ z M k z M k kHkHzkHkH π π =2|H(k)|H )(z k )(z k Which completes the proof. 7) Thiết kế bộ lọc thông dải kiểu FIR bằng phương pháp lấy mẫu tần số : Bài toán thiết kế: Cạnh thấp dải chắn: Cạnh thấp dải thông: Cạnh cao dải thông: Cạnh cao dải chắn: Chúng ta chọn M=40 để chúng ta có 2 mẫu trong dải chuyển tiếp, đưa vào tần số lấy mẫu trong dải chuyển tiếp là T 1 T 2 Các mẫu của đáp ứng độ lớn: { { { { { 1 2 2 1 1 2 2 1 5 7 9 7 4 (w) [0, ,0,T ,T ,1, ,1,T ,T ,0, ,0,T ,T ,1, ,1,T ,T ,0, ,0] r H = Tối ưu các giá trị T 1 T 2 với M=40 7 mẫu ở trong dải thông: T 1 = 0.10902 T 2 = 0.59417456 Chương trình thi hành bằng MTLAB Trong chương trình có sử dụng đến các hàm Hr_type2 freqz_m như sau: Hr_type2: function [Hr,w,b,L] = Hr_Type2(h); % % M = length(h); L = M/2; b = 2*[h(L:-1:1)]; % 1x(L+1) row vector n = [1:1:L]; n = n-0.5; w = [0:1:500]'*pi/500; Hr = cos(w*n)*b'; freqz_m: function [db,mag,pha,grd,w]=freqz_m(b,a); % Modified version of freqz subroutine % % [db,mag,pha,grd,w]=freqz_m(b,a); % db=Relative magnitude in dB computed over 0 to pi radians % mag=absolute magnitude computed over 0 to pi radians % grd= Group delay over 0 to pi radians % w=501 frequency samples between 0 to pi radians % b=numerator polynomial of H(z) (for FIR: a=h) % a=demonitor polynomial of H(z) (for FIR: a=[1]) % [H,w]=freqz(b,a,1000,'whole'); H=(H(1:1:501))';w=(w(1:1:501))'; mag=abs(H); db=20*log10((mag+eps)/max(mag)); pha=angle(H); grd=grpdelay(b,a,w); Chương trình chính: % THIET KE BO LOC FIR THONG DAI SU DUNG PP LAY MAU TAN SO % Cac thong so cua bo loc: % ws1=0.2pi, wp1=0.35pi, wp2=0.65pi, ws2=0.8pi, Rp=1dB, As=60dB % T2 = 0.59417456, T1=0.109021 M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l; T1 = 0.109021; T2 = 0.59417456; Hrs = [zeros(1,5),T1,T2,ones(1,7),T2,T1,zeros(1,9),T1,T2,ones(1,7) ,T2,T1,zeros(1,4)]; Hdr = [0,0,1,1,0,0]; wdl = [0,0.2,0.35,0.65,0.8,1]; k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1; angH = [-alpha*(2*pi)/M*k1, alpha*(2*pi)/M*(M-k2)]; H = Hrs.*exp(j*angH); h = real(ifft(H,M)); [db,mag,pha,grd,w] = freqz_m(h,1); [Hr,ww,a,L] = Hr_Type2(h); subplot(1,1,1) subplot(2,2,1);plot(wl(1:21)/pi,Hrs(1:21),'o',wdl,Hdr); axis([0,1,-0.1,1.1]); title('Bandpass: M=40,T1=0.5941, T2=0.109') xlabel(' '); ylabel('Hr(k)') set(gca,'XTickMode','manual','XTick', [0,0.2,0.35,0.65,0.8,1]) set(gca,'YTickMode','manual','YTick',[0,0.109,0.5941,1]); grid subplot(2,2,2); stem(l,h); axis([-1,M,-0.4,0.4]) title('Impulse response');ylabel('h(n)');text(M+1,-0.4,'') subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o'); axis([0,1,-0.1,1.1]); title('Amplitude response') xlabel('Frequency in pi unit'); ylabel('Hr(w)') set(gca,'XTickMode','manual','XTick', [0,0.2,0.35,0.65,0.8,1]) set(gca,'YTickMode','manual','YTick', [0,0.109,0.5941,1]);grid subplot(2,2,4);plot(w/pi,db); axis([0,1,-100,10]); grid title('Magnitude response'); xlabel('Frequency in pi unit'); ylabel('Decibel'); set(gca,'XTickMode','Manual','XTick', [0,0.2,0.35,0.65,0.8,1]); set(gca,'YTickMode','Manual','YTick',[-60;0]); set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0']) Kết quả chương trình: 7.23 7.22) A digital signal x(n) contains a sinusoid of frenquency 2/ π and a Gaussian noise )(n ω of zero mean and unit variance; that is, x(n) = 2 cos )( 2 n n ω π + We want to filter out the noise component using a 50 th -order causal and linear-phase FIR filter. Using MATLAB: %% Specifications N = 50; % Order of the filter w0 = 0.5*pi; % Center frequency Bandwidth = 0.02*pi; % Bandwidth % % Deltaw = Transition bandwidth (iteration variable) % wp1 = w0-Bandwidth/2; wp2 = w0+Bandwidth/2; % (a) Design Deltaw = 0.02*pi; % Initial guess ws1=wp1-Deltaw; ws2=wp2+Deltaw; F=[0, ws1, wp1, wp2, ws2, pi]/pi; m=[0,0,1,1,0,0]; h=remez(50,F,m); [db,mag,pha,grd,w]=freqz_m(h,1); delta_w = pi/500; Asd = floor(-max(db([1:floor(ws1/delta_w)]))); % Actual Attn Asd =13; % Next iteration Deltaw = Deltaw+0.01*pi; ws1=wp1-Deltaw; ws2=wp2+Deltaw; F=[0, ws1, wp1, wp2, ws2, pi]/pi; h=remez(50,F,m); [db,mag,pha,grd,w]=freqz_m(h,1); delta_w = pi/500; Asd = floor(-max(db([1:floor(ws1/delta_w)]))); % Actual Attn Asd = 20 % Next iteration Deltaw = Deltaw+0.01*pi; ws1=wp1-Deltaw; ws2=wp2+Deltaw; F=[0, ws1, wp1, wp2, ws2, pi]/pi; h=remez(50,F,m); [db,mag,pha,grd,w]=freqz_m(h,1); delta_w = pi/500; Asd = floor(-max(db([1:floor(ws1/delta_w)]))); % Actual Attn Asd = 26 % Next iteration Deltaw = Deltaw+0.01*pi; ws1=wp1-Deltaw; ws2=wp2+Deltaw; F=[0, ws1, wp1, wp2, ws2, pi]/pi; h=remez(50,F,m); [db,mag,pha,grd,w]=freqz_m(h,1); delta_w = pi/500; Asd = floor(-max(db([1:floor(ws1/delta_w)]))), % Actual Attn Asd =30 Hf_1 = figure('Units','normalized','position',[0.1,0.1,0.8,0.8],'color',[0,0,0]); . pha=angle(H); grd=grpdelay(b,a,w); Chương trình chính: % THIET KE BO LOC FIR THONG DAI SU DUNG PP LAY MAU TAN SO % Cac thong so cua bo loc: % ws1=0.2pi, wp1=0.35pi, wp2=0.65pi, ws2=0.8pi, Rp=1dB,. [db,mag,pha,grd,w]=freqz_m(b,a); % db=Relative magnitude in dB computed over 0 to pi radians % mag=absolute magnitude computed over 0 to pi radians % grd= Group delay over 0 to pi radians % w=501 frequency. unit'); ylabel('Decibel'); set(gca,'XTickMode','Manual','XTick', [0,0.2,0.35,0.65,0.8,1]); set(gca,'YTickMode','Manual','YTick',[-60;0]); set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0']) Kết quả chương trình: 7.23 7.22) A digital signal x(n) contains a sinusoid of frenquency 2/ π and a Gaussian noise )(n ω of zero mean and unit variance; that is, x(n)

Ngày đăng: 17/05/2014, 15:30

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan