#RMC Rev5.0.2 - revert to counts mode #RMC Rev41.1 - Add spindle lock interlock, PDB M-code, angular jog scale, switch SRO/FRO inputs on MPG #RMC Rev41 - Added 4th axis back #RMC Rev40 - 7i73 & new control panel #------------------ # ATC #------------------ #pocket request motion.analog-out-00 #carousel enable motion.digital-out-00 #extend solenoid motion.digital-out-01 #retract solenoid motion.digital-out-02 #drawbar solenoid motion.digital-out-03 #spindle lock solenoid motion.digital-out-04 #carousel JOG FWD motion.digital-out-05 #carousel JOG REV motion.digital-out-06 #spindle index trigger motion.digital-out-07 IN SPINDLE.HAL #ATC door motion.digital-out-08 #carousel-ready motion.digital-in-00 #extend proxy motion.digital-in-01 #retract proxy motion.digital-in-02 #drawbar down proxy motion.digital-in-03 #spindle-enable motion.digital-in-04 #spindle oriented motion.digital-in-05 #spindle lock proxy motion.digital-in-06 #carousel-homed motion.digital-in-07 #carousel-active motion.digital-in-08 #ATC door proxy motion.digital-in-09 ## ATC STEPGEN SETTINGS setp [HMOT](CARD0).stepgen.04.dirsetup [ATC]ATC_DIRSETUP setp [HMOT](CARD0).stepgen.04.dirhold [ATC]ATC_DIRHOLD setp [HMOT](CARD0).stepgen.04.steplen [ATC]ATC_STEPLEN setp [HMOT](CARD0).stepgen.04.stepspace [ATC]ATC_STEPSPACE setp [HMOT](CARD0).stepgen.04.step_type [ATC]ATC_STEP_TYPE setp [HMOT](CARD0).stepgen.04.control-type [ATC]ATC_CONTROL_TYPE setp [HMOT](CARD0).stepgen.04.maxaccel [ATC]ATC_MAX_ACCEL setp [HMOT](CARD0).stepgen.04.maxvel [ATC]ATC_MAX_VEL setp [HMOT](CARD0).stepgen.04.position-scale [ATC]ATC_POS_SCALE #set to "1" for carousel in counts mode ## CAROUSEL.COMP SETTINGS setp carousel.0.scale [ATC]ATC_SCALE #stepgen pulses per pocket setp carousel.0.width [ATC]ATC_WIDTH #width is tolerance 'window'; set higher for faster speeds setp carousel.0.home-offset [ATC]ATC_HOME_OFFSET net ATC-ENABLE <= motion.digital-out-00 net ATC-ENABLE => carousel.0.enable net MACHINE-IS-ENABLED => [HMOT](CARD0).stepgen.04.enable net ATC-READY <= carousel.0.ready net ATC-READY => motion.digital-in-00 net ATC-ACTIVE <= carousel.0.active net ATC-ACTIVE => motion.digital-in-08 net ATC-COUNTS <= carousel.0.counts net ATC-COUNTS => [HMOT](CARD0).stepgen.04.counts net ATC-INDEX <= [HMOT](CARD0).7i76.0.0.input-06-not #ATC index proximity sensor; 1/per rev net ATC-INDEX => carousel.0.sense-0 net ATC-POCKET <= [HMOT](CARD0).7i76.0.0.input-01-not #ATC index proximity sensor; 1/per rev net ATC-POCKET => carousel.0.sense-1 net ATC-POSITION <= carousel.0.counts-target net ATC-POSITION => [HMOT](CARD0).stepgen.04.position-cmd net ATC-JOG-FWD <= motion.digital-out-05 net ATC-JOG-FWD => carousel.0.jog-fwd net ATC-JOG-REV <= motion.digital-out-06 net ATC-JOG-REV => carousel.0.jog-rev net ATC-HOMED <= carousel.0.homed net ATC-HOMED => motion.digital-in-07 net ATC-POS-REQ <= motion.analog-out-00 #pocket position request net ATC-POS-REQ => conv-float-s32.0.in #pocket position request convert to s32 net ATC-POS-S32 <= conv-float-s32.0.out net ATC-POS-S32 => carousel.0.pocket-number #pocket position request to carousel.comp net ATC-EXTEND-VALVE <= motion.digital-out-01 #ATC cylinder extend request net ATC-EXTEND-VALVE => [HMOT](CARD0).7i76.0.0.output-03 #ATC cylinder extend solenoid valve net ATC-EXTEND-SENS <= [HMOT](CARD0).7i76.0.0.input-07 #ATC extended proximity sensor net ATC-EXTEND-SENS => motion.digital-in-01 net ATC-RETRACT-VALVE <= motion.digital-out-02 #ATC cylinder retract request net ATC-RETRACT-VALVE => [HMOT](CARD0).7i76.0.0.output-02 #ATC cylinder retract solenoid valve net ATC-RETRACT-SENS <= [HMOT](CARD0).7i76.0.0.input-08 #ATC retracted proximity sensor net ATC-RETRACT-SENS => motion.digital-in-02 net ATC-DOOR-VALVE <= motion.digital-out-08 #ATC door open request net ATC-DOOR-VALVE => [HMOT](CARD0).7i76.0.0.output-10 #ATC door solenoid net ATC-DOOR-SENS <= [HMOT](CARD0).7i76.0.0.input-05-not #ATC door open proximity sensor net ATC-DOOR-SENS => motion.digital-in-09 net PDB-UP-SENS <= [HMOT](CARD0).7i76.0.0.input-09 #PDB cylinder UP proximity sensor (HIGH when PDB is inactive) net PDB-UP-SENS => motion.digital-in-03 net UNCLAMP-TOOL-BUTTON <= [HMOT](CARD0).7i76.0.0.input-04 #PDB manual mode (pushbutton) net UNCLAMP-TOOL-BUTTON => xor2.0.in0 net UNCLAMP-TOOL-AUTO <= motion.digital-out-03 #PDB auto mode (M6 toolchange) net UNCLAMP-TOOL-AUTO => xor2.0.in1 net PDB-RELEASE <= xor2.0.out net PDB-RELEASE => [HMOT](CARD0).7i76.0.0.output-08 #PDB cylinder solenoid valve net SPINDLE-ENABLE => motion.digital-in-04 #to check spindle is off during toolchange net orient-lock => motion.digital-in-05 #to check spindle is oriented net SPIN-LOCK-CYL <= motion.digital-out-04 net SPIN-LOCK-CYL => [HMOT](CARD0).7i76.0.0.output-01 #spindle index lock solenoid valve net SPIN-LOCK-PROXY <= [HMOT](CARD0).7i76.0.0.input-02 #spindle index lock retract proxy net SPIN-LOCK-PROXY => motion.digital-in-06 net ATC-PREP-LOOP <= iocontrol.0.tool-prepare net ATC-PREP-LOOP => iocontrol.0.tool-prepared net ATC-CHANGE-LOOP <= iocontrol.0.tool-change net ATC-CHANGE-LOOP => iocontrol.0.tool-changed #loadusr -W hal_manualtoolchange