% -*-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.
