1 parent
03b428836b
commit
5e566f95c1
25 files changed
+386
-23
No files matched your search
@@ -10,6 +10,88 @@ Tags
|
||||
: [Multivariable Control]({{< relref "multivariable_control.md" >}})
|
||||
|
||||
|
||||
## Decoupling Control of Parallel Kinematics Robots {#decoupling-control-of-parallel-kinematics-robots}
|
||||
|
||||
Consider a rigid body (mass matrix \\(\bm{M}\\), stiffness matrix \\(\bm{K}\\)) suspended by actuators, with their forces \\(\bm{\tau}\\) and the change of length of the struts \\(\bm{\mathcal{L}}\\).
|
||||
The Jacobian matrix \\(\bm{J}\\) relates the pose \\(\bm{\mathcal{X}}\\) of the body to the strut lengths, \\(\bm{\mathcal{L}} = \bm{J} \bm{\mathcal{X}}\\), and the actuator forces to the wrench \\(\bm{\mathcal{F}}\\) applied on the body, \\(\bm{\mathcal{F}} = \bm{J}^{\intercal} \bm{\tau}\\).
|
||||
|
||||
The transfer function in the actuator frame is:
|
||||
|
||||
\begin{equation}
|
||||
\bm{G}\_{\\{\mathcal{L}\\}}(s) = \frac{\bm{\mathcal{L}}}{\bm{\tau}} = \bm{J} \left( \bm{M} s^2 + \bm{C} s + \bm{K} \right)^{-1} \bm{J}^{\intercal}
|
||||
\end{equation}
|
||||
|
||||
Depending on the frequency range, the dynamics is dominated by the stiffness (low frequency) or the inertia (high frequency).
|
||||
The best frame to decouple the system is not the same in the two cases.
|
||||
|
||||
|
||||
### Control at the Center Of Mass {#control-at-the-center-of-mass}
|
||||
|
||||
For soft systems (for instance voice coil based), it makes sense to work at the Center of Mass (CoM).
|
||||
Above the "suspension modes", the dynamics is dominated by inertia.
|
||||
Therefore, the transfer function from forces and torques applied at the CoM to the translation and rotation of the suspended mass evaluated at the CoM is decoupled.
|
||||
It is equal to the inverse of the mass matrix (diagonal when evaluated at the CoM) times \\(1/s^2\\):
|
||||
|
||||
\begin{equation}
|
||||
\bm{G}\_{\\{CoM\\}}(s) = \frac{\bm{\mathcal{X}}\_{\\{CoM\\}}}{\bm{\mathcal{F}}\_{\\{CoM\\}}} \approx \frac{1}{s^2} \bm{M}^{-1}
|
||||
\end{equation}
|
||||
|
||||
To work at the CoM, the plant is pre- and post-multiplied by the Jacobian matrices as shown in Figure [Figure 1](#figure--fig:detail-control-decoupling-control-jacobian):
|
||||
|
||||
\begin{equation}
|
||||
\bm{G}\_{\\{CoM\\}}(s) = \bm{J}\_{\\{CoM\\}}^{-1} \\, \bm{G}\_{\\{\mathcal{L}\\}}(s) \\, \bm{J}\_{\\{CoM\\}}^{-\intercal}
|
||||
\end{equation}
|
||||
|
||||
<a id="figure--fig:detail-control-decoupling-control-jacobian"></a>
|
||||
|
||||
{{< figure src="/ox-hugo/detail_control_decoupling_control_jacobian.png" caption="<span class='figure-number'>Figure 1: </span>Plant with inputs \\(\bm{\tau}\\) and outputs \\(\bm{\mathcal{L}}\\), and the Jacobian matrices used to work with forces and displacements at the CoM" >}}
|
||||
|
||||
The animations below show a 3DoF suspended body above its suspension modes (1 Hz), when a force or a torque is applied at the CoM.
|
||||
The three actuator forces are computed with \\(\bm{\tau} = \bm{J}\_{\\{CoM\\}}^{-\intercal} \bm{\mathcal{F}}\_{\\{CoM\\}}\\) (the darker the actuator, the larger its force).
|
||||
|
||||
**Force along \\(x\\) applied at the CoM**: the body only translates along \\(x\\).
|
||||
|
||||
<a id="figure--fig:decoupled-control-com-Fx"></a>
|
||||
|
||||
{{< figure src="/ox-hugo/decoupled_control_com_Fx.gif" caption="<span class='figure-number'>Figure 2: </span>Force along \\(x\\) applied at the CoM (1 Hz): pure translation" >}}
|
||||
|
||||
**Torque about \\(z\\) applied at the CoM**: the body only rotates around its CoM.
|
||||
|
||||
<a id="figure--fig:decoupled-control-com-Mz"></a>
|
||||
|
||||
{{< figure src="/ox-hugo/decoupled_control_com_Mz.gif" caption="<span class='figure-number'>Figure 3: </span>Torque about \\(z\\) applied at the CoM (1 Hz): pure rotation" >}}
|
||||
|
||||
|
||||
### Control in the Actuator Frame {#control-in-the-actuator-frame}
|
||||
|
||||
For stiff parallel systems, the dynamics from \\(\bm{\tau}\\) to \\(\bm{\mathcal{L}}\\) is well decoupled at low frequency (well below the first resonance frequency).
|
||||
At low frequency, the dynamics is dominated by the stiffness: with \\(\bm{K} = \bm{J}^{\intercal} \mathcal{K} \bm{J}\\), \\(\mathcal{k}\\) being the diagonal matrix of the actuator stiffnesses, the transfer function from \\(\bm{\tau}\\) to \\(\bm{\mathcal{L}}\\) is diagonal:
|
||||
|
||||
\begin{equation}
|
||||
\bm{G}\_{\\{\mathcal{L}\\}}(0) = \bm{J} \bm{K}^{-1} \bm{J}^{\intercal} = \mathcal{K}^{-1}
|
||||
\end{equation}
|
||||
|
||||
Each actuator then only changes the length of its own strut.
|
||||
The control can be designed independently for each actuator, using the length of the strut as the sensor.
|
||||
|
||||
Below the suspension modes, actuating one actuator moves the body, but the lengths of the two other struts do not change.
|
||||
Therefore, the plant in the frame of the actuators is decoupled.
|
||||
|
||||
<a id="figure--fig:decoupled-control-low-freq-act-1"></a>
|
||||
|
||||
{{< figure src="/ox-hugo/decoupled_control_low_freq_act_1.gif" caption="<span class='figure-number'>Figure 4: </span>Left actuator at 0.1 Hz (below the suspension modes): only the strut of the actuated direction changes length" >}}
|
||||
|
||||
<a id="figure--fig:decoupled-control-low-freq-act-2"></a>
|
||||
|
||||
{{< figure src="/ox-hugo/decoupled_control_low_freq_act_2.gif" caption="<span class='figure-number'>Figure 5: </span>Bottom left actuator at 0.1 Hz (below the suspension modes): only the strut of the actuated direction changes length" >}}
|
||||
|
||||
At higher frequency, the inertia becomes important and the system is coupled: using only the first actuator also excites the other directions and the other struts change length.
|
||||
|
||||
<a id="figure--fig:decoupled-control-high-freq-act-1"></a>
|
||||
|
||||
{{< figure src="/ox-hugo/decoupled_control_high_freq_act_1.gif" caption="<span class='figure-number'>Figure 6: </span>Left actuator at 1 Hz (above the suspension modes): the system is coupled, the body translates and rotates" >}}
|
||||
|
||||
|
||||
## Bibliography {#bibliography}
|
||||
|
||||
<style>.csl-entry{text-indent: -1.5em; margin-left: 1.5em;}</style><div class="csl-bib-body">
|
||||
|
||||
Reference in new issue
Block a user