% -*-latex-*- Put EMACS into LaTeX-mode
% Verbal description for system TwoLinkGMV (TwoLinkGMV_desc.tex)
% Generated by MTT on Wed Apr 15 18:15:23 BST 1998.
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %% Version control history
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %% $Id$
% %% $Log$
% %% Revision 1.1 1998/04/15 18:41:58 peterg
% %% Initial revision
% %%
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
The acausal bond graph of system \textbf{TwoLinkGMV} is
displayed in Figure \Ref{TwoLinkGMV_abg} and its label
file is listed in Section \Ref{sec:TwoLinkGMV_lbl}.
The subsystems are listed in Section \Ref{sec:TwoLinkGMV_sub}.
This composite system provides an illustration of nonlinear
generalised minimum variance (GMV) control (continuous-time) operating on a
twolink manipulator. GMV can also be interpreted as:
\begin{itemize}
\item the exact linearisation (by feedback) followed by a
pole-placement design on the resulting linear system and
\item a special case of generalised predictive control (GPC) were the
prediction horizon is zero and the $P(s)$ polynomial is the same as
the system relative degree and
\item One possible instance of physical-model-based control.
\end{itemize}
The composite system of Figure \Ref{TwoLinkGMV_abg} has three
(visible) parts:
\begin{enumerate}
\item a linear decoupled \emph{specification} system that describes the desired
closed-loop system in terms of a physical system (two decoupled
mass-spring-damper systems),
\item the system itself (a two-link manipulator) representing the
system to be controlled, more details are given in Sections
\Ref{sec:TwoLinkP_ode.tex} and \Ref{sec:TwoLinkP_rfe.tex}.
\item a model of the system with additional state inputs to be used as
a state observer.
\end{enumerate}
The invisible parts are implemented in the text file
``TwoLinkGMV\_input.txt'' (see Section \Ref{sec:TwoLinkGMV_input.txt}).
These parts are:
\begin{itemize}
\item the reference signal (joint angles)
\begin{equation}
w(t) =
\begin{cases}
\begin{pmatrix}
\pi \\
0
\end{pmatrix} & 0 \ge t > 10 \\
\begin{pmatrix}
2\pi \\
0
\end{pmatrix} & 10 \ge t > 15 \\
\begin{pmatrix}
2\pi \\
\pi
\end{pmatrix} & 15 \ge t > 30 \\
\end{cases}
\end{equation}
\item The control signal (joint torques) being the solution of
\begin{equation}
\phi^*(t) = O_o(\hat x(t)) + O_h(\hat x(t)) u(t) = w(t)
\end{equation}
where $\hat x$ is the observed state.
\item The observer feedback signal
\begin{equation}
u_x = K ( y - \hat y)
\end{equation}
where $K$ is the observer gain matrix and $y$ and $\hat y$ are the
system and model outputs respectively.
\end{itemize}
The observer gain is set up on the basis of the \emph{linearised}
system using LQ theory. This is implemented in the text file
``TwoLinkGMV\_state.txt'' (see Section \Ref{sec:TwoLinkGMV_state.txt})
using the Octave function ``lqe'' together with the MTT-generated
linearised system ``TwoLink\_sm''.
The system was simulated using Octave under MTT with the results given
in Figures
\Ref{fig:TwoLinkGMV_odeso.ps-TwoLinkGMV-Theta-1,TwoLinkGMV-Theta-1-r}
and
\Ref{fig:TwoLinkGMV_odeso.ps-TwoLinkGMV-Theta-2,TwoLinkGMV-Theta-2-r}
giving the actual and specification angles for joints 1 and 2
respectively.
The initial \emph{system} state was zero except that the angle of the
first rod was $\frac{\pi}{4}$. The initial \emph{observer} state was
(erroneously but deliberately) set at zero. This explains the
(decaying) discrepancy between the actual and specification angles.
Simulations with zero initial state gave precise matching.