Using a 12 V/DC transmissionmotor on with Arduino

Hello,

I'm completely new to Arduino and to electricity almost as well. For a schoolproject I have to slowly rotate an aluminium mechanism with a weight of around 200 gram, so I'm using a 12 V/DC transmissionmotor with 10 RPM and a max. load current of 2.1 A.

Can I use this motor safely with Arduino? If so, are there any extra electric components I have to combine with this motor for the right usage?

The mechanism needs half a rotation every time the switch is pressed. From the Arduino Projectbook I learned that speed of a motor can be changed with a potentiometer. Is it possible to turn it for half a rotation? With a script that let it move very precise and specific?

If there's any additional information needed for the right answer, I'll happily share it.

Jordy

Nulfox: I'm completely new to Arduino and to electricity almost as well. For a schoolproject I have to slowly rotate an aluminium mechanism with a weight of around 200 gram, so I'm using a 12 V/DC transmissionmotor with 10 RPM and a max. load current of 2.1 A.

Can I use this motor safely with Arduino? If so, are there any extra electric components I have to combine with this motor for the right usage?

You'll need something to drive the motor, rated for the current. If you only need it to rotate in one direction, then a simple transistor or mosfet will work fine - get something in a TO-220 case and logic level n-channel (if a mosfet).

Nulfox: The mechanism needs half a rotation every time the switch is pressed. From the Arduino Projectbook I learned that speed of a motor can be changed with a potentiometer. Is it possible to turn it for half a rotation? With a script that let it move very precise and specific?

If you need to vary the speed, you would want to connect the mosfet/transistor driver to a PWM pin on the Arduino, and control the speed using PWM.

If your power supply is stable and precise (that is - it doesn't vary under load, and it supplies a constant 12 volts) - then you might be able to get away with "timing" the rotation. Basically - turning the motor on at a given speed (PWM), allowing it to run for however long it takes to rotate a half turn, then turning off the PWM. This won't be perfect, but it won't require extra parts.

If you need precision (how much, you don't say...) - then you'll need a feedback mechanism. This could be as simple as a limit switch that engages every half rotation (and you simply sense the switch, and when it closes or opens, you cut the current to the motor). Or it could be complex - like an optical track mounted in some manner that is spun by the motor, and you sense it with an optical interrupter.

If you go the latter route (which will be much more accurate) - mount the optical disk on the end of the motor shaft if possible (that is, on the motor shaft before the gearing - so that it spins at the speed of the motor). Since one rotation of the motor's shaft equals only a very tiny amount of rotation on the final output shaft of the gearbox, you can easily count rotations (which will be a large number likely) until you get to the number needed for one-half rotation of the final output shaft. [/quote]

Thanks for the response.

Is it possible to destroy my Arduino with a too powerful motor?

I did some further research while waiting for an answer and I think that a Stepper Motor is the best solution to run my desired mechanism, because the angle of rotation is very accurate to controle.

Can Stepper Motors deliver the same amount of force or are they far less powerful that regular motors?

To prevent destruction of the Arduino, [u]always[/u] use a separate power supply for the motor, together with a motor driver (transistor or module).