I need to control some assorted motors and one servo from an Arduino with as little complexity and (more importantly) cost as possible. These are the motors that I need to control:
Two IFI "Multi-Speed Motor Modules"
Maximum voltage 9V. Minimum might be 5.2V, but I don't know for sure. They have a speed controller like thing built in. You give the motor power and ground. Then you connect ground to one of two pins for forward/backward.
One VEX "Motor Module"
PWM interface. 4.4V to 9.1V. That's all I know.
One random servo
I've used servos with the arduino before. I just powered it from the 5V supply and it worked fine.
(FYI the arduino will be on battery power)
Summary: All motors SHOULD work at 5V. Can I just connect them to the 5V pin on the arduino and the appropriate digital inputs according to the specific motor?
Summary: All motors SHOULD work at 5V. Can I just connect them to the 5V pin on the arduino and the appropriate digital inputs according to the specific motor?
All motors is too wide a statement to make. Any motors driven directly from an Arduino output pin is only possible if the motors draw less then 40ma at 5vdc, safer if under 30ma. Otherwise a switching device is required between the Arduino output pin and the motor.
After that the limit is how much current the Arduino board can supply, which is in the 500ma range if on USB power and maybe
700ma if using the Arduino external power connector.
I always recommend using external independent power for servos and motors, the basic Arduino board was not designed to power higher current devices.
Thanks for the response! I actually meant all the motors I'm using. Is there any way I can check how much current the motors draw without looking it up?
Sure just measure current draw of the motor with a multimeter when wired directly to the voltage you will be using. However the motor should be suppling the mechanical torque required for actual application, not just freerunning.