Control Tutorials for MATLAB and Simulink (2024)

Key MATLAB commands used in this tutorial are: tf , rlocus , sgrid , feedback , step

Related Tutorial Links

  • Intro to Root Locus
  • Lead/Lag Control
  • Root Locus Activity
  • Example Animation

Related External Links

Contents

  • Open-loop root locus
  • Lead controller
  • Selecting the gain
  • Plotting the closed-loop response

The open-loop transfer function of the plant for the ball and beam experiment is given below:

(1)Control Tutorials for MATLAB and Simulink (1)

The design criteria for this problem are:

  • Settling time less than 3 seconds
  • Overshoot less than 5%

To see the derivation of the equations for this problem refer to the page.

Control Tutorials for MATLAB and Simulink (2)

Open-loop root locus

The main idea of the root locus design is to estimate the closed-loop response from the open-loop root locus plot. By adding zeroes and/or poles to the original system (adding a compensator), the root locus and thus the closed-loop response will be modified. Let us first view the root locus for the plant in open loop. Create a new m-file with the following MATLAB code in order to model the plant and plot the root locus. Now, run the m-file and you should see the following root locus plot:

m = 0.111;R = 0.015;g = -9.8;L = 1.0;d = 0.03;J = 9.99e-6;s = tf('s');P_ball = -m*g*d/L/(J/R^2+m)/s^2;rlocus(P_ball)

Control Tutorials for MATLAB and Simulink (3)

As you can see the system has two poles at the origin which go off to infinity along the imaginary axes.

The design criteria can also be plotted onto the root locus using the sgrid command. This command generates a grid of constant damping ratio and natural frequency. The damping ratio (Control Tutorials for MATLAB and Simulink (4)) and natural frequency (Control Tutorials for MATLAB and Simulink (5)) were found using the following equations which relate them to our maximum percent overshoot (Control Tutorials for MATLAB and Simulink (6)) and settling time (Control Tutorials for MATLAB and Simulink (7)) requirements:

(2)Control Tutorials for MATLAB and Simulink (8)

(3)Control Tutorials for MATLAB and Simulink (9)

Note, that the equation with Control Tutorials for MATLAB and Simulink (10) is found by assuming the system has settled when the response remains within 2% of its final value. From these equations, the damping ratio and natural frequency were found to be 0.7 and 1.9 respectively.

sgrid(0.70, 1.9)axis([-5 5 -2 2])

Control Tutorials for MATLAB and Simulink (11)

The area between the two dotted diagonal lines represents locations where the percent overshoot is less than 5%. The area outside the curved line represents locations where the settling time is less than 3 seconds. Note that no region of the plot falls within the design criteria shown by these lines. To remedy this and bring the root locus into the left-hand plane for stability we will try adding a lead-compensator to the system.

Lead controller

A first order lead compensator tends to shift the root locus into the left-hand plane. For a more detailed description of lead compensators refer to the page. A lead compensator has the form given below:

(4)Control Tutorials for MATLAB and Simulink (12)

where, the magnitude of Control Tutorials for MATLAB and Simulink (13) is less than the magnitude of Control Tutorials for MATLAB and Simulink (14).

Now, let us add the controller to the plant and view the root locus. We will position the zero near the origin to cancel out one of the poles. The pole of our compensator will be placed to the left of the origin to pull the root locus further into the left-hand plane. Add the following lines of MATLAB code to your m-file. Run your m-file in the MATLAB command window and you should see the following:

zo = 0.01;po = 5;C=tf([1 zo],[1 po]);rlocus(C*P_ball)sgrid(0.70, 1.9)

Control Tutorials for MATLAB and Simulink (15)

Now, the branches of the root locus are within our design criteria.

Selecting the gain

Now that we have moved the root locus into the left-hand plane, we may select a gain that will satisfy our design requirements. We can use the rlocfind command to help us do this. Add the code [k,poles]=rlocfind(C*P_ball) onto the end of your m-file.

Then go to the plot and select a point near those indicated by the cross marks on the plot below.

Control Tutorials for MATLAB and Simulink (16)

After doing this, you should see the following output in the MATLAB command window.

Select a point in the graphics window selected_point = -2.4917 + 1.0109i k = 34.7474 poles = -2.4950 + 1.0109i -2.4950 - 1.0109i -0.0101 

