Dynamics Modeling of a Continuum Robotic Arm with a Contact Point in Planar Grasp

. Grasping objects by continuum arms or fingers is a new field of interest in robotics. Continuum manipulators have the advantages of high adaptation and compatibility with respect to the object shape. However, due to their extremely nonlinear behavior and infinite degrees of freedom, continuum arms cannot be easily modeled. In fact, dynamics modeling of continuum robotic manipulators is state-of-the-art. Using the exact modeling approaches, such as theory of Cosserat rod, the resulting models are either too much time-taking for computation or numerically unstable. Thus, such models are not suitable for applications such as real-time control. However, based on realistic assumptions and using some approximations, these systems can be modeled with reasonable computational efforts. In this paper, a planar continuum robotic arm is modeled, considering its backbone as two circular arcs. In order to simulate finger grasping, the continuum arm experiences a point-force along its body. Finally, the results are validated using obtained experimental data.


Introduction
Continuum robotic arms are typically made of a flexible backbone, which gives them infinite degrees of freedom.Thus, these robots are hyperredundant, compatible, and underactuated [1].Continuum robots are inspired by biological manipulators, such as octopus arms, mammalian tongues, and elephant trunks [2] and are close to ordinary hyperredundant manipulators, such as snakes and spines [3][4][5].Due to their special characteristics, continuum robots can perform a variety of tasks, such as dexterous manipulation [6,7], whole arm grasping [8,9], and ordinary underactuated grasp [10].
One of our continuum robots is depicted in Figure 1, as an example of continuum fingers.The finger consists of a flexible backbone and a tendon driven actuation system.The actuation system consists of the cable-guide disks and the tendons.When a tendon is pulled, the backbone is bent towards the tendon.Thus, using three cables, the backbone can be bent in any direction.Modeling the nonlinear dynamics of such continuum robots is essential for performing precise grasp analysis, optimization, and control.Besides accuracy, it is important that a model can be performed fast enough for real-time applications [4].
Regarding continuum robots dynamics, the first work was presented by Chirikjian, using modal approach to model hyperredundant manipulators, considered as continuum arcs [11,12].The first exact continuous model for continuum robotic arms was introduced by Mochiyama and Suzuki [13][14][15].The robot was modeled as infinite number of infinitesimal solid disks.Thus, the model has infinite degrees of freedom.The backbone kinetic energy was presented in integral form.Then, using Euler-Lagrange method, the resulting model was derived in integral-differential form.However, the model equations are numerically complex and not practical for robotic implementations.The other exact modeling approach is using Cosserat dynamic model, as introduced in [16][17][18].In Cosserat equations, the elasticity of a differential part of the backbone is modeled.Then, using Newton-Euler approach, the model is presented as a set of partial differential equations.However, the resulting equations are numerically unstable or too slow [17,18].Thus, researchers sought simplification approaches to model continuum arms.

