Page 127 - The Definitive Guide to Building Java Robots
P. 127
Preston_5564C03.fm Page 108 Wednesday, October 5, 2005 7:21 AM
108 CHAPTER 3 ■ MOTION
3.7 Chapter Summary
My goal in this chapter was to introduce you to solving motion problems in robotics. I showed
you how to solve three types of motion (wheeled, fixed servo, gaited) with two different types
of servo controllers: the Scott Edwards MiniSSC-II and the Lynxmotion SSC-32. Both are great.
I use the MiniSSC-II on my main robot Feynman5, and the LM32 on my Hexapod.
In section 3.1, I created the SerialSSC protocol and created a general super-class for both
the MiniSSC and LM32 implementation classes. We also created the MiniSSC class that tested
our first servo control from the PC.
In section 3.2, I created three differential drive classes for wheeled motion and generated
a common motion interface called JMotion.
In section 3.3, I used the MiniSSC class to perform pan and tilt operations for a web
camera setup.
In section 3.4, to solve some of the movement problems experienced in section 3.3, I
introduced the LM32 servo controller as well as a new protocol for movement called the
GroupMoveProtocol. I implemented this protocol with the LM32 and the MiniSscGM imple-
mentation class.
In section 3.5, I used the LM32 class to create a fluid motion robotic arm with six servos.
Finally, in section 3.6, I implemented the JMotion interface on a six-legged robot to show that
we could use the JMotion class with a differential drive robot or a legged robot interchangeably.
In the next chapter, we’ll stop moving for a bit and use the BASIC Stamp to communicate
with some of the sensors you might use on your robot. There, we’ll discuss digital compasses,
logic sensors, and sonar and infrared distance sensors.
97022d2480fe4a63cfdfa123a6e70098