Next Article in Journal
An Innovative Design for Cleansing, Deodorization, and Pest Control in Drain Covers: Application of the TRIZ Method and Human Factors Engineering
Previous Article in Journal
A Study on the Static and Dynamic Characteristics of the Spindle System of a Spiral Bevel Gear Grinding Machine
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Modeling, Simulation and Control of the Double Delta Surgical Robot

School of Electrical & Computer Engineering, National Technical University of Athens, 15780 Athens, Greece
*
Author to whom correspondence should be addressed.
Machines 2024, 12(9), 620; https://doi.org/10.3390/machines12090620
Submission received: 31 July 2024 / Revised: 16 August 2024 / Accepted: 28 August 2024 / Published: 4 September 2024
(This article belongs to the Section Robotics, Mechatronics and Intelligent Machines)

Abstract

:
Robotic surgery has been steadily growing, with many new platforms entering the field. Research platforms, however, are limited in number, require a sizable capital expenditure or are difficult to access. This paper presents the analysis and development of a novel surgical manipulator based on parallel kinematics, utilizing the Delta robot as a foundational element. We investigate various aspects including kinematics, statics, workspace and constraints of the manipulator. Additionally, a physics-based model is constructed to validate the analysis and facilitate the creation of a control algorithm aimed at input tracking, particularly for teleoperation purposes. Two experiments are conducted to evaluate the manipulator’s performance: one focusing on circle tracking and a second one employing real kinematic data from a suturing task. The results indicate a maximum tracking error under 1 mm and an RMS error below 0.6 mm for the first trial and 0.3 mm by 2 mm for the suturing tracking task, respectively. Furthermore, through non-linear Bode analysis we demonstrate that the closed-loop system effectively decouples input–output cross-gain terms while maintaining minimal amplification in the diagonal terms. This suggests that the system is well-suited for the intricate and precise motions required in surgical procedures.

1. Introduction

Robotic surgery has been in clinical practice for more than two decades and is steadily expanding, both in the volume of procedures per year and in indications. Even though the market for laparoscopic surgery is dominated by Intuitive Surgical (Sunnyvale, CA, USA) with its da Vinci line of surgical robots, more and more competitors have appeared in the last five years, challenging Intuitive’s prominent position. Competing platforms include the Versius Surgical Robotic System from CMR, the Hinotori Surgical Robot from Medicaroid, Medtronics’s Hugo RAS System, the Revo Surgical Solution from Meerecompany and others. At the same time, research in the field has also been growing [1], covering various fields such as the introduction of haptic feedback [2], the use of augmented reality [3], modeling and evaluation of surgical skill [4,5], autonomous surgery [6], surgical data science [7], telesurgery [8] and so on.
A few research platforms have emerged to facilitate academic research and lower the entry barrier for academic teams. These platforms come in the form of customized one-of-a-kind designs or simplified variations of the existing market models. For instance, starting in 2012, Intuitive Surgical introduced the da Vinci research kit (dVRK), which represents a collaborative effort between academia and industry to re-purpose retired first-generation da Vinci systems for research purposes [9]. Access to the dVRK is selective, and the global community involved in this initiative comprises approximately 40 research centers, with the United States taking a leading role. The underlying code base has been publicly released as open-source. However, several issues have been identified with the platform, namely, reduced precision, inaccurate forward kinematics, link play, inaccurate hand-eye calibration and more [10]. Another notable project is the RAVEN-II robot [11], which has been commercialized by Applied Dexterity Inc as a research platform and is also open-source. Its install base counts about twenty sites worldwide. However, no vision system or master controllers are included, which have to be bought separately. Furthermore, its acquisition cost is well over $150,000, requiring a sizable expenditure to integrate a complete system.
Certain laboratories have opted to develop their own proprietary platforms for research. One such example is the modular and open platform for surgical robotics research (MOPS) robot, created at the University of Southern Denmark [12]. It utilizes off-the-shelf UR5 and UR5e robotic arms from Universal Robots A/S and incorporates custom adapters to attach Da Vinci’s EndoWrist surgical instruments. Another example is the MiroSurge platform by the German Aerospace Center (DLR), which offers a telesurgical solution that features lightweight bed-mounted manipulators [13].
All of the aforementioned platforms employ a serial kinematic chain. This design choice provides a substantial workspace for surgical tools and offers straightforward solutions for forward kinematics. However, it often results in non-unique solutions for the inverse kinematics, whereas the servomotors required to drive the base joints are larger due to the need to support the weight of all the links in the forward chain. Furthermore, precision can be compromised due to link flexure and joint play, necessitating bulkier and more rigid links.
Parallel robots emerge as an appealing alternative due to their simpler inverse kinematic solutions, enhanced rigidity, increased speed and accuracy and the ability to support more load weight relative to their own mass [14]. Their parallel structure also means that errors in the kinematic chain have a reduced impact on the precision of the end effector [15]. However, they often come with a smaller workspace and more complex forward kinematics. Consequently, some researchers have explored the use of parallel robots in microsurgery contexts [16], while others have developed platforms tailored for general laparoscopic surgery [17,18,19].
In this research, we introduce an innovative parallel mechanism designed for use as a manipulator in robotic surgery, which builds on the well-established Delta robot as described in [20]. Our approach involves the parallel connection of two Delta robots with a connecting link that carries the surgical tool, as illustrated in Figure 1. This configuration results in a robot with five degrees of freedom characterized by simple kinematics.
The resultant robot, aptly named the “Double Delta”, exhibits the capability to execute a pivot motion around a specified point, resembling the laparoscopic motion around the trocar point. This particular point is known as the “remote center of motion” (RCM) and can be dynamically adjusted as needed rather than being fixed in place. Additionally, the deployment of Delta robots as the building block of a more complex mechanism allows us to take advantage of the extensive body of analysis and control already available. Further benefits include low cost, lightweight design and off-the-shelf availability.
The current design is the third iteration of the “Double Delta” concept. In the initial setup, the two Delta robots were arranged on the same plane and linked by a straight connection that held the surgical tool. To enhance its maneuverability, the platform was affixed to a tilting base, enabling it to assume appropriate pitch angles. A comprehensive description of this design, including an analysis of its kinematics and workspace, can be found in [21].
In the second iteration, the tilting base was abandoned due to its impracticality and the challenges it posed in terms of dynamic control and gravity compensation. Instead, the pitch angle of the tool holder link was adjusted to create a workspace better suited for robotic surgery, enabling the execution of relevant tasks. This modified configuration was employed in a remote telesurgical demonstration over a 5G network [8]. Although this design proved to be more efficient and was validated in a relevant environment, it came at the cost of a noticeably smaller workspace compared to the initial setup.
In the third and current iteration, the tool is further pitched downward, bringing it to a vertical position. The tool holder link is hinged by a parallelogram mechanism, which is actuated by the two Deltas (Figure 1). This provides a stronger and stiffer linkage system, while the manipulator exhibits a wider, more symmetric, workspace. Its modelling, analysis and control are presented in the following sections.

2. Materials and Methods

To analyze the Double Delta, we can dissociate the two driving Delta robots with the upper linkage bearing the surgical tool. Thus, with reference to Figure 1, let d 0 , d 1 be the tool center points of the first and second Deltas. These exhibit three translational degrees of freedom (DOF) each and are controlled by regulating the angles ( ϕ 01 , ϕ 02 , ϕ 03 , ϕ 11 , ϕ 12 , ϕ 13 ) of their respective motors. Points d 0 and d 1 are considered known in their respective frames D 0 and D 1 of their Delta robots, which, in turn, are rigidly tied to the platform’s base frame F B (see Figure 2 for the definition of the coordinate frames).
The upper linkage mechanism consists of two parallel legs that attach to the tool holder; the first is demarcated by points ( d 0 , q 0 , r 0 , j 0 ) and the second by points ( d 1 , q 1 , r 1 , j 1 ). The following list defines the various links and their lengths:
  • Link L 1 defined by d 0 , q 0 ; length 1
  • Link L 2 defined by q 0 , j 0 ; length 2 ;
  • Link L 3 defined by d 1 , q 1 ; length 3 ;
  • Link L 4 defined by q 1 , j 1 ; length 4
  • Link L 5 defined by r 1 , r 0 ; length H
  • Link L H defined by j 1 , j 0 ; length H