The contact points
In [19][20][21][22][23], a dynamics model was presented for octopus continuum arms.The octopus muscles were modeled using many linear lumped parameters, including point masses, linear springs, and linear dampers.Furthermore, hydraulic forces such as drag and buoyancy forces were included in the model.However, because of the high number of elements, the model is not practical for real-time implementations.
In [24], robot dynamics was modeled using Hamilton's principle, for a vibration control task.The only applied force/moment was the one actuation torque applied to the robot tip, which resulted in a constant curvature along the backbone.Then, the vibration was modeled as a static equilibrium configuration plus a vibration around it, for the vibration control algorithm.
When a constant moment is applied to a section of a continuum rod (without any other external force), it has a uniform bending along its length.Hence, its shape is as a circular arc, with constant curvature.Thus, since actuation forces can be modeled as point torques, a reasonable approximation of continuum robot kinematics is to consider their shape as a series of circular pieces, based on the actuation system [25].This idea has also been used in dynamics modeling.
In [26][27][28], continuum arm was simplified as three variable length segments, based on its three actuation torques that were applied at three points of the robot.No external forces (contraction or gravitational forces) were applied to the backbone.The three sections can bend and lengthen/shorten, which gives the robot 6 degrees of freedom.Then, the modeling approach of [13][14][15] was exploited, to model the arm.The resulting 6-DOF model equations are pretty complex and time-taking for real-time applications.
In [29,30], the backbone kinematics between each two adjacent cable-guide disks was approximated as a constantcurvature arc.Then, one point mass was considered at the mass center of each cable-guide disk.Then, the constantcurvature segment of the backbone was modeled as a 2-DOF spring.Finally, the dynamics model was derived using Kane's method.As mentioned, the number of elements was defined based on the number of cable-guide disks, while typically a robot has many of such disks.Thus, the calculation time is too long for real-time applications.
One problem of using the constant-curvature geometry is the numerical singularity that happens when the curvature approaches zero.In [31][32][33], the singularity problem was avoided, using a set of shape functions.The continuum arm was approximated as one constant-curvature arc, in order to achieve a fast approximation for model base control.Then, a quadruped robot with four continuum limbs was modeled and controlled.Although it is not accurate to approximate a continuum limb as a single constant-curvature arc, the model provides enough accuracy for the control algorithm.Besides, the model calculation time was perfect for real-time control applications.More discussions on dynamics modeling of continuum robots are available in [4,34].
In our previous works on continuum robotic fingers, we analyzed grasp for a compound hand with a continuous finger [10] (Figure 1), using the proposed MAG index [35,36].On modeling and control of continuum manipulators, we presented statics modeling and control of planar and spatial backbones [37][38][39], modeling by faster computation methods [38,40], and modeling of continuum robots with tendon actuation systems [41].However, a fast dynamic model is essential for future grasp optimization, analysis, and control.For such applications, a fast and accurate model is required.The model calculation time must be short enough for real-time optimization and control.Among the previous dynamics model, only the model in [33] is fast enough for real-time applications; however, its accuracy is not acceptable for our purpose.
This paper presents a planar dynamics model for the continuum robotic finger.This dynamics model of continuum finger is necessary for future grasp analysis, optimization, and control.The model is fast enough for real-time calculations, which is the main goal of this paper.Likewise, the model accuracy is acceptable.In this model, the robot and the grasped object can have two contact points, as depicted in Figures 1 and 2 (the continuum finger and the mug).One contact point is at the fingertip; the other contact point can be anywhere along the finger.Thus, the robot experiences gravitational forces, two contact forces, and one actuation torque.
In this paper, the continuum backbone is divided into two elements, based on the middle contact point.As depicted in Figure 3, one element is from the finger base to the contact point and the other element is from the contact point to the fingertip.As depicted in Figure 2, due to the cable-guide disks, the grasped object cannot slip easily.If the object slips, it hits the disks which results in impulsive contact forces and complicated transient dynamics.Here, we consider the common cases where the object does not slip.Thus, it is assumed that the contact point is a fixed point in the dynamics modeling.Moreover, since the disks are close to each other, each contact area is simplified as a contact point.Thus, each contact is represented by one external force, acting on the finger backbone.Therefore, there is one external force acting at the middle contact point and one acting at the fingertip, as illustrated in Figure 3.This paper mostly focuses on fast backbone modeling and its interactions with the grasped object, for real-time grasp optimization and control.Thus, unnecessary complexities such as nonlinearities of the actuation system or geometry of the grasped object are neglected.The two parts of the finger are approximated as two circular elements; this assumption is reasonable since typically a finger is not too long.The dynamics of the backbone is modeled using Euler-Lagrange equations.The main contribution of the proposed model is having the properties of simplicity and fast calculation time, accuracy, and consideration of external forces, at the same time.Furthermore, a singularity-free version of model equations is derived and proposed, using Taylor expansion.Finally, the proposed model is validated using obtained experimental results of a moving backbone.The model and experimental backbone trajectories are compared, to show the accuracy of the proposed model.
The outline of this paper is as follows.In Section 2, the backbone kinematics is presented.In Section 3, the kinetic and potential energies of the robotic finger are derived.In Section 4, the applied forces and moments are modeled, and the backbone's equations of motion are presented.The model validation is presented in Section 5, and conclusions are discussed.Finally, in the appendix, the singularity-free equations are presented.
Figure 4: Kinematics variables of the backbone.

