Real-time method for tip following navigation of continuum snake arm robots

https://doi.org/10.1016/j.robot.2014.05.013Get rights and content

Highlights

  • Optimization approach for Tip Following snake arm robots.

  • Designed for a generic continuum Snake Arm construction.

  • Proposes an efficient method of creating the objective function.

  • Minimizes the deviation from the navigated path, rather than environmental objects.

Abstract

This paper presents a novel technique for the navigation of a snake arm robot, for real-time inspections in complex and constrained environments. These kinds of manipulators rely on redundancy, making the inverse kinematics very difficult. Therefore, a tip following method is proposed using the sequential quadratic programming optimization approach to navigate the robot. This optimization is used to minimize a set of changes to the arrangement of the snake arm that lets the algorithm follow the desired trajectory with minimal error. The information of the Snake Arm pose is used to limit deviations from the path taken. Therefore, the main objective is to find an efficient objective function that allows uninterrupted movements in real-time. The method proposed is validated through an extensive set of simulations of common arrangements and poses for the snake arm robot. For a 24 DoF robot, the average computation time is 0.4 s, achieving a speed of 4.5 mm/s, with deviation of no more than 25 mm from the ideal path.

Introduction

Snake Arm robots are a specific subset of hyper-redundant manipulators which are primarily defined by their ability to navigate through a complex environment, such as a nuclear power plant  [1] or the aftermath of an earthquake  [2]. These robots can be used for inspection tasks or minimally invasive repairs (if their stiffness allows).

The term hyper-redundant, coined by Chirikjian and Burdick[3], refers to a redundant manipulator with a large number of degrees of freedom (DoF) and a similar morphology to a tentacle or snake. Normally, the common designs use repeating structures of two revolute joints. These joints can either be continuum, formed of a flexible rod or a spring  [4] or discretized as a series of universal joints  [5]. There are various methods that can be used to actuate this kind of manipulator including cables  [4], pneumatics  [6] or shape memory alloys  [7].

Snake arms often consist of four main parts  [8], as depicted in Fig. 1. The arm is split up into several sections; each section has 2 DoF, and an end-effector that depends on the type of scenario. The end-effectors can consist of grippers, high-speed spindles, a vision system, or a combination. Most designs keep the main actuation mechanism extrinsically in order to reduce the weight within the snake arm. This actuation is often mounted in a pack at the base of the robot. Unlike most hyper-redundant manipulators, some snake arms and industrial robots use a feed-in mechanism, to allow advancing of the base position of the arm, which makes longitudinal/rotational navigation easier. In the following equations it is assumed that the feed-in system used can accurately provide a linear advancement along the initial trajectory and it is not intended to be the subject of the current communication.

Fig. 1 also shows a simplified concept of a typical problem that can be solved by the snake arm. The user wishes to inspect or repair a feature in the area of interest; access is not possible with a conventional tool and this scenario is not immediately solvable with the sweeping motions commonly used by hyper-redundant manipulators  [9]. However, the snake arm can move along the path suggested and weave through the obstacles and then perform the required task. This environment is used to demonstrate the algorithm.

The approach often taken, for this longitudinal navigation, is to apply already existing algorithms such as obstacle avoidance or path planning. Chirikjian et al.  [10] demonstrates a planar obstacle avoidance algorithm with a “tunneling” technique (to constrain the geometry) to navigate through a known environment. An extension of this performed by Choset and Henning  [11] uses sensor data to create Generalized Voronoi Graphs to achieve a follow-the-leader approach. Another optimization approach is presented by  [12] which uses pre-defined obstacles to navigate active cannulas. Moreover, an obstacle avoidance algorithm for rigid link robots  [13] was updated by  [14] to show how it can be adapted to continuum manipulators with the use of discrete sensors along the length of the arm.

Most obstacle avoidance algorithms or path planners require a well-defined environment and they would struggle in tasks with free-moving elements that, although are known by their CAD information, their position is unknown within the navigation space, such as the rotatives within a jet engine that can move freely on a shaft; or for disaster sites where no environmental data exists. The obstacles in these types of environment can be mapped by sensors, as suggested in  [14]; however sensors add extra weight which many designs could not carry due to limited payload capacity.

