CAD CAM EDM DRO - Yahoo Group Archive

interpolation and algorithms of multiple axes was Re: Pulse Gen

Posted by ballendo@y...
on 2000-12-06 03:12:25 UTC
Alan, Wally,

Not sure what you're looking for here. I think Alan wants to know how
to do interpolated moves of multiple axes? Wally wants a "driver???"
for EMC?

So I have some "guesses" as to what you are looking for below:

Wally, I believe you are right that Mariss' pulsegen is going to need
some software to set the rates for the axes/axis. Also, at 8191hz max
output some screw/drive/pulley setups will not be serviceable.

Since Mariss provided the circuit, keep in mind his "pulse
multiplied" drives may allow some of these high freq. apps to work. I
haven't "done the math" to see just what sort of errors accumulate at
different angles of 2 or 3 axis motion. (doing it the way Alan
suggested; set it and go!)

As for "EMC driver", what do you mean? Do you want to incorporate
this pulsegen circuit into EMC? If so, Mariss has provided the info
needed to get started in the .doc file. (send 2 byte "rates" 1024
times/sec for each axis, I believe)

Alan,

Interpolation of multiple axes can be done MANY ways! I'll give you
and anyone else who's listening a hint. The screen you are looking at
to read this "interpolates axes" when it draws angled lines in
graphics modes.

The "grandfather" of the linear interpolation algorithm used by many
graphics applications is Jack Bresenham, who used to work for IBM and
in 1965 wrote a paper for IBM's system journal titled(i think) "a
fast line drawing algorithm". He's now teaching at a university in
the eastern U.S.. A nice man to talk with, but do some research first!

Anyway, his algorithm has been added to, chopped up, modified,
improved upon but is still useful to begin understanding the problem
of "picking the correct/best points (from the finite set that IS the
screen or CNC machine work area) to most accurately represent the
desired line". He also holds a patent on a fast circular algorithm.

Another fast circular interp is in the book "numerical methods". I'm
working from memory so I don't have the authors name. Source in C in
the book and included CD.

The book Graphics GEMS (available online) contains many code examples
(old versions were pascal or BASIC, new editions use C or C++) which
will prove useful to someone intending to "write a CNC control".

Obviously, the needed code IS in the EMC source! If you understand C.

Also in Kevin Carrols' Stepster source and the informative
explanation of stepster titled "exactly how a cnc works". Both
available at http://www.metalworking.com . Click the shareware link
and scroll down...

Luberths' home build plotter site and forum (do a search) has lots of
2 and 3 axis code examples in pascal, BASIC, and c . Also some good
hpgl interpreters. It has been fun to watch his learning curve and
progression.

A company in Hayward (near Fremont), California called Silicon Valley
Surplus used to sell a "motion control system" (based on the morrow
CPM computer). They were selling mostly low-end "laser show" stuff
last time I checked, but they do/did have available some 4 axis
interpolation step motor code (in BASIC)on disk which is easy to
follow and adapt. The early, original code was written in forth by
George Borys. I believe DeskNC used/uses their algorithms. Carl?

Microchip (makers of the PIC uP's) had a servo drive with software
source in one of their application handbooks a few years back.

And of course the book I mentioned in an earlier thread is useful
(Chuck Raskin).

Hope this helps. (and is somewhere near the mark)

Ballendo

P.S. The older routines were optimised to use the limited processing
power of the old microprocessors' (avoid divides at all cost,use
shifts and adds if possible, and multiply only when really
necessary). Nowadays, many of the "interp" routines just "code the
straight math" and let the incredible speed "make up" for the old
methods. Mariss referred to doing this in his pulsgen.doc paper.

P.S.S. List, while we're here in this "interpolate and algorithms"
thread; maybe others can write what or where to find related info for
those wishing to "write a cnc control"???

Discussion Thread

ballendo@y... 2000-12-06 03:12:25 UTC interpolation and algorithms of multiple axes was Re: Pulse Gen Wally K 2000-12-06 11:13:11 UTC interpolation and algorithms of multiple axes was Re: Pulse Gen ballendo@y... 2000-12-09 15:12:05 UTC Re: interpolation and algorithms of multiple axes was Re: Pulse Gen Ian Wright 2000-12-10 06:08:44 UTC Re: [CAD_CAM_EDM_DRO] Re: interpolation and algorithms of multiple axes was Re: Pulse Gen Mariss Freimanis 2000-12-10 08:06:20 UTC interpolation and algorithms of multiple axes was Re: Pulse Gen Carlos Guillermo 2000-12-10 13:40:48 UTC RE: [CAD_CAM_EDM_DRO] Re: interpolation and algorithms of multiple axes was Re: Pulse Gen Carlos Guillermo 2000-12-10 13:40:50 UTC RE: [CAD_CAM_EDM_DRO] interpolation and algorithms of multiple axes was Re: Pulse Gen Alan Marconett KM6VV 2000-12-10 17:58:22 UTC Re: interpolation and algorithms of multiple axes was Re: Pulse Gen