My homebuilt CNC has an old PLC in it in addition to Mach 3. It controls the limit switches outside of Mach 3 to prevent crashes that might be caused by a Mach 3 issue. The door switches and the key lockout go through the PLC. It controls the lights in the enclosure, the shop vac, the air compressor, which spindle is in use, whether I am using air, coolant or both, whether I am using it with a lathe spindle, whether the stepper signals got to the lathe or the 3D printer head, and the temperature of the print head and print bed. Lots of stuff that I can easily reconfigure at any time.