ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ

Σχετικά έγγραφα
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ

ΨΗΦΙΑΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΣΗΜΑΤΟΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΤΕΙ ΣΕΡΡΩΝ. Αλέξανδρος Α. Λαζαρίδης Διδάκτωρ Ηλεκτρολόγος Μηχανικός LOGO

ΨΗΦΙΑΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΣΗΜΑΤΟΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ. Αλέξανδρος Α. Λαζαρίδης ιδάκτωρ Ηλεκτρολόγος Μηχανικός LOGO. και Μηχανικός Υπολογιστών

Σύντομη Αναφορά σε Βασικές Έννοιες Ψηφιακής Επεξεργασίας Σημάτων

3 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

Ψηφιακή Επεξεργασία Σήματος

ΤΕΙ ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ

1. ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB... 13

Ψηφιακή Επεξεργασία Σημάτων

Εισαγωγή στα Σήματα. Κυριακίδης Ιωάννης 2011

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ. Ενότητα : ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ Ζ (ΖTransform)

ΑΕΝ / ΑΣΠΡΟΠΥΡΓΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΑΥΤΟΜΑΤΙΣΜΟΥ. Σημειώσεις για τη χρήση του MATLAB στα Συστήματα Αυτομάτου Ελέγχου

Διακριτός Μετασχηματισμός Fourier

DFT ιακριτός µετ/σµός Fourier Discrete Fourier Transform

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών

Εξεταστική Ιανουαρίου 2007 Μάθηµα: «Σήµατα και Συστήµατα»

ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER ΑΝΑΛΥΣΗ FOURIER ΔΙΑΚΡΙΤΩΝ ΣΗΜΑΤΩΝ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ. DTFT και Περιοδική/Κυκλική Συνέλιξη

Μετασχηµατισµός FOURIER ιακριτού χρόνου DTFT

ΑΠΟΚΡΙΣΗ ΣΥΣΤΗΜΑΤΩΝ ΣΤΟ ΠΕΔΙΟ ΤΟΥ ΧΡΟΝΟΥ ΚΑΙ ΤΩΝ ΣΥΧΝΟΤΗΤΩΝ

Ψηφιακή Επεξεργασία Σημάτων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

