Φίλτρα
Νιώσε — γιατί μας ενδιαφέρουν τα φίλτρα
Φαντάσου ότι ακούς ραδιόφωνο σε γεμάτη πόλη. Πέφτουν πάνω στην κεραία σου όλοι οι σταθμοί ταυτόχρονα — δεκάδες σήματα στις δικές τους συχνότητες. Όταν γυρνάς τον διακόπτη συντονισμού στα 95.5 MHz, αυτό που γίνεται μέσα στον δέκτη είναι ένα φίλτρο: αφήνει να περάσει η ζώνη γύρω από τα 95.5 MHz και κόβει τα πάντα γύρω της.
Άλλο παράδειγμα: φοράς ακουστικά noise-cancelling. Το κύκλωμα μέσα ξεχωρίζει τη φωνή του φίλου σου (μέσες συχνότητες, ~300 Hz – 3 kHz) από το χαμηλόσυχνο μουρμουρητό του αεροπλάνου (κάτω από 200 Hz) — και τη χαμηλόσυχνη συνιστώσα την «κόβει». Κι αυτό φίλτρο είναι.
Με τα εργαλεία που χτίσαμε στα προηγούμενα κεφάλαια, μπορούμε τώρα να πούμε αυτή τη διαδικασία ακριβώς:
- Από το κεφάλαιο των συστημάτων ξέρουμε ότι ένα LTI σύστημα έχει κρουστική απόκριση .
- Από το κεφάλαιο του Fourier transform ξέρουμε ότι αυτό περιγράφεται στη συχνότητα από , και η έξοδος είναι .
Σε αυτό το κεφάλαιο εστιάζουμε σε μια ειδική κατηγορία LTI: εκείνα όπου σχεδιάζουμε επίτηδες το ώστε να αφήνει να περάσουν μερικές συχνότητες και να αποκλείει άλλες. Αυτά είναι τα φίλτρα. Είναι το πιο συχνό LTI στην πράξη — υπάρχει σχεδόν σε κάθε δέκτη, σε κάθε αναλογικό στάδιο επεξεργασίας ήχου, και (όταν φτάσουμε στις διαμορφώσεις) σε σχεδόν κάθε σχήμα demodulation και θορύβου.
1. Τι είναι ένα φίλτρο — και τα τέσσερα κλασικά σχήματα
Slide 36 το διατυπώνει ως:
«Συνήθως, πρόκειται για σύστημα που ακυρώνει κάποιες από τις συχνότητες του σήματος εισόδου επιτρέποντας τη διέλευση κάποιων άλλων.»
Πιο τυπικά: ένα φίλτρο είναι ένα LTI σύστημα του οποίου το έχει σχήμα που διαλέγουμε εμείς:
- σε μια ζώνη συχνοτήτων που θέλουμε να περάσει (passband)
- σε μια ζώνη που θέλουμε να αποκόψουμε (stopband)
Τα τέσσερα κλασικά σχήματα κουβαλούν διπλή ονομασία: τα slides χρησιμοποιούν το ελληνικό όρο πρώτο, με το αγγλικό ως αντίστοιχο.
| Όνομα (slide 36) | Σύμβολο | στο | στο | Σκοπός |
|---|---|---|---|---|
| κατωπερατά ή βαθυπερατά (lowpass) | LP | αλλιώς | περνάει χαμηλές, κόβει υψηλές | |
| υψιπερατά (highpass) | HP | αλλιώς | κόβει χαμηλές, περνάει υψηλές | |
| ζωνοπερατά (bandpass) | BP | αλλιώς | περνάει μια ζώνη | |
| απόρριψης ζώνης (bandstop / notch) | BS | ή | γύρω από | κόβει μια ζώνη, περνάει τα υπόλοιπα |
Στα slides 37-40 το deck σχεδιάζει το ιδανικό για κάθε ένα από αυτά — brick walls, με σταθερό κέρδος 1 στην passband και 0 στην stopband. Δες τα τέσσερα σχήματα ζωντανά εδώ:
Τα τέσσερα ιδανικά φίλτρα — δες ποιοι τόνοι επιβιώνουν
Διάλεξε τύπο φίλτρου. Πάνω: φάσμα τεστ-σήματος με τρεις τόνους (συν τα αντικατοπτρικά τους στις αρνητικές συχνότητες). Μέσο: |H(f)| — brick wall. Κάτω: η έξοδος |Y(f)| = |X(f)|·|H(f)| — μόνο οι τόνοι εντός passband επιβιώνουν.
|H(f)| = 1 για |f| < f_c, 0 αλλιώς. Περνάει χαμηλές, κόβει υψηλές.
Vocabulary που θα ξανασυναντήσεις:
- Passband / ζώνη διέλευσης: οι συχνότητες που περνάνε αναλλοίωτες.
- Stopband / ζώνη αποκοπής (ή ζώνη απόρριψης): οι συχνότητες που κόβονται. (Slide 41 αναφέρει και τους δύο ελληνικούς όρους — η ζώνη που «απορρίπτει» κάθε σήμα που δεν θέλει να περάσει.)
- Cutoff frequency / συχνότητα αποκοπής (ή για BP/BS, για το κέντρο του BS): το όριο μεταξύ passband και stopband.
- Εύρος ζώνης / bandwidth: για ένα BP, το πλάτος της passband (slide 40).
Όλα τα σχήματα παραπάνω είναι σταθερές γραφικές αναπαραστάσεις — δεν χρειάζεται να τα θυμάσαι απέξω. Δες ένα παρόμοιο σχήμα στην εξέταση και ξέρεις αμέσως τι τύπος φίλτρου είναι από το ποιες συχνότητες σώζονται.
2. Φίλτρο ως φασματική μάσκα — τι κάνει σε ένα πραγματικό σήμα
Ο πιο γρήγορος τρόπος να εμπεδώσεις τι κάνει ένα φίλτρο είναι να το δεις σαν μάσκα που πολλαπλασιάζεται στο φάσμα του σήματος:
Όπου το είναι 1, το περνάει αναλλοίωτο. Όπου είναι 0, εκείνη η συχνότητα ισοπεδώνεται. Στην πράξη το σήμα δεν είναι ένας αραιός παλμός όπως στο FilterTypeViewer παραπάνω — έχει συνεχές φάσμα. Δες:
Φίλτρο ως φασματική μάσκα — δες τι περνάει, τι κόβεται
Διάλεξε σήμα εισόδου και τύπο φίλτρου. Σύρε τις συχνότητες αποκοπής. Πάνω: το φάσμα |X(f)| του σήματος. Μέσο: η μάσκα |H(f)|. Κάτω: το αποτέλεσμα |Y(f)| = |X(f)|·|H(f)| — η περιοχή που σώθηκε είναι πράσινη, η περιοχή που κόπηκε φαίνεται ξεθωριασμένη.
Παίξε με τους τύπους φίλτρου και τις συχνότητες αποκοπής, και πρόσεξε:
- Στο baseband + παρεμβολή ο LP κρατάει το επιθυμητό γύρω από το 0 και ρίχνει την παρεμβολή στις υψηλές. Αυτό είναι ακριβώς αυτό που θα κάνει ο envelope detector AM που έρχεται στο κεφάλαιο της διαμόρφωσης.
- Στη συστοιχία AM/FM σταθμών ένα BP γύρω από τον έναν σταθμό μηδενίζει εντελώς τον γείτονα. Αυτή είναι η ουσία του «συντονισμού» στο ραδιόφωνο.
- Στον θόρυβο + σήμα ένα στενό BP γύρω από τη συχνότητα του σήματος κρατάει τη μεγάλη πλειονότητα της επιθυμητής ενέργειας και πετάει τη συντριπτική πλειοψηφία του θορύβου. Όλη η ιστορία SNR-improvement μέσω φιλτραρίσματος είναι αυτή.
Παρατήρησε επίσης το «επιβίωσε X%» readout κάτω από τη viz: είναι μετρητής του τι κράτησε το φίλτρο από την αρχική ενέργεια του σήματος — άμεση μετάφραση του ως «ποσοστό ενέργειας που περνάει σε κάθε συχνότητα».
3. Even h(t), real H(f), και η μηδενική phase distortion
Στο κεφάλαιο των συστημάτων είδαμε ότι αν η κρουστική απόκριση είναι even (συμμετρική γύρω από το ), τότε το προκύπτει real (η phase μηδενίζεται). Στο κεφάλαιο του FT το γενικεύσαμε: real-and-even signal ↔ real-and-even spectrum.
Εκεί δεν είχαμε ακόμα κάτι συγκεκριμένο για να αγκυρώσουμε αυτή την ιδιότητα. Τα ιδανικά φίλτρα είναι το αγκυρωτικό αντικείμενο. Τα τέσσερα που είδαμε στον πίνακα παραπάνω είναι όλα even συναρτήσεις (συμμετρικές γύρω από το ). Άρα η κρουστική τους απόκριση είναι και αυτή even — και το είναι real.
Τι σημαίνει «phase = 0» στην πράξη; Ότι όλες οι συχνότητες που περνάνε, περνάνε με την ίδια χρονική ευθυγράμμιση. Δεν εισάγεται κανένα time-delay σε καμία επιμέρους συχνότητα. Αυτή είναι η πραγματική αιτία που λέμε «ιδανικό»: το σχήμα ενός παλμού στην είσοδο δεν παραμορφώνεται — απλώς ζυγίζονται οι συχνότητες με , χωρίς καμία να ολισθαίνει σε σχέση με τις άλλες.
4. Η κρουστική απόκριση του ιδανικού LP — sinc μέχρι το άπειρο
Αν το ιδανικό LP έχει (brick wall πλάτους , ύψους 1), τότε από το pair που έχουμε γράψει στο τυπολόγιο — — και χρησιμοποιώντας duality (αντί , ):
Αυτό είναι sinc: μια συνάρτηση που εκτείνεται μέχρι το και το , φθίνει σαν , και δεν μηδενίζεται ποτέ τελείως. Δες το ζευγάρι ζωντανά — πάνω η sinc στον χρόνο, κάτω το brick-wall στη συχνότητα του οποίου είναι ο inverse transform:
Η κρουστική απόκριση του ιδανικού LP — h(t) sinc (χρόνος) ↔ H(f) rect (συχνότητα)
Πάνω, στον χρόνο: η κρουστική απόκριση h(t) = 2 f_c · sinc(2 f_c t) — μια sinc που εκτείνεται μέχρι το −∞ και το +∞ και δεν μηδενίζεται ποτέ. Η σκιαγραφημένη ζώνη (t < 0) είναι ακριβώς η μη-αιτιατότητα: για να βγάλεις την έξοδο τώρα θα χρειαζόσουν μελλοντικές τιμές του input. Κάτω, στη συχνότητα: το ideal LP είναι ένα brick wall, H(f) = rect(f / 2f_c) — και η sinc από πάνω είναι ακριβώς ο inverse Fourier transform του.
Γιατί το «μέχρι το άπειρο» είναι πρόβλημα. Φαντάσου ότι θέλεις να φτιάξεις αυτό το φίλτρο σε hardware. Στη στιγμή , η έξοδος του φίλτρου είναι το convolution:
Επειδή το είναι μη μηδενικό για κάθε — και ιδίως για (δηλαδή μελλοντικές τιμές του ) — για να βγάλεις την έξοδο τώρα χρειάζεσαι το input στο μέλλον. Αδύνατο σε real-time κύκλωμα. Το ιδανικό LP είναι μη-αιτιατό (non-causal).
Στο πάνω (χρονικό) panel της παραπάνω viz βλέπεις το : η αριστερή, σκιαγραφημένη ζώνη () είναι ακριβώς ο λόγος που το φίλτρο δεν είναι υλοποιήσιμο. Πρέπει να κάνουμε κάποιο συμβιβασμό — και αυτός ο συμβιβασμός είναι η ουσία του επόμενου σταδίου.
5. Γιατί τα ρεαλιστικά φίλτρα δεν βγαίνουν ποτέ τέλεια — η αλήθεια κρύβεται στο sinc
Έχουμε δύο επιλογές για να φτιάξουμε υλοποιήσιμο LP:
- Κρατάμε το ιδανικό σχήμα και βρίσκουμε ένα τρόπο να το προσεγγίσουμε. Αυτό κάνουν τα Butterworth, Chebyshev, elliptic — είναι αντικείμενο ξεχωριστού μαθήματος σχεδίασης φίλτρων.
- Κόβουμε το sinc στον χρόνο. Παίρνουμε μόνο το κομμάτι μεταξύ και και μηδενίζουμε τα υπόλοιπα. Αυτό το λέμε truncation (αποκοπή).
Η δεύτερη επιλογή είναι η πιο διδακτική για να καταλάβουμε από πού προέρχονται οι μη-ιδανικότητες των ρεαλιστικών φίλτρων. Παίξε:
Γιατί τα ρεαλιστικά φίλτρα έχουν ripple — κόβουμε το sinc
Το ιδανικό LP έχει κρουστική απόκριση h(t) = 2 f_c · sinc(2 f_c t) που εκτείνεται στο ±∞. Για να φτιάξουμε πραγματικό φίλτρο, αναγκαζόμαστε να την «κόψουμε» μέσα στο ±T. Σύρε το T παρακάτω: όσο μικρότερο, τόσο πιο ξεθωριασμένο γίνεται το rect στη συχνότητα — εμφανίζονται ripple, transition band, και ατελής stopband attenuation.
Σύρε το . Παρατήρησε:
- Με μεγάλο , το truncated sinc είναι σχεδόν ίδιο με το ιδανικό sinc. Το είναι σχεδόν τέλεια rect — υψηλό 1 στην passband, σχεδόν 0 στην stopband.
- Με μικρό , η αποκομμένη sinc είναι πολύ φτωχή προσέγγιση του πλήρους sinc. Το αλλοιώνεται: εμφανίζεται κυμάτωση (ripple) μέσα στην passband, η μετάβαση από 1 σε 0 πλαταίνει, και η stopband δεν φτάνει ποτέ τελείως στο 0.
Αυτή είναι η αιτία. Τα μεγέθη που θα δούμε αμέσως μετά δεν είναι κάποιοι αυθαίρετοι «αριθμοί που πρέπει να μάθεις». Είναι φυσικές συνέπειες του ότι κανένας πραγματικός μηχανικός δεν έχει χρόνο/μνήμη/μπαταρία να υλοποιήσει ολόκληρο το άπειρο sinc.
6. Πραγματικά φίλτρα — οι 5 προδιαγραφές (slides 42-46)
Slide 42-46 χτίζουν την περιγραφή ενός ρεαλιστικού LP σταδιακά — προδιαγραφή-προδιαγραφή. Παίξε με τον stage selector παρακάτω:
Πραγματικό LP — κτίσιμο 5 βημάτων κατά τη διάλεξη (slides 42-46)
Οι διαφάνειες χτίζουν το πραγματικό LP σταδιακά. Κάθε στάδιο αποκαλύπτει μία ακόμα προδιαγραφή. Πάτα τα κουμπιά για να δεις πώς εμφανίζονται με τη σειρά.
Συνολικά, ένα ρεαλιστικό LP περιγράφεται από τέσσερα + ένα μεγέθη:
- Passband edge : μέχρι αυτή τη συχνότητα θεωρούμε ότι το σήμα «περνάει» — αλλά όχι τέλεια.
- Stopband edge : από αυτή τη συχνότητα και πάνω θεωρούμε ότι το σήμα «κόβεται» — αλλά όχι τελείως.
- Passband ripple : μέσα στην passband, η τιμή του ταλαντώνεται ανάμεσα σε και . Δεν είναι σταθερά 1.
- Stopband ripple : μέσα στην stopband, η τιμή του ταλαντώνεται κάτω από . Δεν είναι ποτέ ακριβώς 0.
- Ζώνη μετάβασης : εκεί δεν δίνουμε spec — απλώς απαιτούμε σταδιακή πτώση. Η πραγματική κλίση είναι το αποτέλεσμα της σχεδίασης.
6α. Το κέρδος σε dB (slide 46)
Στις πραγματικές προδιαγραφές φίλτρων, το μεταφράζεται σχεδόν πάντα σε decibel:
Γιατί dB; Επειδή το καλύπτει εύρος τιμών από πολύ κοντά στο 1 (passband) έως πολύ κοντά στο 0 (stopband). Σε γραμμικό άξονα, το «πόσο καλά πέφτει το φίλτρο στο 0» δεν διαφαίνεται καθόλου: ένα και ένα φαίνονται και τα δύο σαν «πρακτικά μηδέν» — αλλά στην πραγματικότητα διαφέρουν κατά 10× σε amplitude και 100× σε ισχύ. Σε dB:
| (γραμμικό) | (dB) |
|---|---|
| 1.0 | 0 dB |
| 0.5 | −6 dB |
| 0.1 | −20 dB |
| 0.01 | −40 dB |
| 0.001 | −60 dB |
| 0.0001 | −80 dB |
Όταν δεις στην προδιαγραφή ενός φίλτρου «stopband attenuation 60 dB», σημαίνει στην stopband — οπότε η ισχύς εκεί είναι — δηλαδή λιγότερο από ένα μέρος στο εκατομμύριο της ισχύος που μπήκε (αυτό λέγεται «1 ppm», parts per million, ένα στο ). Στο RealFilterStepperViz πάτα stage 5/5 και ενεργοποίησε το dB toggle για να το δεις: η stopband φεύγει χαμηλά στις αρνητικές τιμές dB, και τα ripple της passband είναι μικροδιακυμάνσεις γύρω από τα 0 dB.
Συμπύκνωσε — οι 5 προδιαγραφές ενός ρεαλιστικού LP
- passband edge
- stopband edge
- passband ripple
- stopband ripple
- transition band
- dB κέρδος
- Στην passband (): .
- Στην transition band (): no spec — απλώς σταδιακή πτώση.
- Στην stopband (): .
- Σε dB: passband ~0 dB ± μικρό ripple, stopband −X dB attenuation.
6β. Ένα πραγματικό φίλτρο που μπορείς να φτιάξεις — το RC
Πριν προχωρήσουμε, μια στροφή στην ιστορία — αλλιώς το RC θα φανεί να βγαίνει από το πουθενά. Μέχρι τώρα (§4–§6) «πραγματικό φίλτρο» σήμαινε ένα πράγμα: παίρνουμε το ιδανικό brick wall και προσπαθούμε να το προσεγγίσουμε, κόβοντας το sinc — κι όσο κρατάμε περισσότερο, τόσο πιο κοντά στο τέλειο τετράγωνο φτάνουμε. Οι 5 προδιαγραφές μετράνε ακριβώς αυτή την απόσταση από το ιδανικό. Κι αυτό δεν ήταν «θεωρητικό»: το παραθυρωμένο sinc είναι κι αυτό ένα υλοποιήσιμο φίλτρο.
Υπάρχει όμως κι ένας δεύτερος, πιο γήινος τρόπος να πεις «πραγματικό φίλτρο»: ένα απλό κύκλωμα που δεν προσπαθεί καθόλου να γίνει brick wall — έχει τη δική του φυσική απόκριση κι εσύ παίρνεις ό,τι σου δίνουν τα εξαρτήματα. Το κανονικό παράδειγμα είναι το RC κατωπερατό πρώτης τάξης: ένας αντιστάτης σε σειρά, ένας πυκνωτής προς τη γη, η έξοδος πάνω στον πυκνωτή.
Μην περιμένεις να μοιάζει με τετράγωνο — δεν θα μοιάσει, και δεν πειράζει. Δεν το φέρνουμε για να ανταγωνιστεί το truncated-sinc στο «πόσο καλό brick wall κάνει»· το φέρνουμε επειδή είναι το απλούστερο πραγματικό φίλτρο κι επειδή είναι αυτό που εμφανίζεται ξανά και ξανά στην ανάλυση θορύβου που έρχεται. Εκεί δεν χρειαζόμαστε brick wall — χρειαζόμαστε ένα απλό, πραγματικό φίλτρο που λύνεται ακριβώς. Και το RC λύνεται ακριβώς.
Το ένα κομμάτι φυσικής που δανειζόμαστε. Δεν είναι μάθημα κυκλωμάτων, οπότε κρατάμε μία μόνο ιδιότητα του πυκνωτή: το ρεύμα που τον διαπερνά είναι ανάλογο του πόσο γρήγορα αλλάζει η τάση του,
Διαισθητικά, ο πυκνωτής αντιστέκεται στις απότομες αλλαγές τάσης: για να ανέβει γρήγορα η τάση του χρειάζεται μεγάλο ρεύμα. Στις υψηλές συχνότητες (γρήγορες ταλαντώσεις) μοιάζει με βραχυκύκλωμα προς τη γη και «καταπίνει» το σήμα· στις χαμηλές μοιάζει με ανοιχτό κύκλωμα και τις αφήνει να φτάσουν στην έξοδο. Να γιατί βγαίνει κατωπερατό.
Η κρουστική απόκριση — τι κάνει σε ένα στιγμιαίο «χτύπημα». Δώσε στην είσοδο ένα impulse . Τη στιγμή πετάει ακαριαία φορτίο στον πυκνωτή και η τάση του τινάζεται· αμέσως μετά η είσοδος μηδενίζεται κι ο πυκνωτής εκφορτίζεται μέσα από τον . Ένας πυκνωτής που εκφορτίζεται μέσα από αντίσταση φθίνει εκθετικά, με σταθερά χρόνου (μεγάλο ή = αργό σβήσιμο). Κι επειδή τίποτα δεν συμβαίνει πριν το χτύπημα, η απόκριση είναι μηδέν για — αιτιατή:
(Ο συντελεστής ρυθμίζει το συνολικό εμβαδόν στο 1: το φίλτρο περνάει το DC αναλλοίωτο, .)
Από το στο . Τώρα που έχουμε το , η συνάρτηση μεταφοράς είναι απλώς ο μετασχηματισμός Fourier του — κι αυτό το ζεύγος το έχουμε ήδη βγάλει στο κεφάλαιο του FT: . Με :
Η συχνότητα αποκοπής. Ορίζουμε ως cutoff τη συχνότητα όπου η ισχύς που περνάει πέφτει στο μισό, δηλαδή . Αυτό συμβαίνει όταν :
Αυτό είναι το περίφημο −3 dB σημείο (half-power), αφού dB. Με αυτό το , το μέτρο γράφεται καθαρά:
Πρόσεξε την αμοιβαιότητα: το στον χρόνο και το στη συχνότητα είναι αντιστρόφως ανάλογα — αργό σβήσιμο (μεγάλο ) σημαίνει στενό φάσμα, και αντίστροφα. Δες το και το μαζί:
Το RC σε δύο όψεις — h(t) στον χρόνο, |H(f)|² στη συχνότητα
Αριστερά η κρουστική απόκριση h(t) = (1/RC)·e^(−t/RC)·u(t): φθίνον εκθετικό που ξεκινά στο t = 0 (αιτιατό) και σβήνει με σταθερά χρόνου τ = RC. Δεξιά το |H(f)|² — μονότονο, χωρίς ripple, με το −3 dB στο f_c.
Πιο συγκεκριμένα για το σχήμα. Όπως προειδοποιήσαμε, το του RC δεν μοιάζει με τις «πραγματικές» καμπύλες των §5–§6 — κι η διαφορά είναι ποιοτική, όχι ζήτημα «καλύτερου/χειρότερου». Εκείνες (από αποκοπή του sinc) προσπαθούν να γίνουν τετράγωνο, οπότε έχουν ripple: η passband ταλαντώνεται γύρω από το 1, εμφανίζονται πλευρικοί λοβοί στη stopband. Το RC δεν προσπαθεί τίποτα — απλώς κατεβαίνει μονότονα, καμία κυμάτωση, ομαλή πτώση dB/octave. Μοιράζεται τον χαρακτήρα του πραγματικού φίλτρου (καμπύλη μετάβαση αντί για κάθετο τοίχο, ουρά που δεν μηδενίζεται ποτέ) αλλά είναι το απλούστερο, πιο ομαλό του είδους — στην πραγματικότητα ένα Butterworth 1ης τάξης (maximally flat).
Αυτή η μία συνάρτηση μεταφοράς είναι όλη η βάση για τον «RC-φιλτραρισμένο λευκό θόρυβο» — το κανονικό μοτίβο που θα δουλέψουμε αργότερα στη /randomness/psd και στη /noise/through-filters.
7. Trade-offs — γιατί δεν υπάρχει «δωρεάν» ιδανικό
Από όλα τα παραπάνω μπορούμε να εξάγουμε δύο θεμελιώδεις κανόνες σχεδίασης:
- Πιο απότομο cutoff (μικρότερο ) ⇒ μακρύτερη κρουστική απόκριση. Το είδαμε άμεσα στο SincTruncationToRealFilterViz: για να πλησιάσουμε το brick wall πρέπει να αυξήσουμε το , δηλαδή να κρατήσουμε περισσότερο μνήμη + μεγαλύτερη χρονική καθυστέρηση στο φίλτρο.
- Μικρότερο ripple () ⇒ πιο πολύπλοκο φίλτρο (υψηλότερης τάξης κύκλωμα / περισσότεροι όροι σε ψηφιακή υλοποίηση).
Δες το trade-off ζωντανά — αριστερά η ιδανική κρουστική απόκριση που κρατάμε μέσα στο , δεξιά το που προκύπτει δίπλα στο ιδανικό brick wall. Σύρε το , δηλαδή πόσο sinc κρατάς: κρατάς περισσότερο ⇒ πιο απότομο cutoff (στενότερη ζώνη μετάβασης), αλλά μακρύτερη και πιο ακριβή κρουστική απόκριση πίσω από το φίλτρο:
Ideal vs real LP filter — το trade-off του απότομου cutoff
Το ίδιο φίλτρο σε δύο όψεις: αριστερά η ιδανική κρουστική απόκριση h(t) = 2 f_c · sinc(2 f_c t) — κρατάμε μόνο το κομμάτι μέσα στο ±T και πετάμε το υπόλοιπο. Δεξιά, το |H(f)| που προκύπτει, δίπλα στο ιδανικό brick wall (διακεκομμένο). Σύρε το T — δηλαδή πόσο sinc κρατάς.
Συγκεκριμένες οικογένειες σχεδιάσεων (Butterworth, Chebyshev type I/II, elliptic) ανταλλάσσουν αυτές τις παραμέτρους διαφορετικά — π.χ. το Butterworth έχει αυστηρά (επίπεδη passband) αλλά μεγάλο transition band για δεδομένη τάξη, ενώ το elliptic ανέχεται ripple και στις δύο ζώνες για να φτάσει το πιο απότομο cutoff. Η σύγκριση αυτή δεν είναι αντικείμενο του Κ21 — εδώ μας ενδιαφέρει μόνο ότι υπάρχει trade-off, και ότι έχει φυσική προέλευση (το sinc που δεν μπορούμε να κρατήσουμε ολόκληρο).
Γιατί μας απασχολεί ως μηχανικούς επικοινωνιών. Στα κεφάλαια διαμόρφωσης παρακάτω:
- Στην AM demodulation χρειαζόμαστε ένα LP για να ανακτήσουμε το μετά τον envelope detector. Το του LP πρέπει να είναι αρκετά πάνω από το bandwidth του μηνύματος (για να μη χάσουμε σήμα) αλλά κάτω από τον carrier (για να σβήσει το high-frequency ripple). Στην πράξη: .
- Στον θόρυβο ένα BP φίλτρο γύρω από τον carrier κρατάει το επιθυμητό σήμα και κόβει τον θόρυβο εκτός ζώνης. Η ποιότητα του φίλτρου (πόσο στενό μπορεί να γίνει χωρίς να ξεκινήσουν να χαθούν sidebands) καθορίζει πόσο SNR-improvement παίρνουμε.
- Στο FDM multiplexing η ποιότητα των BP φίλτρων στην έξοδο καθορίζει το πόσο μικρά μπορούν να γίνουν τα guard bands μεταξύ καναλιών χωρίς να αρχίσει διασταυρωμένη παρεμβολή.
Όταν θα βλέπεις την προδιαγραφή ενός LP στο επόμενο κεφάλαιο και θα έχει , τώρα ξέρεις γιατί χρειάζονται και τα τρία.
8. Ανακάλεσε — δοκίμασε από μνήμης
Σύρε τις γραμμές για αναδιάταξη — ή χρησιμοποίησε τα βελάκια .
- 1.Εμφάνιση της ζώνης αποκοπής με stopband ripple κάτω από .
- 2.Μετατροπή σε κέρδος dB: , με τη stopband attenuation να φαίνεται σε αρνητικά dB.
- 3.Εμφάνιση της ζώνης διέλευσης με passband ripple ανάμεσα σε και .
- 4.Συνένωση και ονοματοδοσία και των τριών τμημάτων — η πλήρης γραμμική εικόνα.
- 5.Εμφάνιση της ζώνης μετάβασης (transition band) από έως .
9. Αναγνώρισε — πώς θα ξεχωρίσεις τα filter problems στην εξέταση
Πώς θα το αναγνωρίσεις
- «ιδανικό LP/HP/BP/BS φίλτρο εύρους ζώνης W»
- «βρες την κρουστική απόκριση h(t)»
- «βρες την έξοδο μετά από φίλτρο»
- «σχηματικά το H(f)»
- «συχνότητα αποκοπής»
- «αναγνώρισε από το H(f) τι τύπος φίλτρου είναι»
- «20 log10 — passband ripple — stopband attenuation»
- «cosine με φέρον περνά από LP — τι μένει»
Όλα τα παραπάνω είναι σινιάλα ότι ο εξεταστής σού δίνει ένα LTI με συγκεκριμένο σχήμα και θέλει να ελέγξει αν ξεχωρίζεις:
-
Τι τύπος φίλτρου είναι; Κοίτα ποιες συχνότητες αφήνει στο 1: αν είναι γύρω από το → LP· αν είναι μακριά από το 0 → HP· αν είναι μια ζώνη γύρω από → BP· αν λείπει μια ζώνη γύρω από και τα υπόλοιπα είναι 1 → BS.
-
Πώς υπολογίζεται η έξοδος; Στη συχνότητα: — απλός πολλαπλασιασμός. Αν σου δίνεται το ως άθροισμα φασόρων / cosines, εφάρμοσε το φίλτρο σε κάθε συχνότητα ξεχωριστά (οι αρμονικές μέσα στην passband μένουν, οι έξω εξαφανίζονται).
-
Πότε χρειάζεσαι την κρουστική απόκριση; Όταν ζητάει «βρες το », ή όταν θέλει time-domain ανάλυση μέσω convolution. Για ιδανικό LP: . Για ιδανικό BP κεντραρισμένο στο με πλάτος : (modulation theorem από LP).
-
Αν η εκφώνηση μιλάει για dB: μετάφρασέ το σε γραμμικό. «60 dB stopband» → . Σχεδόν πάντα η εκφώνηση θέλει είτε γραμμικό υπολογισμό (έξοδος) είτε έλεγχο spec — και τα δύο γίνονται πιο εύκολα σε γραμμικό.
Εξάσκηση
Έξι ερωτήσεις. Οι τέσσερις πρώτες αναγνωρίζουν / υπολογίζουν στα ιδανικά φίλτρα, η πέμπτη είναι το trade-off, και η έκτη είναι η μετατροπή σε dB.
10. Συμπύκνωσε όλο το κεφάλαιο
Συμπύκνωσε όλο το κεφάλαιο
- φίλτρο = LTI με σχεδιασμένο |H(f)|
- LP / HP / BP / BS
- κατωπερατά / υψιπερατά / ζωνοπερατά / απόρριψης ζώνης
- passband · stopband · cutoff · bandwidth
- even h(t) ⇒ real H(f) ⇒ zero phase distortion
- h_LP(t) = 2 f_c · sinc(2 f_c t) — non-causal
- truncating sinc ⇒ ripple + transition band
- f_p, f_s, δ_p, δ_s — οι 5 προδιαγραφές
- κέρδος dB = 20 log₁₀|H(f)|
- trade-off: απότομο cutoff ⇔ μακρύ h(t)
- Δες πού είναι η passband σε σχέση με το : γύρω → LP, μακριά → HP, μια ζώνη → BP, ένα κενό → BS.
- Για το ιδανικό LP: , και η κρουστική του είναι .
- Για το ιδανικό BP με κέντρο και πλάτος : εφάρμοσε modulation theorem στο LP — .
- Στη συχνότητα: . Στον χρόνο: .
- Για ρεαλιστικά φίλτρα, έλεγξε . Αν η spec είναι σε dB, μετάφρασε: .
Τι μάθαμε
- Ένα φίλτρο είναι ένα LTI σύστημα του οποίου το έχει σχεδιασμένο σχήμα — passband στις επιθυμητές συχνότητες, stopband στις ανεπιθύμητες.
- Τα τέσσερα κλασικά (slide 36): κατωπερατά (LP), υψιπερατά (HP), ζωνοπερατά (BP), απόρριψης ζώνης (BS) — ονομασίες/ορισμοί που πρέπει να ξέρεις.
- Όλα τα ιδανικά φίλτρα έχουν even → even → zero phase distortion.
- Το είναι sinc στο → μη-αιτιατό.
- Τα ρεαλιστικά φίλτρα προκύπτουν από truncation του sinc. Αυτό εξηγεί φυσικά τις πέντε προδιαγραφές (slides 42-46): passband ripple , transition band , stopband ripple , και το κέρδος εκφρασμένο σε dB ().
- Το RC πρώτης τάξης (, cutoff στο −3 dB σημείο) είναι το απλούστερο υλοποιήσιμο φίλτρο: η κρουστική του είναι αιτιατή, με τίμημα απαλό roll-off αντί για brick wall.
- Trade-off: σαφέστερο cutoff ⇔ μακρύτερη ⇔ μεγαλύτερη πολυπλοκότητα και καθυστέρηση. Δεν υπάρχει «δωρεάν» ιδανικό.
Τελείωσες αυτή τη σελίδα;