kinematic modeling and trajectory tracking control of an ......simulated hyper-redundant robot...

8
IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JANUARY 2020 1 Kinematic Modeling and Trajectory Tracking Control of an Octopus-Inspired Hyper-Redundant Robot Amir Salimi Lafmejani 1 , Azadeh Doroudchi 1,, Hamed Farivarnejad 2,, Ximin He 5 , Daniel Aukes 4 , Matthew M. Peet 2 , Hamidreza Marvi 2 , Rebecca E. Fisher 3 , and Spring Berman 2 Abstract—This paper addresses the kinematic modeling and control of hyper-redundant robots inspired by the octopus arm. We propose a discrete multi-segment model in which each segment is a 6-DoF Gough-Stewart parallel platform. Our model is novel in that it can reproduce all generic motions of an octopus arm, including elongation, shortening, bending, and particularly twisting, which is usually not included in such models, while enforcing the constant-volume property of the octopus arm. We use an approach that is inspired by the unique decentralized nervous system of the octopus arm to overcome challenges in solving the Inverse Kinematics (IK) problem, including the large number of solutions for this problem and the impracticality of nu- merical methods for real-time applications. We apply the pseudo- inverse Jacobian method to design a kinematic controller that drives the tip of the hyper-redundant robot to track a reference trajectory. We evaluate our proposed model and controller in simulation for a variety of 3D reference trajectories: a straight line, an ellipse, a sinusoidal path, and trajectories that emulate octopus-like reaching and fetching movements. The tip of the simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less than 0.3% of the robot’s initial length, demonstrating the effectiveness of our modeling and control approaches. Index Terms—Redundant Robots, Parallel Robots, Underactu- ated Robots, Motion and Path Planning, Kinematics I. I NTRODUCTION O CTOPUSES are intelligent, behaviorally complex inver- tebrates with eight continuously deformable arms. Due to their versatile motions, octopus arms provide a source of inspiration for the design of extensible hyper-redundant Manuscript received: September 10, 2019; Revised December 18, 2019; Accepted January 28, 2020. This paper was recommended for publication by Editor Kyu-Jin Cho upon evaluation of the Associate Editor and Reviewers’ comments. This work was supported by Office of Naval Research Award N00014-17-1-2117 and by the Arizona State University Global Security Initiative. 1 A. Salimi Lafmejani and A. Doroudchi are with the School of Electrical, Computer and Energy Engineering, Arizona State University (ASU), Tempe, AZ, 85287 {asalimil, adoroudc}@asu.edu. 2 H. Farivarnejad, S. Berman, H. Marvi, and M. M. Peet are with the School for Engineering of Matter, Transport and Energy, ASU, Tempe, AZ 85287 {hamed.farivarnejad, spring.berman, hmarvi, mpeet}@asu.edu. 3 R. E. Fisher is with the Department of Basic Medical Sci- ences, University of Arizona College of Medicine-Phoenix, Phoenix, AZ 85004 and the School of Life Sciences, ASU, Tempe, AZ 85287 {[email protected]}. 4 D. Aukes is with the Polytechnic School, ASU, Mesa, AZ 85212 {[email protected]}. 5 X. He is with the Department of Materials Science and Engineering, Uni- versity of California, Los Angeles, CA 90095 {[email protected]}. These authors contributed equally to the paper. Digital Object Identifier (DOI): see top of this page. robotic manipulators [1], [2]. The high-dimensional config- uration space of a hyper-redundant robot enables it to nav- igate and perform dexterous manipulations in unstructured environments. However, this high degree of reconfigurabil- ity poses challenges for the modeling and control of such robots. Kinematic models of hyper-redundant robots differ significantly from models of conventional rigid-link robots due to their intrinsic continuous, complex, and highly compliant deformations. Whereas rigid-link robots can change their con- figuration only at a finite set of locations along their structure, hyper-redundant robots can change their configuration at any location; this property must be reflected in the kinematic modeling procedure [2]. Existing kinematic modeling approaches for octopus- inspired hyper-redundant robots fall into three main cate- gories [3]: (1) Constant Curvature (CC) approaches, (2) Non- Constant Curvature (NCC) (also called Variable-Curvature (VC)) approaches, and (3) discrete approaches. In the first method, the robot is represented as a continuous curve in 3D space that overlaps the arcs of a set of circles. This method is based on the CC assumption, which permits the use of integral representations and direct continuum methods in the kinematic modeling [4]. Therefore, the transformation matrices along the hyper-redundant robot backbone can be obtained from conventional techniques such as the Denavit- Hartenberg (DH) method, homogeneous transformations, ex- ponential coordinates (screw theory), Frenet-Serret frames, and integral representations [4]. The main disadvantage of this method is that it does not model the torsion that is contributed by each of the robot’s segments. The second approach compensates for limitations of the first approach; specifically, it lacks representation singularities and does not require the simplifying CC assumption. The NCC property of octopus-inspired hyper-redundant robots is more suited to the use of modal approaches [5] for kinematic modeling of hyper-redundant mechanisms. In these approaches, a sliding frame is defined at each point along the backbone of the hyper-redundant robot, and the position and orientation of the frame are represented as functions of curvature vectors. In the third approach, which was introduced in [2], curved sections of the hyper-redundant robot are approximated as rigid links, enabling the use of existing kinematic models of conventional rigid robots [6]. Each curved section of the robot is approximated as a rigid-link equivalent Revolute- Prismatic-Revolute (RPR) mechanism, which has two pairs of revolute joints located on its base and end-effector. Each pair is connected by a prismatic joint. Given the complexity of modeling torsional and shearing

Upload: others

Post on 22-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JANUARY 2020 1

Kinematic Modeling and Trajectory Tracking Control of anOctopus-Inspired Hyper-Redundant Robot

Amir Salimi Lafmejani1, Azadeh Doroudchi1,†, Hamed Farivarnejad2,†, Ximin He5, Daniel Aukes4,Matthew M. Peet2, Hamidreza Marvi2, Rebecca E. Fisher3, and Spring Berman2