The links L 1 and L 3 are rigidly attached to the plates of their respective Delta robots, thus having three translational DoFs. They are aligned with the Z D 0 and Z D 1 axes (and, by extension, to the Z B axis of the base frame). Links L 2 and L 4 are perpendicular to L 1 and L 3 and rotate about Z 2 and Z 4 with an angle θ . They attach to link L 5 and the tool holder link L H . These form the parallelogram mechanism ( r 0 , j 0 , j 1 , r 1 ) , which keeps the links L 2 and L 4 parallel. The length of the horizontal links of the mechanism ( r 0 - j 0 , r 1 - j 1 ) is S, while for the vertical ones ( r 0 - r 1 , j 0 - j 1 ) it is H.
The tool holder link is hinged at points j 0 and j 1 and rotates about the two axes that pass through them. Since L H is a side of the parallelogram mechanism, we can characterize the rotation of all axes (and orientation of all links) of the mechanism using a single frame. We define such a frame on j 1 , called the tool holder frame F H , with its Z H axis being the axis of rotation of L H through j 1 .
The tool holder bears a driving mechanism that controls an Endowrist surgical tool using four HerkuleX DRS-0201 servos. At its tip lies the tool point P T and the tool frame F T , which is rigidly attached to the tool holder. Apparently, frames F H and F T are parallel, differing by a fixed translational and rotational component. The transformation between F T and F H , with reference to Figure 1, is given by
T T H = R x ( π 2 ) S T H 0 1 × 3 1
Vector S T H = [ T , D , 0 ] T expresses the displacement of P T in the tool holder frame and is constant. Since the two Delta robots are rigidly attached to the platform’s base, the transformation from each Delta’s base frame D 0 , D 1 to the platform’s base frame F B , is constant and defined as
T D 0 B = R z ( 2 π 3 ) S B 0 1 × 3 1 ,   T D 1 B = R z ( π 3 ) S B 0 1 × 3 1
where R z is the rotation matrix about the Z axis and S B = [ ( 4 2 ) / 2 , 0 , 0 ] T ; hence, the base frame is midways between the two Deltas.
The mapping from the base frame to frames F 1 and F 3 is straightforward since they have the same orientation but differ in the translational component; that is,
T 1 B = I 3 × 3 d 0 B 0 1 × 3 1 ,   T 3 B = I 3 × 3 d 1 B 0 1 × 3 1
where
d 0 B = T D 0 B d 0 D 0 ,   d 1 B = T D 1 B d 1 D 1
are the tool center points of the two Deltas in the platform’s base frame. To calculate the mapping from F 1 , F 3 to F 2 , F 4 respectively, we first note that the rotation about axes Z 2 , Z 4 is the same and denoted as θ . This can be easily inferred by observing that links L 2 , L 4 are fixed on the tool holder link and rotate along with it. Essentially, the axes X 2 , X 4 must always be on the same plane as the mechanism and thus must always be parallel. The transformations are hence given by
T 2 1 = R xyz ( θ , π 2 , π 2 ) S 1 1 0 1 × 3 1 ,   T 4 3 = R xyz ( θ , π 2 , π 2 ) S 3 3 0 1 × 3 1
Matrix R xyz ( a , b , c ) = R x ( a ) R y ( b ) R z ( c ) is the chained rotation about the axes X , Y and Z, while the vectors S 1 1 = [ 0 , 0 , 1 ] T and S 3 3 = [ 0 , 0 , 3 ] T . For the rotation of the tool holder frame T H about Z H , we note that its axis of rotation coincides with the joint axes of the parallelogram mechanism, and thus its angle of rotation is ψ . The transformations from F H to F 2 and F 4 are given by
T H 2 = R xzx ( ψ , π 2 , π 2 ) S 2 2 S H 2 0 1 × 3 1 ,   T H 4 = R xzx ( ψ , π 2 , π 2 ) S 4 4 0 1 × 3 1
where S 2 2 = [ 0 , 0 , 2 ] T , S 4 4 = [ 0 , 0 , 4 ] T and S H H = [ H , 0 , 0 ] T are constant displacement vectors in their respective frames. Vector S H can be expressed in frame F 2 as S H 2 = R xyz ( ψ , π 2 , π 2 ) S H H .
In the following, to simplify the notation, all quantities without a left superscript will refer to the base frame F B unless explicitly given in a different frame, in which case, the appropriate superscript will be noted. The same also holds in case of ambiguities about the frames in which the variables are expressed.

2.1. Forward Kinematics

Formally, forward kinematics refers to computing the position and orientation of the robot’s end effector, i.e., frame T , given the joint angles ( ϕ 01 , ϕ 02 , ϕ 03 , ϕ 11 , ϕ 12 , ϕ 13 ) of the two deltas. However, we consider the points d 0 , d 1 known in F B , obtained by the forward and inverse kinematic solutions of the Deltas, as described in [20]. Thus, the analysis of the platform can focus on the upper linkage mechanism. Using the link transformations described in the previous section, the map from the tool frame to the base frame is given by (see Appendix A for the proof)
T T B = R T ( θ , ψ ) R T ( θ , ψ ) R x ( π 2 ) S T H + R xyz ( θ , π 2 , π 2 ) S 4 4 + d 1 B + S 3 3 0 1 × 3 1
where
R T ( θ , ψ ) = R xyz ( θ , π 2 , π 2 ) R xz ( ψ , π 2 )
is the orientation matrix of the tool in the base frame. This can be further simplified by using the following identity regarding rotation matrices and an axis of rotation:
Proposition 1.
Given a rotation about axis n ^ by an angle ϕ, denoted by matrix R ( ϕ , n ^ ) , and an orthogonal matrix A that transforms the rotation axis, the following relation holds:
R ( ϕ , n ^ ) = A R ( ϕ , A n ^ ) A
Using this relation, we can change the rotation about the x-axis to the y-axis viz.
A = R y ( π 2 ) R z ( π 2 ) = R yz ( π 2 , π 2 )
R x ( ψ ) = R zy ( π 2 , π 2 ) R y ( ψ ) R yz ( π 2 , π 2 )
Plugging into Equation (8), we obtain
R T ( θ , ψ ) = R xyz ( θ , π 2 , π 2 ) R zy ( π 2 , π 2 ) R y ( ψ ) R yz ( π 2 , π 2 ) R z ( π 2 )
= R x ( θ ) R y ( π 2 ) R z ( π 2 ) R z ( π 2 ) R y ( π 2 ) R y ( ψ ) R y ( π 2 ) R z ( π 2 ) R z ( π 2 )
= R x ( θ ) R y ( π 2 ) R y ( π 2 ) R y ( ψ ) R y ( π 2 )
and dropping the argument notation, we finally arrive at the following equation:
R T = R x ( θ ) R y ( ψ ) R y ( π 2 )
Analyzing Equation (15), we observe that in the base frame, it consists of a pitch rotation about Y B and a roll rotation about X B . In the rest position, i.e., ψ = θ = 0 , the tool frame is pitched downward by π / 2 in F B . The actual orientation angles of the tool in the base frame are given by
ψ T = π / 2 + ψ
θ T = θ
Substituting ψ , θ in Equation (15) and expanding, the orientation matrix of the tool is found to be
R T = R x ( θ T ) R y ( ψ T ) = c ψ T 0 s ψ T s θ T s ψ T c θ T s θ T c ψ T c θ T s ψ T s θ T c θ T c ψ T
where, as usual, c x = cos x and s x = sin x .
In F T the rotation matrix is decomposed into a pitch rotation about Y T , followed by a yaw rotation about Z T . This means that the surgical tool cannot rotate about its axis, which can be easily understood by noting that links L 2 , L 4 act on the axis X H without an arm and, therefore, cannot produce a moment about that axis. To simplify the analysis, we model the platform abstractly using Figure 3.
Using homogeneous coordinates, we express all vectors in the base frame. Slightly abusing notation, the simple calculations show
S 1 = T 1 B S 1 1 = S 1 1
S 3 = T 3 B S 3 3 = S 3 3
S 2 = T 1 B T 2 1 S 2 2 = R xyz ( θ , π 2 , π 2 ) S 2 2
S 4 = T 3 B T 4 3 S 4 4 = R xyz ( θ , π 2 , π 2 ) S 4 4
S T = T 3 B T 4 3 T H 4 S T H = R T R x ( π 2 ) S T H
Adding (20), (22) and (23), we obtain
S 3 + S 4 + S T = S 3 3 + R xyz ( θ , π 2 , π 2 ) S 4 4 + R T R x ( π 2 ) S T H
Furthermore, by observing Figure 3, we can traverse the two legs and define the following two vectors:
P 0 = d 0 + S 1 + S 2
P 1 = d 1 + S 3 + S 4
Note that vectors S 1 , S 2 , S 3 , S 4 are all constants when expressed in the base frame, viz,
S 12 B = S 1 B + S 2 B = [ 2 , 0 , 1 ]
S 34 B = S 3 B + S 4 B = [ 4 , 0 , 3 ]
This means that the motion of the points j 0 , j 1 directly mirrors that of d 0 , d 1 . Thus kinematically, we can consider that the two Deltas are attached to j 0 , j 1 . As is shown in the following, this observation is very helpful for efficiently calculating the inverse kinematics of the platform. Substituting Equations (26) and (24) into Equation (7), the transformation from the base frame to the tip can be written as
T T B = R T P 1 + R T R x ( π 2 ) S T H 0 1 × 3 1
The tool point  P T in the base frame can thus be written as
P T = P 1 + R T R x ( π 2 ) S T H
Note that both the rotation matrix R T and the tool point P T depend on the angles ψ T and θ t . Thus, they must be solved with respect to the input variables d 0 , d 1 . To this end, by observing Figure 3 we see that the vector S H is identical to P 0 P 1 . In its local frame F H , S H H is constant. However, when expressed in the base frame, it is equal to R T R X ( π / 2 ) S H H . We then have the following equation:
P 0 P 1 = S H = R T R x ( π 2 ) S H H
Expanding the rotation matrices and performing calculations, we obtain
P 0 P 1 = S H , x S H , y S H , z = H cos ψ T sin ψ T sin θ T sin ψ T cos θ T
and solving for ψ T , θ T ,
ψ T = arccos ( S H , x / H ) = atan 2 ( H 2 S H , x 2 , S H , x )
θ T = atan 2 ( S H , y , S H , z )
For a pitch angle of ψ T = 0 or π there is a kinematic singularity that leads to an undefined yaw angle θ T (i.e., θ T = atan 2 ( 0 , 0 ) ). In this configuration, the links 2 and 4 coincide, which is mechanically impossible. We have thus constrained the pitch angle to 60 + π / 2 ψ T 60 + π / 2 .

