Speedy (or not so...)

Speedy is my first real honest-to-goodness rolling platform with an Orangutan at its heart. What can I say? I’m a slow learner.


It’s my attempt to build a relatively fast line follower. I’d done one in the past using a Mark III robot chassis, but didn’t much like the herky-jerky approach it used to finding and staying on the line. Speedy uses six analog sensors to locate the line, and uses a servo velocity loop to track it.

Unfortunately one thing I haven’t managed to do is really test it. I finished it today, and when I ran out into the shop to find my electrical tape, I found out I’d used up my last roll. So testing and loop tuning will have to wait until I can run by the hardware store.


Excellent use of the LCD display. Is that a bar-graph of the intensities of line detected by the analog sensors?

Very cool!


Yep! Each one gets its own. Which would’ve been tough to do otherwise because of space constraints on the LCD. Credit for the idea has to go to Jim Remington, though. I saw the high resolution horizontal bar graph code he posted to the forum and the light bulb went off. Aha! THAT’s how I’ll fit all the info onto the LCD.

On another note it’s a heckuva lot faster than I thought. The 9V I was testing with was an old one, and was down to 6V and not a lot of current capacity. My wife swapped it out this morning, and what little PID tuning I’d done went out the window. It’s a lot faster and WAY twitchier. I’m spending the day tuning. We’ve got a club meeting on Monday, so I hope to have it running cleanly by then.

The code for reading the QTI sensors and for the small vertical bar graphs is checked into the subversion tree for Orangutan-lib, and will be in the 0.3 release.


Hi, Tom:

This is a bit off-topic, but I liked Speedy and looked through a bit more of your site. The micro-ROV caught my eye because I’ve been thinking about the same thing for a while. However, doesn’t water get into the bare motors? I looked at the RGU site, also with bare motors but they don’t seem to comment on water entry. Do you just throw away the motors after a couple of uses or am I missing something?

Cheers, Jim

Turns out it’s not too much of a problem. Graeme from RGU said if you make a point of drying out the motors and lubricating them after each use, they have pretty good lifetimes. Antony, another UK ROV builder, tried this same trick with 550 frame motors and found it worked remarkably well. So I followed their advice, and didn’t find much in the way of appreciable wear.

I wound up loaning out my ROV about a year ago, which is why there are no pictures of the ROV with its buoyancy installed. The “dry 'n lube” instructions never made it out with the ROV, so I’m almost certain they’re just dunking it, running it, and putting it away wet. But I heard back from one of them a few weeks ago, and it’s apparently still ticking right along.

So here’s where I get REALLY REALLY fuzzy: Anyone ever water dipped a motor to wear the brushes in? Run it at low voltage, watch the water turn gray, pull it out and see if you get a nice seat of the brushes to the armature, that kind if thing? Electric RC car guys do it all the time, and with the 550 frame motors. So I know there’s supposed to be very VERY fast wear. (Water dipping typically takes five minutes or less, usually less.) I figured after a few hours of operation my little dinky motors should’ve been fried.

Apparently they’re not. And the first time I really used it, I took it to Robofest in Hilo, tossed it into one of the ROV demonstration tanks, and handed the controls to the nearest kid. It made the rounds 'till the batteries died several hours later. I was mighty surprised to find the brushes had hardly worn at all.

So the short answer to your question is no, the motors don’t get thrown away after a few uses. The longer answer is all of the above plus the statement that I’m 100% certain I am missing something. Because everything I’ve seen indicates they should be dead.

Got a fun follow-up on the bare motor in the water idea that’s a little easier to swallow: Antony, that same guy in the UK who’s been running larger motors bare in the water has also used brushless DC motors. He epoxy dips the windings and all solder points, but then just reassembles them. No brushes, no sparks, no real wear at that point. A brushless DC ESC in the dry box in his ROV then drives the motors. He’s got extra stuff in there to reverse them (most brushless DC ESCs don’t allow for reversing), and they work like a champ.


Thanks for doing up the orangutan-lib & bargraph code… made my life easier for sure. Hoping to incorporate bargraph stuff in my bot in the near future (totally unaware of it until reading this post)