Re: Lost Steps => time for microprocessors!
Posted by
ballendo@y...
on 2000-08-29 17:25:42 UTC
Ron,
Using an outboard processor is the time-proven way to do cnc. But
even some of the big boys are using the PC itself for motion tasks.
In effect, the PC IS THE OUTBOARD PROCESSOR. Look inside modern
commercial CNC machines, you may find 2 or 3 PC motherbds! One for
motion, one for GUI/ network, maybe one for IO.
Cost = Lower (obvious)
Maintennance = Easy (tens of THOUSANDS of programmers familiar with PC
/ no extra hardware to fail/ troubleshoot/ service.
Manufacturing considerations = Less potential for problems/ rework/
third-party vendor delays/ warranties on addt'l hardware/ Parts
availability or change of spec /
Natural Progression of technology = PC's faster all the time, so its
getting easier!
Versatility and Improvements = Change the code / change the product
capability
Open architecture = Exactly the problem you mentioned w/Fashcut is
avoided
There are other reasons, but these show some "whys"
The only real limitation at this point is the ingenuity to use the
parts of the PC system WELL. As you know, there is a tendency towards
"this is how its done" or "It's always been done that way". But, our
platform (the PC) is changing. The pentium RSTCD instruction (not
sure i've got that code exactly right) gives us timing resolution AT
THE SPEED OF THE PROCESSOR! Just that not everyone has pentiums, yet.
The 8254 timer can be (currently, this is how RTLinux is done)
programmed to 838ns. Interrupt latency adds to this, but EMC shows it
CAN BE DONE.
There ARE VXD's (virtual device drivers,used by win9X,NT,and WinME)
available which support "real-time" windows; They are just VERY
expensive.
I think Art Fenerty's "Master" program is on the right track. Maybe
"Kcam" also (kellyware.com) but I don't know kcams' internal
architecture. They both need some polish for sure, but they are
taking advantage of the points listed above.
Also, JonE's msg is right on the mark, I think. If you're going to
leave the PC to the tasks you mentioned, then let's use a low-
cost,simple approach capable of hi-speed. Step-rates are increasing
all the time (microsteppers, and servos are driving this)
And,the cybernetics Cy545 chips someone mentioned were $75/axis!!! in
1994! Other motion chips and boards work extremely well , but again,
they cost arms and legs.
I would love to see you put your programming time into using (well)
the PC parts we have. With your UNIX background (from earlier posts)
I am sure you could advance the state of the art!
Ballendo
P.S. One area that seems to be left behind in modern programming is
the use of some of the "old tricks" used when PC's were slow, narrow
bitted, memory poor creatures. We just code up the high math and let
the incredible speed of the processor "make up for it". I believe
that the use of some of these "old tricks" will free up enough
processor time to EASILY accomplish it all on one PC!
Using an outboard processor is the time-proven way to do cnc. But
even some of the big boys are using the PC itself for motion tasks.
In effect, the PC IS THE OUTBOARD PROCESSOR. Look inside modern
commercial CNC machines, you may find 2 or 3 PC motherbds! One for
motion, one for GUI/ network, maybe one for IO.
>Why do we insist on having the PC do the pulses? The PC ought to doSeveral reasons come to mind:
>GUI, Math,Lookahead, etc.<snip>
Cost = Lower (obvious)
Maintennance = Easy (tens of THOUSANDS of programmers familiar with PC
/ no extra hardware to fail/ troubleshoot/ service.
Manufacturing considerations = Less potential for problems/ rework/
third-party vendor delays/ warranties on addt'l hardware/ Parts
availability or change of spec /
Natural Progression of technology = PC's faster all the time, so its
getting easier!
Versatility and Improvements = Change the code / change the product
capability
Open architecture = Exactly the problem you mentioned w/Fashcut is
avoided
There are other reasons, but these show some "whys"
>Yes, Linux has a 'real time'capability <snip>Linux's real-time capability rests on the standard PC hardware!
The only real limitation at this point is the ingenuity to use the
parts of the PC system WELL. As you know, there is a tendency towards
"this is how its done" or "It's always been done that way". But, our
platform (the PC) is changing. The pentium RSTCD instruction (not
sure i've got that code exactly right) gives us timing resolution AT
THE SPEED OF THE PROCESSOR! Just that not everyone has pentiums, yet.
The 8254 timer can be (currently, this is how RTLinux is done)
programmed to 838ns. Interrupt latency adds to this, but EMC shows it
CAN BE DONE.
There ARE VXD's (virtual device drivers,used by win9X,NT,and WinME)
available which support "real-time" windows; They are just VERY
expensive.
I think Art Fenerty's "Master" program is on the right track. Maybe
"Kcam" also (kellyware.com) but I don't know kcams' internal
architecture. They both need some polish for sure, but they are
taking advantage of the points listed above.
Also, JonE's msg is right on the mark, I think. If you're going to
leave the PC to the tasks you mentioned, then let's use a low-
cost,simple approach capable of hi-speed. Step-rates are increasing
all the time (microsteppers, and servos are driving this)
And,the cybernetics Cy545 chips someone mentioned were $75/axis!!! in
1994! Other motion chips and boards work extremely well , but again,
they cost arms and legs.
I would love to see you put your programming time into using (well)
the PC parts we have. With your UNIX background (from earlier posts)
I am sure you could advance the state of the art!
Ballendo
P.S. One area that seems to be left behind in modern programming is
the use of some of the "old tricks" used when PC's were slow, narrow
bitted, memory poor creatures. We just code up the high math and let
the incredible speed of the processor "make up for it". I believe
that the use of some of these "old tricks" will free up enough
processor time to EASILY accomplish it all on one PC!
Discussion Thread
Ron Ginger
2000-08-29 13:44:59 UTC
Re: Lost Steps => time for microprocessors!
ballendo@y...
2000-08-29 17:25:42 UTC
Re: Lost Steps => time for microprocessors!