quiz 4 solutions

4
SOLUTIONS: QUIZ 4 CONTROL OF MOBILE ROBOTS 1 Which of the following statements is correct? SOLUTION Let’s go through the statements one by one: When designing observer-based controllers, the observer must be slower than the controller. The state- feedback controller will only become effective once the estimate of the state is reasonably good, i.e., it makes sense to make the observer faster than the controller. As such, the statement is false. The separation principle tells us that the control design and the observer design cannot be done indepen- dently of each other. Actually, it tells us the complete opposite – that control and observer design can be decoupled. The statement is false. The eigenvalues to a general system ˙ x = Ax + Bu can always be placed anywhere using state-feedback. This one is also false. Arbitrary eigenvalue-placement is only possible when the system is completely controllable. If a linear system is completely controllable the state can be made to follow any trajectory. If it is completely controllable then the system can move between any two states. But, it can not move (in general) along any trajectory. So this one is also false. If linear system is completely controllable the state can be made to go between any two initial and final values. As stated above, this statement is true, and hence this is the correct answer. 2 Suppose you have a robot whose dynamics are ˙ x = 0 1 0 0 x + 0 1 u, and you go to the sensor store to buy a sensor. Each sensor comes with a corresponding output matrix C, such that y = Cx. Which of the following sensors/C-matrices should you not buy? (Hint: Observability seems to be a useful property in a sensor...) 1

Upload: jcvoscrib

Post on 03-Sep-2015

512 views

Category:

Documents


28 download

DESCRIPTION

lk

TRANSCRIPT

  • SOLUTIONS: QUIZ 4CONTROL OF MOBILE ROBOTS

    1

    Which of the following statements is correct?

    SOLUTION

    Lets go through the statements one by one:

    When designing observer-based controllers, the observer must be slower than the controller. The state-feedback controller will only become effective once the estimate of the state is reasonably good, i.e., itmakes sense to make the observer faster than the controller. As such, the statement is false.

    The separation principle tells us that the control design and the observer design cannot be done indepen-

    dently of each other. Actually, it tells us the complete opposite that control and observer design canbe decoupled. The statement is false.

    The eigenvalues to a general system x = Ax + Bu can always be placed anywhere using state-feedback.This one is also false. Arbitrary eigenvalue-placement is only possible when the system is completelycontrollable.

    If a linear system is completely controllable the state can be made to follow any trajectory. If it iscompletely controllable then the system can move between any two states. But, it can not move (ingeneral) along any trajectory. So this one is also false.

    If linear system is completely controllable the state can be made to go between any two initial and final

    values. As stated above, this statement is true, and hence this is the correct answer.

    2

    Suppose you have a robot whose dynamics are

    x =

    [0 10 0

    ]x+

    [01

    ]u,

    and you go to the sensor store to buy a sensor. Each sensor comes with a corresponding output matrix C,such that y = Cx. Which of the following sensors/C-matrices should you not buy? (Hint: Observabilityseems to be a useful property in a sensor...)

    1

  • SOLUTION

    What we need to do is ensure that the sensor is good enough, i.e., that it allows us to reconstruct thestate. Mathematically speaking, this means that we need to check if the resulting system is completelyobservable. The observability matrix is

    =

    [C

    CA

    ]

    and this second order system is completely observable if and only if rank() = 2.

    Lets go through the choices one by one:

    C =[1 0

    ] =

    [1 00 1

    ],

    which has rank 2 (both columns are linearly independent), i.e., this sensor is good.

    C =[1 1

    ] =

    [1 10 1

    ],

    which has rank 2, i.e., this sensor is also good.

    C =[0 1

    ] =

    [0 10 0

    ],

    which has rank 1 since the first column can be obtained by multiplying the second column by zero. As aconsequence, this sensor is no good, and this C-matrix is the correct answer.

    C =[1 0

    ] =

    [1 00 1

    ],

    which has rank 2, i.e., this sensor is good.

    C =[1 1

    ] =

    [1 10 1

    ],

    which has rank 2, i.e., this sensor is good as well.

    3

    Consider the scalar systemx = 2x+ u.

    We decide to try three different state feedback controllers u = kix, i = 1, 2, 3, where

    k1 = 1, k2 = 3, k3 = 5.

    The different closed-loop system behaviors are shown in the figure below. Your job is to identify whichfeedback controller was used to produce which plot. (The upper trajectory is referred to as solid, themiddle one as dotted, and the lower one as dashed.)

    2

  • 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

    0.5

    1

    1.5

    2

    2.5

    3

    t

    x(t)

    SOLUTION

    k1 = 1 gives the closed-loop system x = 2x x = x. Since this is a scalar system, the eigenvalue of theA-matrix (which is now just a scalar) is the same as the value itself, i.e., the eigenvalue is 1. But, thismeans that the system is unstable and, as such, the solid line corresponds to k1.

    k2 = 3 x = 2x3x = x, which is stable with eigenvalue1. Similarly, k3 = 5 x = 2x5x = 3x,which is stable with eigenvalue 3. As such, k3 gives a faster response than k2 (since the eigenvalue isfurther away from the imaginary axis) and, as such, the dotted line corresponds to k2 and the dashedone to k3.

    4

    An attempt at a software implementation of an observer-based feedback controller is given below (insome sort of pseudo-code):

    % Given: dt (sample time), A,B,C (system matrics), K,L (gains)

    % At each iteration, compute the following:

    y=read_in_output_vaule;

    u=-K*x_tilde;

    x_tilde=update_estimator_value(x_tilde,u,y);

    send_control_value(u);

    Which of the following versions of update estimator value(x tilde,u,y) is correct?

    SOLUTION

    We know that the observer dynamics are given by

    x = Ax+Bu+ L(y Cx),

    3

  • so the update program must reflect this fact. Moreover, we need to implement this in discrete time sothe standard Euler approximation of this equation becomes

    xk+1 = xk + t(Axk +Buk + L(yk Cxk)),

    where t is the sample time. As such, the correct answer is:

    return x_tilde+dt*(A*x_tilde+B*u+L*(y-C*x_tilde));

    5

    We have seen that when using pole-placement, the larger (in magnitude) the closed-loop eigenvalues are,the faster the response. So why not place all eigenvalues in 10, 000, 000, 000 and be done with it? Well,there are problems with making the eigenvalues too large in magnitude.

    Assume that we are designing a state-feedback, go-to-goal behavior for a mobile robot by stabilizingthe system around the goal point using pole-placement. Which of the following is a valid concern whenmaking the eigenvalues too large?

    The actuators may saturate making the stability analysis invalid.

    Fast and aggressive maneuvers lead to significant odometric drift.

    Modeling errors get amplified by large control gains, which may deteriorate the performance.

    Fast and aggressive maneuvers increase the risk of not being able to detect obstacles in the environment

    quickly enough.

    They all are valid concerns.

    SOLUTION

    Making the eigenvalues too large means that the system will move very quickly and use very largeactuation signals (since the control gains will be really large). This would certainly saturate the actuators.Also, when moving and turning quickly, the robot will slip and skid and, as such, the odometric drift willbe quite bad. As a consequence of moving too quickly, the robot may also not be able to respond in timeto obstacles. And, finally, large gains means more amplified responses. And, since modeling errors canbe thought of as disturbances, the response to these disturbances will also be amplified.

    Answer: they are all valid concerns.

    4