23 Mar 2008 RoboDo   » (Journeyer)

RoboReality

Ok, so maybe building a 32 DOF biped humanoid Kung-Fu bot isn't the best "first project". Though confident I can mostly handle the mechanical end, the computer end is way beyond me... for now.

I can't afford to spend thousands of dollars on parts all at once, and even if I could, the complexity of getting it all working together would be quite overwhelming.

So I bought a Mindstorms NXT.

I'm a "hands on" kinda guy, so this will give me the chance to get some experience with the sensors and programming... real world interaction.

I built and unbuilt RoboDo Zigote and RoboDo Fetus, learning as I went. I'm pretty happy with the newest incarnation, RoboDo Baby, which has 2 driven front wheels and one unpowered rear wheel. The ultrasonic sensor is mounted on the 3rd servo, and the sound, light, and touch sensors are mounted up front too.

So far, Baby crawls forward until it detects something within 10 inches. It then looks left and right, recording the sensor readings. Baby then turns in the direction offering the most room and starts crawling forward again.

The next evolution will be to use data from the other sensors to build a more sophisticated control scheme. For example, I would like Baby to tend to turn towards the light when blocked forward but right and left are both clear. I want to mess around with weighting sensor reading to influence control decisions, which will all be probabilistic in nature.

Another thing I am going to start developing is a mapping routine. I'll start with a limited 6" grid, perhaps as small as 10X10. I'll preload areas outside the map as "0" or unreachable, start Baby in a known location and orientation, and let Baby fill in the rest of the map as either "1" (reachable) or "0" (unreachable). This will, no doubt, give me all kinds of problems to overcome or work around.

The NXT-G language is interesting, but can seem like trying to build a bridge with dominoes sometimes. I am looking into options here, and am leaning towards switching to NXC soon.

I have not given up on RoboDo. The RoboDo Baby work will lay the foundations for what is to come later. I would expect to use a succession of platforms in this project, and this is but the first.

That's all for now...

Latest blog entries     Older blog entries

X
Share this page