Abstract—This paper addresses the kinematic modeling andcontrol of hyper-redundant robots inspired by the octopus arm.We propose a discrete multi-segment model in which eachsegment is a 6-DoF Gough-Stewart parallel platform. Our modelis novel in that it can reproduce all generic motions of an octopusarm, including elongation, shortening, bending, and particularlytwisting, which is usually not included in such models, whileenforcing the constant-volume property of the octopus arm. Weuse an approach that is inspired by the unique decentralizednervous system of the octopus arm to overcome challenges insolving the Inverse Kinematics (IK) problem, including the largenumber of solutions for this problem and the impracticality of nu-merical methods for real-time applications. We apply the pseudo-inverse Jacobian method to design a kinematic controller thatdrives the tip of the hyper-redundant robot to track a referencetrajectory. We evaluate our proposed model and controller insimulation for a variety of 3D reference trajectories: a straightline, an ellipse, a sinusoidal path, and trajectories that emulateoctopus-like reaching and fetching movements. The tip of thesimulated hyper-redundant robot tracks the reference trajectorieswith average root-mean-square errors that are less than 0.3% ofthe robot’s initial length, demonstrating the effectiveness of ourmodeling and control approaches.

Index Terms—Redundant Robots, Parallel Robots, Underactu-ated Robots, Motion and Path Planning, Kinematics

I. INTRODUCTION

OCTOPUSES are intelligent, behaviorally complex inver-tebrates with eight continuously deformable arms. Due

to their versatile motions, octopus arms provide a sourceof inspiration for the design of extensible hyper-redundant

Manuscript received: September 10, 2019; Revised December 18, 2019;Accepted January 28, 2020.

This paper was recommended for publication by Editor Kyu-Jin Cho uponevaluation of the Associate Editor and Reviewers’ comments. This work wassupported by Office of Naval Research Award N00014-17-1-2117 and by theArizona State University Global Security Initiative.

1A. Salimi Lafmejani and A. Doroudchi are with the School of Electrical,Computer and Energy Engineering, Arizona State University (ASU), Tempe,AZ, 85287 {asalimil, adoroudc}@asu.edu.

2H. Farivarnejad, S. Berman, H. Marvi, and M. M. Peet are withthe School for Engineering of Matter, Transport and Energy, ASU,Tempe, AZ 85287 {hamed.farivarnejad, spring.berman,hmarvi, mpeet}@asu.edu.

3R. E. Fisher is with the Department of Basic Medical Sci-ences, University of Arizona College of Medicine-Phoenix, Phoenix,AZ 85004 and the School of Life Sciences, ASU, Tempe, AZ 85287{[email protected]}.

4D. Aukes is with the Polytechnic School, ASU, Mesa, AZ 85212{[email protected]}.

5X. He is with the Department of Materials Science and Engineering, Uni-versity of California, Los Angeles, CA 90095 {[email protected]}.

†These authors contributed equally to the paper.Digital Object Identifier (DOI): see top of this page.

robotic manipulators [1], [2]. The high-dimensional config-uration space of a hyper-redundant robot enables it to nav-igate and perform dexterous manipulations in unstructuredenvironments. However, this high degree of reconfigurabil-ity poses challenges for the modeling and control of suchrobots. Kinematic models of hyper-redundant robots differsignificantly from models of conventional rigid-link robots dueto their intrinsic continuous, complex, and highly compliantdeformations. Whereas rigid-link robots can change their con-figuration only at a finite set of locations along their structure,hyper-redundant robots can change their configuration at anylocation; this property must be reflected in the kinematicmodeling procedure [2].

Existing kinematic modeling approaches for octopus-inspired hyper-redundant robots fall into three main cate-gories [3]: (1) Constant Curvature (CC) approaches, (2) Non-Constant Curvature (NCC) (also called Variable-Curvature(VC)) approaches, and (3) discrete approaches. In the firstmethod, the robot is represented as a continuous curve in3D space that overlaps the arcs of a set of circles. Thismethod is based on the CC assumption, which permits theuse of integral representations and direct continuum methodsin the kinematic modeling [4]. Therefore, the transformationmatrices along the hyper-redundant robot backbone can beobtained from conventional techniques such as the Denavit-Hartenberg (DH) method, homogeneous transformations, ex-ponential coordinates (screw theory), Frenet-Serret frames,and integral representations [4]. The main disadvantage ofthis method is that it does not model the torsion that iscontributed by each of the robot’s segments. The secondapproach compensates for limitations of the first approach;specifically, it lacks representation singularities and does notrequire the simplifying CC assumption. The NCC propertyof octopus-inspired hyper-redundant robots is more suited tothe use of modal approaches [5] for kinematic modeling ofhyper-redundant mechanisms. In these approaches, a slidingframe is defined at each point along the backbone of thehyper-redundant robot, and the position and orientation ofthe frame are represented as functions of curvature vectors.In the third approach, which was introduced in [2], curvedsections of the hyper-redundant robot are approximated asrigid links, enabling the use of existing kinematic modelsof conventional rigid robots [6]. Each curved section of therobot is approximated as a rigid-link equivalent Revolute-Prismatic-Revolute (RPR) mechanism, which has two pairsof revolute joints located on its base and end-effector. Eachpair is connected by a prismatic joint.

Given the complexity of modeling torsional and shearing

Page 2: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

2 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JANUARY 2020

movements and limitations on the mechanical design of hyper-redundant robots, most prior kinematic models of octopus-inspired hyper-redundant robots do not reproduce the con-trolled twisting and shearing motions of octopus arms [6], [7].A model of a multi-segment hyper-redundant robot based onthe anatomy of octopus arm musculature is proposed in [8],although it does not include the effects of oblique musclesthat produce torsion in the arm. A kinematic model of a hyper-redundant robot backbone that reproduces torsional motions ispresented in [9], which demonstrates that uncontrolled torsiondue to gravity and other external forces can produce largetip-tracking errors, even for relatively small values of torsion.Moreover, the kinematic models in [5], [10] do not include theconstraint that the volume of an octopus arm always remainsconstant, called the isovolumetric property [6], [11].

