# Design and Realize a Snake-Like Robot in Complex Environment

Authors: Bingqi Liu; Mingzhe Liu; Xianghe Liu; Xianguo Tuo; Xing Wang; Shibo Zhao; Tingting Xiao
Journal: Journal of Robotics
 (2019)

---

## Abstract

Aiming at high performance requirements of snake-like robots under complex environment, we present a control system of our proposed design which utilizes a STM32 as the core processor and incorporates real-time image acquisition, multisensor fusion, and wireless communication technology. We use Solidworks to optimize the design of head, body, and tail joint structure of the snake-like robot. The system is a real-time system with a simple-circuit structure and multidegrees of freedom are attributed to the flawless design of control system and mechanical structure. We propose a control method based on our simplified CPG model. Meanwhile, we improve Serpenoid control function and then investigate how different parameters affect the motion gait in terms of ADAMS emulation. Finally, experimental results show that the snake-like robot can tackle challenging problems including multi-information acquisition and processing, multigait stability, and autonomous motion and further verify the reliability and accuracy of the system in our combinatory experiments.


---

## Body

## 1. Introduction

With the rapid development of science and technology, bionic robots, especially snake-like robots, have been widely used in military, civil and space, and other fields [1–5]. Robots can demonstrate advantages in camouflage and multiple degrees of freedom, with which dangerous works can be completed in a total and/or partial replace of people’s roles, such as investigation, search and rescue, patrol, pipeline inspection, and space exploration. To strengthen advantages and usages of snake-like robots, many scholars have conducted active studies on the snake-like robots [6–10]. Leading Research Groups include the group led by Professor Hirsoe in Tokyo Institute of Technology (ACM R8), the robot team in Carnegie Mellon University (Uncle Sam), and the robot team in Michigan University (OmniTread). ACM R7 may bend its body figure into a circle and rolls forward in a grass land like a wheel [11]; Uncle Sam is categorized into a reconfigurable genre of robots, which is extremely suitable in applications in ducts, slits, etc. [12]; OmniTread is skilled at climbing upward and able to crawl across pipeline with a diameter of 11 cm to 24cm.Several disadvantages still exist in many cases and prototypes including shortcomings of mechanical structures, unreliable control strategy, and algorithms [13, 14]. Therefore, a snake-like robot which adapts to changes in complex environment is proposed to overcome current problems in the snake-like robot design. In this paper, the prototype of the snake-like robot is designed in a routine of mechanical design, motion control, signal acquisition, data transmission, simulation research, and prototype test, which owes small volume, light weight, and multiple degrees of freedom. The emulation experiment and prototype test adequately proved that the stability of the snake-like robot is expected.


## 2. Overall Scheme Design

The snake-like robot studied in this paper mainly includes the mechanical structure, the control system, and the power supply system (Figure1). The mechanical structure consists of three modules: head, body, and tail. The control system is composed of 3 main parts: a master control system, slave control systems, and a monitoring system. The master system is integrated in the snake head, which mainly undertakes the role of automatic detection of the external environment, and controls the slave control system by sending commands. The slave control systems are distributed in body and tail, completing the specific gait regulation and control. The monitoring system is hosted in a phone APP, which realizes the monitor and display function of sampled information. The power supply system consists of a rechargeable lithium battery module and a voltage-stabilized module that meets energy requirements for the entire snake-like robot. Each joint incorporates such a power module in the snake-like robot.Figure 1
Design diagram of the overall scheme.


## 3. Mechanical Structure Design

Traditional orthogonal structure requires orthogonal placement of joints, and each joint only has one motor [14]. This paper uses the method that requires two motors in orthogonal placement for each joint. This improvement will lead to a more compact structure and high spatial degrees of freedom (Figure 2). Solidworks is employed to optimize the design of head, body, and tail joint structure of the snake-like robot.Figure 2
Assembly diagram of the snake-like robot.


### 3.1. Snake Body Joints Design