2.2. Inverse Kinematics

For the inverse kinematics, we consider the tool point P T and the orientation angles ψ T , θ T , known in the base frame. Then, we must calculate the points d 0 , d 1 . Trivially, using Equation (18), we compute the orientation matrix R T , and combining Equations (30) and (26), we solve for d 1 , viz.
P T = P 1 + R T R x ( π 2 ) S T H P 1 = d 1 + S 34 B d 1 = P T R T R x ( π 2 ) S T H S 34 B
Similarly, using Equation (31) and solving for d 0 B ,
d 0 = P T + R T R x ( π 2 ) ( S H H S T H ) S 12 B
The computed center points, denoted as d 0 and d 1 , for the two Deltas may not necessarily indicate valid solutions, as they could lie outside their workspace. Consequently, valid values for d 0 , d 1 are confined within their respective Delta workspaces, necessitating an inclusion test to verify the specific inverse kinematic solution. The Delta robot’s workspace, illustrated in Figure 4A, can be approximated by an inscribed cone with height h and radius r. This simplified geometric approximation streamlines the inclusion test, significantly reducing computational overhead and making it suitable for real-time control.
In pursuit of this objective, consider the workspace frame F W i corresponding to the Delta robot “i”, as depicted in Figure 4B. Positioned at the cone’s vertex, this frame has its Z-axis directed toward the base. The alignment of frame F W i with the Delta’s base frame D i is established through a known transformation denoted T D i W i . Consequently, the transformation of points d i , i { 0 , 1 } is carried out within F W i as follows:
d i W i = T D i W i T B D i d i B = ( x i , y i , z i )
Now, define the following coordinates in F W i :
x i y i z i = z i t θ i c ϕ i z i t θ i s ϕ i z i , θ i ϕ i z i = atan 2 ( x i 2 + y i 2 , z i ) atan 2 ( y i , x i ) z i
where t θ i = tan θ i . Upon examination of Figure 4B, it is evident that given the apex angle of the cone is 2 atan ( r / h ) , the inclusion constraints for d i W i in the cone are as follows:
0 θ i atan ( r / h ) 0 z i h

2.3. Forward Velocity Kinematics

To calculate the forward velocity kinematics, we consider that the points d 0 , d 1 are known in F B and have respective known velocities v 0 , v 1 . Furthermore, the orientation angles ψ T , θ T of the tool are also given in the base frame, derived from the forward position kinematics. The goal is to compute the linear velocity v T of the tool point and the angular velocities ω T of the tool frame F T in the base frame. Starting from the latter, using Equation (18), the orientation matrix R T can be found. The angular velocity tensor Ω can be calculated directly by the known equation:
Ω = R ˙ T R T T = R T θ T R T T θ ˙ T + R T ψ T R T T ψ ˙ T
Performing the calculation (see Appendix C for the proof), we arrive at the following formula:
Ω = 0 ψ ˙ T s θ T ψ ˙ T c θ T ψ ˙ T s θ T 0 θ ˙ T ψ ˙ T c θ T θ ˙ T 0
and collecting terms, we can write the angular velocity vector as
ω T = ω x ω y ω z = θ ˙ T ψ ˙ T cos θ T ψ ˙ T sin θ T = 1 0 0 cos θ T 0 sin θ T θ ˙ T ψ ˙ T
For the passive joint angle velocities, differentiating Equations (32) and (33), we obtain (see Appendix B)
θ ˙ T ψ ˙ T = Δ v z sin θ T + Δ v y cos θ T H sin ψ T Δ v x H sin ψ T = 1 H sin ψ T 0 cos θ T sin θ T 1 0 0 Δ v x Δ v y Δ v z
where v 0 v 1 = Δ v = [ Δ v x , Δ v y , Δ v z ] T . Combining (43) and (42), the angular velocity can finally be written as
ω T = 1 H sin ψ T 0 c θ T s θ T c θ T 0 0 s θ T 0 0 Δ v = K Δ v
Note that the rank of K is 2, thus ω T has two independent degrees of freedom. This is due to the fact that the roll of the robot, in the tool frame, is always zero and, hence, has two rotational DoFs. Consequently, the angular velocity can be described by only two components in a proper frame. To calculate the linear velocity of the tool point, we differentiate (30) with respect to time, viz.
v T = v 1 + R ˙ T R x ( π 2 ) S T H = v 1 + Ω R T R x ( π 2 ) S T H = v 1 + Ω S T
Expanding the second term on the right-hand side, we obtain (see Appendix D for the proof)
v T = v 1 + 1 H sin ψ T A 0 0 s θ T B c 2 θ T A s ( 2 θ T ) 2 A c θ T B s ( 2 θ T ) 2 A s 2 θ T A Δ v = v 1 + Λ Δ v
where
A = D 2 + T 2 cos ( ψ T + ϕ ) , B = D 2 + T 2 sin ( ψ T + ϕ ) ϕ = arctan ( T / D )
Combining (44) and (46), we derive the following decoupled velocity equations:
v T ω T = I Λ 0 K v 1 Δ v
We observe that the angular velocity is decoupled from the first input v 1 and depends solely on the relative velocity of the two Deltas. If we denote the actuated joint vector as θ a = [ d 1 , d 0 ] T , the generalized velocity is θ ˙ a = [ v 1 , v 0 ] T and the end-effector velocity is w = [ v T , ω T ] T . We can derive the geometric Jacobian from (48) as follows:
v T ω T = I Λ Λ K K v 1 v 0 w = J ee θ ˙ a
The matrix J ee is called the direct kinematic Jacobian and is evidently singular, which is expected since the robot exhibits five DoFs, while the input is 6D.

2.4. Inverse Velocity Kinematics

For the inverse velocity kinematics, we consider that the linear and angular velocities Ω and v T of the tool are given, and we seek to calculate the velocities of the actuating joints, i.e., v 0 , v 1 . Again, the positional configuration of the robot is completely known. Consequently, solving for v 1 from (45), we have
v 1 = v T Ω R T R x ( π 2 ) S T H = v T Ω S T
and combining (58) and (50), v 0 is
v 0 = v T + Ω R T R x ( π 2 ) S H H S T H = v T + Ω S H S T
To calculate the inverse kinematic Jacobian, we note that (50) and (51) can be written in vector form as
v 1 = v T ω T × S T = v T + S T × ω T = v T + [ S T ] × ω T v 0 = v T + ω T × S H S T = v T + S T S H × ω T = v T + [ S T ] × [ S H ] × ω T
where [ A ] × is a skew-symmetric matrix of A associated with the cross product. Factoring (52), we come up with the following:
v 1 v 0 = I [ S T ] × I [ S T ] × [ S H ] × v T ω T θ ˙ a = J ee 1 w
Equivalently, the inverse velocity equations are
v 1 Δ v = I [ S T ] × 0 [ S H ] × v T ω T

2.5. Constraints and Forces

