Re: PICs as replacements for L297s
Posted by
beer@s...
on 2001-04-20 12:01:01 UTC
On 20 Apr, CAD_CAM_EDM_DRO@yahoogroups.com wrote:
features to the controller, it seems to be very logical to me. The L297 is
the 'logic' device in the circuit.
Larry;
Just a few thoughts ...
I have no wish to argue nor to dispute the advantages of replacing
dedicated logic with a microcontroller - I wholeheartedly agree.
But actually having done it, actually having programmed a PIC as a
replacement for a 297 to drive an L298 ( and others ), I can state with
some high level of assurance that it is a non-trivial task should high
step rates be required.
Further, one must be VERY clever if one wishes to add microstepping, as
step rate now becomes an even bigger issue. There is the additional
program logic eating into the time slices available while at the same
time, you want even more speed out of the PIC, as microstepping
inherently lowers speed. ( More pulses required to go the same
distance ) Been there, done this too.
( Hint: Conventional DACs aren't the answer )
And adding quadrature feedback to a PIC stepper driver is damned near
impossible at any reasonable level of performance. At high step rates,
the interrupt overhead on even a 20MHz device consumes enough cycles
that there is a strong possibility of missing either a step pulse or a
quad pulse. The consequences of missing pulses - especially
quadrature pulses - are not easily dealt with and further erode the
maximum speed capabilites of the system. Been there, done a LOT of work
on this too.
( Certainly works well enough at low speeds, though )
The best solution I came up with for the feedback problem was an 8 pin
C508 PIC offloading some of decoding work for a C63. The C508 took
quadrature in and output three signals,
Step - which generates an interrupt on the C63,
Direction - read by the interrupt routine and
ERROR - also read by the interrupt routine.
The error signal was generated if a state change was "missed", either as
a result of the speed being too high for the PIC to follow OR for some
defect in the quadrature encoder. I found that from time to time, specs
of dust would get inside the encoder, masking the light beam and causing
missed states. ( At least, I think that's what's caused it ) In these
cases, an ERROR signal stops processing and sends an E-Stop to the
controlling program.
I used a PIC for this quadrature offloading as none of the commercially
available quad decoders ( like the USDigital LS7084 ) offered error
outputs. The hard logic devices are, of course, capable of MUCH higher
rates but upon seeing these error conditions in early testing, error
detection became important to me. ( And oh yeah, PICs are cheaper <G> )
Alan
--
Alan Rothenbush | The Spartans do not ask the number of the
Academic Computing Services | enemy, only where they are.
Simon Fraser University |
Burnaby, B.C., Canada | Agix of Sparta
> --- In CAD_CAM_EDM_DRO@y..., "Larry Edington" <ledington@c...> wrote:Since the PIC microcontroller can replace the L297 easily, and add new
features to the controller, it seems to be very logical to me. The L297 is
the 'logic' device in the circuit.
Larry;
Just a few thoughts ...
I have no wish to argue nor to dispute the advantages of replacing
dedicated logic with a microcontroller - I wholeheartedly agree.
But actually having done it, actually having programmed a PIC as a
replacement for a 297 to drive an L298 ( and others ), I can state with
some high level of assurance that it is a non-trivial task should high
step rates be required.
Further, one must be VERY clever if one wishes to add microstepping, as
step rate now becomes an even bigger issue. There is the additional
program logic eating into the time slices available while at the same
time, you want even more speed out of the PIC, as microstepping
inherently lowers speed. ( More pulses required to go the same
distance ) Been there, done this too.
( Hint: Conventional DACs aren't the answer )
And adding quadrature feedback to a PIC stepper driver is damned near
impossible at any reasonable level of performance. At high step rates,
the interrupt overhead on even a 20MHz device consumes enough cycles
that there is a strong possibility of missing either a step pulse or a
quad pulse. The consequences of missing pulses - especially
quadrature pulses - are not easily dealt with and further erode the
maximum speed capabilites of the system. Been there, done a LOT of work
on this too.
( Certainly works well enough at low speeds, though )
The best solution I came up with for the feedback problem was an 8 pin
C508 PIC offloading some of decoding work for a C63. The C508 took
quadrature in and output three signals,
Step - which generates an interrupt on the C63,
Direction - read by the interrupt routine and
ERROR - also read by the interrupt routine.
The error signal was generated if a state change was "missed", either as
a result of the speed being too high for the PIC to follow OR for some
defect in the quadrature encoder. I found that from time to time, specs
of dust would get inside the encoder, masking the light beam and causing
missed states. ( At least, I think that's what's caused it ) In these
cases, an ERROR signal stops processing and sends an E-Stop to the
controlling program.
I used a PIC for this quadrature offloading as none of the commercially
available quad decoders ( like the USDigital LS7084 ) offered error
outputs. The hard logic devices are, of course, capable of MUCH higher
rates but upon seeing these error conditions in early testing, error
detection became important to me. ( And oh yeah, PICs are cheaper <G> )
Alan
--
Alan Rothenbush | The Spartans do not ask the number of the
Academic Computing Services | enemy, only where they are.
Simon Fraser University |
Burnaby, B.C., Canada | Agix of Sparta
Discussion Thread
beer@s...
2001-04-20 12:01:01 UTC
Re: PICs as replacements for L297s
Alan Marconett KM6VV
2001-04-20 17:16:33 UTC
Re: PICs as replacements for L297s
Larry Edington
2001-04-20 18:09:14 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Larry Edington
2001-04-20 18:29:06 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Ian Wright
2001-04-21 01:11:50 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
paul@a...
2001-04-21 07:23:34 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Larry Edington
2001-04-21 11:05:43 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Kerry
2001-04-21 17:07:33 UTC
Re: PICs as replacements for L297s
Larry Edington
2001-04-21 17:39:19 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
ballendo@y...
2001-04-21 23:19:09 UTC
Re: PICs as replacements for L297s
paul@r...
2001-04-22 03:04:43 UTC
Re: PICs as replacements for L297s
Ian Wright
2001-04-22 04:04:35 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Carol & Jerry Jankura
2001-04-22 05:16:58 UTC
RE: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Flosi Gudmundsson
2001-04-22 06:36:12 UTC
Re: PICs as replacements for L297s
Tom Eldredge
2001-04-22 08:58:45 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Tom Eldredge
2001-04-22 08:58:46 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Kerry
2001-04-22 09:29:05 UTC
Re: PICs as replacements for L297s
Tim Goldstein
2001-04-22 09:35:07 UTC
RE: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Kerry
2001-04-22 10:08:04 UTC
Re: PICs as replacements for L297s
Tim Goldstein
2001-04-22 10:46:10 UTC
RE: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Kerry
2001-04-22 11:36:23 UTC
Re: PICs as replacements for L297s
Smoke
2001-04-22 18:56:07 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Alan Marconett KM6VV
2001-04-22 21:03:39 UTC
Re: PICs as replacements for L297s
Larry Edington
2001-04-22 22:01:57 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Larry Edington
2001-04-22 22:03:06 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Larry Edington
2001-04-22 22:31:40 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Larry Edington
2001-04-22 22:40:14 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Alan Marconett KM6VV
2001-04-22 22:51:21 UTC
Re: PICs as replacements for L297s
paul@r...
2001-04-23 03:12:55 UTC
Re: PICs as replacements for L297s
Tom Eldredge
2001-04-23 18:46:18 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
chapmani@m...
2001-05-08 04:36:12 UTC
PICs as replacements for L297s
Dan Mauch
2001-05-08 08:36:20 UTC
Re: [CAD_CAM_EDM_DRO] PICs as replacements for L297s
Larry Edington
2001-05-08 09:14:35 UTC
Re: [CAD_CAM_EDM_DRO] PICs as replacements for L297s
Tony Jeffree
2001-05-08 12:19:43 UTC
Re: PICs as replacements for L297s
Eric Keller
2001-05-08 13:10:20 UTC
RE: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Carol & Jerry Jankura
2001-05-08 17:45:10 UTC
RE: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s
Larry Edington
2001-05-08 18:17:30 UTC
Re: [CAD_CAM_EDM_DRO] Re: PICs as replacements for L297s