Abstract
Continuum manipulators are a class of robots with many degrees-of-freedom, leading to highly flexible motion with inherent compliance. These attributes make them well suited for manipulation tasks and physical interaction with the environment. A high impact yet challenging field for exploring continuum robot designs is free-floating underwater manipulation with a remotely operated vehicle (ROV). In this article, we propose a modular, reconfigurable, cable-driven continuum arm for free-floating underwater manipulation and present a corresponding kinematics, control, and computation framework. The mechanical design consists of a continuum arm, an actuation unit, and a waterproof enclosure. The kinematics model is introduced as two mappings between three spaces: the joint space, the configuration space, and the task space. The differential kinematics for each mapping is also derived. An electronics system design is proposed for underwater applications, including the communication framework between the topside computer (above surface), on-board computer, and manipulator mechatronics. Experimental validation is presented to demonstrate the robot’s underwater functionality, test the limits of its articulation, and evaluate the arm’s stiffness. Future work includes field testing with an ROV platform and development of advanced controls and planning for manipulation tasks.
1 Introduction
Continuum robots are an unconventional class of robots inspired by biological features such as an elephant’s trunk [1–3] or an octopus’s tentacles [4–7]. They have a very large number of degrees-of-freedom (DOFs), allowing them to achieve a nearly continuous bending shape. One unique feature of continuum robots is their inherent flexibility and compliance, making them ideal for safe physical interactions with the environment. The entire robot arm can be used as a manipulator to grasp objects in a whole arm caging style, or a gripper can be attached to the end of the arm to complete more versatile and precise tasks.
A significant challenge for continuum robots is the difficulty in modeling and control due to the high flexibility. Many researchers have investigated this problem and proposed solutions, including work by Chirikjian and Burdick to analyze the kinematics of hyper-redundant manipulators [8–11]. Gravagne and Walker proposed a kinematic model and dynamic model for planar motion of a continuum robot and analyzed the forces, compliance, and control [12,13].
Continuum robots have attracted interest primarily for biomedical applications because of their flexibility and compliance enabling safe interaction with the anatomy [14–17]. These qualities also make them suitable for mobile robot manipulation. McMahan et al. demonstrated the field capabilities and manipulation of a pneumatic continuum manipulator attached to a mobile robot platform in Ref. [18]. Rone et al. used a continuum tail to stabilize a walking mobile robot [19,20]. However, there are no continuum manipulators suitable for underwater free-floating manipulation yet. Continuum robots for underwater applications have been limited to seabed locomotion and seabed mobile robots. For instance, Liu et al. used a continuum arm and gripper for underwater manipulation on an underwater walker [21]. Gong et al. implemented a soft manipulator for seafloor manipulation [22]. Cianchetti et al. developed an octopus-inspired robot that utilizes eight continuum arms for locomotion and manipulation [7].
Free-floating manipulation is a unique problem that utilizes the mobility of the ROV platform to achieve a much larger reachable workspace while maintaining fine manipulation capability, which opens up many new possible applications. Unfortunately, this also introduces many challenges for current robot designs, which has been addressed in literature [23–25]. Often these designs use rigid-link serial arm structures that are heavy, expensive, and difficult to make waterproof, which limits their applications and increases the barrier for small business and hobbyists to adopt.
In this article, a modular open-source cable-driven continuum robot design is proposed. This robot is designed for free-floating underwater manipulation in conjunction with an underwater remotely operated vehicle (ROV). The continuum arm is made using a series of eight links connected via two DOFs universal joints. The robot utilizes Nitinol cables to actuate the arm and lead screw actuation to provide increased mechanical advantage. A waterproof enclosure and sleeve surrounds the robot arm and its actuation unit to allow the robot to be operated underwater. The enclosure is easy to attach and reconfigure to an ROV, allowing for custom configurations for specific tasks. The robot is fabricated using off-the-shelf components and 3D printed parts, which allows the design to be easily customized and reproduced at low cost. Important design decisions are discussed to support the robot’s utility for underwater manipulation and compatibility with an ROV.
To control the robot, a two-part kinematics model is adapted from Refs. [26,27] to accommodate our discrete universal joint design. The two-part model represents mappings among three kinematics spaces: the task space, the configuration space, and the joint space of the robot. These spaces represent the end link position, the arm shape, and the motor positions. The kinematics model maps the joint space to the configuration space and the configuration space to the task space. To derive the kinematic model, the arm is modeled as a series of rigid links connected by universal joints. While the arm design is technically discrete, not continuous, its high flexibility and degrees-of-freedom allow us to model and approximate it as a continuum robot and will be referred to throughout this paper as a continuum arm. The differential kinematics model is also derived.
There have been open-source hardware projects in the robotics community that have helped significantly lower the barrier of entry to hardware prototypes, such as the OpenHand project at Yale2 [28,29], the Soft Robotics Toolkit developed at Harvard and Trinity College Dublin3, and the FAB@HOME open-source 3D printer project started at Cornell.4 We are committed to contributing open-sourced mechanical, electronics, and software designs to the research community that enables customizability tailored to different users’ needs.
Main contributions of this work include four parts. First, the self-contained, sealed actuation unit allows the arm to be easily mounted in a number of configurations on a mobile robot platform, as demonstrated in Fig. 1(a). Second, this also allows the robot to be used for free-floating manipulation. To the best of our knowledge, we are the first to design and integrate such modular continuum robots for this application. However, the control and implementation of the entire free-floating system is outside the scope of this article and is planned for future works. Third, although the mechanism design utilizes discrete universal joints instead of continuum structures, we developed a hybrid kind of kinematics model that accommodates the continuum shape assumption and the discrete joint implementation, which could be useful for other similar designs in the future. Finally, the proposed design demonstrates a commitment to open-source usability. Components were chosen to be affordable and readily available. The CAD models are available for free download through our website, which can be used to 3D print a large portion of the components. The electronics design allows the entire robot to be viewed as modular USB devices, which is advantageous for easy integration with the electronics systems for a variety of on-board computer platforms. The addition of inertial measurement units (IMU)’s on each link allows for real-time estimation of the continuum arm’s position for ease of teleoperation.
This article is organized as follows: in Sec. 2, the continuum robot design design, materials, and fabrication is detailed. In Sec. 3, the kinematics and differential kinematics models are derived. Section 4 discusses the control architecture and electronics hardware. Section 5 discusses tests to demonstrate the functionality of the proposed design. Finally, Sec. 6 outlines next steps in the design refinement and provides concluding remarks.
2 Mechanism Design
The continuum robot contains two major modules: the flexible continuum arm, which is driven by four Nitinol cables, and the actuation unit, which pulls the cables of the arm and houses the electronics. Both modules are enclosed by a waterproof case, which is composed of a cylindrical enclosure and a flexible bellows.
There are multiple methods of actuating continuum robots, including pneumatic actuation [18,21], shape memory alloy actuators [4,5], cable or tendon actuation [1,14,30,31], mechanical linkages [2,19,20,32], or some combination of multiple methods. A cable-driven mechanism is a good choice for an underwater continuum robot because it can be made compact and centralized. Combining with high mechanical advantage actuation such as lead screw, it can provide large amounts of force to resist strong external disturbances such as current, and its high back-drive impedance enables low power consumption to sustain stationary posture or configuration.
The continuum robot is designed to be attached to a free-floating ROV platform, such as the BlueROV2 by Blue Robotics, Inc.5 The modularity of the robot makes it possible to reconfigure the system mechanically for different tasks. Figure 1 shows example configurations: Fig. 1(a) shows two arms implemented in a forward configuration to complete fine manipulation tasks (e.g., object handling); Fig. 1(b) shows two arms implemented in a downward configuration to pick and place objects on the seafloor; and Fig. 1(c) shows four arms implemented in a forward configuration to crawl along a fence.6 The continuum robots can be reconfigured on other ROV platforms as well. In the future work, algorithms could be investigated to optimize the reconfiguration (e.g., number of arms, mounting positions and orientations) based on task specifications.
2.1 Continuum Arm Design.
The continuum arm uses a series of rigid links connected by universal joints that each allow rotations in two axes. Extension springs connect each link to provide structure stiffness of the arm. The robot could be made longer or shorter to accommodate a specific task by adding or subtracting links to the arm. The choice of design parameters of each link has a large effect on the kinematics calculations (e.g., the maximum required stroke length of the robot) as well as mechanics calculations (e.g., deformation under disturbance force). Table 1 summarizes the values of parameters used for the continuum robot. The parameter r is the radial distance from the center of the link to the cable routing point. The length L is the distance from the center of the link to the center of the universal joint.
Parameter | Symbol | Value |
---|---|---|
Radius | r | 21 mm |
Length | L | 18 mm |
Number of links | Nl | 8 |
Number of cables | Nc | 4 |
Maximum bending angle | θmax | π/2 |
Spring stiffness | ks | 528.9 N/m |
Unstretched spring length | ls | 25.4 mm |
Diameter of Nitinol backbones | db | 1.5 mm |
Parameter | Symbol | Value |
---|---|---|
Radius | r | 21 mm |
Length | L | 18 mm |
Number of links | Nl | 8 |
Number of cables | Nc | 4 |
Maximum bending angle | θmax | π/2 |
Spring stiffness | ks | 528.9 N/m |
Unstretched spring length | ls | 25.4 mm |
Diameter of Nitinol backbones | db | 1.5 mm |
Four Nitinol cables are attached to the final link via set screws. While the minimum number of pulling cables to actuate a continuum robot is two, we use four cables, and the actuation redundancy provides a larger wrench-feasible workspace in configuration space and generally reduces the peak tendon pulling load per individual cable. Large diameter cables were chosen to further increase the stiffness of the arm.
The continuum arm consists of eight 3D printed links that are connected via aluminum universal joints. These links have four routing holes for the Nitinol cable. Four stainless steel extension springs are attached between each link. The final link includes four threaded holes to house a set screw to fix each cable. Each link also has a flat area to accommodate an IMU for real-time shape sensing. This process is described in more detail in Sec. 5.
2.2 Actuation Unit Design.
The actuation unit uses Dynamixel XL430-W250-T servo motors produced by Robotis, Inc.7 to actuate four lead screws, providing the linear motion required to pull the cables. The lead screw mechanism is larger and heavier than alternative cable driving mechanisms such as pulleys, but provides higher mechanical advantage and therefore increases the maximum load of the robot. The added system weight is not a major concern since underwater vehicles generally have a high payload capacity due to the effects of buoyancy (Fig. 2).
The actuation unit consists of three parallel 3D printed mounting plates (referred to as top, bottom, and electronics plates), which mount the continuum arm, motors, and electronics boards, respectively. The lead screws are attached to the motors using 3D printed couplings with a shoulder screw pinned through the lead screw to secure it and supported by bearings on the top plate. The top and bottom plates are aligned and fastened together using two stainless steel standoffs and two 3D printed supports, which accommodate the linear potentiometers. A 3D printed coupling connects each lead screw to a guide rail. To accommodate linear position feedback via a contact-based membrane potentiometer (ThinPot), the coupling also has a spring plunger attached to ensure firm and continuous contact with the potentiometer.
2.3 Waterproof Enclosure Design.
The actuation unit is housed in a cylindrical waterproof enclosure minimally modified from the Blue Robotics, Inc. 6 in. series watertight enclosure. It consists of an acrylic tube and a collar and flat plate at each end. O-rings are used to seal the connections between these components, and screws are used to secure the end plate to the collar. Sealed penetrators attached to the back plate allow communication cables to enter the enclosure without compromising the waterproof seal. The diameter of the enclosure was chosen to accommodate the motor layout, and the length was chosen to accommodate the required stroke length Qmax, calculated from the continuum arm design parameters as discussed later in this article.
The continuum arm is sealed via a flexible rubber bellows. Although originally intended for linear motion, the bellows also work well for the robot design by acting as a lightweight and extremely flexible sleeve. The diameter and the length of the bellows are chosen primarily to accommodate the continuum arm dimensions. Since the bellows are flexible, their length can stretch or compress to match the length and motion of the arm. The diameter also changes inversely proportional to the changes in the length; however, these changes are very small in comparison and can be neglected. The open ends of the bellows are closed via the large orange silicone collar and large plastic disk. Waterproof epoxy was put into all of the gaps in the joints to seal the bellows. The epoxy was also put between the flat collar and the end plate of the actuation unit to attach and seal the bellows to the actuation unit enclosure. The end plate and bellows are detachable from the collar together to access the inner mechanisms by unscrewing the fasteners, providing easy access for maintenance.
3 Mathematical Modeling
A continuum robot model is applied to the arm, which is actually a series of eight rigid links connected via two degrees-of-freedom universal joints. The configuration space variables are used to calculate the rotation matrices and displacements of each link relative to the robot’s base coordinate system. The sum of the distances of the cable routing points is used to calculate the motor position for the joint space, and the location of the end link is used to find the task space variables (the position and orientation of the end disk). The differential kinematics and Jacobian for the configuration space to joint space mapping and configuration space to task space mapping are also derived.
This section is broken up into two subsections. Section 3.1 details the kinematic modeling of the continuum arm, which defines the relationships between the robot shape, position and orientation of the end disk in the arm, and the linear position of the motor. Section 3.2 includes calculations of the Jacobian matrices for relating the velocities of these variables.
3.1 Kinematics.
The kinematic modeling of our design is facilitated via three sets of variables that are referred to as the task space variables, the configuration space variables, and the joint space variables. The configuration space variables indicate the in-plane bending angle θ and the bending plane direction angle ϕ of the manipulator as a continuum structure. The joint space variables refer to the actuation displacements for pulling cables, represented by q1 to . The task space variables are defined as the position and orientation of the end disk represented by a vector xe and a rotation matrix Re, respectively. This leads to two kinematic mappings: the configuration to joint space mapping, and the configuration to task space mapping. Key assumptions for the kinematic model are as follows: (1) the continuum arm bends in a plane, (2) the bending angles between each two adjacent disks are the same, (3) the Nitinol cables are inextensible.
3.1.1 Configuration to Joint Space Mapping.
3.1.2 Configuration to Task Space Mapping.
3.2 Differential Kinematics
3.2.1 Configuration to Joint Space Mapping.
3.2.2 Configuration to Task Space Mapping.
4 Electronics, Systems, and Controls
The kinematic model derived in Sec. 3 is implemented in robot operating system to achieve robot control. The communication is facilitated using USB between the topside control computer and the on-board electronics boards. The electronics hardware is prototyped using two microprocessor boards that communicate with the central computer and the auxiliary sensors. As shown in Fig. 4, the first microprocessor board is dedicated to motor control, while the second is dedicated to sensor readings and communications. The motor control board is connected to four Dynamixel XL-430-W250-T servo motors produced by Robotis Inc. (37). The sensor board is connected to four linear potentiometers that are used as additional position sensors. Inertia measurement units (IMUs) are attached to each of the disks of the continuum arm and are also connected to the sensor board.
A user control interface was developed using a gamepad for the purpose of teleoperation. The command is captured using the joy stick, in the format of velocities in and . The velocity command is sent to the kinematic model and then used to issue low-level commands for motor positions. As shown in Fig. 4, a tether is used to communicate with the ROV, and the robot electronics boards connect to the on-board central computer via USB. For testing purposes, these boards were connected to the topside computer directly. The ROV hardware and software schematic is outside the scope of this article.
5 Experimental Validation
Several tests were conducted to demonstrate the functionality of the robot, articulation, and stiffness. This section outlines the experiments performed and their outcomes.
5.1 Motion, Articulation, and Visualization.
Basic motion control of the robot is fundamental to its success. This was tested through joystick operation of the robot, utilizing the control framework discussed in Sec. 4. To minimize the effects of gravity, the robot was placed in a vertical orientation. A bending angle of up to 90 deg was demonstrated in a full 360 deg rotation. The arm can go from 0 deg to 90 deg in approximately 6 sec and complete a revolution in approximately 30 sec with the bending angle held at 90 deg while using a joystick controller. A fifth-order polynomial trajectory planner was also implemented to allow the robot to smoothly move from one configuration to another.
The functionality of the IMUs was also demonstrated. The orientation readings from each IMU is used to calculate the relative rotation between each link. These are then converted into unique joint angles, representing the bending angle along each of the two DOFs of the universal joints. The combination of these joint angles allows us to visualize the arm in real time using RVIZ and a URDF file created from the CAD model. An example of this visualization can be seen in Fig. 5. This figure demonstrates the accuracy of the visualization in representing the actual position of the arm over different angles.
5.2 Underwater Functionality.
A fundamental goal of the robot is to be waterproof. The first step to determine this is to create and maintain a vacuum inside the enclosure. This allows us to test the seal without risking exposure or damage to the electrical components. A vacuum of approximately −400 mmHg was drawn and the pressure was monitored over time to ensure it did not drop, which would indicate a leak. The enclosure successfully maintained a vacuum for over fifteen minutes.
After the initial vacuum test, the robot was fully submerged in a tank to provide a more realistic test. The robot did not indicate any leaks when submerged; moreover, external power and communications were fully functional. The same basic joystick control test was performed underwater successfully, and a complete circular motion was achieved underwater. This setup is shown in Fig. 6. This figure shows the accuracy of the arm in achieving both a perfectly straight configuration and a maximum bending angle configuration while submerged.
Preliminary water tests also highlighted some design shortcomings that could be overcome. One is that both the arm and actuation units are very buoyant due to the large empty volume inside the bellows and enclosure. To resolve this, small weights were added around the bellows as evenly distributed as possible. These were attached by stringing the weights on a wire and attaching a snap swivel at both ends of the wire. The snap swivels were then connected together to form a loop around the bellows with a small enough diameter to stay in place. Multiple loops were attached one at a time until the arm was able to remain straight when submerged, as shown in Fig. 6(a).
5.3 Arm Stiffness Test.
The success of the robot in resisting external disturbances, such as a force caused by a strong current, is also crucial for demonstrating the robot’s suitability for ROV manipulation. An experimental setup was designed to apply a known weight perpendicular to the end of the arm via a string. The setup contains a rail with a pulley that can be adjusted to change the angle and position of the string to keep the applied force perpendicular to the arm. The setup can be modified to flip the direction of the string to apply an outward radial force (against the direction of bending) or an inward radial force (with the direction of bending), as shown in Fig. 7. This experiment was repeated with increasing weight from 0 to 1.5 kg with arm bending angles ranging from 30 deg to 90 deg. For consistency, ϕ was kept at 0 deg. A tracking square was attached to the end link to track the deflection of the arm as the weight was applied by taking pictures with a mounted camera.
The stiffness of the arm was analyzed by calculating the position and orientation of the tracking square over a series of frames for a specific bending angle. The algorithm detects Harris corners within a user-specified range, and the correct points corresponding to the tracking square are manually selected. The length of the square is known and used as a scale to calculate the exact displacements. Finally, the weight is plotted as a function of the calculated displacements and a linear polynomial curve is fit to the data to numerically find the stiffness, as shown in Fig. 8. The stiffness for each bending angle is summarized in Table 2.
Angle (deg) | Spring stiffness inward (N/m) | Spring stiffness outward (N/m) |
---|---|---|
30 | 60.5720 | 112.0680 |
40 | 63.5241 | 100.0550 |
50 | 66.7533 | 102.6783 |
60 | 63.4751 | 124.0438 |
70 | 66.4339 | 126.0441 |
80 | 71.0786 | 89.0820 |
90 | 71.6793 | 94.1832 |
Angle (deg) | Spring stiffness inward (N/m) | Spring stiffness outward (N/m) |
---|---|---|
30 | 60.5720 | 112.0680 |
40 | 63.5241 | 100.0550 |
50 | 66.7533 | 102.6783 |
60 | 63.4751 | 124.0438 |
70 | 66.4339 | 126.0441 |
80 | 71.0786 | 89.0820 |
90 | 71.6793 | 94.1832 |
The experimental data show that the stiffness of the arm is fairly linear for every angle and loading direction. In general, the stiffness increases as the bending angle increases. The outward loading case has a noticeably larger stiffness when compared to the inward loading case.
6 Conclusion
This article introduces the design of a modular, open-source continuum robot for underwater manipulation. The design is easy to reproduce and compatible with a variety of ROV platforms. This design consists of a tendon-driven continuum arm, lead screw actuation mechanism, and a waterproof enclosure to seal the entire robot. We derived a two-part kinematic and differential kinematic model mapping the joint space, configuration space, and task space model. We also developed the necessary electronics, controls, and communications. The current design and future modifications and customization will be released online.8
The operation of a functional prototype has been successfully demonstrated in testing preliminary functions, as shown in Fig. 6. The control in configuration space was achieved through user joystick operation, as discussed in Sec. 4. Underwater operation was tested by fully submerging the robot in a tank. The robot did not indicate any leaks when submerged; moreover, external power and communications were fully functional, allowing the robot to achieve the same range of motion underwater. Neutral buoyancy of the arm was achieved by incrementally adding ballast weights around the bellows until the arm was able to maintain its configuration without deflection.
While this testing has shown the robot to be fundamentally operational, there is still additional development and refinements to improve the robot’s performance and integrate it with a floating ROV platform. A rigorous analysis of the design space will be carried out to analyze how the robot can be optimized for metrics such as maximum stiffness, maximum supported external load, and others. The robot must still be fully integrated with the mobile platform, which includes creating a mounting design and redesigning the electronics system to facilitate power transmission and communications. Finally, advanced controls and planning must be implemented to accomplish specific tasks such as perching (in which the robot stabilizes itself using a pier or other underwater object) or object manipulation. Implementing these improvements will yield a robot that can overcome a wide array of difficult underwater manipulation problems.
Footnotes
Conflict of Interest
There are no conflicts of interest.
Data Availability Statement
The data and information that support the findings of this article are freely available.9
Acknowledgment
This research was supported in part by USDA-NIFA (Grant No. 2021-67022-35977).
Nomenclature
- q =
joint space vector composed of linear motor position:
- n =
thread starts
- p =
thread pitch
- r =
radius of continuum arm link
- L =
length between link centroid and joint centroid
- T =
cable tension
- ji =
position vector of centroid of joint i
- oi =
position vector of centroid of link i
- pi,j =
position vector of routing point for cable j on link i
- xe =
position vector of end link
- Jqψ =
Jacobian matrix relating joint and configuration velocities
- Jxψ =
Jacobian matrix relating task and configuration velocities
- Re =
rotation matrix representing orientation of end link
- db =
diameter of Nitinol cables
- di,j =
distance between routing points for cable j between link i and i − 1
- ks =
spring stiffness
- lj =
length of cable j
- l0,j =
neutral length of cable j
- ls =
unstretched spring length
- Dt =
thread travel distance
- Nl =
number of links
- Nc =
number of cables
- Qmax =
maximum stroke length
- Ri =
rotation matrix representing orientation of link i
- θ =
in-plane bending angle
- θmax =
maximum bending angle
- τs =
motor stall torque
- ϕ =
bending plane angle
- ψ =
configuration space vector representing shape of continuum arm
- ω =
angular velocity vector of end link
Appendix A: Derivation of Jωψ
Thereby, we have achieved the vectorization and rearrangement of Eq. (37), arriving at Eq. (A4). In addition, we note that matrix F has linearly independent columns and has a rank of 3, which suggests that it has a particular pseudoinverse as a left inverse.