User Tools

Site Tools


Upload failed. Maybe wrong permissions?
adrl:education:completed_projects:okle2016

<latex>{\fontsize{16pt}\selectfont \textbf{Certification of Controller}} </latex>
<latex>{\fontsize{16pt}\selectfont \textbf{for Wearable Robots}} </latex>
An application of the $\nu$-gap metric and the generalized stability margin

<latex>{\fontsize{12pt}\selectfont \textbf{Jan Okle}} </latex>
<latex>{\fontsize{10pt}\selectfont \textit{Master Project RSC}} </latex>

<latex> {\fontsize{12pt}\selectfont \textbf{Abstract} </latex>

A crucial goal of control is the stability of a closed-loop system. This is important to even a greater extent for wearable robots, where the guarantee of stability under all conditions that can occur is a must. It is not enough though to guarantee stability for nominal parameters in simulation. The system must also be stable on the hardware under load changes and varying parameters. Robustness is not only a topic for wearable robots but also appears in other applications. In legged robots for example, stability has to be ensured for large varying masses experienced by the controller. All in all, the guarantee of stability is a widespread problem in robotics.

A method to quantify stability of a closed-loop system and differences in stability for plants is given by the $\nu$-gap metric and the generalized stability margin. Based on them, this project establishes a framework for studying the closed-loop stability of perturbed systems and for designing controllers that achieve a stable closed-loop system even for varied plants. As part of the latter, it proposes an iterative certification procedure to design such controllers. The method separates the controller design from the robustness question and is demonstrated in a simulation example.

<latex> {\fontsize{12pt}\selectfont \textbf{$\nu$-gap metric and generalized stability margin} </latex>
The process of ensuring stability on the hardware, i.e. even for varied plants, is called certification. The certification procedure of this project is based on the $\nu$-gap metric and the generalized stability margin 1). The $\nu$-gap metric can be viewed as a distance measure. It maps the plant variations into one single distance number that describes how different two linear systems $\hat{P}$ and $P$ are in terms of closed-loop stability. In a frequency-wise case, the $\nu$-gap can be computed as \begin{equation*} \kappa(\hat{P},P)(j\omega)&=\begin{cases}\bar{\sigma}\left2), the underlying control structure $(y_1,y_2)^\top=T(P,C)(u_1,u_2)^\top$ is composed of a controller and plant with negative feedback as shown before. The generalized sensitivity function is given by \begin{equation*} T(P,C)=\begin{pmatrix}

P\\I

\end{pmatrix}(I+CP)^{-1}\begin{pmatrix} C&I \end{pmatrix}, \label{eq:generalizedSenesitivityFunction} \end{equation*} and the frequency-wise generalized stability margin is defined as \begin{equation*} \rho(P,C)=\begin{cases} \frac{1}{\bar{\sigma}(T(j\omega))}&\text{if }T(P,C)\text{ stable}
0&\text{otherwise} \end{cases} \end{equation*} Thus, a closed-loop system is $\emph{stable}$ iff $\rho(P,C)(j\omega)>0\quad\forall \omega$

Stability margin guarantee: The theory becomes interesting for certification, when the $\nu$-gap and the generalized stability margin are combined: \begin{equation*} \rho(P,C)(j\omega)\geq \rho(\hat{P},C)(j\omega)-\kappa(\hat{P},P)(j\omega)=:LB(\hat{P},P,C)(j\omega)\qquad \forall\omega\label{eq:marginGuaranteeFreq}, \end{equation*} Less formally, the inequalities mean that the stability of the varied system is greater than the nominal stability minus the differences in plants.

Stability guarantee: Recalling that $\rho(P,C)$ means that a system is stable, we can find the following condition to ensure stability for the varied system: \begin{equation*} LB(\hat{P},P,C)(j\omega) > 0 \ \forall \omega\implies\rho(P,C)>0\ \forall \omega \iff T(P,C) \text{ stable} \label{eq:stabilityGuaranteeLB} \end{equation*}