Existing methods for kinematic control of hyper-redundantrobots can be applied to octopus-inspired hyper-redundantrobots, but many of them are constrained by their compu-tational complexity and limited to robot configurations in 1Dor 2D space. One widely studied approach is the fitting al-gorithm [12], in which the configuration of a hyper-redundantrobot is fit onto a continuously-curved backbone. This methodis sufficient for robots with only universal joints, but it iscomputationally intensive. In [13], a modular Jacobian-basedcontrol scheme is proposed to drive a hyper-redundant robotto a target backbone configuration. A modal-based approach isused in [14] for a path planning algorithm for a multi-segmenthyper-redundant robot. In [15], a decentralized control ap-proach is presented for a 1D hyper-redundant robot composedof segments with local sensing, actuation, and control, andis validated in simulation. Furthermore, learning-based meth-ods have been proposed to tackle this control problem. Forexample, an online reinforcement learning algorithm is usedto control an octopus-like hyper-redundant robot in [16]. Thisapproach is implemented in simulation for a 2D model of therobot and would not be efficient in real-time applications dueto its computational complexity. A more computationally effi-cient approach for kinematic control of hyper-redundant robotsis the widely-used pseudo-inverse Jacobian method [17], [18].This method utilizes the Moore-Penrose pseudoinverse of theJacobian matrix of a hyper-redundant robot to compute thejoint velocities with minimum magnitudes that achieve thecontrol objective. Thus, this approach can be employed togenerate local solutions to the differential kinematics for eachsegment of a hyper-redundant robot. Moreover, this method iscompatible with conventional methods for controlling hyper-redundant rigid robots [19].

In this paper, we develop a kinematic model and trajectorytracking controller for a segmented hyper-redundant robotthat is inspired by the octopus arm. Our kinematic modelis novel in that it reproduces all fundamental motions of anoctopus arm, including twisting movements, while enforcingthe isovolumetric property of the arm. We derive the kinematicmodel of the robot in Section II. In Section II-A, we firstmodel each segment of the robot as a 6-DoF Gough-Stewartparallel platform [20], [21], and then model the entire multi-segment robot, which can replicate the diverse motions thatare generated by an octopus arm. We discuss the solutions

of the Forward Kinematics (FK) and Inverse Kinematics (IK)problems for the robot in Section II-B. In order to solve theIK problem, we employ a technique similar to the DistributedInverse Kinematics approach in [22], which is inspired by thepropagation of sensorimotor information between neighboringsegments of an octopus arm. As described above, most existingstrategies for control of hyper-redundant robots employ numer-ical methods for solving the IK problem that are too com-putationally demanding to implement for real-time control.Our proposed methodology for designing a position regulatorand trajectory tracking controller is based on the pseudo-inverse Jacobian method, which is described in Section III.In Section IV, we validate our modeling and control approachthrough simulations of a segmented hyper-redundant robot thattracks five different 3D reference trajectories.

II. KINEMATIC MODEL OF HYPER-REDUNDANT ROBOT

In this section, we derive the kinematic model of an octopus-inspired multi-segment hyper-redundant robot in which eachsegment is a 6-DoF Gough-Stewart (GS) platform [20]. Wefirst derive the kinematic model of a single-segment 6-DoF GSplatform without considering the active prismatic joints on itsbase and end-effector. Then, we include a model of the radialprismatic joints as kinematic constraints that maintain the iso-volumetric property. As in [20], we represent the kinematics ofthe entire hyper-redundant robot by generalizing the kinematicequations of a single-segment 6-DoF GS platform to a multi-segment hyper-redundant robot. Moreover, we describe the FKand IK problems for our proposed model of the multi-segmenthyper-redundant robot.

A. Gough-Stewart Platform Model of Robot

We model each segment of the hyper-redundant robot asa 6-DoF UPS Gough-Stewart (GS) platform [20], shown inFig. 1. This 6-DoF parallel platform consists of twelve activeprismatic joints, six passive universal joints, and six passivespherical joints. Six longitudinal prismatic joints connect theuniversal joints on the base platform to the spherical joints onthe end-effector. The radial prismatic joints at the base and theend-effector of each segment are rotated 120◦ with respect tothe local coordinate frame, as shown in Fig. 1.

The 6-DoF GS platform in Fig. 1 can generate all possi-ble reconfigurations of each segment of the hyper-redundantrobot [23], [24]; i.e., it can produce three rotations around thesegment’s Xa, Ya, and Za axes and three translations alongthese axes. Pure elongations and contractions of the segmentalong the Za axis are generated when all six longitudinal pris-matic joints lengthen or shorten simultaneously by the sameamount. If these lengths change by different amounts, then thesegment’s end-effector rotates, causing the segment to bend.As a special case, torsional motion about the segment’s Za

axis is produced when every other longitudinal prismatic jointlengthens by the same amount, while the other longitudinalprismatic joints shorten by this amount.

Since the single-segment model captures all possible rota-tions and translations of an individual segment, the model ofthe entire multi-segment robot can reproduce four fundamental

Page 3: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

SALIMI LAFMEJANI et al.: KINEMATIC MODELING AND TRAJECTORY TRACKING CONTROL OF A HYPER-REDUNDANT ROBOT 3

𝑋𝑎𝑌𝑎

𝑍𝑎

𝑋𝑏𝑌𝑏

𝑍𝑏

Longitudinal

prismatic joint

Spherical joint

Base

End-effector

𝑎1, 𝑎2

𝑎3, 𝑎4

𝑎5, 𝑎6

𝑋𝑎 , 𝑋𝑏

𝑌𝑎 , 𝑌𝑏

𝑟𝑎

𝑟𝑏

𝜋

3𝜋

3

𝑏5, 𝑏6

𝑏1, 𝑏2

𝑏3, 𝑏4

Universal joint

Radial

prismatic

joint

