Using analog pin output as throttle control

I am using an Arduino Duemilanove analog pin output (one of the PWM pins) as throttle control to a golf-cart-type electric motor controller.

That controller expects a throttle control of between 0 and 5 volts, which fits nicely with the analog output. But I need to supply at least 50 milliamps.

My understanding is that the analog pin cannot supply that much current. Is that right?

If so, what is the simplest circuit to drive the controller? I do not have a 5V source, only 12V. I could use a 12V to 5V DC to DC converter, but would prefer not to.

My understanding is that the analog pin cannot supply that much current. Is that right?

Yes.

I do not have a 5V source,

Yes you do the +5V line on the arduino will do. Just connect it to a transistor (withe a resistor in the base) and a 100R pull up resistor on the collector.

Thanks for the reply, Grumpy Mike. That makes sense.

Can you give a little more detail? (I'm new to electronics.) It sounds like I add a transistor and do the following:

-- hook up the Arduino analog output pin to the transistor's base (do I need a resistor here?)

-- hook up a 100R pullup resistor to the transistor's collector

-- hook up the resistor to the Arduino 5V line

-- hook up the transistor's emitter to the motor controller throttle input

Is that right?

It's most important to first know whether your motor controller needs a digital (PWM) input or an analog (smoothed/filtered PWM) input. Do you have a part number for the controller, or can you answer this question directly?

--
The Gadget Shield: accelerometer, RGB LED, IR transmit/receive, light sensor, potentiometers, pushbuttons

Thanks for the warning, Richard Crowley.

The Arduino analog pin PWM output will go to the throttle input of the motor controller. Normally the throttle input comes from a twist-grip throttle that uses a Hall sensor. I suspect the input is pretty noisy.

But it sounds like I need to filter the signal, with a low-pass filter. Is that right?

Normally the throttle input comes from a twist-grip throttle that uses a Hall sensor

How does it work?

The motor controller I am using is an Alltrax AXE 4384, used mainly for golf carts and forklifts.

The controller normally uses a 0 to 5k Ohm throttle signal. A lot of the older throttles are just potentiometers that provide that signal.

But I thought it would be easier to use a 0 to 5V throttle signal. A lot of the newer throttles use a Hall sensor to provide that. I can reprogram the controller to use that voltage signal instead of the resistance signal.

I want to use the Arduino in place of the throttle. I contacted Alltrax and they say I need to supply a 0 to 5V signal of at least 50 milliamps. That's why I ask how to get the beefier signal than the analog output pin can provide.

The other issue I may be looking past is the ground for the circuit. The throttle I would be replacing uses the battery-minus ground, same as the motor controller.

But the Arduino's ground would be different. I'm not sure whether that is a problem, and if so, how to solve it.