Snake robots have many applications, but are hard to control. A person cannot simply operate each joint of a snake individually because there are too many. These robots require a motion planning algorithm. Motion planning for snake robots is difficult because the robots have many internal degrees of freedom that have to be coordinated to achieve purposeful motion. In motion planning jargon, this means the snake robots exist in large dimensional configuration spaces. Our work will make it possible for the robots to operate in several different modes from fully autonomous to human-guided. The robot will be able to optimize its own path based on a range of cost functions from power consumption to safety or even stealth.
Current planning techniques for snakes dwell on locomotion (not motion planning) which is centered around gaits often found in nature that work best on unobstructed planar, but not necessarily level, environments like parking lots, ramps, and open fields. Other locomotion work dwells on pipe crawling which requires little motion planning. Our motion planning work will allow the robot, regardless of locomotion strategy, to negotiate complicated three-dimensional spaces including pipes, stairs, vertical piles of rubble, etc.
We are working on two approaches for snake motion planning right now. The first introduces a new topological decomposition of space called WAFT (WAve Front Topology). This decomposition is well suited to tethered robots, like a snake that is fixtured to the ground at one end. This decomposition of space allows for path planning that is path-dependent, meaning that veering left around the first obstacle encountered will change the options that are available in the future compared to the options had the path to the right of the first obstacle been chosen. This WAFT planner can be implemented in a sensor-based way and can be used to guarantee complete coverage of the work space. This is important for exploring unknown spaces when searching for survivors in collapsed buildings or when doing surveillance operations.
Another aspect of this project is developing a 3D simulator of a snake with a feeder. This simulation shows the snake following an arbitrary path through space. This simulator also is being developed to allow the physical snake to take the joint angles from the simulation and use them as control inputs. The simulator will allow for testing of different optimization schemes to avoid joint limits and obstacles.