Fig. 1: Model of a single segment of the hyper-redundant robotbased on a UPS 6-DoF Gough-Stewart (GS) platform.

Arm’s tip

(End-effector)

Segment 𝑖

Backbone

Arm’s Base

Segment 𝑁

Segment 1

Global frame

Local frame

Fig. 2: Multi-segment model of an octopus-inspired hyper-redundant robot composed of a series of 6-DoF GS platforms.

motions of an octopus arm: bending, elongation, shortening,and twisting [11]. Figure 2 illustrates a model of the hyper-redundant robot as a series of identical interconnected seg-ments, each modeled as the 6-DoF GS platform shown inFig. 1. The base platform of the i-th segment is the end-effector of the (i − 1)-th segment. We make the followingassumptions about the capabilities of the segments: (1) Eachsegment can measure the 3D pose of its end-effector withrespect to its local coordinate frame, which is fixed to its base.(2) Each segment can transmit these measurements to its twoadjacent segments, similar to the propagation of sensorimotorinformation through the decentralized nervous system of anoctopus arm [25]. (3) The 3D pose of the robot’s tip withrespect to the global coordinate frame can be measured,analogous to the use of vision feedback in the octopus [26].

Let k denote the index of the joints and i = 1, 2, ..., N bethe indices of the segments, where the end-effector of the N -th segment is the distal tip of the robot. We define Gpi ∈ R3

as the position of the end-effector of the i-th segment in theglobal coordinate frame G. The rotation matrix GRi ∈ R3×3

determines the orientation of the i-th segment’s end-effector inthe global frame. The vector Gak,i ∈ R3 denotes the positionof the k-th universal joint on the base of i-th segment in theglobal frame, and ibk,i ∈ R3 denotes the position of the k-th spherical joint on the end-effector of the i-th segment inthe local coordinate frame of the i-th segment. The vectorGlk,i ∈ R3 is the position of the k-th longitudinal prismaticjoint of the i-th segment in the global frame. The position

vector Gpi is calculated as:

Gpi =Gak,i +

Glk,i − GRiibk,i. (1)

The pose of each segment in the global frame can be deter-mined by the corresponding position vector Gpi and rotationmatrix GRi. The position vector i−1pi and rotation matrixi−1Ri for the i-th segment in the coordinate frame attachedto the end-effector of segment i− 1 are defined as:

i−1pi =GR−1i−1

Gpii−1Ri =

GR−1i−1GRi,

(2)

where GR−1i−1 is the inverse of the rotation matrix GRi−1. Asin [20], by rearranging Eq. (1) to solve for Glk,i, using Eq. (2)to substitute in the position vector and rotation matrix that aredefined in local coordinate frames, and right-multiplying theleft and right sides of the resulting equation by their respectivetransposes, we can obtain the lengths of the longitudinalprismatic joints, lk,i, from the following equation:

GlTk,iGlk,i = l2k,i

= (i−1pi +i−1bT

k,ii−1bk,i +

i−1aTk,i

i−1ak,i − 2i−1pTi

i−1ak,i + 2i−1pTii−1bk,i − 2i−1bT

k,ii−1ak,i)

1/2.

(3)

Let rai and rbi denote the radii of the base and end-effector,respectively, of the i-th segment. Let iA and iB denotematrices whose columns are the position vectors i−1ak,i andi−1bk,i represented in the frame attached to the end-effectorof the (i− 1)-th segment. These matrices are defined as:

iA = i−1B = rai

−√32 −

√32 0 0

√32

√32

12

12 −1 −1 1

212

0 0 0 0 0 0

iB = i+1A = rbi

0 0 −√32 −

√32

√32

√32

1 1 − 12 − 1

2 − 12 − 1

20 0 0 0 0 0

.(4)

We define α as the ratio between the radius of the i-thsegment’s base, rai, and the radius of its end-effector, rbi:

α =rbirai

, α ∈ (0 1]. (5)

In order to enforce the isovolumetric property in the kine-matic model of the robot, the lengths of the radial prismaticjoints are determined according to the lengths of the longitudi-nal prismatic joints so as to keep the volume of each segmentconstant. Since the total volume of the robot is the sum of allthe segment volumes, the total robot volume remains constantas well. The volume of the i-th segment, denoted by si, canbe computed as:

si =π

3||i−1pi||r2ia(1 + α+ α2). (6)

To keep the volume si of the i-th segment constant, the radiusof its base should be:

ria =1√π

[3si

||i−1pi||(1 + α+ α2)

] 12

. (7)

Page 4: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

4 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JANUARY 2020

B. Forward and Inverse Kinematic Problems

Here, we discuss possible solutions to the FK and IKproblems for the proposed multi-segment hyper-redundantrobot. The transformation matrix of the robot’s tip, i.e.,the N -th segment’s end-effector, represented in the globalframe, GTN ∈ R4×4, can be calculated by consecutive post-multiplication of the transformation matrix of each segment’send-effector, i−1Ti, represented in the local frame attached tothe end-effector of the segment i− 1:

GTN = GT1 · 1T2 · ... · N−1TN . (8)

The solution of the FK problem is straightforward to computeif each segment i is able to measure its local transformationmatrix, i−1Ti, as we specified in assumption (1). In otherwords, the pose of the robot’s tip can be computed fromthe pose of each segment’s end-effector, expressed in thesegment’s local coordinate frame.

The IK problem for the robot is defined as finding theconfiguration of the entire robot, i.e., all transformation ma-trices on the right-hand side of Eq. (8), given the pose ofthe robot’s tip, GTN . This problem has a large numberof solutions due to the kinematic hyper-redundancy of therobot. Different methods of solving the IK problem for amulti-segment hyper-redundant robot are discussed in [5].These approaches utilize computationally intensive numericalmethods and can converge to physically impossible solutions.Moreover, they require simplifying assumptions and approx-imations that preclude the reproduction of some importantfeatures of the octopus arm. We adopt the Distributed InverseKinematics (DIK) approach presented in [22], [27] in orderto deal with the challenge of solving the IK problem andcompute the configuration of the robot, given the pose of therobot’s tip. In [22], the authors introduce this approach fora multi-segment planar robot composed of segments that canautonomously change their curvature using local computation,sensing, actuation, and communication. Using this method, thesolution to the IK problem is determined by utilizing the com-munication between the segments to share the transformationmatrices and curvatures between neighboring segments of therobot.

