# Robot Joint Vibration Suppression Method Based on Improved ADRC
## 2 Mathematical Model of Robot Joint Module
### Dynamic Response Analysis of Robot Joint Module  
In the structure of the robot joint module, vibration mainly comes from the unstable contact between the flexible gear and the wave generator, the periodic variation in the tooth contact force between the flexible gear and the rigid gear, and the elastic deformation of the flexible gear [5]. As described in (4), the vibration of the flexible gear is mainly in the x direction, y direction, and rotational direction. This is mainly caused by factors such as the fluctuation of the tooth contact force between the flexible gear and the rigid gear, and the fluctuation of the driving torque.  
The vibrations in these three directions may interact with each other, forming complex vibration patterns. In the study of robot vibration, y direction vibration is easy to measure, so further analysis is needed for the y direction vibration in (4).  
According to (4), the dynamic equation of the flexible gear in the y direction is  
\[\begin{array}{c}m_{f}\ddot{y}_{f}+c_{fy}\dot{y}_{f}+k_{fy}y_{f}=k_{wfy}(t)(y_{ w}-y_{f})+c_{fy}(\dot{y}_{w}-\dot{y}_{f})\\ +k_{fc}(t)(d_{fc1}-d_{fc2})\sin(\omega_{n}t-\alpha_{fc})+c_{fc}(\dot{d}_{fc1}- \dot{d}_{fc2})\sin(\omega_{n}t-\alpha_{fc})\end{array} \tag{8}\]  
Substituting (6) into (7) and classifying the nonlinear damping change as an unknown perturbation quantity for processing, one can have  
\[m_{f}\ddot{y}_{f}+c_{fy}\dot{y}_{f}+k_{fy}y_{f}=(e_{fc1}(t)-e_{fc2}(t))k_{fc}(t )\sin(\omega_{n}t-\alpha_{fc}) \tag{9}\]  
\[m_{f}\ddot{y}_{f}+c_{fy}\dot{y}_{f}+k_{fy}y_{f}=(y_{f}-y_{c})k_{fc}(t)[\cos 2 (\omega_{n}t-\alpha_{fc})-1] \tag{10}\]  
\[m_{f}\ddot{y}_{f}+c_{fy}\dot{y}_{f}+k_{fy}y_{f}=(y_{w}-y_{f})k_{wfy}(t) \tag{11}\]  
The right-hand term \((y_{w}-y_{f})k_{wfy}(t)\) in (10) reflects the magnitude of the excitation force on the flexible gear and is a nonlinear equation. As described in (3) and (4), variables \(y_{w}\) and \(y_{f}\) describe the vibration displacement of the flexible gear in different directions, and \(k_{wfy}(t)\) is the meshing function of the flexible gear in the y direction. In fact, it is impossible to accurately obtain the actual data of \(y_{w}\) and \(y_{t}\) in (11), nor can it obtain the accurate data of the nonlinear equation \(k_{wfy}(t)\). From the analysis of the force on the flexible gear, the force \((y_{w}-y_{f})k_{wfy}(t)\) includes the synthesis of the load disturbance force on the flexible gear and various vibration disturbance forces.  
Let \(f_{t}(t)+T(t)=(y_{w}-y_{f})k_{wfy}(t)\), where \(f_{t}(t)\) is the vibration impact force of the flexible gear itself, and \(T(t)\) is the load disturbance force acting on the flexible gear. It is approximately equivalent to the combined force of the load disturbance force and various vibrations. The reason that this combined force is used will be further explained in the \(\theta_{e1}(t)\) experimental waveform in Section 3. Therefore, one can have  
\[m_{f}\ddot{y}_{f}+c_{fy}\dot{y}_{f}+k_{fy}y_{f}=f_{t}(t)+T(t) \tag{12}\]  
where \(f_{t}(t)+T(t)\) is the total excitation force of the flexible gear, which is related to the load, mass, damping, stiffness, vibration displacement of the flexible gear, including the load disturbance force and vibration impact force of the flexible gear, and is a nonlinear function.  
In vibration analysis, the robot joint module can be considered as a whole. By extending (11), the general form of the vibration equation can be written as  
\[m\ddot{y}(t)+c\dot{y}(t)+ky(t)=f(t)+T_{load}(t) \tag{13}\]  
where \(m\) is the mass of the joint module, \(c\) is the damping of the joint module, \(k\) is the stiffness of the joint module, and \(y(t)\) is the displacement. \(\ddot{y}(t)\) is the vibration velocity. \(T_{load}(t)\) is the vibration acceleration. \(T_{load}(t)\) is the load disturbance force of the joint module, and \(f(t)\) represents the vibration impact force of the joint module, which can be measured by installing vibration sensors on the robot joint module. However, this method has some inconveniences [10].