Let's Make Robots!

Tank robot from dx, AVR from futurlec, etc

Hi guys,

Me and a buddy of mine are building a maze traversal robot and I thought it would be nice to share some information on the robot base we're using:


It's pretty cheap at 40 bucks USD and pretty solid. Our unit arrived with the turret snapped off (basically the unit's only real weak point we could find, construction-wise) but it was an easy fix. We didn't even bother contacting DX but from our experience they have great customer support and usually just send you a new one if you ask for it.

It has three DC motors, one for each track and one to rotate the turret. There is of course no feedback on the turret position and we're still looking into fixing that (encoder wheel seems a straightforward enough solution). The tracks are solid and it's pretty speedy and turns great. Everything is screwed together so it's a breeze to take apart. The electronics are in the turrent so it's trivial to replace the 'brains'.

We're going to use this controller:


Because it's dirt cheap and powerful. It's going to run a Java VM (of our own design) so programming is going to be pretty straightforward.

We're mounting four GP2D12 IR rangers (the usual) in the turret. Two on each side (right/left) and two looking forward at a 30 degree angle. We're going to try and make the turret align with a straight wall and have the body at a 90 degree angle to do simple wall following.

My friend, the electrical engineer of the two of us (I'm the programmer) is CNCing a custom motor control board to drive the DC motors. We're going to use software PWM to control speed.

When it's done I'll post some pictures/video, and maybe some guts. 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

heh I bought a rc tank at target that looks exactly like that one, it's the base for my drumbot


I will tell you I've had a couple issues with it

-tracks too grippy, cant turn well unless I overvolt the motors a bit

-lots of electrical noise from motors

Basically they are cheap toy motors, I didnt expect different, but the tracks performance made me sad, cuz otherwise it was just such a cool looking chassis, and pretty cheap....

For the money I prolly could have gotten a solarbotics track set which probably would perform better really, but would be much smaller.  Still, Probably a better choice in some ways.


I wrote a microcontroller JVM for Wireless Sensor Networks as a research project. WSN nodes usually are AVR or MSP430 based with about 2-10k ram. We want to run Java because WSN applications demand multiple threads of control and writing robust, complex code is needlessly difficult in C (no memory protection, no typechecking, no bounds checking, no exceptions, etc, etc). 

A VM fixes a lot of those problems at a performance tradeoff, but sensor nodes are sleeping most of their lifetime anyway so performance is not a big issue for us. A node crashing due to some race condition or buffer overflow however is a much bigger problem - especially if the node is physically difficult to reach. Like up in a tree kilometers from where you are, or on a lake. Besides, even if it's easy to access a node, networks have hundreds of them so manually reprogramming them or even just resetting them is not a trivial thing.

So long story short, I have a VM lying around, so why not use it? 



on an AVR? Why?