III. KINEMATIC CONTROL OF ROBOT MOTION

In this section, we describe the calculation of the Ja-cobian matrix of our multi-segment hyper-redundant robotand propose a differential kinematic control approach forthe robot based on the pseudo-inverse Jacobian method [18].The objective is to design controllers for regulation (positioncontrol) and trajectory tracking problems. While we do notimpose limits on the joint torques here, such constraints couldbe included in the robot control strategy as a second prioritizedtask [28].

A. Jacobian Matrix of the Robot

From assumptions (1) and (2) in Section II-A, the i-thsegment can measure its position vector i−1pi and rotationmatrix i−1Ri, both represented in its local coordinate frame,and can communicate these measurements to its neighboring

segments, segments i − 1 and i + 1. We define the pose ofthe robot’s N -th segment as X := [GpTtip δT ]T ∈ R6, whereGptip ∈ R3 is the position of the robot’s tip in the globalframe, and δ = [ψ θ φ]T ∈ R3 is the vector of Eulerangles representing the orientation of the N -th segment. Wealso denote the joint space of the robot by Q ∈ R6N , whichis defined as

Q = [l1,1 . . . l6,1 l1,2 . . . l6,2 . . . . . . l1,N . . . l6,N ]T. (9)

The twist of the robot’s tip, X tip, is mapped to the velocitiesof all active prismatic joints, Q, by the Jacobian matrix of theentire robot, Jrobot ∈ R6×6N :

X tip = JrobotQ. (10)

The Jacobian matrix Jrobot can be calculated as follows. LetJi ∈ R6×6, i = 1, 2, ..., N , denote the Jacobian matrix andi−1sk,i denote the unit vector that indicates the direction ofthe prismatic joints of the i-th segment in its local coordinateframe. As in [20], this matrix is computed as

Ji =[i−1sk,i

i−1bk,i × i−1sk,i]−T

. (11)

We define Gpi ∈ R3×3 as the cross product matrix of theposition vector Gpi. The adjoint matrix for the i-th segment,AdTi

∈ R6×6, is then given by [29]

AdTi=

[GRi

GpiGRi

03×3GRi

]. (12)

Given these matrices, the Jacobian matrix of the robot can bewritten as

Jrobot =[J1 AdT1

J2 ... AdTN−1JN

]. (13)

As Eq. (12) shows, GRi and Gpi are required to calculatethe corresponding adjoint matrix. This information is con-tained in the transformation matrix of each segment i in theglobal coordinate frame, defined as

GTi =

[GRi

Gpi01×3 1

]. (14)

From assumption (3) in Section II-A, the transformation matrixof the robot’s tip in the global frame, GTtip, is known.Since each segment i can communicate its measurements ofi−1pi and i−1Ri to its neighboring segments, as ensuredby assumption (2), the transformation matrix i−1Ti can becomputed by each segment i. Thus, the robot can calculatethe transformation matrix of each segment in the global frameas follows:

GTi−1 = GTi · i−1T−1i . (15)

Therefore, the transformation matrix corresponding to eachsegment in the global coordinate frame can be found by firstsolving Eq. (15) for segment N − 1, then for segment N − 2,and so on until the transformation matrix of each segment fromthe tip to the base of the robot is computed. Consequently,we can readily calculate the Jacobian matrix of the robot inEq. (13).

Page 5: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

SALIMI LAFMEJANI et al.: KINEMATIC MODELING AND TRAJECTORY TRACKING CONTROL OF A HYPER-REDUNDANT ROBOT 5

B. Position Control

Here, we design a regulator that stabilizes the position ofthe tip of the robot to a fixed point in the global frame G. Wedefine the error between the position of the tip, Gptip, and thedesired point, Gpd, as

E = Gptip − Gpd. (16)

We decompose Jrobot into upper and lower halves, which aredenoted by Jv ∈ R3×6N and Jω ∈ R3×6N , respectively. Theformer matrix is associated with the linear velocity of therobot’s tip (Gptip = JvQ), and the latter matrix is associatedwith the angular velocity of the N -th segment (δ = JωQ).Defining K ∈ R>0 as a positive gain and J†v ∈ R6N×3 as theMoore-Penrose inverse of Jv , we can design the control lawfor the position regulation problem as:

Q = −KJ†vE. (17)

Substituting the control law in Eq. (17) into the kinematics ofthe robot in Eq. (10), and considering the fact that Gpd = 0,the equation of the closed-loop system is obtained as

E = −KJvJ†vE. (18)

We can confirm that the null space of J†v is empty. Thus, theonly solution for the equation J†vE = 0 is E = 0, whichshows that the origin is the only equilibrium point for Eq.(18). We can now use the identity JvJ

†v = I and rewrite the

closed-loop system in Eq. (18) as

E +KE = 0, (19)

which is a globally exponentially stable system for any pos-itive K. This shows that the tip of the robot exponentiallyconverges to the desired point from any initial position withthe proposed controller. The controller gain K governs therate of convergence of the system’s trajectories to the desiredposition. The proposed controller drives the tip of the robot tothe target point faster with larger values of K.

C. Trajectory Tracking

We use the position regulator (17) in a switching strategythat controls the robot to track a predefined reference trajectorywith its tip. The reference trajectory is discretized into a setof m points. The objective is to drive the tip of the robotto a position within a radius γ ∈ R>0 of each point, whichrepresents the acceptable tracking error. The set of the desiredpoints is denoted by P and is defined as

P ={Gp

(1)d ,Gp

(2)d , . . . ,Gp

(m)d

}, (20)

where Gp(1)d and Gp

(m)d represent the start and the end points

of the reference trajectory, respectively, and the others areintermediate points along the trajectory. A γ-neighborhoodof point Gp

