Generalized Flexible Hybrid Cable-Driven Robot (HCDR): Modeling, Control, and Analysis

# Generalized Flexible Hybrid Cable-Driven Robot (HCDR): Modeling, Control, and Analysis

Ronghuai Qi, Amir Khajepour, and William W. Melek This work was supported in part by the Natural Sciences and Engineering Research Council of Canada. R. Qi, A. Khajepour, and W. W. Melek are with the Department of Mechanical and Mechatronics Engineering, University of Waterloo, Waterloo, ON N2L 3G1, Canada (e-mail: ronghuai.qi@uwaterloo.ca; a.khajepour@uwaterloo.ca; william.melek@uwaterloo.ca).
###### Abstract

This paper presents a generalized flexible Hybrid Cable-Driven Robot (HCDR). For the proposed HCDR, the derivation of the equations of motion and proof provide a very effective way to find items for generalized system modeling. The proposed dynamic modeling approach avoids the drawback of traditional methods and can be easily extended to other types of hybrid robots such as a robot arm mounted on an aircraft platform.

Additionally, another goal of this paper is to develop integrated control systems to reduce vibrations and improve the accuracy and performance of the HCDR. To achieve this goal, redundancy resolution, stiffness optimization, and control strategies are studied. The proposed optimization problem and algorithm address the limitations of existing stiffness optimization approaches. Three types of control architecture are proposed and their performances (i.e., reducing undesirable vibrations and trajectory tracking errors, especially for the end-effector) are evaluated using several well-designed case studies. Results show that the fully integrated control strategy can improve significantly the tracking performance of the end-effector.

Hybrid Cable-Driven Robot (HCDR), modeling, optimization, vibration control, trajectory tracking.

## I Introduction

Serial manipulators are one of the most common types of industrial robots, which consist of a base, a series of links connected by motor-driven joints, and an end-effector. Usually, they have 6 degrees of freedom (DOFs) and offer high positioning accuracy. They are commonly used in industrial applications; however, they have some key limitations, such as high motion inertia and limited workspace envelope [Wei2015]. Cable-driven parallel robots (CDPRs) are another important type of industrial robots. Their configurations usually bear resemblance to parallel manipulators. For these robots, rigid links are replaced with cables. This reduces the robot weight since cables are almost massless. It also eliminates the use of revolute joints. These features allow the mobile platform to reach high motion accelerations in large workspaces. However, they are not without some drawbacks, such as their low accuracy, high vibration, etc., all of which limit their applications [Oh2005]. To overcome the aforementioned shortages of serial and cable-driven parallel robots as well as combine their advantages, one approach is to combine these two types of robots to create a hybrid cable-driven robot (HCDR), i.e., a hybrid structure of CDPR(s) and serial robot(s).

The literature shows that existing research and applications prefer to affix a robot arm upside down to the bottom of a CDPR’s platform [T.Arai1999, H.Osumi2000, M.Bamdad2015, M.Gouttefarde2017, J.S.Albus1989, J.S.Albus2003, GmbH, SKYCAM_LLC] or mainly control the cable robot while treating the serial robot as a manipulation tool or an end-effector rather than a whole system [J.S.Albus1989, J.S.Albus2003, GmbH, SKYCAM_LLC]. When a serial robot is mounted on a mobile platform, they constitute a new coupled system. Only controlling the mobile platform (i.e., treating the serial robot as a manipulation tool) or the serial robot may not guarantee the position accuracy of the end-effector. For applications that use such a system, the main goal is to control the end-effector of the serial robot (e.g., its trajectories and vibrations) in order to effectively accomplish tasks such as pick-and-place. Another major challenge in the utilization of these systems is maintaining the appropriate cable tensions and stiffness for the robot. This requires the development of kinematic and dynamic models, stiffness optimization, and controllers for HCDRs.

