IEEE Robotics & Automation Magazine - September 2023 - 120

This example stresses that the user can combine SoRoSim
with well-established MATLAB packages, such as the global
optimization toolbox, to deliver analysis results outside the
package of the SoRoSim toolbox. The user may also define an
optimization problem based on a dynamic simulation to estimate
the design parameters of a multibody system that optimizes
its dynamic performance.
INVERSE DYNAMIC CONTROL
Finally, we use the toolbox to solve two inverse dynamics
control problems. We begin by creating a soft link that is 1 m
long, consisting of two divisions (0.5 m each). The radius of
the link varies linearly from 2 to 1 cm from the base to the tip
[Figure 11(a)]. The material properties are the same as those
used for the optimization example. For the first division, we
define a linear bending about the y-axis and the z-axis. In the
second section, the same deformation modes are defined
using a constant strain basis. The soft manipulator is actuated
using six linearly independent cables (Table 1).
The velocity of the manipulator tip is given by
htt=
Jq ,
.
where th is the tip velocity and Jt is the Jacobian at the tip.
Taking a time derivative of the equation and substituting q
..
from (4), we get the dynamics equation of the manipulator tip.
From this equation, if we solve for the actuator strength, u, and
apply a proportional derivative (PD) controller [24], we get the
following task space control law:
uJMBh@
t
=+ -+
+
^
t
-1 rr hhh h
.
JM CD q++ - t
-1 ^^ + h
.
r
t dt tp t
Kq Qh Jq
[( ())
]
KK
.
^
-1 r t
.
(8)
where Kp and Kd are the proportional and derivative gains,
h t
is the desired tip acceleration, h tr
gt and gtr
.
is the desired tip velocity,
are the actual and desired tip transformation matrices,
and log is the logarithmic operator in SE(3). Note that the
proposed control law may not ensure a full state (q and )q
convergence of the manipulator at the steady state for an
underactuated system [24]. Addressing issues of task spacebased
controllers is out of this article's scope. Here, we demonstrate
the toolbox's ability to incorporate the control law.
TABLE 1. The cable coordinates (d1 = 1.5 cm
and d2 = 1 cm).
CABLE
NUMBER
1
2
3
4
5
6
CABLE
LENGTH (M) Y COORDINATE Z COORDINATE
0.5
0.5
0.5
1
1
1
2
1
2
1
d2
-
2
1
2
1
d1
-d1
dX
1 1d2
d
2
1
X
2
() -0
3
2
3
2
2
1
1
d2
--cm d cm3
2
1
X
2
dX
()
3
2
d1
log gg 0
.
The user can define a custom actuator strength by
enabling the " Custom Actuator Strength " property of the
SorosimLinkage and by editing the " CustomActuator
Strength.m " file. Quantities such as Jacobian J, derivatives of
Jacobian
J ,
.
and generalized mass matrix M are passed as inputs
into the " CustomActuatorStrength " function. The user can
directly use these to compute the actuator strength given by (8).
CASE 1: TIP POSE TRAJECTORY TRACKING
Here, we attempt to control the position and orientation of the
manipulator tip based on those of a reference frame moving in a
circular trajectory. The circular trajectory we define has a radius
of 0.22 m, parallel to the yz-plane, and its center is located at
0.96 m on the x-axis. Moreover, the reference frame of the trajectory
is at 35.96ยบ with respect to the x-axis. The angular velocity of
the reference frame is set to 3.75 r/min. We run the dynamic simulation
for 16 s, using the actuator strength computed using (8).
Superimposed images of the dynamic results, corresponding
actuator strengths, and errors (inset) are given in Figure 11(b)(1)
and (2). The dynamics of the system are perfectly cancelled out
by the controller, and the error between the tip and the reference
frames converges to zero in fewer than 4 s. The plot in
Figure 11(b)(2) details the process of nullifying the system
dynamics at the beginning and the oscillation of the actuator
strength as time elapses. We use the " lsqlin " function of MATLAB
to compute the actuator strength given by (8). Using this
function, we ensure that the cable tension is a positive value of
less than 50 N.
To compare the controller's performance, we input the
actuator strength corresponding to the quasi-static solution
that matches the position and orientation of the manipulator
tip and the moving frame. The dynamics of the simulation
are available in Figure 11(b)(3) and (4). In this case, the error
decreases initially but continues to oscillate indefinitely due to
the dynamic response of the system.
CASE 2: TIP POSE REGULATION UNDER GRAVITY
For the second control case, we attempt to control the
position and orientation of the manipulator tip based on a
fixed reference frame under the influence of gravity
(external force). The fixed reference frame is the same as
the manipulator tip frame at the static equilibrium when
the cable tensions are 40, 0, 30, 15, 0 , and 0 N, respectively,
for each cable.
Using the PD controller given by (8), we get a dynamic
response, as shown in Figure 11(c)(1) and (2). We can see
a steady approach to the desired tip position and orientation,
denoted by the reference frame in the figure. The controller
overcomes the dynamic response due to gravity and
the actuation force, and the error is quickly reduced to zero
in fewer than 5 s. Over time, the cable tensions converge
to constant values corresponding to the static equilibrium
case. To compare the controller performance, we input cable
tensions as ramp functions that increase to reach the static
equilibrium cable tension values at 5 s. This manual actuator
strength input is unable to quickly cancel the system's
12 IEEE ROBOTICS & AUTOMATION MAGAZINE SEPTEMBER 2023

