ArticlePDF Available

Development of a vision-based target exploration system for snake-like robots in structured environments

SAGE Publications Inc
International Journal of Advanced Robotic Systems
Authors:

Abstract and Figures

Applying snake-like robots to environmental exploration has been a hot topic for years. How to achieve free navigation for target search in a complex environment in a safe and efficient manner is one of the main tasks that researchers in the field of robotics currently face. This article presents a target exploration system that takes advantages of visual sensing to navigate the snake-like robot in structured environments. Two cameras are utilized in the system. The first one is mounted on the head of the snake-like robot for target recognition and the other is an overhead camera which is responsible for locating the robot and identifying surrounding obstacles. All dead ends in the environment can thus be recognized using a template-based method. A search strategy for traversal of the dead ends is employed for generating exploration paths. Several gaits are developed for the snake-like robot. By switching between these gaits, the snake-like robot is able to follow the paths to search for the target. Two experiments are conducted in a maze environment. The experimental results validate the effectiveness of the proposed system for snake-like robots exploring in structured environments.
This content is subject to copyright.
Robot Vision for Surveillance and Security-Research Article
Development of a vision-based target
exploration system for snake-like robots
in structured environments
Guoyuan Li ,Ha
˚kon Bjerkgaard Waldum, Marcus Olai Grindvik,
Ruben Svedal Jørundl and Houxiang Zhang
Abstract
Applying snake-like robots to environmental exploration has been a hot topic for years. How to achieve free navigation
for target search in a complex environment in a safe and efficient manner is one of the main tasks that researchers in the
field of robotics currently face. This article presents a target exploration system that takes advantages of visual sensing to
navigate the snake-like robot in structured environments. Two cameras are utilized in the system. The first one is
mounted on the head of the snake-like robot for target recognition and the other is an overhead camera which is
responsible for locating the robot and identifying surrounding obstacles. All dead ends in the environment can thus be
recognized using a template-based method. A search strategy for traversal of the dead ends is employed for generating
exploration paths. Several gaits are developed for the snake-like robot. By switching between these gaits, the snake-like
robot is able to follow the paths to search for the target. Two experiments are conducted in a maze environment. The
experimental results validate the effectiveness of the proposed system for snake-like robots exploring in structured
environments.
Keywords
Snake-like robot, gait generation, navigation, path planning, environmental perception
Date received: 14 February 2020; accepted: 25 May 2020
Topic: Robot Vision for Surveillance
Topic Editor: Mohsen Shahinpoor
Associate Editor: Jianhua Zhang
Introduction
There are increasing demanding exploration tasks in areas
like deep sea and nuclear plant that are inaccessible or
harmful to humans. The limited knowledge of the work
space, the position and orientation required for necessary
operations, and any unexpected environmental perturba-
tions constitute a challenging environment. Snake-like
robots are considered one of the most suitable mobile
robots to explore in such a complex environment. Com-
pared to other types of mobile robots, such as wheeled and
legged robots, the snake-like robots characterized by their
redundant morphology, low center of gravity, and diversity
of locomotion patterns are beneficial to avoid falling down,
getting stuck, and even getting damaged in severe condi-
tions. The last few decades have witnessed various appli-
cations of snake-like robots in complex environments, from
surveillance,
1
search and rescue,
2
surgery
3
to inspection of
transmission lines
4
and pipelines.
5, 6
Department of Ocean Operations and Civil Engineering, Norwegian
University of Science and Technology, A
˚lesund, Norway
Corresponding author:
Guoyuan Li, Department of Ocean Operations and Civil Engineering,
Norwegian University of Science and Technology, A
˚lesund N-6025,
Norway.
Email: guoyuan.li@ntnu.no
International Journal of Ad vanced
Robotic Systems
July-August 2020: 1–11
ªThe Author(s) 2020
DOI: 10.1177/1729881420936141
journals.sagepub.com/home/arx
Creative Commons CC BY: This article is distributed under the terms of the Creative Commons Attribution 4.0 License
(https://creativecommons.org/licenses/by/4.0/) which permits any use, reproduction and distribution of the work without
further permission provided the original work is attributed as specified on the SAGE and Open Access pages (https://us.sagepub.com/en-us/nam/
open-access-at-sage).
The versatile locomotion patterns of snake-like robots
play a key role in traversal of different types of environ-
ments.
7
The design of snake-like locomotion dates back to
1970s. It is evident from the literature that the movement of
snake-like robots depends on not only their configurations
but also auxiliary equipment. For example, Hirose first
developed the active cord mechanism (ACM) robot and
applied passive wheels on the bottom of the robot.
8
Each
joint of the robot can bend to the left and right, resulting in a
serpentine movement in 2-D plane. Snake-like robots with
active wheels/treads, such as ACM R4
9
and OmniTread
OT-4,
10
were later developed for traversal of rough ter-
rains. Fewer modules are needed for these robots, and the
powered wheels/treads can provide the robots with enough
propulsion to climb over obstacles. Attempts of pure body
undulation of snake-like robots for 3-D locomotion pattern
generation have been made in the last decade, such as the
M-TRAN robot,
11
the GZ-I robot,
12
and the CMU’s snake-
like robot.
13
These robots keep their body shapes changing
over time by coordinating all of their modules. The purpose
is to produce traveling body waves for propulsion. Apart
from the abovementioned locomotion patterns, snake-like
robots can also achieve rhythmic movement through body
expansion and contraction.
14,15
For target exploration applications, such as the search
and rescue task, the navigation often includes localization,
planning, and search. When navigating in a complex envi-
ronment, a mobile robot must estimate its location through
onboard sensors, such as GPS, IMU, laser rangefinder, and
camera.
16,17
Depending on the degree of environmental
awareness, localizing the robot can be achieved using geo-
metric and/or visual features. Recently, simultaneous loca-
lization and mapping (SLAM) becomes a popular topic in
the mobile robotics community. A variety of SLAM meth-
ods, such as filter-based SLAM and graph-based SLAM, are
developed to keep track of the robot while updating the map
of the environment.
18
Once the robot’s position is deter-
mined, an optimal route for collision avoidance and target
searching can be computed using motion planning methods,
including A-star algorithm and rapidly exploring random
trees (RRTs) method.
19
By means of path following control,
the robot will search along the route until a target is found.
20
To date, visual sensing has been employed on snake-like
robots for exploration tasks. For instance, Ponte et al.
developed a structured light sensor and applied it to the
CMU’s snake-like robot for generating 3-D point clouds
for pole detection.
21
Bing et al. employed an embedded
dynamic vision sensor on the head module of a snake-
like robot and proposed a head orientation compensation
method to ensure an acceptable swing of the robot for better
observation.
22
Chang et al. equipped a robotic snake with a
monocular camera to capture images in each gait cycle and
utilized graph-based SLAM for self-localization in the
environment.
23
In addition to the above research studies,
there are many similar works that can be found in the
literature.
24–26
Although there are various navigation systems devel-
oped for snake-like robots, most of the research studies
either focus on mechanical design or make efforts on the
implementation of certain functions, such as gait genera-
tion, path planning, and trajectory tracking. In this article,
we aim to develop a complete target exploration system
from mechanical design, gait generation to visual-based
navigation implementation for snake-like robots in a com-
plex environment. The contributions of the article lie in (1)
a systematical implementation of the exploration system,
(2) a novel search strategy for exploration, and (3) verifica-
tion by a maze exploration experiment.
The rest of this article is organized as follows. In the
“Snake-like robot system overview” section, the overall
structure of the vision-based target exploration system
together with the snake-like robot construction and gait
generation is introduced. The “Vision-based navigation”
section presents the detailed development of the explora-
tion system from perception, planning, tracking to target
searching. Experimental results for target exploration in a
maze are described in the “Experiments” section. Conclu-
sion of this article is given in the last section.
Snake-like robot system overview
This section introduces the development of the snake-like
robot from the mechanical design, gait generation to con-
trol flow structure.
Mechanical design
Inspired by the GZ-I module in the study by Zhang et al.,
12
a new mechanical design of the snake-like robot is pro-
posed. There are several improvements based on the GZ-I
module. First, the head part, as shown in Figure 1(a), is
specially designed to accommodate a camera. The camera
can be protected from unexpected events, especially from
collisions. Second, an open hole is made for the upper
part, as shown in Figure 1(b), which enables wires to go
througheachmoduleforpowerand signal transmission.
Third, from Figure 1(c), the bottom part is thickened and
hollowed out for housing hardware components.
An upper part or a head part, together with a bottom part,
composes a module that can rotate 180about its axis.
Figure 1(d) shows the assembled snake-like robot, which
consists of five of such modules. It is noted that different
colors are employed on the head module, the second mod-
ule, and the tail module of the robot for pose tracking by an
overhead camera (see “Environmental perception” sec-
tion). Table 1 lists the hardware components of the
snake-like robot. Communication between the snake-like
robot and the graphical user interface (GUI) on a PC is
established by the Wi-Fi module on the ESP32 component.
All computation related to image processing is performed
on the PC.
2International Journal of Advanced Robotic Systems
Gait generation
As described in the “Introduction” section, snake-like
robots are able to generate rhythmic movement by means
of coordinating all the modules they have in proper tem-
poral sequence and thus generating traveling waves for
propulsion. There have been a number of control methods
developed for locomotion generation of snake-like robots,
such as the gait table method,
27
the analytical method,
8
and
the bioinspired method.
28
Among these methods, the sinusoidal generator, charac-
terized by its simplicity and capability of 3-D gait genera-
tion, is considered one of the most efficient approaches for
gait generation. Followed the work by Gonzalez-Gomez
et al.,
29
we implement the control model using two groups
of sinusoidal generators
qpi;tðÞ¼Apsin 2p
Ttþi1
2Fp
0
@1
AþOp;i21;3;5
fg
qyi;tðÞ¼Aysin 2p
Ttþi2
2FyþFpy
0
@1
AþOy;i22;4
fg
8
>
>
>
>
>
>
<
>
>
>
>
>
>
:
Table 1. Components used for the snake-like robot.
Component Amount Function
ESP32 1 Movement control and PC
communication
ESP32-CAM 1 Head mounted camera for target
searching
TowerPro
MG995
5 Servo motor of the snake-like robot
Battery 2000
mAh
4 Power supply of the snake-like robot
Battery
babysitter
1 Battery charger and monitor
Boost
converter
2 Voltage conversion for servos
and ESP32
Figure 1. Mechanical design of (a) head part, (b) upper part, (c) bottom part, and (d) assembly for the snake-like robot.
Li et al. 3
where qpand qyare the reference angles for the pitch mod-
ules and the yaw modules, respectively, A
p
and A
y
denote
the desired amplitude for the two groups of modules, Tis
the module rotating period, Fpand Fyrepresent the phase
differences of the sinusoidal generators from the pitch
group and the yaw group, respectively, Fpy is the phase
difference between the pitch group and the yaw group, and
O
p
and O
y
are the offsets of these sinusoidal generators.
There are seven gaits that have been implemented for
the snake-like robot, including forward, backward, turning,
clockwise (CW) and counterclockwise (CCW) rotating,
and left and right sidewinding. In this study, we set
T¼2:5s, Ap¼Ay¼30, and Op¼0for all the gaits, with
an exception of Ay¼0for the turning gait. Table 2 lists the
rest of the parameters for these gaits. It is noted that an
identical bending angle will be applied to the yaw modules
of the robot for the turning gait. These developed gaits are
verified in Algoryx—a professional physics engine for
engineering applications.
30
Four of these gaits are illu-
strated in Figure 2.
Control flow
Figure 3 shows the control flow of the vision-based target
exploration system for snake-like robots. The snake-like
robot system includes the snake-like robot itself and visual
sensing information derived from onboard and environ-
mental cameras. As described in the “Gait generation” sec-
tion, the snake-like robot is able to perform different
locomotive gaits by means of sinusoidal generators. There-
fore, it is possible for the snake-like robot to switch among
the gaits to avoid collision during navigation. A GUI is
developed for three levels of interaction with the robot.
Through the GUI, one can remotely observe the robot’s
navigation in the environment, provide further information
when the robot reports suspicious target images, and even
manually control the robot for target searching. In addition,
the snake-like robot is designed to be able to navigate in an
autonomous manner from localization, planning to track-
ing. The navigation will stop once the target is found. For
details, refer to the “Vision-based navigation” section.
Vision-based navigation
This section presents the details of the vision-based navi-
gation system applied to the snake-like robot for target
Table 2. Gait parameters.
Gait
Parameters
Fp(rad) Fy(rad) Fpy (rad) O
y
()
Forward 2p
3000
Backward 2p
3000
Turning 2p
300[90, 90]
CW rotating 0 pp
20
CCW rotating 0 pp
20
Right sidewinding 2p
3
p
3
p
90
Left sidewinding 2p
3p
3p
90
CW: clockwise; CCW: counterclockwise
Figure 2. Example gaits for (a) forward, (b) turning, (c) CW rotating, and (d) right sidewinding. CW: clockwise.
4International Journal of Advanced Robotic Systems
exploration. We take a maze example to illustrate how the
robot perceives the environment, makes plans, and follows
tracks for exploration.
Environmental perception
An overhead camera is employed above the maze, ser-
ving as an auxiliary sensor for the snake-like robot. The
whole maze is within the field of view of the camera.
The camera plays two roles in identifying the explora-
tion environment and providing location of the robot in
the maze.
The Canny edge detector is applied to detect the edges
of the maze. First, the intensity of the gradients in two
dimensions of the image is computed, followed by the
non-maximum suppression for identifying the location with
the sharpest change of the intensity value. After the sup-
pression operation, two thresholds, one for identifying
strong edges and the other for suppressing noise of edge
pixels and identifying weak edges, are applied to the image.
Then a probabilistic Hough transform is employed to fur-
ther find sets of pixels that make up these straight lines. As
a result, a black-and-white image representing the maze
together with a set of coordinates of the corresponding lines
can be obtained.
To be able to find the snake-like robot easier in the
maze, we color the surface of the first two modules and the
tail module in red, green, and purple, respectively, as
shown in Figure 1(d). The distinguishable colors make it
relatively easy to set masks and thresholds for removing the
surrounding of the robot. After thresholding the image
through the different masks, dilation and erosion are
applied to the result of the masks to remove noise pixels.
Contours are extracted from the result and the coordinates
for the center of these colored modules are obtained.
Collision avoidance is one of the key issues to be solved
when the snake-like robot navigates in the maze. As the
location of the robot can be obtained by the overhead cam-
era, we make use of the first two colored modules of the
snake-like robot and utilize virtual sensors to achieve colli-
sion detection. Figure 4 depicts how the virtual sensors are
designed for the snake-like robot. There are five virtual
sensors employed on the snake-like robot. Three of them
are mounted on the head module of the robot with a range
up to 210for front collision detection; the other two sen-
sors applied on the second module of the robot with a range
of 30play a role in side collision detection. All the virtual
sensors are constructed as sectors with a radius of 75 pixels.
The virtual sensors will take effect as far as there are inter-
sections between the lines of the maze and the sectors. The
snake-like robot will cancel the normal movement and per-
form evasive maneuvers based on the position of the trig-
gered virtual sensors.
Path planning and tracking
Given the start and the end positions of the snake-like robot
in the maze, planning a path will make the navigation more
safe and efficient. So far, there have been various planning
methods, such as potential field method, Dijkstra’s algo-
rithm, and RRT.
19
In this study, we attempt to use both
RRT and RRT*—a variant of RRT that can converge to
an optimum, for path planning. Based on the work by Sakai
et al.,
31
some modifications, such as changes of obstacle
type from circles to lines and the way to iterate forward,
have been made to incorporate the maze exploration task.
For every time when the algorithm creates a random node,
it will find the nearest node and try to iterate from that node
to the new random node. It has a certain probability of
Figure 4. Virtual sensors on the snake-like robot.
Snake-like robot
system
Gait generation
Visual sensing
Navigation
Gait selection
Localization Dead end
recognition
Route tracking Search planning
GUI
Target not found
Visual sensing
Target not found
Human-machine
interaction
Remote monitoring
Remote control
Gait selection
Target found
Figure 3. Control flow diagram.
Li et al. 5
generating the random node that goes straight toward the
goal to make the iteration more efficient.
Figure 5 shows the examples of planning results of RRT
and RRT* in a maze. We set an edge distance of 30 pixels
to keep the snake-like robot from collision with the maze.
From the comparison, it is evident that the path by RRT has
many twists and turns, whereas the path by RRT* is more
linear and smooth. Considering the tracking efficiency of
the snake-like robot in the next stage, RRT* is more suit-
able to this maze exploration task.
To follow a planned path, the snake-like robot needs to
successively track each node in the path. Here, the head
module of the robot is set as the position reference of the
robot. This will facilitate distance computation and space
preservation for taking pictures from the head camera. The
solution to the tracking problem is to generate a sequence of
gaits so that the robot can move toward the desired waypoint.
According to the distance and the angle between the robot
and the path, different gaits will be selected during the track-
ing, as shown in Figure 6. The detailed tracking strategy is
illustrated in Algorithm 1.
Target exploration
For simplicity, there is only one target placed in the
maze and the target is in yellow that it can be easily
recognized by the head camera of the snake-like robot.
It should be noted the snake-like robot only has the
knowledge of the target, but no information about its
location in the maze at all.
Since the target has a high probability to be placed in the
dead ends of the maze, the dead ends need to be recognized
for global planning in the maze. A template-based dead-end
recognition is employed in this study. First, templates are
400 600 800 1000 1200 1400 1600 1800
X [pixel]
0
200
400
600
800
1000
(a)
(b)
Y [pixel]
Start
End
400 600 800 1000 1200 1400 1600 1800
X [pixel]
0
200
400
600
800
1000
Y [pixel]
Start
End
Figure 5. Examples of planning results using (a) RRT and (b)
RRT*. RRT: rapidly exploring random tree.
Algorithm 1. Path following algorithm.
Input: N Positions of nodes of the path created by
RRT*
Parameters: p The position of the head of the
snake-like robot; φ The angle
between the snake-like robot and the
tracking line; Δ The distance between
the head of snake-like robot and the
tracking line; s distance threshold; λ
positive proporttional gain
foreach current node niNdo
generate a tracking line according to ni1and ni;
calculate φand Δ;
while pni>sdo
check from Figure 6 for gait selection;
if turning gait selected then
θy(2,t)=θy(2,t1) + λΔ;
θy(2,t)=
sign(θy(2,t)) max(θy(2,t),90);
θy(4,t)=θy(2,t);
perform the movement in one gait cycle;
if virtual sensors triggered then
perform an evasive maneuver (e.g., the
reversal of the gait);
end
end
||
Forward
|Δ|
ϕ
ϕ
min ϕmax
Δmin
Δmax
Left/ right
sidewinding
CW/ CCW
rotating
CW/ CCW
rotating
TurningTurning
Turning
Turning Turning
Figure 6. Gait selection for the snake-like robot.
6International Journal of Advanced Robotic Systems
generated by clipping out images of maze where dead
ends are identified manually. Then, each template is
checked by sliding it over the test maze image to com-
pare patch of the maze image under that template image.
The comparison returns a value of how similar the tem-
plate is to a given spot in the maze. Once the value
exceeds a threshold, the spot is recognized as a dead
end, and the center coordinate of the spot is recorded
for later use. Figure 7 shows an example of the result of
dead-end detection in a maze.
Suppose there are mdead ends in the maze. To find
out the global optimized traversal of all dead ends, one
has to run the RRT* method ðmþ1Þ!times. This is
time-consuming and involves massive computation. To
improve the efficiency, we therefore seek for a subopti-
mal solution. Initially, a list of dead ends is recorded.
For every round of search, the planned paths between
each dead end and the position of the snake-like robot
are ranked in terms of length and curvature. The robot
then randomly selects one of the top two ranked paths to
follow. A picture will be taken by the head camera at
the end of the path-following process for target recog-
nition. The task will be terminated if the target is found.
Otherwise, the dead end corresponding to the selected
path is removed from the list. Then, a new round will be
repeated until the list of dead ends becomes null. In this
way, the execution of RRT* will be reduced to
mðmþ1Þ=2times.
Experiments
The experiment setup is shown in Figure 8. A maze with a
size of 1.5 1.5 m
2
is constructed, in which the layout can
be easily adjusted by the blue holders. The overhead cam-
era is hanged over the maze with a distance that fits the
maze inside the frame of the camera. The snake-like robot
with a length about 0.45 m together with the target is ran-
domly placed in the maze. A laptop equipped with an Intel
Core i7 processor and 16-GB RAM is used for data
exchange and image processing.
Path tracking experiment
A path tracking experiment is carried out to verify the
tracking performance of the snake-like robot. First, a sim-
ple maze is established. Then, the robot and the target are
placed at ð448;396Þand ð431;100Þin pixel, respectively.
We set the initial heading of the robot toward the middle
corner below the maze so as to increase the difficulty of
tracking. After that, the RRT* algorithm is performed, fol-
lowed with the execution of the proposed path tracking
method.
Figure 9 illustrates the screenshots of the tracking
result from the overhead camera. By switching between
gaits, the robot successfully follows the planned path and
reaches the destination in about 75 s. The result of gait
changes as well as the turning angles is depicted in
Figure 10. In the first 5 s, the robot attempts to make
CW rotation for changing its orientation toward
the planned path. A risk of collision is then detected by
the virtual sensors. The robot responds to make lateral
shift and move backward to avoid to collide with the wall
in the maze. From time 10 s to 52 s, the robot frequently
switches between the turning and forward gaits, occasion-
ally mixed with sidewinding and CCW rotating gaits, to
keep its body as close as possible to the planned path.
Since the middle part of the path is straight, the robot just
moves forward until a turn of the path occurs. The robot
then turns to the right to follow the path from time 63 s to
69 s. Once it passes the turn of the path, it changes back to
the forward gait and arrives the destination in 6 s.
Figure 7. Dead-end recognition in a maze.
Figure 8. Experiment setup for target exploration in a maze.
Li et al. 7
Dead-end search experiment
To verify the ability of the vision-based exploration system,
a dead-end search experiment is conducted. A maze with
the same size to the one in the “Path tracking experiment”
section is constructed. The inner walls are modified so that
more spaces are set aside for the movement of the snake-
like robot. In this case, four dead ends are identified accord-
ing to the template-based method described in the “Target
exploration” section. The initial pose of the robot is set at
ð434;375Þin pixel toward about the upper left corner of the
maze, and the target is placed at one of the dead ends
around ð344;466Þin pixel.
The traversal of the four dead ends follows the search
strategy of dead ends described in the “Target exploration”
section. Three successive paths in CCW direction are thus
generated by the RRT* algorithm. By applying the path
following method described in Algorithm 1, the snake-
like robot navigates along these paths until the target is
found. The whole procedure lasts about 218 s. Figure 11
shows the screenshots of the search result from the over-
head camera. Each row of the figure corresponds to the
tracking result of each path, respectively. It is obvious that
the snake-like robot is able to track the paths. However,
more attempts are made by the robot, for example, at the
time 28, 86, and 131 s, for the transition from one path to
the other path. The trigger of evasive maneuver due to
collision detection by virtual sensors makes the robot move
back and forth to adjust its pose to adapt to path changes.
Figure 12 shows the switch of gaits and the images
obtained at each dead end. From Figure 12(a), turning and
forward are the majority of the gaits the robot used for path
tracking. There are also certain amount of sidewinding and
rotating gaits occurred during path tracking. Thanks to the
wide space in the maze, the robot does not collide with the
maze when applying one of the two gaits. It is noted that an
idle gait is added. It corresponds to the time period when
the robot reaches a dead end and keeps still for image
capture. This procedure lasts about 10 s. After the image
is captured, a simple color detection is performed for target
recognition. In Figure 12(b), the four positions from A to D
are the places where the robot takes the images, and the
arrows represent the direction of the head camera of the
robot. From the result, the robot succeeds to follow the
paths and discover the target at the last dead end.
Discussion
From the experiments, it can be seen that the proposed
vision-based exploration system works well on the snake-
like robot. Here, we discuss some potential improvements
to the system.
Figure 9. Screenshots of the path tracking experiment.
-80
-60
-40
-20
0
20
Turning angle (°)
0 10203040506070
Time (s)
Backward
CW rotating
CCW rotating
Right sidewinding
Left sidewinding
Forward
Turning
Figure 10. Gait changes of the snake-like robot in the path
tracking experiment.
8International Journal of Advanced Robotic Systems
The edge distance in the RRT* algorithm plays an
important role in the maze experiments. It prevents the
robot from collision with the walls of the maze. However,
from Figure 11, the edge distance cannot guarantee that the
robot has enough space to lateral shift or rotate when the
path is close to the wall. This may result in extra evasive
maneuvers when the robot switches gaits. A higher value of
edge distance may help, but it will narrow down the search
space and even fail to find available paths. Therefore, the
trade-off between the available paths and the amount of
evasive maneuvers needs to be considered before applying
the robot to a new maze.
There are sharp turns at the dead ends where two gen-
erated RRT* paths are connected. The results from Fig-
ures 11 and 12 show that they lead to inefficient tracking
of the snake-like robot. Indeed, the sharp turns are unne-
cessary, as there is no need for the snake-like robot to take
pictures at the exact location of the dead end. An alternative
is to design a mechanism to create a shortcut of the sharp
turn and thus reduce the collision probability and the track-
ing time.
The search strategy among the dead ends is another
possible improvement of this study. From the “Target
exploration” section, the search strategy relies only on the
metric of the length and the curvature between the robot
Figure 11. Screenshots of the dead-end search experiment.
-90
-60
-30
0
30
60
90
Turning angle (
°)
0 20 40 60 80 100 120 140 160 180 200
(a)
(b)
Idle
Backward
CW rotating
CCW rotating
Right sidewinding
Left sidewinding
Forward
Turning
AB C D
Figure 12. The results of (a) gait changes of the snake-like robot
and (b) captured images from the head camera in the dead-end
search experiment.
Li et al. 9
and the next dead end. This is efficient when there are a few
dead ends, such as the maze in the “Dead-end search
experiment” section. If the maze is big and complex, it
becomes time-consuming for ranking all of the dead ends.
Therefore, a pruning algorithm is needed to reduce the
number of dead ends to be evaluated. In this way, a sub-
optimal solution can be achieved in reasonable time.
To sum up, the proposed vision-based exploration sys-
tem is able to navigate the snake-like robot in the maze
environment. Nevertheless, greater efforts are needed to
improve the system to achieve fully autonomous
navigation.
Conclusion
In this article, we introduce a vision-based exploration sys-
tem that can be used by a snake-like robot for navigation in
structured environments. First, a head camera is integrated
into the mechanical design of the snake-like robot to
achieve visual sensing during navigation. Seven types of
gaits based on sinusoidal generators are developed so that
the robot can adapt to the environment. Next, we apply an
overhead camera to perceive the environment, such as the
location of the robot and the surrounding structure. Then, a
template-based method is utilized for dead-end detection in
the environment, and a search strategy among the dead
ends is employed for path planning. Using a path tracking
algorithm, the snake-like robot can navigate along the
planned paths for target exploration. We carry out target
exploration experiments in a maze environment. The
results show the proposed system is able to navigate the
snake-like robot to search for the target.
For future work, we will focus on (1) adding distance
sensors on the snake-like robot for better perception of the
environment, (2) refining the path planning algorithm by
taking the characteristics of the gaits into account, and (3)
improving the search strategy in terms of time and distance.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with
respect to the research, authorship, and/or publication of this
article.
Funding
The author(s) received no financial support for the research,
authorship, and/or publication of this article.
ORCID iD
Guoyuan Li https://orcid.org/0000-0001-7553-0899
References
1. Granosik G, Hansen MG, and Borenstein J. The OmniTread
serpentine robot for industrial inspection and surveillance.
Ind Robot: Int J 2005; 32(2): 139–148.
2. Erkmen I, Erkmen AM, Matsuno F, et al. Snake robots to the
rescue!IEEE Robot Autom Mag 2002; 9(3): 17–25.
3. Omisore OM, Han S, Ren L, et al. A teleoperated snake-like
robot for minimally invasive radiosurgery of gastrointestinal
tumors. In: 2018 IEEE international conference on autono-
mous robot systems and competitions (ICARSC),Torres
Vedras, Portugal, 25–27 April 2018, pp. 123–129. New York,
USA: IEEE.
4. Wei W, Yu-Cheng B, Gong-Ping W, et al. The mechanism of
a snake-like robot’s clamping obstacle navigation on high
voltage transmission lines. Int J Adv Robot Syst 2013;
10(9): 330.
5. Trebuna F, Virgala I, astor M, et al. An inspection of pipe by
snake robot. Int J Adv Robot Syst 2016; 13(5): 1–12.
1729881416663668.
6. Selvarajan A, Kumar A, Sethu D, et al. Design and develop-
ment of a snake-robot for pipeline inspection. In: 2019 IEEE
student conference on research and development (SCOReD),
Bandar Seri Iskandar, Malaysia, 15–17 October 2019, pp.
237–242. New York, USA: IEEE.
7. Li G. Hierarchical control of limbless locomotion using a
bio-inspired CPG model. PhD Thesis, University of Ham-
burg, Hamburg, Germany, 2013.
8. Hirose S. Biologically inspired robots: Snake-like locomotors
and manipulators. Oxford: Oxford University Press, 1993.
9. Yamada H and Hirose S. Development of practical
3-dimensional active cord mechanism ACM-R4. J Robot
Mech 2006; 18(3): 305–311.
10. Borenstein J, Hansen M, and Borrell A. The OmniTread OT-4
serpentine robot—design and performance. J Field Robot
2007; 24(7): 601–621.
11. Kamimura A, Kurokawa H, Yoshida E, et al. Automatic
locomotion design and experiments or a modular
robotic system. IEEE/ASME Trans Mech 2005; 10(3):
314–325.
12. Zhang H, Gonzalez-Gomez J, Me Z, et al. Development of a
low-cost flexible modular robot GZ-I. In: 2008 IEEE/ASME
international conference on advanced intelligent mechatro-
nics, Xi’an, China, 2–5 July 2008, pp. 223–228. New York,
USA: IEEE.
13. Tesch M, Lipkin K, Brown I, et al. Parameterized and
scripted gaits for modular snake robots. Adv Robot 2009;
23(9): 1131–1158.
14. Rus D and Vona M. Crystalline robots: self-reconfiguration
with compressible unit modules. Auton Robots 2001; 10(1):
107–124.
15. Seok S, Onal CD, Cho KJ, et al. Meshworm: a peristaltic soft
robot with antagonistic nickel titanium coil actuators. IEEE/
ASME Trans Mech 2012; 18(5): 1485–1497.
16. Segarra D, Caballeros J, and Aguilar WG. Visual based
autonomous navigation for legged robots. In: International
conference on intelligent science and big data engineering
(eds. Y Peng, K Yu, J Lu, and X Jiang), 2018, pp. 22–34.
Cham: Springer.
17. Ferro M, Paolillo A, Cherubini A, et al. Vision-based naviga-
tion of omnidirectional mobile robots. IEEE Robot Autom
Lett 2019; 4(3): 2691–2698.
10 International Journal of Advanced Robotic Systems
18. Bresson G, Alsayed Z, Yu L, et al. Simultaneous localization
and mapping: a survey of current trends in autonomous driv-
ing. IEEE Trans Intell Veh 2017; 2(3): 194–220.
19. LaValle SM. Planning algorithms. Cambridge: Cambridge
University Press, 2006.
20. Tzafestas SG. Introduction to mobile robot control. Waltham,
MA, USA: Elsevier, 2013.
21. Ponte H, Queenan M, Gong C, et al. Visual sensing for devel-
oping autonomous behavior in snake robots. In: 2014 IEEE
international conference on robotics and automation (ICRA),
Hong Kong, China, 31 May–7 June 2014, pp. 2779–2784.
New York, USA: IEEE.
22. Bing Z, Cheng L, Huang K, et al. Towards autonomous loco-
motion: slithering gait design of a snake-like robot for target
observation and tracking. In: 2017 IEEE/RSJ international
conference on intelligent robots and systems (IROS), Vancou-
ver, BC, Canada, 24–28 September 2017, pp. 2698–2703.
New York, USA: IEEE.
23. Chang AH, Feng S, Zhao Y, et al. Autonomous, monocular,
vision-based snake robot navigation and traversal of cluttered
environments using rectilinear gait motion. arXiv preprint
arXiv:190807101, 2019.
24. Rollinson D, Bilgen Y, Brown B, et al. Design and architecture
of a series elastic snake robot. In: 2014 IEEE/RSJ international
conference on intelligent robots and systems, Chicago, IL,
USA, 14–18 September 2014, pp. 4630–4636. IEEE.
25. Mutlu M, Melo K, Vespignani M, et al. Where to place cam-
eras on a snake robot: focus on camera trajectory and motion
blur. In: 2015 IEEE international symposium on safety, secu-
rity, and rescue robotics (SSRR), West Lafayette, IN, USA,
18–20 October 2015, pp. 1–8. IEEE.
26. Au C and Jin P. Investigation of serpentine gait of a snake
robot with a wireless camera. In: 2016 12th IEEE/ASME
international conference on mechatronic and embedded sys-
tems and applications (MESA), Auckland, New Zealand, 29–
31 August 2016, pp. 1–6. New York, USA: IEEE.
27. Yim M. Locomotion with a unit-modular reconfigurable
robot. PhD Thesis, Stanford University, CA, USA, 1994.
28. Li G, Zhang H, Li W, et al. Design of neural circuit for
sidewinding of snake-like robots. In: 2014 IEEE interna-
tional conference on information and automation (ICIA),
Hailar, China, 28–30 July 2014, pp. 333–338. New York,
USA: IEEE.
29. Gonzalez-Gomez J, Zhang H, and Boemo E. Locomotion
principles of 1d topology pitch and pitch-yaw-connecting
modular robots. In: Habib MK (ed.) Bioinspiration and
robotics. Chapter 24. Rijeka: IntechOpen, 2007, pp.
403–428. DOI: 10.5772/5513.
30. Backman A. Algoryx—interactive physics. In: SIGRAD
2008, the annual SIGRAD conference special theme: inter-
action, Stockholm, Sweden, 27–28 November 2008, pp. 87–
87. Linko¨ping Sweden: Linko¨ ping University Electronic
Press.
31. Sakai A, Ingram D, Dinius J, et al. Pythonrobotics: a python
code collection of robotics algorithms, 2018. https://arxiv.
org/ftp/arxiv/papers/1808/1808.10703.pdf
Li et al. 11
... Furthermore, the use of multiple sensors will increase computational complexity and reduce the operation time due to excessive power consumption. Similarly, Li et al. [4] has used an overhead camera mounted on the top of a custom-built arena for localization and a front-facing camera on the robot head for collision avoidance. Sartoretti et al. [5] have proposed a combined velocity and heading control-based navigation strategy in simulation for a cluttered environment where instead of avoiding the obstacles, it has to be exploited to support and direct the motion of the snake robot. ...
Preprint
With the goal of increasing the speed and efficiency in robotic manipulation, a control approach is presented that aims to utilize intentional simultaneous impacts to its advantage. This approach exploits the concept of the time-invariant reference spreading framework, in which partly-overlapping ante- and post-impact reference vector fields are used. These vector fields are coupled via an impact model in proximity of the expected impact area, minimizing the otherwise large impact-induced velocity errors and control efforts. We show how a nonsmooth physics engine can be used to construct this impact model for complex scenarios, which warrants applicability to a large range of possible impact states without requiring contact stiffness and damping parameters. In addition, a novel interim-impact control mode provides robustness in the execution against the inevitable lack of exact impact simultaneity and the corresponding unreliable velocity error during the time when contact is only partially established. This interim mode uses a position feedback signal that is derived from the ante-impact velocity reference to promote contact completion, and smoothly transitions into the post-impact mode. An experimental validation of time-invariant reference spreading control is presented for the first time through a set of 600 robotic hit-and-push and dual-arm grabbing experiments.
Preprint
Impact-aware robotic manipulation benefits from an accurate map from ante-impact to post-impact velocity signals to support, e.g., motion planning and control. This work proposes an approach to generate and experimentally validate such impact maps from simulations with a physics engine, allowing to model impact scenarios of arbitrarily large complexity. This impact map captures the velocity jump assuming an instantaneous contact transition between rigid objects, neglecting the nearly instantaneous contact transition and impact-induced vibrations. Feedback control, which is required for complex impact scenarios, will affect velocity signals when these vibrations are still active, making an evaluation solely based on velocity signals as in previous works unreliable. Instead, the proposed validation approach uses the reference spreading control framework, which aims to reduce peaks and jumps in the control feedback signals by using a reference consistent with the rigid impact map together with a suitable control scheme. Based on the key idea that selecting the correct rigid impact map in this reference spreading framework will minimize the net feedback signal, the rigid impact map is experimentally determined and compared with the impact map obtained from simulation, resulting in a 3.1% average error between the post-impact velocity identified from simulations and from experiments.
Chapter
The sine-based method is verified efficient in limbless gait generation in the literature. However, more attempts were put on how to combine sinusoidal generators into a network to investigate what a limbless gait can be generated. The work on the other way around, i.e., from observation of limbless gait in nature to sinusoidal generator design, is seldom seen. Furthermore, there were few sine-based limbless locomotion applications that integrate sensory information for achieving high-level tasks. In this chapter, we present our attempts on utilizing sinusoidal generators for caterpillar-like gait generation (Li et al. 2011, 2015), and closed-loop control in an exploration task (Li et al. 2020).
Article
Full-text available
This paper considers the problem of collision-free navigation of omnidirectional mobile robots in environments with obstacles. Information from a monocular camera, encoders, and an inertial measurement unit is used to achieve the task. Three different visual servoing control schemes, compatible with the class of considered robot kinematics and sensor equipment, are analysed and their robustness properties with respect to actuation inaccuracies discussed. Then, a controller is proposed with formal guarantee of convergence to the bisector of a corridor. The main controller components are a visual servoing control scheme and a velocity estimation algorithm integrating visual, kinematic and inertial information. The behaviour of all the considered algorithms is analised and illustrated through simulations both for a wheeled and a humanoid robot. The solution proposed as the most efficient and robust with respect to actuation inaccuracies is also validated experimentally on a real humanoid NAO.
Conference Paper
Full-text available
Despite the wide acceptability of brachytherapy, precise placement of short-range radiation sources on gastrointestinal tumor is still a problem. Recently, a good number of studies have proposed different flexible robotic models for minimally invasive surgical and radiotherapeutic procedures for such in-body abnormal tissue growth. However, existing robotic designs are hindered by spatial inflexibilities of arm robots controlling the source delivery and inexistence of ideal control models for redundant robots. This study presents a snake-like robot for minimally invasive radiosurgery of gastrointestinal tumors. Efficient kinematic and dynamic models are presented for effective control and teleoperation of the robot. Similarly, a direct model is formulated for mapping workspaces of the master and slave devices, based on their kinematics. Simulations and in-vitro trial were carried out to validate operation of the robot. Analysis of the results obtained show that the snake robot can be fitted for real clinical settings.
Article
Full-text available
The article deals with development and application of snake robot for inspection pipes. The first step involves the introduction of a design of mechanical and electrical parts of the snake robot. Next, the analysis of the robot locomotion is introduced. For the curved pipe, potential field method is used. By this method, the system is able to generate path for the head and rear robot, linking the environment with obstacles, which are represented by the walls of the pipe. Subsequently, the solution of potential field method is used in inverse kinematic model, which respects tasks as obstacle avoidance, joint limit avoidance, and singularity avoidance. Mentioned approach is then tested on snake robot in provisional pipe with rectangular cross section. For this research, software Matlab (2013b) is used as the control system in cooperation with the control system of robot, which is based on microcontrollers. By experiments, it is shown that designed robot is able to pass through straight and also curved pipe.
Chapter
This article will create the design and mathematical analysis of a four legged robot, underlining some of characteristics of the circuitry and physical design that it needs to have for being able to move from one point to another, focusing on the investigation of the kinematics of the quadruped robot using the Denavit Harteberg matrix, the analysis and processing of the images for the obstacle evasion with the purpose of avoiding collisions between the quadruped robot and static obstacles that have a defined form within the environment in which the robot is located. In addition, an Inertial Measurement Unit (IMU) was used with the implementation of the Kalman filter to detect the orientation estimation that the quadruped is in the plane of movement, this IMU called 9x3 is the same used in the MoMoPa3 project. For navigation a motion planning algorithm was implemented that is one of the main components of the artificial intelligence algorithms used to make the best route decisions. Using probabilistic techniques and partial information on the environment, RRT generates paths that are less artificial.
Article
In this article, we propose a survey of the Simultaneous Localization And Mapping field when considering the recent evolution of autonomous driving. The growing interest regarding self-driving cars has given new directions to localization and mapping techniques. In this survey, we give an overview of the different branches of SLAM before going into the details of specific trends that are of interest when considered with autonomous applications in mind. We first present the limits of classical approaches for autonomous driving and discuss the criteria that are essential for this kind of application. We then review the methods where the identified challenges are tackled. We mostly focus on approaches building and reusing long-term maps in various conditions (weather, season, etc.). We also go through the emerging domain of multi-vehicle SLAM and its link with self-driving cars. We survey the different paradigms of that field (centralized and distributed) and the existing solutions. Finally, we conclude by giving an overview of the various large-scale experiments that have been carried out until now and discuss the remaining challenges and future orientations.
Conference Paper
In this article, the serpentine gait of a snake robot with a camera at its head is simulated and the stability of the camera view is investigated. It is found that the camera view stability is low due to the large swinging amplitude of the snake robot head during locomotion. In order to improve the view stability, an optimization approach is proposed to modify the relative angle between the snake robot head and its body. Finally, a snake robot with wireless camera is implemented to verify the effectiveness of the proposed approach.