ECEN 605 Linear Control Systems Instructor: S.P. Bhattacharyya

Slides:



Advertisements
Similar presentations
MATLAB BASICS ECEN 605 Linear Control Systems Instructor: S.P. Bhattacharyya.
Advertisements

MATLAB – A Computational Methods By Rohit Khokher Department of Computer Science, Sharda University, Greater Noida, India MATLAB – A Computational Methods.
ECEN/MAE 3723 – Systems I MATLAB Lecture 3.
For System Dynamics & Control
1 Eng. Mohamed El-Taher Eng. Ahmed Ibrahim. 2 1.FUNCTION SUMMARY polyfun  Polynomial functions are located in the MATLAB polyfun directory. For a complete.
H(s) x(t)y(t) 8.b Laplace Transform: Y(s)=X(s) H(s) The Laplace transform can be used in the solution of ordinary linear differential equations. Let’s.
CSE 123 Symbolic Processing. Declaring Symbolic Variables and Constants To enable symbolic processing, the variables and constants involved must first.
UNIVERSITÁ DEGLI STUDI DI SALERNO FACOLTÀ DI INGEGNERIA Prof. Ing. Michele MICCIO Dip. Ingegneria Industriale (DIIn) Prodal Scarl (Fisciano) Transfer Function.
Bode Magnitude Plots Constructed Bode Actual Bode
ECEN/MAE 3723 – Systems I MATLAB Lecture 1. Lecture Overview  Introduction and History  Matlab architecture  Operation basics  Visualization  Programming.
Frequency Response Methods and Stability
Matlab Matlab is a powerful mathematical tool and this tutorial is intended to be an introduction to some of the functions that you might find useful.
Poles and Zeros and Transfer Functions
Linear system equation Solve the following system of linear equations: 2 x + y – 4 z = 5 x - 2 y - 5 z = y + 2 z = 4 One possible solution is by.
1 ECEN Automatic Control Systems Matlab Lecture 1 Introduction and Control Basics Presented by Moayed Daneshyari OKLAHOMA STATE UNIVERSITY.
Introduction to Array The fundamental unit of data in any MATLAB program is the array. 1. An array is a collection of data values organized into rows and.
Matlab intro The Environment
MATLAB-Tutorial 3 Class ECES-304 Presented by : Shubham Bhat.
MATLAB INTRO CONTROL LAB1  The Environment  The command prompt Getting Help : e.g help sin, lookfor cos Variables Vectors, Matrices, and Linear Algebra.
Introduction to MATLAB January 18, 2008 Steve Gu Reference: Eta Kappa Nu, UCLA Iota Gamma Chapter, Introduction to MATLAB,
ENSC 383- Feedback Control Summer 2010 TAs:Kaveh Kianfar, Esmaeil Tafazzoli G(s) U(s) inputY(s) output MATLAB Tutorial 1.
IC3003 B ASIC S CIENTIFIC C OMPUTING Lecture 1 Monday 08:30-11:30 U204a.
ELG 3120 Signal and System Analysis 1 Introduction to MATLAB TAs Wei Zhang Ozgur Ekici (Section A)(Section B) ELG 3120 Lab Tutorial 1.
Bode Diagram (2) Hany Ferdinando Dept. of Electrical Engineering Petra Christian University.
ECE 1304 Introduction to Electrical and Computer Engineering Section 1.1 Introduction to MATLAB.
MATLAB Basics. The following screen will appear when you start up Matlab. All of the commands that will be discussed should be typed at the >> prompt.
ECE 4115 Control Systems Lab 1 Spring 2005
The Hong Kong Polytechnic University Industrial Centre 1 MatLAB Lesson 4 : Polynomial Edward Cheung Room W311g 2008.
Solving DEs etc. Laplace transforming derivatives Etc.
Circuits II EE221 Unit 4 Instructor: Kevin D. Donohue
MAE 1202: AEROSPACE PRACTICUM An Introduction to MATLAB: Part 2 Mechanical and Aerospace Engineering Department Florida Institute of Technology Developed.
ECE 4115 Control Systems Lab 1 Spring 2005 Chapter 1 System models.
Matlab Screen  Command Window  type commands  Current Directory  View folders and m-files  Workspace  View program variables  Double click on a.
MATLAB-Tutorial 2 Class ECES-304 Presented by : Shubham Bhat.
Week 9 Frequency Response And Bode Plots. Frequency Response The frequency response of a circuit describes the behavior of the transfer function, G(s),
Introduction to MATLAB 1.Basic functions 2.Vectors, matrices, and arithmetic 3.Flow Constructs (Loops, If, etc) 4.Create M-files 5.Plotting.
Automatic Control By Dr. / Mohamed Ahmed Ebrahim Mohamed Web site:
CONTROL SYSTEM DESIGN by using MATLAB
Variable-Frequency Response Analysis Network performance as function of frequency. Transfer function Sinusoidal Frequency Analysis Bode plots to display.
1 Eeng 224 Chapter 14 Frequency Response Huseyin Bilgekul Eeng 224 Circuit Theory II Department of Electrical and Electronic Engineering Eastern Mediterranean.
1 Eeng 224 Chapter 14 Frequency Response Huseyin Bilgekul Eeng 224 Circuit Theory II Department of Electrical and Electronic Engineering Eastern Mediterranean.
Outline What is MATLAB MATLAB desktop Variables, Vectors and Matrices Matrix operations Array operations Built-in functions: Scalar, Vector, Matrix Data.
디지털 제어 Sun Moon University 1 of 32 목 차 7. Stability Kyoung-Chul DIGITAL CONTROL.
Lesson 21: Methods of System Analysis
Lesson 22: Determining Control Stability Using Bode Plots
ECE 1304 Introduction to Electrical and Computer Engineering
H(s) 8.b Laplace Transform:
Lesson 15: Bode Plots of Transfer Functions
© Dr. Elmer P. Dadios - DLSU Fellow & Professor
Computer Application in Engineering Design
WORKSHOP 7 PID TUNING.
2nd Homework: Cervical Syndrome
6. Nyquist Diagram, Bode Diagram, Gain Margin, Phase Margin,
Outline Matlab tutorial How to start and exit Matlab Matlab basics.
MATLAB DENC 2533 ECADD LAB 9.
Control System Toolbox (Part-I)
ECEN Automatic Control Systems Introduction and Control Basics
Control System Toolbox
ELEC 202 Circuit Analysis II
1 ECEN Automatic Control Systems Matlab Lecture 1 Introduction and Control Basics Presented by Moayed Daneshyari OKLAHOMA STATE UNIVERSITY.
Hanani binti Abdul Wahab 24 September 2008
Frequency Response Techniques
دکتر حسين بلندي- دکتر سید مجید اسما عیل زاده
Vectors and Matrices In MATLAB a vector can be defined as row vector or as a column vector. A vector of length n can be visualized as matrix of size 1xn.
Control System Toolbox (Part-I)
How to Use MATLAB A Brief Introduction.
Control System Toolbox (Part-III)
Frequency Response Techniques
The Frequency-Response Design Method
Presentation transcript:

