0
$\begingroup$

Let the pendulum equation: $\ddot \theta+\sin{\theta}+b\dot\theta=cu$, that in state space ($x_1=\theta$, $x_2=\dot \theta$) representation will be:
$\begin{cases} \dot x_1=x_2\\ \dot x_2=-\sin{x_1}-bx_2+cu \end{cases}$

$\textbf{The aim is to stabilize the system around $\theta=\frac{\pi}{2}$}$.

My idea so is the following:
in order to go back from the stabilization technique to the stabilization around the origin, I consider the design $u=u_{SS}+u_{\delta}$, with $u_{SS}$ for which the translated system , has the origin for $x_1=\frac{\pi}{2}$, and so at the origin an equilibrium point, so:
$\begin{cases} z_1=x_1-\frac{\pi}{2}\\ z_2=x_2 \end{cases}$$\iff$ $\begin{cases} \dot z_1=z_2\\ \dot z_2=-\sin{z_1+\frac{\pi}{2}}-bz_2+cu_{SS} \end{cases}$
So the $u_{SS}$ that realizes the requirement to have at the origin an equilibrium point is given by $u_{SS}=\frac{\sin{\frac{\pi}{2}}}{c}$.

$\textbf{My problem is:}$ in Khalil NonLinear Control Theory, it is not considered this $u_{SS}$, but only considering the system traslated in the coordinates $z$ it is designed then the control $u$, as it is sufficient to translate the system without considering this $u_{SS}$ to go back from the stabilization around $\theta\neq 0$ to the stabilization around $\theta=0$.

Please can you tell me if my idea is correct or I am doing some mistakes?

$\textbf{EDIT:}$ the parameter $c$ is uncertain...can this information give the explaination for my problem?

$\endgroup$
1
$\begingroup$

Since I do not own this book, it is hard for me to directly assess what Khalil has to say about it. Either way, linearizing a system around any point requires one to define this point as an equilibrium (whether that is stable is not important). This is (as you show) done by offsetting the state and the input accordingly: $$z_1 = x_1 - \theta_0, ~~ z_2 = x_2, ~~ u = u_{SS} + u_\delta$$ $$\dot{z_2} = -\text{sin}(z_1 +\theta_0) - bz_2 + c(u_{SS} + u_\delta)$$ Where $\theta_0$ is the chosen equilibrium point, $u_\delta$ is the parameter you control using $z_1$ as input (which you offset manually). The actual control input is indeed $u_{SS} + u_\delta$ in which $u_{SS}$ is calculated manually using your equation: $$u_{SS} = \frac{\text{sin}(\theta_0)}{c}$$ The fact that $c$ is an uncertain parameter troubles the control goal massively, as you are uncertain about the offset input which ensures the equilibrium (i.e. the actual equilibrium can be somewhere else now). This can however be solved by implementing an integral action in the controller and discarding the input offset (this should be computed iteratively with the integral action). Now what I think answers your question is the following: The input $u_{SS}$ equals zero if the offset angle equals 0. Hence it is not required to mention it.

$\endgroup$
5
  • $\begingroup$ Thanks for your answer! First of all what do you mean by "offset angle"? And then: my idea to use the $u_{SS}=\sin{\frac{\pi}{2}}$, do you think it is not correct? $\endgroup$ – pawel Feb 23 at 15:19
  • $\begingroup$ In essence my idea is to consider at first no perturbation (so $c=1$), so I design the $u_{SS}$ and then I will stabilize with robustness the system designing the $u_{\delta}$, for instance with sliding mode control $\endgroup$ – pawel Feb 23 at 15:28
  • 1
    $\begingroup$ Offset angle = $\theta_0$. Its the angle from which you want to offset the pendulum wrt the natural equilibrium (which is $\theta_0=0$). $u_{SS}$ should be such that if $u_\delta = 0$ and $z_1 = z_2 = 0$ then $\dot{z_2}$ must be $0$ as well. So given your offset angle of $\pi/2$ this should be the correct value. $\endgroup$ – Petrus1904 Feb 23 at 16:16
  • 1
    $\begingroup$ The problem with standard state-feedback control is that once the error equals zero (the state is zero), the resulting input must be zero as well (because $u = - Kx$). However the system dynamics are not zero at this point, which is naturally compensated by $u_{SS}$. Using the incorrect value will therefore lead to mismatches. whatever you do to solve it, keep in mind that the exact value of $u_{SS}$ must be found to prevent tracking offsets. If not, the controller might still stabilize the system, but it is possibly not asymptotically stable. $\endgroup$ – Petrus1904 Feb 23 at 16:20
  • $\begingroup$ Ok thanks to confirm the correctness of my idea...I don't exactly what is the idea in "Khalil-NonLinear Control theory" book! $\endgroup$ – pawel Feb 23 at 16:31

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.