Επισκέπτρια Επίκουρη Καθηγήτρια ΗΜΥ 100: Εισαγωγή στην Τεχνολογία Διάλεξη 13 MATLAB (συνεχ.) και Εισαγωγή στα Ψηφιακά Σήματα 20 Οκτωβρίου, 2003 Χρυσάνθη Πρέζα, D.Sc. Επισκέπτρια Επίκουρη Καθηγήτρια TΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ
Περίληψη Ανακοινώσεις Επανάληψη Εισαγωγή στα Ψηφιακά Σήματα Εισαγωγή Τεχνικού Εργαλείου MATLAB Εισαγωγή στα Ψηφιακά Σήματα
Ανακοινώσεις Η ιστοσελίδα μας! KO5 πρέπει να παραδοθεί την Πέμπτη www.eng.ucy.ac.cy/preza/ECE100/ Δείτε εκεί και τις ιστοσελίδες των συμφοιτητών σας KO5 πρέπει να παραδοθεί την Πέμπτη Εργαστήρια: Φάση Β Υπενθύμιση: Η ενδιάμεση εξέταση θα γίνει την άλλη Δευτέρα, 27/10/03. Διαβάστε την ύλη αναφοράς για τις διαλέξεις στα βιβλία του μαθήματος στην βιβλιοθήκη στον περιορισμένο δανεισμό Εισαγωγή στο MATLAB (Matlab: An Introduction) και δοκιμάστε τις εντολές. Το αρχείο είναι στην ιστοσελίδα www.eng.ucy.cy.ac/preza/ECE100 ΔΙΔΑΚΤΙΚΑ ΒΟΗΘΗΜΑΤΑ Σημειώσεις
Επανάληψη: Λογισμικό MATLAB Διαλογικό σύστημα και γλώσσα προγραμματισμού ψηλού επιπέδου για γενικό επιστημονικό και τεχνικό υπολογισμό Αρχικά δημιουργήθηκε για την διαχείριση μητρώων / πίνακων (matrix manipulation) και διανυσμάτων (vectors) Διευκολύνει την ανάπτυξη προγραμμάτων για αριθμητικούς υπολογισμούς, γραφικές αναπαραστάσεις, απεικονίσεις, επεξεργασία ψηφιακών σημάτων και εικόνων, ανάλυση δεδομένων, κτλ
Επανάληψη: MATLAB Πληροφορίες / Βοήθεια Πίνακες και Διανύσματα Πως καθορίζονται Διάφορους τελεστές και πράξεις Διάφορες ενσωματωμένες συναρτήσεις Γραφικές Παραστάσεις Πολλαπλές γραφικές παραστάσεις σε ένα σχήμα Πολλαπλά γραφικά σχήματα σε μία σελίδα Διαλογικό σύστημα που δέχεται είσοδο μίας εντολής ή ένα σύνολο εντολών που βρίσκονται μέσα σε ένα αρχείο MATLAB
Αρχεία Matlab: Αρχεία Μ (M-files) myMFile.m >> myMFile File Set Path
Αρχεία Δεδομένων MATLAB >> load w.dat >> w >> w(2,1) 4 5 6 7 8 9 7
Αρχεία MATLAB: load/save >> x = 1:2:11; >> y = [4 7 -3 2]; >> save C:\mySaved1 x >> save C:\mySaved2 >> clear all >> load C:\mySaved1 >> x >> y >> load C:\mySaved2 1 3 5 7 9 11 ??? Undefined function or variable ’y'. 4 7 -3 2
Αρχεία Συναρτήσεων MATLAB Απλές εντολές σε M-file: myMFile1.m a = 2.5; e = pi * a ^ 2; >> myMFile1 >> e e = 19.634954 Συναρτήσεις Χρήστη: >> e = myFunction1(10) e = 314.1593 >> myFunction1(0.5) ans = 0.7854 >> x=myFunction1(17.5) x = 962.1128 myFunction1.m function embado=myFunction1(x) embado = pi * x ^2; return
Συναρτήσεις Ορισμός συναρτήσεως: function apotelesma = synarthsh1(parametroi) >> clear all >> z=myFun1(8) >> y ??? Undefined function or variable 'y'. >> z z = 512 myFun1.m function y=myFun1(x) y = x*x*x; return Ορισμός συνάρτησης myFun2.m function myFun2(x,y) x + y return Σώμα συνάρτησης >> myFun2(8,7) ans = 15
Λογικά Τέστς Τελεστές: > < > = < = = = ~ = & | ~ > < > = < = = = ~ = & | ~ >> x = 5; >> y = 7; >> x < y >> x >= y - 3 >> x == y - 3 >> 0 < x & x+2 > y >> 0 < x | y > x >> ~ (x < 5) 1 1 1 1
Διακλαδώσεις if έκφραση1 εκτελείται μόνο αν η έκφραση1 είναι αληθής elseif έκφραση2 εκτελείται μόνο αν η έκφραση1 δεν είναι αληθής και η έκφραση2 είναι αληθής else εκτελείται αν καμία έκφραση δεν είναι αληθής end if έκφραση1 εκτελείται μόνο αν η έκφραση1 είναι αληθής end if έκφραση1 εκτελείται μόνο αν η έκφραση1 είναι αληθής else εκτελείται μόνο αν η έκφραση1 δεν είναι αληθής end
Παράδειγμα Διακλαδώσεων Αρχείο rand1.m
Βρόγχοι (Loops) for μεταβλητή = αρχική τιμή : (προαιρετικό) βήμα : τελική τιμή εντολές end 1 4 9 16 25 for i=1:5 disp(i^2) end for i=5:-1:1 if i == 3 continue end disp(i^2) 25 16 4 1
Βρόγχοι (συνεχ.) while λογική έκφραση εντολές end i = 0; while 1 (μέσα στις οποίες πρέπει κάτι σχετικό με την λογική έκφραση να αλλάζει, ή να υπάρχει κάποιο break, ώστε να αποφεύγεται βρόγχος επ’άπειρον) while λογική έκφραση εντολές end i = 0; while 1 if i>=10 break end i = i + 2 disp(i) i = 2 i = 4 i = 6 i = 8 i = 10 10 i = 0; while i<10 i = i + 2 end disp(i) continue: συνέχεια με επόμενη εκτέλεση βρόγχου for ή while break: τερματισμός εκτέλεσης βρόγχων for και while
Άλλες Xρήσιμες Eντολές >> format long ; pi ans = 3.14159265358979 ans = 3.1416 >> format short ; pi >> disp(pi) 3.1416 >> t= 'Testing' ; disp(t) Testing >> s='2*3-5+3/2’ >> eval(s) ans =2.5000 >> realMax ans =1.7977e+308 >> realMin ans =2.2251e-308 >> help InF >> help NaN >> print >> help print
Αναπαράσταση Σήματος Με το MATLAB αναπαριστούμε / επεξεργαζόμαστε ένα σήμα με ορισμένες τιμές (ένα πεπερασμένο αριθμό τιμών) του σήματος Ένα σήμα μπορεί να οριστεί από μία εξίσωση ή μια γραφική παράσταση Το σήμα είναι μία συνάρτηση χρόνου Πεδίο ορισμού Πεδίο τιμών v(t) v(.) t
Αναλογικά και Ψηφιακά Σήματα Αναλογικό σήμα (analog signal): συνεχής συνάρτηση στην οποία η ανεξάρτητη μεταβλητή και η εξαρτημένη μεταβλητή παίρνουν συνεχές τιμές. Σήμα διακριτού χρόνου (discrete-time signal): συνάρτηση στην οποία η ανεξάρτητη μεταβλητή παίρνει μόνο ορισμένες (διακριτές) τιμές και η εξαρτημένη μεταβλητή παίρνει συνεχές τιμές. Ψηφιακό σήμα (digital signal): συνάρτηση στην οποία η ανεξάρτητη μεταβλητή και η εξαρτημένη μεταβλητή παίρνουν μόνον ορισμένες (διακριτές) τιμές
Παραδείγματα Αναλογικό σήμα Σήμα διακριτού χρόνου
Παραδείγματα Σήμα διακριτού χρόνου Ψηφιακό σήμα
Μετατροπή Σήματος Ένα αναλογικό σήμα μπορεί να μετατραπεί σε ένα ψηφιακό σήμα Αναλογικόψηφιακός μετατροπέας (A/D converter) Δειγματολήπτης Κβαντιστής
Κίνητρο Το κίνητρο μετατροπής σημάτων από αναλογικά σε ψηφιακά είναι η επεξεργασία σημάτων με ηλεκτρονικούς υπολογιστές. Προτερήματα Ψηφιακής Επεξεργασίας Σημάτων Εύκολη εφαρμογή Ευέλικτος σχεδιασμός Χαμηλό κόστος. Η ψηφιακή τεχνολογία δεν είναι ακριβή
Δειγματοληψία (Sampling) Το σήμα διακριτού χρόνου αποτελείται από δείγματα (samples) του αναλογικού σήματος που παίρνονται σε χρονικά διαστήματα nT Τ είναι η περίοδος δειγματοληψίας (sampling period) Προσέξετε ότι οι τιμές του νδ[ n ] είναι αναλογικές. f s= 1 / T είναι η συχνότητα ή ρυθμός δειγματοληψίας (sampling rate)
Δειγματοληψία Δεδομένο: Όποτε γίνεται δειγματοληψία από ένα αναλογικό σήμα αναπόφευκτα χάνονται ορισμένες πληροφορίες του σήματος. Ερώτηση: Πόσο γρήγορα πρέπει να παίρνουμε τα δείγματα από ένα αναλογικό σήμα; Απάντηση: Η δειγματοληψία πρέπει γίνεται με τέτοιο ρυθμό έτσι ώστε το σήμα να αναγνωρίζεται από τα δείγματα. Τότε η ποσότητα πληροφοριών του σήματος που χάνεται είναι η μικρότερη.
Κβαντισμός (Quantization) Οι τιμές ενός σήματος διακριτού χρόνου είναι αναλογικές. Μετατρέπονται σε ψηφιακές με κβαντισμό. Με τον κβαντισμό περιορίζουμε το πεδίο τιμών σε ένα σύνολο πεπερασμένου αριθμού Μ τιμών. Η ευκρίνεια του σήματος εξαρτάται / καθορίζεται από τον αριθμό Μ. Αυτές οι τιμές μπορούν να αναπαριστούν με δυαδικούς αριθμούς (που αποτελούνται από 0 και 1) που επεξεργάζεται ένας υπολογιστής.