Since the two legs act on the same link S H , by traversing them we can denote the following loop closure equation:
d 0 + S 1 + S 2 S H S 4 S 3 d 1 = 0 ( d 0 + S 12 ) ( d 1 + S 34 ) = S H P 0 P 1 = S H
It can be readily observed that (55) expresses a geometric constraint of the system that involves the two Delta tool points d 0 , d 1 , or equivalently, P 0 , P 1 . Under the assumption that the links are totally rigid, by squaring (55), we obtain
( P 0 P 1 ) T ( P 0 P 1 ) = S H S H T = H 2
hence, their distance is always constant and equal to the link length. Equivalently, we can use the second equation of (55) and arrive at the following formula:
( d 0 d 1 ) ( S 34 S 12 ) = S H Δ d Δ S = S H Δ d Δ S 2 = H 2
Equation (57) indicates that Δ d is situated on a sphere with a radius of H and centered at Δ S = S 34 S 12 = c o n s t . Consequently, all solutions to the kinematics equations must adhere to this restriction. This introduces an additional layer of complexity in the context of forward kinematics. To address the problem, we initially assumed that d 0 and d 1 are given. However, it becomes apparent that this assumption is insufficient; generally, a pair of d 0 and d 1 does not guarantee valid kinematic configurations for the platform. These values must also satisfy the geometric constraint described in Equation (57).
By differentiating (57), we can arrive at a kinematic constraint involving the two velocities v 0 , v 1 , viz.
Δ v = v 0 v 1 = Ω R T R x ( π 2 ) S H H = Ω S H
Multiplying from the left with S H and considering that the quadratic form of Ω is always zero since it is skew-symmetric, we have
S H T Δ v = S H T Ω S H = 0
and expanding
S H T v 0 = S H T v 1
The equation implies that the projections of the velocities of the two joints onto the tool link should be equal. Equivalently, the relative linear velocity Δ v of the two actuating joints should be perpendicular to the tool link L H . This means that Δ v should always reside in the orthogonal complement of S H , i.e., its orthogonal plane. We observe that S H is parallel to the x-axis of the tool frame F T . Since its orientation is the matrix R T in (18), the vectors spanning this plane are the second and third columns of the matrix. Thus, Δ v should be of the form
Δ v = 0 s ψ T c θ T s θ T c ψ T s θ T c θ T c ψ T Δ v a Δ v b
where [ Δ v a , Δ v b ] T = Δ v c R 2 is the constrained relative velocity vector. Substituting Δ v in (44) and (45), the new constrained K , Λ matrices are
K c = 1 H s ψ T 1 0 0 c θ T s ψ T 0 s θ T s ψ T , Λ c = 1 H s ψ T 0 A s ψ T A c θ T s θ T s ψ T B A s θ T c θ T s ψ T B
and the constrained forward decoupled velocity equations are
w = I Λ c 0 K c v 1 Δ v c
We note that the (constrained) velocity vector is [ v 1 , Δ v c ] T R 5 .
Using the inverse kinematic Jacobian, we can write the familiar force/torque transmission equation for the robot, which holds true both for serial and parallel kinematics, viz.
F ee = J ee T F D
where F ee = [ f ee , m ee ] is the wrench transmitted to the end effector through the forces F D = [ F 1 , F 0 ] T applied by the two Deltas on d 1 , d 0 . Although the mapping from the Delta forces to the end effector is unique, the singularity of J ee T implies that the inverse is not true; there is an infinite range of solutions that map the end effector wrench onto the two Delta forces. These contain components that lie in the null space N ( J ee T ) and do not contribute to the motion of the platform; they represent internal antagonistic forces. These can be investigated by setting (64) to null and solving for F D , viz.
0 = I I [ S T ] × [ S T ] × [ S H ] × F 1 F 0 = F 1 + F 0 S T ] × F 1 + ( S T ] × [ S H ] × ) F 0
This leads to the following conditions:
F 1 + F 0 = 0 [ S H ] × F 0 = 0
Thus, the forces in the null space must be opposite, sum to zero and must lie in the space spanned by S H . Obviously, the null space is N ( J ee T ) t [ S H , S H ] T , t R .

2.6. Gravity Compensation

In order to implement a control algorithm for the platform, an initial step involves offsetting the influence of gravity. This results in the robot being perceived by the controller as “weightless”. For this purpose, we assume that the robot moves at a sufficiently slow pace, minimizing any inertia effects, which are consequently disregarded. The algorithm for gravity compensation entails determining the necessary forces to be exerted by each Delta robot, ensuring that the platform attains static equilibrium at every pose. To this end, we employ the direct Lagrangian Method to compute the forces [22]. According to this, when the robot is in static equilibrium, the kinetic energy is null and the Lagrangian involves only the contribution of the potential energy U of the system. Then, the equations of motion, using the Euler–Lagrange formulation, transform to
U λ i = ξ i
where λ i is the generalized coordinates of the system and ξ i the generalized forces. In the specific case of our redundantly actuated parallel robot, we compute only the derivatives with respect to the actuated joints. Consequently, the compensation forces are given by
F g 0 = U d 0 x , U d 0 y , U d 0 z T F g 1 = U d 1 x , U d 1 y , U d 1 z T
To calculate the potential energy of the system, we consider each link separately. The center of mass m i of link i, where i = 1, 2, 3, 4, 5, H is given in the respective frame F i by the displacement vector r i c i (Figure 5). Casting them into the base frame F b , the potential energies are given by
U i = m i g T i B r i c i
with g = [ 0 , 0 , g ] being the gravity vector. Note that the frame in link 5 is parallel to the tool holder frame but shifted to r 1 . By performing the calculations, we arrive at the following formulas:
U 1 = g m 1 ( d 0 z + r c 13 ) , U 3 = g m 3 ( d 1 z + r c 33 ) U 2 = g m 3 ( d 0 z + 1 ) g m 2 rc 2 · N , U 4 = g m 4 ( d 1 z + 3 ) g m 4 rc 4 · N U 5 = g m 5 ( d 1 z + 3 ) + g m 5 rc 5 · M , U H = g m H ( d 1 z + 3 ) + g m H rc H · M U = U 1 + U 2 + U 3 + U 4 + U 5 + U H
where U is the potential energy of the robot, N = [ s θ , c θ , 0 ] T and M = [ c ψ c θ , s ψ c θ , s θ ] T . Taking the partial derivative of U with respect to to each actuated joint, we have
U d 1 x = g ( m 2 rc 2 + m 4 rc 4 ) N d 1 x + g ( m 5 rc 5 + m H rc H ) M d 1 x
U d 1 y = g ( m 2 rc 2 + m 4 rc 4 ) N d 1 y + g ( m 5 rc 5 + m H rc H ) M d 1 y
U d 1 z = g ( m 2 rc 2 + m 4 rc 4 ) N d 1 z + g ( m 5 rc 5 + m H rc H ) M d 1 z g ( m 3 + m 4 + m 5 + m H )
U d 0 x = g ( m 2 rc 2 + m 4 rc 4 ) N d 0 x + g ( m 5 rc 5 + m H rc H ) M d 0 x
U d 0 y = g ( m 2 rc 2 + m 4 rc 4 ) N d 0 y + g ( m 5 rc 5 + m H rc H ) M d 0 y
U d 0 z = g ( m 2 rc 2 + m 4 rc 4 ) N d 0 z + g ( m 5 rc 5 + m H rc H ) M d 0 z g ( m 1 + m 2 )
Now, let
A = g ( m 2 rc 2 + m 4 rc 4 ) , B = g ( m 5 rc 5 + m H rc H ) C = g ( m 3 + m 4 + m 5 + m H ) , D = g ( m 1 + m 2 )
We also note that
N d i = N θ θ d i + N ψ ψ d i = N θ N ψ θ d i ψ d i M d i = M θ θ d i + M ψ ψ d i = M θ M ψ θ d i ψ d i
for i = ( 0 x , 0 y , 0 z , 1 x , 1 y , 1 z ) . Combining (78), (77) and (71), we arrive at the following:
U d 1 x = Ξ T θ d 1 x ψ d 1 x , U d 0 x = Ξ T θ d 0 x ψ d 0 x U d 1 y = Ξ T θ d 1 y ψ d 1 y , U d 0 y = Ξ T θ d 0 y ψ d 0 y U d 1 z = Ξ T θ d 1 z ψ d 1 z + C , U d 0 z = Ξ T θ d 0 z ψ d 0 z + D
where
Ξ T = A T N θ N ψ + B T M θ M ψ
Expanding the partial derivatives of N and M , Ξ T is found to be
Ξ T = A T c θ 0 s θ 0 0 0 + B T c ψ s θ s ψ c θ s ψ s θ c ψ c θ c θ 0
For the derivatives of ψ , θ with respect to d i , using a similar reasoning as in Equations (A8) and (A11), we can write the following:
ψ d i = S H , x d i H c ψ , θ d i = s θ S H , z d i + c θ S H , y d i H c ψ
Substituting S H from (57) and performing calculations,
ψ d 1 x = 1 H c ψ , ψ d 0 x = 1 H c ψ ψ d 1 y = ψ d 0 y = ψ d 1 z = ψ d 0 z = 0
and
θ d 1 x = θ d 0 x = 0 θ d 1 y = c θ H c ψ , θ d 0 y = c θ H c ψ θ d 1 z = s θ H c ψ , θ d 0 z = s θ H c ψ
Putting it all together, (84), (83) and (81) transform (79) into
U d 0 x = U d 1 x = Ξ T 0 1 H c ψ U d 0 y = U d 1 y = Ξ T c θ H c ψ 0 U d 0 z = f + C U d 1 z = f + D , f = Ξ T s θ H c ψ 0
Restructuring the equations, we can write the gravity compensation forces in the following form:
F g 0 = 1 H c ψ 0 1 c θ 0 s θ 0 Ξ + 0 0 D , F g 1 = 1 H c ψ 0 1 c θ 0 s θ 0 Ξ + 0 0 C
We observe that the two forces consist of an opposite component plus a vertical force specific to the mass of the links supported by each one.

2.7. Remote Centre of Motion