ECEN 605 Linear Control Systems Instructor: S.P. Bhattacharyya MATLAB BASICS ECEN 605 Linear Control Systems Instructor: S.P. Bhattacharyya

STARTING MATLAB You can start MATLAB by double-clicking on the MATLAB icon or invoking the application from the Start menu of Windows. The main MATLAB window will then pop-up.

BASIC OPERATION MATLAB is based on matrix and vector algebra; even scalars are treated as 1x1 matrices. e.g. v = [1 3 5 7]; t = 0:.1:10; k = 0:10; M = [1 2 4; 3 6 8];

APPROACH TRY EXPLORING ALL THE COMMANDS INITIALLY TO GET FAMILIARIZED. TAKE UP EXAMPLES AND SOLVE THEM TRY THE ASSIGNMENT QUESTIONS

SPECIAL MATRICES There are a number of special matrices that can be defined: null matrix: M = [ ];  nxm matrix of zeros: M = zeros(n,m);  nxm matrix of ones: M = ones(n,m);  nxn identity matrix: M = eye(n);

GENERAL INFORMATION Matlab is case sensitive so "a" and "A" are two different names. Comment statements are preceded by a "%". On-line help for MATLAB can be reached by typing help for the full menu or typing help followed by a particular function name. The commands who and whos give the names of the variables that have been defined in the workspace. The command length(x) returns the length of a vector x and size(x) returns the dimension of the matrix x.

CREATING FUNCTIONS As example of an M-file that defines a function, create a file in your working directory named yplusx.m that contains the following commands: function z = yplusx(y,x) z = y + x;

USING THE FUNCTIONS The following commands typed from within MATLAB demonstrate how this M-file is used: x = 2; y = 3; z = yplusx(y,x)

PLOTTING plot xlabel ylabel title grid axis stem subplot

EXAMPLE OF A PLOT Z = [0 : pi/50 : 10*pi]; X = exp(-.2.*Z).*cos(Z); Y = exp(-.2.*Z).*sin(Z); plot3(X,Y,Z); grid on; xlabel('x-axis'); ylabel('y-axis'); zlabel('z-axis');

Continuous Time System Analysis Transfer Function Representation Time Simulations Frequency Response Plots Control Design State Space Representation