Scalings such as measurement units greatly affect the size of the $\nu$-gap and the generalized stability margin. By a smart choice the conservatism of the margin guarantee can be reduced 3). The certification procedure will include a step to scale plants and controllers appropriately: \begin{equation*} \tilde{P}=W_O P W_I\label{eq:plantScaling}
\tilde{C}=W_I^{-1}CW_O^{-1}\label{eq:controllerScaling} \end{equation*} where $W_I$ is the input weight and $W_O$ the output scaling of plant $P$.

<latex> {\fontsize{12pt}\selectfont \textbf{Controller Design Algorithm} </latex>
Using these stability concepts, an iterative certification procedure is proposed that separates the controller design from the consideration of the variation of plants. Firstly, a controller is designed based on the nominal plant alone. Secondly, the stability is checked for a given set of varied plants and the stability guarantee is improved for the designed controller of the first step. These two iteration steps are performed repeatedly until a certified controller is obtained.

Initialization

  1. Define the observed parameters $\theta$ incl. parameter limits as well as the linearization points. Observed parameters are parameters that are provided to the controller. Thus, a controller can take different actions depending on their values.
  2. Identify frequency responses of the system for all parameter values and operating points defined in the previous step. This can either be done in simulation or using system identification experiments. When doing it in simulation, one has to make sure that all variations on the hardware are covered by the simulation. It results in a discrete set of plants (frequency responses) $\mathcal{P}=\{P_i|i\in\mathcal{N}=\{1,\dots,N\}\}$, where $N$ is number of plants.
  3. Distinguish the unobserved parameters $\xi$ from the observed parameters $\theta$ by defining the sets $\mathcal{Q}_i=\{q_i|P_{q_i}=P(\theta_i,\xi_{q_i})\}\ \forall i\in\tilde{\mathcal{N}}$ as the sets of plants with the same observed parameter values $\theta_i$, where $\tilde{\mathcal{N}}=\{1,\dots,\tilde{N}\}$ is the set of $\tilde{N}$ different observed parameter values.
  4. Choose $K$ initial nominal plants and design controllers $C_k$ for each.
  5. Assign each plant of the discrete plant set $\mathcal{P}$ to a nominal plant. Thus, $K$ group of plants are found that are assigned to the same nominal plant.

Iteration

  1. Compute the input weights $W_{I}^{ij}$ and output weights $W_{O}^{ij}$ for every possible combination of plant $j$ to nominal plant $i$. Choose the scalings such that it improves the lower bound in the stability margin guarantee, for example by performing the simultaneous scaling of J.Park's thesis 4).
  2. Compute the scaled plants and controllers $\forall i,j\in\mathcal{N}$: \begin{eqnarray*}

&[P]_{ij1}&=\tilde{P}_i^{ij}=W_O^{ij}P_i W_I^{ij}

  &[P]_{ij2}&=\tilde{P}_j^{ij}=W_O^{ij}P_j W_I^{ij}\\
  &[C]_{\textsc{k}(i)j}&=\tilde{C}_{\textsc{k}(i)}^{ij}=(W_I^{ij})^{-1} C_{\textsc{k}(i)} (W_O^{ij})^{-1}
  \end{eqnarray*}
- Compute the generalized stability margins matrix $B$: \begin{equation*}
%[B]_{ij}&=b_{\tilde{P}_i^{ij}\tilde{C}_{\textsc{k}(i)}^{ij}}=b_{[P]_{ij1},[C]_{kj}}&\forall i,j\in\mathcal{N}\textcolor{red}{changed!}\\
  [B]_{ij}(\omega)&=\rho(\tilde{P}_i^{ij},\tilde{C}_{\textsc{k}(i)}^{ij})(\omega)=\rho([P]_{ij1},[C]_{kj})(\omega)\quad\forall i,j\in\mathcal{N}
 \end{equation*}	
- If $\min_\omega[B]_{ii}\geq\alpha\ \forall i$, STOP. One can guarantee robust stability of level $\alpha$, where $\alpha$ is a the minimal generalized stability margin that yields a satisfactory result (choice).
- Compute the $\nu$-gap matrix $[D_\nu]$, where entry $(i,j)$ denotes the $\nu$-gap from the nominal plant $i$ to the plant $j$: \begin{equation*}

% [D_\nu]_{ij}&=\delta_\nu(\tilde{P}_i^{ij},\tilde{P}_j^{ij})=\delta_\nu([P]_{ij1},[P]_{ij2})& \forall i,j \in\mathcal{N}\textcolor{red}{changed}

[D_\nu]_{ij}(\omega)&=\kappa(\tilde{P}_i^{ij},\tilde{P}_j^{ij})(\omega)=\kappa([P]_{ij1},[P]_{ij2})(\omega)\quad \forall i,j \in\mathcal{N}
\label{eq:nuGapMatrixWeighted}
\end{equation*}
- Find the nominal plants, for which stability can be ensured best, i.e. for which the lower bound $LB$ in the stability margin guarantee is the highest. This is done by solving an optimization problem, see section below.
- Compute the lower bound matrix $[LB]$ given the computed nominal models \begin{equation*}
[LB]_{ij}(\omega)=[B]_{ij}(\omega)-[D_\nu]_{ij}(\omega)
\end{equation*}
- Do one of the following:
  * Redesign controllers $C_k$ based on new nominal plants. By redesigning the controllers the nominal generalized stability margin in the stability margin guarantee can be improved. Go back to iteration step 1
  * Change $K$ and go back to iteration step 5. By increasing the number of groups $K$, the conservatism can be reduced, but it also increases the cost of the controller design step, since more controllers have to be tuned. 

Optimization problem: Iteration step 5 involves an optimization problem with the objective to find the best plants and best sets for given $D_\nu$, $B$, $C_k$, and a selected $K$, i.e. the ones with the highest minimal lower bound. For discrete sets $\mathcal{P}$, a MILP (mixed-integer linear programming) problem can be formulated:
<latex> \begin{align*} &\max_{d,\tilde{x}_{ij},\forall i\in\mathcal{N},\forall j\in\mathcal{\tilde{N}}} &&d
&&&d\leq \min_\omega( [\tilde{LB}]_{ij} ) \tilde{x}_{ij} + (1-\tilde{x}_{ij})&\forall i\in\mathcal{N},j\in\mathcal{\tilde{N}}
&&&\sum_{q\in\mathcal{Q}_j, j\in\mathcal{\tilde{N}}}\tilde{x}_{qj}=K
&&&\tilde{x}_{qj}\leq \tilde{x}_{qi} &\forall q\in\mathcal{Q}_i,\forall i\in\mathcal{\tilde{N}},\forall j\in\mathcal{\tilde{N}}
&&&\sum_{i\in\mathcal{N}} \tilde{x}_{ij}=1&\forall j\in\mathcal{\tilde{N}}
&&&\tilde{x}_{ij}\in\{0,1\}&\forall i\in\mathcal{N},\forall j\in\mathcal{\tilde{N}} \end{align*} </latex>
where $[\tilde{LB}]_{ij}=\min_{q\in\mathcal{Q}_j}[LB]_{iq}$, $d$ is the minimal lower bound and $\tilde{x}_{ij}$ denotes if the plants in set $\mathcal{Q}_j$ are connected to nominal plant $i$.

<latex> {\fontsize{12pt}\selectfont \textbf{Example}} </latex>
The controller design algorithm is applied to a set-up consisting of an hydraulic actuator connected to a load 5) that can move in one dimension. The valve commands are provided as input and the load forces are recorded as output.
 1D hydraulic setup Initialization: The load mass is varied from 1.7 kg to 31 kg and the hydraulic transmission stiffness by $\pm$50% of the nominal value. The hydraulic transmission stiffness is an intrinsic parameter of the hydraulic actuator and accounts for the stiffness of the oil. Together, the load mass and the hydraulic transmission stiffness lead to a grid of observed parameter values, see fig. below. Additionally, the hydraulic viscous friction is perturbed as an unobserved parameter (Step 1-3). Intuitively, one might just select the plant in the middle of the parameter range as a nominal plant. For this nominal plant, a PID controller is designed that stabilizes the nominal closed loop system. The loop gain is shown in a bode plot (Step 4-5).

 Parameter range at initialization  Loop gain at initialization

