The pursuit of collaborative robots (cobots) operating safely and efficiently alongside humans has driven the development of lightweight, flexible manipulators. A key enabler of this technology is the use of strain wave gears in joint actuation. These gears, also commonly known as harmonic drives, are prized for their compactness, high reduction ratios, and zero-backlash characteristics, making them ideal for precision positioning. However, the very flexibility that allows for safe human-robot interaction also introduces significant control challenges. The low stiffness inherent in both the strain wave gear transmission and the lightweight links can lead to pronounced mechanical vibrations, severely limiting the achievable speed and accuracy of the manipulator. This article presents, from a first-person research perspective, a comprehensive control methodology designed to achieve high-performance positioning for a series-type flexible two-link manipulator actuated by strain wave gears.
The core problem lies in the complex dynamic coupling between the links. Each joint, driven by a strain wave gear, is not a rigid body but a system with multiple resonant modes. When multiple links move simultaneously, torques generated by the motion of one link dynamically interact with and disturb the motion of the other. Traditional single-input single-output (SISO) control strategies, which treat this coupling as a simple disturbance, often fail to provide the fast, precise, and vibration-free response required for advanced applications. Therefore, a multi-variable approach that explicitly addresses this inter-link coupling is necessary.
Modeling the Flexible Dual-Link System
Accurate modeling is the foundation of effective control. A realistic model for a manipulator joint employing a strain wave gear must account for three primary inertias connected by two spring-damper pairs. The three inertias represent: 1) the motor rotor and input side of the strain wave gear, 2) the output flange (wave generator cup) of the strain wave gear, and 3) the link itself. The two springs represent the torsional flexibility of the strain wave gear (often the most compliant element) and the flexibility of the link. This structure is known as a three-inertia system per link.

