> -----Original Message-----
> From: andy pugh [mailto:bodge...@gmail.com]
> Just an observation:
> 
> LinuxCNC is a CNC controller that runs under Linux.
> 
> The clue is in the name.
> 
> If you want something else, LinuxCNC probably isn't even a good starting 
> point.

There is a tendency for people to buy into the Microsoft story that their 
Operating System is also spreadsheet, word processor, email and browser to name 
but a few.  It's not.

As you say, Linux is an Operating System (OS) and the application program 
LinuxCNC runs on that OS that has been modified to have deterministic behaviour 
in order to create the illusion of real time response to external events.

The short definition of an OS is that it's a program running on a computer that 
provides a higher level abstract solution for connecting the hardware to the 
software applications.  Like spreadsheets, word processors, email, browsers and 
even CNC software.

And the CNC software is a program that interprets commands and creates 
instructions to control hardware in a predictable manner.   It does this by 
planning a trajectory based on the G-Code commands and what happened before to 
create motion commands for what will happen.

There is absolutely nothing in the rule book, so to speak, that says that the 
Linux based CNC software has to run inside the Linux environment.  As long as 
the CNC program is provided with the G-Code statements in the required order 
how they get to the CNC program is irrelevant.  

By the same token, as shown with the output side, whether a task receives the 
motion commands and translates into step/dir signals on a parallel port or 
creates a UDP or TCP/IP message over Ethernet to an external slave board only 
involves Linux in the manner that the infrastructure to do this is part of the 
OS.

Same with the video.  I was drawing lines on a graphical screen attached to a 
PDP-10 back in 1983.  In this case it was Unix.  A few years later I 
wire-wrapped a video board using a chip from NEC on an S-100 bus computer.  The 
manner to draw a line hadn't really changed except in this case I built up the 
library using FORTH.  Push 4 parameters onto the stack and issue the word LINE 
or BOX.  Bingo.  There was a line on the screen.

So I think I'll disagree.  LinuxCNC is a great starting point.  It's just a 
matter of documenting which parts of the program use the OS and which parts of 
the program are CNC interpretation.

John Dammeyer






_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to