Some research has been carried out to solve these problems: for kinematic and dynamic modeling, existing research mainly focuses on rigid serial robots [P.R.Pagilla2004], rigid/flexible parallel robots [Lau2013, N.Mostashiri2018, C.Viegas2017, Khajepour2015, Taghirad2011, H.Jamshidifar2017, Z.Mu2018, Otis2009, M.Chen2018], and wheeled rigid mobile vehicles carrying a rigid/flexible joint arm [Lin2001, S.A.Marinovic2017]. In [Lau2013], a multilink manipulator model was developed, but this model applied to each link driven by cables. To solve the redundancy and stiffness optimization problems, some useful methods were studied, such as minimum 2-norm of cable tensions [Khajepour2015, Mendez2014] and stiffness maximization in the softest direction [H.Jamshidifar2017, H.Jamshidifar2018]. However, their research focused on planar CDPRs and the maximum of the system overall stiffness by using these approaches was not always guaranteed. Since the use of flexible cables reduces the overall stiffness of cable-driven robots, vibration control becomes a serious problem. Meanwhile, the moving robot arm also generates reaction forces to the mobile platform, resulting in the mobile platform vibrating. Hence, it is challenging to achieve the goal of minimizing the vibrations and increasing the position accuracy of the end-effector. To the best of my knowledge, limited studies address the modeling and control problems of flexible HCDRs. Especially, when the redundancy and stiffness optimization problems are introduced, the control of trajectories and vibrations becomes more challenging. Researchers in [Tecnalia] showed a CDPR carrying a robot arm for painting large surfaces, but vibrations were obvious and large based on their demonstration.

This paper is motivated by the need to solve the aforementioned problems for CDPRs with serial robotic arms in order to increase their accuracy and adoption in industrial or other potential applications (e.g., rehabilitation). To implement this motivation, this paper focuses on a generalized flexible HCDR (shown in Fig. 1), including modeling, control, and performance analysis. The novelty and main contributions of this paper are as follows:

1. The derivation of the equations of motion and proof provide a very effective way to find items for generalized system modeling. Meanwhile, the proposed dynamic modeling approach avoids the drawback of traditional methods (e.g., [Denavit1955]), and can be easily extended to other types of hybrid robots by changing the proposed structure matrix based on their desired configurations, e.g., robot arm(s) mounted on an aircraft platform [Tardella2016, PRODRONE2016].

2. Three types of control architecture are proposed to reduce vibrations and improve the accuracy of the HCDR. Their performances are also evaluated using several well-designed case studies.

3. The proposed optimization problem and algorithm address the limitations of existing stiffness optimization approaches in [Khajepour2015, Mendez2014, H.Jamshidifar2017, H.Jamshidifar2018]. Meanwhile, they can be applied to not only CDPRs but also HCDRs.