An alternate technique for navigating the Snake Arm is Tip Following; this process works on-the-fly by treating the tip of the arm as a free-moving point. As this point is moved in the desired direction, an algorithm is used to determine a new arrangement of the snake arm that advances the tip to the new position and minimizes the deviation from the path already travelled. Additionally, it is possible to map the movements of this point to a two-axis gamepad to create an intuitive interface for the end-user. The user can navigate the tip around obstacles with only a camera feed embedded in the end-effector, if the algorithm can guarantee a solution within a deviation tolerance.

For uninterrupted movement, the algorithm needs to determine a new arrangement of the robot in the time that is taken for the previous change to be performed. A simple concept for calculating a solution in real-time is commonly used in computer graphics, especially in the videogame Snake. Each section of the snake avatar, as it moves, takes the position of the previous section. In a similar manner, by recording the configuration of the tip section every step interval, it is possible to pass this data to subsequent sections when they reach the same position.

Experimentation with this concept  [15] showed that, for snake arms with long sections and high bending angles, there is an oscillating error in the tip position. To explain the origins of this error, Fig. 2 shows a pair of 2-section snake arms. Arm 1 is formed as a straight trajectory, followed by a π/2 bend angle. This arm is to be advanced a full section length, S, such that the first section is a π/2 bend angle and a straight trajectory depicted by the dotted line. To preserve the orientation of the tip, it is obvious that the two sections must pass through π/4 bending angle at the same time. Arm 2 shows this intermediate stage if it is assumed to occur mid-way through the advancement, i.e. assuming a linear relationship. However the tip position overshoots the trajectory by 13.66% of S. As such, it is clear that the relationship is non-linear and therefore not capable of maintaining the path and this might lead to collisions within the environment.

Recently, a new tip following method suitable for snaking has been reported  [16]; this takes sections in pairs along the length and finds an arrangement that starts tangential to the path and ends tangential to the path. By following this process through the whole arm it is possible to find a completely new pose for small changes. However this method limits the freedom of the snake, as every other section end must be on the path, which may not be possible in complex poses with high bending angles.

This paper presents a novel methodology for calculating the performance of a new arrangement, to be used as an objective function for the sequential quadratic programming (SQP) method. This optimization process is then implemented within a tip following algorithm suitable for navigating a snake arm in real-time. This algorithm is free of any requirements of environmental data and represented such that it can be used by a wide range of continuum designs with various different specifications. Performance of simulations of the complete system is determined based on the path deviation, tip accuracy, and computation time.

Section snippets

Geometric representation of a snake arm

Any continuum design of sufficient flexibility, or a discrete design with enough passive joints to be considered serpentine, can be modelled as a series of arcs for each actuated section. The formulation of this model uses the kinematics offered by  [17], since these equations present a purely geometric case and ignore the effect of gravity on the arm. It is assumed that any external influence on the accurate positioning of the arm is taken into account by the low-level control.

Taking the

Formulation of the objective function

Any optimization process is only as good as the objective function. Nevertheless, there are some parameters that are difficult to calculate very quickly such as the performance value of a hyper-redundant system. With respect to the tip following, this performance value has to indicate on the one hand, the accuracy of the tip position and on the other hand the deviation from the path.

Implementing the complete system

So far this paper presents only the movement of the tip in a straight line, and not how the curves in the path are created or how to integrate the base advancement with a feed-in mechanism. These have been overlooked intentionally in the previous section as neither of these behaviours affects the optimization process; but they are critical for the final system.

Simulation trials and results

The simulations for the new tip following strategy were performed on a standard commercial desktop running an i7 960 (3.2 GHz) processor. Simulations were performed in LabView and analyzed in MATLAB©. All tests have a section length of 100 mm and are advanced with steps of 2 mm. For each trial, the computation time per step is measured and the deviation from the desired path and tip position are recorded. The results are summarized in Table 1, along with some extra trials that are not covered

Conclusions

This paper presented a novel technique for navigating a Snake Arm without the need for path planning or well-defined environments. With an average computation time of 0.410 s, for snake arms with 24 DoF, it is possible to advance the tip at a speed of 4.5 mm/s without interrupting the motion. For most arrangements the deviations in the path can be kept below 15 mm, and a tip accuracy of ±0.75 mm. Considering the typical in-situ scenario the snake arm is intended for, 4 min to navigate is a vast