Joint modules are modelled to satisfy spatial requirements for lithium battery modules, the slave control circuit boards, and the motors. The draw of the snake body joint is viewed by a planar figure as shown in Figure3, where (A) is the link between the joints, to ensure that the joints are to complete the angle of ±135 degrees of rotation; (B1) and (B2) are horizontal and vertical motors; the two motors are integrated into a joint to narrow the snake space to ensure the flexibility of the joints; (C) and (E) are the lithium battery and the fixed position for slave control circuit board, respectively; (D) and (F) are the fixing holes for the longitudinal and transverse motors; (G) is the support for the metal sheet of the snake body joint.Figure 3
Design diagram of the snake body joint.


### 3.2. Snake Head Joint Design

The snake head joint is the core component of the entire snake-like robot. The draw of the snake head joint is viewed by a planar figure as shown in Figure4. A motor (K) is placed in the longitudinal position of head joint under the premise of horizontal movement in snake head joint. The front of the snake head joint is streamlined to reduce the resistance of the forward movement and to position the camera (H). At the same time, the snake head joint is equipped with a lighting device (I) to work in a dark environment. The battery (J) is installed for the snake head portion.Figure 4
Design diagram of the snake head joint.


### 3.3. Snake Tail Joint Design

The draw of the snake tail joint is viewed by a planar figure as Figure5. Taking their corresponding structures into account including the laser distance measuring sensor (L), infrared heat source sensor (M), and the master control board (O), the temperature-humidity sensor and air pressure sensor are embedded on the master control circuit board; additionally a small portion of space is reserved for a CO (N) sensor. For the position case of the tail motor, its structure is right inversed to that of the head motor.Figure 5
Design diagram of the snake tail joint.


## 3.1. Snake Body Joints Design

Joint modules are modelled to satisfy spatial requirements for lithium battery modules, the slave control circuit boards, and the motors. The draw of the snake body joint is viewed by a planar figure as shown in Figure3, where (A) is the link between the joints, to ensure that the joints are to complete the angle of ±135 degrees of rotation; (B1) and (B2) are horizontal and vertical motors; the two motors are integrated into a joint to narrow the snake space to ensure the flexibility of the joints; (C) and (E) are the lithium battery and the fixed position for slave control circuit board, respectively; (D) and (F) are the fixing holes for the longitudinal and transverse motors; (G) is the support for the metal sheet of the snake body joint.Figure 3
Design diagram of the snake body joint.


## 3.2. Snake Head Joint Design

The snake head joint is the core component of the entire snake-like robot. The draw of the snake head joint is viewed by a planar figure as shown in Figure4. A motor (K) is placed in the longitudinal position of head joint under the premise of horizontal movement in snake head joint. The front of the snake head joint is streamlined to reduce the resistance of the forward movement and to position the camera (H). At the same time, the snake head joint is equipped with a lighting device (I) to work in a dark environment. The battery (J) is installed for the snake head portion.Figure 4
Design diagram of the snake head joint.


## 3.3. Snake Tail Joint Design

The draw of the snake tail joint is viewed by a planar figure as Figure5. Taking their corresponding structures into account including the laser distance measuring sensor (L), infrared heat source sensor (M), and the master control board (O), the temperature-humidity sensor and air pressure sensor are embedded on the master control circuit board; additionally a small portion of space is reserved for a CO (N) sensor. For the position case of the tail motor, its structure is right inversed to that of the head motor.Figure 5
Design diagram of the snake tail joint.


## 4. Control System Design

The master control system is made up of a camera module, a laser ranging module, a temperature-humidity sensor, an air pressure sensor, a thermal imaging sensor, and a CO sensor. Among them, the camera module and the thermal imaging sensor collect environment information and human perception information and display them by images. The slave control systems coordinate with the master control system to control and adjust the snake-like robot’s movement gaits with the ZigBee wireless transmission mode. The slave control systems generate PWM signals to drive corresponding motors. The monitoring system is equipped with WiFi and Bluetooth modules as communication channels with the master system, which holds control and monitor tasks in the snake-like robot (Figure6).Figure 6
Design diagram of the control system.


### 4.1. Master Control System Design