For a dual-link manipulator, the combined physical model becomes a two-link, three-inertia system. The dynamics can be derived using the Euler-Lagrange formulation. Let us define the following parameters for the \(i\)-th link (where \(i=1, 2\)):
- \(\tau_{m_i}\): Motor torque.
- \(\theta_{m_i}, \theta_{a_i}, \theta_{l_i}\): Angular positions of the motor, gear output arm, and link end, respectively.
- \(J_{m_i}, J_{a_i}, J_{l_i}\): Corresponding moments of inertia.
- \(D_{m_i}, D_{a_i}, D_{l_i}\): Viscous friction coefficients.
- \(K_{g_i}, K_{l_i}\): Stiffness of the strain wave gear and the link.
- \(D_{g_i}\): Damping constant of the strain wave gear.
- \(N_i\): Gear reduction ratio of the strain wave gear.
The equations of motion for each isolated three-inertia link are coupled through interaction torques \(\tau_{c_1}\) and \(\tau_{c_2}\). These torques are derived from the rigid-body dynamics of the two-link chain and are functions of the link angles \(\theta_{l_1}, \theta_{l_2}\) and their derivatives:
$$
\tau_{c_1} = -(\beta + \gamma \cos\theta_{l_2}) \ddot{\theta}_{l_2} + \gamma (2\dot{\theta}_{l_1}\dot{\theta}_{l_2} + \dot{\theta}_{l_2}^2) \sin\theta_{l_2}
$$
$$
\tau_{c_2} = -(\beta + \gamma \cos\theta_{l_2}) \ddot{\theta}_{l_1} – \gamma \dot{\theta}_{l_1}^2 \sin\theta_{l_2}
$$
where \(\beta\) and \(\gamma\) are inertial coupling factors dependent on the link masses and lengths. Furthermore, practical non-idealities must be included. A critical one specific to strain wave gears is Angular Transmission Error (ATE), \(\theta_{TE_i}\). This is a periodic error caused by imperfections in gear manufacturing and assembly, modeled as a Fourier series:
$$
\theta_{TE_i} = \sum_{j=1}^{n} A_i(j) \cos\left(j \frac{\theta_{m_i}}{N_i} + \phi_i(j)\right)
$$
Coulomb friction \(f_i\) at the motor side is also modeled using a smooth hyperbolic tangent function: \(f_i = F_{c_i} \cdot \tanh(\dot{\theta}_{m_i} / v_{c_i})\). A representative set of model parameters for an experimental setup is summarized in the table below.
| Symbol | Unit | Link 1 | Link 2 |
|---|---|---|---|
| \(N\) | – | 100 | 100 |
| \(J_m\) | kg·m² | 6.0×10⁻⁶ | 6.0×10⁻⁶ |
| \(K_g\) | Nm/rad | 5000 | 3200 |
| \(K_l\) | Nm/rad | 2500 | 800 |
| \(J_l\) | kg·m² | 5.0×10⁻¹ | 1.8×10⁻¹ |
| \(F_c\) | Nm | 1.5×10⁻² | 1.5×10⁻² |
| \(\beta\) | kg·m² | 0.18 | |
| \(\gamma\) | kg·m² | 0.08 | |
Analysis of Conventional Control and Its Limitations
A popular and practical control framework for high-performance servo systems is the Two-Degree-of-Freedom (2-DOF) control structure. It independently designs a feedback (FB) controller for robustness and stability and a feedforward (FF) controller for achieving desired command response. For flexible systems like our manipulator with strain wave gears, the FB part often employs a cascade control structure: an inner velocity loop using a tachometer or motor encoder signal for damping, and an outer position loop.
The choice of the outer loop feedback signal defines the control architecture. A “semi-closed-loop” uses the motor-side position \(\theta_m\) (readily available from the motor encoder), while a “full-closed-loop” uses the load-side position \(\theta_l\) (requiring an additional encoder on the output of the strain wave gear). The semi-closed-loop is simpler but cannot directly correct for errors like ATE or link deflection. A variant, the “semi-closed-loop with ATE compensation,” adds a feedforward term based on the ATE model to cancel the steady-state error introduced by the strain wave gear.
When only a single link is moving, these conventional 2-DOF methods, particularly the one with ATE compensation, can work reasonably well. The controller for each link is designed based on its isolated three-inertia model. However, their performance severely degrades during multi-link motions. The coupling torques \(\tau_{c_1}\) and \(\tau_{c_2}\) become significant and are highly dependent on the dynamic states (positions, velocities) of both links. Treating this dynamic coupling merely as a disturbance to be rejected by the robust FB controller imposes a fundamental performance limit. The FB controller’s bandwidth is constrained by the flexible modes of the system, making it too slow to effectively cancel the rapidly varying coupling effects during fast, simultaneous movements. This results in persistent vibrations, overshoot, and prolonged settling times, failing to meet aggressive performance targets such as ±0.1 mm accuracy within 0.1 seconds.
Proposed Decoupling Control Strategy
To overcome the limitations of treating coupling as a disturbance, we propose a model-based decoupling control strategy integrated into the 2-DOF framework. The key insight is to view the dual-link manipulator as a Multi-Input Multi-Output (MIMO) system with two control inputs (motor torques \(\tau_{m_1}, \tau_{m_2}\)) and two primary outputs (we choose the motor-side angles \(\theta_{m_1}, \theta_{m_2}\) for a semi-closed-loop structure). The goal of decoupling is to design a pre-compensator, or decoupler, so that each control input affects primarily its corresponding output, effectively diagonalizing the system’s dynamics from the controller’s perspective.
To derive a practical decoupler, we make a simplifying assumption informed by observation: the dominant vibration mode during positioning is often around 10 Hz, primarily excited by link flexibility. Therefore, we approximate the system as a linear dual-link, dual-inertia system. This simplification assumes the joint (the strain wave gear assembly) is rigid relative to the link, and neglects nonlinear terms like centrifugal and Coriolis forces for the purpose of decoupler design. The parameters are reflected to the motor side using the gear ratio \(N\):
$$
J_{m_i}^r = J_{m_i} + \frac{J_{a_i}}{N^2}, \quad J_{l_i}^r = \frac{J_{l_i}}{N^2}, \quad K_{l_i}^r = K_{l_i} N^2
$$
The state vector is defined as \(\mathbf{x} = [\theta_{m_1}^r, \theta_{m_2}^r, \theta_{l_1}^r, \theta_{l_2}^r]^T\) and the input vector as \(\boldsymbol{\tau} = [\tau_{m_1}, \tau_{m_2}]^T\). The linearized dynamics can be expressed in matrix form:
$$
\mathbf{J}_0 \ddot{\mathbf{x}} + \mathbf{D}_0 \dot{\mathbf{x}} + \mathbf{K}_0 \mathbf{x} = \mathbf{B}_0 \boldsymbol{\tau}
$$
where \(\mathbf{J}_0\) is the inertia matrix containing the coupling inertia \(J_{lc}^r\), \(\mathbf{D}_0\) is a diagonal damping matrix, \(\mathbf{K}_0\) is the stiffness matrix, and \(\mathbf{B}_0\) is the input matrix. Taking the Laplace transform, we obtain the transfer function matrix \(\mathbf{G}(s)\) from \(\boldsymbol{\tau}\) to \(\mathbf{x}\):
$$
\mathbf{G}(s) = (\mathbf{J}_0 s^2 + \mathbf{D}_0 s + \mathbf{K}_0)^{-1} \mathbf{B}_0
$$
This \(4 \times 2\) matrix can be partitioned into the top \(2 \times 2\) sub-matrix \(\mathbf{G}_m(s)\) relating inputs to motor angles, and the bottom \(2 \times 2\) sub-matrix \(\mathbf{G}_l(s)\) for link angles. For our semi-closed-loop control, the plant is considered to be \(\mathbf{P}(s) = \mathbf{G}_m(s)\).
The decoupler \(\mathbf{D}(s)\) is designed to be the inverse of the plant’s steady-state gain matrix or a simplified dynamic inverse, such that \(\mathbf{P}(s)\mathbf{D}(s) \approx \mathbf{I}\), where \(\mathbf{I}\) is the identity matrix. A common and effective choice for many robotic applications is a static decoupler, calculated as the inverse of the plant’s DC gain matrix \(\mathbf{P}(0)\):
$$
\mathbf{D} = \mathbf{P}(0)^{-1}
$$
This static decoupler effectively compensates for the inertial coupling at lower frequencies, which is most critical for positioning. The proposed overall control architecture is illustrated below. It combines:
1. A static decoupler \(\mathbf{D}\) that processes the reference commands and error signals.
2. A 2-DOF controller for each decoupled channel, consisting of a feedback cascade (position and velocity loops) and a feedforward compensator designed via coprime factorization for optimal command tracking.
3. An ATE compensator that injects a correction signal based on the measured motor angle and the Fourier model of the strain wave gear error to eliminate steady-state positional inaccuracy.
| Feature | Quasi Full-Cloop | Semi-Cloop with ATE Comp. | Proposed Method (Semi-Cloop with Decoupler & ATE Comp.) |
|---|---|---|---|
| Feedback Signal | Load-side angle \(\theta_l\) | Motor-side angle \(\theta_m\) | Motor-side angle \(\theta_m\) |
| Coupling Handling | Treated as disturbance | Treated as disturbance | Actively decoupled via MIMO pre-compensator | ATE Handling | Directly corrected by FB loop | FF compensation based on model | FF compensation based on model |
| Primary Advantage | Direct load position control | Simplicity, good single-axis performance | Excellent multi-axis vibration suppression |
| Primary Limitation | Requires extra sensor, sensitive to FB tuning | Poor performance in multi-link motion | Relies on accuracy of linearized model for decoupling |
Experimental Validation and Results
The proposed method was validated on a physical planar two-link manipulator prototype. Each link was lightweight and driven by an AC servo motor with a high-ratio strain wave gear. Both motor-side and load-side encoders were installed for measurement and evaluation. The control algorithms were discretized using the Tustin method with a 250 µs sampling period. Performance was evaluated against two benchmark methods: the quasi full-closed-loop control and the semi-closed-loop control with ATE compensation (but without decoupling).
Two challenging multi-link motion trajectories were tested to stress the system:
- Motion 1 (Short Stroke): Both links move 3° simultaneously. The acceleration/deceleration time was set to 0.125s, producing frequency content near the system’s natural resonance (~8 Hz), ideal for exciting vibrations.
- Motion 2 (Long Stroke): Link 1 rotates 150° while Link 2 rotates -150° to 0°. This involves large motion with significant variation in inertial coupling and Coriolis forces.
The target performance was a settling time of less than 0.1 seconds and a precision equivalent to ±0.1 mm at the end-effector (approximately ±0.02° at the joint).
For Motion 1, the conventional methods exhibited large, persistent oscillations in both position and torque waveforms. The quasi full-closed-loop showed slightly better damping but still had significant overshoot. The proposed decoupling method dramatically suppressed these vibrations. The position settled within the target band rapidly, and the torque commands were smooth and non-oscillatory, indicating effective decoupling of the interactive dynamics. Minor residual vibrations were present due to the semi-closed-loop structure and model approximation, but they were well within the acceptable tolerance.
For the more aggressive Motion 2, the superiority of the proposed method was even more evident. The traditional controllers struggled with the strong and varying coupling, resulting in large overshoots and extended settling times exceeding 0.5 seconds. In contrast, the decoupling controller successfully managed the interaction forces. The position responses for both links showed almost no overshoot and settled within the required 0.1-second window. The motor torque profiles were significantly smoother and more consistent, demonstrating that the controller was not fighting against the dynamic coupling forces induced by the other link’s motion.
| Motion | Control Method | Settling Time (s) to ±0.02° | Max Overshoot | Vibration Level (Torque RMS) |
|---|---|---|---|---|
| Motion 1 (3°) | Quasi Full-Cloop | > 0.30 | High | High |
| Semi-Cloop + ATE Comp. | > 0.25 | High | High | |
| Proposed (Decoupling) | ~0.10 | Negligible | Low | |
| Motion 2 (150°) | Quasi Full-Cloop | > 0.60 | Very High | Very High |
| Semi-Cloop + ATE Comp. | > 0.50 | Very High | Very High | |
| Proposed (Decoupling) | ~0.10 | Very Low | Low |
Conclusion and Future Perspectives
This research has demonstrated a practical and effective decoupling control method for achieving high-precision, high-speed positioning of flexible dual-link manipulators utilizing strain wave gears. By explicitly modeling the inter-link coupling and employing a MIMO decoupler within a robust 2-DOF semi-closed-loop framework, the proposed strategy successfully mitigates the vibrations that plague traditional SISO control methods during coordinated multi-axis motion. The integration of a model-based strain wave gear ATE compensator further ensures high steady-state accuracy.
The experimental results confirm that the method meets stringent performance targets, such as ±0.1 mm end-effector accuracy with a 0.1-second settling time, even under motion conditions that heavily excite flexible dynamics and interactive torques. The use of a semi-closed-loop structure with a static decoupler presents a compelling trade-off, offering superior performance without the cost and complexity of full-state feedback or very high-order dynamic inversion.
Future work will focus on enhancing the robustness and applicability of the method. Key areas include:
- Adaptation to Model Uncertainty: The decoupler design relies on a linearized model. Incorporating online parameter estimation or adaptive control techniques could maintain performance as system parameters (like payload) change.
- Robustness to External Disturbances: While the FB controller provides some rejection, explicit design for robustness against unmodeled external forces (e.g., contact with the environment) is crucial for collaborative applications.
- Extension to More Degrees of Freedom: Generalizing the decoupling strategy for manipulators with three or more flexible links, where the dynamics become even more complex, is a logical and challenging next step.
- Nonlinear Friction Compensation: While included in the model, more advanced and adaptive friction compensation could further improve low-speed tracking and settling performance.
In conclusion, the synergy of advanced modeling of the strain wave gear transmission, MIMO decoupling control, and a well-structured 2-DOF framework provides a powerful solution for unlocking the full potential of lightweight, flexible robotic arms in high-performance automation and safe human-robot collaboration.
