[Back to Home Page]
High performance microstep driver for unipolar stepper motors
Roman Black - orig Aug 2002 - web updated here Aug 2006.
What is it?
I originally designed the LiniStepper as a versatile PCB that could be used
to drive most small to medium UNIPOLAR stepper motors for my own CNC projects.
Because this was designed for me
the design may seem a little eccentric.
There is massive reliability from over-rating components, great versatility
from using discrete power components and a PCB with numerous setup options,
and an on-board microprocessor that can be programmed to do any
microstepping mode and even act as complete motion controller "brain"
all on the one board if needed.
Since "proper" commercial stepper motor drivers are very expensive
there was an interest from people to buy the LiniStepper as a
low cost kit that will provide good performance for home CNC uses.
The LiniStepper soon evolved into an open-source project with the help
of the wonderful people who run the PICLIST electronics forum.
The LiniStepper gives great motor performance with some very nice
microstepping features, but it is linear in its method of controlling
motor current, so it can give off a lot of heat if driving a large
motor. In most cases this is no big deal, you just bolt it to a decent
heatsink and maybe a small PC type fan and enjoy the great performance of
smooth linear current control.
Step modes of 200, 400, 1200, 3600 steps/rev
(full step, half step, 6th step, 18th step)
Linear current smoothing, gives smooth "stepless" operation
Uses large power transistors, not a flimsy stepper driver chip
Best suited for stepper motors up to 1.5A per phase
Can be used for 4A per phase BUT ONLY IN FULL STEP MODE
PSU voltage 4v to 35v
Can be set up for a huge range of motor sizes
On-board PIC chip and free source code
PIC chip is ALREADY programmed for you!
Source code can be modded to give ANY step resolution or infinite angle control
Requires +5v logic supply for PIC
Has "standard" step and direction inputs
Compatible with most freeware home CNC driver software
Can be wired directly to a PC parallel port for home CNC
Works with 5-wire and 6-wire (unipolar) motors
It gets hot with larger motors, needs a big heatsink
It is a kit, you have to build it
Does NOT work with 4-wire (bipolar) motors
The Linistepper is a bit like myself; eccentric, quirky, rugged,
old-fashioned and offers a very high level of performance. :o)
As far as I know this is the only LINEAR constant-current microstepping
stepper driver available for sale apart from a couple of very expensive
high-end industrial units costing many hundreds of $.
Look at that linear smoothing! This is the actual current
through one motor winding in 3600 step mode, measured through one of
the current sense resistors.
This one page is all I have here on the LiniStepper, but there is a large
open-source project available which contains many pages;
Technical, how it works and linear microstepping theory
How to build it with step by step photos
Circuit diagram and parts list
PCB parts layout
High torque half-stepping theory
Full PIC .asm software
Tips for using it
How to tune it for different motor sizes
Owner's questions and answers
You can buy the kit there too and it has been priced cheaply,
for a similar price to the costs of the parts alone if bought from
Digikey or other hobby electronics stores. The kit includes all the components,
a high quality plated through hole double sided PCB,
the plugs/sockets for all connections,
and mounting hardware for the
power transistors but DOES NOT include heatsink angle bracket or heatsink.
All kit instructions are web-based and can be downloaded.
The (very small!) profits from kit sales are divided equally between myself
and the forum and help to support the forum.
Click here to go to the LiniStepper project!
Many thanks to all the people who have supported the LiniStepper open-source
project and especially thanks to Mr James Newton who has worked very hard on
the project and its web page.
Some LiniStepper photos
The photo above shows a LiniStepper test rig which consists of a 555 timer
oscillator to generate step pulses, a 7805 +5v regulator,
a pot to vary the motor speed, and a few
dipswitches to set the different step modes and direction etc.
It has a simple clamp-on heatsink about 150mm (6") high and the motor under
test is a 5v 1A unipolar motor. A handy test rig from junkbox parts and an hour to
solder together on veroboard. Notice the plugs as supplied with the kit.
Above (and below) show a Linistepper driving a X axis linear table built from a very
sturdy 1985 NEC 15" printer. The linistepper gives fine positioning even
with an un-geared belt drive that gives 50mm translation per motor revolution.
Above shows 2 linear tables (X and Y axes) mounted in a solid wooden frame
ready to wire the electronics. Using Linisteppers allows very high X/Y translate
speed (about 1 metre per second!) but still allows fine positioning.
X/Y cutting area is just over 300mm x 300mm.
I know a lot of people are using Linisteppers to power their home CNC
tools and for Astronomy telescope positioning. Please email me any photos
or links and I will put them here!
- end -
[Back to Home Page]