Non-linear control question

Translate This Thread From English to

Threaded View


I've been researching a problem in non-linear control and I've come up
with a problem that seems rather easy but nevertheless have not been
able to tackle it. Any help is appreciated. Here goes:

Let x'=f(x,u) be a non linear system. The controls uEU (where U is a
bounded subset of R^m, i.e. the controls are bounded. "E" denotes the
"belongs to" operator).
 Suppose you have a stabilizing feedback law u(x) such that x->0 (with
f(0,0)=0 being an equilibrium point). Now consider that you change the
bounds of the control space through a transform F(U)=U' such that 0EU'
and the intersection of U and U' is not empty.
And the question is:
Does the control u(x) still stabilizes the system? Or, more strictly
speaking, does the feedback law s(u(x)), where s is a saturation
function that cuts off u(x) when it exceeds the bounds of U',
stabilizes the system?


Re: Non-linear control question





If you have a 'real' example (F1(s), F2(s), etc.) I could try to solve it.
Then you could compare your results with the results I found. My program can
handle nonlinear differential equations.

--
Regards/Grüße    http://home.arcor.de/janch/janch/menue.htm
Jan C. Hoffmann  eMail aktuell: janch@nospam.arcornews.de
                 Microsoft-kompatibel/optimiert für IE7+OE7




Re: Non-linear control question



geomuster@hotmail.com wrote:

If I read your rather terse math correctly, the general answer is
"maybe", as in "sometimes, depending".  In other words, depending on the
plant, the control law, and your changes to the bounds, you may or may
not end up with something stabilizing.

As an example, consider a load that is pivoted on bearings and driven by
a torquer motor.  The response of the system in position will be a
double integral of the torque command.  Now drive this with a PID
controller.  I'll assume that by "unstable" you mean that the phase
space of the system contains limit cycles in response to constant
inputs, not that the system has unbounded responses.

If you just tune the controller as if the plant is linear, with no
nonlinear compensation at all, but you bound the torque to some maximum
absolute value such as you'd see with just about any real system, your
system will have a hard limit cycle in closed loop.  It will be
perfectly stable and well behaved for small excursions, but if you put
it into a state where the controller is demanding more torque than the
torquers will supply then the system will go into oscillation.

You can correct this problem by arranging your controller such that it
limits the velocity command, treating it as a proportional loop wrapped
around a PI loop with velocity feedback (see figure 8.16 on page 215 of
my book for a simplified example).  With a simple 3-segment piecewise
linear velocity command limiting you'll achieve stability, with more
sophisticated velocity command limiting you'll bring the system to a
rest with maximum torques being exerted for all but the very end of the
move.

Note that this controller must have nonlinearities that are sized to the
torque limits.  So take the system, and reduce the torque limits
significantly.  At some point (in practice probably between a 2x and a
10x reduction) you'll find that you can once again observe a hard limit
cycle, so you've lost stability.

On the other hand, increase the torque limits by any factor you want.
Your system will remain stable, although it will not drive the torquers
to their maximum effort.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google?  See http://cfaj.freeshell.org/google/

Do you need to implement control loops in software?
"Applied Control Theory for Embedded Systems" gives you just what it says.
See details at http://www.wescottdesign.com/actfes/actfes.html

Site Timeline