Homework 8, due Wednesday April 11.

Due Wednesday, April 11, 2007.
Post Reply
goodwine
Site Admin
Posts: 1596
Joined: Tue Aug 24, 2004 4:54 pm
Location: 376 Fitzpatrick
Contact:

Homework 8, due Wednesday April 11.

Post by goodwine »

Warning. This page has some big images. If you print it without comparing it with the page on the computer, you may be missing some parts of the figures. Perhaps you will need to sketch the figures near the end.
  1. Consider the robot arm illustrated in the following figure (the same as we did in class).
    • Image
    Write a computer program using 4th order R-K to determine an approximate solution to this system when controlled by PID control (the equations were given in class). This program should determine a solution to the original, nonlinear equations. The point of the next problem is to show that the conclusions we make for the linearized equations hold for the nonlinear equations, at least for values of the angle where the approximation is valid.
  2. Using this program, verify the following "rules of thumb" for PID control using the definitions of ise time, peak time, overshoot, settling time and steady state error from the following figure. Be sure to submit your program and graphs to support your demonstration that the rules are correct.
    • Image
    1. For proportional control, i.e., kp > 0, kd = 0 and kI=0, the solutions are oscillatory, and increasing kp increases the frequency of oscillation (which decreases the rise time and peak time) but decreases the mean steady state error. The settling time is infinite. Hint pick a starting value of kp=5.
    2. If derivative control is added to the proportional controller, i.e., kp > 0, kd > 0 and kI=0, then
      • for small kd the solutions are decaying oscillations;
      • increasing kd decreases the settling time;
      • increasing kd sufficiently eliminates the oscillatory behavior completely, resulting in an solution which exponentially decays to the final, steady state value;
      • increasing kp decreases the final steady state error;
      • increasing kp decreases the rise time.
      Hint pick a starting value of about kd=0.5.
    3. Adding integral control (PID control)
      • eliminates the steady state error, even for small values of kp,
      • increasing kI generally increases the overshoot and settling time;
      • increasing kp decreases rise time, but may increase overshoot;
      • increasing kd increases damping and stability.
      Hint: pick a starting value of about kI=0.5.
  3. Determine the region in the complex plane where the poles for a second order system should be located so that
    1. the maximum overshoot is less than 5%
    2. the 1% settling time is less than 4 seconds
    3. both of the above.
  4. At this point we have a good grip on second order systems. Unfortunately, the world isn't entirely composed of second order systems. In order to apply what we know to second order systems, it will be useful to determine the approximate effect of poles and zeros in addition to a complex conjugate pair for a second order system. Most, but not all of this problem will be done using matlab.
    1. Effect of additional poles far to the left. Consider
      • Image
      Plot the step response using Matlab. Plot the step response of a system with G(s) having another pole far to the left, say at s=-10. Are the responses comparable?
    2. Add a zero to G(s) far to the left. What is the effect on the step response?
    3. Add a zero to G(s) in the left half plane relatively close to the imaginary axis. What is the effect on the step response?
    4. Add a zero to G(s) in the right half plane relatively close to the imaginary axis. What is the effect on the step response?
    5. Add a pole to G(s) in the left half plane relatively close to the imaginary axis. What is the effect on the step response?
    6. Without computing or plotting anything, what will be the effect of adding a pole to G(s) near the imaginary axis near the imaginary axis in the right half plane?
    7. Add a zero to G(s) at s=-1 and a pole to G(s) at s=-0.95. What is the effect on the step response? What can you say in general about a pole and zero that are close together?
  5. Extra credit. Do the partial fraction expansion for the step response of the second order system, G(s) in the previous problem. Also do the partial fraction expansion for the second order system with an added zero (hint: put 1/r*(s+r) in the numerator). Based on these, prove your conclusions from the previous problem by considering the cases when r is positive and large, positive and small and negative and small.
  6. Match the plots of the location of the poles and zeros of a transfer function with the plots of the unit step response. In each case, justify your answer.
    • Image
    • Image
Last edited by goodwine on Wed Apr 04, 2007 2:15 pm, edited 5 times in total.
Bill Goodwine, 376 Fitzpatrick
mattstorey

