At last, I've mustered up the courage to hook up a DC motor to the Arduino!
The reason that it's a big deal is that you can't connect a DC motor directly to the output pins on the Arduino - it'll draw too much current and fry the Arduino chip. This method uses a transistor to switch the large amount of motor current with a small amount of 'control' current. As an added level of safety for the Arduino, I've also use an Opto-Isolator which a means of completely separating the two circuits - control and output. Unless I do something silly (!), the Arduino should be safe. (I already fried one transistor in testing because I'd forgotten to put a diode across the back end of the motor!)
BIG respect and thanks to Mike Cook for his excellent article on hooking up motors.
My circuit diagram is a hacked together version of a couple of his diagrams.
The reason that it's a big deal is that you can't connect a DC motor directly to the output pins on the Arduino - it'll draw too much current and fry the Arduino chip. This method uses a transistor to switch the large amount of motor current with a small amount of 'control' current. As an added level of safety for the Arduino, I've also use an Opto-Isolator which a means of completely separating the two circuits - control and output. Unless I do something silly (!), the Arduino should be safe. (I already fried one transistor in testing because I'd forgotten to put a diode across the back end of the motor!)
BIG respect and thanks to Mike Cook for his excellent article on hooking up motors.
My circuit diagram is a hacked together version of a couple of his diagrams.
(used with permission - thanks Mike) |
The immediate application is for driving the blades on our learning project GRZR - the robot mower!