Additionally, the growth of automated warehousing solutions has been fueled by the e-commerce explosion in recent years [Hamedthesis2018]. By 2024, the market of global automated material handling equipment is predicted to no less than US$50.0 Billion with a Compound Annual Growth Rate (CAGR) of [Heraldkeeper2019, MarketEngine2018]. These increase of automated warehousing applications offers a unique opportunity for the development of cable robotics that is superior in, especially for CDPRs and HCDRs. The proposed technique in this paper provides a valid solution for the development of CDPRs and HCDRs. In this paper, generalized system modeling is introduced in Section II. In Section III, a HCDR example is selected by applying the modeling method in Section II. Then, In Section IV, vibration control design based on this HCDR example is implemented. Control performance and evaluation using case studies are presented in Section V. Finally, in Section VI, the contributions of this paper are summarized. ## Ii Generalized System Modeling In this paper, a generic hybrid cable-driven robot (HCDR) is proposed to overcome the shortcomings of CDPRs and serial robots as well as aggregate their advantages. The HCDR is defined as follows: ###### Definition 1. A hybrid cable-driven robot (HCDR) is a robot that is composed of two or more heterogeneous mechatronic components, where at least one component is CDPR. With reference to Definition 1, let us consider a generalized -DOF HCDR in three-dimensional (3D) space (shown in Fig. 1) with an -DOF () cable-driven parallel robot (mobile platform) and an -DOF () robot arm, where the robot arm is mounted on the mobile platform and moves with it. To simplify modeling, all the driven cables are assumed massless, straight, and stretchable. As a coupled system, modeling is much harder by comparison to just parallel robot or serial robot arm, especially, when flexible parts are introduced (e.g., flexible driven cables). To develop the model of the hybrid system, first, we derive the equations of motion of the -DOF CDPR (in Subsection II-A); then, we will use some results in Subsection II-A to derive the equations of motion of the -DOF HCDR (in Subsection II-B). ### Ii-a Equations of Motion of the CDPR In Fig. 1, the inertial coordinate frame is assumed fixed on the base/ground. Coordinate frame is located at the center of mass (COM) of the mobile platform. By assuming the Euler angles (the orientations of the mobile platform about -, -, and -axes, respectively), the rotation matrix (e.g., order as below) is computed as  Rmg=Rx(αm)Ry′(βm)Rz′′(γm)∈SO(3). (1) Then, the cable-length vector is calculated as  →Li= [pmx,pmy,pmz]T+Rmg[rix,riy,riz]T −[aix,aiy,aiz]T,{∀i∈N:1≤i≤N} (2) where denotes the position vector from the th cable anchor point on the robot static frame to the th cable anchor point on the mobile platform; represents the position vector of the coordinate frame with respect to the coordinate frame ; denotes the position vector of the th cable anchor point on the mobile platform with respect to the body-fixed frame ; represents the position vector of the th cable anchor point on the robot static frame with respect to the coordinate frame ; and is the total number of cables. Then, the th cable length is computed as  Li= ∥[pmx,pmy,pmz]T+Rmg[rix,riy,riz]T −[aix,aiy,aiz]T∥. (3) In addition, the derivative of (2) is rearranged as  ˙Li=^LTivm+(Rmg[rix,riy,riz]T×^Li)Tωm (4) where denotes the th cable length velocity, represents the unit cable position vector, and are the linear velocity and angular velocity of the coordinate frame , respectively. Then, (4) can be expanded in matrix form as  [˙L1,˙L2,⋯,˙LN]T= (5) where represents a structure matrix, determined by the position and orientation of the mobile platform. The linear velocity and angular velocity are calculated as  [vmωm]= (ATm)+[˙L1,˙L2,⋯,˙LN]T (6a) = ⎡⎢ ⎢ ⎢ ⎢⎣[˙pmx,˙pmy,˙pmz]T[Rmg]T[˙αm,0,0]T+[Rmγmβ]T[Rmβmα]T[0,˙βm,0]T+[Rmγmβ]T[0,0,˙γm]T⎤⎥ ⎥ ⎥ ⎥⎦ (6b) where is the pseudo-inverse of the matrix , rotation matrices and come from (1). (6a) and (6b) are two expressions to compute and . , and are the time-derivative of , and , respectively. For the CDPR dynamics, the Newton-Euler equations are used because they can describe the system in Fig. 1 in terms of cable tensions directly. Then, we get  [mm˙vmIm˙ωm+ωm×(Imωm)]+[mm[0,0,g]T+FeMe] =⎡⎢ ⎢ ⎢ ⎢⎣N∑i=1(Ti^Li)N∑i=1[Ti(Rmg[rix,riy,riz]T×^Li)]⎤⎥ ⎥ ⎥ ⎥⎦=AmT (7) where denotes the th cable tension; represents the unit vector of th cable position; are the external forces and moments (e.g., the interaction forces and torques from the mounted robot arm affecting the mobile platform) applied to the coordinate frame ; is the mass of the mobile platform; denotes the moment of inertia of the mobile platform; represent the linear velocity, linear acceleration, angular velocity, and angular acceleration the mobile platform, respectively; and is the gravitational acceleration. Suppose the cable stiffness matrix is , where represents the th cable stiffness, is the product of the modulus of elasticity and cross-sectional area of the th cable, and denotes th unstretched cable length. Then, the cable tension vector is calculated as  T=Kc(L−L0) (8) where denotes the cable tension vector, represents the cable length vector, and denotes the vector of unstretched cable lengths. The directions of are shown in Fig. 1. Finally, by considering a vector of unknown bounded disturbances , (7) and (8) can be described as  [mmI% 00Im]=:Mm(qm)[˙vm˙ωm]=:¨qm+[0[ωm]Im]=:Cm(qm,˙qm)[vmωm]=:˙qm +⎡⎢ ⎢⎣mm[0,0,g]T=:Gm(qm)+FeMe⎤⎥ ⎥⎦+τmd=AmT=:τm (9) where and is the identity matrix. , , and denote the inertia matrix, Coriolis and centripetal matrix, and gravitational vector, respectively. , , , and represent the vectors of generalized coordinates, velocities, accelerations, and joint forces/torques, respectively. The derivation of equations of motion of the CDPR in this section provides a convenient closed form to simplify HCDR modeling in Subsection II-B. ### Ii-B Equations of Motion of the HCDR For the -DOF HCDR shown in Fig. 1, the th () COM (of the link) position vector and joint position vector are computed as  pacj= [pmx,pmy,pmz]T+RmgRa0m=:Ra0g[xa00,ya00,za00]T +RmgRa0mRa1a0=:Ra1g[xa01,ya01,za01]T+⋯ +RmgRa0mRa1a0Ra2a1⋯Raja(j−1)=:Rajg[xac0j,yac0j,zac0j]T = [pmx,pmy,pmz]T+Ra0g[xa00,ya00,za00]T+ Ra1g[xa01,ya01,za01]T+⋯+Rajg[xac0j,yac0j,zac0j]T = [pmx,pmy,pmz]T+Rajg[xac0j,yac0j,zac0j]T+ j∑k=0{Ra(j−1)g[xa0(j−1),ya0(j−1),za0(j−1)]T} (10) and  paj= [pmx,pmy,pmz]T+RmgRa0m[xa00,ya00,za00]T +RmgRa0mRa1a0[xa01,ya01,za01]T+⋯ +RmgRa0mRa1a0Ra2a1⋯Raja(j−1)[xa0j,ya0j,za0j]T = [pmx,pmy,pmz]T+Ra0g[xa00,ya00,za00]T+ Ra1g[xa01,ya01,za01]T+⋯+Rajg[xa0j,ya0j,za0j]T = [pmx,pmy,pmz]T+j∑k=0{Rajg[xa0j,ya0j,za0j]T} (11) where is the mass of link and denotes the moment of inertia of link . and are body-fixed positions of the th COM and joint, respectively. Also, for the th revolute joint, a rotation matrix from frame to is defined as  Raja(j−1)=⎧⎪⎨⎪⎩Rx(θaj),%revolutejointabout$X\$−axisRy(θaj),revolute joint about Y-axisRz(θaj),revolute joint about Z-axis (12)