The point in a mechanism that remains fixed under rotation is known as the center of motion (CM). When the CM is not located on the mechanism itself, it is called a remote center of motion (RCM). Robots equipped with RCM are particularly valuable in laparoscopic surgery, as they can adapt to procedural kinematics. Typically, surgeons make small incisions in the abdominal wall through which cannulas (trocars) are inserted, providing access to the inner site. The laparoscopic instruments are then introduced through the trocars and execute a pivoting motion around this fulcrum point (Figure 6), confined within a cone with its vertex at said point. From a kinematic point of view, the entry point serves as the RCM of the robotic manipulator.
Although most surgical robots available have a statically/mechanically fixed RCM, the Double Delta robot can dynamically emulate motion through a user-specified RCM. In other words, the RCM can be altered programmatically to suit the user’s requirements.
By imposing an RCM, the range of motion of the laparoscopic tool is limited to yaw and pitch about the insertion axis, along with a linear in–out motion. Consequently, the degrees of freedom of the robot are reduced to three. Let P rcm denote the RCM of the manipulator in the base frame. The tool’s axis must always intersect with P rcm . If the tooltip point P T is known, then the vector S rcm = P T P rcm lies on this axis and is parallel to vector S H . Hence, we can calculate S H as follows:
S H = H S rcm / S r c m
and utilizing (33), we can compute the orientation matrix R T of the platform, consequently solving the inverse kinematics.

2.8. Workspace Analysis

In this section, we delve into an analysis of the platform’s workspace, considering the robot’s capability to navigate specific points under various orientations with its five degrees of freedom. We determine this reachable workspace by utilizing a sampling-based method involving inverse kinematics.
Initially, we create a 3D regular grid, sampling the space around the tooltip while the platform is at rest. Subsequently, we systematically sample yaw and pitch angles to generate all possible orientations for the tool. Points j 0 and j 1 on the holder trace two concentric spheres centered at P T . By moving these spheres to each grid point W i , we produce a set of candidate poses for the tool. Each pose is then examined to determine whether it is a valid configuration of the platform. Here we can discern two methods; the first is to use the analytical inverse kinematics of each Delta to produce the full reachable workspace W full , or we can utilize the conical approximation for the Deltas’ workspaces, as presented in Section 2.4, resulting in the approximate reachable workspace W apx .
The full workspace is the true attainable range of motions the robot can acquire, but the approximate workspace is used in the actual analysis and control of the robot and is the one used in the programmatic implementation due to its fast cone inclusion tests. In addition to these two workspaces, when the RCM constraint is applied, the degrees of freedom of the platform drop to “three” and the reachable workspace is contracted. This leads to the RCM workspace W rcm , which is evidently a subset of the approximate workspace. Since the RCM is parametrizable and can thus change, W rcm is a family of workspaces, dependent on the actual position of the remote center of motion. The maximal (in terms of volume) RCM workspace is presented in Figure 7, along with the full and the approximate reachable workspaces.
In particular, we observe that the full workspace is not symmetric about the xz-plane, as is the case with the other two workspaces, due to the two Deltas being mounted facing different directions (frames D 0 , D 1 are rotated by 2 π / 3 and 2 π / 3 about the Z B axis—see Figure 2). To produce the previous workspaces, the following robot parameters were used (Table 1):
To measure the workspaces, we determine their volume by employing an alpha shape reconstruction. This involves utilizing the critical alpha radius that generates a closed, non-convex three-dimensional solid encompassing all the points within the workspace [23]. In the following table, we present the volume of each workspace as computed by the alpha shape, the step used for creating the sampling grid and the dimensions of its bounding box, viz.
Table 2 reveals that the conical approximation of each Delta’s workspace is approximately half of its actual workspace (1.90 vs. 3.78 lt). However, this results in a workspace for the Double Delta that is roughly 30% less than its full range (87.58 vs. 126.39 lt). We can accept this underutilization of the workspace as a deliberate compromise for the swift conical inclusion test in the inverse kinematics solution, along with providing a safety buffer for the robot to prevent links from extending to the boundaries.
We emphasize that the RCM workspace presented in Table 2 pertains to the maximal workspace. To determine this, we conducted a systematic search, correlating the RCM point’s position with its resulting Double Delta workspace. This involved sampling the space surrounding the tool using a regular grid, here with a step of 10 mm, generating a set of candidate RCM points. For each point, we computed the valid robot poses where the tooltip P T is within W apx . This process yielded a collection of RCM voxels, each associated with a specific workspace volume. A visual representation of this grid, color-coded according to the volume of the corresponding workspace, is presented in Figure 8.
Notice that the maximum workspace volume associated with the RCM voxels is approximately 58 lt, whereas the value presented in Table 2 is recorded as 55.22 lt. This discrepancy arises from our approach to accelerate calculations and ensure the tractability of the search process. Instead of directly calculating the volume of the alpha shape for the workspace of a given RCM point, we opted for a more efficient method. We collected the number of valid points, and by multiplying this count with the voxel volume of the workspace grid, we estimated the volume corresponding to each point’s workspace. This method yields a slightly higher estimate, approximately 5% more, compared to the direct calculation of the alpha shape.
To gain a more profound insight into the stratification of the RCM voxels, we performed an analysis by computing the cumulative histogram of RCM voxels based on their corresponding workspace volumes. This plot provides a comprehensive view of the volume distribution, showing the volume of RCM voxels that have at least a given workspace volume. Essentially, it offers a nuanced understanding of how the workspace volumes are distributed across the RCM voxels. As depicted in Figure 9, the plot illustrates that the volume of RCM voxels with a minimum reachable workspace of 10 lt is approximately 8 lt. This volume decreases to 2 lt for a 40 lt reachable workspace and continues this trend for other values. Notably, a substantial portion of the plot demonstrates linear behavior. Given that the plot is presented on a semi-logarithmic axis, we can infer that the distribution of RCM voxels follows an exponential decay pattern with respect to the workspace volume.
The workspace needed for laparoscopic surgery depends on the procedure. For example, an analysis in robotic-assisted cholecystectomy estimated an overall workspace of about 0.7 lt in the shape of an ellipsoid [24]. In general, the available volume can vary according to the achieved intra-abdominal pressure to sustain a pneumoperitoneum, abdominal compliance, patient body mass index surgical position and the actual surgical field [25]. The normal workspace during laparoscopy ranges from 3 to 6 lt [26]. According to the distribution in Figure 9, this range is covered by 12 to 21 lt of RCM voxels.

2.9. Simulation and Control

To test the previous analysis and develop control algorithms, the system was modeled in Matlab’s Simscape Multibody, which provides a multi-body physics simulation environment for 3D mechanical systems. The platform was initially designed in a commercial CAD/CAM software package (DS Solidworks) and then ported to Simscape (Figure 10). However, its complexity was reduced by considering internal components (gear, etc.) as solid objects rigidly attached to their place. The motion transmission elements were modeled by replacing the rotary joints j i , q i , r i with the respective components in Simscape. The inertia matrix for each link was determined and inserted into the simulation. Note that only the linkage system was modeled. The two driving Delta robots were abstracted as two Cartesian joints located at points d 0 , d 1 . The input of the system was the two forces F 0 , F 1 of these two actuators.
The control objective was to track a reference point for the tooltip p t point under an RCM constraint, i.e., a teleoperation task. To this end, we developed a PID+G controller that regulates the forces F 0 , F 1 . The gravity term “G”, as computed by (86), is a feed-forward signal accounting for gravity compensation. This is superimposed with the feedback loop signal from the PID controllers. The two forces are regulated by two different control loops. However, the control gains are the same for both controllers. Furthermore, even though the forces are 3D vectors and the controllers are thus MIMO, they contain only diagonal elements i.e., the cross-coupling input–output terms are set to null. The control equation is given by
F i = F gi + K p e di + K d D ( e di ) + K i 0 t e di
where e di = d iref d i is the error between the points d i and the reference positions d iref of these points computed by inverse kinematics, given the reference position P tref of the tooltip. The derivative term “D” is implemented as a low-pass filter with a cut-off frequency N = 20 Hz. The PID output was also limited by a saturation block to prevent excessive signals from driving the motors. A schematic of the control diagram is presented in Figure 11.

3. Results

