3D trajectory control of a ﬂexible manipulator

: Flexible manipulators capable of spatial motions have potential uses in factory work environments since they are light-weight, low-cost and energy efﬁcient. However, for widespread commercialization of such robotic manipulators, simultaneous control of trajectory and vibration still remains a challenge. To address this, an inverse system based controller is developed and compared against the traditional direct strain feedback (DSFB) controller on performance criteria such as trajectory tracking and vibration suppression. The controllers were veriﬁed using a 2-link, ﬂexible manipulator capable of 3D motion. As a baseline, trajectory tracking using inverse kinematics was ﬁrst performed, and it was observed that deﬂection of the links due to its self-weight deteriorated the track following performance. Also, the vibration components of the ﬂexible manipulator were determined. The validation experiments on the actual manipulator showed that the inverse system based controller was superior to the inverse kinematics method of tracking and DSFB, as it followed the ideal trajectory by overcoming the gravitational pull, and suppressed the link vibrations.


Introduction
It is desirable for industrial robot arms to be of low cost, to have low energy consumption, and to operate with high speed. To attain these advantages, one of the approaches is to reduce the link's weights. However, weight reduction of the arm comes with low rigidity, and the accuracy of the tip position is reduced due gravitational pull on the links and vibration arising from the elastic deformation of the flexible link. [1,2].
Recently, several vibration control methods have been reported. Luo et al. [3][4][5] proposed the direct strain feedback approach for vibration control. This scheme involves feeding back a fraction of the root strain through a controller gain k. In their work, they showed that strain feedback has the effect of increasing the system damping thereby reducing vibrations without affecting the system stiffness. They further presented a proof that the scheme was asymptotically stable. However, the use such fixed gain controllers is limiting in that they allow noise feedback once the strain has subsided. Adaptive controller gain was proposed in [6,7] with better results than for those using fixed gains. Lee et al. developed in [8] an energy-based robust controller for a multilink flexible robot. In their work, the controller was developed using the basic relationship of systems of energy and independent from its system dynamics. This approach has an advantage since the derivation of the system model, which is very difficult for a multilink manipulator, is not required. Other techniques in literature include but not limited to robust control [9], input shaping [10] to mention just but a few. From literature, a one-link arm is called a flexible arm whereas the two or more-link arm is called a flexible manipulator. Most of these studies control a single-link flexible arm with only a few articles on the multilink manipulator due to the difficulty in modeling and controller design. Further, most of them 2 of 15 focus only on vibration suppression, with only a few studies on the trajectory control of the tip of a multilink manipulator.
This work is the first to report on combined trajectory tracking and vibration suppression of a flexible manipulator which is capable of 3D motion. To this end, at first, we ignored the link flexure and used inverse kinematics to express the robot arm tip trajectory in terms of the joint trajectories, as if the robot arm was comprised of rigid links. Next, using the input-output data obtained, system identification of the flexible manipulator was carried out using the subspace identification method in MATLAB, and an inverse system for the robot arm's tip trajectory control was developed. For the verification of the performance of the inverse system, a real laboratory grade manipulator was used. Experiments using strain feedback were used for comparison with the inverse system controller's performance. This paper's findings will be useful for widening the potential applications of the flexible manipulator in the industrial robotics fields.
The rest of the paper is organized as follows: Section two describes the experimental setup for the control of the 3D flexible manipulator. Section three describes how the inverse kinematics was formulated and its performance is shown. Section four describes the controller which uses angle and strain feedback. Section five shows the development and testing of the controller which uses inverse system. Section six gives the conclusion. Table 1 shows the abbreviations used in this paper.  Figure 1 shows a flexible manipulator with two links and three joints, hence having three degrees of freedom (3DOF). The angle of each of the joints were used as the control target. A motor is attached to each of the joints. Joint 2 and joint 3 are rotating in the elevation direction while joint 1 is rotating in the twisting direction giving the manipulator a 3D sweep. Cast iron cylinders are mounted on the opposite side of each motor of joint 2 and joint 3 for counterbalancing purposes. Each motor also has a built-in optical encoder with output of 1000 pulses/rev. Link 1 is made from stainless steel (SUS304) and link 2 is made from aluminum (A2017). A weight is attached at the tip of the second link of the manipulator which makes the link easily deformed during operation. To measure the lateral and torsional elastic deformation of the links, strain gauges are attached to the roots of Link 1 and Link 2 using the 2-gauge method. The strain signal is conditioned using a bridge circuit before being amplified using the DPM713B and DPM913B strain amplifiers (Kyowa Electric Co. Ltd.). These amplified signals are sampled at 0.01sec and digitized with an A/D converter interface to the dSPACE TM DSP board for management.

