1Experimental Validation on Flatness based Control of Flexible Robot Arm Elisha D, Markus Department of Electrical,Electronic and Computer Engineering, Central University of Technology, Bloemfontein, South Africa Email:emarkus@cut.ac.za Abstract—This paper discusses the practical implementation of a flatness based control for a flexible joint robot arm. Using differential flatness theory, reference trajectories are generated for a flexible joint robot and then a tracking controller is implemented. The vibrations experienced by the robot arm are sufficiently damped and nonminimum phase behaviour is eliminated. The control shows fast transcient response as desired for flexible robots. Experimental results proves the effectiveness of the flatness based control approach. keywords: Flexible robot arm, Differential flatness, nonlin- ear control, trajectory tracking. I. INTRODUCTION This study is part of an ongoing research by the authors on designing state feedback controllers for the flexible joint robot arm. The experimental implementation of a flatness based controller for the flexible robot arm is hereby presented in this paper. The controller eliminates undesired vibrations arising from the flexible arm while maintaining a fast re- sponse to reference tip angle trajectories. Flexible joint robot arms have some advantages when compared to their rigid counterparts owing to their low inertia, lighter weight, lower energy consumption, faster movements, compliance, low cost and wider reach. However, trajectory generation and tracking for these types of robots is quite tasking. The convention used in the design of controllers for these classes of systems is first to linearize the nonlinear dynamics of the manipulator by feedback linearization [1]–[6]. This enables the use of linear techniques for controller design. Such approach to controller design for the flexible manipulator leaves tracking errors since the nonlinear system dynamics are not fully captured in the design. In this paper, the controller design for trajectory tracking of the flexible joint robot is carried out using differential flatness. The theory of differential flatness first introduced by Fliess et al. [7] has been successfully used in motion planning and control for nonlinear systems [8]–[11]. A major benefit of differential flatness based control is its ability to simplify trajectory planning and improve stabilization in task space [12]–[14]. A system is said to be differentially flat when a set of variables (called flat output) equal in dimension to the number of inputs is found for a system such that all the states and inputs of the system are expressible in terms of these outputs and their higher derivatives. The flatness property trivializes exact linearization of nonlinear dynamics as is the case with robotic dynamics and can significantly reduce the burden of a robot control problem, as well as the computational overhead involved [8], [11], [15], [16]. Flatness based control takes advantage of the nonlinear structure of the system by computing flat output(s) and their derivatives [7], [17]. The robot arm is made to follow the trajectory of these outputs which are functions of its states and inputs [12], [18]. The diffeomorphic property of flat systems, usually classified by endogenous feedback [18] enables system trajectories to be generated thereby replacing the tedious dynamical computations of such systems. The flexible joint robot arm is modeled and controlled using its flatness property. Trajectories are then be generated and a linear controller is designed to track these trajectories as closely as possible. A similar work to this study found in literature is [19] where the authors considered vibration control for a flexible link robot using differential flatness. II. MATHEMATICAL MODEL The model used for the study is the standard Quanser flexible joint manipulator platform [20] shown in Fig. 1. The robot is oriented horizontally which eliminates gravity, hence the potential energy due to the springs is zero. The robot arm is attached to the motor by two linear springs in a tendon-like fashion. This results in flexibility at the joint. We define θ as the motor angular displacement and α as the joint twist or link deflection. The position of the the arm end effector is given as the sum of the two angles (θ+α) which is our generalized coordinates. The nonlinear dynamic model of the flexible joint robot is formulated using Lagrange equations [21]. From the Lagrangian, the energy equation for the flexible manipulator is formulated as: L = K − V (1) where K = Kh +Kl V = Vg + Vs (2) The kinetic and potential energy of the hub and link are defined as follows: Kh = 1 2Jhθ˙ 2 is the Kinetic energy of the hub Kl = 1 2Jl(θ˙ + α˙) 2 is the Kinetic energy of the load Vg = 0 is the potential energy due to gravity 978-1-5090-3334-5/16/$31.00 c©2016 IEEE 2Fig. 1. Experimental Set up Vs = 1 2Ksα 2 is the potential energy due to the springs Jh and Jl are the motor and link inertia respectively. m is the link mass, h is the height of the center of mass of the link. Ks and g represents the spring stiffness and gravity constant respectively. L is now defined as: L = 1 2 Jhθ˙ 2 + 1 2 Jl(θ˙ + α˙) 2 − 1 2 Ksα 2 (3) The equations of motion according to the Lagrangian will be: d dt ( ∂L ∂ . α ) − ∂L ∂α = −Bα˙ (4) d dt ( ∂L ∂ . θ ) − ∂L ∂θ = τ (5) B and τ represents the generalised forces comprising of damping due to the springs and torque due to the motor. Solving equation (4) and (5), we obtain the following equations: JL(α¨+ θ¨) +Ksα = −Bα˙ (6) JLα¨+ (JL + Jh)θ¨ = τ (7) From Fig. 2, the mesh equation for the armature circuit is: U = Ui +RI + LI (8)     . θ  Fig. 2. Motor circuit Fig. 3. Tip of flexible joint robot arm (Top view) U is the supply voltage of the motor, Ui is the induced voltage and I the current through the armature circuit. Rm is the ohmic resistance. L is the motor windings. For mechanical systems, the current dynamics is much faster hence may be neglected. The equation becomes: U = Ui +RI (9) Defining a motor constant Ku which includes the gear ratio, the relationship between Torque and the applied voltage is: τ = Ku Rm (U −Kuθ˙) (10) Where . θ = w, i = τKu and Ui = Kuw Fig. 3 illustrates the model of the flexible arm showing the motor and link deflection angles. Defining the state variables as: x1 = α x2 = α˙ x3 = θ x4 = θ˙ (11) Equations 6 and 7, can be represented in the form: x˙ = f(x) + g(x)u (12) where [22] f(x) = ⎡ ⎢⎢⎢⎢⎢⎣ x2 −JL+JhJLJh Ksx1 − JL+JhJLJh Bx2 + K2u JhRm x4 x4 Ks Jh x1 + B Jh x2 − K 2 u JhRm x4 ⎤ ⎥⎥⎥⎥⎥⎦ 978-1-5090-3334-5/16/$31.00 c©2016 IEEE 3g(x) = [ 0 Ku JhRm 0 − Ku JhRm ]T (13) III. DIFFERENTIAL FLATNESS ANALYSIS OF ARM A. Differential Flatness Overview Given a nonlinear system of the form: x˙ = f(x, u) (14) where: x ∈ n is the state vector and u ∈ m is the input vector. The system in (12) is said to be differentially flat if there exists a variable or set of variables y ∈ m called the flat output of the form: y = h(x, u, u˙, u¨, ......, u(p)) (15) such that: x = γ1(y, . y, . y, ......, y(q)), and u = γ2(y, . y, . y, ......, y(q+1)) (16) p and q being finite integers, and the system of equations d dt γ1(y, . y, . y, ......, y(q+1)) = f(γ1(y, . y, . y, ......, y(q)), γ2(y, . y, . y, ......, y(q+1))) (17) are identically satisfied [17]. B. Determination of the Flat output Choosing the tip position of the manipulator as [21] y = θ + α (18) And using the state representation of equation 12, the expression for α and θ may be given as [22]: α¨ = −β1Ksα− β1Bα˙+ β2θ˙ − β3U (19) θ¨ = β4α+ β5Bα˙− β2θ˙ + β3U (20) where β1 = JL+JhJLJh Ks, β2 = K2u JhRm , β3 = KuJhRm , β4 = Ks Jh , β5 = B Jh Adding 19 and 20, we obtain: y¨ = α¨+ θ¨ = α(β4 − β1Ks) +Bα˙(β5 − β1) (21) y -KT . (x) (x)y f g u= + (x)y z= x T v K y= − Desired Trajectories + - y* 1 2 (x) (x)u A A v= + Fig. 4. Block diagram of flatness based controller design IV. CONTROLLER DESIGN Having obtained the flat output and dynamics of the manipu- lator in terms of the flat output, the controller for for trajectory tracking will be designed. The control law is chosen to satisfy the controller using the error dynamics: e(4) +K3e (3) +K2e¨+K1e˙ +K0e = 0 (22) where e = y − y∗, y∗ is the desired reference trajectory to be tracked. Ki, i = 0, 1, 2, 3 the controller gains are chosen to have hurwitz coefficients so that the polynomialP 4+K3P 3+.....K0 has all its root strictly in the left complex plane leading to the trajectory tracking error dynamics: s4 +K3s 3 +K2s 2 +K1s+K0 = 0 (23) Figure 4 shows the block diagram of the flatness based non- linear feedback controller design for the flexible manipulator. The resulting controller design is a multi-loop system. The inner loop linearizes the manipulator dynamics while the outer loop stabilizes and tracks the trajectories. z(x) represents the transformation of the robot states to the flat output. Using the expression for the flat output in equation 18, after some manipulations, the motor voltage required to drive the arm in terms of the flat output will be substituted as: U(t) = Kuy˙ + [ RmJL+RmJh Ku ] y¨ + [ RmJLB KuKs − KuJLKs ] y(3) − RmJhJlKuKs y(4) (24) A. Trajectories of Motion One key benefit of flatness based control is the simplifica- tion of trajectory planning and tracking of these trajectories. Using the flatness property of the manipulator, the desired trajectories of motion and the input required to track them from rest to rest could be solved as an interpolation problem without integrating the system equations. Newton interpolation method is employed to generate the coefficients of the flat output polynomial. For the 4th order dynamics of the flexible manipulator already expressed, the flat output and its deriva- tives are parameterised at an instant in time t = t1 to another instant t = t2. The problem is to generate a desired trajectory of motion for between these two points. The interpolation polynomial for the fourth order flexible manipulator system is given by [17]: y∗(τ) = α0+α1τ+α2τ2+α3τ3+ .......+α2n+1τ2n+1 (25) 978-1-5090-3334-5/16/$31.00 c©2016 IEEE 4where n = 4 and τ = t− t1 t2 − t1 (26) Equation (25)gives the desired trajectory for the flat output as y∗. Differentiating equation this equation, we obtain: y˙ ∗ (τ) = α1+2α2τ +3α3τ2+ ....+(2n+1)α2n+1τ2n (27) and so on. B. Trajectory Planning For the fourth order dynamics of the robot arm, the flat output y is used to derive the reference trajectories for y∗, y˙∗, y¨∗, and y(3)∗ using the boundary conditions t1 = 0 and t2 = 14s; y, y˙, y¨, y(3) at t1 = [0, 0, 0, 0] rads respectively and y, y˙, y¨, y(3) at t2 = [2, 0, 0, 0] rads respectively. A ninth degree polynomial with ten coefficients was used for the trajectories. The coefficients of the polynomial were determined as: ⎡ ⎢⎢⎢⎢⎢⎢⎣ a5 a6 a7 a8 a9 ⎤ ⎥⎥⎥⎥⎥⎥⎦ = ⎡ ⎢⎢⎢⎢⎢⎢⎣ 1 1 1 1 1 5 6 7 8 9 20 30 42 56 72 60 120 210 336 504 120 360 840 1680 3024 ⎤ ⎥⎥⎥⎥⎥⎥⎦ −1 ⎡ ⎢⎢⎢⎢⎢⎢⎣ a0 a1 a2 a3 a4 ⎤ ⎥⎥⎥⎥⎥⎥⎦ (28) The trajectories are used in the controller and the results are presented in the next section. V. SIMULATION AND RESULTS The result in Fig. 5 shows model validation for the flexible robot arm setup. The result indicates that the parameter estimation of the variables in simulation is close to the real system. The robotic controller set up was tested for disturbance rejection using arbitrary robot movements and flat output trajectories. The results show a fast response to disturbances as shown in Fig. 6 and 7 respectively. This is important to ensure that vibrations are well dampened and nonminimum phase behaviour is well compensated in the controller. As can be seen in the figures, link deflections quickly dampen to zero with the designed controller. The motor angle is also seen to reject disturbances in the flat output trajectories which is desirable. Fig. 8 presents the results of tracking an arbitrary sine wave. Using the designed controller, the robot arm is seen to track closely the sine wave movements. The flat output trajectory tracking is shown in Fig. 9. The results shows θ movements and α deflections as tracked by the controller. As shown, a fast response to arm movements is clearly seen. The robot arm position y is able to move from 0 to 2 radians in less than a second. The controller successfully tracked these movements without overshoots or delays. This is despite high link deflections seen in α. This shows the effectiveness of the proposed flatness based control. 0 2 4 6 8 10 12 14 u i n V -5 0 5 0 2 4 6 8 10 12 14 α in D EG -20 0 20 t in SECS 0 2 4 6 8 10 12 14 θ in D EG -200 -100 0 100 measurement simulation Fig. 5. Model validation 0 5 10 15 20 25 30 35 40 45 50 y i n d eg -50 0 50 0 5 10 15 20 25 30 35 40 45 50 α in D EG -40 -20 0 20 t in SECS 0 5 10 15 20 25 30 35 40 45 50 θ in D EG 0 20 40 60 measurement Fig. 6. Disturbance Rejection VI. CONCLUSION In this paper, an experimental validation was conducted for the flatness based control of a flexible joint robot arm. The nominal control for the robot was designed and stabilized using differential flatness. The proposed controller is used to track the reference trajectories that were interpolated using the flat output. The validated results show fast robot response to arbitrary movements and disturbance rejection. The tracking results of the flat output reference trajectories also shows close tracking performance. These results attest to the effectiveness of the flatness based control for flexible robots. Further work will involve control of flexible robots with higher degrees of freedom. ACKNOWLEDGMENT The experiment in this study was carried out at the Systems Theory and Control Engineering Laboratory at Saarland Uni- versity Saarbruken, Germany. The authors would like to thank Prof Rudolph and his team for their invaluable contribution of 978-1-5090-3334-5/16/$31.00 c©2016 IEEE 50 2 4 6 8 10 12 y i n D EG -100 0 100 200 Measured y Reference yr 0 2 4 6 8 10 12 α in D EG -20 -10 0 10 t in SECS 0 2 4 6 8 10 12 θ in D EG -100 0 100 200 Fig. 7. Disturbance Rejection t in SECS 98 100 102 104 106 108 110 112 θ + α in D EG -40 -30 -20 -10 0 10 20 30 40 Measurement Simulation Fig. 8. Tracking a sine wave 0 2 4 6 8 10 12 14 16 18 y i n R ad ian s -1 0 1 2 Measured y Reference yr 0 2 4 6 8 10 12 14 16 18 α in R ad ian s -2 0 2 t in Secs 0 2 4 6 8 10 12 14 16 18 θ in R ad ian s 0 100 200 Fig. 9. Tracking the flat output in radians allowing us to use their robotic laboratory for the experiment. This work was carried out under the DHET grant supported by the Central University of Technology Free State South Africa REFERENCES [1] J. C. Cambera, J. A. Chocoteco, and V. Feliu, “Feedback linearizing controller for a flexible single-link arm under gravity and joint friction,” in ROBOT2013: First Iberian Robotics Conference. Springer, 2014, pp. 169–184. [2] K. Nanos and E. G. Papadopoulos, “On the dynamics and control of flexible joint space manipulators,” Control Engineering Practice, vol. 45, pp. 230–243, 2015. [3] X. Bian, Y. Qu, Z. Yan, and W. Zhang, “Nonlinear feedback control for trajectory tracking of an unmanned underwater vehicle,” in IEEE International Conference on Information and Automation (ICIA). IEEE, pp. 1387–1392. [4] D. Chwa, “Tracking control of differential-drive wheeled mobile robots using a backstepping-like feedback linearization,” Systems, Man and Cybernetics, Part A: Systems and Humans, IEEE Transactions on, vol. 40, no. 6, pp. 1285–1295, 2010. [5] G. Oriolo, A. De Luca, and M. Vendittelli, “Wmr control via dynamic feedback linearization: design, implementation, and experimental val- idation,” Control Systems Technology, IEEE Transactions on, vol. 10, no. 6, pp. 835–852, 2002. [6] M. E. Didam, J. T. Agee, A. A. Jimoh, and N. Tlale, “Nonlinear control of a single-link flexible joint manipulator using differential flatness,” in 2012 5th Robotics and Mechatronics Conference of South Africa. IEEE, 2012, pp. 1–6. [7] M. Fliess, J. Lvine, P. Martin, and P. Rouchon, “Flatness and defect of non-linear systems: introductory theory and examples,” International journal of control, vol. 61, no. 6, pp. 1327–1361, 1995. [8] J. Ryu and S. Agrawal, “Differential flatness-based robust control of mobile robots in the presence of slip,” The International Journal of Robotics Research, vol. 30, no. 4, p. 463, 2011. [9] C. Tang, P. Miller, V. Krovi, J. Ryu, and S. Agrawal, “Differential- flatness-based planning and control of a wheeled mobile manipulator– theory and experiment,” Mechatronics, IEEE/ASME Transactions on, no. 99, pp. 1–6, 2010. [10] F. Bullich, S. Agrawal, and V. Sangwan, “Differential flatness of a class of n-dof planar manipulators driven by 1 or 2 actuators,” 2010. [11] M. Fliess, J. Lvine, P. Martin, F. Ollivier, and P. Rouchon, “Controlling nonlinear systems by flatness,” Systems and Control in the Twenty-first Century, p. 137154, 1997. [12] G. Rigatos, “Autonomous robots navigation using flatness based control and multi sensor fusion,” Robotics, Automation and Control (A. Lazinica ed.), ITech Education and Publishing KG, Vienna Austria, 2008. [13] E. D. Markus, H. Yskander, J. T. Agee, and A. A. Jimoh, “Coordi- nation control of robot manipulators using flat outputs,” Robotics and Autonomous Systems, 2016. [14] J. Mukherjee, I. N. Kar, and S. Mukherjee, “Kinematic control of wheeled mobile robot: An error based differentially flat system ap- proach,” in 2015 Annual IEEE India Conference (INDICON). IEEE, 2015, pp. 1–6. [15] C. Huang and H. Sira-Ramı´rez, “Flatness-based active disturbance rejec- tion control for linear systems with unknown time-varying coefficients,” International Journal of Control, vol. 88, no. 12, pp. 2578–2587, 2015. [16] W. Kim, D. Won, and M. Tomizuka, “Flatness-based nonlinear control for position tracking of electrohydraulic systems,” IEEE/ASME transac- tions on mechatronics, vol. 20, no. 1, pp. 197–206, 2015. [17] P. Rouchon, M. Fliess, J. Lvine, and P. Martin, “Flatness, motion planning and trailer systems.” IEEE, 1993, pp. 2700–2705 vol. 3. [18] M. Fliess, J. Lvine, P. Martin, and P. Rouchon, “A lie-backlund approach to equivalence and flatness of nonlinear systems,” Automatic Control, IEEE Transactions on, vol. 44, no. 5, pp. 922–937, 1999. [19] J. Polzer and D. Nissing, “Practical implementation of flatness based tracking and vibration control on a flexible robot,” MTNS 2000, 2000. [20] Quanser. (February). [Online]. Available: http://www.quanser.com [21] K. Groves and A. Serrani, “Modeling and nonlinear control of a single- link flexible joint manipulator,” 2004. [22] M. H. Alexander Gawlitz and M. Pietzko, “Steuerung und regelung eines elastischen arms,” 2015. 978-1-5090-3334-5/16/$31.00 c©2016 IEEE Dear Mr Elisha Markus, Congratulations, your submission, "Experimental Validation on Flatness based Control of Flexible Robot Arm", has been accepted for presentation at PRASA which is being held 2016-11-30 at Stellenbosch. The reviews that led to this decision are attached. Please address any reviewer revisions and upload the IEEE formatted, camera ready version of your paper by the 26 October 2016. Note that registration is required for a paper to be presented and included in the proceedings. See http://blogs.sun.ac.za/prasarobmech2016/registrations/ for registration details. Thank you and looking forward to your participation in this event. Best regards, Japie Engelbrecht Stellenbosch University jengelbr@sun.ac.za Reviewer 1: ----------------------------- Relevance: Broad interest Technical and methodological soundness: Average Clarity of presentation: Poor Originality: An extension of earlier work Comments: The derivation of the model and controller needs to be made clearer. There are some steps in the derivation (e.g. equation 12, 18 and 24) that is very hard to follow. More intermediate steps need to be added. Furthermore equation 18.1 seems to contradict equation 6. The experimental setup needs to be described in more detail. It is very confusing if the reader is not familiar with 'the standard Quanser flexible joint manipulator'. I suggest moving figure 3 to the introduction. The axis labels on figure 9 are incorrect. Should 'x3' be present in the last vector in equation 12? I assume the alpha in equations 14-16 is not the same alpha used elsewhere. This is very confusing. The text on figure 4 does not match the symbols used elsewhere in the paper. Subject: [2016prasarobmech] Editorial Decision on Paper Date: 2016/10/08 8:21 PM From: "Japie Engelbrecht" To: "Mr Elisha Markus" Page 1 of 2 2016/11/26about:blank Functions f and g are not defined. I suggest a significant rewrite of the modelling and controller design sections. ----------------------------- Reviewer 2: ----------------------------- Relevance: Average interest Technical and methodological soundness: Very good Clarity of presentation: Average Originality: Some original ideas Comments: * Article is well written with a few clearly visible typing errors (unnecessary repetition of words) * The dynamic model is derived well, although very basic clearly does capture the dominant dynamics. This is proved by means of experiments on a practical setup which is good * Flatness theory linearizes the non-linear plant successfully. * See a glitch or vibration in data of last graph without any discussion. ----------------------------- ________________________________________________________________________ PRASA 2016 PRASA-RobMech http://conferences.sun.ac.za/index.php/prasa/annual/index http://blogs.sun.ac.za/prasarobmech2016/ The integrity and confidentiality of this email is governed by these terms / Hierdie terme bepaal die integriteit en vertroulikheid van hierdie epos. http://www.sun.ac.za/emaildisclaimer Page 2 of 2 2016/11/26about:blank