The Backbone Kinematics
In this section, the finger backbone kinematics is derived.The backbone is considered as a rod with two circular elements, as depicted in Figure 3.The rod is divided into these two elements, based on an external force, considered as a contact force F  , applied to an arbitrary contact point.However, the contact point is assumed not to be changed, so that the lengths of the two elements are constant.The backbone can also be subjected to an external tip force and moment and the robot actuation forces/moments.In this paper, the robotic finger is considered to be inextensible.Thus, for typical tendon driven and hydraulic/pneumatic actuators, the actuation forces can approximately be represented by a single torque, applied at the fingertip [1,4,37,38].The kinematics variables of the backbone are illustrated in Figure 4.The backbone is considered as a thin, onedimensional curve.Each element of the backbone is specified with , which represents the length from the finger base to the specified point.A XY Cartesian coordinate can be defined at each point of the backbone, as X() and Y(), as the -axis is tangent to the backbone direction.At the finger base, where  = 0, the coordinates are specified as X  and Y  , which will be used as the reference coordinate.

Position and Orientation.
As depicted in Figure 4, the position vector of each point of the backbone is specified by r().At each point of the backbone, the orientation of the backbone at each point can be determined by a rotation matrix R(), as where () is the angle of X()-Y() coordinates relative to X  Y  , say the backbone bending angle at .As mentioned before, the robot is divided into two circular elements.As depicted in Figure 4, the first element is defined from the base to the contact point, and the second element is from the contact point to the fingertip.The lengths of these two elements are, respectively,  1 and  2 .The centers of the circular element are depicted in the figure.The bending angles of the two elements are represented by  1 and  2 .These two angles determine the shape of the backbone.Fingertip: Figure 5: Kinematics of the two circular elements.
Thus, the backbone is a two-degree-of-freedom system, with generalized variables  1 and  2 .
The two circular elements are illustrated with more details in Figure 5.The position of the contact point is represented by r  .X  Y  and X  Y  are the local coordinates at the contact point and the fingertip, respectively.The centers of mass of the elements are depicted in the figure.Position of the 1st element mass center is represented by r 1 ; the position of the 2nd element mass center, relative to the X  Y  coordinate, is represented by r 2/ .
For a circular curve, as depicted in Figure 5, the bending angle () is linearly increasing by  [39].Thus, for the first element of Figure 5, () is determined as Likewise, for the second element, the bending angle is determined as In the 1st element, r() can be determined [1,2,37] as Likewise, in the 2nd element, the position relative to the X  Y  coordinates, r rel (), can be determined as Then, using the rotation matrix R  , r() can be determined as where r  is given by substituting  =  1 in (4), as and R  is given from (1), substituting () =  1 , as For the fingertip, the position vector r  is determined by substituting  =  1 +  2 in ( 5) and ( 6), as Finally, for further use, the positions of elements centers of mass are derived.In this paper, the backbone is considered to have a uniform mass distribution.Thus, from basic mechanics, the mass center of the 1st element can be determined as Likewise, for the 2nd element mass center, we have Then, substituting in (6) yields 2.2.Velocities.The velocity of each point of the backbone can be derived by direct differentiation.For the 1st element, differentiating (4) with respect to time gives For the 2nd element, differentiating (6) gives where Ṙ is given by differentiating (8), as Differentiating (5) yields Substituting  =  1 in (13) gives The fingertip velocity is determined by differentiating ( 9), as Differentiating (10), the first mass center velocity is And for the second mass center, differentiating (12) gives Finally, for angular velocities, differentiating (2) and (3), θ () is 2.3.Jacobians.In this section, for further use, some velocities are resolved using Jacobian matrices, as where from ( 17) and from ( 18) where, for abridgment, and from ( 20)