x[n]z n = ) nu[n]z n z 1) n z 1 (5) ( 1 z(2z 1 1]z n +

Εργαστήριο Μαθηματικής Ανάλυσης Ι. Εισαγωγή στη Matlab Βασικές Συναρτήσεις-Γραφικές παραστάσεις. Πανεπιστήμιο Θεσσαλίας. Σχολή Θετικών Επιστημών

3-Φεβ-2009 ΗΜΥ Σήματα

Ο Μετασχηματισμός Ζ. Ανάλυση συστημάτων με το μετασχηματισμό Ζ

Α. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ LAPLACE

Σ. Φωτόπουλος -1- ΨΕΣ- AΣΚΗΣΕΙΣ-ΛΥΣΕΙΣ- Κεφάλαιο 2 ο

ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER ΑΝΑΛΥΣΗ FOURIER ΔΙΑΚΡΙΤΩΝ ΣΗΜΑΤΩΝ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ. Διακριτός Μετασχηματισμός Fourier DFT

ΧΡΟΝΙΚΗ ΑΠΟΚΡΙΣΗ ΣΥΝΑΡΤΗΣΕΙ ΤΩΝ ΠΟΛΩΝ ΤΗΣ ΣΥΝΑΡΤΗΣΗΣ ΕΞΟΔΟΥ Y(s) ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΓΝΩΡΙΣΜΑΤΑ ΤΗΣ ΧΡΟΝΙΚΗΣ ΑΠΟΚΡΙΣΗΣ ΣΕ ΕΙΣΟΔΟ ΜΟΝΑΔΙΑΙΑΣ ΒΑΘΜΙΔΑΣ

Ψηφιακή Επεξεργασία Σημάτων

Κεφάλαιο 5 Μετασχηματισμός z και Συνάρτηση μεταφοράς

Προηγµένες Υπηρεσίες Τηλεκπαίδευσης στο Τ.Ε.Ι. Σερρών

x[n] = e u[n 1] 4 x[n] = u[n 1] 4 X(z) = z 1 H(z) = (1 0.5z 1 )(1 + 4z 2 ) z 2 (βʹ) H(z) = H min (z)h lin (z) 4 z 1 1 z 1 (z 1 4 )(z 1) (1)

ΛΥΣΕΙΣ ΑΣΚΗΣΕΩΝ ΕΞΕΤΑΣΤΙΚΗΣ ΠΕΡΙΟ ΟΥ ΙΟΥΝΙΟΥ 2004., η οποία όµως µπορεί να γραφεί µε την παρακάτω µορφή: 1 e

Ο μετασχηματισμός z αντιστοιχεί στην ακολουθία συνάρτηση: Xz ()

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB- SIMULINK

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών

Εισαγωγή. Διάλεξη 1. Εισαγωγή Σήματα και Συστήματα Διακριτού Χρόνου. Τι είναι σήμα; Παραδείγματα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών. HY-370: Ψηφιακή Επεξεργασία Σήµατος Χειµερινό Εξάµηνο 2016 ιδάσκοντες : Γ. Στυλιανού - Γ.

Σήματα και Συστήματα. Διάλεξη 1: Σήματα Συνεχούς Χρόνου. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

ΨΗΦΙΑΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΣΗΜΑΤΟΣ ΑΣΚΗΣΗ 3

Όταν θα έχουµε τελειώσει το Κεφάλαιο αυτό θα µπορούµε να:

ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ Ενότητα 3: ΣΥΝΕΛΙΞΗ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

ΑΝΑΛΥΣΗ ΣΗΜΑΤΩΝ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΤΟ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟ FOURIER

Συστήματα Αυτόματου Ελέγχου

Υλοποιήσεις Ψηφιακών Φίλτρων

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών Σημάτων. Διάλεξη 20: Διακριτός Μετασχηματισμός Fourier (Discrete Fourier Transform DFT)

Συνέλιξη Κρουστική απόκριση

Σήματα και Συστήματα. Νόκας Γιώργος

Kεφάλαιο 5 DFT- FFT ΔΙΑΚΡΙΤΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER DISCRETE FOURIER TRANSFORM 1/ 80. ΨΗΦΙΑΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΣΗΜΑΤΟΣ DFT-FFT Σ.

Ο ΑΜΦΙΠΛΕΥΡΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ Z

ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ

Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας. Ακαδημαϊκό Έτος Παρουσίαση Νο. 2. Δισδιάστατα Σήματα και Συστήματα #1

ΨΗΦΙΑΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΣΗΜΑΤΩΝ Κυκλική Συνέλιξη. Εµµανουήλ Ζ. Ψαράκης Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Ο ΑΜΦΙΠΛΕΥΡΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ Z

Για τη δημιουργία ενός διανύσματος με στοιχεία από το 0 μέχρι το 20 με βήμα το 2 (χρησιμοποιείται συνήθως για διανύσματα χρόνου) δίνουμε

Εισαγωγή στις Τηλεπικοινωνίες. Δομή της παρουσίασης

Σήματα και Συστήματα ΙΙ

[ ], σχηµατίζουµε το άθροισµα. Το άθροισµα αυτό είναι µια δυαδική πράξη η οποία αντιστοιχεί στις ακολουθίες f [ 1

ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ Z. χρόνου και εξηγήσουµε έννοιες όπως περιοχή σύγκλισης, πόλος και µηδενικό.

Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας. Ακαδημαϊκό Έτος Παρουσίαση Νο. 2. Δισδιάστατα Σήματα και Συστήματα #1

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB- SIMULINK

Ψηφιακή Επεξεργασία Σημάτων

Σήματα και Συστήματα ΙΙ

Βασικά στοιχεία του MATLAB

Παρουσίαση του μαθήματος

Ολοκληρωµένο Περιβάλλον Σχεδιασµού Και Επίδειξης Φίλτρων

ΤΟ ΜΑΥΡΟ ΚΟΥΤΙ. 1. Το περιεχόμενο του μαύρου κουτιού. 2. Είσοδος: σήματα (κυματομορφές) διέγερσης 3. Έξοδος: απόκριση. (απλά ηλεκτρικά στοιχεία)

Συστήματα Αναμονής (Queuing Systems)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών

Σήµατα και συστήµατα διακριτού χρόνου

Σήματα και Συστήματα. Διάλεξη 7: Μετασχηματισμός Fourier. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

2 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

ΑΣΚΗΣΕΙΣ ΠΡΑΞΗΣ - 1 η ΣΕΙΡΑ

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών Σημάτων. Διάλεξη 22: Γρήγορος Μετασχηματισμός Fourier Ανάλυση σημάτων/συστημάτων με το ΔΜΦ

7 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

i) x(n-2)={ ½ ½ 0 0 }, ii) x(-n)= { 0 0 ½ ½ }, iii) x(4-n)= { 0 0 ½ ½ }, iv) x(n+2)={ ½ ½ 0 0 }

Discrete Fourier Transforms

13-Φεβ-2009 ΗΜΥ Γραμμικά συστήματα και Συνέλιξη

Συστήµατα τα οποία χαρακτηρίζονται από γραµµικές εξισώσεις διαφορών µε σταθερούς συντελεστές

Αυτόματος Έλεγχος. Ενότητα 9 η : Σχεδίαση ελεγκτών με το γεωμετρικό τόπο ριζών. Παναγιώτης Σεφερλής

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών

ΣΗΜΑΤΑ ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ

Ψηφιακή Επεξεργασία Σημάτων

Συστήματα Διακριτού Χρόνου (Discrete-Time Systems) Κυριακίδης Ιωάννης 2011

Εισαγωγή στην Αριθμητική Ανάλυση

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Τμήμα Πληροφορικής & Επικοινωνιών Σήματα και Συστήματα

ΥΠΟΛΟΓΙΣΜΟΣ ΑΝΑΠΤΥΓΜΑΤΟΣ FOURIER ΜΕ ΑΡΙΘΜΗΤΙΚΟ ΤΡΟΠΟ

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 18

