You care where the loop are because if they are in your PC you need a
special PC with a special OS.

Special PC? Pretty much any PC will work. I guess you could call the OS special but not nearly as special as an RTOS on an external processor. If you are really that terrified of Linux, run LCNC headless and write a Windows or web app to talk to it. The LCNC PC then becomes your external CPU box.

    But look at how most 3D printers work.
They are just like 4 axis milling machines, typically using 4 stepper
motors and no one needs a special PC or OS to make prints.   In all cases
the designers have pushed all the real-time function out to a $2 chip.

That $2 chip is absolutely packed to the gills and it does one job - running a basic 3D printer. It's so full that if you want to add any features you have to take others out to make room. The whole ethos of LinuxCNC is to be versatile. Want to run an automatic tool changer? No problem. Does your machine have an electronically controlled 3 speed gearbox? Again it's easy enough to add functionality to do that. Servos? stepper? Any mix of the two? Again no problem. I've used quite a few different hobby grade controllers and for versatility LCNC blows them all out of the water.

If you just want to run a basic desktop router on the cheap get an Arduino and chuck GRBL on it. You now have an external board running a motion controller with the PC just feeding it g-code. It's as close to your 'printer' concept as you're going to get. You can even run it completely standalone off a SD card. Of course there is no way GRBL can handle a bigger more complex machine.

Admittedly these days you can get slightly more expensive 32 bit CPUs that could run HAL. Moving the real-time stuff to such a CPU is doable with the investment of enough man hours. Who is going to provide those man hours? A PC is a convenient, cheap source of a very powerful CPU with a bunch of storage and useful interfaces. You can run LCNC on older PCs that are often given away for free.

Doing the work on the PC under Linux was a cost
cutting measure but today it dramatically raises the cost because of the
difficulty of interfacing a PC to a milling machine.

Are you talking about the cost of something like a Mesa card? Your $2 processor doesn't have nearly enough I/Os to do the job on a decent CNC installation. By the time you get a processor with lots of I/Os, add the cost of a board and the support components needed you are likely to easily exceed the cost of a Mesa system. Arduinos for example are dirt cheap because they are manufactured in vast quantities. CNC is a pretty niche market and any board specifically designed for CNC use isn't going to have the low cost you get from quantity.

Another example of real-time motion control software "done right" is
Cleanflight or BetaFlight (both are nearly the same)

Again, they have one job so the code can be carefully optimized for that task. CNC machines vary a lot so your control needs to be versatile. If you want to add some new functionality to your flight controller you're looking at a lot of work.

There are massively more drone users than hobby CNC users. Therefore there are more people willing to donate their time into making Cleanflight etc as slick as they are.  If enough people were to work on LinuxCNC it could become very slick with a pretty GUI to configure it. The problem is that there aren't enough people willing to donate the man-hours needed. Even then the GUI wouldn't be able to handle the more esoteric setups. Are you willing to dedicate a year's work to the project? You could get a lot done in that time.

Les


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

Reply via email to