Professional Documents
Culture Documents
Continuum Robot Control Based On Virtual Discrete-Jointed Robot Models
Continuum Robot Control Based On Virtual Discrete-Jointed Robot Models
C
Torque to Pneumatic
ontinuum or hyper-redundant manipulators belong to a Continuum
Robot Forward Pressure Converter
special class of robotic manipulators, which are designed Kinematics KP KD
to exhibit behavior similar to biological trunks, tentacles, or xdes ydes τ P
qdes u
snakes [1]. Unlike traditional rigid-link robot manipulators, Virtual Robot
Inverse e PD Virtual Robot Pneumatic
“Octarm”
+∑ Controller Dynamics Actuator
Continuum
continuum robot manipulators do not have rigid joints and have Kinematics − Robot
Transformations from the desired continuum robot trajectory to basic continuum robot element (section) in the plane and relate
the virtual robot, and from the virtual robot control variables to it to those for the selected virtual robot.
the continuum robot inputs, are developed. This is a completely A. Continuum Robot Forward Kinematics
new approach to the control of continuum robots, to the best of
our knowledge. Virtual rigid link robot models have been used The first (and the most inspired by hardware) approach to
continuum robot kinematics strongly exploits the constant
to model continuum robot kinematics [10], but this concept has
curvature sections feature possessed by almost all continuum
not been extended to controller development previously.
robots to date [11]. In the plane, a “virtual” three joint rigid-link
Specifically, in this paper we demonstrate the above manipulator, with identical (i.e., coupled) rotations as its first
approach, from model development to hardware and third joints and a prismatic joint in the middle, can be used
implementation, for control of a single section of a planar to model the kinematic transformation along any constant
continuum robot. The virtual robot used is a serial rigid-link curvature planar backbone section [10]. Consequently, it is
Revolute-Prismatic-Revolute (RPR) joint planar robot with two possible to find the corresponding kinematic model, using the
in-plane rotations and a translation in the same plane. A detailed conventional Denavit-Hartenberg (D-H) approach [10], for the
high-level overview of major system components of this virtual robot in (1)
approach is described in Figure 1. First, the desired arc length
𝑠𝑠 and curvature 𝑘𝑘 is fed to continuum robot forward kinematics cos (θ1 + θ3 ) − sin (θ1 + θ3 ) 0 −d 2 sin θ1
for desired Euclidean coordinates. Then these desired
sin (θ1 + θ3 ) cos (θ1 + θ3 ) 0 d 2 cos θ1
coordinates are adopted in the virtual RPR robot and controller H 30 = (1)
0 0 1 0
to acquire the torques and force that brings the continuum robot
to a desired coordinate set point. The torques and force are then 0 0 0 1
converted to pneumatic pressure which is directly applied on
the continuous backbone of the continuum robot. For modeling, The model (1) describes, within the 4 by 4 homogeneous
the revolute and prismatic joints are replaced by torsion and transformation matrix [H], the forward kinematic relationship
extension springs; see Figure 2. The kinematics, dynamics, and (3 by 3 orientation, top left of (1), and 3 by 1 translation, top
controller development established in the following sections are right) between the kinematic variables for the virtual robot (two
based on this virtual RPR robot and its dynamic behavior. angles and one length) and task space.
Continuum robot kinematics can now be developed by noting
and substituting in the virtual robot kinematics, relationships
between the joint variables for the virtual robot and
corresponding configuration space variables for the continuous
curve. Specifically, ([10], see Figure 3):
In the following sections, first the continuum robot Fig. 3. Geometry of constant curvature section in plane [10]
kinematics and necessary transformations, including forward
1
and inverse kinematics, are modeled, referencing the RPR θ=
1 θ=
3 θ , d=
2 x (s) , =
k . (2)
virtual robot. The dynamic model of the virtual robot is r
established in Section III. Then, based on the dynamic system We have
model, a closed loop computed torque control for the virtual ( 2θ ) (θ1 + θ3 )
s= r ( 2θ )= = → (θ1 + θ 3 )= sk (3)
robot is introduced in Section IV. Finally, simulation (Section k k
V) and experimental results (Section VI) are presented, along x (s) d2 sin θ 2sin θ
with related discussion. Conclusions are given in Section VII. = = r sin θ = → d2 = (4)
2 2 k k
II. ROBOT KINEMATICS Substituting (3) and (4) into the model (1) and simplifying gives
Since continuum robots can change their shape at any point
along their structure, their models necessarily differ
significantly from those of conventional rigid-link robots,
where configuration changes can occur only at a finite number
of fixed locations along their structure (the joints between the
rigid-links). In the following, we review the kinematics of a
2509
3
III. VIRTUAL ROBOT DYNAMICS MODEL where 𝑠𝑠1 = sin(𝑞𝑞1 ), 𝑐𝑐1 = cos(𝑞𝑞1 ), 𝑠𝑠13 = sin(𝑞𝑞1 + 𝑞𝑞3 ), and,
𝑐𝑐13 = cos(𝑞𝑞1 + 𝑞𝑞3 ). Hence, the matrix 𝐷𝐷(𝑞𝑞) is given by:
Consider the virtual Revolute-Prismatic-Revolute (RPR)
manipulator shown in Figure 4. D ( q ) =m1 J vT1 J v1 + m2 J vT2 J v 2 + m3 J vT3 J v 3
n
systems [12] to design the controller in the virtual robot
ckj ∑ cijk ( q )qi (17)
coordinates.. Classical control and intelligent control methods
i =1
we obtain are widely used in the robot industry. Each control method has
advantages and disadvantages. However, the main aim for the
C11 ( q, q ) C12 ( q, q ) C13 ( q, q ) system is to provide robustness, stability and high frequency
C ( q, q ) = C21 ( q, q ) C22 ( q, q ) C23 ( q, q ) (18) updates. In this work, we adopt the computed torque (feedback
C31 ( q, q ) C32 ( q, q ) C33 ( q, q ) linearization plus PD control, see Figure 5) approach for the
virtual robot, with the sensing and actuation transformed from
where and to the continuum robot, respectively.
l1m2 + l1m3 + m2 q2 + m3 q2 qd + −
C11 (q, q ) = q2
+lc 3 m3 cos ( q3 )
+ −
qd e Kd q
−lc 3 m3 q3 sin ( q3 )( l1 + q2 ) e ++ u + τ ROBOT
Kp D (q)
(19) + + q
l1m2 + l1m3 + m2 q2 qd
C12 ( q, q ) = q1 (20) C ( q, q ) q + g ( q )
+ m3 q2 + lc 3 m3 cos ( q3 )
Fig. 5. Classical control block diagram of the robot arm
C13 ( q, q ) =−lc 3 m3 sin ( q3 )( l1 + q2 )( q1 + q3 ) (21)
l1m2 + l1m3 + m2 q2 + m3 q2 Conventional PD control [13] is the most popular core
C21 ( q, q ) =
−q1 − lc 3 m3 q3 cos ( q3 ) control method in many robot implementations because of its
+lc 3 m3 cos ( q3 ) steady state and transient response performance in time-
(22) invariant systems. In classical pure PD control, the chosen
C22 ( q, q ) = 0 (23) parameters, 𝐾𝐾𝑝𝑝 and 𝐾𝐾𝑑𝑑 remain constant during the process.
Therefore, such a controller is inefficient because the controller
−lc 3 m3 cos ( q3 )( q1 + q3 )
C23 ( q, q ) = (24) contains ambiguity when environmental conditions or
C31 ( q, q ) =lc 3 m3 q2 cos ( q3 ) + lc 3 m3 q1 sin ( q3 )( l1 + q2 ) (25) dynamics change. In addition, it is inefficient because of time
delays and nonlinearity conditions. Hence, we include the
C32 ( q, q ) = lc 3 m3 q1 cos ( q3 ) (26) dynamics to linearize prior to the PD control.
C33 ( q, q ) = 0 (27) The dynamic model of the virtual robot arm is given in (33),
In this equation, 𝜏𝜏, 𝐷𝐷(𝑞𝑞), 𝐶𝐶(𝑞𝑞, 𝑞𝑞̇ ), 𝐺𝐺(𝑞𝑞), and 𝑛𝑛 are expressions
for the 𝑛𝑛 × 1 dimensional joint torque, 𝑛𝑛 × 𝑛𝑛 dimensional
inertia matrix, 𝑛𝑛 × 1 dimensional Coriolis and centrifugal
The potential energy of the manipulator is given by:
vector, 𝑛𝑛 × 1 dimensional gravity vector, and the degrees of
= P m1 glc1 sin ( q1 ) + m2 g ( l1 + q2 ) sin ( q1 )
(28) freedom of the robot, respectively. The errors of the robot link
+ m3 g ( sin ( q1 )( l1 + q2 ) + lc 3 sin ( q1 + q3 ) ) variables are
Hence, e =qd − q, e =qd − q , e =qd − q (34)
∂P ∂P ∂P
T where 𝑒𝑒, 𝑒𝑒̇ , 𝑒𝑒̈ expresses the position, velocity and acceleration
g ( q ) = [ g11 g12 g13 ]
T
= (29) error vectors and 𝑞𝑞𝑑𝑑 , 𝑞𝑞𝑑𝑑̇ , 𝑞𝑞𝑑𝑑̈ expresses the desired position,
∂
1q ∂q 2 ∂q 3 velocity and acceleration of the link variables. The torques
where required for each joint of the virtual robot arm are calculated
= g11 m1 glc1 cos ( q1 ) + m2 g ( l1 + q2 ) cos ( q1 ) from (33) and the errors from (34). The linearization is achieved
(30) as follows
+ m3 g ( cos ( q1 )( l1 + q2 ) + lc 3 cos ( q1 + q3 ) )
= τ D ( q )( qd − u ) + C ( q, q ) q + g ( q ) (35)
=g12 m2 g sin ( q1 ) + m3 g sin ( q1 ) (31) The control signal that is obtained from (35) is expressed as
=g13 m3 glc 3 cos ( q1 + q3 ) (32) follows
The dynamic equations of the manipulator are given by: u= qd + D −1 ( q ) C ( q, q ) q + g ( q ) − τ (36)
q1 τ 1 If the signal u is selected as the PD feedback controller, the
f
D ( q ) q2 + C ( q , q ) q + g ( q ) =
(33) torque value of each joint will be obtained from (37) and (38).
2 u= − K d e − K p e (37)
q3 τ 3
where 𝜏𝜏1 is the applied torque at the first joint (revolute), 𝑓𝑓2 is τ D ( q ) ( qd + K d e + K p e ) + C ( q, q ) q + g ( q )
= (38)
the applied force at the second joint (prismatic), and 𝜏𝜏3 is the where 𝐾𝐾𝑑𝑑 is the derivative gain and 𝐾𝐾𝑝𝑝 is the proportional gain.
applied torque at the third joint (revolute). The overall controller of the virtual robot is shown in Figure
5. The PD coefficients of the system were tuned experimentally,
IV. OVERALL CONTROL METHOD and the ideal gain values were used. The input desired trajectory
We seek and exploit simple, relatively computationally was represented in terms of Cartesian coordinates 𝑥𝑥 and 𝑦𝑦, and
inexpensive control methods used in (rigid-link) robot control was calculated from the continuum robot arc length 𝑠𝑠 and
2511
5
V. SIMULATION RESULTS
Simulations of the virtual robot computed torque control
were executed in the Simulink environment given the input of
the system is a reference signal of the arc length 𝑠𝑠 and curvature Fig. 6. Desired continuum robot arc length s and curvature k input to the
𝑘𝑘 . Feeding into the forward kinematics to form Cartesian simulation of the virtual robot computed torque control
coordinates 𝑥𝑥 and 𝑦𝑦, the reference signal illustrated here is a
chirp signal in which the frequency increases with time shown
in Figure. 6.
2512
6
0.015
calculated, they are converted to pneumatic pressure in voltage 0
0.01
form which then can be applied onto the three McKibben -10
extension muscles at the tip section. 0.005
-20
A. Extension 0
-30
The first experiment is pure extension of the OctArm -0.005 -40
continuum manipulator. In this experiment, the system is fed
-0.01 -50
with arc length 𝑠𝑠 being a sinusoid with an amplitude 0.03m of 0 10 20 30 40 50 60 70 80 90 100
and a frequency of 0.08Hz and curvature 𝑘𝑘 being 0m-1. For the time (s)
extension experiment, the calculated extension force 𝑓𝑓2 that Fig. 12. Arc length s error and PD controller extension force during pure
extension of the OctArm continuum manipulator
2513
7
Fig. 14. Desired and actual arc length s, curvature k of OctArm continuum
Fig. 13. Oscillating curvature experiment manipulator during oscillating curvature experiment
To achieve bending, the average of 𝜏𝜏1 and 𝜏𝜏3 is calculated
first as 𝛥𝛥𝛥𝛥. Then the applied pneumatic pressure onto the two
McKibben extension muscles at the back of the tip section
(pictured on the right hand side of the OctArm in Figure 13) is
calculated as 𝑃𝑃1 = 𝑘𝑘𝑝𝑝 (𝑓𝑓2 + 𝛥𝛥𝛥𝛥) and the applied pneumatic
pressure onto the one extension muscle at the front of the tip
section (pictured on the left hand side in Figure 13) is calculated
as 𝑃𝑃2 = 𝑘𝑘𝑝𝑝 (𝑓𝑓2 − 𝛥𝛥𝛥𝛥) where 𝑘𝑘𝑝𝑝 is the conversion gain from
torque to pressure. The difference of pressure given to two
distinct sets of extension muscles at front and back will generate
a bending effect of constant curvature that matches the
continuum robot kinematics model.
The section arc length and curvature are both depicted in
Figure 14 with the desired and actual values compared. The rise
time and settling time for the arc length is 64s and 88s
respectively and no overshoot is observed. The curvature, on
the other hand, displays a relatively fast response compared to
Fig. 15. Arc length s and curvature k error of OctArm continuum manipulator
arc length, with an overshoot of 8%. The reason for a slower during oscillating curvature experiment
response from the arc length is posited to be the following:
during bending, the continuum robot is attempting to achieve
the desired sinusoid curvature that could lead to a shrinkage of
the robot that contradicts and neutralize the extension force.
The error between desired set-point of arc length and curvature
and actual values can be observed in Figure 15.
The comparison between desired and actual 𝑥𝑥 and 𝑦𝑦
coordinates of the continuum robot end effector is depicted in
Figure 16. There is a large undershoot observed when the end
effector is attempting to reach the desired 𝑥𝑥 location, but the
system ultimately becomes stabilized. The overshoot of the 𝑦𝑦
coordinate is relatively small, and it also becomes stabilized
after three cycles of the sine wave.
The desired and actual 𝜃𝜃1 , 𝑑𝑑2 , 𝜃𝜃3 of the virtual robot model
can be observed in Figure 17. The values 𝜃𝜃1 and 𝜃𝜃3 converge to
the desired set-point successfully thanks to the overwhelming
tracking performance of the curvature whereas 𝑑𝑑2 has inferior
performance due to the long rise time and settling time of the Fig. 16. Desired and actual X, Y coordinate of OctArm continuum manipulator
arc length control. The resulting output torques for the virtual end-effector during oscillating curvature experiment
robot during bending are illustrated in Figure 18. extension and bending tests deliver relatively ideal tracking
After successfully employing the control method of the performance. The results from both test procedures show decent
virtual discrete-jointed robot model onto the OctArm, both consistency with the simulation results of computed torque
2514
8
approach for the virtual robot, and good potential for use in ACKNOWLEDGMENTS
continuum controller implementation. This work is supported in part by the U.S. National Science
Foundation under grants IIS-1527165 and IIS-1718075, in part
by NASA under contract NNX12AM01G, and in part by a
NASA Space Technology Research Fellowship, contract
80NSSC17K0173.
REFERENCES
2515