Experimental setup
The basic representation of the control system is as shown in Figure 2. The control system was implemented in Matlab/Simulink TM from which the desired trajectory was synthesized and the control system layout was designed. The Simulink model was downloaded in to the dSPACE Control desk which interfaces the hardware parts of the system and collects the feedback signals for further processing. The output signal from the motor shaft encoder is sent to the speed control-type servo amplifier (DA2 series from Sanyo Denki) through the D/A converter to drive the servo motor. In this 3 of 15 experiment, the proportional (P) controller was chosen for the joint angle control. The reason is that the integral (I) controller would cause overshoot or undershoot, which would result in severe link vibrations. Further, the derivative (D) controller would cause oscillations in the angular response, and as a result, would cause vibration of the entire link. Since vibration control is one of the key objective of this study,the proportional gain was set as 3. The trajectory of the tip of the arm was captured using an optical motion capture tool (OptiTrack TM ) which tracks a lightweight marker attached to the tip in three-dimensional space. For this experiment, the sampling rate was set to 100 Hz. The vertical axis was chosen as the positive z axis, the horizontal left is the positive x axis, and the forward direction is the positive y axis.

Inverse kinematics and vibration analysis
Inverse kinematics was used to develop the joint trajectories so that the tip of the manipulator would trace a circle. The circle has a radius of 0.15 m and it is centered at a position of 0.8 m in the y-direction and 0.5 m in the z-direction, with the base of the manipulator being the origin. The angular velocity for tracing of the circle for this experiment was chosen as 1.25 rad/sec, slow enough for the rigid manipulator assumption to hold. Figure 3 shows the line diagram describing the problem at 4 of 15 hand. In the figure, the axes ( x 0 ,y 0 ,z 0 ) is the stationary frame while the axes (x 1 ,y 1 ,z 1 ), (x 2 ,y 2 ,z 2 ), (x 3 ,y 3 ,z 3 ), and (x t ,y t ,z t ) are the moving frames for joint 1, joint 2, joint 3 and the tip respectively. Table  2 shows the Devavit-Hartenberg (DH) parameters of the flexible manipulator.
The coordinate system set for each link is Σ i = {x i , y i , z i }, the rotation matrix i−1 R i and is associated with the conversion from Σ i−1 to Σ i and the position vector i−1 d i are as follows: The simultaneous conversion matrix i−1 T i from Σ i−1 to Σ i is as follows: From this, the simultaneous conversion matrix between each link is as follows: Therefore, the transformation matrix from the reference coordinate system at the root to the coordinate system at the tip of the flexible manipulator is as follows: The expanded transformation matrix is attached in appendix A.3. The coordinates of the tip of the manipulator can be expressed as in equation (3.12): By solving equation (3.12), each joint angle becomes equation (3.13). Figure 4a shows the actual trajectory of the tip plotted against the desired tip trajectory. The error of the radius of the circle and the deviation from the center was less than 1cm, confirming the accuracy of the inverse kinematics described above. The error generated here is considered to be caused by the change in the length of the link caused by the bending of the link due to its own weight. Figure 4b shows the FFT analysis results in the x, y, and z directions. The resonance frequency was observed at around 3 Hz in all axial directions. Having obtained the trajectory of the tip in 3D space for the respective joint angles, system identification was performed with the joint angles as the input data and