Iteration 1: The first iteration reveals that the controller is not stable though for all plants in the parameter range. There are some plants for which $[B]_{ii}=0$ (Step 1-4). When plotting the worst-case $\nu$-gap from the nominal plant to all other plant and the nominal generalized stability margin, one can see that the stability margin is below the $\nu$-gap for some frequencies. Thus stability cannot be ensured (Step 5). To improve the lower bound, the optimization problem is solved and a new nominal plant is found. The lower bound is still negative but improved from -0.655 to -0.0709 (Step 6-7).

For the new nominal plant, a controller is designed that improves the nominal generalized stability margin at the frequencies, where it is most critical. Since the lower bound is still negative, we furthermore increase the number of plant groups to $K=3$ to decrease the conservatism.( Step 8)

Iteration 2: With the new controller, a positive generalized stability margin for all plants is obtained (Step 1-4), i.e. the closed-loop system is stable for all plants. The optimization finds three sets: one for the very low masses, one for the high masses and high transmission stiffness values and one for the rest (Step 5). For each of the sets, the generalized stability margin is greater than the worst-case $\nu$-gap to all other plants within the set for all frequencies (Step 6-7). Thus, stability can be ensured with the given controller for the predefined parameter range.

Simulation: To visualize the behavior of the controllers after both iterations, the response to a step reference on the nonlinear plant is simulated for each of the possible parameter values. For the initial controller, only the response for some plants are plotted for better visibility whereas all responses are assembled in one plot for controller after both iterations.