Modeling of the Energies
In this section the robotic finger's gravitational potential energy   and elastic potential energy   and its kinetic energy  and their derivatives with respect to  1 and  2 are calculated.
3.1.Gravitational Potential Energy.As mentioned above (10), the robotic finger has a uniform mass distribution along its length.Thus, the masses of the two circular elements are where  is the backbone cross-sectional area and  is the backbone density.In cases such as in tendon driven actuation systems, where some cable-guide disks are uniformly installed on the backbone [38], we can use  =    instead of (27), where   is the average mass per unit of length of the backbone.
An extra mass,  tip , might be attached to the fingertip, such as a sensor or a shield, as depicted in Figure 6.For more generalization, we also consider an extra mass at the contact point, as   , since such sensor or shield might be used at the contact point too.Using all these masses, the gravitational potential energy of the robotic finger can be determined, in the matrix form, as where g is the vector of gravitational acceleration.Using ( 22)-( 26) and differentiating (29) with respect to  1 and  2 give the vector of   derivatives, as

Elastic Potential Energy.
For a flexible rod with linear elasticity, the bending moment of an element,  bending , is given (as discussed in [16,37,39]) as where  is the module of elasticity,   is the second moment of cross-sectional area,  is the element length, and  is the element banding angle.
By definition, the elastic potential energy equals negative of the work done by the bending moment  bending .Thus, the potential energy of an element is ∫  0 (  /) = (  /2) 2 .In some cases, an element is preshaped; that is when no force or moment is applied to the element, its free bending angle is not zero.Representing this preshape bending angle by  * , the element bending moment is  bending = (  /)( −  * ) and its elastic potential energy is (  /2)( −  * ) 2 .Thus, the elastic potential energy of the two-element backbone is Finally, the vector of derivatives of   with respect to  1 and  2 is achieved as 3.3.The Kinetic Energy.For a differential section of the backbone, with mass of  and inertial moment of , the kinetic energy is 1/2 ṙ 2 () + 1/2 θ 2 ().If the backbone distribution of mass is uniform, we have where   is the second moment of cross-sectional area,  is the rod's density, and  is the cross-sectional area.
For instance, for a rod with circular cross-sectional area of diameter   , we have  =  2  /4 and   =  4  /64.As discussed below (27), for cases such as tendon driven robots, instead of (33), the average mass per unit   and the average moment of inertia per unit of length   can be used, as  =    and  =   .However, using (33), the backbone kinetic energy is where and  1 ,

Robot Modeling
In this section, the effects of the applied forces and moments are modeled, and the robotic finger equations of motion are represented.

Forces and Moments.
As depicted in Figure 3, the only nonconservative works done on the backbone are   by the tip moment   ,   by the tip force F  , and   by the contact force F  .Friction can also be added to the applied forces.
Here, for simplification, we only consider a structural friction moment at each section, as internal moments, as where  frc is a friction coefficient.Considering the friction work as  frc , the rate of work done on the finger backbone is Using (40), the derivatives of  with respect to  1 and  2 are Several approaches have been introduced to model actuation forces [1,18,29,41].The aim of this paper is modeling the robot backbone, regardless of the actuation system.However, a simplified model of a tendon driven actuation system is presented here.A continuum robotic finger with tendon driven actuation system is depicted in Figure 7.This system consists of two tendons (cables).The tendons pass through the cable-guide disks, so that the disks keep the cables almost parallel to the backbone, with a constant distance of , as depicted in the figure.Neglecting tendons friction with the disks, the actuation system can approximately be modeled by the tip moment   , as where  1 and  2 are, respectively, the tension forces of the 1st and 2nd tendons, as depicted in Figure 7.

Equations of Motion.
Using the Euler-Lagrange equations, the robotic continuum finger can be modeled as  where M is determined by ( 36) and ( 37),  1 and  2 are given by (38), G  and G  are calculated by ( 29) and (32), and the last term is determined by ( 41) and (42).

Singularity-Free Equations.
When  1 or  2 is close to zero, the denominators of most of the abovementioned equations are close to zero, which results in a numerical singularity.In order to avoid such numerical singularities, we can use Taylor expansions of the proposed model equations.
Since the bending angles are limited to a small range, the Taylor expansions can always be used instead of the main equations, if a proper order is chosen.For our case, we consider a very conservative range for the bending angles, as For this range of bending angle, a 5th order Taylor expansion of (4) can approximate r() with an error less than 1.7%.Thus, (4) is approximated as Using ( 45), the whole model equations can be resolved from the beginning, to achieve a singularity-free model.For The backbone statics simulation