and for the th prismatic joint, the corresponding parameters of the revolute joint are replaced with

 ⎧⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩Raja(j−1)=I3×3xac0j=xac0j+θaj,prismatic joint about X-axisxa0j=xa0j+θaj,prismatic joint about X-axisyac0j=yac0j+θaj,prismatic joint about Y-axisya0j=ya0j+θaj,prismatic joint about Y-axiszac0j=zac0j+θaj,prismatic joint about Z-axisza0j=za0j+θaj,prismatic joint about Z-axis. (13)

The linear velocities of the th COM (of the link) and joint are the time-derivative of positions in (10) and (11), respectively. Then, we get

 vacj =˙pacj (14) vaj =˙paj. (15)

Additionally, the th angle velocities are computed as

 ωacj=ωaj=[Ra0mRaja0]Tωm+j∑k=0{[Rajak]T→˙θak} (16)

where represents the vector of joint velocity about its body-fixed axis. (16) is a simplified and very useful result for generalized dynamic modeling, e.g., calculating the kinetic energy.

###### Lemma 1.

Let be the vector of joint velocity about its body-fixed axis. Then the th angle velocity vector is equal to , where .

###### Proof.

The th angle velocity vector can be derived as follows:

 ωacj= [RmαgRmβmαRmγmβRmgRa0mRa1a0Ra2a1⋯Raja(j−1)Raja0]T[˙αm,0,0]T +[RmβmαRmγmβRa0mRa1a0Ra2a1⋯Raja(j−1)]T[0,˙βm,0]T +[RmγmβRa0mRa1a0Ra2a1⋯Raja(j−1)]T[0,0,˙γm]T+ [Ra1a0Ra2a1⋯Raja(j−1)Raja0]T→˙θa1+[Ra2a1⋯Raja(j−1)Raja1]T→˙θa2 +⋯+[Ra(j−1)a(j−2)Raja(j−1)Raja(j−2)]T→˙θa(j−1)+[Raja(j−1)]T→˙θ0j =[RmgRa0mRaja0]T[˙αm,0,0]T+[RmβmαRmγmβRa0mRaja0]T [0,˙βm,0]T+[RmγmβRa0mRaja0]T[0,0,˙γm]T+[Raja0]T→˙θa1 +⋯+[Raja(j−2)]T→˙θa(j−1)+[Raja(j−1)]T→˙θaj =[Ra0mRaja0]T[Rmg]T[˙αm,0,0]T+[Ra0mRaja0]T[Rmγmβ]T [Rmβmα]T[0,˙βm,0]T+[Ra0mRaja0]T[Rmγmβ]T[0,0,˙γm]T +[Raja0]T→˙θa1+⋯+[Raja(j−2)]T→˙θa(j−1)+[Raja(j−1)]T→˙θaj =[Ra0mRaja0]T⎧⎨⎩[Rmg]T[˙αm,0,0]T+[Rmγmβ]T[Rmβmα]T[0,˙βm,0]T+[Rmγmβ]T[0,0,˙γm]T⎫⎬⎭ωm +[Raja0]T→˙θa1+⋯+[Raja(j−2)]T→˙θa(j−1)+[Raja(j−1)]T→˙θaj =[Ra0mRaja0]Tωm+j∑k=0{[Rajak]T→˙θak}