(i)d is defined as a ball of radius γ centered at

this point and is denoted by B(Gp(i)d , γ). The controller firststabilizes the position of the robot’s tip to the start point ofthe trajectory. Once the tip enters the ball B(Gp(1)d , γ), thecontroller redefines the desired point as the second point,

Gp(2)d , and drives the tip toward this point until it enters

the ball B(Gp(2)d , γ). This procedure is repeated for eachsuccessive point in P until the robot’s tip enters the γ-neighborhood of the end point, Gp

(m)d . This switching control

strategy can be written as:

Q =

−KJ†v

(Gptip − Gp

(i)d

), Gptip /∈ B(Gp

(i)d , γ)

−KJ†v

(Gptip − Gp

(i+1)d

), Gptip ∈ B(Gp

(i)d , γ).

(21)

Thus, the closed-loop system behaves like a switching systemin which each subsystem is given by

E(i)

+KE(i) = 0, (22)

where E(i) = Gptip − Gp(i)d is the position error associated

with the i-th subsystem. Equation (22) is linear and can besolved for E(i) as

E(i)(t) = E(i)ti e−K(t−ti), ∀t ∈ [ti, ti+1), (23)

where ti is the time at which subsystem i becomes active, andE

(i)ti denotes the value of E(i)(t) at time t = ti. This solution

converges exponentially to the desired equilibrium (E(i) = 0),which consequently shows that the robot’s tip will converge infinite time to a neighborhood around the desired point Gp

(i)d

and that the trajectories of the tip are bounded. Equation (23)also holds for the norm of the error:

||E(i)(t)|| = ||E(i)ti ||e

−K(t−ti), ∀t ∈ [ti, ti+1). (24)

We define the dwell time for the i-th subsystem to reachB(Gp(i)d , γ) as Ti := ti − ti−1 [30]. The dwell time can becalculated by setting ||E(i)(t)|| equal to γ in Eq. (24) andsolving this equation for Ti:

Ti = −1

Klog

||E(i)ti ||

), i = 1, ...,m. (25)

This equation shows that the parameter γ and the intermediatepoints of the reference trajectory must be chosen such thatγ ≤ ||E(i)

ti || for each subsystem. Otherwise, ti would besmaller than ti−1, which would imply the stability of thesystem backward in time, and consequently, its instabilityforward in time. As in the position control task, the controllergain K determines the rate of the error convergence to zero foreach subsystem. Moreover, since

∑Ni=1 Ti is equal to the task

completion time, and each time Ti is inversely proportional toK, the gain K can be selected to ensure that the robot’s tiptracks a desired trajectory within a specified amount of time.An analytical procedure could be developed to select a valueof K that guarantees particular time response characteristicsfor a given desired trajectory based on the parameters N , m,α, and γ, although this is beyond the scope of this paper.

IV. SIMULATION RESULTS

We validated our kinematic model and controller throughMATLAB simulations of a multi-segment hyper-redundantrobot that tracks five 3D reference trajectories with the tip

Page 6: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

6 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JANUARY 2020

of its arm. The first three reference trajectories are defined asa straight line, an ellipse, and a sinusoidal. These three trajec-tories are given by the following three parametric equations,respectively, in terms of time t ∈ [0, 1]:

Gpd,line = [3t− 0.5 3t+ 0.5 t+ 6]T (26)Gpd,ellipse = [cos(2πt) sin(2πt) 4 + sin(2πt)]T (27)

Gpd,sinusoid = [sin(2πt) − 1 + 4t 5 + et sin(2πt)]T (28)

We also define two reference trajectories that qualitativelyreproduce the reaching and fetching motions of an octopusarm. These two trajectories are given by the following twoparametric equations, respectively, for t ∈ [0, 1]:

Gpd,reach = [3et − 5 0.5 cos(2πt) 1 + 6t]T (29)Gpd,fetch = [3e1−t−2 2 cos(2π(1−t)) 2+6(1−t)]T (30)

In order to track the reaching and fetching trajectories, therobot must perform a combination of elongation, contraction,bending, and twisting motions, requiring each segment toreconfigure along a combination of its six possible DoF. Thus,these two reference trajectories provide challenging test casesfor validating our tracking controller.

The number of segments significantly affects the trackingperformance of the simulated robot and the calculation timeof the controller. In Table I, we list this calculation time ona computer with 64-bit Intel(R) Core(TM) i7-8750H CPU fordifferent numbers of segments. Since the robot did not exhibiteffective performance at position and tracking control whenthe number of segments was lower than 15, we chose 20segments for the robot in our simulations. The following otherparameters and conditions were applied to all simulations.We defined m = 21 as the number of target positions forthe robot’s tip, including the start and the end points, alongeach reference trajectory. We set γ = 0.05 in Eq. (25). Theparameter α in Eq. (5), the ratio between the radii of eachsegment’s base and end-effector, was initially set to 0.095.The radius of the base of the robot and the initial lengthof the robot were 0.25 m and 5 m, respectively. Given theisovolumetric property described in Section II-A, all segmentsof the robot must maintain the same volume throughout eachsimulation. Since the total volume of the robot was distributedequally among its segments, the length of each segment wasdetermined by Eq. (6). As a result, the lengths of the segmentsincrease from the base of the robot (1st segment) to its tip (N -th segment), since the radii of the segments decrease frombase to tip in order to maintain the same volume for allsegments and to enforce the isovolumetric property describedin Section II-A. We empirically set the controller gain toK = 20, which produced accurate tracking in all simulations.

Figures 3a, 4a, 5a, and 6a plot the initial and final config-urations of the simulated robot and several of its intermediateconfigurations, shown in a paler shade, as it tracks eachreference trajectory in Eqs. (26)–(30). In all cases, the robotstarts in a vertical initial configuration. Each desired referencetrajectory is depicted as a red dashed line, and its start andend points are labeled. As shown in Fig. 3a, the robot exhibitsbending, elongation, and twisting motions along its length in