Post by mattstorey »

for problem 1 are we supposed to use real values for kd, ki, and kp or leave them as variables, and in reference to the same problem is the mgl term suppossed to go away when we use a derivative of both sides to reduce the integral component of error?
mattstorey

Post by mattstorey »

for number 3, are the x's poles and the o's zeroes?
goodwine
Site Admin
Posts: 1596
Joined: Tue Aug 24, 2004 4:54 pm
Location: 376 Fitzpatrick
Contact:

Post by goodwine »

mattstorey wrote:for problem 1 are we supposed to use real values for kd, ki, and kp or leave them as variables, and in reference to the same problem is the mgl term suppossed to go away when we use a derivative of both sides to reduce the integral component of error?
You must use numerical values unless you know how to either solve a nonlinear second order equation or to write a computer program that can handle leaving them unspecified. I want you to just pick a value and then change it in the manner specified and confirm that the expected result happens.

The mgl term will go away if its derivative is zero. If it's not zero, it won't go away. What happens specifically to that term depends on whether or not you are using the linear or nonlinear equation. In the latter case mgl may be multiplied by something that does not go away.
Bill Goodwine, 376 Fitzpatrick
goodwine
Site Admin
Posts: 1596
Joined: Tue Aug 24, 2004 4:54 pm
Location: 376 Fitzpatrick
Contact:

Post by goodwine »

mattstorey wrote:for number 3, are the x's poles and the o's zeroes?
Yes. This problem will be much easier after Monday's class. At this point you don't know how to deal with the zeros.

I'm sorry. I should have announced that to the class.
Bill Goodwine, 376 Fitzpatrick
alam2

question 3

Post by alam2 »

question 3 is independent from question 1 and 2 right?
goodwine
Site Admin
Posts: 1596
Joined: Tue Aug 24, 2004 4:54 pm
Location: 376 Fitzpatrick
Contact:

Re: question 3

Post by goodwine »

alam2 wrote:question 3 is independent from question 1 and 2 right?
Yes.
Bill Goodwine, 376 Fitzpatrick
slane2

Post by slane2 »

I was working on question 4 and found that my MATLAB does not have the step.m function. Is there anywhere we can get the code for this function? I looked online but could not find the right function.
wmcleod

ch8 notes typo?

Post by wmcleod »

on pdf page 250, notes page 230:
the right hand side of the equation at the top ends in ...-(k_d)(x_2) - (k_p)(x_2)

should this be (k_p)(x_1) ?

it states 9 pages earlier that torque is directly proportional to the theta position value.
goodwine
Site Admin
Posts: 1596
Joined: Tue Aug 24, 2004 4:54 pm
Location: 376 Fitzpatrick
Contact:

Re: ch8 notes typo?

Post by goodwine »

wmcleod wrote:on pdf page 250, notes page 230:
the right hand side of the equation at the top ends in ...-(k_d)(x_2) - (k_p)(x_2)

should this be (k_p)(x_1) ?

it states 9 pages earlier that torque is directly proportional to the theta position value.
Yes, you are right. Thanks for pointing that out.
Bill Goodwine, 376 Fitzpatrick
goodwine
Site Admin
Posts: 1596
Joined: Tue Aug 24, 2004 4:54 pm
Location: 376 Fitzpatrick
Contact:

Post by goodwine »

slane2 wrote:I was working on question 4 and found that my MATLAB does not have the step.m function. Is there anywhere we can get the code for this function? I looked online but could not find the right function.
I think the step() function is part of the controls system toolbox. It is on the afs version of matlab installed on the cluster machines for sure. If it's not on your own computer, that indicates to me that the controls toolbox doesn't come with the student version of matlab and is something you would have to purchase separately.
Bill Goodwine, 376 Fitzpatrick
Euler

Post by Euler »

That was a fun assignment.

When adding a pole or zero, why do we have to divide by the position at which we place it to fix the amplitude? I didn't really understand that in class.

I had a problem with the PFE on the extra credit, but I'll look at the solutions.
Post Reply

Return to “AME 30315, Homework 8”