1 η Εργαστηριακή Άσκηση ιασυνδέσεις Συστηµάτων µε το Πρόγραµµα MATLAB 1. Να υλοποιηθούν στο MATLAB οι ακόλουθες συνδέσεις συστηµάτων Βαλβίδα ρύθµισης ροής καυσίµου 1 s Όχηµα και Μηχανή 10 H() s = + ut () H() s = 2 1 s 1 yt () wt () + Σ - Σερβοµηχανισµός ανύψωσης 10 s+ 10 Μοντέλο αεροσκάφους Σερβοµηχανισµός ανύψωσης ( s+ 5) s s 2 ( + 3.5s+ 6) ht () 2. Να υπολογιστεί η βηµατική, αναριχιτική, κρουστική και αρµονική απόκριση των παραπάνω συστηµάτων
1. Εισαγωγή Προσοµοίωση και Έλεγχος υναµικών Συστηµάτων µε MATLAB Το Μatlab είναι ένα πρόγραµµα για µαθηµατικούς υπολογισµούς, προσοµοίωση και έλεγχο. Περιέχει πολλά πακέτα εφαρµογών τα οποία χρησιµοποιούν τις βασικές συναρτήσεις του Μatlab για να υλοποιήσουν αλγόριθµους ελέγχου χρήσιµους σε πολλές εφαρµογές των µαθηµάτων: Εισαγωγής στον αυτόµατο έλεγχο, Σχεδίασης συστηµάτων ελέγχου και Έλεγχος Υδραυλικών και Πνευµατικών Συστηµάτων 2. Αρχεία Μ (M-Files) Όλα τα προγράµµατα ελέγχου και προσοµοίωσης θα γράφονται σε αρχεία Μ. To create a new M-file in the Editor/Debugger, either click the new file button on the MATLAB toolbar, or select File -> New -> M-file from the MATLAB desktop Save As - The Save file as dialog box opens, where you assign a name to the file and save it. You do not need to type the.m extension because MATLAB automatically assigns the.m extension to the filename. You can run a script, that is, an M-file that doesn't require an input argument, directory from the Editor/Debugger by clicking the run button on the toolbar. 3. Βασικά Μαθηµατικά Ορισµός ιανύσµατος a=[1 2 3 4 5 6 9 8 7] Άθροισµα ιανυσµάτων c=a+b Ενδεικτικές Συναρτήσεις cos, cosh (Cosine and hyperbolic cosine), complex (Construct complex data from real and imaginary components), conj (Complex conjugate), exp (Exponential), sign (Signum function), sin, sinh (Sine and hyperbolic sine), sqrt (Square root). sin(pi/4) >>ans =0.7071 Plotting Bar (Vertical bar chart), barh(horizontal bar chart), hist (Plot histograms), loglog(plot using log-log scales), pie(pie plot), plot(plot vectors or matrices), polar(polar coordinate plot) t=0:0.25:7; y=sin(t); plot(t,y)
Πολυώνυµα Ένα πολυώνυµο στο Matlab παριστάνεται µε ένα διανύσµατα που περιέχει τους συντελεστές 3 2 των δυνάµεων του πολυωνύµου. Π.χ. το πολυώνυµο ps () = s + 3s + 2s+ 1 εκφράζεται στο Matlab ως εξής : p = [1 3 2 1] Η εντολή roots(p) υπολογίζει τις ρίζες του πολυωνύµου. roots([1 3 2 1]) >>ans = -2.3247-0.3376 + 0.5623i -0.3376-0.5623i H εντολή conv(x,y) πολλαπλασιάζει δυο πολυώνυµα x=[1 1]; y=[1 2 1]; conv(x,y) >>ans = 1 3 3 1 Πίνακες 1 0 2 Ο πίνακας A= 0 1 0 3 1 10 Α=[1 0 2;0 1 0;2 1 10] παριστάνεται στο Matlab ως εξής A*B (Πολλαπλασιασµός Πινάκων) inv(a) (Αντίστροφος του πίνακα Α) poly(a) (Χαρακτηριστικό πολυώνυµο του πίνακα Α) Α (Transpose του πίνακα Α) eig(α) (ιδιοτιµές του πίνακα Α)
tf zpk ss dss frd filt set tf zpk ss frd C2d D2c D2d ss2tf append 4. Συστήµατα Αυτοµάτου Ελέγχου (Control System Toolbox) ηµιουργία Γραµµικών µοντέλων Create a transfer function model Create a zero/pole/gain model Create a state space model Create a descriptor state space model Create a frequency response data model Specify a digital filter Set/modify properties of LTI models Conversions Conversion to transfer function Conversion to zero/pole/gain Conversion to state space Conversion to frequency data Continuous to discrete conversion Discrete to continuous conversion Resample discrete time model State space to transfer function conversion System interconnections Group LTI systems by appending inputs and outputs parallel Generalized parallel connection (see also overloaded +) series Generalized series connection (see also overloaded *) feedback lft connect Dcgain pole, eig zero Pzmap damp esort norm ltiview step impulse initial lsim gensig Feedback connection of two systems Generalized feedback interconnection (Redheffer star product) Derive state space model from block diagram description Model dynamics. D.C. (low frequency) gain System poles System (transmission) zeros Pole zero map Natural frequency and damping of system poles Sort continuous poles by real part Norms of LTI systems Time-domain analysis. Response analysis GUI (LTI Viewer) Step response Impulse response Response of state space system with given initial state Response to arbitrary inputs Generate input signal for LSIM
ltiview bode bodemag sigma nyquist nichols margin allmargin freqresp evalfr interp sisotool rlocus place acker estim reg rss, drss ss2ss canon ctrb obsv gram ssbal modred minreal sminreal Frequency-domain analysis. Response analysis GUI (LTI Viewer) Bode diagrams of the frequency response Bode magnitude diagram only Singular value frequency plot Nyquist plot Nichols plot Gain and phase margins All crossover frequencies and related gain/phase margins Frequency response over a frequency grid Evaluate frequency response at given frequency Interpolates frequency response data Classical design. SISO design GUI (root locus and loop shaping techniques) Evans root locus Pole placement. MIMO pole placement SISO pole placement Form estimator given estimator gain Form regulator given state feedback and estimator gains State-space models. Random stable state space models State coordinate transformation State space canonical forms Controllability matrix Observability matrix Controllability and observability gramians Diagonal balancing of state space realizations Model state reduction Minimal realization and pole/zero cancellation Structurally minimal realization
5. Παραδείγµατα ανάλυσης συστηµάτων αυτοµάτου ελέγχου Παράδειγµα : Έστω το σύστηµα που περιγράφετε από την ακόλουθη συνάρτηση µεταφοράς: Ys () s+ 7 Hs () = =. Us () s( s+ 5)( s+ 15)( s+ 20) ηµιουργία συνάρτησης µεταφοράς num=[1 7] den=conv(conv([1 0],[1 5]),conv([1 15],[1 20])) sys=tf(num,den)) Έλεγχος Ευστάθειας r=roots(den); for i=1:ndims(den) if r(i)<0 display({'s=',r(i),'stable root'}) else display ({'s=',r(i),'unstable root'}) end end ιάγραµµα πόλων µηδενικών pzmap(sys) Βηµατική απόκριση t=10 step(sys,t) Αρµονική απόκριση T = 0:0.01:10 U = 0.1*sin(5*T+1) lsim(sys,u,t) Υλοποίηση σε SIMULINK
ΕΙΣΑΓΩΓΗΣΤΟΝ ΣΤΟΝΑΥΤΟΜΑΤΟ ΈΛΕΓΧΟ (Ε) Παράδειγµα : Να υλοποιηθούν στο MATLAB οι ακόλουθες συνδέσειςσυστηµάτων συστηµάτων ut () Βαλβίδα ρύθµισης Όχηµα και Μηχανή ροήςκαυσίµου H s 1 10 () = H() s = 2 1 s s + 1 yt () wt () + Σ - Σερβοµηχανισµός ανύψωσης 10 s+ 10 Μοντέλο αεροσκάφους Σερβοµηχανισµός ανύψωσης ( s+ 5) s s 2 ( + 3.5s+ 6) ht () 1 ο Σύστηµα sys1=tf([1],[1 0]) sys2=tf([10],[1 1]) sys=series(sys1,sys1) 2 ο Σύστηµα sys1=tf([-10],[1 10]) sys2=tf([-1-5],[1 3.5 6 0]) sys=series(sys1,sys1) syscl=feedback(sys,-1) 6. Παράδειγµα Έστω το απλοποιηµένο σύστηµα ενός οχήµατος στο οποίο δεν λαµβάνεται υπόψη η ροπή αδράνειας των τροχών και η µόνη δύναµη που αντιτίθεται στην κίνηση του οχήµατος είναι η δύναµη της τριβής F() t = bxt ɺ (). Ο νόµος του Νεύτωνα για την παραπάνωµάζα είναι b mxt ɺɺ () + bxt ɺ () = ut (), yt () = xt ɺ () όπου xt () η θέση της µάζας, y() t η επιθυµητή έξοδος του συστήµατος (ταχύτητα του οχήµατος) και ut () η είσοδος (δύναµη από την µηχανή του οχήµατος). Έστω m= 1000Kg, b= 50Nsec/ m, ut () = 500 N. (1) 1. Να υπολογιστεί η συνάρτηση µεταφοράς, 2. να υπολογιστούν οι πόλοικαι τα µηδενικά του συστήµατος (pole, zero), 3. να εξετάσετε την ευστάθεια του συστήµατος, 4. να υπολογίσετε την απόκριση του οχήµατος όταν ο οδηγός βάλει γκάζι που αντιστοιχεί σε δύναµη µηχανής Σκαρπέτης Μιχάλης- ΕπίκουροςΚαθηγητής, Τµήµα Μηχανικών Αυτοµατισµού Τ.Ε., ΤΕΙ Ι
ίση µε ut () για χρόνο 120sec όταν το όχηµα ξεκινάει από ηρεµία (step), 5. να υπολογιστούν τα χαρακτηριστικά µεγέθη της απόκρισης του οχήµατος Λύση 1. Μετασχηµατίζοντας κατά Laplace µε αρχικές συνθήκες 0 την εξίσωση (1) λαµβάνεται 2 ms + bs Xs () = Us (), Ys () = sxs () λύνοντας την πρώτη εξίσωση ως προς Xs () και ( ) αντικαθιστώντας στην δεύτερη υπολογίζεται η συνάρτηση µεταφοράς : Ys () 1 Hs () = = Us () ms+ b b 2. Οι πόλοι του συστήµατος είναι οι ρίζες της συνάρτησης µεταφοράς δηλαδή s1=. Τα m µηδενικά του συστήµατος είναι οι ρίζες του αριθµητή της συνάρτησης µεταφοράς. Εποµένως το σύστηµα έχει έναν πόλο και κανένα µηδενικό. Για τον υπολογισµό των πόλων και των µηδενικών ενός συστήµατος µε το MATLAB χρησιµοποιήστε τον ακόλουθο κώδικα. m=1000 % ορισµός σταθερών του συστήµατος b=50 num=[1] % ορισµός αριθµητή και παρανοµαστή συνάρτησης µεταφοράς den=[m b] sys=tf(num,den) % ορισµός συστήµατος µε συνάρτηση µεταφοράς pole(sys) % Υπολογισµός πόλων και µηδενικών zero(sys) 3. Η ευστάθεια του συστήµατος χαρακτηρίζεται από την θέση των πόλων του. Αν το πραγµατικό µέρος όλων των πόλων του συστήµατος είναι αρνητικό το σύστηµα είναι b ευσταθές δηλαδή Re[ s1] = < 0, οπότε το σύστηµα είναι ευσταθές. m 4. Για να υπολογιστεί το ερώτηµα 4 θα πρέπει να υπολογιστεί η βηµατική απόκριση πλάτους 500του συστήµατος για χρόνο 120sec step(500*sys,120) % βηµατική απόκριση 5. Τα χαρακτηριστικά µεγέθη της απόκρισης ενός συστήµατος είναι τα ακόλουθα α) κέρδος του συστήµατος στη µόνιµη κατάσταση β) Χρόνος ανύψωσης γ) Μέγιστη υπερύψωση δ) Χρόνος αποκατάστασης ε) Χρόνος καθυστέρησης Με δεξί κλικ πάνω στην καµπύλη το MATLAB µπορεί να υπολογίσει όλα τα παραπάνω χαρακτηριστικά Ι