The master control system consists of four main modules: a core processor, a wireless communication module, a camera module, and multisensors (Figure7). The master control system receives the control commands from the monitoring system and obtains data from multiple sensors through the Bluetooth module. The monitoring system determines the motion gait of the snake-like robot according to control demands and displays the sensor parameters on the APP. The master control system uses the WiFi module to communicate with the monitoring system and obtain the image information of a RGB camera in real time. The system is equipped with LED lights for the camera so as to obtain the high-definition image in the dark environment. The CC2530 coordinator communicates with the Zigbee, via the CC2541 Bluetooth module to transfer multisensor data.Figure 7
Circuit diagram of the master control system.


### 4.2. Slave Control System Design

The slave control system selects STM8s003f3p6 as the core processor. The snake-like robot uses 6V-powered high-torque motors supplied by the battery with 6V, 250mAh lithium battery, to ensure that the snake-like robot running lasts more than one hour. The master control system sends wireless instructions to the CC2530 terminal node in the slave system through the CC2530 coordinator. Meanwhile, the master control system sends demands to the core processor in the serial interface mode. These demands drive motors to complete the corresponding gait operation. In order to facilitate the movement of snake-like robots and meet the power supply needs, we select the 7.4V lithium battery-powered solution, through RT9193 to convert from 7.4V to 3.3V for the control circuit board; at the same time, a diode will enable 7.4V to lower down 6V, to ensure reliable operation of motors (Figure8).Figure 8
Circuit diagram of the slave control system.


### 4.3. Monitoring System Design

The monitoring system is developed by Java based on the Android system. The control interface of the host computer is divided into two interfaces: the camera real-time acquisition in the first interface; thermal imaging, gait control, and sensor detection in the second interface. The gait control consists of five gaits: serpentine locomotion, creeping, lateral displacement, tumbling, and climbing (Figure9).Figure 9
Logic diagram of the monitoring system.


## 4.1. Master Control System Design

The master control system consists of four main modules: a core processor, a wireless communication module, a camera module, and multisensors (Figure7). The master control system receives the control commands from the monitoring system and obtains data from multiple sensors through the Bluetooth module. The monitoring system determines the motion gait of the snake-like robot according to control demands and displays the sensor parameters on the APP. The master control system uses the WiFi module to communicate with the monitoring system and obtain the image information of a RGB camera in real time. The system is equipped with LED lights for the camera so as to obtain the high-definition image in the dark environment. The CC2530 coordinator communicates with the Zigbee, via the CC2541 Bluetooth module to transfer multisensor data.Figure 7
Circuit diagram of the master control system.


## 4.2. Slave Control System Design

The slave control system selects STM8s003f3p6 as the core processor. The snake-like robot uses 6V-powered high-torque motors supplied by the battery with 6V, 250mAh lithium battery, to ensure that the snake-like robot running lasts more than one hour. The master control system sends wireless instructions to the CC2530 terminal node in the slave system through the CC2530 coordinator. Meanwhile, the master control system sends demands to the core processor in the serial interface mode. These demands drive motors to complete the corresponding gait operation. In order to facilitate the movement of snake-like robots and meet the power supply needs, we select the 7.4V lithium battery-powered solution, through RT9193 to convert from 7.4V to 3.3V for the control circuit board; at the same time, a diode will enable 7.4V to lower down 6V, to ensure reliable operation of motors (Figure8).Figure 8
Circuit diagram of the slave control system.


## 4.3. Monitoring System Design

The monitoring system is developed by Java based on the Android system. The control interface of the host computer is divided into two interfaces: the camera real-time acquisition in the first interface; thermal imaging, gait control, and sensor detection in the second interface. The gait control consists of five gaits: serpentine locomotion, creeping, lateral displacement, tumbling, and climbing (Figure9).Figure 9
Logic diagram of the monitoring system.


## 5. Motion Control Design

There are three controls modes for snake-like robot: gaits control (GC) based mode [15], Serpenoid control function (SCF) based mode [16–19], and central pattern generator (CPG) based mode [20–23]. SCF and CPG are key focuses in this paper.