Experiment 2: Control using link strain feedback
In this section, angle control using the proportional (P) controller based on the input angle generated using inverse kinematics is presented. Also, the concepts of the tip trajectory tracking and vibration suppression, simultaneously, using the direct strain feedback method are verified. Figure 6 Preprints (www.preprints.org) | NOT PEER-REVIEWED | Posted: 2 November 2020 doi:10.20944/preprints202011.0022.v1 7 of 15 shows the block diagram of the controller where the angle control is performed by the P controller. The root strain signal ε(0, t) was simultaneously multiplied by the feedback gain K S and was directly fed back to be the input signal of the motor. In this experiment, the feedback gain K S which was applied as the distortion signal for the driving of Joint 2 and Joint 3 was set to 0.4 and as mentioned in section 2, the proportional gain was still 3.
ε(0, t) + + -- plane. The error of the displacement of the drawn circle is larger than in Figure 4a. This is considered to be the effect of steady strain due to self-weight of the links. Since the flexible manipulator used in this study has a very low rigidity, it is always distorted due to its own weight when it is tilted to the ground. In the direct strain feedback method, this steady strain amount is also fed back, so that an angle error is generated accordingly. Figure 8b shows the FFT analysis of the performance of the manipulator using inverse kinematics for with and without the direct strain feedback (DSFB). Vibration was suppressed near the resonant frequency component of 3Hz (Figure 8b ). Comparing the results of Figure 8b with those of Figures 7a  and 7b, there is an insignificant suppression of frequency component of 7Hz by the strain feedback. Hence, there is no guarantee that the vibration at the tip can be suppressed by suppressing the vibration at the link root. The increase in the frequency component below 2 Hz was considered to be due to the effect of gravity on the feedback steady strain signal. Therefore, the direct strain feedback was effective for removing some of the resonance frequency components. However, since the error of the steady strain is also fed back, the accuracy of the trajectory is degraded. To reduce this error, it is necessary to feed back the amount obtained by subtracting the magnitude of steady strain when the manipulator was tilted. The feedback gain was again set to 0.4. However, if the tip speed changed, the gain value should be adjusted accordingly. Further, the strain gauge used this time was attached at the root, however, there was a delay before the vibration generated at the root was transmitted to the tip. If control was not performed after taking these factors into consideration, the vibration of the tip may worsen and the accuracy of the trajectory may be adversely affected.