e 5t (sin 5t)u(t)e st dt e st dt e 5t e j5t e st dt s j5 j10 (s + 5 j5)(s j5)

ΔΙΑΚΡΙΤΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER - Discrete Fourier Transform - DFT -

Επαναληπτικές Ασκήσεις για το µάθηµα Ψηφιακή Επεξεργασία Σηµάτων

Σήματα και Συστήματα. Διάλεξη 9: Μελέτη ΓΧΑ Συστημάτων με τον Μετασχηματισμό Fourier. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Παραρτήματα. Παράρτημα 1 ο : Μιγαδικοί Αριθμοί

Μετασχηματισμός Z. Κυριακίδης Ιωάννης 2011

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Γραφικές παραστάσεις (2ο μέρος)

Transcript:

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ ΣΗΜΕΙΩΣΕΙΣ ΕΡΓΑΣΤΗΡΙΟΥ ΨΗΦΙΑΚΗΣ ΕΠΕΞΕΡΓΑΣΙΑΣ ΣΗΜΑΤΟΣ ρ. ΑΘΑΝΑΣΙΟΣ ΝΙΚΟΛΑΪ ΗΣ ΗΜΗΤΡΙΟΣ ΒΑΡΣΑΜΗΣ ΣΕΡΡΕΣ 6

η ΕΝΟΤΗΤΑ Εισαγωγή στο λογισµικό πακέτο MATLAB 6.5 Το MATLAB είναι µια interpreted γλώσσα προγραµµατισµού. ηλαδή ο πηγαίος κώδικας δε µεταφράζεται αλλά διερµηνεύεται κατά την εκτέλεση. Έτσι, µπορείτε να δώσετε εντολές στο command prompt του MATLAB. Επίσης µπορείτε να δηµιουργήσετε script αρχεία (τα M-files), τα οποία δεν είναι άλλο από διαδοχή εντολών που επιθυµούµε να εκτελεστούν. Βασικό στοιχείο του MATLAB είναι ο πίνακας. Γι αυτό είναι εξαιρετικά χρήσιµο εργαλείο για την ψηφιακή επεξεργασία σήµατος. Ένα µονοδιάστατο σήµα µπορεί να θεωρηθεί ως ένα διάνυσµα. Οι βαθµωτές µεταβλητές είναι ουσιαστικά πίνακες x. Κάποια σηµεία που πρέπει να έχετε πάντα υπόψη κατά τη χρήση του MATLAB: Οι δείκτες αρχίζουν από το (και όχι από το ). Βάζοντας ελληνικό ερωτηµατικό (;) µετά από µια εντολή, αποφεύγουµε την εµφάνιση του αποτελέσµατος στην οθόνη. Μπορούµε να κινηθούµε µπρος-πίσω στο ιστορικό των εντολών που έχουµε δώσει µε το πάνω και κάτω βέλος. Με Ctrl+C διακόπτουµε την εκτέλεση εντολής ή την εµφάνιση αποτελεσµάτων στην οθόνη. Υπάρχει διάκριση κεφαλαίων και πεζών (άρα η µεταβλητή Y είναι διαφορετική από την y). Τα ονόµατα των συναρτήσεων γράφονται µε πεζά. Ότι ακολουθεί το σύµβολο % σε µια γραµµή είναι σχόλιο. Αποφεύγετε όσο µπορείτε τους βρόχους. Αυτοί εκτελούνται αργά (θυµηθείτε ότι µιλάµε για interpreted γλώσσα). Προκειµένου να δώσετε σε ένα διάνυσµα τιµές που απέχουν κατά µια σταθερή ποσότητα, µπορείτε να χρησιµοποιήσετε την άνω-κάτω τελεία (:). Για παράδειγµα, η εντολή b=:: δηµιουργεί ένα διάνυσµα b µε τιµές όλους τους περιττούς από ως. Αν δίναµε b=: θα είχαµε ένα διάνυσµα µε όλους τους ακέραιους από ως. Αντίστοιχα, όταν θέλουµε να προσπελάσουµε τµήµα ενός πίνακα, χρησιµοποιούµε πάλι το :, π.χ. το b(3:6) σηµαίνει το τµήµα του b από το τρίτο ως το έκτο στοιχείο. Για να πάρουµε π.χ. το όγδοο στοιχείο του b δίνουµε απλά b(8). Πέρα από τις κλασικές πράξεις πινάκων ορίζονται και οι «στοιχείοπρος-στοιχείο» πράξεις οι οποίες συµβολίζονται µε µια τελεία πριν το αντίστοιχο σύµβολο της πράξης. Π.χ. η πράξη Α*Β ορίζεται µόνο όταν οι διαστάσεις του Α είναι KxM και του Β είναι MxN. Αντίθετα, η πράξη Α.*Β ορίζεται µόνο όταν Α και Β έχουν ίδιες διαστάσεις. Για να ορίσουµε ρητά έναν πίνακα, δίνουµε τα στοιχεία του χωρισµένα µε κενά, µέσα σε αγκύλες. Π.χ. το D=[5 3 8 4 9] δηµιουργεί ένα διάνυσµα D διαστάσεων x5 µε τις τιµές που βλέπουµε. --

