So with my Arduino I'm creating basically a movable platform
with sensors and a bit of smarts. Nothing original. So I'm
wondering what others have done to make their "smart
movable platforms" interesting? The guiding principals I
can think of are:
self preservation - search for charging station. don't go over a ledge.
the robot pet has to be curious - randomized roaming
seek human interaction - infared sensor, knowledge of day/night, lights/sounds, maybe even the EMIC text to speech processor
Obviously self preservation would override everything else.
And, if I could get it to remember where it has been, (build
a bit map of the floor plan maybe?), then curiousity would be next.
I've been working on a similar project and thinking along the same lines; how do you turn a 'room rover' into something that more closely mimics pet behavior? I think your guiding principles are a good start. I would add to the human interaction component by saying that the robot should be able to play. I think play (whether with other robots/pets or with humans) is an essential part of making it seem that a robot can build a relationship or have personality in the same way that a real pet can. How the robot plays will depend heavily on what kind of hardware it has.
On a related note, have you taken a look at the iRobot Create? It's just like a roomba but without the vacuum and, for me, it was a good way to have a robust platform that can already self-charge and detect ledges. It seemed fairly cheap considering all of the built in sensors and you can control it with an Arduino.