I've just got my Arduino uno for my project Obstacle detection and avoidance robot.My motors are 6 wires,4 phases 12V unipolar motors........how do i connect them to ULN2003A while am using arduino adapter of 9V??
Be sure to click 'more' and select 'suggest as answer'!
If you're the thread creator, be sure to click 'more' then 'Verify as Answer'!
I've just got my Arduino uno for my project Obstacle detection and avoidance robot.My motors are 6 wires,4 phases 12V unipolar motors........how do i connect them to ULN2003A while am using arduino adapter of 9V??
Hello, your motors seems to be unipolar stepper, so you must use four output pins of your controller to supply the right sequence. The driver (ULN) has to be connected to these 4 output lines and to motor coil wires. Six wires are : one common, two windings (multiplied for two). Please note that a stepper motor needs for a proper step sequence to move; it isn't on-off way. Generally, considering 4 bits, you have to supply a sequence like this: 0101 - 0110 -1010 - 1001 and restart from beginning. The stepper motor, driven directly without any pwm, isn't in the optimal condition, but can work (may go hot). Note that if you have 9V power supply and 12V motor, you can simply buy (or build) a step-up converter that can rise the voltage from 9V to 12V. The 12V must be used as power supply for the ULN interface (the common diodes point) and the motor. I don't know if you have some library, in your software, to drive the stepper motors in the right sequence. If you don't, simply use a timer with interval set to the step frequency you need for. If your motors have to run slowly (say about 100 steps per second) you can drive them directly, without any ramp. If you want to drive the motors at higher speed, you must supply the sequence as a ramp, starting from very low step frequency, ending with the target frequency. Also, note that the motor can stall if you start at high frequency or don't connect the windings in the right order. For the last case, in a prototype, you can just try to cross the wires, but after the PCB has been produced, you must modify the bits pattern in the appropriate way. The sequence indicated in previous example, obviously, makes the motor run in one direction. If you want to run it in the opposite direction, simply execute the sequence in inverse order (1001 -1010 - 0110 - 0101). To turn the motor OFF, set all outputs to 0000. Hope this helps... bye
Hi Aggery,
Why don't you use Simple DC motors ?? It would be allot more easier and cheaper to do..