So, what exactly is a 3 and 4 axis stepping motor driver board. Actually, I am presenting the 3 axis stepping motor driver board in this article, but there is another much smaller board that will connect to this one that will provide an additional driver, making it useful for those wonderful 3D projects that use an indexer.
As you can see in the photo, this is a very small 3 axis driver. This is the basic, non populated printed circuit board (PCB). The most apparent characteristic of this board is the location of the three Allegro 3979 ICs (integrated circuits).
Before I go on, I should describe the Allegro 3979 chips. These are amazing chips, but it is not without its challenges. The Allegro 3979 is an IC that not only integrates its own circuit, but two. Many drivers will have two ICs that do the tasks that the Allegro 3979 will do. These tasks include translation and power distribution.
So, why does a chip need to translate? The signals coming from the computer is not recognized by the motor. The coils in the motor need to fire in a specific sequence. So, the computer sends a signal (a 5v change in a wire from the computer to the driver). The driver receives the signal and it goes directly to the translator (or that part of the chip). The translator knows what sequence was already invoked. For example, the wires for a bipolar stepping motor is as follows: A+, A-, B+, B-. In respective order, the sequence, is:
Signal #1 from the computer - 1, 0, 0, 0
Signal #2 from the computer - 0, 0, 1, 0
Signal #3 from the computer - 0, 1, 0, 0
Signal #3 from the computer - 0, 0, 0, 1
The sequence starts over with successive signals.
The 1 represents the respective wire getting power from the driver. The translator remembers these 1 and 0 combinations. But, is the power to the wire only 5v? No, that is where the other task comes in. Remember, I said that the Allegro 3979 has two main tasks (translation and power)? The latter establishes a new higher level of power for the wire (coil) that needs to fire. Since the Allegro 3979 knows the wire that should be fired, the chip takes power from a separate power supply and diverts it to the correct wire. Now, the coils can be powered with a high level of current and higher voltage than what it takes to power the chip itself. To recap, the Allegro 3979 takes a single signal from the computer (because the machine wants to move a step) and grabs the next sequence 4 wire sequence and delivers high power and current to the motor wires.
So, we know that this chip is good at multitasking, but how good is this chip... Really?!? The datasheet for the Allegro states that the chip can draw 2.5 amps of current with 35 volts. Wait a minute! Do you see how small those chip are? That's pretty surprising. Herein lies the challenges in designing the entire board.
Current at the 2.5 amperage rating for this chip at 35 volts will create a lot of heat. So much heat that the chips would just go up in smoke immediately. Fortunately, a large ground plane can draw the heat away from the chip. The larger the ground plane, the better the heat dissipation. You will notice on both the top and bottom of the board, there are large ground planes devoted to each chip. This board was manually routed to insure that the ground plane is at its maximum. Check out the routing on the photo above. The large swaths of light green on the board are the ground planes associated to each chip. Even more apparent on the top layer of the board (first photo), the ground plane almost completely covers the board. To increase the heat dissipation, there are 6 holes below the belly of the chip. This will carry the heat, and the ground signal, to the bottom layer of the board, doubling the heat dissipation.
Some other challenges to the development of the board are the tiny components. My first reflow of the board was a disaster. the issue stems from using solder paste and a syringe. My next attempt will be with a laser cut solder paste stencil. The local ACE Hardware has an Epilog Laser. I quickly became friends with the owner.
As you can see, the general resistors and capacitors are the 0603 versions (.06" x .03"). These component sizes were selected to allow for the most ground plane. Getting them on their pads is a pain, but this will be streamlined in the future. And yes, that is the same screw I have in most of my pictures.
The Allegro 3979 also requires power sense resistors so the power can be maintained (elimination of inaccuracies caused by ground trace IR drops). This fellow is placed as close to the Allegro 3979 as possible in accordance to the datasheet.
The most impressive aspect of this chip, and the reason I selected it for the driver to represent buildyourcnc.com, is that the Allegro can microstep at 1/16 without any additional circuitry (pulse width modulation - PWM, Oscillation, etc.). This was a must for me since I am driving pulleys and sprockets.