Note that the values returned in your MATLAB command window may not be exactly the same, but should at least have the same order of magnitude. Now, we can plot the response with this gain.

Plotting the closed-loop response

This value of k can be put into the system and the closed-loop response to a step input of 0.25 m can be obtained. Add the following lines to your m-file to perform this analysis. Run your m-file and select a point on the root locus similar to the selected point above. The step response should look like the following.

 sys_cl=feedback(k*C*P_ball,1); t=0:0.01:5; figure step(0.25*sys_cl,t) 

Control Tutorials for MATLAB and Simulink (17)

From this plot we see that when a 0.25-m step input is given to the system both the settling time and percent overshoot design criteria are met.

Note: A design problem does not necessarily have a unique answer. Using this method (or any other) may result in many different compensators. Try running your m-file several more times selecting a different point each time and study the effect this has on the step response. For practice you may also want to go back to the original open-loop root locus and try to find other ways to add zeros and poles to get a better response.


Published with MATLAB® 9.2

Control Tutorials for MATLAB and Simulink (2024)
Top Articles
Https Paperlesspay Talx Com Boydgaming
The Shreveport Journal from Shreveport, Louisiana
Penn Foster 1098 T Form
Andi Eskin
Preggophili
Ups Access Point Lockers
Quillins Weekly Ad
Epidermis Function: How Skin Protects You and How You Can Protect It
Massagefinder Female
What Is Z Drive in Windows 10 and How to Remove It Safely?
Craigslist Parsippany Nj Rooms For Rent
Yuliett Torres Lives
Craigslist Pet Phoenix
OSRS Monkey Madness - RuneScape Guide
❤️ Red Heart Emoji Guide For All Girls and Boys
2024 Fantasy Basketball Rankings, News and Draft Kit
Technische Informatica | Studeren bij hogeschool Saxion | Hogeschool Saxion
Golfpro's BurgGolf Golfbanen - (Beter) leren golfen?
Cinemark University Mall Showtimes
Www Walmart Career Application Com
Union Corners Obgyn
Unleashing The Magic: The 100 Greatest Karaoke Songs Album Songs
Yankee Candle Store Locator
USAA hiring Inside Property Adjuster - Local CAT Team in Tampa, FL | LinkedIn
The Bear Spaghetti | Culinary Cartel
Colossal Animal With Largest Eyes Nyt
Student Choice Odysseyware
Teachers Bulge
Vmgma Patient Portal
Missing 2023 Showtimes Near Cinemark West Springfield 15 And Xd
Preventice Learnworlds
10-Day Weather Forecast for Denver, CO - The Weather Channel | weather.com
Licorice Pizza 123Movies
World of Warships: Aslains Modpack - Alle Mods in einem Paket
Chase Bank Near Me? Find Branches And ATMs Close By
4722 Hours In Days
Samantha Mathis Feet
Aqha Points Chart
Guitar Center League City
Chuckwalla relative / THU 4-4-24 / Gave a red card, informally / Derby participants in July / Game show host John Michael / Mission involving Spirit and Opportunity, in brief / What Scott Joplin might yell after a spill? / Kind of candle at a wedding cere
Duda Nowak Reddit
Tristatehomepage Evansville
Online Finance & Accounting Courses
10Am Pt To London Time
Young & Restless Dirty Laundry
2024 Harley-Davidson Street Bob® 114 in Scott, Louisiana
Shauna's Art Studio Laurel Mississippi
Craigslist Placer County
Puretalkusa.com/Amac
Asstok Apk Download For Android
Walking the Grænagil-Laugavegur loop - I Am a Polar Bear
Juicy Deal D-Art
Latest Posts
Article information

Author: Sen. Ignacio Ratke

Last Updated:

Views: 5297

Rating: 4.6 / 5 (76 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Sen. Ignacio Ratke

Birthday: 1999-05-27

Address: Apt. 171 8116 Bailey Via, Roberthaven, GA 58289

Phone: +2585395768220

Job: Lead Liaison

Hobby: Lockpicking, LARPing, Lego building, Lapidary, Macrame, Book restoration, Bodybuilding

Introduction: My name is Sen. Ignacio Ratke, I am a adventurous, zealous, outstanding, agreeable, precious, excited, gifted person who loves writing and wants to share my knowledge and understanding with you.