G-code is the most hilariously bad language. Keywords are G + a number, e.g. G01, with wildly different effects, varying arg lists and no standard. E.g. G01 move to position, G20 set the machine units to inches. Its often stateful. Obviously its coz its old and works, but i chuckle everytime i have to look up the codes at how comically awful it is compared to anything else i see https://en.m.wikipedia.org/wiki/G-code
What would a good G-Code variant look like? For all its flaws, it's pretty good at encoding the exact thing you want the CNC machine to do and while there certainly are different post-processors for different machines and in most cases they're not optional, it's also not like they're entirely different. I think of G-code as ASM. For high-performance work you might write code differently for different (related) machin…
CNC milling with open source software
101–110 of 133 posts
Re: CNC milling with open source software
#102Earlier quoted context omitted.
Is there any reason why CNC machines aren't directly controlled by CAM software, beyond it always having been done that way? I'd think it would be useful to integrate the two, instead of the CAM software just firing-and-forgetting toolpaths.
(I have built and worked on a lot of CNC mills, routers, etc) In some cases, it is. There are integrated CAM + Machines depending on industry and price point. (see woodwop, etc, which are the interface to the machine) The motion planning aspects can be taken care of (despite other comments), beckhoff, for example, does real time plc on windows machines by isolating cpus away from windows. i have no problem using it a…
I would prefer my (probably expensive) machine to kind of "know" what it's physical limits are and guarantee that executed commands adhere to them.
Re: CNC milling with open source software
#103Earlier quoted context omitted.
(I have built and worked on a lot of CNC mills, routers, etc) In some cases, it is. There are integrated CAM + Machines depending on industry and price point. (see woodwop, etc, which are the interface to the machine) The motion planning aspects can be taken care of (despite other comments), beckhoff, for example, does real time plc on windows machines by isolating cpus away from windows. i have no problem using it a…
Low-level control your machine from your CAM workstation in the office building will never make much sense (where the CAM software directly talks to servos). I would prefer my (probably expensive) machine to kind of "know" what it's physical limits are and guarantee that executed commands adhere to them.
The assumption that there is a cam workstation, and that it's in an office building, is certainly not one i would make. I wouldn't also say "will never make much sense".
You seem to have some particular set of users in mind for which you believe it wouldn't make sense. Okay - i'm not sure that changes that there are plenty of sets of users for which it will?
I even gave you examples of high end wood machines that have CAM directly integrated. There are many.
(They can also be programmed offline, but)
As for "knowing" the physical limits.
That's not actually possible since it there is no way to self-configure it even if everything did talk to each other. They don't know their own physical orientations (and it would be very expensive/hard to do that, and you'd still be guessing in the end)
Most of the non-safety/accessory programming is essentially explaining enough of the physical orientation and placement of things to the motion control that it can do something.
Re: CNC milling with open source software
#104Earlier quoted context omitted.
Yeah, you'd still definitely want to look at the toolpaths. As far as recalculating everything, it could still calculate most of it ahead of time. What I'm thinking of is something like a CAM workspace in FreeCAD. That is, something like would let you take your model, generate and inspect a toolpath (or flip through possible toolpaths), and produce a part. The CAM software would get feedback from the controller, so i…
It should not be that hard to export current axis positions and get it into FreeCAD. Look at machinekit, they have remote control and toolpath display. Pause/run/start, override of feed and spindle speeds also is easy. Detecting chatter is not that easy. Slowing down may be wrong, sometimes it is better to speed up. Doing on-the-fly adjustments of toolpaths in CAM integrated into a machine control would be a major re…
Errr? Detecting chatter is easy, and in fact, the latest spindles output the current tool vibration rate over your choice of fieldbus. That's fairly basic, much more advanced things are done.
"Doing on-the-fly adjustments of toolpaths in CAM integrated into a machine control would be a major research project."
Why? Toolpaths are already adjusted on the fly. Integrating CAM does not make this particularly harder - any of these machines have hardware motion planning anyway. Adding another FPGA or two to accelerate 5 axis movement calculation would not materially change their cost.
Re: CNC milling with open source software
#105I've been looking for a home PCB machine and would appreciate any recommendations on what to look at or what to avoid. I've been told multiple times that it's easier to just have a service print your board which is probably true, but that would take a lot of fun out of the entire process for me.
I've yet to see anyone make a test board on CNC that wouldn't have been made quicker and with better quality by using photoresist boards and etching them. And I have a pretty decent CNC mill.
Re: CNC milling with open source software
#106Earlier quoted context omitted.
Low-level control your machine from your CAM workstation in the office building will never make much sense (where the CAM software directly talks to servos). I would prefer my (probably expensive) machine to kind of "know" what it's physical limits are and guarantee that executed commands adhere to them.
It depends on what you are talking about here. CNC is used for a lot . The assumption that there is a cam workstation, and that it's in an office building, is certainly not one i would make. I wouldn't also say "will never make much sense". You seem to have some particular set of users in mind for which you believe it wouldn't make sense. Okay - i'm not sure that changes that there are plenty of sets of users for whi…
CAM workstation (running some "generic" CAM package with machine specific configuration) in some office building was the precondition, in that case it will never make much sense to control a machine's servos from that workstation, in my opinion.
Integrating the CAM within the machine itself is something else, and yes, stuff like that existed for very long time, but that is something completely different IMHO.
The machine controller "knows" the physical limits because somebody configured it (and "locked" it). It would be hard to guarantee the integrity of this configuration if you put it on an arbitrary workstation to run CAM and machine control.
Re: CNC milling with open source software
#107Earlier quoted context omitted.
It depends on what you are talking about here. CNC is used for a lot . The assumption that there is a cam workstation, and that it's in an office building, is certainly not one i would make. I wouldn't also say "will never make much sense". You seem to have some particular set of users in mind for which you believe it wouldn't make sense. Okay - i'm not sure that changes that there are plenty of sets of users for whi…
English is not my first language, so forgive me if I'm a bit ambiguous, it's not the intention. CAM workstation (running some "generic" CAM package with machine specific configuration) in some office building was the precondition, in that case it will never make much sense to control a machine's servos from that workstation, in my opinion. Integrating the CAM within the machine itself is something else, and yes, stuf…
Re: CNC milling with open source software
#108If you're interested in Open-Source CNC you should check out two of my Open-Source projects. https://camotics.org/ a CNC simulator and https://buildbotics.com/ a CNC controller. I'm somewhat surprised neither of these were mentioned.
Re: CNC milling with open source software
#109Earlier quoted context omitted.
>machinist still needs to load everything correctly. It's very easy to make a mistake. Tool configuration is kinda-sorta solved with ISO 13399, this is being supported in more and more CAM systems and tool vendors, but as you say it is very easy to make a mistake. Assuming the mistakes are happening when the tool data is reduced from the comprehensive format that ISO 13399 supports to the barebones and simple TxDxHx…
Not to mention workholding, etc. that might be off.
Certainly a chicken and egg problem though, my ideal future would have CAD files generated from single source of truth CNC files:)
Re: CNC milling with open source software
#110I work with the smoothieware project (hardware QA). It is an opensource motion control firmware and openhardware control board which works with 3d printers, lasers, mills, etc. Initially based on GRBL and runs on ARM (LPC1769). The openhardware scene has advanced quite nicely in the last 5 years. There are many very nice projects out there to build from which are largely able to be built at home with parts which can…
I am hoping more people will work on open source g-code generators so we have better alternatives to Fusion 360 / Solidworks for free
[1] http://github.com/makercam/openjscam [2] http://github.com/makercam [3] https://github.com/aewallin/opencamlib