Hi Jon,
> -----Original Message-----
> From: Jon Elson [mailto:el...@pico-systems.com]
> 
> On 01/23/2020 11:45 PM, John Dammeyer wrote:
> > I really don't know what is going on under the covers for
> > either the MESA Ethernet 7i92H or the Ethernet Smooth
> > Stepper for MACH. But considering the power of the
> > processors running machines back in the 90's or early
> > 2000's and that the mechanics for the metal cutting
> > haven't changed much, my guess is that some 32 bit
> > processor _not_ running Linux so that the
> > graphics/USB/etc. doesn't cripple the real time behaviour
> > will be the solution.
> You keep going around and around saying that LinuxCNC
> doesn't work. Thousands of people are using it daily, and
> know it DOES work!  If you want to do software stepping, how
> about Machinekit on the Beagle Bone, using the PRU
> to do the step generation?  This works amazingly well, and
> costs about $145 plus keyboard, mouse and LCD screen.
> Or, you can network into the Beagle and use some other
> machine for the man-machine interface.
> 
> Jon

I'm _not_ saying LinuxCNC doesn't work.  
The opposite in fact and I've run the BBB with the Xylotex cape so I can attest 
that it does especially with the dual PRU I/O processors.  Even posted a 
youtube video on that.  

Where the beagle falls down on the Linux side of things, say compared to a Pi 
or a PC, is the video processing just isn't as good.  And it shows even when 
just running normal Linux compared to normal Linux on a Pi.

Where my LinuxCNC box falls apart is with the parallel port for stepping with 
very high latency issues and that one time warning when LinuxCNC starts up that 
I've basically got my motion parameters set too high for the system.  

The solution is of course the MESA 7 I92H which solves that problem.

Or when I run MACH3 on WIN-XP with the parallel port with a 65KHz clock rate.   
Then that exact same PC doesn't have any high speed step rate issues.

Now like the BBB I/O, the PC parallel port is directly coupled to the processor 
motherboard and therefore the processor.  That LinuxCNC cannot run the same 
step rates as the WIN-XP system on identical hardware (dual boot PC remember) 
shows that there is some sort of issue with PC hardware that LinuxCNC is not 
able to solve.  Might well be video drivers.  USB drivers.  Network Drivers.  
Might be how it handles the BIOS parameters.  

Offload that I/O to a USB/Ethernet smooth stepper for MACH or the MESA 7i92H 
for LinuxCNC and the latency problems (there are others in Windows) go away.

And that, I think, is the point that everyone is making.  It's not like the PC 
parallel port is used with SPI or I2C on each output pin to expand I/O.  Some 
of the LinuxCNC solutions involve plugging a board into the PCI bus and using 
either co-processors or FPGA (which could have a co-processor built into them) 
to handle the heavy lifting.  The others involve using Ethernet and processing 
outside the box again.

I agree there are probably thousands if not tens of thousands of LinuxCNC 
systems out there running from the parallel port.  And odds are they are 
running micro-steppers that, if they are lucky, require at most 15kHz to 18kHz 
step rates before the stepper motor torque falls off so badly that they lock 
up.  So the Parallel port version of LinuxCNC has no issues on those systems.

But the latency warning for 50khz step rates for the DC Servos under LinuxCNC 
that doesn't happen on WIN-XP and MACH3 suggests that I've reached the upper 
limit of the LinuxCNC OS and the parallel port with this particular 
configuration.

But as I've been saying, the moment you add some sort of external FPGA or 
processor based external card that offloads the heavy processing for high speed 
encoder/step/SSERIAL etc. then it's not just LinuxCNC anymore but a PC  
dependent on outside hardware.   And that's what the subject line and 
discussion was about I thought.  If the motion control was offloaded to a 
separate processor then just about any PC remote or right there can load 
G-Code, display tool paths and control the machine.  

Without a PCI plug in card.  So we really are talking about Ethernet Based 
control; perhaps even WiFi.  Now we're back to the question as to why should it 
be LinuxCNC when it could be a dedicated processing I/O module with Ethernet 
connectivity running an RTOS with pre-emptive scheduling.  A small BoB sized 
board with a single cable (antenna or Ethernet) out to the outside world.  And 
with a clearly documented interface the software that connects to this no 
longer has to run on a particular PC running a particular OS.

I hope that clears it up.
John Dammeyer








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

Reply via email to