Let's Make Robots!

Vex Mecanum Wheeled Rover 5

Radio Controlled and Autonomous Navigation.

This is one of my two Rover 5 robots. I recently created a page to show my radio controlled Rover 5 with treads and I also wanted to share this robot.

The Vex Mecanum wheels work great with the Rover 5. The Rover 5's four quadrature encoders make using Mecanum wheels much easier than trying to get them to work without encoders. The Propeller microcontroller reads the four encoders and adjusts the PWM to the motors in order to keep the speed of the motors (and wheels) at their desired speeds.

I had tried using the robot without encoder feedback without much success. The motors had a hard time turning the wheels at slow speeds.

I drilled out the Vex wheels to accept the Rover 5's 4mm axles. I drilled through the wheel from the edge to create a set screw. Fellow LMR member Cliff has improved on this technique with his Vex Mecanum wheeled Rover 5 (There's a link to his page below). 

There's a reason this robot looks so much like my other Rover 5 (besides both using Rover 5 chassis). The top decks made from expanded PVC and standoffs are the same decks used on my other robot. I'm presently having the two robots share a brain.

I intend to make another deck but I'm still trying to figure out the best layout for the control boards and battery. I thing I plan to change is the battery. The 3S 5000mAh pack is one I use with my quadcopter and it is much larger than this robot requires. I think with a smaller battery pack I should be able to condense the size of the upper decks on the robot. I also want to do something about the rats nest of wires.

The code (Spin and PASM) for this robot is nearly identical to the code used in my other Rover 5. The code for this robot included the use of a floating point library to handle the trig need to calculate wheel speeds.

I should be able to post code for both robots tomorrow.

There are two other (that I know of) Vex Mecanum wheeled robots on LMR.

CliffO has one (I don't think it's operational yet).

And Legomaniac must have been posting his at the same time I was posting a page about mine (kind of eerie).

Update(February 26, 2013): Here are a few pictures showing how I added a set screw the wheels. 
























Above shows the nut I added between the spokes in order to give the screw somthing to push against. I didn't cut the top off the screw, I just tried to keep the head of the screw low enough as to not interfere with the wheels motion.

Set Screw in Mecanum Wheel 















Cliff improved on this technique by using a larger diameter screw, removing the head and cutting a slot in the rod to allow the set screw to be couter sunk.

I'm hoping Legomaniac will share his wheel mounting technique. Legomaniac apparently "forced" his wheels on to the axles. That sounds a lot easier than what I did.

As you can see in the earlier photo,  (I was thinking of a different picuture) I covered the rollers with tape to protect them while drilling the hole for the set screw. Make sure and follow the links to Cliff's robot. He provides some good instructions on how to make a set screw.

Update(March 2, 2013): I added a HM5883 digital compass to my robot. When testing a robot, I frequently have it perform a figure 8 which I've had this robot perform serveral times. I usually control the direction change and stop time by indicating how long the robot should spend in each portion of the figure eight. This time, I used the compass to indicate when to switch direction and when to stop.

I added a video of the robot using the compass (it's the second video). Kind of cool IMO.

Update (November 12, 2013) I was reminded by a recent forum post I haven't made a video with my improved software. The software used in my original demo video had a integer math bug which limited the movement of the robot to 45 degree increments.

I actually fixed the bug not long after posting the demo video but I hadn't posted an updated video until now.

I'm currently working on several modifications to the robot.

I'm in the process of changing the remote from the Spektrum/Orange system to a custom remote I'm building. The custom remote uses a Nordic nRF24L01+ transceiver for wireless communication. The remote has a 4.3" touchscreen, an EasyVR voice recognition module, a SD card to hold the various touchscreen menu data and a PlayStation 2 controller for input.

Many of the above devices aren't working yet. So far the "remote" is a collection of parts that can display PlayStation 2 data. It presently doesn't control an robots.

As part of an effort to turn this project from a remote controlled toy in to a proper robot, I'm also attempting to add a CMUcam4.

While I've installed the hardware portion of the CMUcam4 update, I'm far from having the software working.

Hopefully these "upgrades" will be more than just a collection of parts soon.

BTW, my 2-cell LiPo packs were flat. I used a 3-cell pack again. Running the Rover 5 on a 3-cell LiPo will shorten the motors' lives.


Comment viewing options

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

I'm a featured project on Hackaday.

Pretty cool, IMO.

That is way cool Duane

Thanks but I'm starting to think Hackaday just ramdomly selects a couple of projects to "feature" each day. I noticed some of the other "featured" projects weren't very far along in development.

Still, it was fun to see my robot on Hackaday's front page.

Very nice work! The 5amp lipo is an overkill though

Yes, the 5Ah lipo is overkill. I'm trying to figure out an alternate power supply. I just have a bunch of 5Ah packs I use with my quadcopters so I used one on this robot.

I've been running PWM at low duty to compensate (hopefully) for the over voltage since OddBot expressed concern. I've been reading through a lot of robot pages on LMR over the last few days. One thing I've learned is to pay attention to what OddBot says.

I'll probably switch back to a 2S pack since I've read OddBot suggest it's the max one should use with the Rover 5.

I've also learned there are a lot of Rover 5 robots here on LMR.

Thanks for the kind words.

I've attached the code used on the Propeller to control this robot. It can use a RC receiver as input or a Wii Nunchuck.

I couldn't find the code on this page. I my have not attached the code properly (I tried twice).

I've also post the code in the Parallax forum here.

I originally limited the PWM on compensate for the higher voltage battery but it's just too fun to have the extra power from the extra voltage. I've decided to risk burning out the motors early and enjoy the extra power.

Besides, a couple of the axles are kind of bent so I'm not sure if having to purchase a new chassis would be such a bad thing.

I don't think the Vex wheels have ball bearings in them. I can't see how they could and still sell for $60 a set. The rollers don't come apart for inspection so I'm not sure. I don't know how they managed to get the rollers to spin so well. I have a set of FingerTech Mecanum wheels and IMO the Vex wheels work much better. The Vex wheels do require more work to mount to the Rover 5 axles than the FingerTech wheels require.

Oh well, if you fry your motors or strip the gears then you can always contact me and I'll ask someone to send you out some spare parts. I'm not sure what they will cost, because of shipping it might be quite high for a few motors and gears.

I noticed you are using a 3S LiPo battery. As the Rover 5 motors are only rated for 7.5V maximum are you limiting you PWM to prevent motor damage?

The Vex wheels seem to work very well, are the rollers on ball bearings?