I have a control theory problem much akin to controlling the angle of an electric motor to a reference angle $\gamma_{ref}$. (The "electric motor" exists in software only, and so has very little noise)

a high-level view of my problem

Both the angle $x_1=\gamma$ and the speed $x_2=\dot{\gamma}$ are measureable, but only the angle acceleration $\ddot{\gamma}$ is controllable. The motor experiences a friction force $-b\dot{\gamma}$ and has inertia $1/c$. Because I want to eliminate steady-state errors, I've introduced a dummy variable $x_3$ such that $\dot{x_3}=\gamma_{ref}-\gamma$. My open loop system is:

$ \dot{x}= \begin{bmatrix} 0 & 1 & 0 \\ 0 & -b & 0 \\ -1 & 0 & 0 \end{bmatrix} x + \begin{bmatrix} 0 \\ c \\ 0 \end{bmatrix} u + \begin{bmatrix} 0 \\ 0 \\ 1 \end{bmatrix} \gamma_{ref} $

To put the control in canonical form, I've set:


and so

$ \begin{bmatrix} 0 \\ c \\ 0 \end{bmatrix} u = \begin{bmatrix} 0 & 0 & 0 \\ -cl_1 & -cl_2 & -cl_3 \\ 0 & 0 & 0 \end{bmatrix} x $

which makes my closed loop system

$ \dot{x}= \begin{bmatrix} 0 & 1 & 0 \\ -cl_1 & -b-cl_2 & -cl_3 \\ -1 & 0 & 0 \end{bmatrix} x + \begin{bmatrix} 0 \\ 0 \\ 1 \end{bmatrix} \gamma_{ref} = Ax+R\gamma_{ref} $

To get the characteristic equation, I have to take

$\det{(A-\lambda I)}=0$

which I've worked out to be


PROBLEM. How do I actually choose the poles? Using my test environment in Java, I've concluded that for $b=0.1,c=1.0$ the poles

$ \lambda=-0.63\quad \lambda=-0.085-0.074i\quad \lambda=-0.085+0.074i $

work fairly nicely... but this is a completely arbitrary trial-and-error method. I've seen some textbooks give answers like "choose one pole -42b" or whatever. But this is still not ideal. What general methods are available to me, where I can pick the poles based on some properties I want, like rise time and overshoot, and so on?

I've tried reading about Bode plots but they sidetrack into theoretical stuff.

Thanks a lot!!

  • 2
    $\begingroup$ Choosing the poles will affect the shape of response as well as the control effort. Normally it is ideal to move the poles as far as possible. But this would require great control effort which likely leads to actuator saturation and further problems. So there is always a balance between the desired control effort and the desired response. In your special case where the system has three poles, I would say that one negative real and two conjugate poles are good as far as the effort stays minimum. You might be interested in optimal control schemes as well. $\endgroup$ – polfosol Dec 19 '16 at 13:40
  • $\begingroup$ Thanks for your tip! Why, however, should I choose conjugate poles at all - why not for example a triple pole at -100 or whatever? Or one at -3, one at -10, one at -20 or something. $\endgroup$ – bombax Dec 19 '16 at 21:23
  • $\begingroup$ @bombax Selecting the same pole locations is a bad idea from a practical point of view. This is due to the fact that the result is increased pole sensitivity i.e. small variations in the system parameters will result in larger pole variations. $\endgroup$ – RTJ Dec 21 '16 at 9:47

Choice of poles comes from the knowledge of the domain of application, electric motor engineering in the case. The compromises between time constants, overshoot, settling times, noise amplification, and other factors cannot be resolved by theory alone. Trial and error is reasonable, and techniques such as Bode plots and optimal control may help you find the answer.

But it always must come down to the meaning of the variable and the physics of the process.

  • $\begingroup$ Thanks! Do you recommend a good resource for how I can study Bode plots to select good pole placement? Preferably from an engineering perspective and not a mathematical one. $\endgroup$ – bombax Dec 19 '16 at 23:17
  • $\begingroup$ Not sure... it's really domain-specific. How fast do you need the response to be? How much control actions is feasible? can you accept oscillations? That determines where the poles should be, and whether you can have resonance or not. A few simulations may be worth more than pages of theory. $\endgroup$ – Pait Dec 20 '16 at 12:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.