I spent a few moments today trying to cobble together an interface for driving multi-DOF robots around. It’s been a long time since I’ve done anything with inverse kinematics, but it seems like a good place to start. First things first though. Having a controller than can come close to expressing the range of motion in a hexapod is going to be useful for moving the IK chain targets around.
A while ago I bought a 3DConnexion SpaceExplorer and spent a few hours trying to learn how to make it useful. It’s pretty hard to use at first. I recommend downloading Google Earth and spending about five hours exploring the virtual planet on a fast internet connection. Highly worth it, the time will fly by.
It occurred to me that a space-ball is the an excellent controller for smoothly directing a symmetrical hexapod. Tilts, directional gait mixing, and rotational turns are all natural gestures. Most of the heavy lifting for this code is handled by the ProControll library. It allows you access to multi-axis controllers. There’s a bug in it that someone named “bud” patched that allows it to see the SpaceExplore and other controllers like it.
Anyway, someone else might find this useful for their own processing sketchs. The working parts and pieces where collected together from this thread on the processing forum. It’s been tested out on MacOSX 10.7.2, and likely works on other platforms as well.
Files here: SpaceExplorer.zip