DOC PREVIEW
Rose-Hulman ECE 520 - ECE 520 Lab 4

This preview shows page 1-2-3-4-5 out of 15 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

ECE-520 Lab 4 Discrete-Time PI-D and I-PD Controllers and sisotool Overview In this lab you will be controlling the one degree of freedom systems you previously modeled using PI-D and I-PD controllers. Both one degree of freedom systems must be controlled, and if there are two people in your lab group each lab partner should do a different system. You will need your Matlab model files for your systems and the files DT_PID_driver.m and DT_PID.mdl from your homework or last weeks lab. You will need to copy and then modify Model210_DT_PID.mdl and Model205_DT_PID.mdl from last week’s lab. You will also need the files from the basic files group (ECPDSPReset.c, ECPDSPReset.dll, ECPDSPRest.c, ECPDSPDriver.c, ECPDSPDriver.dll, ECPDSPDriver.h) Design Specifications: For each of your systems, you should try and adjust your parameters until you have achieved the following: Torsional Systems (Model 205) • Settling time less than 1.5 seconds. • Steady state error less than 2 degrees for a 15 degree step, and less than 1 degree for a 10 degree step (the input to the Model 205 must be in radians!) • Percent Overshoot less than 25% Rectilinear Systems (Model 210) • Settling time less than 1.5 seconds. • Steady state error less than 0.1 cm for a 1 cm step, and less than 0.05 cm for a 0.5 cm step • Percent Overshoot less than 25% Your memo should include four graphs for each of the 1 dof systems you used (one PI-D and one I-PD controller using two sample rates for each system.) Your memo should compare the difference between the predicted response (from the model) and the real response (from the real system) for each of the systems. Background: While PID controllers are very versatile, they have a number of drawbacks. One of the major drawbacks is that for a unit step input, the control effort can be very large at the initial time. This is referred to as a set-point kick. There are two commonly used configurations of PID controls schemes that utilize a different structure, the PI-D and the I-PD controllers. These are a bit more difficult to model using Matlab’s sisotool, but it can be done and we get to explore more of sisotool. ()uk The PI-D controller avoids the set-point kick by putting the derivative in the feedback path, while the I-PD controller avoids the set-point kick by placing both the derivative and proportional terms in the feedback path. Both types of controllers can be implemented using the following Simulink model, which you should construct and name appropriately: 1For the PI-D controller, we have 1()()11piipKKzKKzCz Kzzp+−=+ =−−, 12(1)() (1 )ddKzCz K zz−−=−= while for the I-PD controller we have 11()11iiKKzCzzz−==−−, 12()() (1 )pdpdKKzKCz K K zz−d+−=+ − = Note that for both controllers we might want to use a lowpass filter (such as a running averaging filer) in series with a differentiator. For both of these controllers, if we ignore the prefilter (assume it is unity), the transfer function from input to output is 121() ()()() 1 () () () ()pppCzG zYzRzCzGzCzG=++z In the Simulink models we have represented the plant in state variable form. Next we need to use sisotool to help determine reasonable values for()pGzpK , , and . iKdK When you start sisotool, you need to click on Control Architecture to get the proper configuration. Be sure that sisotool uses negative feedback for both loops. 23 Click here to change the control architectureClick on OK and when the previous window appears, select Loop Configuration. In the block Open-loop configuration for: select Open Loop Output of C1 and select Open for Output of Block C2. In the block Open-loop configuration for: select Open Loop Output of C2 and select Open for Output of Block C1. The following figures demonstrate what you are to do. Note that this step is not really necessary, but I find it a bit less confusing. The controllers in each window may not be exactly what you are expecting, but it is easier to visualize this way. 4Next, go back to our design window, and select View, then Design Plots Configuration. Then choose to plot the Root Locus plot for both Open Loop 1and Open Loop 2, as the following window shows: 5You should now have a design window with two (empty) root locus plots and we are ready to start. For practice, let’s assume our plant is 3212.13 11.48()0.7691 0.8668pzGzzzz+=++where we have used a sampling interval of 0.1 seconds. To enter this into Matlab we need to be sure to include the sampling interval so Matlab knows this is a discrete-time system, so type Gp = tf([12.13 11.48],[1 0.7691 0.8668 0], 0.1) When we import the plant, we should get a design window that looks like the following figure. Each window shows the root locus for the plant and two identical proportional controllers. PI-D Controller: Assume we want to use a PI-D controller. In this case, for simulation purposes, we have 12(1)() (1 )ddKzCz K zz−−=−=. We will start off assuming 0.01dK=, but this is just a guess! After entering this into sisotool (and leaving , the default), we get the following root locus plot: 1() 1Cz= 67 Next we’ll enter the PI part of the controller into. As a starting point, let’s assume 10.0152( 1.4)()1zCzz+=− We will get the following root locus plot (after scaling both axes. To do this, right click in each window and select Properties)At this point we can drag the zero around and also drag the red squares around (which change the gain value), as well as the poles and zeros of the controllers (note that we can really only vary the zero, otherwise we will not have a PI-D controller). The step response for this controller configuration is shown below: 8Note that, compared to a normal PID controller, the control effort is not infinite at 0, and actually builds as time goes on (like an integral controller). At this point we might want to go back modify or to see if we get acceptable performance. 1()Cz2()Cz If we assume these controllers are OK, then for our systems we will enter 20.01( 1)()zCzz−=, 10.03648( ) 0.021281zCzz=− +− where we have determined 0.02128 0.03648 0.01pidKKK=− = = At this point we have the choice of either converting to a PI and D controller, or using and directly. The second choice is easer to do from sisotool, but is not as used in practice. To use these transfer functions in Matlab you would type something like the following: 1()Cz2()Cz C2 = 0.01*tf([1


View Full Document
Download ECE 520 Lab 4
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view ECE 520 Lab 4 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view ECE 520 Lab 4 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?