ΕΦΑΡΜΟΓΕΣ ΨΗΦΙΑΚΗΣ ΕΠΕΞΕΡΓΑΣΙΑΣ ΣΗΜΑΤΟΣ ΕΛΕΓΧΟΣ ΤΗΣ ΣΥΜΠΕΡΙΦΟΡΑΣ ΤΩΝ LTI ΣΥΣΤΗΜΑΤΩΝ ΣΤΟΠΕ ΙΟ ΤΩΝ ΣΥΧΝΟΤΗΤΩΝ Κρουστική Απόκριση LTIΣυστήµατος h(n) Απόκριση y(n) LTIΣυστήµατος Συστήµατοςσε σε σήµα εισόδου x(n) Όταν x(k)=ae ( ) ( ) ( ) y n = x k h( n k) = h k x( n k) Ae jω0 Ω0n k= k= ( ) y( n) = A h( k) e e = AH ( Ω0) e k= j Ω 0 k j Ω0 n j Ω0 n H(Ω)καλείται Απόκριση Συχνότητας του συστήµατος και είναι o DTFT της h(n). To Η(Ω 0 ) είναι η τιµή του DTFT στο Ω 0. sagri@di.uoa.gr 1
Συµπέρασµα Όταν η είσοδος x(n) είναι µία µιγαδική εκθετική συνάρτηση ψηφιακής κυκλικής συχνότητας Ω 0 τότε η έξοδος είναι επίσης µιγαδική εκθετική συνάρτηση της ίδιας κυκλική συχνότητας Ω 0 πολλαπλασιασµένη επί H(Ω 0 ). Θυµηθείτε ότι Η(Ω) είναι εν γένει µιγαδική συνάρτηση ( Ω ) = re( Ω ) + im ( Ω ) = ( Ω) jθ ( Ω) ( Ω ) = angle H ( Ω) H H jh H e θ Απολαβή (Gain Function)καλούµε τη συνάρτηση A(Ω) A ( Ω ) = H ( Ω) 20log 10 Απoδεικνύεται εύκολα ότι όταν x(n)=acosωn τότε ισχύει y(n)= Α Η(Ω 0 ) cos(θ(ω 0 )+Ω 0 ) Επίσης όταν x(n)=asinωn τότεισχύει y(n)= Α Η(Ω 0 ) sin( sin(θ(ω 0 )+Ω 0 ) Transfer Function (TF) ενός LTI συστήµατος, H(z) είναι ο z-μετασχηµατισµός της h(n). H z ( ) ( ) = h n z n= Προφανώς ότανθέσουµε στην transfer function z=e jω προκύπτει η απόκριση συχνότητας που µπορεί να γραφεί και ως Η(e j Ω ) n sagri@di.uoa.gr 2
Απόκριση κατά Συχνότητα των FIR LTI Συστηµάτων 0 h( n) = 0 n > Αν ορίσουµε =Μ 1 +Μ 2 Το πλήθος των µη µηδενικών στοιχείων είναι +1.Προσέξτε επειδή πιο κάτω η τάξη του φίλτρου θα συµβολίζεται µε nαντί του. Στα FIR Συστήµατα η Transfer Function (TF) µπορεί να γραφεί: 1 n < 1 1 n ( ) ( ) ( ) n= 2 n= 2 ( ( 1) ( 1 1) ( 2) ) 2 1 n+ 1 H z = h n z = z h n z = = + + + 1 z h h z h z Όπου Μ= 1 + 2.Μ είναι και η τάξη του FIR φίλτρου. Η ΤF µπορεί να γραφεί ως γινόµενο διωνύµων µε τη µορφή: ( ) 1 1 = ( 2) ( k ) = ( k ) H z z h z z z G z z k= 1 k= 1 Όπου z k k=1,2,,ρίζες της TFκαι G=h(- 2 ). Προφανώςη TF διαθέτει ακόµα 1 πόλους τοποθετηµένους στο µηδέν. Η απόκριση συχνότητας Η(Ω) του FIR φίλτρου επηρεάζεται άµεσα από της µη µηδενικές ρίζες της TF. Πράγµατι: j H ( Ω ) = H ( jω ) = G e Ω zk k= 1 Καθώς το Ω µεταβάλλεται από π π µέχρι π το e j Ω κινείται πάνω στο µοναδιαίο κύκλο και τα e j Ω -z k είναι ευθύγραµµα τµήµατα που µεταβάλλουν αντίστοιχα τα µήκη τους. sagri@di.uoa.gr 3
Im(z) H ( Ω ) = G Ai P i A 1 z 1 A 3 z 3 Ω P e jω Re(z) A 2 z 2 A 4 z 4 Απόκριση κατά Συχνότητα ΙIR LTI Συστηµάτων Η έξοδος ενός IIR Συστήµατος µπορεί να γραφεί: N ( ) = k ( ) + k ( ) y n a y n k b x n k k= 1 k= 0 και εποµένως: N ( ) + k ( ) = k ( ) y n a y n k b x n k k= 1 k= 0 Λαµβάνοντας Μετασχηµατισµό z των δύο µελών: και εποµένως ( ) ( ) N ( ) 1 N k 1+ ak z Y z = b z X z k= 1 k= 0 k ( ) k ( ) k bk z 0 1... k= N 0 ( Ν Μ) k= 1 0 N k N N 1... k k= 1 k= 1 ( z z ) k Υ z b + b z + + b z H z = = = z = b z Χ z a + a z + + z + a z z p ( ) ( Ν Μ ) k = 1 H z = G z N ( z z k ) ( z p k ) ( ) όπου z k k=1,2, οι ρίζες και p k k=1,2, N οι πόλοι του συστήµατος και G=b 0. k = 1 k sagri@di.uoa.gr 4
Η Απόκριση Συχνότητας βρίσκεται jω jω jω H e z1 e z2 e z ( ) G Ω = e p e p e p jω jω jω 1 2 N j ( ) ( Ω jω Ω = + k ) ( k ) H G e z e p k= 1 k= 1 Παράδειγµα 7.2 1 z = = 1 0.5z z 0.5 ( ) 1 H z Απόκριση Η(Ω)? Απάντηση jω e 1 1 H ( Ω ) = H j ( Ω ) = = Ω jω e 0.5 e 0.5 1.25 cos Ω H ( Ω) H ( Ω) max όταν Ω=0 2 max ( ) ( Ω) ( Ω) jω e jω 1 sin H ( Ω ) = H ( Ω ) = Ω ( e 0.5) = Ω tan jω e 0.5 cos 0.5 sagri@di.uoa.gr 5
Παράδειγµα 7.3 ( ) H z 2 = z j π π j 3 3 z 0.7e z 0.7e H ( ) Ω = 1 π π j j 3 jω 3 jω e 0.7e e 0.7e sagri@di.uoa.gr 6
Φάσµα Πλάτους για Ιδανικά Ψηφιακά Φίλτρα sagri@di.uoa.gr 7
Οι αποκρίσεις Συχνότητας του προηγούµενου Σχήµατος είναι αδύνατον να επιτευχθούν! Στην πράξη οι αποκρίσεις έχουν τη µορφή: Ω p : ηλώνει το τέλος της Ζώνης ιέλευσης. Ω st δ 1 : Κυµάτωση στη Ζώνη ιέλευσης (Ζ ). δ 2 : Κυµάτωση στη Ζώνη Αποκοπής (ΖΑ). st : ηλώνει την αρχή της Ζώνης Αποκοπής. Ω st -Ω p : ηλώνει τo Εύρος Ζώνης Αποκοπής. Ω c : ηλώνει τη συχνότητα αποκοπής Η(Ω c ) 2 =0.5. Η(Ω). Η(Ω) 2 max R p = 20log 10 (1+δ 1 ) 0 Ripple σε db της Ζ. Α s =- 20log10(1+δ 2 )>0 Απολαβή σε db στη Ζ. sagri@di.uoa.gr 8
Α s =- 20log10(1+δ 2 )>0 Απολαβή σε db στη Ζ. Η Φάση των Ψηφιακών Φίλτρων Μια βασική ιδιότητα που απαιτείται από τα φίλτρα είναι η να µεταβάλλεται γραµµικά µε τη συχνότητα η φάση της απόκρισης συχνότητας, τουλάχιστον στη ζώνη διέλευσης. Η ιδιότητα αυτή εξαφανίζει την παραµόρφωση φάσης. sagri@di.uoa.gr 9
Η ιδιότητα της γραµµικά µεταβαλλόµενης φάσης δεν υπάρχει στα αναλογικά φίλτρα και στα ψηφιακά µπορεί να επιτευχθεί µόνο από ορισµένα FIR φίλτρα. Ένα FIR φίλτρο µε κρουστική απόκριση: bn για 0 n 1 h( n) = 0 παντού αλλού Παρουσιάζει γραµµική φάση τότε και µόνο τότε, όταν µια από τις ακόλουθες συνθήκες ισχύει. Η κρουστική απόκριση είναι συµµετρική ή αντισυµµετρική. h( n) = h( 1 n) ή h( n) = h( 1 n) sagri@di.uoa.gr 10
Καθώς τα IIR φίλτρα δεν µπορούν να παρουσιάσουν γραµµική φάση µερικές φορές επιδιώκουµε να παρουσιάζουν µηδενική φάση. Angle(H(Ω)) ))=0Η(Ω) πραγµατική και θετική σε όλη τη ζώνη διάβασης. Η πιο πάνω συνθήκη εξασφαλίζεται από µία κρουστική απόκριση µε πραγµατικούς συντελεστές και άρτια συµµετρία ως προς το µηδέν. Τα φίλτρα αυτά είναι αναγκαστικά µη υλοποιήσιµα και χρησιµοποιούνται µόνο για off line επεξεργασία. Τεχνικές: ΣΧΕ ΙΑΣΗ ΦΙΛΤΡΩΝ FIR 1.Χρήση DTFT και παραθύρων. 2. ειγµατοληψία των συχνοτήτων και IDFT. 3. Τεχνικές Βελτιστοποίησης. εν θεωρούµε σκόπιµο να γίνει πλήρης ανάλυση όλων των πιο πάνω µεθόδων. Ένας τεχνικός µπορεί να χρησιµοποιεί ειδικό πρόγραµµα που δίνει απευθείας τους συντελεστές του φίλτρου. Εν τούτοις οι δύο πρώτες µέθοδοι µπορούν εύκολα να περιγραφούν µε τις γνώσεις που έχουµε µέχρι τώρα. sagri@di.uoa.gr 11
Υπολογισµός FIR µέσω DTFT και παραθύρων Στη τεχνική αυτή χρησιµοποιούµε τον αντίστροφο DTFT για να υπολογίσουµε την αντίστοιχη κρουστική απόκριση. Η απόκριση αυτή βέβαια είναι µη αιτιατή και άπειρου µήκους, οπότε χρησιµοποιούµε ένα παράθυρο από του γνωστούς τύπους ώστε να περιορίσουµε τη τάξη του φίλτρου. Στο Σχήµα της εποµένης διαφάνειας δίνεται η τεχνική του Widowing. Στο α µέρος του Σχήµατος έχουµε λάβει τον ορθογώνιο παλµό του οποίου ο IDTFT h(n) θα ήταν η κρουστική απόκριση του ζητουµένου φίλτρου. sagri@di.uoa.gr 12
Η h(n) όµως έχει άπειρο µήκος και είναι µη αιτιατό σήµα. Για να δηµιουργήσουµε FIR φίλτρο γραµµικής απόκρισης φάσης αποφασίζουµε να περιοριστούµε σε Ν=2Μ+1 δείγµατα γύρω από το κέντρο, λαµβάνοντας έτσι την κρουστική απόκριση : 1( ) = h( n) w( n) w( n) h n 1 n = 0 n > Ο DTFT της ακολουθίας w(n)είναι ένα sincκαι εποµένως η Η 1 (Ω) είναι η κυκλική συνέλιξη ενός sinc και του επιθυµητού ορθογώνιου παλµού. Αυτό έχει ως συνέπεια η Η 1 (Ω) να µην µηδενίζεται εκτός της ζώνης διέλευσης και να αποκτά και ζώνη µετάβασης και να εµφανίζεται κωδωνισµός (ripple) σε όλες τις ζώνες. Το εύρος της ζώνης µετάβασης και το ripple στη Ζώνη Αποκοπής εξαρτώνται από το πλήθος Ν των συντελεστών που έχουν διατηρηθεί. Αποδεικνύεται ότι για το ορθογώνιο παράθυρο που χρησιµοποιήσαµε πιο πάνω το rippleδεν επιτρέπει το Gain στη ζώνη αποκοπής να κατέβει κάτω από τα -21 db ενώ το εύρος της ζώνης µετάβασης δίνεται από τον τύπο Ω= 0.92 π / Μ Ν=2Μ+1 Αν αντί για ορθογώνιο παράθυρο χρησιµοποιηθούν άλλα παράθυρα, όπως π.χ. το Hamming παράθυρο που έχουµε στο Σχήµα µέρος β, τοελάχιστο ripple κατεβαίνει αλλά αυξάνει το εύρος της ζώνης µετάβασης. sagri@di.uoa.gr 13
Στο πιο κάτω Πίνακα δίνονται τα χαρακτηριστικά των πιο γνωστών παραθύρων. Functions του ATLAB για τη Μελέτη των Φίλτρων function freqz(b,a,samples b,a,samples): Σχεδιάζει την απόκριση συχνότητας ( Η(Ω) και angle(ω))ως συνάρτηση του Ω στο διάστηµα [0,π]. Λειτουργεί τόσο για φίλτρα FIR όσο και για IIR. έχεται για παραµέτρους τους συντελεστές των πολυωνύµων του πηλίκου απόκρισης που δίνονται ως διανύσµατα, a για τον αριθµητή και b για τον παρανοµαστή. Αν πρόκειται για FIR φίλτρο to a τίθεται ίσο µε 1. Η παράµετρος samples καθορίζει σε πόσα σηµεία θα υπολογιστεί η απόκριση. Άλλες χρήσεις της πιο πάνω function θα βρείτε στο Help. sagri@di.uoa.gr 14
function fir1(n,w): Υπολογίζει ένα low pass FIR φίλτρο µε την τεχνική της DTFT προσέγγισης. n: H τάξη (n+1συντελεστές) του ζητούµενου φίλτρου. W:ένας αριθµός µεταξύ 0 και 1 που καθορίζει την κυκλική συχνότητα αποκοπής διαιρεµένη διά π. (Ω c /π). Αν δεν χρησιµοποιηθεί άλλη παράµετρος χρησιµοποιεί παράθυρο Hamming. function fir1(n,w,window): H πιο πάνω function συµπληρώνεται από το διάνυσµα window στο οποίο πρέπει να τοποθετηθούν τα δείγµατα του παραθύρου που επιθυµούµε να χρησιµοποιήσουµε. Τα δείγµατα πρέπει να είναι n+1 στο πλήθος, δηλαδή όσοι και οι συντελεστές του FIR φίλτρου, ή 1 περισσότεροι από την τάξη του φίλτρου. Η function fir1µπορεί να χρησιµοποιηθεί επίσης για υπολογισµό FIR όλων των άλλων τύπων (διέλευσης ζώνης, υψηλών συχνοτήτων κ.λ.π.. Για την αντίστοιχη σύνταξη πρέπει να µελετήσετε το Help του atlab) function w=bartlett(l): H πιο πάνω function δέχεται ως είσοδο το µήκος του παραθύρου που επιθυµούµε και επιστρέφει στο w τους L συντελεστές του παραθύρου bartlett. Πάρόµοιαµπορούµε µπορούµε να υπολογίσουµε παράθυρο τύπου Ορθογώνιου:χρησιµοποιώνταςτη τη function w=rectwin rectwin(l) Hanningχρησιµοποιώντας τη function w=barthannwin barthannwin(l), Hamming χρησιµοποιώντας τη function w=hamming(l), Blacmanχρησιµοποιώντας τη function w=blackman blackman(l). sagri@di.uoa.gr 15
Η window µπορεί να χρησιµοποιηθεί επίσης για υπολογισµό των δειγµάτων παραθύρου όλων των τύπων. Βλέπε Help ΜΑΤLΑΒ. Παράδειγµα Να υπολογίσετε µε την τεχνική DTFT και παράθυρο FIR low pass φίλτρο που να εξασφαλίζει απόσβεση τουλάχιστον40 db Ω C =π/3 καιω st <π/2. Σχεδιάστε την απόκριση του φίλτρου. Απάντηση 1. Υπολογισµός του τύπου του παραθύρου:από τον Πίνακα µε τα Χαρακτηριστικά των Παραθύρων προκύπτει ότι το παράθυρο Hanning καλύπτει την αίτηση απόσβεσης των 40 db. Για το παράθυρο Hanning δίνεται Ω=3.11π/Μ (n=2). 2. Υπολογισµός τάξης φίλτρου n:το εύρος της περιοχής µετάβασης πρέπει να είναι Ω<π/2-π/3=π/6. π/3=π/6. Ω=3.11π/Μ π/6>3.11π/μμ>18.66μ=19 Μ=19 n=2=38. To πρόγραµµα % Programma to evaluate low pass filter % Omega_c=pi/3 Omega_st=pi/2 n=38;% The order of the filter. w=barthannwin(n+1);%compute hanning window of n+1 length h=fir1(n,1/3,w);%1/3 i.e. Omega_C=pi/3 freqz(h,1,512)%design H(Omega) sagri@di.uoa.gr 16
Η Απόκριση. 20 agnitude (db) 0-20 -40-60 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Normalized Frequency ( π rad/sample) 0 Phase (degrees) -1000-2000 -3000-4000 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Normalized Frequency ( π rad/sample) Υπολογισµός FIR µε δειγµατολήπτησησυχνότητας,, IDFT και παράθυρο. sagri@di.uoa.gr 17
function h=fir2( fir2(n,f,m): Υπολογίζει ένα γραµµικής φάσης low pass FIR φίλτρο µε την τεχνική της προσέγγισηςτης Η(Ω) µέσω δειγµατολήπτησης, DFT και παραθύρωσης. n: H τάξη (n+1 συντελεστές) του ζητούµενου φίλτρου. f:διάνυσµα µε τιµές ψηφιακής κυκλικής συχνότητας διαιρεµένες διά π (0 έως 1). m:διάνυσµα ίδιου µεγέθους µε το f,το οποίο περιέχει τις αντίστοιχες τιµές του Η(Ω). h:η Η κρουστική απόκριση του φίλτρου. Λειτουργία Τα δείγµατα που δίνονται µε τα διανύσµατα f,m, συµπληρώνονται µε γραµµική παρεµβολή σε512 ισαπέχοντα δείγµατα από το 0-1. Προσαρτώνται άλλα 512 για αρνητικές τιµές του Ω/π.Υπολογίζεται ο IDFT και γίνεται παραθύρωσητου αποτελέσµατος µε παράθυρο Hamming µε Ν+1 σηµεία Υπάρχει δυνατότητα να επιλεγεί ιδιαίτερα το παράθυρο καθώς και το πλήθος των αρχικών σηµείων. Για παράδειγµα µε τη σύνταξη: h=fir2( fir2(n,f,m,npt,window): ):καθορίζεται ο αρχικός αριθµός των δειγµάτων, καθώς και το παράθυρο που θα χρησιµοποιήσουµε, το οποίο καθορίζεται µε το διάνυσµα window,το οποίο πρέπει να περιέχει n+1 δείγµατα από το επιθυµητό τύπο παραθύρου. sagri@di.uoa.gr 18
Παράδειγµα : Επιθυµούµε να δηµιουργήσουµε φίλτρο διέλευσης ζώνης µε απόσβεση τουλάχιστον 40 dbη Η ζώνη διέλευσης είναι για 0.3<Ω<0. <0.7 και επιθυµούµε ζώνες µετάβασης Ω<0. <0.15. Να επιλεγεί τάξη φίλτρου, και παράθυρο. Τέλος υπολογίστε το φίλτρο. Απάντηση: Όµοια όπως και µε το FIR1: 40 db Hanning παράθυρο. Ω=3.11π/ΜΜ=3.11π/ Ω Μ>65.14 Μ=66 n=132. Πρόγραµµα : % Programma to evaluate band pass filter % F_c=0.3-0.7 DOEGA<0.15 n=132;% The order of the filter. w=barthannwin(n+1);%compute hanning window of n+1 length %frequqency response samples f=[0 Απάντηση: 0.15 0.3 0.7 0.85 pi]/pi;%detemines digital frequency points m=[0 0 1 1 0 0];%detemines FR.Response values h=fir2(n,f,m,w); freqz(h,1,512)%design H(Omega) sagri@di.uoa.gr 19
Αποτέλεσµα 0 agnitude (db) -20-40 -60-80 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Normalized Frequency ( π rad/sample) 0 Phase (degrees) -5000-10000 -15000 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Normalized Frequency ( π rad/sample) Infinite Impulse Response IIR Η έξοδος ενός IIR Συστήµατος µπορεί να γραφεί: N ( ) = k ( ) + k ( ) y n a y n k b x n k k= 1 k= 0 και εποµένως: N ( ) + k ( ) = k ( ) y n a y n k b x n k k= 1 k= 0 Λαµβάνοντας Μετασχηµατισµό z των δύο µελών: N k 1+ ak z Y z = b z X z k= 1 k= 0 k ( ) k ( ) sagri@di.uoa.gr 20
και τελικά ( ) ( ) k bk z 0 1... k= N 0 ( Ν Μ) k= 1 N 0 N k N N 1... k k= 1 k= 1 ( z z ) k Υ z b + b z + + b z H ( z) = = = z = b z Χ z a + a z + + z 1+ a z z p ( ) ( Ν Μ ) k = 1 H z = G z N ( z z k ) ( z p k ) k = 1 ( ) όπου z k k=1,2, οι ρίζες και p k k=1,2, N οι πόλοι του συστήµατος και G=b 0. Η Απόκριση Συχνότητας βρίσκεται jω jω jω H e z1 e z2 e z ( ) G Ω = e p e p e p jω jω jω 1 2 k Πλεονέκτηµα των Φίλτρων IIR Το βασικό πλεονέκτηµα είναι ή επίτευξη καθορισµένης απόσβεσης µε πολύ µικρότερη τάξη από τα FIR. Το πλεονέκτηµα αυτό οφείλεται στους πόλους οι οποίοι αυξάνουν την απόσβεση σε καθορισµένες περιοχές. Η µικρή τάξη συνεπάγεται µικρότερη απαίτηση µνήµης λιγότερους πολλαπλασιασµούς ανά επεξεργαζόµενο δείγµα και µικρότερο delay µεταξύ εισόδου και εξόδου. Μειονέκτηµα των Φίλτρων IIR Το βασικό µειονέκτηµα είναι ότι δεν παρουσιάζουν γραµµική µεταβολή της φάσης µε τη συχνότητα, αλλά σε µερικές εφαρµογές αυτό δεν είναι καταστροφικό. sagri@di.uoa.gr 21
Μια βασική εφαρµογή, την οποία δεν βλάπτει η µη γραµµικότητα στη µεταβολή της φάσης, είναι η επεξεργασία οµιλίας. Για το λόγο αυτό στην επεξεργασία οµιλίας χρησιµοποιούµε κυρίως ΙΙR φίλτρα. Σχεδιασµός IIRΨηφ Ψηφ.. Φίλτρων. Αν εξαιρέσουµε τις εµπειρικές τεχνικές καθορισµού πόλων και ριζών που έχουµε παρουσιάσει νωρίτερα, ο επικρατέστερος τρόπος σχεδιασµού ψηφιακού IIR φίλτρου είναι από τη χρήση µεθόδων υπολογισµού αναλογικών IIR φίλτρων. Συγκεκριµένα αν επιθυµούµε κάποιες επιδόσεις από ένα IIRψηφιακό φίλτρο, βρίσκουµε ένα αναλογικό µε ανάλογες επιδόσεις και µετατρέπουµε τον µετασχηµατισµό Laplace L(s) σε Μετ. Ζ Η(z)µέσω του Bilinear Transform. Οι πιο Γνωστοί Τύποι Αναλογικών Φίλτρων Butterworth Αναλογικά Φίλτρα Απόκριση Συχνότητας: Χαρακτηριστικό της Απόκρισης Συχνότητας είναι η µορφή: H G ( ω) = 2 ω 1+ ωc n, n τάξη του φίλτρου Ο µαθηµατικός αυτός τύπος υποδεικνύει ότι υπάρχει ασήµαντο ripple και ότι µετά την κυκλ.. συχνότητα ω C η ενίσχυση πλάτους κατέρχεται σταθερά 6 db/οκταβα οκταβα. sagri@di.uoa.gr 22
Μετασχηµατισµός Laplace: Η(s) Στα φίλτρα Butterworth δεν υπάρχουν ρίζες και ισχύει: 2 G H ( s) H ( s) = 1+ 2 2 ( s ωc ) Για παράδειγµα το τρίτης τάξης Butt φίλτρο µε ω C =1. 2 G G H ( s) = H 2 3 ( s) H ( s) = 1+ 2s + 2s + s 1+ s n 2 ( ) 3 Chebyshev Φίλτρα Για την ίδια τιµή της τάξης τα φίλτρα Για την ίδια τιµή της τάξης τα φίλτρα Chebyshev παρουσιάζουν πολύ πιο απότοµη µεταβολή του Amplitude Gain από ό,τι τα Butterworth. Παρουσιάζουν όµως και σηµαντικό ripple. sagri@di.uoa.gr 23
Απόκριση Πλάτους H ( ω) = G ω + ωc 2 2 1 ε Tn H ( ω) db 1 ( ) = 2 1+ ε H ω ω ω C Bilinear Transformation ιγραµµικός Μετασχηµατισµός 2 z 1 s = T z + 1 T:σταθερά, η τιµή της οποίας δεν είναι κρίσιµη. Συνηθως T=2 sec s-plane jω Bilinear j z-plane -1 1 j T e Ω -j sagri@di.uoa.gr 24
Ο διγραµµικόςµετασχηµατισµός µετασχηµατισµός απεικονίζει κάθε σηµείο του s-επιπέδου (πεδίο ορισµού του Laplace του αναλογικού φίλτρου) στο z-επίπεδο (πεδίο ορισµού του z-transform του ψηφιακού φίλτρου). Πιο συγκεκριµένα όλα τα σηµεία από το αριστερό ηµιεπίπεδο του s-επιπέδου απεικονίζονται στο εσωτερικό του µοναδιαίου κύκλου στο z-επίπεδο. Όλα τα σηµεία από τον άξονα των φανταστικών αριθµών jω ω του s-επιπέδου απεικονίζονται στα σηµεία της περιφέρειας του µοναδιαίου κύκλου. Η αναλογική κυκ.συχν.. ω απεικονίζεται στη ψηφιακή κυκλική συχνότητα Ω: 1 ωt 2 Ω Ω = 2 tan ω = tan 2 T 2 Παράδειγµα Να σχεδιαστεί ψηφιακό φίλτρο διέλευσης ΧΣ Butterworth που λειτουργεί σε συχνότητα δειγµατοληψίας f S =100 KHz µε διέλευσης f p =10KHz στα 0.4 db και εξασθένηση 50 db στη συχνότητα f st =30 KHz. Λάβετε Τ=2 sec Απάντηση 1. Αρχικά υπολογίζουµε τις κανονικοποιηµένες συχνότητες του ψηφιακού φίλτρου. 2π f p 2π 10KHz Ω p = = = 0.6283 rad f 100KHz s 2π fst 2π 30KHz Ω st = = = 1.8850 rad f 100KHz s sagri@di.uoa.gr 25
2 Από τη σχέση που συνδέει αναλογικές και ψηφιακές κυκλικές συχνότητες υπολογίζουµε τις αντίστοιχες αναλογικές συχνότητες. 1 ωt Τ Ω Ω = 2 tan ω = tan 2 2 2 2 Ω p 2 0.6283rad ω p = tan = tan = 0.3249 rad/sec T 2 2 2 2 Ωst 2 1.8850 ωst = tan = tan = 1.3764 rad/sec T 2 2 2 3. Υπολογισµός τάξης φίλτρου. 3. Υπολογισµός τάξης και συχνότητας αποκοπής φίλτρου. ηλαδή: H ( H( ω ) ) ( ωp ωc ) ( ω) 2 = 1+ ( ωp ωc ) 1 2n (( ω ωc ) ) 2n, n τάξη του φίλτρου n ( ( ω ω ) ) 2 2 0.4 p = = 0.4 db 10log 2 10 1+ p C = 10 n db 2n 1+ = 0.04 10 1 ( H( ω ) ) 1 db 1 = = 50 = 10 1 ( ω ω ) 2 2n 5 st db 2n st C db 1 ( ωst ωc ) + db ( ωp ωc ) ( ω ω ) st C 2n = 0.0965 2n 5 = 10 Από το πιο πάνω σύστηµα εξισώσεων υπολογίζεται η τάξη του φίλτρου n και η συχνότητα αποκοπής ω C. sagri@di.uoa.gr 26
( ωst ωp) 2n ηλαδή: n=5. Και 5 6 = 10 0.0965 = 1.036 10 6 ( ) ( ωst ωp) n= 0.5log 1.036 10 log = 4.797 C 10 10 ω = ω = st 2 n 5 10 0.4353 rad/sec ηλαδή πρέπει να προσδιορίσουµε την transfer function ενός αναλογικού φίλτρου Batterworthτάξης n µε συχνότητα αποκοπής ω C =0.4353 rad/sec. Στη συνέχεια µέσω του bilinear µετασχηµατισµού θα υπολογίσουµε την transfer function Η(z)του αναζητούµενου ΙΙR ψηφιακού φίλτρου. Για να αποφύγουµε τις πολύπλοκες πράξεις καταφεύγουµε σε πρόγραµµα ATLAB. % Determine zeros (zb),poles (pb) and gain (G) of an analog % Buttworth Filter of order n =5 and with cut frequency wc=1 rad/hz %(normalized filter) [zb pb G]=buttap(5);% n=5 % From zeros (zb),poles (pb) and gain (G) determine the transfer function % Ha0(s)=num(s)/denum(s) for the normalized filter [numb denb]=zp2tf(zb,pb,g);% transfer function of the normalized filter. % Determine Ha(s)=B(s)/A(s) transfer function with with wc=0.4353 [B A]=lp2lp(numb,denb,0.4353);%wc=0.4353 %Aply bilineae transform with T=2 sec to compute transfer function of %digital filter H(z)=b(z)/a(z) [b,a]=bilinear(b,a,1/2);%f=1/t =0.5 Hz % Design frequency response freqz(b,a,512); % Try to plot frequency response in a better resolution. [h f]=freqz(b,a,512); figure;plot(f,20*log10(abs(h))) axis([0 pi -60 5]);grid minor; xlabel('\rightarrow \Omega') ylabel(' X(\Omega) _{db}') grid sagri@di.uoa.gr 27
Αποτελέσµατα 0 agnitude (db) -100-200 -300 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Normalized Frequency ( π rad/sample) 0 Phase (degrees) -200-400 -600 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Normalized Frequency ( π rad/sample) Απόκριση πλάτους και φάσης Αποτελέσµατα 0-10 -20 X(Ω) db -30-40 -50-60 0 0.5 1 1.5 2 2.5 3 Ω Απόκριση πλάτους σε καλύτερη κλίµακα sagri@di.uoa.gr 28
Αξίζει να γράψουµε την transfer function τουψηφιακού Φίλτρου που έχουµε σχεδιάσει. Αφού τρέξει το πρόγραµµα ζητούµε να δοθεί η τιµή των συντελεστών [b]και [a]στο παράθυρο του ATLAB. Μεταφέρουµε εδώ. [b] = 0.0039 0.0197 0.0394 0.0394 0.0197 0.0039 [a] = 1.0000-2.3608 2.6126-1.5483 0.4862-0.0636 ( ) H z και εποµένως η transfer function H(z) 0.0039+ 0.0197z + 0.0394z + 0.0394z + 0.0197z + 0.0039z = 1 2 3 4 5 1 2.3608z + 2.6126z 1.5483z + 0.4862z 0.0636z 1 2 3 4 5 ( ) = 0.0039 ( και ) + 0.0197 η εξίσωση ( 1) + διαφορών: 0.0394 ( 2) + 0.0394 ( 3) + 0.0197x( n 4) + 0.0039x( n 5) + 2.3608y( n 1) 2.6126 y( n 2) + 1.5483y( n 3) 0.4862y( n 4) + 0.0636y( n 5) y n x n x n x n x n και η εξίσωση διαφορών: ( ) = 0.0039 ( ) + 0.0197 ( 1) + 0.0394 ( 2) + 0.0394 ( 3) + 0.0197x( n 4) + 0.0039x( n 5) + 2.3608y( n 1) 2.6126 y( n 2) + 1.5483y( n 3) 0.4862 y( n 4) + 0.0636 y( n 5) y n x n x n x n x n Παρατηρείστε ότι για κάθε δείγµα σήµατος απαιτούνται 11 πολλαπλασιασµοί. sagri@di.uoa.gr 29