Page 61 - Anatomy of a Robot
P. 61

02_200256_CH02/Bergren  4/17/03  11:23 AM  Page 46
                             46 CHAPTER TWO
                                   Nonlinear elements We have to realize that our model depends on a linear
                                    behavior of all the components. We expect a smooth performance all the way
                                    around. Between loose pieces (that might move free and then snap tight) and
                                    some “digital” elements (that are on-off), some jerky motion will occur. Try to
                                    minimize the effect of these components; we’ll look at nonlinear design in a
                                    while.
                                   Too much overshoot   Sometimes a system will move the robot too far and be
                                    unable to recover. Such a situation occurred in the introduction where a robot
                                    moved too far in one single motion and its limited “eye” was not given time to
                                    see that it passed the boundary where it was supposed to stop. Such a situation
                                    can occur if there is too much overshoot. One solution is to increase the damp-
                                    ing on the system.
                                   Complex designs   Often, the robot is much more complex than our second-
                                    order system. If it really is a third-order or higher system, take the time to try
                                    to simplify it. Look at the performance and look at the specifications.
                                    Let me give you an example of trouble brewing. Suppose we are trying to
                                    design a baseball robot. It has to run, catch, and throw. It might be able to run
                                    and catch at the same time, but it would be simpler to build a robot that would
                                    run under the ball, stop, and then catch it. Similarly, it would be simpler if the
                                    robot would stop running before it had to throw the ball. Granted, a human
                                    baseball player would never get to the majors playing like that. However, if the
                                    specifications and performance requirements can be relaxed ahead of time and
                                    if we can afford to have a clunky robot player, then our design will be much
                                    simple if you can partition the design. We then just separately design a runner,
                                    a catcher, and a thrower. We do not have to combine the designs and suffer the
                                    interactions that drive up complexity and threaten the stability of our design.
                                    Again, we repeat the old advice: Keep it simple.
                                    You laugh about robots playing baseball? Just keep your eyes on the minor
                                    leagues! See Figure 2-18 from http://home.twcny.rr.com/mgraser/ballpark.htm.
                               So how do we stabilize a system? Several symptoms can occur. They’re easy to
                             observe and correct:
                                 Severe overshoot  Sometimes overshoot can become very large. We can fix it by
                                 increasing the damping constant d (we’ll get to how that’s done soon). Refer to
                                 Figure 2-17. Changing v won’t affect the overshoot much. If changing doesn’t
                                 help, perhaps the robot is not following the model and we should determine why.
                                 Severe ringing (the oscillations are causing problems)  To fix this, we can
                                 increase the damping constant d. This will help decrease the oscillations sooner.
                                 If the oscillations are still objectionable, we must investigate why this is the case.
   56   57   58   59   60   61   62   63   64   65   66