TABLE I: Calculation time of the proposed controller inmilliseconds (ms) for the simulated multi-segment robot withdifferent numbers of segments.

Number of segments 10 15 20 25 30Calculation time (ms) 32.14 77.48 91.17 135.84 192.66

order to track the desired linear trajectory. Figure 4a showsthe shortening, twisting, and bending of the robot that enablesit to track the desired elliptical trajectory. Tracking the desiredsinusoidal trajectory and performing reaching and fetchingtasks require the robot to exhibit all four fundamental octopus-like motions, as depicted in Figs. 5a and 6a. We evaluate theperformance of the robot at tracking each reference trajectoryby computing the average root-mean-square error (RMSE)between the reference trajectory and the trajectory of therobot’s tip, which are plotted over time in Figs. 3b, 4b, 5b, 6b,and 6c. In each figure, the colored dots indicate the sequenceof 21 target positions along the reference trajectory, and thecolored dashed lines show the simulated position of the robot’stip. The average RMSE value for each reference trajectory isgiven in the captions of Figs. 3a, 4a, 5a, and 6a. These valuesare at most about 0.285% of the initial length of the robot,indicating the effectiveness of the control strategy.

V. CONCLUSION

We have proposed a novel discrete approach to kine-matic modeling of an octopus-inspired, multi-segment hyper-redundant robot. A bio-inspired solution that exploits the flowof information between interconnected segments is used todetermine the instantaneous configuration of the robot, giventhe tip’s pose, without solving the computationally expensiveIK problem for the robot. Future work will include developinga dynamic model for the robot and designing a control ap-proach based on task priorities [19] for the robot. Furthermore,a decentralized control approach will be developed in order toenable the robot to operate with autonomous functionality. Inthis decentralized framework, we can employ Linear MatrixInequality (LMI)-based optimal control approaches, such asH2 and H∞ methods, in order to attenuate the effects ofundesired exogenous inputs, such as actuation disturbancesand measurement noise, on the performance of the robot.

REFERENCES

[1] M. D. Grissom, V. Chitrakaran, D. Dienno, M. Csencits, M. Pritts,B. Jones, W. McMahan, D. Dawson, C. Rahn, and I. Walker, “Designand experimental testing of the OctArm soft robot manipulator,” inUnmanned Systems Technology VIII, vol. 6230. International Societyfor Optics and Photonics, 2006, p. 62301F.

[2] I. D. Walker, “Continuous backbone “continuum” robot manipulators,”ISRN Robotics, vol. 2013, 2013.

[3] J. Burgner-Kahrs, D. C. Rucker, and H. Choset, “Continuum robots formedical applications: A survey,” IEEE Transactions on Robotics, vol. 31,no. 6, pp. 1261–1280, 2015.

[4] R. J. Webster III and B. A. Jones, “Design and kinematic modelingof constant curvature continuum robots: A review,” The InternationalJournal of Robotics Research, vol. 29, no. 13, pp. 1661–1683, 2010.

[5] I. S. Godage, E. Guglielmino, D. T. Branson, G. A. Medrano-Cerda, andD. G. Caldwell, “Novel modal approach for kinematics of multisectioncontinuum arms,” in IEEE/RSJ International Conference on IntelligentRobots and Systems, 2011, pp. 1093–1098.

Page 7: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

SALIMI LAFMEJANI et al.: KINEMATIC MODELING AND TRAJECTORY TRACKING CONTROL OF A HYPER-REDUNDANT ROBOT 7

Start

End

Initial Configuration

Final

Configuration

Desired PathBending

Elongation

Twisting

(a)

Desired 𝑥

Desired 𝑦

Desired 𝑧

Tracked 𝑥tip

Tracked 𝑦tipTracked 𝑧tip

Start End

(b)

Fig. 3: (a) Snapshots of the simulated hyper-redundant robottracking the linear trajectory Eq. (26). Average tracking RMSE= 0.032 cm. (b) Time evolution of the desired position (x,y,z)and tracked position (xtip,ytip,ztip) of the robot’s tip.

[6] R. Kang, D. T. Branson, E. Guglielmino, and D. G. Caldwell, “Dynamicmodeling and control of an octopus inspired multiple continuum armrobot,” Computers & Mathematics with Applications, vol. 64, no. 5, pp.1004–1016, 2012.

[7] T. Zheng, D. T. Branson, R. Kang, M. Cianchetti, E. Guglielmino,M. Follador, G. A. Medrano-Cerda, I. S. Godage, and D. G. Caldwell,“Dynamic continuum arm model for use with underwater robotic manip-ulators inspired by Octopus vulgaris,” in IEEE International Conferenceon Robotics and Automation. IEEE, 2012, pp. 5289–5294.

[8] T. Zheng, D. T. Branson, E. Guglielmino, and D. G. Caldwell, “A 3ddynamic model for continuum robots inspired by an octopus arm,” inIEEE International Conference on Robotics and Automation. IEEE,2011, pp. 3652–3657.

[9] I. D. Walker, “The importance of torsion in robot backbones,” RecentAdvances in Circuits, Systems, Signal Processing and Communications.World Scientific and Engineering Academy and Society, vol. 4, pp. 25–31, 2014.

[10] I. S. Godage, D. T. Branson, E. Guglielmino, and D. G. Caldwell,“Path planning for multisection continuum arms,” in IEEE InternationalConference on Mechatronics and Automation, 2012, pp. 1208–1213.

[11] W. M. Kier, “The musculature of coleoid cephalopod arms and tenta-cles,” Frontiers in Cell and Developmental Biology, vol. 4, p. 10, 2016.

[12] R. L. Hatton and H. Choset, “Generating gaits for snake robots: an-nealed chain fitting and keyframe wave extraction,” Autonomous Robots,vol. 28, no. 3, pp. 271–281, 2010.

[13] C. Nho Cho, H. Jung, J. Son, and K. Gi Kim, “A modular control schemefor hyper-redundant robots,” International Journal of Advanced RoboticSystems, vol. 12, no. 7, p. 91, 2015.