First section
The two-section model

Second section
The tip Exact Cosserat model Gravity The base our case, the model equations are derived as presented in the appendix.This model is based on a common continuum finger, where the density  and the cross section area  are constant along the backbone, and the masses  tip and   are negligible.

Validation and Conclusion
The experimental setup used for the backbone dynamics model validation is depicted in Figure 8.A super elastic 60cm length 2-mm thick NiTinol rod was used as a continuous backbone.Other characteristics of the rod, such as its module of elasticity , were identified as discussed in our previous work [43].For each test, different weights were attached to the backbone tip.For measurement, a graph paper was placed behind the rod.This setup provides some feasible and reliable results for backbone model validation, without unnecessary complications.For instance, in an actuated continuum arm, there might be complexities due to tendon friction, installation tolerances, nonlinear elasticity, and so forth.Besides, dynamic measurement of the arm position and the applied forces need highly sensitive and precise sensors, which were not practical in our case.
Using typical finite element methods, a model with only two degrees of freedom would not be an accurate approximation, since it cannot resemble the system geometry accurately.If there is a considerable error in geometry approximation, the kinetic and potential energies cannot be determined accurately, which means the model stiffness and inertia matrices cannot be accurate.Thus, first, the accuracy of the proposed model in estimation of the whole robot shape should be investigated.To check this, the proposed model is compared to an exact model in statics equilibrium, as depicted in Figure 9.For exact modeling, the static Cosserat model of our previous work in [38] was used.Solving (43) by considering all velocities and accelerations equal to zero, the statics solution of the proposed model was determined.Comparing the two models, as shown in the figure, the proposed model can approximate the backbone shape with good precision.Furthermore, some portion of this small shape approximation error can be compensated by using the identification method of [43] for characteristics such as .
To run the tests, different weights were attached to the backbone's tip.Then, the backbone was pulled upward to an initial position and released to move freely.The motion was recorded by a camera; a video snapshot is depicted in Figure 10.Using image processing methods, the tip position was detected in each snapshot.Then, calibrating the results using the graph paper, the trajectory of the backbone tip was achieved.
For model validation, the obtained experimental results and the results from model simulation were compared, in several tests.The simulation and experimental trajectories of tip position of three cases are depicted in Figure 11.Each plot shows the trajectories of a case with a different weight attached to the backbone tip, specified as  tip .
There are some sources of errors in the experiments.One is the precision of image processing methods.The other is the exact time, the initial speed, and the initial shape of the backbone when it is physically held and released.However, the modeling results show good precision, as depicted in Figure 11.
The results show the accuracy of the proposed model.The calculation time was suitable for real-time applications.Using a 2.8 GHz PC and a code in MATLAB, the calculation time of the model was around one-tenth of the real time, in average.Thus, the proposed model can be used for real-time grasp optimization, planning, and control, as it will be used in our future works.

Appendix
Here, the proposed model is resolved by Taylor expansions of the model equations to avoid the numerical singularities.The new equations are derived for the most common case of continuum fingers, where the density  and the crosssectional area  are constant along the backbone, and the masses  tip and   are negligible.
In Section 4, the dynamics model was presented as (43).Among the variables of (43), G  can be directly calculated by (32).For the other variables M,  1 ,  2 , G  , J  , and J  , the following singularity-free equations are derived using Taylor expansions.Since  tip and   are negligible,  is determined using (36)   (A.1) From ( 23) and ( 24), the Jacobian matrices J  and J  are

Figure 8 :
Figure 8: The experimental setup for dynamics tests.

Figure 9 :
Figure 9: Comparison of an exact solution, with the proposed model in statics equilibrium.

Figure 10 :
Figure 10: Recording the backbone's motion for further image processing and measurements.

Figure 11 :
Figure 11: The trajectory of backbone vertical tip position with four different tip weights.