Initial controller Iteration 2

<latex> {\fontsize{12pt}\selectfont \textbf{Conclusion}} </latex>
All in all, the project showed that the methodology of the $\nu$-gap metric and the generalized stability margin can be used to derive a certification procedure for a controller that acts on plants that are varied from the nominal state. In an example, it was demonstrated that a new controller can be found that stabilizes the system despite plant variations given a predefined variation range. If the variations that can occur on the hardware are contained within this simulated set of varied plants, stability can also be ensured on the hardware.

1)
Glenn Vinnicombe. Frequency domain uncertainty and the graph topology. IEEE Transactions on Automatic Control, 38(9):1371{1383, 1993
2)
I+P P^*)^{-\frac{1}{2}}(P-\hat{P})(I+\hat{P}^*\hat{P})^{-\frac{1}{2}}\right)(j\omega)&\text{if WNC satisfied}
1&\text{otherwise} \end{cases} \end{equation*}  Feedback structure where $\bar{\sigma}$ denotes the maximal singular value and WNC stands for the winding number condition, which is satisfied if $\eta[(P,\hat{P}^*)]=\text{degree}(\hat{P})$. $\eta[(P,C)]$ denotes the number of open right-half-plane poles of the negative feedback system $(P,C)$ consisting of a plant P and controller C as presented in the figure on the left-hand side. When interpreting $\hat{P}$ as the nominal plant and $P$ as the actual hardware plant, the $\nu$-gap describes the stability difference, when the nominal plant is replaced by the actual plant. While $\nu$-gap describes the differences in plants, the generalized stability margin expresses how stable a feedback system with a specific plant-controller pair is. Following the work of J.Park ((Jisang Park. Controller certi cation: the generalized stability margin inference for a large number of MIMO controllers. ProQuest, 2008
3) , 4)
Jisang Park. Controller certi cation: the generalized stability margin inference for a large number of MIMO controllers. ProQuest, 2008
5)
Thiago Boaventura. Hydraulic compliance control of the quadruped robot hyq. Doctor of Philosophy PhD Thesis, Advanced Robotics Department, University of Genova, Genova, Italy, 2013.
adrl/education/completed_projects/okle2016.txt ยท Last modified: 2016/06/06 01:26 (external edit)