The following inputs and outputs are defined in many of the Unified ATC PLC programs. The default I/O addresses (input and output numbers) given in the tables below are for the Oak version (oak-unified-cwp4.src).
Some optional systems, such as a hydraulic pump, door interlock, dual-coil drawbar solenoid, and conveyor and auger systems are not fully supported. The I/O assignments are given as a starting point, but PLC code will need to be added or revised.
As a starting point in planning your project, check which of the listed items are and are not present on your machine. Also note any devices that are present on your machine, but are not in the list below.
Note that some machines may have devices similar to those listed, but with non-standard functions. For example, Fadal VMCs have a spindle-in-orient-position sensor, which we usually wire in as "OrientComplete", but which simply reports that the spindle is rotated to the orient position (i.e. the sensor closes once per spindle revolution, regardless of whether the orient cam is advanced). Such machines always require specialized PLC logic.
Present? | Name | Default I/O | Function |
---|---|---|---|
Ax1_MinusLimitOk | INP1 | Limit switch: closed = okay | |
Ax1_PlusLimitOk | INP2 | Limit switch: closed = okay | |
Ax2_MinusLimitOk | INP3 | Limit switch: closed = okay | |
Ax2_PlusLimitOk | INP4 | Limit switch: closed = okay | |
Ax3_MinusLimitOk | INP5 | Limit switch: closed = okay | |
Ax3_PlusLimitOk | INP6 | Limit switch: closed = okay | |
LubeOk | INP9 | Lube level: closed = okay, open = Lube low or fault | |
SpindleInverterOk | INP10 | Spindle drive status: closed = Inverter okay, open = Inverter fault | |
EStopOk | INP11 | Emergency stop button: closed = okay, open = E-Stop pressed | |
SpindleZeroSpeed | INP12 | Signal from spindle drive: closed = zero speed, open = running | |
SpinLowRange | INP13 | closed = spindle in low range | |
SpinMidRange | INP14 | closed = spindle in mid range | |
SpinHighRange | INP15 | closed = spindle in high range | |
NoFaultOut | OUT1 | Emergency stop coil circuit: on if no fault or E-stop condition | |
Lube | OUT2 | Power the way lube pump | |
Flood | OUT3 | Run flood coolant | |
Mist | OUT4 | Run mist coolant | |
InverterResetOut | OUT5 | Reset spindle drive faults | |
WorkLightOut | OUT6 | Turn on work light | |
SpindleEnableOut | OUT7 | Tun spindle, either direction | |
SpindleDirectionOut | OUT8 (SPDT) | Run spindle in reverse (M4, CCW) | |
ZBrakeRelease | OUT9 (SPDT) | Release Z servo holding brake (on when Z axis is enabled) | |
CoolingFanOut | OUT19 | Run spindle motor cooling fan |
Present? | Name | Default I/O | Function |
---|---|---|---|
OrientComplete | INP17 | Signal from VFD: closed = spindle is oriented | |
AirPressureOk | INP18 | closed = pressure okay, open = pressure low | |
ToolClamped | INP21 | Drawbar switch: tool is clamped | |
ToolUnclamped | INP22 | Drawbar switch: tool is unclamped | |
ToolEjectButton | INP23 | Button on head: closed = button pressed | |
ToolCounter* | INP24 | Carousel counter: closed = in position, open = between positions | |
OrientRequestOut | OUT17 | Send orient request to VFD | |
ToolUnclampSol | OUT22 | Unclamp the drawbar | |
AirBlowSol | OUT26 | Blow air through spindle, to clear chips from taper | |
CarouselMotorEnableOut | OUT23 | Run carousel motor, in either direction | |
CarouselMotorDirOut | OUT24 | Run carousel motor in reverse (tool positions counting down) | |
ToolClampSol | OUT43 | Clamp the drawbar (optional) |
* The ToolCounter input often needs to be inverted, depending on sensor installation
Present? | Name | Default I/O | Function |
---|---|---|---|
CarRetracted_PotUp | INP31 | Carousel is retracted out of the way | |
CarAdvanced_PotDown | INP32 | Carousel is advanced under spindle | |
CarRetract_PotUpSol | OUT29 | Move carousel out of the way | |
CarAdvance_PotDownSol | OUT30 | Move carousel under spindle |
Present? | Name | Default I/O | Function |
---|---|---|---|
ArmAtStopInput* | INP25 | Changer arm is at a stopping place | |
ArmAtHomeInput* | INP26 | Changer arm is in parked/home position | |
ArmAtClampInput* | INP27 | Changer arm is in tool-gripping position | |
CarRetracted_PotUp | INP31 | Tool pot is swung up | |
CarAdvanced_PotDown | INP32 | Tool pot is swung down | |
ArmMotorFwd | OUT28 | Drive changer arm forward | |
ArmMotorRev | OUT36 | Drive changer arm reverse (optional) | |
CarRetract_PotUpSol | OUT29 | Swing tool pot up | |
CarAdvance_PotDownSol | OUT30 | Swing tool pot down |
* The arm-position inputs often need to be inverted, depending on sensor installation
Present? | Name | Default I/O | Function |
---|---|---|---|
RotaryTableHome | INP7 | Home switch: closed = not at home, open = at home | |
Clamp | OUT21 | Clamp (or unclamp) the rotary table. Reverse action with P178 bit 8 | |
HydraulicOk | INP33 | closed = hydraulic pump overload not tripped | |
DoorClosed | INP8 | Door switch: closed = Door is closed, open = Door is open | |
DoorLocked | INP16 | Door switch: closed = Door is locked | |
DoorUnlockOut | OUT20 | Unlock enclosure door, allowing it to be opened | |
ChillerOk | INP19 | Spindle chiller is running | |
SpindleChillerOut | OUT18 | Run spindle chiller | |
RedLightOut | OUT25 | Stack lights: red light on | |
GreenLightOut | OUT31 | Stack lights: green light on | |
AmberLightOut | OUT32 | Stack lights: amber light on | |
ChipPump | OUT27 | Run washdown pump | |
CTSPump | OUT34 | Run CTS coolant pump | |
ChipConveyor | OUT35 | Run conveyor | |
Auger1Enable | OUT39 | Run first auger | |
Auger1Dir | OUT40 (SPDT) | Run first auger in reverse | |
Auger2Dir | OUT41 (SPDT) | Run second auger in reverse | |
Auger2Enable | OUT42 | Run second auger | |
Hydraulic | OUT33 | Run hydraulic pump |