where , , , and . ∎

Substituting the corresponding results in (14) and (16), the total kinetic energy is calculated as

 KE= 12mm[˙pmx,˙pmy,˙pmz][˙pmx,˙pmy,˙pmz]T+12ωTmImωm +12j∑k=0{makvTackvack+ωTackIakωack}. (17)

The total potential energy is computed as

 VE= mmgpmz+j∑k=0{makgpTack[0,0,1]T} +12(L−L0)TKc(L−L0) (18)

where represents the gravity acceleration, position vector is obtained using (10), and denotes the cable elastic potential energy with its variables defined in (8).

Based on the computed kinetic energy and potential energy in (17) and (18), respectively, the Lagrangian dynamic equation is calculated as

 LE=KE−VE. (19)

Then, the torque equations are calculated as

 τj =ddt(∂LE∂˙qj)−∂LE∂qj =ddt(∂KE∂˙qj)−∂KE∂qj+∂VE∂qj (20)

where represents the generalized force/torque applied to the dynamic system at joint to drive link .

Based on open-chain, (20) can be described by a new form:

 τj={[∇((∇LE˙q)j)q]T˙q+[∇((∇LE˙q)j)˙q]T¨q−(∇LEq)j} (21)

where and are defined as the gradient vectors of with respect to the vectors and , respectively. Compared with (20), (21) is easier to be implemented (i.e., programming). By arranging (21) and introducing a vector of unknown bounded disturbances , the equations of motion of the HCDR can be derived as

 (22)