[14] X. Yu, X. Wang, D. Meng, H. Liu, and B. Liang, “Collision free pathplanning for multi-section continuum manipulators based on a modal

Final

ConfigurationDesired Path

Start/End

Bending Shortening Twisting

(a)

Desired 𝑥

Desired 𝑦

Desired 𝑧

Tracked 𝑥tip

Tracked 𝑦tipTracked 𝑧tip

Start End

(b)

Fig. 4: (a) Snapshots of the simulated hyper-redundant robottracking the elliptical trajectory (27). Average tracking RMSE= 0.044 cm. (b) Time evolution of the desired position (x,y,z)and tracked position (xtip,ytip,ztip) of the robot’s tip.

method,” in IEEE International Conference on CYBER Technology inAutomation, Control, and Intelligent Systems, 2018, pp. 236–242.

[15] A. Doroudchi, S. Shivakumar, R. E. Fisher, H. Marvi, D. Aukes, X. He,S. Berman, and M. M. Peet, “Decentralized control of distributedactuation in a segmented soft robot arm,” in IEEE Conference onDecision and Control. IEEE, 2018, pp. 7002–7009.

[16] Y. Engel, P. Szabo, and D. Volkinshtein, “Learning to control an octopusarm with Gaussian process temporal difference methods,” in Advancesin Neural Information Processing Systems, 2006, pp. 347–354.

[17] S. R. Buss, “Introduction to inverse kinematics with jacobian transpose,pseudoinverse and damped least squares methods,” IEEE Journal ofRobotics and Automation, vol. 17, no. 1-19, p. 16, 2004.

[18] M. W. Hannan and I. D. Walker, “Kinematics and the implementationof an elephant’s trunk manipulator and other continuum style robots,”Journal of Robotic Systems, vol. 20, no. 2, pp. 45–63, 2003.

[19] S. Soylu, B. J. Buckham, and R. P. Podhorodeski, “Dexterous task-priority based redundancy resolution for underwater manipulator sys-tems,” Transactions of the Canadian Society for Mechanical Engineer-ing, vol. 31, no. 4, pp. 519–533, 2007.

[20] A. S. Lafmejani, M. T. Masouleh, and A. Kalhor, “Trajectory trackingcontrol of a pneumatically actuated 6-DOF Gough-Stewart parallelrobot using backstepping-sliding mode controller and geometry-basedquasi forward kinematic method,” Robotics and Computer-IntegratedManufacturing, vol. 54, pp. 96–114, 2018.

[21] S. Pedrammehr, H. Asadi, and S. Nahavandi, “A study on vibrations ofhexarot-based high-G centrifugal simulators,” Robotica, pp. 1–18, 2019.

[22] M. A. McEvoy and N. Correll, “Shape-changing materials using variablestiffness and distributed control,” Soft Robotics, vol. 5, no. 6, pp. 737–747, 2018.

[23] A. Salimi Lafmejani, B. Danaei, A. Kalhor, and M. T. Masouleh,“An experimental study on control of a pneumatic 6-DoF Gough-

Page 8: Kinematic Modeling and Trajectory Tracking Control of an ......simulated hyper-redundant robot tracks the reference trajectories with average root-mean-square errors that are less

8 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JANUARY 2020

Start

End

Final

Configuration

Initial

Configuration

Desired

Path

Bending Shortening TwistingElongation

(a)

Desired 𝑥

Desired 𝑦

Desired 𝑧

Tracked 𝑥tip

Tracked 𝑦tipTracked 𝑧tip

Start End

(b)

Fig. 5: (a) Snapshots of the simulated robot tracking thesinusoidal trajectory Eq. (28). Average tracking RMSE =0.049 cm. (b) Time evolution of the desired position (x,y,z)and tracked position (xtip,ytip,ztip) of the robot’s tip.

Stewart robot using backstepping-sliding mode and geometry-basedquasi-forward kinematic method,” in 5th RSI International Conferenceon Robotics and Mechatronics (ICRoM). IEEE, 2017, pp. 239–245.

[24] M. Sharifzadeh, R. Khodambashi, and D. M. Aukes, “An integrateddesign and simulation environment for rapid prototyping of laminaterobotic mechanisms,” in ASME International Design Engineering Tech-nical Conferences and Computers and Information in EngineeringConference, 2018.

[25] F. W. Grasso, “The octopus with two brains: how are distributed andcentral representations integrated in the octopus central nervous system,”Cephalopod Cognition, pp. 94–122, 2014.

[26] G. Levy and B. Hochner, “Embodied organization of Octopus vulgarismorphology, vision, and locomotion,” Frontiers in Physiology, vol. 8, p.164, 2017.

[27] M. A. McEvoy and N. Correll, “Distributed inverse kinematics for shape-changing robotic materials,” Procedia Technology, vol. 26, pp. 4–11,2016.

[28] A. Dietrich and C. Ott, “Hierarchical impedance-based tracking controlof kinematically redundant robots,” IEEE Transactions on Robotics,vol. 36, no. 1, pp. 204–221, 2020.

[29] R. M. Murray, A mathematical introduction to robotic manipulation.CRC Press, 2017.

[30] D. Liberzon, Switching in systems and control. Springer Science &Business Media, 2003.

Initial Configurations

Final Configurations

Desired Paths

Start

EndStart

Bending Shortening TwistingElongation

(a)

Start End

Desired 𝑥

Desired 𝑦

Desired 𝑧

Tracked 𝑥tip

Tracked 𝑦tipTracked 𝑧tip

(b)

Start End

Desired 𝑥

Desired 𝑦

Desired 𝑧

Tracked 𝑥tip

Tracked 𝑦tipTracked 𝑧tip

(c)

Fig. 6: (a) Snapshots of the robot tracking the reaching andfetching reference trajectories, Eq. (29) and Eq. (30). Averagetracking RMSEs for reaching and fetching are 0.051 cm and0.057 cm, respectively. (b), (c) Time evolution of the desiredand tracked positions of the robot’s tip.