### 5.1. Serpenoid Control Function

Hirose proposed the Serpenoid control function via (1) which imitates the movement of nature snake from a long-term observation of snake behaviors [17]. (1)xs=∫0scos⁡acos⁡bσ+cσdσys=∫0ssin⁡acos⁡bσ+cσdσEquation (2) is obtained by simplifying (1):(2)ϕi=Asin⁡ωt+Bi+γwhereϕi is the angle between joint i and (i-1)  (i=1,2…n), A is the amplitude of the joint angle when γ=0, ω is the joint radial frequency, B is the initial phase of the function, γ is the deflection angle of the entire system, and (ωt+Bi) is the phase.According to (2), the condition t=0 and ϕi≠0 is not consistent with the actual requirements. Therefore, (2) is transformed to guarantee ϕi=0 and t=0 as (3).(3)ϕi=1-a-tAsin⁡ωt+Bi+γa≥1As demonstrated in Figure10, the transformation does not alter both minimum and maximum values over a long time, except state differences in initial stage. This transformation does not affect the movement of the robot.Figure 10
Contrast diagrams of the equations.


### 5.2. CPG Control Mode

A chain network is included by 2n oscillator (Figure11); the output of the distributed oscillator can provide movement control signals for the snake-like robot.Figure 11
Convergence graph of CPG.A single simplified CPG model is utilized to generate an approximate sine (cosine) signal for each joint control. The dynamics of oscillator is described by(4)x′=-εyy′=1εkx+a1y-a2y3where x and y are the output of oscillator that will be used as the desired oscillatory signal of each joint, whereε, k, a1, and a2 are constants. CPG can converge if parameters are properly chosen in model (Figure 12).Figure 12
Convergence graph of CPG.From Figure13, it can be seen that the model exhibits dual stable sine or cosine dynamics over time about x and y. In the figure, the red line represents the control function of the lateral movement of the robot. The blue line represents the control function of the vertical movement.Figure 13
CPG output signal.


## 5.1. Serpenoid Control Function

Hirose proposed the Serpenoid control function via (1) which imitates the movement of nature snake from a long-term observation of snake behaviors [17]. (1)xs=∫0scos⁡acos⁡bσ+cσdσys=∫0ssin⁡acos⁡bσ+cσdσEquation (2) is obtained by simplifying (1):(2)ϕi=Asin⁡ωt+Bi+γwhereϕi is the angle between joint i and (i-1)  (i=1,2…n), A is the amplitude of the joint angle when γ=0, ω is the joint radial frequency, B is the initial phase of the function, γ is the deflection angle of the entire system, and (ωt+Bi) is the phase.According to (2), the condition t=0 and ϕi≠0 is not consistent with the actual requirements. Therefore, (2) is transformed to guarantee ϕi=0 and t=0 as (3).(3)ϕi=1-a-tAsin⁡ωt+Bi+γa≥1As demonstrated in Figure10, the transformation does not alter both minimum and maximum values over a long time, except state differences in initial stage. This transformation does not affect the movement of the robot.Figure 10
Contrast diagrams of the equations.


## 5.2. CPG Control Mode

A chain network is included by 2n oscillator (Figure11); the output of the distributed oscillator can provide movement control signals for the snake-like robot.Figure 11
Convergence graph of CPG.A single simplified CPG model is utilized to generate an approximate sine (cosine) signal for each joint control. The dynamics of oscillator is described by(4)x′=-εyy′=1εkx+a1y-a2y3where x and y are the output of oscillator that will be used as the desired oscillatory signal of each joint, whereε, k, a1, and a2 are constants. CPG can converge if parameters are properly chosen in model (Figure 12).Figure 12
Convergence graph of CPG.From Figure13, it can be seen that the model exhibits dual stable sine or cosine dynamics over time about x and y. In the figure, the red line represents the control function of the lateral movement of the robot. The blue line represents the control function of the vertical movement.Figure 13
CPG output signal.


## 6. Performance Testing and Analysis

### 6.1. Simulation Test Analysis