Χρήσιµες συναρτήσεις: Η ones(k, m) δηµιουργεί ένα πίνακα διαστάσεων kxm µε άσους. Η zeros(k,m) δηµιουργεί ένα πίνακα διαστάσεων kxm µε µηδενικά. Η length(b) επιστρέφει το µήκος του διανύσµατος b. H find(a) επιστρέφει τις τιµές του δείκτη για τις οποίες ο Α έχει µη µηδενικές τιµές. H figure δηµιουργεί ένα νέο παράθυρο γραφικών. H subplot(k, m, δηµιουργεί ένα παράθυρο γραφικών στο οποίο µπορούν να τοποθετηθούν kxm γραφήµατα σε k γραµµές και m στήλες. Επιπλέον κάνει ενεργό το γράφηµα στη θέση n. Η stem(x, y) δίνει γράφηµα των διακριτών τιµών του y ως προς το x. H axis([xmin xmax ymin ymax]) θέτει τις ελάχιστες και µέγιστες τιµές των αξόνων. H title τυπώνει έναν τίτλο στην κορυφή του τρέχοντος γραφήµατος. η ΕΝΟΤΗΤΑ Μερικές θεµελιώδεις ακολουθίες n = Μοναδιαίος παλµός (κρούση) δ ( = n Σε MATLAB υλοποιείται ως εξής : Ορίζουµε το πλάτος της ανεξάρτητης µεταβλητής και δηµιουργούµε vector µε ίδια διάσταση το οποίο να έχει σε όλα τα στοιχεία τιµή εκτός από το µεσαίο στοιχείο που αντιστοιχεί στο n = και έχει τιµή. n=-:; m=length(; k=find(n==); d=zeros(,m); d(k)=; % or d=[zeros(,) zeros(,)]; stem(n,d) axis([- - ]) --

H εντολή length( µας επιστρέφει το µήκος του n H εντολή find(n==) µας επιστρέφει το δείκτη στον οποίο το n παίρνει µηδενική τιµή (κέντρο). H εντολή zeros(,m) µας επιστρέφει ένα vector µε διάσταση x m µε µηδενικές τιµές. H εντολή d(k)= τοποθετεί µια µονάδα στην θέση k στον πίνακα d. H εντολή axis([xmin,xmax,ymin,ymax]) επανακαθορίζει τα όρια στους άξονες. n Μοναδιαία βηµατική συνάρτηση u( = n < Σε MATLAB υλοποιείται ως εξής : Ορίζουµε το πλάτος της ανεξάρτητης µεταβλητής και δηµιουργούµε vector µε ίδια διάσταση το οποίο να έχει από n=- µέχρι n=- τιµές και από n= µέχρι n= τιµές. n=-:; m=length(; k=find(n==); u=zeros(,m); u(k:m)=; %or u=[zeros(,) ones(,)]; stem(n,u); axis([- - ]); -3-

n a n D Εκθετική ακολουθία x( = όπου D ένα διάστηµα. n D Σε MATLAB υλοποιείται ως εξής : Ορίζουµε το πλάτος της ανεξάρτητης µεταβλητής και δηµιουργούµε vector µε ίδια διάσταση το οποίο να έχει από n=- µέχρι n=-6 και από n=6 µέχρι n= n τιµές και από n=-5 µέχρι n=5 τιµές α. n=-:; m=length(; k=find(n==); a=.9; e=zeros(,m); e(k-5:k+5)=a.^[-5:5]; %or e(k-5:k+5)=a.^n(k-5:k+5); stem(n,e); title('exponential sequence').8 exponential sequence.6.4..8.6.4. - -8-6 -4-4 6 8 n n Γραµµική (ramp) ακολουθία x( =. n < Σε MATLAB υλοποιείται ως εξής : Ορίζουµε το πλάτος της ανεξάρτητης µεταβλητής και δηµιουργούµε vector µε ίδια διάσταση το οποίο να έχει από n=- µέχρι n=- τιµές και από n= µέχρι n= τιµές ανάλογες του n. -4-

n=-:; m=length(; k=find(n==); r=zeros(,m); r(k:m)=n(k:m); stem(n,r); title('ramp '); ramp 9 8 7 6 5 4 3 - -8-6 -4-4 6 8 3 η ΕΝΟΤΗΤΑ Μετατόπιση Ορίζουµε το n σε ένα διάστηµα από - έως και την αντίστοιχη n a n [,] x( = µε α =.9. Θέλουµε να σχεδιάσουµε τις n [, ) (,] εξής ακολουθίες x(=x(n-), x(=x(n+). Στην πρώτη έχουµε µετατόπιση προς τα δεξιά (καθυστέρηση) και στην δεύτερη µετατόπιση προς τα αριστερά (προπορεία). Σε MATLAB υλοποιείται ως εξής : n=-:; m=length(; k=find(n==); a=.9; -5-

x=zeros(,m); x(k-:k+)=a.^n(k-:k+); % or a.^[-:] % delay x(=x(n-) x=zeros(,m); x(k:m)=x(k-:k+); % advance x(=x(n+) x=zeros(,m); x(k-:k)=x(k-:k+); % graph of signal x, x,x subplot(3,,); stem(n,x); title('original'); subplot(3,,); stem(n,x); title('delay'); subplot(3,,3); stem(n,x); title('advance'); 3 original - -5 - -5 5 5 delay 3 - -5 - -5 5 5 advance 3 - -5 - -5 5 5-6-

4 η ΕΝΟΤΗΤΑ Κλιµάκωση στο χρόνο, Αντιστροφή Ορίζουµε το n σε ένα διάστηµα από - έως και την αντίστοιχη n a n [,] x( = µε α =.9. Θέλουµε να σχεδιάσουµε τις n [, ) (,] εξής ακολουθίες x(=x(, x(=x(n/) και x3(=x(-. Στην πρώτη έχουµε διαίρεση συχνότητας (down sampling), στην δεύτερη πολλαπλασιασµό συχνότητας (up sampling) και στην τρίτη έχουµε αντιστροφή (reversal). Σε MATLAB υλοποιείται ως εξής : % Sampling n=-:; m=length(; k=find(n==); a=.9; x=zeros(,m); x(k-:k+)=a.^n(k-:k+); % or a.^[-:] % down sampling x(=x( x=zeros(,m); x(k-5:k+5)=x(k-::k+); % up sampling x(=x(n/) x=zeros(,m); x(::m)=x(k-:k+); % reverse x3(=x(- x3(:m)=x(m:-:); % or x3=x(m:-:) % graph of signal x, x, x, x3 subplot(4,,); stem(n,x); title('original'); subplot(4,,); stem(n,x); title('down Sampling'); subplot(4,,3); stem(n,x); title('up Sampling'); subplot(4,,4); stem(n,x3); title('reverse'); -7-

3 original - -5 - -5 Down Sampling 5 5 3 - -5 - -5 Up Sampling 5 5 3 - -5 - -5 reverse 5 5 3 - -5 - -5 5 5 5 η ΕΝΟΤΗΤΑ Χωρισµός σήµατος σε άθροισµα άρτιου και περιττού µέρους. Ορίζουµε το n σε ένα διάστηµα από - έως και την βηµατική συνάρτηση, n στο αντίστοιχο διάστηµα u( =. Θέλουµε να σχεδιάσουµε τις, n < εξής ακολουθίες x e ( = ( x( + x( ) και x o ( = ( x( x( ). Σε MATLAB υλοποιείται ως εξής : % partition odd - even n=-:; m=length(; k=find(n==); u=zeros(,m); u(k:m)=; ur=u(m:-:); % even part xe(=/[x(+x(-] ue=/*(u+ur); % odd part xo(=/[x(-x(-] uo=/*(u-ur); -8-

% graph of signal x, x,x subplot(3,,); stem(n,u); title('original'); axis([- -.5]) subplot(3,,); stem(n,ue); title('even part'); axis([- -.5]) subplot(3,,3); stem(n,uo); title('odd part'); axis([- -.5]).5.5 -.5 original - - -5 - -5 5 5 even part.5.5 -.5 - - -5 - -5 5 5 odd part.5.5 -.5 - - -5 - -5 5 5 6 η ΕΝΟΤΗΤΑ Συνέλιξη, απόκριση συστηµάτων Ορίζουµε το n σε ένα διάστηµα από - έως και δυο ακολουθίες x µε τιµές,, 3, 4, 5 για n από έως 4 και την h (κρουστική απόκριση ) µε τιµές,, για n από - έως. Θα υπολογίσουµε την συνέλιξη των x και h, δηλαδή -9-

+ k= y ( = x( * h( = x( k) h( n k) η οποία µας δίνει την έξοδο του συστήµατος. Σε MATLAB υλοποιείται ως εξής : % Convolution % Input - Impulse Response - Output n=-:; m=length(; k=find(n==); x=zeros(,m); h=zeros(,m); y=zeros(,m); x(k:k+4)=[ 3 4 5]; h(k-:k+)=[ ]; yt=conv(x(k:k+4),h(k-:k+)); y(k-:k+5)=yt; % graph of signal x, h,y subplot(3,,) stem(n,x) title('input signal') subplot(3,,) stem(n,h) title('impulse response') subplot(3,,3) stem(n,y) title('output signal') 6 input signal 4 - -8-6 -4-4 6 8 impulse response.5.5 - -8-6 -4-4 6 8 output signal 5 5 - -8-6 -4-4 6 8 --

Η συνάρτηση conv(x, y) υπολογίζει τη συνέλιξη των διανυσµάτων x και y. Αποτέλεσµα είναι ένα διάνυσµα του οποίου το µήκος είναι Νx+Νy- όπου Νx είναι το µήκος του x και Νy το µήκος του y. Το νέο διάνυσµα έχει ως αρχικό δείκτη το άθροισµα των αρχικών δεικτών των x και y δηλαδή L = Lx+Ly όπου Lx ο αριστερός (αρχικός) δείκτης του x και Ly ο αριστερός (αρχικός) δείκτης του y και τελικό δείκτη το άθροισµα των τελικών δεικτών των x και y δηλαδή R = Rx+Ry όπου Rx ο δεξιός (τελικός) δείκτης του x και Ry ο δεξιός (τελικός) δείκτης του y 7 η ΕΝΟΤΗΤΑ Υπολογισµός ευθύ και αντίστροφου DFT Ορίζουµε το n σε ένα διάστηµα από έως 9 και το µοναδιαίο παλµό x µε διάρκεια από έως 5. Θα υπολογίσουµε τον ευθύ και τον αντίστροφο DFT της ακολουθίας αυτής, που δίνονται, αντίστοιχα, από τους τύπους: X ( k) = N n= x( = (/ N) x( *exp( j ** pi *( k )*( n ) / N), N n= X ( k)*exp( j ** pi *( k )*( n ) / N), k N n N Στη συνέχεια θα σχεδιάσουµε το µέτρο και τη φάση για τον ευθύ, και το πραγµατικό και φανταστικό µέρος για τον αντίστροφο DFT. % Forward DFT of unit step n=:9; x=*n; x(:5)=; y=fft(x); y=fftshift(y); ym=abs(y); yp=angle(y); figure(); stem(n,x) title('original Signal'); figure(); stem(n,ym); title('dft Magnitude'); figure(3); stem(n,yp); title('dft phase'); %Inverse DFT of unit step z=ifft(x); zr=real(z); zi=imag(z); figure(4); --

stem(n,x) title('original DFT sequence'); figure(5); stem(n,zr); title('real part of signal'); figure(6); stem(n,zi); title('imaginary part of signal'); Original Signal.9.8.7.6.5.4.3.. 4 6 8 4 6 8 --

5 DFT Magnitude 4.5 4 3.5 3.5.5.5 4 6 8 4 6 8 DFT phase.5.5 -.5 - -.5-4 6 8 4 6 8-3-

Original DFT sequence.9.8.7.6.5.4.3.. 4 6 8 4 6 8.3 Real part of signal.5..5..5 -.5 4 6 8 4 6 8-4-

. Imaginary part of signal.5..5 -.5 -. -.5 -. 4 6 8 4 6 8 H fft(x) υπολογίζει τον DFT Ν σηµείων του διανύσµατος x, όπου Ν το µήκος του x. H fftshift(x) µετατοπίζει τη µηδενική συχνότητα του φάσµατος ώστε να βρίσκεται στο κέντρο του διανύσµατος. Η abs(x) υπολογίζει το µέτρο του µιγαδικού διανύσµατος x (ή την απόλυτη τιµή ενός πραγµατικού). Η angle(x) υπολογίζει τη φάση του µιγαδικού διανύσµατος x. H ifft(x) υπολογίζει τον αντίστροφο DFT Ν σηµείων του διανύσµατος x, όπου Ν το µήκος του x. Η real(x) υπολογίζει το πραγµατικό µέρος του διανύσµατος x. Η imag(x) υπολογίζει το φανταστικό µέρος του διανύσµατος x. 8 η ΕΝΟΤΗΤΑ Υπολογισµός DTFT µέσω του DFT Παρακάτω θα υπολογίσουµε τον µετασχηµατισµό Fourier διακριτού χρόνου (DTFT) ενός ηµιτονοειδούς σήµατος x( = cos(3πn /8) µέσω του DFT, βασιζόµενοι στο γεγονός ότι: k) = X (exp( j )) X ( ω ω= πk / N -5-

% computation of DTFT with DFT n=:5; x=cos(*pi*n*3/6); xx=fft(x); xe=fft(x,5); L=:5; plot(l/5,abs(xe)); hold; plot(n/6,abs(xx),'o'); xlabel('normalized angular frequency'); ylabel('magnitude'); 9 8 7 6 Magnitude 5 4 3...3.4.5.6.7.8.9 Normalized angular frequency Η συνάρτηση cos(x) υπολογίζει το συνηµίτονο των στοιχείων του x. H συνάρτηση fft µε δεύτερο όρισµα, δηλαδή στη µορφή fft(x, L), συµπληρώνει το διάνυσµα x µε µηδενικά ως το µήκος L προτού υπολογίσει τον DFT. H hold κρατάει το περιεχόµενο του τρέχοντος γραφήµατος ώστε ότι σχεδιαστεί στη συνέχεια δε θα σβήσει τα προηγούµενα. Η plot(x, y) σχεδιάζει ένα συνεχές γράφηµα του y σε σχέση µε το x. Όταν έχει τρίτο όρισµα, αυτό είναι ο χαρακτήρας που θα χρησιµοποιηθεί για το σχεδιασµό των τιµών του y. Οι xlabel και ylabel τυπώνουν, αντίστοιχα, ένα τίτλο στον οριζόντιο και τον κάθετο άξονα του γραφήµατος. -6-

9 η ΕΝΟΤΗΤΑ Υπολογισµός συνέλιξης µέσω DFT Παρακάτω θα υπολογίσουµε τη συνέλιξη δύο πεπερασµένων σηµάτων µε χρήση του DFT. ηλαδή συµπληρώνοντας καθένα από τα σήµατα µε µηδενικά ως το µήκος L+M-, όπου L το µήκος του x και Μ το µήκος του y, υπολογίζοντας τους DFT των επεκταµένων σηµάτων και στη συνέχεια το γινόµενο αυτών των µετασχηµατισµών, και τέλος υπολογίζοντας τον αντίστροφο DFT. Επίσης θα υπολογιστεί η συνέλιξη απευθείας και θα υπολογιστικό το σχετικό λάθος υπολογισµού. % computation of convolution with DFT x=[5 3 8 6]; y=[7 9 8 3 6]; z=conv(x,y); L=length(x)+length(y)-; xx=fft(x,l); yy=fft(y,l); zz=xx.*yy; zdft=ifft(zz); subplot(3,,) stem(z); title('convolution by definition'); subplot(3,,) stem(zdft); title('convolution by DFT'); subplot(3,,3) stem(z-zdft); title('computation error'); -7-

Convolution by definition 5 5 3 4 5 6 7 8 9 Convolution by DFT 5 5 3 4 5 6 7 8 9 4 x -4 Computation error - 3 4 5 6 7 8 9 Σηµείωση: Σε άλλες εκδόσεις του MATLAB, υπάρχει η πιθανότητα κατά τον αντίστροφο DFT να υπάρξει και κάποιο, σχεδόν µηδενικό, φανταστικό µέρος για το σήµα. Σ αυτή την περίπτωση θα πρέπει να χρησιµοποιήσουµε τη συνάρτηση abs για τη σχεδίαση του µέτρου των σηµάτων αντί να σχεδιάσουµε τα ίδια τα σήµατα. η ΕΝΟΤΗΤΑ Υπολογισµός ευθύ και αντίστροφου µετασχηµατισµού Z n n ( = + 3 και τον µετασχηµατισµό z Ορίζουµε µια ακολουθία x z + 7z H ( z) =. Θα υπολογίσουµε τον ευθύ µετασχηµατισµό Z της z + z ακολουθίας x( ο οποίος δίνεται από τον τύπο : αντίστροφο µετασχηµατισµό Z της Η(z). %Forward Z-transform clear; syms n z; x=^n+3*(/)^n; X ( z) = n= x( z n αλλά και το -8-

X=ztrans(x, n, z); pretty(x) %Inverse Z-transform clear; syms z; H=(*z^+7*z)/(z^+z-); h=iztrans(h); pretty(h); και θα εµφανιστούν τα παρακάτω αποτελέσµατα στο Command window του matlab z z / --------- + 6 ------- / z - z - n -(-) + 3 Το πρώτο αποτέλεσµα είναι ο µετασχηµατισµός Z της x(. Το δεύτερο αποτέλεσµα είναι o αντίστροφος µετασχηµατισµός Z της Η(z). Η συνάρτηση syms z ορίζει την µεταβλητή z ως συµβολική. Η συνάρτηση ztrans(x) υπολογίζει το µετασχηµατισµό Z της x. Η συνάρτηση pretty(x) µετατρέπει την παράσταση x σε µια πιο ευπαρουσίαστη µορφή. Η συνάρτηση iztrans(h) υπολογίζει τον αντίστροφο µετασχηµατισµό Z της H. Υπολογισµός µερικών κλασµάτων Στη συνέχεια θα κάνουµε στην Η(z) ανάλυση σε µερικά κλάσµατα µε βάση B( z) R() R() R( τον τύπο : = + + + + K( z) µε θετικές δυνάµεις A( z) z P() z P() z P( B( z) r() r() r( του z ή = + + + + k() + k() z... µε A( z) p() z p() z p( z αρνητικές δυνάµεις του z. %Residue computation b = [ 7 ]; a = [ -]; [r,p,k]=residue(b,a) [r,p,k]=residuez(b,a) και θα εµφανιστούν τα παρακάτω αποτελέσµατα στο Command window του matlab -9-

r = 3 p = - k = r = - 3 p = - k = Το πρώτο αποτέλεσµα είναι η ανάλυση σε µερικά κλάσµατα, µε θετικές δυνάµεις του z, το r µας επιστρέφει τους αριθµητές, το p τις ρίζες των παρανοµαστών (πόλοι) και το k το υπόλοιπο, δηλαδή η Η(z) αναλύεται 3 H ( z) = + +. z + z Το δεύτερο αποτέλεσµα είναι η ανάλυση σε µερικά κλάσµατα, µε αρνητικές δυνάµεις του z, το r µας επιστρέφει τους αριθµητές, το p τις ρίζες των παρανοµαστών (πόλοι) και το k το υπόλοιπο, δηλαδή η Η(z) 3 αναλύεται H ( z) = + + z z Η συνάρτηση [r,p,k]=residue(b,a) κάνει ανάλυση σε µερικά κλάσµατα την Η, η οποία είναι µε θετικές δυνάµεις του z. Όπου b είναι οι συντελεστές του αριθµητή, a είναι οι συντελεστές του παρανοµαστή, r είναι οι αριθµητές των κλασµάτων, p είναι οι ρίζες των παρανοµαστών (πόλοι), k είναι το υπόλοιπο. Η συνάρτηση [r,p,k]=residue(b,a) κάνει ανάλυση σε µερικά κλάσµατα την Η, η οποία είναι µε αρνητικές δυνάµεις του z. Όπου b είναι οι συντελεστές του αριθµητή, a είναι οι συντελεστές του παρανοµαστή, r είναι οι αριθµητές των κλασµάτων, p είναι οι ρίζες των παρανοµαστών (πόλοι), k είναι το υπόλοιπο. --

Συνάρτηση µεταφοράς - Ευστάθεια Τέλος θα ορίσουµε την συνάρτηση µεταφοράς σε matlab, θα βρούµε τους πόλους και τα µηδενικά του συστήµατος τα οποία θα τα σχεδιάσουµε µαζί µε τον µοναδιαίο κύκλο και θα ελέγξουµε αν το σύστηµα είναι η όχι ευσταθές. %define transfer function X(z) as tf-object H=tf([ 7 ],[ -],) H=filt([ 7 ],[ -]) pol=pole(h) zer=zero(h) pzmap(h) και θα εµφανιστούν τα παρακάτω αποτελέσµατα και η γραφική παράσταση στο Command window του matlab Pole-Zero Map.5.5 Imaginary Axis -.5 - -.5-3.5-3 -.5 - -.5 - -.5.5 Real Axis Transfer function: z^ + 7 z ----------- z^ + z - Sampling time: Transfer function: + 7 z^- ----------------- + z^- - z^- --

Sampling time: unspecified pol = zer = - -3.5 Τα δυο πρώτα αποτελέσµατα µας εµφανίζουν την Η(z) ως συνάρτηση µεταφοράς (transfer functio το ένα µε θετικές δυνάµεις του z ενώ το άλλο µε αρνητικές δυνάµεις του z. Τα δυο τελευταία είναι οι πόλοι και τα µηδενικά της Η(z). Η γραφική παράσταση µας δείχνει που βρίσκονται τα µηδενικά (o) και οι πόλοι (x) σε σχέση µε τον µοναδιαίο κύκλο. Η συνάρτηση H=tf([ 7 ],[ -],) δηµιουργεί την Η(z) ως συνάρτηση µεταφοράς µε θετικές δυνάµεις του z µε ορίσµατα σε πίνακες τους συντελεστές του αριθµητή, τους συντελεστές του παρανοµαστή και το για διακριτά συστήµατα. Η συνάρτηση H=filt([ 7 ],[ -]) δηµιουργεί την Η(z) ως συνάρτηση µεταφοράς µε αρνητικές δυνάµεις του z µε ορίσµατα σε πίνακες τους συντελεστές του αριθµητή και τους συντελεστές του παρανοµαστή. Η συνάρτηση pole(h) µας επιστρέφει τους πόλους της Η ενώ η συνάρτηση zero(h) µας επιστρέφει τα µηδενικά της Η. Ως όρισµα και οι δυο παίρνουν την συνάρτηση µεταφοράς Η. Η συνάρτηση pzmap(h) µας επιστρέφει την γραφική παράσταση των πόλων και των µηδενικών σε σχέση µε τον µοναδιαίο κύκλο. Με την βοήθεια αυτής της εντολής έχουµε την δυνατότητα να καταλάβουµε εάν το σύστηµα είναι ευσταθές ή όχι. Για είναι ευσταθές θα πρέπει οι πόλοι να βρίσκονται µέσα στον κύκλο. Απόκριση συστηµάτων Με την βοήθεια κάποιων εντολών θα σχεδιάσουµε την απόκριση του συστήµατος για διάφορες εισόδους. step(h); impulse(h); t=:*pi; u=sin(t); lsim(h,u,t); --

4 Step Response 35 3 5 Amplitude 5 5.5.5.5 3 3.5 4 4.5 5 Time (sec) 35 Impulse Response 3 5 5 Amplitude 5-5 - -5.5.5.5 3 3.5 4 4.5 5 Time (sec) -3-

3 x 8 Linear Simulation Results Amplitude - - -3-4 -5-6 5 5 5 3 35 Time (sec) Η πρώτη γραφική παράσταση µας δείχνει την απόκριση του συστήµατος µε είσοδο την µοναδιαία βηµατική συνάρτηση (u(). Η δεύτερη γραφική παράσταση µας δείχνει την απόκριση του συστήµατος µε είσοδο τον µοναδιαίο παλµό (δ(). Η τρίτη γραφική παράσταση µας δείχνει την απόκριση του συστήµατος µε είσοδο την ηµιτονοειδή συνάρτηση (sin(). Η συνάρτηση step(h) σχεδιάζει την απόκριση του Η µε είσοδο την µοναδιαία βηµατική συνάρτηση ενώ η step(h,tfinal) σχεδιάζει την απόκριση έως την τιµή tfinal. Η συνάρτηση impulse(h) σχεδιάζει την απόκριση του Η µε είσοδο τον µοναδιαίο παλµό ενώ η impulse(h,tfinal) σχεδιάζει την απόκριση έως την τιµή tfinal. Η συνάρτηση lsim(h,u,t) σχεδιάζει την απόκριση του Η µε είσοδο το διάνυσµα u υπολογισµένο στις χρονικές στιγµές t. -4-