where , , and represent the vectors of generalized coordinates, velocities, and accelerations, respectively. denotes the combined inertia matrix, represents the combined Coriolis and centripetal matrix, and denote the gravitational vector, respectively. and denote the vector of unknown bounded disturbances and forces/torques in generalized coordinates, respectively. Eq. (22) is the inverse dynamics model for HCDR, with , , and are inputs.

###### Proposition 1.

is a symmetric and positive definite matrix [Lin2001]

 ˙M=C+CT. (23)

Since the inertia matrix is symmetric and positive definite, then the forward dynamics can be computed as

 (24)

where the cable tension and robot arm joint torque are inputs.

Additionally, (22) can be arranged as

where and represent the vector of the mobile platform variables and the robot arm variables, respectively. It is clear that this equation includes the dynamics of the CDPR and the mounted robot arm.

In summary, some key features of the proposed modeling method can be highlighted as follows: 1) The derivation of the equations of motion (e.g., (10)–(16) and (21)) and the proof of (16) provide a very effective way to find items for generalized system modeling. 2) Traditionally, based on the rule of Standard Denavit-Hartenberg (DH) parameters [Denavit1955], a revolute joint must rotate about its -axis. Sometimes, it is inconvenient or impossible to find DH parameters (e.g., rotate about -axis or -axis). The proposed method avoids this drawback, i.e., it is unnecessary to follow DH configurations, and can be applied to any coordinate frames (e.g., about -axis, -axis, or -axis), including revolute and prismatic joints. 3) The above modeling approach in this section can be easily extended to other types of hybrid robots by changing structure matrix in (5) based on their configurations, e.g., robot arm(s) mounted on an aircraft platform [Tardella2016, PRODRONE2016].

### Ii-C Redundancy Resolution

Cable-driven robots (as shown in Fig. 1) can be categorized into under-actuated, fully-actuated, and over-actuated [Corke2011]. The first two types of robots denote the number of driven cables is no more than the DOF of a robot , i.e., ; the third type of robots represents the number of driven cables is more than the DOF of a robot n, i.e., . Then, the value of represents the degree of redundancy (DOR). When redundancy problems exist, there are infinite solutions for kinematics, which make the motion planning challenging [Taghirad2011]. Usually, redundancy resolution (i.e., over-actuated) problems are more general for cable-driven robots and can be solved only using pseudo-inverse approach [Corke2011], but the solutions are not optimal. Some other approaches are also available, such as a combination of pseudo-inverse and null-space method [Corke2011, Mendez2014, Behzadipour2006], damped least-squares approach [J.Li2017], and energy-based method [J.Li2017]. In this paper, we use the combined method [Corke2011, Mendez2014, Behzadipour2006] to address the redundancy resolution problem.

When , , and are given, can be computed using (9) or (22). Then, the cable tension is calculate as

 T=A+mτm=ATm(AmATm)−1τm (26)

where represents the pseudo-inverse of matrix . In (26), the elements of the cable tension might be negative. However, in practice, they cannot drive the mobile platform if they are negative. The redundancy resolution of the cable tension can be formulated as

 T=ATm(AmATm)−1τm+NAλ (27)

where represents the null space of structure matrix ( is calculated using (5)), and is a vector of arbitrary values. In (27), belongs to the null space of , since it can be described as . The expression denotes antagonistic cable tensions. The cable tension increases if all the antagonistic cable tensions are positive. Hence, the vector can be optimized (e.g., using the stiffness optimization method in the next section) to ensure that all the cable tensions are positive.

### Ii-D Stiffness Optimization

To solve the above problem of selecting , a stiffness maximization method is proposed as below: consider the same condition as (26), the stiffness matrix is defined as

 K:= d(AmT)dPm=dAmdPmT+AmdTdPm=dAmdPmT+Am(dTdL) (dLdPm)=dAmdPmT+AmKcATm=:KT+Kk (28)

where