Communicate with stepper motors?

Dar Scott dsc at swcp.com
Thu Aug 31 14:16:33 EDT 2006


On Aug 31, 2006, at 11:08 AM, Marty Knapp wrote:

> I was talking with a guy yesterday who said that using Basic you  
> could use the printer port on Windows to talk to a stepper motor. I  
> know pretty much nothing about robotics (or communicating through  
> ports for that matter). Does anyone know if this is possible with  
> Rev? I read through the docs and could see that one can read from  
> and write data to com ports and LPT ports, but wouldn't a stepper  
> motor just need electrical pulses sent to it?
>
> I realize I'm revealing my ignorance to the world here, but any  
> help would be appreciated.

The stepper motor does not use pulses in that sense, but phase  
changes. You won't be able to drive the motor directly with TTL, you  
will need to do level shifting.  Some motors need current going both  
directions, so this might get involved.

The printer port has gotten pretty smart since the last time I used  
it, so this might or might not work.  It might be worth a try.  In  
the BIOS set the printer port to the simplest form you can find.  It  
might be called classic.  You can find some printer port data  
online.  You might be able to rig it so the handshake is always there  
or it always responds to each byte sent out.  Better, put in a  
oneshot or other delay so you can write several bytes and have the  
motor moving at that speed.  You would drive the motor by sending  
four or 8 letters to it in a repeating sequence.

I have used a driver that makes all bits available for bit twiddling,  
so you can get input.  I forgot the name and I don't think it was  
being maintained last I used it.  I have read about another that  
makes this bit twiddling I/O available as though you have a serial port.

I'd look around online for output-only printer port I/O tips.

You might have trouble with jitter and getting up to speed.

You might be better off getting a hobby robot control board from many  
sources and using a serial interface.  You can also try some toy/ 
educational robots.

None of those will do microstepping, but if you have a motor that  
needs both positive and negative currents, you might have off as a  
half step.

Dar Scott



More information about the use-livecode mailing list