Snake robots are the multibody mechanisms allowing us to solve specific problems efficiently, i.e., navigate into diverse environments and maneuver through tight spaces or uneven grounds in a way that resembles living organisms. However, the path following and controlling such systems is challenging due to nonlinear dynamics, coupling between links, and nonstandard definitions of the set-point that differ from industrial applications. This paper describes a framework for simulation and evaluation of the controller design for snake robot as the set of tools for the 3D design and robot dynamic simulation. Combined with a theoretical background (equations of robot dynamics), it allows testing new solutions and strategies of robot control design. Firstly, based on the proposed methodology, we provide a mechanical design of a ten-link snake robot. We present control algorithms enabling point-to-point tracking of the robot position in two cases: (i) tracking the center of gravity of the robot and (ii) tracking the position of the head of the robot. Then we provide a simulation-based robustness analysis of a simple fault-tolerant control algorithm, where some snake robot joints are broken. The proposed framework can be used efficiently to study control strategies for multibody mechanisms.
Biomimetic robots are robots that resemble a living organism in shape, appearance, or behavior. They are designed to use biological principles in engineered systems to behave like a natural being, allowing them to solve specific problems, impossible for standard machines [1]. A snake robot is an example of a biomimetic, hyperredundant robot with a high number of degrees of freedom. Changes in the internal shape cause the snake robot motion, which is similar to that of natural biological creatures. Each robot configuration is characterized by a series of angles in joints connecting a series of robot segments [2].
Recently, the interest in redundant modular robotic systems has increased. Robotic snakes have many shapes and sizes. Mechanical designs with contact force sensors, passive wheels, and active propulsion can be found in recent studies [3]. These systems have certain advantages in terms of low cost, robustness, and versatility. Their narrow minimum cross-section to length ratio enables them to traverse into many diverse environments and navigate through tight spaces but also uneven grounds, slopes, channels, pipes, etc. Moreover, the ability of snake robots to modify the shape of their bodies due to the extensive range of motion of their joints allows them to execute a broad spectrum of applications, such as climbing stairs, poles, or tree trunks.
The development and control of snake robots are typically quite challenging for two primary reasons. First, multiple degrees of freedom (DOF) of snake robots make them challenging to control, and therefore their mechanical design has complex interconnections of sensors, actuators, and control logic. It provides additional locomotion gaits such as side-winding, crawling, plunging, and leaping in complex and irregular surroundings that exceed the maneuverability of more conventional wheeled, tracked, and legged robots [4]. The locomotion pattern of a snake on the ground is not well described even for biological snakes, which makes the design of the locomotion pattern limited to experimentation. Second, the dependence on environment interaction is more complicated for a snake robot than for more conventional mobile robots [5, 6]. There is also the uncertainty of the friction coefficient, which significantly affects movement predictability and control.
Properties of snake robots, such as high terrain ability, redundancy, and the possibility of complete sealing of the robot body, make them usable in numerous practical applications and is an emerging research area. These robots can perform essential tasks, such as mapping, port clearing, and object identification covering large areas. They also have the capability of entering narrow spaces to investigate specific issues as critical infrastructure points, human life vital signs, or small leakage sources [7]. Other potential applications include inspection and intervention services in hazardous environments of industrial plants, manipulator tasks in tight spaces not accessible for conventional machinery, or subsea operations [8].
In [7] there was used simulation tool called Modular Snake Robot Simulator developed by KM-RoBoTa [9], a rigid-body-dynamics-based physics simulator. Simulations allow retrieving data, including angular and linear velocity for each module, torque, orientation, and position for each joint. It defines several parameters such as body dimensions, actuator control and response functions, and environment setup. During simulation, the user can build scenario, module trajectory, and contact points with the ground and reference systems.
Furthermore, in [12] the dynamics of obstacle-aided locomotion has been simulated with the commercial software Working Model 2D [13, 14], where a spring-damper model represented the rigid-body obstacle contact. The studies analyze the motion pattern of lateral undulation with and without obstacles. Results show that the snake robot model works for the scenario with minor obstacles and compares them with the discussion made on obstacle-aided locomotion. The simulations validated the mathematical model through lateral undulation without obstacles and confirmed the necessity of projections from the ground to move forward effectively on a plane with isotropic friction. It is possible to compare well for both types of locomotion: obstacle-aided and without obstacles via experimental and simulation results. The snake robot only interacted with the ground surface through gliding and sticking.
The mathematical model of the robot implemented in [5] uses Matlab and Simulink to simulate different control strategies and gait patterns. Matlab Virtual Reality (VR) toolbox is used to construct 3D animations of the simulation to facilitate the analysis of the results. Two gait patterns, which include side-winding and lateral undulation, were considered to identify the direction of the propulsion parameters. In [15] the authors applied the multibody dynamics simulation software Autolev (now MotionGenesis [16]), where they have studied the motion of a snake robot modeled as a spring-damper system during contact with a single peg. They also do quite a few simulation studies implemented and simulated in Matlab.
The critical principle of snake robot control is the Hirose snake model [2], which is the basic building block of several control strategies. The path-following of planar snake robots has been a challenging control problem due to the complex dynamic model of snake robots with three degrees of underactuation and coupled parameters. Several control methodologies for snake robots traveling in the straight path have been developed to address the issue of controllability and stability of snake movement [19]. The popular control approach is built on the Poincaré map for the planar snake robot to follow a straight-line path [20]. This methodology is suitable for simulating snake robot movement and a given parameter choice. The author of [21] developed a controller based on the line-of-sight (LoS) guidance control law using a cascaded approach to control the movement of a snake robot traversing a straight path. The results showed that the snake robot exponentially stabilizes and follows the straight line using the look-ahead distance parameter under a given condition. In another approach, PID controller based on decoupled equations of motion is designed and tested on a snake robot, which controls the shape, yaw, and angular velocity of the snake robot [22].
In [23] a feedback control approach with virtual constraints is described for velocity tracking of snake robots on the desired reference path. Wang [24] developed and tested an adaptive path following controller with unknown friction coefficients on an 8-link snake robot, demonstrating asymptotic convergence and tracking of the desired straight path. The Lyapunov method is used to examine the closed-loop stability of the controller. The snake robot head rotation is stabilized using a control strategy based on an improved winding gait control function [25]. Moreover, the sliding-mode controller is designed and tested in simulation to control the head angle and velocity of a planar snake robot [26]. In addition, the iterative learning control strategy is designed and tested on WPI soft robotic snake to control the gait pattern [27]. However, there is a unique approach based on a central-pattern-generator controller, which is investigated for optimization, and adaptive path following of snake-like robots [28]. This strategy smooths the control signal by eliminating the serpentine function, which generates the reference trajectory of a snake robot joints.
The defined in the paper model is based on widely used equations of snake robot motion on the flat horizontal surface described in [20]. In these well-known models the control algorithms allow tracking the position of the robot mass center calculated as an average position of all segments. The model was redesigned to follow the desired position by using the head of the snake robot. This can be achieved by introducing position coordinates of the snake head in remodeled equations of motion.
The snake robot comprises \(N\) segments linked by \(n\) joints with one rotational degree of freedom. In this design the number of control signals is one less than the number of segments \((n=N-1)\). The joint axis of rotation is perpendicular to the ground. Each segment has identical parameters: the mass \(m\), inertia matrix \(J\), length \(2l\), and anisotropic, viscotic friction coefficients \(c_n\) in normal direction and \(c_t\) in tangential direction. The weight distribution of each segment is uniform. For simplicity, the model neglects the remaining parameters of the segment (i.e., height, width, mass center shift, and shift between motor position and the segment edge).
dafc88bca6