Originally Posted by
SCzEngrgGroup
There are absolutely NO standards whatsoever for how an ATC gets integrated into a CNC controller. Every single controller is different. With some, like Mach, it is relatively straight-forward and "open", PROVIDED whoever is doing the integration is proficient in programming. It can be done using Cypress Basic macros, or a dedicated plug-in, written in c++. For the UCCNC controllers, it's done with a plug-in written in c#. For LinuxCNC/PathPilot, it would most likely be done using Python. For some, like the Centroid Acorn, it simply CAN'T be done.
In any case, there is a WIDE range of option when implementing an ATC. The bare minimum support required is a functioning M6. Without that, an ATC is useless. After that, you can add support for logical-to-physical tool mapping, automatic tool-length measurement, extensive error handling, etc., etc. Handling the M6 *may* be as little as a few days work. Doing the "full monty" is months of work coding and testing.
The Novakon ATC current supports Mach3 (using virtually any screen set), as well as MachStdMill (which is the recommended interface, due to its vastly better functionality). It may, or may not, support UCCNC and/or PathPilot, if there is enough demand to justify the time, effort and expense. There is also a stand-alone Windows application that implements most of the functionality of the full MachStdMill ATC interface, allowing full control of the ATC without needing to be coupled to CNC controller. as well as a second application intended for debugging and tuning the ATC, including servo PID tuning, firmware updating, interactive manual communications with the ATC, etc.
The ATC itself is very flexible and versatile, supporting a wide variety of interfaces, including USB, RS232, Ethernet, and even a hard-wired TTL-level interface requiring only four wires (this is the one I use with my KFlop). Since the ATC itself is quite intelligent, its performance and reliability are effectively completely uncoupled from the controller. The controller does nothing more than send high-level commands, and wait for a response from the ATC. That response will indicate whether the command was successful, and, if not, exactly what went wrong. As long as the appropriate communications protocol is obeyed by the controller, the ATC will work just as reliably with any controller as it does with Mach3.
Regards,
Ray L.