ADAMS is used as the emulation platform, and the serpentine gait mode of the snake-like robot is emulated and analyzed. We discuss parameter B (amplitude of the joint angle) and how it affects the stability of peristaltic motion and the speed of motion based on (3), and other parameters and gaits simulation methods are ignored.In the emulation process, leta=e, γ=0, ω=2π, and A=π/3, and parameter B equates to π/2, π/3, π/4, and π/6, respectively. As shown in Figure 14, the corresponding motion gaits are directly emulated by different B values; (1) as a case (B=π/2 or B=π/3), serpentine motion of our robot is a better approximation to natural snakes’ movement; (2) when coming to the case B=π/4, the serpentine motion uniformity in all joints is no longer kept; (3) for the case (B=π/6), the robot motion can be shaped in U.Figure 14
Exercise states at different B values.It can be observed that motion displacement in X axe is chaotic over the change of B and it reaches a maximum if and only ifB=π/3; on the contrary, Z motion displacement increases over the decrease of B (Figure 15).Figure 15
Displacement curve of different B values.For further strengthening the points above, our prototype machine is used to conduct the field experiments and the result indicates that our simulations can be well benchmarked with the prototype robot’s fields tests and further proves that a caseB=π/3 and the serpentine motion is performed best with our emulation results (Figure 16).Figure 16
Different number of S-shape curve.


### 6.2. System Test Analysis

The terminal App is able to monitor the snake-like robot motion by the automatic and manual operation and, meanwhile through WiFi and Bluetooth, it acquires image information and multisensors’ data (Figures17 and 18). The experimental results show that the performance of our proposed prototype machine can meet the communication requirements in a complex environment.Figure 17
Video/gaits display interface.Figure 18
Sensors information display interface.


## 6.1. Simulation Test Analysis

ADAMS is used as the emulation platform, and the serpentine gait mode of the snake-like robot is emulated and analyzed. We discuss parameter B (amplitude of the joint angle) and how it affects the stability of peristaltic motion and the speed of motion based on (3), and other parameters and gaits simulation methods are ignored.In the emulation process, leta=e, γ=0, ω=2π, and A=π/3, and parameter B equates to π/2, π/3, π/4, and π/6, respectively. As shown in Figure 14, the corresponding motion gaits are directly emulated by different B values; (1) as a case (B=π/2 or B=π/3), serpentine motion of our robot is a better approximation to natural snakes’ movement; (2) when coming to the case B=π/4, the serpentine motion uniformity in all joints is no longer kept; (3) for the case (B=π/6), the robot motion can be shaped in U.Figure 14
Exercise states at different B values.It can be observed that motion displacement in X axe is chaotic over the change of B and it reaches a maximum if and only ifB=π/3; on the contrary, Z motion displacement increases over the decrease of B (Figure 15).Figure 15
Displacement curve of different B values.For further strengthening the points above, our prototype machine is used to conduct the field experiments and the result indicates that our simulations can be well benchmarked with the prototype robot’s fields tests and further proves that a caseB=π/3 and the serpentine motion is performed best with our emulation results (Figure 16).Figure 16
Different number of S-shape curve.


## 6.2. System Test Analysis

The terminal App is able to monitor the snake-like robot motion by the automatic and manual operation and, meanwhile through WiFi and Bluetooth, it acquires image information and multisensors’ data (Figures17 and 18). The experimental results show that the performance of our proposed prototype machine can meet the communication requirements in a complex environment.Figure 17
Video/gaits display interface.Figure 18
Sensors information display interface.


## 7. Conclusion

This paper presents a design method of a snake-like robot that adapts to complex environment. By properly designing the control system, mechanical structure, and motion control, we are able to emulate and test the snake-like robot. Our snake-like robot can achieve multistep motion control and it can gather multisensors’ information in complex environment. It also has capacity in expansion, real-time performance, and stability. The proposed design of snake-like robot is a pavement to research and development of future counterparts that will be applied in seismic search and rescue, pipeline inspection, space exploration, and many other fields. It can provide reference values for other bionic robots research.



---

*Source: 1523493-2019-02-03.xml*