diff --git a/docs/figs/2dof_system_stiffness_uncertainty_payload.pdf b/docs/figs/2dof_system_stiffness_uncertainty_payload.pdf new file mode 100644 index 0000000..2ca0069 Binary files /dev/null and b/docs/figs/2dof_system_stiffness_uncertainty_payload.pdf differ diff --git a/docs/figs/2dof_system_stiffness_uncertainty_payload.png b/docs/figs/2dof_system_stiffness_uncertainty_payload.png new file mode 100644 index 0000000..ad03fdf Binary files /dev/null and b/docs/figs/2dof_system_stiffness_uncertainty_payload.png differ diff --git a/docs/figs/control_architecture_hac_iff_pos_X.pdf b/docs/figs/control_architecture_hac_iff_pos_X.pdf new file mode 100644 index 0000000..75da3b3 Binary files /dev/null and b/docs/figs/control_architecture_hac_iff_pos_X.pdf differ diff --git a/docs/figs/control_architecture_hac_iff_pos_X.png b/docs/figs/control_architecture_hac_iff_pos_X.png new file mode 100644 index 0000000..35c7ed0 Binary files /dev/null and b/docs/figs/control_architecture_hac_iff_pos_X.png differ diff --git a/org/control.org b/org/control.org index d51c0cf..a2a6c1b 100644 --- a/org/control.org +++ b/org/control.org @@ -118,7 +118,7 @@ Combining both can be done in an HAC-LAC topology presented in Section [[sec:hac The use of decentralized controllers is proposed in Section [[sec:cascade_control]]. -* Tracking Control - Basic Architectures +* Tracking Control in the Frame of the Nano-Hexapod - Basic Architectures <> ** Introduction :ignore: In this section, we suppose that we want to track some reference position $\bm{r}_{\mathcal{X}_n}$ corresponding to the pose of the nano-hexapod's mobile platform with respect to its fixed base. @@ -209,7 +209,7 @@ These forces are then converted to forces applied in each of the nano-hexapod's #+RESULTS: [[file:figs/control_architecture_cartesian_frame.png]] -* Active Damping Architecture - Collocated Control +* Active Damping Architecture - Collocated Control ([[file:control_active_damping.org][link]]) <> ** Introduction :ignore: From cite:preumont18_vibrat_contr_activ_struc_fourt_edition: @@ -222,6 +222,8 @@ Two very well known active damping techniques are *Integral Force Feedback* and These two active damping techniques are collocated control techniques. +The active damping techniques are studied in [[file:control_active_damping.org][this]] document. + ** Integral Force Feedback <> @@ -307,7 +309,7 @@ Each diagonal element consists of: #+RESULTS: [[file:figs/control_architecture_dvf.png]] -* HAC-LAC Architectures +* HAC-LAC Architectures ([[file:control_hac_lac.org][link]]) <> ** Introduction :ignore: Here we can combine Active Damping Techniques (Low authority control) with a tracking controller (high authority control). @@ -475,7 +477,44 @@ Usually, the Low Authority Controller is first design, and then the High Authori #+RESULTS: [[file:figs/control_architecture_hac_iff_X.png]] -* Cascade Architectures +** HAC-LAC using IFF - the HAC controller is positioning the sample w.r.t. the granite +#+begin_src latex :file control_architecture_hac_iff_pos_X.pdf + \begin{tikzpicture} + % Blocs + \node[block={3.0cm}{3.0cm}] (P) {Plant}; + \coordinate[] (inputF) at ($(P.south west)!0.5!(P.north west)$); + \coordinate[] (outputF) at ($(P.south east)!0.8!(P.north east)$); + \coordinate[] (outputX) at ($(P.south east)!0.5!(P.north east)$); + \coordinate[] (outputL) at ($(P.south east)!0.2!(P.north east)$); + + \node[block, above=0.4 of P] (Kiff) {$\bm{K}_\text{IFF}$}; + \node[addb={+}{}{-}{}{}, left= of inputF] (addF) {}; + \node[block, left= of addF] (J) {$\bm{J}^{-T}$}; + \node[block, left= of J] (K) {$\bm{K}_\mathcal{X}$}; + \node[block, align=center, left= of K] (Ex) {Compute\\Pos. Error}; + + % Connections and labels + \draw[->] (outputF) -- ++(1, 0) node[below left]{$\bm{\tau}_m$}; + \draw[->] ($(outputF) + (0.6, 0)$)node[branch]{} |- (Kiff.east); + \draw[->] (Kiff.west) -| (addF.north); + \draw[->] (addF.east) -- (inputF) node[above left]{$\bm{\tau}$}; + + \draw[->] (outputL) -- ++(1, 0) node[above left]{$d\bm{\mathcal{L}}$}; + + \draw[->] (outputX) -- ++(1.6, 0) node[above left]{$\bm{\mathcal{X}}$}; + \draw[->] ($(outputX) + (1.2, 0)$)node[branch]{} -- ++(0, -2) -| (Ex.south); + + \draw[<-] (Ex.west)node[above left]{$\bm{r}_{\mathcal{X}}$} -- ++(-1, 0); + \draw[->] (Ex.east) -- (K.west) node[above left]{$\bm{\epsilon}_{\mathcal{X}_n}$}; + \draw[->] (K.east) -- (J.west) node[above left]{$\bm{\mathcal{F}}$}; + \draw[->] (J.east) -- (addF.west) node[above left]{$\bm{\tau}^\prime$}; + \end{tikzpicture} +#+end_src + +#+RESULTS: +[[file:figs/control_architecture_hac_iff_pos_X.png]] + +* Cascade Architectures ([[file:control_cascade.org][link]]) <> ** Introduction :ignore: The principle of Cascade control is shown in Figure [[fig:control_architecture_cascade_control]] and explained as follow: @@ -649,13 +688,13 @@ The inner loop can be composed of the system controlled with the HAC-LAC topolog #+RESULTS: [[file:figs/control_architecture_cascade_X.png]] -* Sensor Fusion Architectures +* Sensor Fusion Architectures :noexport: <> -* $\mathcal{H}_\infty$ Architectures +* $\mathcal{H}_\infty$ Architectures :noexport: <> -* Force Control +* Force Control ([[file:control_force.org][link]]) Signals: - $\bm{r}_\mathcal{F}$ is the wanted total force/torque to be applied to the payload - $\bm{\epsilon}_\mathcal{F}$ is the force/torque errors that should be applied to the payload @@ -692,6 +731,7 @@ Signals: #+RESULTS: [[file:figs/control_architecture_force.png]] + * Bibliography :ignore: bibliographystyle:unsrt bibliography:ref.bib