Programming Head Movements
One goal with Walter is to get him to the "being a pet" stage. One major aspect to this is his head and its movements and the "personality" it adds. Walter has a 3-axis head, able to pan and tilt, with the "tilt" being not only an up-and-down movement but also the ability to tilt left-to-right --kinda a "huh?" motion. I of course, could simply code each move, with say, a for-next loop incrementing from one position to the next. This works but well but looks like a robot moving it's head. Instead, I use a teaching pendant that allows me to "puppet" the head while recording the moves to be played back later exactly the same way a painting robot is taught how to paint a car in a factory. This teaching pendant has taken many forms. I have made actual mini heads with pots instead of servos as well as virtual ones on-screen and moved by a mouse.
In the past (when Walter was a Picaxe robot) I recorded these moves to EEPROM chips. Between the 4Mhz picaxe and the horrible write times of the EEPROM's, I ended up with very herky-jerky movements. Now with the Propeller chip onboard, and the incredible speed of the SD card, my resolution has skyrocketed. Add to that the abiltiy to plug a mouse directly into the Prop this eleminates the need to run a Processing app. and then send the data via BT to the robot. It is literally the simplest system I have made thus far, the fastest and the one with the least number of parts.
In the videos, you will see my first run at just getting the head to respond to the mouse and in the second video, see a recording being made and played back.