The PID controllers were manually tuned with gains set to K p = 30,000, K i = 5000 and K d = 1000. To assess their performance, two tests were conducted. In the first test, a dynamic tracking task was executed in which the objective was to follow a circular reference trajectory with a tooltip. This trajectory, formed by a point moving along the circle at a frequency of 0.33 Hz, was located on the x y plane with a radius of 50 mm.
For the second task, the reference signal was derived from an actual experiment using the da Vinci surgical robot. Specifically, we extracted kinematic data from the left patient side manipulator during a suturing trial from the JIGSAWS dataset [27]. The data were then used as input to the controller for tracking.
The results of the first experiment are shown in Figure 12.
The aggregate data for both tracking experiments are given in Table 3. We see that both the rms error and the maximum tracking error of the tooltip point P t are well below 1 mm, similarly for the upper and lower errors on each dimension X-Y-Z separately.
As a further step to investigate the performance and stability of the controlled system, we performed a nonlinear Bode analysis, following the related concept as presented by Pavlov et al. in [28]. Assuming that the closed-loop system is convergent, i.e., it has a unique, globally asymptotically stable solution called the steady-state solution, by applying a harmonic excitation with varying frequencies ω and amplitudes α , the system admits a unique periodic solution x ¯ ω α ( t ) . We note that this solution need not be harmonic and depends both on the frequency and on the amplitude. If we denote its maximum absolute value at ω by B ( ω , α ) , then the ratio γ α ( ω ) = B ( ω , α ) / α can be regarded as an amplification gain. Taking the maximum gain over a range of amplitudes ( α ̲ , α ¯ ) , we can consider Υ ( α ̲ , α ¯ ) ( ω ) = sup α γ α ( ω ) , α ( α ̲ , α ¯ ) . Plotting Υ over ω , we can visualize the non-linear Bode plot for the closed-loop system. This expresses the maximum amplification gain per frequency. For our system at hand, we performed this procedure by providing harmonic excitations at each input separately (X-Y-Z) in a frequency range of 0.5 to 30 Hz. The amplitudes ranged from 25 mm to 125 mm. By computing the amplification gain, we obtain the diagram seen in Figure 13. Since our system is MIMO, we also include the cross-coupling terms, i.e., X-Y, X-Z, Y-X, Y-Z, Z-X and Z-Y.
We notice that the amplification in the diagonal gains is relatively small, up to approximately 8–9 Hz. However, at higher frequencies, the system demonstrates considerable damping. The cross-coupling terms similarly display notable attenuation at lower frequencies, although this diminishes as the frequency increases. However, even in the most extreme case, it remains below −10 dB. This suggests a substantial level of decoupling between the inputs and outputs.
It is worth mentioning that when examining the frequency spectrum of the suturing trials in the JIGSAWS dataset, over 99% of the signals’ power is concentrated below 1 Hz. In this light, the Bode diagram underscores the system’s propensity to follow the low-frequency activity of actual surgical maneuvers.

4. Discussion

Compared to other research platforms, the Double Delta seems to present better tracking performance. For example, the mean tracking error for the MOPS robot is reported to be between 1.2 mm to 2.7 mm [12]. Similarly, tracking tests using a cascade controller for the Raven II platform present a mean translational error of 1.55 mm [29]. We note, however, that since the Raven II robot is cable driven, the estimation of its pose, which was used in the controller, is particularly difficult as it is affected by elasticity, friction and tensioning of the cables. The estimation error of its end-effector is in the range of 10 to 25 mm [29], which is an order of magnitude larger than the tracking error of the controller. Efforts to reduce this uncertainty are also reported in the literature using vision-based neural networks [30]. However, this setup increases the complexity of the system, adding overhead and cost.
Similar problems are met with the da Vinci research kit. The dVRK is also cable driven, something that impacts its kinematic estimation accuracy. The tool tip estimation error is reported to be up to 1.02 mm [10], whereas trajectory tracking experiments report a mean error of 2.05 mm [31]. The Double Delta bypasses the problems exhibited with cable-driven actuation by using rigid links connected with revolute joints directly driven by the servomotors. Since the links are connected in parallel, the mechanism presents better rigidity than a single serial link. This also allows the use of thinner links, hence, reducing the overall weight. Furthermore, the parallel structure of the Double Delta enables it to exert more force per weight, leading to less bulky motors and links and, ultimately, to a more compact size.

5. Conclusions

This paper explores the theoretical aspects of the third iteration of the Double Delta surgical robot. We conducted an analysis of both the forward and inverse position kinematics of the platform, along with a velocity analysis, focusing on the interface points of the upper linkage with the two driving Delta robots. Using an RCM constraint, we derived the inverse motion equations and provided a detailed description of its workspace, demonstrating its capability to meet the requirements of various robotic surgery procedures. Simulation experiments based on a physics-based model for control design exhibited promising tracking performance in two experiments. As a part of future work, we aim to implement the control design on the actual system and explore more sophisticated control strategies that leverage the parallel kinematic structure of the design.

Supplementary Materials

The following supporting information can be downloaded at: https://www.mdpi.com/article/10.3390/machines12090620/s1, Video S1: Tracking a point on a circular path.

Author Contributions

Conceptualization, G.M.; methodology, G.M.; validation, G.M.; formal analysis, G.M.; writing—original draft preparation, G.M.; writing—review and editing, G.M. and C.T.; supervision, C.T. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The original contributions presented in the study are included in the article/Supplementary Material, further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A

We will now prove the forward kinematics transformation.
T T B = T 3 B T 4 3 T H 4 T T H =
= I 3 × 3 d 1 B 0 1 × 3 1 R xyz ( θ , π 2 , π 2 ) S 3 3 0 1 × 3 1 R xzx ( ψ , π 2 , π 2 ) S 4 4 0 1 × 3 1 R x ( π 2 ) S T H 0 1 × 3 1
= R xyz ( θ , π 2 , π 2 ) d 1 B + S 3 3 0 1 × 3 1 R xzx ( ψ , π 2 , π 2 ) R x ( π 2 ) R xzx ( ψ , π 2 , π 2 ) S T H + S 4 4 0 1 × 3 1
= R xyz ( θ , π 2 , π 2 ) R xz ( ψ , π 2 ) R xyz ( θ , π 2 , π 2 ) R xzx ( ψ , π 2 , π 2 ) S T H + R xyz ( θ , π 2 , π 2 ) S 4 4 + d 1 B + S 3 3 0 1 × 3 1
= R T ( θ , ψ ) R T ( θ , ψ ) R x ( π 2 ) S T H + R xyz ( θ , π 2 , π 2 ) S 4 4 + d 1 B + S 3 3 0 1 × 3 1

Appendix B