Control using inverse system
From the input and output data obtained by the inverse kinematics, system identification was performed using the canonical variate analysis method in the System Identification Toolbox of Matlab. The input data used here was the displacement of each of the joints measured by the encoder and the output data was the trajectory measured by OptiTrack. Since the system has multiple inputs and multiple outputs, the state space model was used and the number of states were 10. Since the direct transfer term D was set to 0, the time-invariant state space equations for the identification system is expressed by the equations:ẋ = Ax + Bu For details of these state matrices, see appendix A.1. Where x, y and u are expressed as follows Elements y 1 , y 2 and y 3 indicate the x, y, z of the tip trajectory, and u 1 , u 2 , u 3 are the displacements of the input angles to Joint 1, Joint 2, and Joint 3. Figure 9a shows the pole-zero map of the identified system. Since the poles are concentrated on the left half-plane, it can be seen that it is a stable system. Further, since all zeros are concentrated on the left half-plane, the model is a minimum phase and the resulting inverse system will be stable. Since the flexible manipulator is a non-minimum phase system, it generally has unstable zeros, however, during identification, a minimum phase model that does not have unstable zeros was settled upon to evade the complexity that comes with inverting a non-minimum phase model. This way, it was possible to sufficiently reproduce the vibration characteristics. Preprints (www.preprints.org) | NOT PEER-REVIEWED | Posted: 2 November 2020 doi:10.20944/preprints202011.0022.v1 9 of 15 The inverse system was derived using the construction algorithm proposed by Silverman et al. [11][12][13]. First, the lower expression of equation 1 is differentiated to derive equation 2.
Next, the above equation of equation 1 is substituted into equation 2.
Check if CB = 0 in equation 3. When CB = 0, Equation 3 is differentiated. Repeating this n times, when CA n B = 0 y n = CA n x + CA n−1 Bu (4) Next, equation 4 is transformed as follows. For details of these state matrices, see appendix A.2. Figure 9b shows the pole-zero map of the inverse system. Compared with the pole-zero map of the identified system is as shown in Figure 9a, it can be confirmed that the placements of poles and zeros are interchanged. As a result, the controlled object and the poles and zeros of the inverse system cancel each other out, thus suppressing the vibrations. The pole near the origin of the inverse system has a positive real part, but its value is sufficiently small that it has no adverse effect in this experiment, so it was neglected.
Having identified the system model and developed the inverse system, next, the low reproducibility of the high frequency components is described, which is a drawback of the inverse system and the solution to it, is also described. In general, most existing physical systems have integral characteristics that attenuate the high frequency components. Since the inverse system also cancels this integral characteristic, it may amplify high frequency components and adversely affect the entire system. Thus, a filtered inverse system that used a lowpass filter (LPF) was employed. In this method, the high-frequency components are attenuated by a low-pass filter, and only the low-frequency components are reproduced [10]. In this work, the cutoff frequency of the low-pass filter was set to 50 Hz because it is outside the 3 Hz resonant frequency of the manipulator system. Figure 10 shows the bode plots for the magnitudes (Figure 10a) and phase (Figure 10b) of the identified and the inverse models in the same figure. From Figure 10a, it can be seen that the magnitude plots of the inverse model resemble that plot for the identified model flipped about the resonant frequency ranges. The profile of the phase plots of the two models is also similar as can be seen in Figure 10b. The minor discrepancy between the plots of the two model stems for the unstable pole of the unstable that was not ignored in the analysis.
To investigate the behavior of the combined controller, block diagram to illustrate the entire system is shown in Figure 11. Variable r = [x d , y d , z d ] is the target value and u = [θ 1 , θ 2 , θ 3 ] is the input value for the target value. Variable y = [x t , y t , z t ] is the output from the system, G is the identified model, and G −1 is the inverse system. In this experiment, r is the target trajectory and u is the target angle of each joint.
The Bode diagram of the entire system shown in Figure 11 is as shown in Figure 12. It can be seen from Figure 12a that the frequency response is generally flat. The inverse system was at first simulated using Simulink. The input was the target displacement of the tip while the angular displacement that emerged from the inverse system was the input to the identification system. Figure 13 shows the error in displacement in the x, y, and z directions. Since the error from the ideal trajectory is within 5mm in all the directions of displacement, the inverse system is considered to function with sufficient accuracy. Based on this accurate input-output relationship, it was confirmed that the created inverse system could cancel the high frequency characteristics of the system.
Experiments with the real flexible manipulator were performed and the experimental results are as shown in Figure 14. From the figure, it can be confirmed that the control method using the inverse system tracks the trajectory with higher accuracy than when using the inverse kinematics method. This was attributed to the fact that the inverse kinematics did not consider the deflection due to the self weight of the links in the determination of the joint angles. Also, The input output relationship was used for identifying the system's model, where this identified model was used to develop the inverse system. Thus, the inverse system considered the deflection due to its weight. Further, as shown in, the inverse controller suppressed the resonance frequency component near 3 Hz, which demonstrated its effectiveness (Figure 14b). The other frequency component at around 7 Hz was not suppressed. This was because the frequency response could not be reproduced well because the state variable was set low to create a model without unstable zeros during system identification.

Conclusion
Trajectory and vibration control was demonstrated on a 2-link 3-DOF flexible manipulator. Trajectory tracking using the inverse kinematics approach was affected by the arm's self weight from the gravitational pull. The resonant frequency of the flexible manipulator was at 3 Hz and another small vibration peak at about 7 Hz. Trajectory control using inverse kinematics approach combined with a well known vibration suppression method using direct strain feedback, was verified. It was confirmed that direct strain feedback was effective in suppressing the tip vibration. A large error occurred in the tip trajectory due to the effect of steady strain from the gravitational pull. Experiments on the actual plant using the filtered inverse controller showed the effectiveness of controller for sufficient tracking of the ideal trajectory and suppression of resonant frequency components near 3 Hz.