Transfer Function Representation Tf2zp Zp2tf Cloop Feedback Parallel series

Cont… Transfer functions are defined in MATLAB by storing the coefficients of the numerator and the denominator in vectors. Given a continuous-time transfer function B(s) H(s) = --------- A(s)

Cont… Where B(s) = bMsM+bM-1sM-1+…+b0 and A(s) = aNsN+aN-1sN-1+…+a0 Store the coefficients of B(s) and A(s) in the vectors num = [bM bM-1 … b0] den = [aN aN-1 … a0]

Example 5s+6 H(s) = ---------------- s3+10s2+5 num = [5 6]; den = [1 10 0 5]; all coefficients must be included in the vector, even zero coefficients

Cont… To find the zeros, poles and gain of a transfer function from the vectors num and den which contain the coefficients of the numerator and denominator polynomials: [z,p,k] = tf2zp(num,den)

Example num = [5 6]; den = [1 10 0 5]; [z,p,k] = tf2zp(num,den) p = -10.0495 0.0248+0.7049i 0.0248-0.7049i k = 5

Example Cont… (s-z1)(s-z2)...(s-zn) H(s) = K -------------------------- (s-p1)(s-p2)...(s-pn) 5*(s+1.2) ---------------------------------------------------------- (s+10.0495)(s-{0.0248+0.7049i})(s-{0.0248-0.7049i})

Cont… To find the numerator and denominator polynomials from z, p, and k: [num,den] = zp2tf(z,p,k) To reduce the general feedback system to a single transfer function: T(s) = G(s)/(1+G(s)H(s)) [numT,denT]=feedback(numG,denG,numH,denH);

Cont… For a unity feedback system: [numT,denT] = cloop(numG,denG,-1); To reduce the series system to a single transfer function, T(s) = G(s)H(s) [numT,denT] = series(numG,denG,numH,denH); To reduce the parallel system to a single transfer function, T(s) = G(s) + H(s) [numT,denT] = parallel(numG,denG,numH,denH);

Example [num,den] = zp2tf(z,p,k) num = 0 0 5 6

Time Simulations residue Step Impulse lsim

Cont… [R,P,K] = residue (B,A) finds the residues, poles and direct term of a partial fraction expansion of the ratio of two polynomials B(s)/A(s) The residues are stored in r, the corresponding poles are stored in p, and the gain is stored in k.

Example If the ratio of two polynomials is expressed as b(s) 5s3+3s2-2s+7 ------- = ------------------- a(s) -4s3+8s+3 b = [ 5 3 -2 7] a = [-4 0 8 3]

Example Cont… r = -1.4167 -0.6653 1.3320 p = 1.5737 -1.1644 -0.4093 k = -1.2500 B(s) R(1) R(2) R(n) ------ = -------- + --------- + ... + --------- + K(s) A(s) s - P(1) s - P(2) s - P(n)

Find the response of a system to a particular input First store the numerator and denominator of the transfer function in num and den, respectively. To plot the step response: step(num,den) To plot the impulse response: impulse(num,den)

Cont… For the response to an arbitrary input, use the command lsim (linear simulation) Create a vector t which contains the time values in seconds t = a:b:c; Define the input x as a function of time, for example, a ramp is defined as x = t lsim(num,den,x,t);

Frequency Response Plots Freqs Bode Logspace Log10 Semilogx

Cont… H = freqs(num,den,w) To compute the frequency response H of a transfer function, store the numerator and denominator of the transfer function in the vectors num and den. Define a vector w that contains the frequencies for which H) is to be computed, for example w = a:b:c where a is the lowest frequency, c is the highest frequency and b is the increment in frequency. H = freqs(num,den,w)

Cont… To draw a Bode plot of a transfer function which has been stored in the vectors num and den: bode(num,den)

Cont… To customize the plot, first define the vector w which contains the frequencies at which the Bode plot will be calculated. Since w should be defined on a log scale, the command logspace is used. For example, to make a Bode plot ranging in frequencies from 0.1 to 100, define w by w = logspace(-1,2); The magnitude and phase information for the Bode plot can then be found by: [mag,phase] = bode(num,den,w);

Cont… To plot the magnitude in decibels, convert mag using the following command: magdb = 20*log10(mag); To plot the results on a semilog scale where the y-axis is linear and the x-axis is logarithmic: semilogx(w,magdb) For the log-magnitude plot : semilogx(w,phase)

Control Design Rlocus Consider a feedback loop where G(s)H(s) = KP(s) and K is a gain and P(s) contains the poles and zeros of the controller and of the plant. Suppose that the numerator and denominator coefficients of P(s) are stored in the vectors num and den. rlocus(num,den)

State Space Representation Ss Step Lsim Ss2tf Tf2ss ss2ss