Limiting gearmotor torque

All,

In the process of testing a steering control mechanism of a robot I am building, I managed to break the teeth off of a gear in my gearmotor. I have since replaced the gearmotor, but I wanted to prevent this from happening again.

My testing process was all manual; my actual steering mechanism will be tracked by a potentiometer in a servo fashion (ie, the motor will be controlled by an Arduino to match the position of the servo, indicating the steering angle, to the requested angle - the angle determined by the potentiometer). During my manual testing, though, I had no such protection. The motor ended up not stalling at the end of travel, but continued to apply torque until the gear teeth snapped.

Now - I know about how you can put in series with the motor a light bulb, so that when the motor stalls, the light bulb lights us, increasing resistance, and lowering current to the motor. This should reduce the torque, right? Would it be quick enough to keep the gear teeth from snapping again?

Or - should I instead implement limit switches of some sort? I envision whatever I do to be useful not only for testing, but also to protect "end-of-travel" conditions for the steering motor when it is under control of the servo-mechanism software on the Arduino (which is still in development).

I am simply searching for a solution that is hopefully easy to implement without a large amount of effort, mainly for this manual electro-mechanical testing phase of the steering mechanism...

Thank you for any advice and ideas...

:)

The below page has a limit switch setup to stop a motor and large diodes to allow the motor to be reversed while the limit switch is still open.

http://web.comporium.net/~shb/switch.htm

Any chance the steering could get "jammed"? This might happen if you operate the robot in rugged terrain (imagine two solid rocks with the wheel in between or a deep rut or heavy obstacles in the house like furniture).

If "yes", you may want to use the current draw of the motor as the limiter.

I ask because I've nearly broken a wrist from steering wheel "feedback" while off-roading. I imagine a solid barrier and a robot controller keen to turn right could do the same thing to a gear tooth.

Having nearly lost a few thumbs (well the same ones a few times) while off-roading I'll put my vote in for current monitoring. Your "end of travel" may occur sooner than you thought.

But maybe have the limit switches as well for the "normal" situation as it's got to be kinder on the gear to stop before you apply more torque than is necessary.


Rob

The below page has a limit switch setup to stop a motor and large diodes to allow the motor to be reversed while the limit switch is still open.

I'll check that out; something I was thinking about last night was to mount the switches to control AND gates on the direction control inputs to the h-bridge (so the output of the AND drives the h-bridge, and each AND is a 2-input device - some 740x part, I'd imagine).

Any chance the steering could get "jammed"? This might happen if you operate the robot in rugged terrain (imagine two solid rocks with the wheel in between or a deep rut or heavy obstacles in the house like furniture).

I suppose its possible; the current platform is a PowerWheels H2 ride-on toy. I suppose in certain cases, there could be more resistance to turning than normal, even on "flat" ground (say dirt or such), so monitoring current would be a good backup.

Having nearly lost a few thumbs (well the same ones a few times) while off-roading I'll put my vote in for current monitoring. Your "end of travel" may occur sooner than you thought.

Something I do have in my code is a check for whether the wheels are actually turning; that is, if I give the command, but the potentiometer feedback isn't occurring, an error mode is set, and flagged back to the main on-board control system (a PC running a LAMP stack). In addition, I set a pin low (likely for control of a cutoff relay to the motor power - but not the PC).

Checking for current levels can't hurt, though.

This is all fine for the semi-/autonomous modes of the robot; but what about just manual control while I test the steering; I basically just have a power supply running thru a DPDT switch configured as an h-bridge, connected to the motor. Does anything with the series bulb help, or are "hard" limit switches the only way to go? Is there another method I am overlooking?

The thing is, I am just testing the mechanics right now; I don't have my h-bridge ready for implementation to control the motors yet with the Arduino (which ultimately will be a stand-alone device on a board just for the motor control of steering, I think).

Thank you all for the suggestions...

:)

Resurrecting a slightly old thread, but for a good cause...

First off, I want to thank zoomkat for his diode limit switch schematic; I just implemented it on my robot, and it works perfectly. I'm using some small Cherry leaf micro-switches, with a 1A general-purpose rectifier diode wired across the normally-open (NO) contacts, and I mounted them in such a way so that the switch shorts one or the other out as needed at end-of-travel. It works perfectly.

I ended up getting a new motor for the steering system, and hooking it all up. It took me a while to finally get over being sick (I had a chest cough for a long while that just wore me out), plus I just didn't feel like going out into my shop that much after work. But I'd go out every now and again, and do a little here and a little there. Today I went out and hooked up the diodes (I installed the switches last night, and also did some current measurement on the motor).

The motor pulls about 800 mA stalled, which is why I was able to get away with the small 1A diodes. I now need to build an h-bridge controller for the steering motor. I'll probably use an L298 for it, as I have that on hand. I'll test it out on a breadboard or something, then put it on a perfboard with some screw headers.

I'm still wondering what I am going to do to test the drive motors - I don't have a big enough power supply to run them; I might have to run them from batteries, or maybe a PC power supply (I'm not even sure that's big enough!). Anyhow, slowly, this UGV project is taking shape!

Thanks again, everybody!

:)

I now need to build an h-bridge controller for the steering motor.

I'm looking at making a foward/reverse switch operated by a small servo. It would function the same as the toggle switch in my schematics. Radio shack has a center return on-off-on toggle switch but the spring in it is two strong for easy operation. Another popsicle stick, thumbtack, hot glue type setup in the making.

I'm looking at making a foward/reverse switch operated by a small servo. It would function the same as the toggle switch in my schematics. Radio shack has a center return on-off-on toggle switch but the spring in it is two strong for easy operation. Another popsicle stick, thumbtack, hot glue type setup in the making.

I was originally going to make a relay-based h-bridge, but after I did my current measurements and seeing that it was under 1A, it just seems to make more sense to go with an IC-based solution. I will likely use for initial testing a relay-based h-bridge to control the rear drive motors (I still don't know what their stall-current is; I am assuming something large, though - likely > 25 amps), but once I get to a certain point I will likely purchase a real h-bridge (well, actually two - since there are two motors being controlled for the drive system, one for each wheel on the Powerwheels H2).

:)