Acknowledgements

With thanks to the work by Dr. Mark Raffles and Xin Dong for the design and construction of the snake arm shown. The research leading to these results has received funding from the European Union Seventh Framework Programme (FP72011) under grant agreement no. 284959 (MiRoR: http://www.miror.eu/) and Rolls-Royce Plc.

David Palmer graduated with an M.Eng. in Cybernetics from the University of Reading, United Kingdom in 2011. He is currently studying as a Ph.D. candidate at University of Nottingham.

References (21)

  • R. Buckingham et al.

    Snaking around in a nuclear jungle

    Indust. Robot-an Int. J.

    (2005)
  • H. Tsukagoshi, A. Kitagawa, M. Segawa, Active Hose: an artificial elephant’s nose with maneuverability for rescue...
  • G.S. Chirikjian, J.W. Burdick, Hyper-redundant robot mechanisms and their applications, in: IEEE/RSJ International...
  • C.Q. Li et al.

    Design of continuous backbone, cable-driven robots

    J. Mech. Des.

    (2002)
  • G.Z. Lum, S.K. Mustafa, H.R. Lim, W.B. Lim, G. Yang, S.H. Yeo, Design and motion control of a cable-driven dexterous...
  • W. McMahan, V. Chitrakaran, M. Csencsits, D. Dawson, I.D. Walker, B.A. Jones, M. Pritts, D. Dienno, M. Grissom, C.D....
  • M. Ivanescu, N. Bizdoaca, D. Pana, Dynamic control for a tentacle manipulator with SMA actuators, in: IEEE...
  • R. Buckingham

    Snake arm robots

    Ind. Robot

    (2002)
  • M. Schlemmer, On-line trajectory optimization for kinematically redundant robot-manipulators and avoidance of moving...
  • G.S. Chirikjian, J.W. Burdick, An obstacle avoidance algorithm for hyper-redundant manipulators, in: IEEE International...
There are more references available in the full text version of this article.

Cited by (72)

  • Adaptive trajectory control of an under-actuated snake robot

    2022, Applied Mathematical Modelling
    Citation Excerpt :

    Xidias [30–32] proposed a time-optimal trajectory planning method based on a multi-population genetic optimization algorithm. Palmer et al. [33] used the sequential quadratic programming optimization method to realize the trajectory tracking of the hyper-redundant robot. Srinivas et al. [34,35] obtained the inverse kinematics solution by assuming the motion of each joint segment of the continuum robot as a circular arc and then sequentially compensating for the change in the direction of each continuum joint segment.

View all citing articles on Scopus

David Palmer graduated with an M.Eng. in Cybernetics from the University of Reading, United Kingdom in 2011. He is currently studying as a Ph.D. candidate at University of Nottingham.

Salvador Cobos Guzman received his B.Sc. in Industrial Robotics from National Polytechnic Institute (I.P.N.), Mexico, in July 2003, another Engineering degree in Automation and Industrial Electronics from Polytechnic University of Madrid (U.P.M), Spain, in 2009, the Advances Studies Diploma in Robotics and Automation from Polytechnic University of Madrid (U.P.M), Spain, in 2007, and his Ph.D. with honours (“Sobresaliente Cum Laude”) in Robotics and Automation from Polytechnic University of Madrid (U.P.M), Spain, in 2010. He is currently a research fellow at Machining and Condition Monitoring research Group at University of Nottingham, United Kingdom.

Dragos Axinte is Professor of Manufacturing Engineering in the Department of M3. He held two NATO Research Fellowships in Italy and Denmark and then moved to UK to carry out research with University of Birmingham and later with University of Nottingham. He was appointed as Lecturer in Manufacturing Engineering (2005) and successively promoted to Associate Professor (2007), Reader (2010) and Professor (2011). Since 2009 he is Director of Rolls-Royce University Technology Centre in Manufacturing Technology and from 2006 he acts as Guest Professor at Royal Institute of Technology (KTH), Sweden where he teaches at M.Sc. level. He is Fellow of Institution of Mechanical Engineer (IMechE) and Fellow of International Academy of Production Engineering (FCIRP).

View full text