For my birthday I got a nice little polaroid sonar module.
In the n months since, I haven't integrated it onto my bot yet, mostly because BotBert doesn't have simple
things like a working bumperskirt or IR proximity detectiong yet. I did use
it for a very silly halloween costume (yes, I went as a bat) but that was
it.
Being bored in class can be a dangerous thing. This time I
decided I would mount the sonar module on a servo on the bot (so it could
spin around the vertical axis) and link it to my main machine Hesse across
a serial line, then display the data like an old fashion radar screen in a
java app.
Mounting the
sonar transducer was pretty easy, thanks to some cheap copper plate I
picked up a few months back at Boeing
Surplus. Wonderful place, I highly
recomend it to anyone who doesn't find this kind of thing tedious, even
though it is way out in the car-dominated hinterlands where peds and
cyclists are not welcome.
I had already written code to use the sonar for my halloween costume, and
the servo I used here is identical in control to those powering the bot's
locomotion (though it hasn't been modified to spin freely, so I still have
precise angle control). This is all done through a Parallax Basic
StampII,
a very nifty little microcontroller. Having never used the serial
capabilities of the Stamp before that part took a bit longer. Once that
worked, though, the java app was easy to code. Well, it would have been if
I had been satisfied with it just working, but I wasn't. Most of the race
condition bugs have been sorted out now. :) Is it not nifty?
Java source: Radar.java Dot.java
I'm nt going to bother uploading the pbasic code used on the Stamp,
unless someone asks for it. The Dedicated
Stamp Development Workstation is an ancient XT laptop with a broken
diskdrive, and I can get at the code by using the modem, but it is a very
large pain. I started using the laptop when I found that Paralax's
otherwise
excelent dos based Stamp programming util crashed Win95. I never bothered
to try it with dosemu under Linux (which I now use religiously), but what
else am I going to use an XT laptop for?