5.6 KiB
+++ title = "Decoupled Control" author = ["Dehaeze Thomas"] draft = false category = "Control Theory" subcategory = "Multivariable Analysis" +++
- Tags
- [Multivariable Control]({{< relref "multivariable_control.md" >}})
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
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:
\begin{equation} \bm{G}_{\{CoM\}}(s) = \bm{J}_{\{CoM\}}^{-1} \, \bm{G}_{\{\mathcal{L}\}}(s) \, \bm{J}_{\{CoM\}}^{-\intercal} \end{equation}
{{< figure src="/ox-hugo/detail_control_decoupling_control_jacobian.png" caption="Figure 1: 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\).
{{< figure src="/ox-hugo/decoupled_control_com_Fx.gif" caption="Figure 2: 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.
{{< figure src="/ox-hugo/decoupled_control_com_Mz.gif" caption="Figure 3: Torque about \(z\) applied at the CoM (1 Hz): pure rotation" >}}
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.
{{< figure src="/ox-hugo/decoupled_control_low_freq_act_1.gif" caption="Figure 4: Left actuator at 0.1 Hz (below the suspension modes): only the strut of the actuated direction changes length" >}}
{{< figure src="/ox-hugo/decoupled_control_low_freq_act_2.gif" caption="Figure 5: 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.
{{< figure src="/ox-hugo/decoupled_control_high_freq_act_1.gif" caption="Figure 6: Left actuator at 1 Hz (above the suspension modes): the system is coupled, the body translates and rotates" >}}