IEEE Robotics & Automation Magazine - September 2023

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - September 2023

Contents
IEEE Robotics & Automation Magazine - September 2023 - Cover1
IEEE Robotics & Automation Magazine - September 2023 - Cover2
IEEE Robotics & Automation Magazine - September 2023 - 1
IEEE Robotics & Automation Magazine - September 2023 - Contents
IEEE Robotics & Automation Magazine - September 2023 - 3
IEEE Robotics & Automation Magazine - September 2023 - 4
IEEE Robotics & Automation Magazine - September 2023 - 5
IEEE Robotics & Automation Magazine - September 2023 - 6
IEEE Robotics & Automation Magazine - September 2023 - 7
IEEE Robotics & Automation Magazine - September 2023 - 8
IEEE Robotics & Automation Magazine - September 2023 - 9
IEEE Robotics & Automation Magazine - September 2023 - 10
IEEE Robotics & Automation Magazine - September 2023 - 11
IEEE Robotics & Automation Magazine - September 2023 - 12
IEEE Robotics & Automation Magazine - September 2023 - 13
IEEE Robotics & Automation Magazine - September 2023 - 14
IEEE Robotics & Automation Magazine - September 2023 - 15
IEEE Robotics & Automation Magazine - September 2023 - 16
IEEE Robotics & Automation Magazine - September 2023 - 17
IEEE Robotics & Automation Magazine - September 2023 - 18
IEEE Robotics & Automation Magazine - September 2023 - 19
IEEE Robotics & Automation Magazine - September 2023 - 20
IEEE Robotics & Automation Magazine - September 2023 - 21
IEEE Robotics & Automation Magazine - September 2023 - 22
IEEE Robotics & Automation Magazine - September 2023 - 23
IEEE Robotics & Automation Magazine - September 2023 - 24
IEEE Robotics & Automation Magazine - September 2023 - 25
IEEE Robotics & Automation Magazine - September 2023 - 26
IEEE Robotics & Automation Magazine - September 2023 - 27
IEEE Robotics & Automation Magazine - September 2023 - 28
IEEE Robotics & Automation Magazine - September 2023 - 29
IEEE Robotics & Automation Magazine - September 2023 - 30
IEEE Robotics & Automation Magazine - September 2023 - 31
IEEE Robotics & Automation Magazine - September 2023 - 32
IEEE Robotics & Automation Magazine - September 2023 - 33
IEEE Robotics & Automation Magazine - September 2023 - 34
IEEE Robotics & Automation Magazine - September 2023 - 35
IEEE Robotics & Automation Magazine - September 2023 - 36
IEEE Robotics & Automation Magazine - September 2023 - 37
IEEE Robotics & Automation Magazine - September 2023 - 38
IEEE Robotics & Automation Magazine - September 2023 - 39
IEEE Robotics & Automation Magazine - September 2023 - 40
IEEE Robotics & Automation Magazine - September 2023 - 41
IEEE Robotics & Automation Magazine - September 2023 - 42
IEEE Robotics & Automation Magazine - September 2023 - 43
IEEE Robotics & Automation Magazine - September 2023 - 44
IEEE Robotics & Automation Magazine - September 2023 - 45
IEEE Robotics & Automation Magazine - September 2023 - 46
IEEE Robotics & Automation Magazine - September 2023 - 47
IEEE Robotics & Automation Magazine - September 2023 - 48
IEEE Robotics & Automation Magazine - September 2023 - 49
IEEE Robotics & Automation Magazine - September 2023 - 50
IEEE Robotics & Automation Magazine - September 2023 - 51
IEEE Robotics & Automation Magazine - September 2023 - 52
IEEE Robotics & Automation Magazine - September 2023 - 53
IEEE Robotics & Automation Magazine - September 2023 - 54
IEEE Robotics & Automation Magazine - September 2023 - 55
IEEE Robotics & Automation Magazine - September 2023 - 56
IEEE Robotics & Automation Magazine - September 2023 - 57
IEEE Robotics & Automation Magazine - September 2023 - 58
IEEE Robotics & Automation Magazine - September 2023 - 59
IEEE Robotics & Automation Magazine - September 2023 - 60
IEEE Robotics & Automation Magazine - September 2023 - 61
IEEE Robotics & Automation Magazine - September 2023 - 62
IEEE Robotics & Automation Magazine - September 2023 - 63
IEEE Robotics & Automation Magazine - September 2023 - 64
IEEE Robotics & Automation Magazine - September 2023 - 65
IEEE Robotics & Automation Magazine - September 2023 - 66
IEEE Robotics & Automation Magazine - September 2023 - 67
IEEE Robotics & Automation Magazine - September 2023 - 68
IEEE Robotics & Automation Magazine - September 2023 - 69
IEEE Robotics & Automation Magazine - September 2023 - 70
IEEE Robotics & Automation Magazine - September 2023 - 71
IEEE Robotics & Automation Magazine - September 2023 - 72
IEEE Robotics & Automation Magazine - September 2023 - 73
IEEE Robotics & Automation Magazine - September 2023 - 74
IEEE Robotics & Automation Magazine - September 2023 - 75
IEEE Robotics & Automation Magazine - September 2023 - 76
IEEE Robotics & Automation Magazine - September 2023 - 77
IEEE Robotics & Automation Magazine - September 2023 - 78
IEEE Robotics & Automation Magazine - September 2023 - 79
IEEE Robotics & Automation Magazine - September 2023 - 80
IEEE Robotics & Automation Magazine - September 2023 - 81
IEEE Robotics & Automation Magazine - September 2023 - 82
IEEE Robotics & Automation Magazine - September 2023 - 83
IEEE Robotics & Automation Magazine - September 2023 - 84
IEEE Robotics & Automation Magazine - September 2023 - 85
IEEE Robotics & Automation Magazine - September 2023 - 86
IEEE Robotics & Automation Magazine - September 2023 - 87
IEEE Robotics & Automation Magazine - September 2023 - 88
IEEE Robotics & Automation Magazine - September 2023 - 89
IEEE Robotics & Automation Magazine - September 2023 - 90
IEEE Robotics & Automation Magazine - September 2023 - 91
IEEE Robotics & Automation Magazine - September 2023 - 92
IEEE Robotics & Automation Magazine - September 2023 - 93
IEEE Robotics & Automation Magazine - September 2023 - 94
IEEE Robotics & Automation Magazine - September 2023 - 95
IEEE Robotics & Automation Magazine - September 2023 - 96
IEEE Robotics & Automation Magazine - September 2023 - 97
IEEE Robotics & Automation Magazine - September 2023 - 98
IEEE Robotics & Automation Magazine - September 2023 - 99
IEEE Robotics & Automation Magazine - September 2023 - 100
IEEE Robotics & Automation Magazine - September 2023 - 101
IEEE Robotics & Automation Magazine - September 2023 - 102
IEEE Robotics & Automation Magazine - September 2023 - 103
IEEE Robotics & Automation Magazine - September 2023 - 104
IEEE Robotics & Automation Magazine - September 2023 - 105
IEEE Robotics & Automation Magazine - September 2023 - 106
IEEE Robotics & Automation Magazine - September 2023 - 107
IEEE Robotics & Automation Magazine - September 2023 - 108
IEEE Robotics & Automation Magazine - September 2023 - 109
IEEE Robotics & Automation Magazine - September 2023 - 110
IEEE Robotics & Automation Magazine - September 2023 - 111
IEEE Robotics & Automation Magazine - September 2023 - 112
IEEE Robotics & Automation Magazine - September 2023 - 113
IEEE Robotics & Automation Magazine - September 2023 - 114
IEEE Robotics & Automation Magazine - September 2023 - 115
IEEE Robotics & Automation Magazine - September 2023 - 116
IEEE Robotics & Automation Magazine - September 2023 - 117
IEEE Robotics & Automation Magazine - September 2023 - 118
IEEE Robotics & Automation Magazine - September 2023 - 119
IEEE Robotics & Automation Magazine - September 2023 - 120
IEEE Robotics & Automation Magazine - September 2023 - 121
IEEE Robotics & Automation Magazine - September 2023 - 122
IEEE Robotics & Automation Magazine - September 2023 - 123
IEEE Robotics & Automation Magazine - September 2023 - 124
IEEE Robotics & Automation Magazine - September 2023 - 125
IEEE Robotics & Automation Magazine - September 2023 - 126
IEEE Robotics & Automation Magazine - September 2023 - 127
IEEE Robotics & Automation Magazine - September 2023 - 128
IEEE Robotics & Automation Magazine - September 2023 - 129
IEEE Robotics & Automation Magazine - September 2023 - 130
IEEE Robotics & Automation Magazine - September 2023 - 131
IEEE Robotics & Automation Magazine - September 2023 - 132
IEEE Robotics & Automation Magazine - September 2023 - 133
IEEE Robotics & Automation Magazine - September 2023 - 134
IEEE Robotics & Automation Magazine - September 2023 - 135
IEEE Robotics & Automation Magazine - September 2023 - 136
IEEE Robotics & Automation Magazine - September 2023 - 137
IEEE Robotics & Automation Magazine - September 2023 - 138
IEEE Robotics & Automation Magazine - September 2023 - 139
IEEE Robotics & Automation Magazine - September 2023 - 140
IEEE Robotics & Automation Magazine - September 2023 - 141
IEEE Robotics & Automation Magazine - September 2023 - 142
IEEE Robotics & Automation Magazine - September 2023 - 143
IEEE Robotics & Automation Magazine - September 2023 - 144
IEEE Robotics & Automation Magazine - September 2023 - 145
IEEE Robotics & Automation Magazine - September 2023 - 146
IEEE Robotics & Automation Magazine - September 2023 - 147
IEEE Robotics & Automation Magazine - September 2023 - 148
IEEE Robotics & Automation Magazine - September 2023 - 149
IEEE Robotics & Automation Magazine - September 2023 - 150
IEEE Robotics & Automation Magazine - September 2023 - 151
IEEE Robotics & Automation Magazine - September 2023 - 152
IEEE Robotics & Automation Magazine - September 2023 - 153
IEEE Robotics & Automation Magazine - September 2023 - 154
IEEE Robotics & Automation Magazine - September 2023 - 155
IEEE Robotics & Automation Magazine - September 2023 - 156
IEEE Robotics & Automation Magazine - September 2023 - 157
IEEE Robotics & Automation Magazine - September 2023 - 158
IEEE Robotics & Automation Magazine - September 2023 - 159
IEEE Robotics & Automation Magazine - September 2023 - 160
IEEE Robotics & Automation Magazine - September 2023 - 161
IEEE Robotics & Automation Magazine - September 2023 - 162
IEEE Robotics & Automation Magazine - September 2023 - 163
IEEE Robotics & Automation Magazine - September 2023 - 164
IEEE Robotics & Automation Magazine - September 2023 - 165
IEEE Robotics & Automation Magazine - September 2023 - 166
IEEE Robotics & Automation Magazine - September 2023 - 167
IEEE Robotics & Automation Magazine - September 2023 - 168
IEEE Robotics & Automation Magazine - September 2023 - Cover3
IEEE Robotics & Automation Magazine - September 2023 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com