Commonly, robotic vehicles use a wheel and axle propulsion system, but this is often debilitating when traveling on variable terrain. For instance, a wheel system must be specifically designed to ascend a step. Successful propulsion systems are often similar to animal motion methods. Legs are the most common method but are difficult and inefficient to reproduce mechanically. The sinusoidal motion of a snake is a less obvious solution and is usually overlooked, yet it has tremendous advantages when navigating variable terrains. Snakes can use their entire body for propulsion, creating a larger surface area and providing greater traction. Their low center of gravity creates stability, lacking in legged and wheeled systems. The body structure can also be modeled as a series of independently controlled joints, each having many degrees of freedom. These freedoms allow the snake to raise body sections over obstacles and to create leverage for itself. Using leverage, the snake could elevate above or onto a step or obstruction, a feat that would be difficult using wheeled propulsion.
In order to acquire these advantages, the snake robot resembles and behaves like a real snake. The body has multiple joints, which can be independently controlled. The joints move in sinusoidal patterns, propelling the robot forward in a snake-like motion. Adapting to environment changes, sensors provide feedback, which the robot uses to alter its behavior. Since flexibility is important when designing robust systems, sensors can be added or removed without redesigning the entire system. This modular approach produces a very robust device, allowing flexibility for future expansion. The body structure is also modular, as body joints can be added without disturbing the functionality of the system. Since it is difficult to produce a sinusoidal pattern using less than twelve joints, the length of the snake has a minimum requirement of twelve joints but can increase indefinitely.
A body segment attached to a servo forms a body link, which connects to another body link. A series of these links form the body. The servo moves the joint formed between links. A servo controller maintains the position of each servo, and multiple servo controllers are attached to a controller interface. The brain module commands each servo through the interface. Motion algorithms executed by the brain module determine the position of each servo over a period of time. Attached sensors or peripherals, as they will be referred to in this document, modify the parameters of the algorithm, such as velocity, direction, and motion mode. Two motion modes are available: vertical sinusoid and horizontal sinusoid. Vertical mode is similar to the motion of a caterpillar�amplitude varies in a direction perpendicular to a ground reference. In this mode the robot is able to ascend steps and more effectively move across uneven terrain. Horizontal mode offers more stability, since the center of gravity is lower. More importantly, the robot has more body in contact with the ground, increasing traction and speed.
The robot uses several of Micron�s PIC microcontrollers, which are simple and inexpensive devices. The instruction sets are small but provide sufficient functionality. The PIC16F84A microcontroller is used frequently in this system; the servo control units, the interfaces, and the CPU contain at least one. Power will be supplied via a tethered line to an external, stationary source. By powering this prototype with an off-body source, we could focus on intelligence development. An on-body power system will be added in the next prototype.
Before the end of the year, a twelve segment snake robot that will move in a sinusoidal pattern on the ground will be developed and built. It will be capable of recognizing obstacles and maneuvering around them. The snake will be modular with the capability of adding or subtracting segments. Users will also be able to add or subtract peripheral sensors. We will incorporate an inferred sensor module to detect obstacles. After these objectives are met, the motion algorithms will be modified for a vertical sinusoidal motion. At this time we will enhance the obstacle avoidance algorithms and give the snake the capability of changing to the vertical motion and climbing over the obstacle. We will also develop some other peripherals to enhance the snake�s sensors.
Functional Objectives
Our fuctional Ojbectives are as follows: