I'm looking for any blogs, write ups, books etc. of in depth technical breakdown of CNC controls or machine motion controls.
I don't mean from a programmers perspective. But rather a real technical break down of hardware & concepts. Ideally I'd like something like a reverse engineer blog.
Any control is acceptable, from a FANUC to a Centroid or even Anilam, DX-32 etc.
I want to know things like:
On newer FANUC controls, hitting reset button will stop a running program completely.
On older FANUC 0i-TB, in order to stop the program you have to actually type M code. Hitting reset doesn't stop the program.
I discovered this when I used MDI to turn on the spindle of a VTL to test it, but when I went to stop it, the stop button only paused the spindle, the program is still being executed. Reset does nothing. You have to use MDI and type in an M-code to stop the spindle or stop executing the program.
At some point FANUC modified the function of the RESET button to stop execution of any program. I would assume that buried deep in the settings is a parameter that changes what the RESET button does.
However, I'm not interested in the RESET button, but rather how "machine code is executed". In a traditional automation system, we'd setup RESET button as a input, and program our logic to do whatever we want.
But it seems like FANUC has the "machine motion control" as an independent system, and any inputs are run thru some sort of interpreter.
They way I originally viewed CNC control systems, is as if they were really refined PLCs. I'm sure that given an infinite number of monkeys and infinite time, they could take a high performance PLC and make it into a fully capable CNC control. Technically, this is already being done. There's lots of other non-machining machines that have very complex motion.
I'd like to know things like: what is the low level operating system in a CNC controller (i.e. DX-32 runs it's interpreter on Unix and motion control is handled by the motion card).
All other PC based controls operate the same way i.e. Centroid which runs on Windows and outputs to a motion card.
What CPU architecture do they use? how does communication between drives work?
I don't mean from a programmers perspective. But rather a real technical break down of hardware & concepts. Ideally I'd like something like a reverse engineer blog.
Any control is acceptable, from a FANUC to a Centroid or even Anilam, DX-32 etc.
I want to know things like:
On newer FANUC controls, hitting reset button will stop a running program completely.
On older FANUC 0i-TB, in order to stop the program you have to actually type M code. Hitting reset doesn't stop the program.
I discovered this when I used MDI to turn on the spindle of a VTL to test it, but when I went to stop it, the stop button only paused the spindle, the program is still being executed. Reset does nothing. You have to use MDI and type in an M-code to stop the spindle or stop executing the program.
At some point FANUC modified the function of the RESET button to stop execution of any program. I would assume that buried deep in the settings is a parameter that changes what the RESET button does.
However, I'm not interested in the RESET button, but rather how "machine code is executed". In a traditional automation system, we'd setup RESET button as a input, and program our logic to do whatever we want.
But it seems like FANUC has the "machine motion control" as an independent system, and any inputs are run thru some sort of interpreter.
They way I originally viewed CNC control systems, is as if they were really refined PLCs. I'm sure that given an infinite number of monkeys and infinite time, they could take a high performance PLC and make it into a fully capable CNC control. Technically, this is already being done. There's lots of other non-machining machines that have very complex motion.
I'd like to know things like: what is the low level operating system in a CNC controller (i.e. DX-32 runs it's interpreter on Unix and motion control is handled by the motion card).
All other PC based controls operate the same way i.e. Centroid which runs on Windows and outputs to a motion card.
What CPU architecture do they use? how does communication between drives work?