We will now calculate the derivatives of the internal joint angles ψ T , θ T . First, we observe the known formula for the derivative of the atan2 function, viz.,
d ( atan 2 ( y , x ) ) d t = y x 2 + y 2 x ˙ + x x 2 + y 2 y ˙
Furthermore, combining Equations (26) and (32), we note the following relation:
P ˙ 0 P ˙ 1 = d ˙ 0 d ˙ 1 = Δ v = [ S ˙ H , x , S ˙ H , y , S ˙ H , z ]
Now, using Equation (33), we have
ψ ˙ T = d ( atan 2 ( H 2 S H , x 2 , S H , x ) ) d t = H 2 S H , x 2 H 2 S ˙ H , x + S H , x H 2 2 S H , x S ˙ H , x 2 H 2 S H , x 2
= ( H 2 + S H , x 2 ) S ˙ H , x S H , x 2 S ˙ H , x H 2 H 2 S H , x 2 = S ˙ H , x H 2 S H , x 2
and substituting S ˙ H , x from (A7) and S H , x from (32), we arrive at
ψ ˙ T = Δ v x H sin ψ T
Similarly, for the second joint angle, we have
θ ˙ T = d ( atan 2 ( S H , y , S H , z ) d t = S H , y S H , y 2 + S H , z 2 ( S ˙ H , z ) + S H , z S H , y 2 + S H , z 2 S ˙ H , y
= S H , y S ˙ H , z S H , z S ˙ H , y H 2 sin 2 ψ T = H sin ψ T sin θ T Δ v z + H sin ψ T cos θ T Δ v y H 2 sin 2 ψ T
= sin θ T Δ v z + cos θ T Δ v y H sin ψ T  

Appendix C

We will now prove Equation (41). Given
Ω = R ˙ T R T T = R T θ T R T T θ ˙ T + R T ψ T R T T ψ ˙ T
where
R T = c ψ T 0 s ψ T s θ T s ψ T c θ T s θ T c ψ T c θ T s ψ T s θ T c θ T c ψ T
we calculate the partial derivatives as
R T θ T = 0 0 0 c θ T s ψ T s θ T c θ T c ψ T s θ T s ψ T c θ T s θ T c ψ T , R T ψ T = s ψ T 0 c ψ T s θ T c ψ T 0 s θ T s ψ T c θ T c ψ T 0 c θ T s ψ T
Right-multiplying each partial derivative with R T T , we obtain
R T θ T R T T = 0 0 0 0 0 1 0 1 0 , R T ψ T R T T = 0 s θ T c θ T s θ T 0 0 c θ T 0 0
and multiplying each term with its respective angle velocity, θ ˙ T , ψ ˙ T , we conclude to the angular velocity tensor, viz.
Ω = 0 0 0 0 0 1 0 1 0 θ ˙ T + 0 s θ T c θ T s θ T 0 0 c θ T 0 0 ψ ˙ T = 0 ψ ˙ T s θ T ψ ˙ T c θ T ψ ˙ T s θ T 0 θ ˙ T ψ ˙ T c θ T θ ˙ T 0

Appendix D

We will prove Equation (46) regarding the linear Jacobian of the robot. To expand the second term of (45), using (41), we note the following:
Ω S T = Ω R T R x ( π 2 ) S T H = R ˙ T R T T R T R x ( π 2 ) S T H = ( R T θ T θ ˙ T + R T ψ T ψ ˙ T ) R x ( π 2 ) S T H
Substituting the partial derivatives from (A16) and performing calculations, we arrive at
Ω S T = 0 D c ψ T T s ψ T T c θ T s ψ T D c θ T c ψ T D s θ T s ψ T + T s θ T c ψ T T s θ T s ψ T D s θ T c ψ T D c θ T s ψ T T c θ T c ψ T ψ ˙ T θ ˙ T
We note that the vector S T H = [ T , D , 0 ] T is constant. Using (43) to substitute the angle derivatives, we obtain
Ω S T = 1 H s ψ T 0 D c ψ T T s ψ T T c θ T s ψ T D c θ T c ψ T D s θ T s ψ T + T s θ T c ψ T T s θ T s ψ T D s θ T c ψ T D c θ T s ψ T T c θ T c ψ T 0 cos θ T sin θ T 1 0 0 Δ v
= 1 H s ψ T D c ψ T + T s ψ T 0 0 s θ T ( D s ψ T + T s ψ T ) c 2 θ T ( D c ψ T T s ψ T ) s ( 2 θ T ) 2 ( D c ψ T T s ψ T ) c θ T ( D s ψ T + T s ψ T ) s ( 2 θ T ) 2 ( D c ψ T T s ψ T ) s 2 θ T ( D c ψ T T s ψ T ) Δ v
Setting
A = D c ψ T T s ψ T = D 2 + T 2 cos ( ψ T + ϕ ) , ϕ = arctan ( T / D ) B = T c ψ T + D s ψ T = D 2 + T 2 sin ( ψ T + ϕ )
and replacing in (A21), we finally arrive at
Ω S T = 1 H sin ψ T A 0 0 s θ T B c 2 θ T A s ( 2 θ T ) 2 A c θ T B s ( 2 θ T ) 2 A s 2 θ T A Δ v

References

  1. Fan, G.; Zhou, Z.; Zhang, H.; Gu, X.; Gu, G.; Guan, X.; Fan, Y.; He, S. Global scientific production of robotic surgery in medicine: A 20-year survey of research activities. Int. J. Surg. 2016, 30, 126–131. [Google Scholar] [CrossRef] [PubMed]
  2. Hadi Hosseinabadi, A.H.; Salcudean, S.E. Force sensing in robot-assisted keyhole endoscopy: A systematic survey. Int. J. Robot. Res. 2022, 41, 136–162. [Google Scholar] [CrossRef]
  3. Qian, L.; Wu, J.Y.; DiMaio, S.P.; Navab, N.; Kazanzides, P. A Review of Augmented Reality in Robotic-Assisted Surgery. IEEE Trans. Med. Robot. Bionics 2020, 2, 1–16. [Google Scholar] [CrossRef]
  4. Lee, D.; Yu, H.W.; Kwon, H.; Kong, H.J.; Lee, K.E.; Kim, H.C. Evaluation of Surgical Skills during Robotic Surgery by Deep Learning-Based Multiple Surgical Instrument Tracking in Training and Actual Operations. J. Clin. Med. 2020, 9, 1964. [Google Scholar] [CrossRef] [PubMed]
  5. Lavanchy, J.L.; Zindel, J.; Kirtac, K.; Twick, I.; Hosgor, E.; Candinas, D.; Beldi, G. Automation of surgical skill assessment using a three-stage machine learning algorithm. Sci. Rep. 2021, 11, 5197. [Google Scholar] [CrossRef]
  6. Moustris, G.P.; Hiridis, S.C.; Deliparaschos, K.M.; Konstantinidis, K.M. Evolution of autonomous and semi-autonomous robotic surgical systems: A review of the literature. Int. J. Med. Robot. Comput. Assist. Surg. 2011, 7, 375–392. [Google Scholar] [CrossRef]
  7. Maier-Hein, L.; Eisenmann, M.; Sarikaya, D.; März, K.; Collins, T.; Malpani, A.; Fallert, J.; Feussner, H.; Giannarou, S.; Mascagni, P.; et al. Surgical data science—From concepts toward clinical translation. Med. Image Anal. 2022, 76, 102306. [Google Scholar] [CrossRef]
  8. Moustris, G.; Tzafestas, C.; Konstantinidis, K. A long distance telesurgical demonstration on robotic surgery phantoms over 5G. Int. J. Comput. Assist. Radiol. Surg. 2023, 18, 1577–1587. [Google Scholar] [CrossRef] [PubMed]
  9. D’Ettorre, C.; Mariani, A.; Stilli, A.; Rodriguez y Baena, F.; Valdastri, P.; Deguet, A.; Kazanzides, P.; Taylor, R.H.; Fischer, G.S.; DiMaio, S.P.; et al. Accelerating Surgical Robotics Research: A Review of 10 Years with the da Vinci Research Kit. IEEE Robot. Autom. Mag. 2021, 28, 2–24. [Google Scholar] [CrossRef]
  10. Cui, Z.; Cartucho, J.; Giannarou, S.; y Baena, F.R. Caveats on the First-Generation da Vinci Research Kit: Latent Technical Constraints and Essential Calibrations. IEEE Robot. Autom. Mag. 2023, 2–17. [Google Scholar] [CrossRef]
  11. Hannaford, B.; Rosen, J.; Friedman, D.W.; King, H.; Roan, P.; Cheng, L.; Glozman, D.; Ma, J.; Kosari, S.N.; White, L. Raven-II: An Open Platform for Surgical Robotics Research. IEEE Trans. Biomed. Eng. 2013, 60, 954–959. [Google Scholar] [CrossRef] [PubMed]
  12. Schwaner, K.L.; Iturrate, I.; Holm Andersen, J.K.; Rosendahl Dam, C.; Jensen, P.T.; Rajeeth Savarimuthu, T. MOPS: A Modular and Open Platform for Surgical Robotics Research. In Proceedings of the 2021 International Symposium on Medical Robotics (ISMR), Atlanta, GA, USA, 17–19 November 2021; pp. 1–8. [Google Scholar] [CrossRef]
  13. Hagn, U.; Konietschke, R.; Tobergte, A.; Nickl, M.; Jörg, S.; Kübler, B.; Passig, G.; Gröger, M.; Fröhlich, F.; Seibold, U.; et al. DLR MiroSurge: A versatile system for research in endoscopic telesurgery. Int. J. Comput. Assist. Radiol. Surg. 2010, 5, 183–193. [Google Scholar] [CrossRef] [PubMed]
  14. Merlet, J.P. Parallel Robots; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2005. [Google Scholar]
  15. Briot, S.; Bonev, I.A. Are parallel robots more accurate than serial robots? Trans. Can. Soc. Mech. Eng. 2007, 31, 445–455. [Google Scholar] [CrossRef]
  16. Moradi Dalvand, M.; Shirinzadeh, B. Motion control analysis of a parallel robot assisted minimally invasive surgery/microsurgery system (PRAMiSS). Robot. Comput. Integr. Manuf. 2013, 29, 318–327. [Google Scholar] [CrossRef]
  17. Pisla, D.; Gherman, B.; Vaida, C.; Suciu, M.; Plitea, N. An active hybrid parallel robot for minimally invasive surgery. Robot. Comput. Integr. Manuf. 2013, 29, 203–221. [Google Scholar] [CrossRef]
  18. Kuo, C.H.; Dai, J.S. Kinematics of a Fully-Decoupled Remote Center-of-Motion Parallel Manipulator for Minimally Invasive Surgery. J. Med. Devices 2012, 6, 021008. [Google Scholar] [CrossRef]
  19. Beira, R.; Santos-Carreras, L.; Rognini, G.; Bleuler, H.; Clavel, R. Dionis: A Novel Remote-Center-of-Motion Parallel Manipulator for Minimally Invasive Surgery. Appl. Bionics Biomech. 2011, 8, 191–208. [Google Scholar] [CrossRef]
  20. Avizzano, C.A.; Filippeschi, A.; Villegas, J.M.J.; Ruffaldi, E. An Optimal Geometric Model for Clavels Delta Robot. In Proceedings of the 2015 IEEE European Modelling Symposium (EMS), Madrid, Spain, 6–8 October 2015; pp. 232–237. [Google Scholar] [CrossRef]
  21. Moustris, G.P.; Tzafestas, C.S. Modelling and Analysis of a Parallel Double Delta Mechanism for Robotic Surgery. In Proceedings of the 2022 30th Mediterranean Conference on Control and Automation (MED), Vouliagmeni, Greece, 28 June–1 July 2022; pp. 861–866. [Google Scholar] [CrossRef]
  22. Checcacci, D.; Sotgiu, E.; Frisoli, A.; Avizzano, C.; Bergamasco, M. Gravity Compensation Algorithms for Parallel Haptic Interface. In Proceedings of the 11th IEEE International Workshop on Robot and Human Interactive Communication, Berlin, Germany, 27 September 2002; pp. 140–145. [Google Scholar] [CrossRef]
  23. Alphashape: Polygons and Polyhedra from Points in 2-D and 3-D—MATLAB. Available online: https://www.mathworks.com/help/matlab/ref/alphashape.html (accessed on 1 January 2020).
  24. Ott, D.E. Abdominal compliance and laparoscopy: A review. J. Soc. Laparoendosc. Surg. 2019, 23, e2018.00080. [Google Scholar] [CrossRef] [PubMed]
  25. Liu, D.; Li, J.; He, C.; Kong, K. Workspace Analysis Based Port Placement Planning in Robotic-Assisted Cholecystectomy. In Proceedings of the 2011 IEEE International Symposium on IT in Medicine and Education, Cuangzhou, China, 9–11 December 2011; Volume 1, pp. 616–620. [Google Scholar] [CrossRef]
  26. Malbrain, M.L.; Peeters, Y.; Wise, R. The neglected role of abdominal compliance in organ-organ interactions. Crit. Care 2016, 20, 1–10. [Google Scholar] [CrossRef] [PubMed]
  27. Gao, Y.; Vedula, S.S.; Reiley, C.E.; Ahmidi, N.; Varadarajan, B.; Lin, H.C.; Tao, L.; Zappella, L.; Béjar, B.; Yuh, D.D.; et al. Jhu-isi gesture and skill assessment working set (jigsaws): A surgical activity dataset for human motion modeling. In Proceedings of the MICCAI workshop: M2cai, Boston, MA, USA, 14–19 September 2014; Volume 3, p. 3. [Google Scholar]
  28. Pavlov, A.; van de Wouw, N.; Nijmeijer, H. Frequency Response Functions and Bode Plots for Nonlinear Convergent Systems. In Proceedings of the 45th IEEE Conference on Decision and Control, San Diego, CA, USA, 13–15 December 2006; pp. 3765–3770. [Google Scholar] [CrossRef]
  29. Schwaner, K.L.; Jensen, P.T.; Savarimuthu, T.R. Increasing Precision of the Raven-II Surgical Robot by Applying Cascade Control. In Proceedings of the 2018 IEEE International Conference on Robotics and Biomimetics (ROBIO), Kuala Lumpur, Malaysia, 12–15 December 2018; pp. 1138–1144. [Google Scholar] [CrossRef]
  30. Peng, H.; Yang, X.; Su, Y.H.; Hannaford, B. Real-Time Data Driven Precision Estimator for RAVEN-II Surgical Robot End Effector Position. In Proceedings of the 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020; pp. 350–356. [Google Scholar] [CrossRef]
  31. Hwang, M.; Thananjeyan, B.; Paradis, S.; Seita, D.; Ichnowski, J.; Fer, D.; Low, T.; Goldberg, K. Efficiently Calibrating Cable-Driven Surgical Robots with RGBD Fiducial Sensing and Recurrent Neural Networks. IEEE Robot. Autom. Lett. 2020, 5, 5937–5944. [Google Scholar] [CrossRef]
Figure 1. Reference drawing of the Double Delta surgical manipulator.
Figure 1. Reference drawing of the Double Delta surgical manipulator.
Machines 12 00620 g001
Figure 2. View of the Double Delta surgical manipulator and definition of the coordinate frames.
Figure 2. View of the Double Delta surgical manipulator and definition of the coordinate frames.
Machines 12 00620 g002
Figure 3. Abstract diagram of the kinematic chain of the robot.
Figure 3. Abstract diagram of the kinematic chain of the robot.
Machines 12 00620 g003
Figure 4. (A) Conical approximation of the Delta robot workspace. (B) Frame and coordinate definition of the conical workspace.
Figure 4. (A) Conical approximation of the Delta robot workspace. (B) Frame and coordinate definition of the conical workspace.
Machines 12 00620 g004
Figure 5. Illustration of the centers of mass of each link, their relative displacement vector and the gravity vector, involved in the analysis of the static equilibrium forces.
Figure 5. Illustration of the centers of mass of each link, their relative displacement vector and the gravity vector, involved in the analysis of the static equilibrium forces.
Machines 12 00620 g005
Figure 6. Illustration of the motion of the laparoscopic tool and the remote center of motion.
Figure 6. Illustration of the motion of the laparoscopic tool and the remote center of motion.
Machines 12 00620 g006
Figure 7. Top Row: Full reachable workspace of the Double Delta robot, in place. 2nd Row: Views of the reachable workspace. 3rd Row: Views of the approximate workspace. 4th Row: Views of the RCM workspace. All dimensions are in mm.
Figure 7. Top Row: Full reachable workspace of the Double Delta robot, in place. 2nd Row: Views of the reachable workspace. 3rd Row: Views of the approximate workspace. 4th Row: Views of the RCM workspace. All dimensions are in mm.
Machines 12 00620 g007
Figure 8. Left: Isolines and slices of the RCM voxels according to their respective workspace volume Right: View of the RCM slices in situ with the maximal RCM workspace.
Figure 8. Left: Isolines and slices of the RCM voxels according to their respective workspace volume Right: View of the RCM slices in situ with the maximal RCM workspace.
Machines 12 00620 g008
Figure 9. Semi-log plot representing the volume of RCM voxels (in lt) having at least a given workspace volume (in lt).
Figure 9. Semi-log plot representing the volume of RCM voxels (in lt) having at least a given workspace volume (in lt).
Machines 12 00620 g009
Figure 10. Up: Views of the Simscape 3D model of the robot. Down: Block diagram of the model in Simscape.
Figure 10. Up: Views of the Simscape 3D model of the robot. Down: Block diagram of the model in Simscape.
Machines 12 00620 g010
Figure 11. View of the control diagram.
Figure 11. View of the control diagram.
Machines 12 00620 g011
Figure 12. Position error for the circle tracking experiment. Δ d 0 and Δ d 1 are the tracking errors of the points d 0 and d 1 , respectively. The tooltip tracking error is on the bottom row, denoted as Δ P t . All dimensions are in mm.
Figure 12. Position error for the circle tracking experiment. Δ d 0 and Δ d 1 are the tracking errors of the points d 0 and d 1 , respectively. The tooltip tracking error is on the bottom row, denoted as Δ P t . All dimensions are in mm.
Machines 12 00620 g012
Figure 13. Non-linear Bode plot of the closed-loop system for f = 0.5 Hz to f = 30 Hz. Amplitudes range from α = 25 mm to α = 125 mm.
Figure 13. Non-linear Bode plot of the closed-loop system for f = 0.5 Hz to f = 30 Hz. Amplitudes range from α = 25 mm to α = 125 mm.
Machines 12 00620 g013
Table 1. Robot parameters used for workspace calculation.
Table 1. Robot parameters used for workspace calculation.
DescriptionParameter NameValue
Delta workspace conic approx. radiusr124 (mm)
Delta workspace conic approx. heighth118 (mm)
Horizontal offset of tool axis to tool holderD78 (mm)
Vertical offset of tooltip to joint j 1 T 405 (mm)
Range of pitch angle Δ ψ ±60 (deg)
Length of links L H and L 5 H65 (mm)
Length of link L 1 1 165.5 (mm)
Length of link L 2 2 440 (mm)
Length of link L 3 3 230.5 (mm)
Length of link L 4 4 780 (mm)
Length of parallelogram mechanismS142 (mm)
Table 2. Volume and extent of the various workspaces.
Table 2. Volume and extent of the various workspaces.
WorkspaceSampling Step (mm)Volume (lt)Bounding Box (mm)
X Y Z
Delta actual23.78830885545
Delta cone-1.90118118124
Double Delta full5126.39830885545
Double Delta aprx.2.587.58762800527
Double Delta RCM555.22675770525
Table 3. Tracking errors for the two experiments.
Table 3. Tracking errors for the two experiments.
Circle Tracking Experiment
Distance 1 Errormaxmin
rmse (mm)max (mm)XYZXYZ
Δ d 0 0.05030.07760.07680.01050.0122−0.0730−0.0100−0.0000
Δ d 1 0.05220.08010.07570.01330.0021−0.0791−0.0158−0.0127
Δ P t 0.58720.90410.84610.14450.3185−0.8605−0.1151−0.0627
JIGSAWS suturing tracking experiment
Distance 1 errormaxmin
rmse (mm)max (mm)XYZXYZ
Δ d 0 0.13342.07770.19120.10711.9920−0.1514−0.0781−2.0776
Δ d 1 0.13342.08460.18080.10141.9918−0.1948−0.1450−2.0804
Δ P t 0.25562.08491.46020.87492.0205−0.9919−0.6418−1.9550
1 L2 distance of Δ∗.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Moustris, G.; Tzafestas, C. Modeling, Simulation and Control of the Double Delta Surgical Robot. Machines 2024, 12, 620. https://doi.org/10.3390/machines12090620

AMA Style

Moustris G, Tzafestas C. Modeling, Simulation and Control of the Double Delta Surgical Robot. Machines. 2024; 12(9):620. https://doi.org/10.3390/machines12090620

Chicago/Turabian Style

Moustris, George, and Costas Tzafestas. 2024. "Modeling, Simulation and Control of the Double Delta Surgical Robot" Machines 12, no. 9: 620. https://doi.org/10.3390/machines12090620

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop