This circuit allows to connect a bipolar step motor to a personal computer through the parallel port. The circuit is, for safety reasons, optically isolated from the PC and it allows to manage motors up to 3A for phase. Moreover, the digital interface allows to connect up to six motors to a single PC parallel port.
The more interesting aspect of this circuit is its ability to implement the microstep technique and to multiply up to 64 times the motor real steps number. As an example, a 200 steps motor could behave like a "virtual" 12.800 steps motor. This function is particularly useful when the spin speed is very low, in the order of fractions of rpm.
The short software included allows you to test the operation of a motor under Windows and should be used as example. Present also a mini-software for DOS and Linux. They are all bases to on the VVIO project.
The circuit substantially is divided in two sections:
LMD18245 includes logic in order to digitally select the current that must be sent to the load, in sixteen steps. Moreover it is available a pin to set up the sign of the current.
The current depends from the value of the resistance R1 (or R4) and from four digital input. On the data sheets the formula is:
|Vdac||Reference voltage, 5V in my circuit|
|D||Four bit digital input configuration (0... 15)|
|R||R1 (or R4) - Values range should be 6k8 to 20k, approximately for the maximum currents of 3 to 1A|
|Imax||The maximum load current|
The managed maximum current is 3A, the maximum power supply of 50V. Thermal details are present on the data sheets but no heat sink is required for currents up to 1A. If yon need an heat sink, please see photos for details.
In order to work the circuit needs the connection to personal a computer through the parallel port. See Iso-buffer for details about digital interface and electric isolation.
The following image shows the current in one phase of motor. For measurement a 0.15 ohm power resistor has been used, so a scope division equals to approximately 1.5 A.
In the file microstepper.tgz there is the windows test software (up to two circuits at same time could be used). There is moreover present two simplest example for dos and Linux; in order to use it is necessary:
The library from VVIO project contains some functions in order to drive up to six circuits at the same time, all connect to the same parallel port.
|C1, C3||470 pF|
|C2, C4||2.2 nF|
|C5||Electrolytic 100 (or 47) uF - 63V|
|C6||Tantalum 10 uF|
|C7, C8, C9||100 nF|
|C10, C11, C14, C15||470 nF|
|C13, C12||Electrolytic 470 (or 1000) uF - 63V|
|ISO1, ISO2, ISO3||6N135|
|JP1||5x2 poles connector , 2.54mm|
|J1, J2, J3||2 poles connector , 5mm|
|R1, R4||6k8 - 20k (load current set - see text)|
|R2, R5||22 kohm|
|R8, R10, R12||270 ohm|
|R9, R11, R13||2.2 kohm|
If the power supply remains under 30V the capacitors working voltage can be reduced and is possible to use a "normal" LM317.
The pcb is a double layer but I have not used any plated holes; it is necessary to insert some small wire in order to connect the two sides of the printed circuit and, for some components, use the "double-layer soldering" technique.
In order to avoid difficulty soldering on top layer, best way is to use the following order:
The software, the schematic and the PCB are contained in microstepper.tgz file:
|schematic.pdf||Circuit schematic, in pdf format|
|top.pdf||Component pcb side, in pdf format|
|bottom.pdf||Solder pcb side, in pdf format|
|assembly.pdf||Components layout, in pdf format|
|LW-CVI\||Software for windows: LabWindows/CVI|
|TC\||Software for dos: TurboC|
|gcc/||Software for Linux: gcc|
To build this circuits you need:
For unipolar motor stepper, you can see Step driver design.
Micro-step driver - Version 1.0 - July 2003
Copyright © 2003, Vincenzo Villa.
You need to read the license before to use this product
All trademark mentioned herein are property of their respective companies
You will find the original copy of this document on http://www.vincenzov.net.