# Generated by PNCconf at Fri Dec 20 18:13:00 2013 # If you make changes to this file, they will be # overwritten when you run PNCconf again loadrt trivkins loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES loadrt hostmot2 loadrt hm2_pci config=" num_encoders=3 num_pwmgens=0 num_stepgens=5 sserial_port_0=00000x " setp hm2_5i25.0.watchdog.timeout_ns 10000000 loadrt pid names=pid.x,pid.y,pid.z,pid.s loadrt classicladder_rt numPhysInputs=15 numPhysOutputs=15 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10 loadrt axisswap addf hm2_5i25.0.read servo-thread addf motion-command-handler servo-thread addf motion-controller servo-thread addf pid.x.do-pid-calcs servo-thread addf pid.y.do-pid-calcs servo-thread addf pid.z.do-pid-calcs servo-thread addf pid.s.do-pid-calcs servo-thread addf classicladder.0.refresh servo-thread addf hm2_5i25.0.write servo-thread addf hm2_5i25.0.pet_watchdog servo-thread addf axisswap.0 servo-thread # external output signals # external input signals # --- SPINDLE-AT-SPEED --- net spindle-at-speed <= hm2_5i25.0.7i76.0.3.input-15 net during-run <= hm2_5i25.0.7i76.0.3.input-14 #******************* # AXIS X #******************* setp pid.x.Pgain [AXIS_0]P setp pid.x.Igain [AXIS_0]I setp pid.x.Dgain [AXIS_0]D setp pid.x.bias [AXIS_0]BIAS setp pid.x.FF0 [AXIS_0]FF0 setp pid.x.FF1 [AXIS_0]FF1 setp pid.x.FF2 [AXIS_0]FF2 setp pid.x.deadband [AXIS_0]DEADBAND setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT setp pid.x.error-previous-target true setp pid.x.maxerror .0005 net x-index-enable <=> pid.x.index-enable net x-enable => pid.x.enable net x-output => pid.x.output net x-pos-cmd => pid.x.command net x-vel-cmd => pid.x.command-deriv net x-pos-fb => pid.x.feedback # Step Gen signals/setup setp hm2_5i25.0.stepgen.03.dirsetup [AXIS_0]DIRSETUP setp hm2_5i25.0.stepgen.03.dirhold [AXIS_0]DIRHOLD setp hm2_5i25.0.stepgen.03.steplen [AXIS_0]STEPLEN setp hm2_5i25.0.stepgen.03.stepspace [AXIS_0]STEPSPACE setp hm2_5i25.0.stepgen.03.position-scale [AXIS_0]STEP_SCALE setp hm2_5i25.0.stepgen.03.step_type 0 setp hm2_5i25.0.stepgen.03.control-type 1 setp hm2_5i25.0.stepgen.03.maxaccel 2200.0 setp hm2_5i25.0.stepgen.03.maxvel 402 # ---closedloop stepper signals--- net x-pos-cmd <= axis.0.motor-pos-cmd net x-vel-cmd <= axis.0.joint-vel-cmd net x-output <= hm2_5i25.0.stepgen.03.velocity-cmd net x-enable <= axis.0.amp-enable-out net x-enable => hm2_5i25.0.stepgen.03.enable # ---Encoder feedback signals/setup--- setp hm2_5i25.0.encoder.00.counter-mode 0 setp hm2_5i25.0.encoder.00.filter 1 setp hm2_5i25.0.encoder.00.index-invert 0 setp hm2_5i25.0.encoder.00.index-mask 0 setp hm2_5i25.0.encoder.00.index-mask-invert 0 setp hm2_5i25.0.encoder.00.scale [AXIS_0]ENCODER_SCALE net x-pos-fb axis.0.motor-pos-fb net x-pos-fb hm2_5i25.0.encoder.00.position net x-pos-rawcounts hm2_5i25.0.encoder.00.rawcounts net x-index-enable axis.0.index-enable => hm2_5i25.0.encoder.00.index-enable net x-vel-fb => hm2_5i25.0.encoder.00.velocity # ---setup home / limit switch signals--- net x-home-sw => axis.0.home-sw-in net x-neg-limit => axis.0.neg-lim-sw-in net x-pos-limit => axis.0.pos-lim-sw-in #******************* # AXIS Y1 #******************* # Step Gen signals/setup setp hm2_5i25.0.stepgen.02.dirsetup [AXIS_1]DIRSETUP setp hm2_5i25.0.stepgen.02.dirhold [AXIS_1]DIRHOLD setp hm2_5i25.0.stepgen.02.steplen [AXIS_1]STEPLEN setp hm2_5i25.0.stepgen.02.stepspace [AXIS_1]STEPSPACE setp hm2_5i25.0.stepgen.02.position-scale [AXIS_1]STEP_SCALE setp hm2_5i25.0.stepgen.02.step_type 0 setp hm2_5i25.0.stepgen.02.control-type 0 setp hm2_5i25.0.stepgen.02.maxaccel 2200 setp hm2_5i25.0.stepgen.02.maxvel 402 net y-pos-fb axis.1.motor-pos-fb <= hm2_5i25.0.stepgen.02.position-fb net y-pos-cmd axis.1.motor-pos-cmd => hm2_5i25.0.stepgen.02.position-cmd net y-enable axis.1.amp-enable-out => hm2_5i25.0.stepgen.02.enable # ---setup home / limit switch signals--- net y-home-sw => axis.1.home-sw-in net y-neg-limit => axis.1.neg-lim-sw-in net y-pos-limit => axis.1.pos-lim-sw-in #******************* # AXIS Y2 #******************* # Step Gen signals/setup setp hm2_5i25.0.stepgen.00.dirsetup [AXIS_1]DIRSETUP setp hm2_5i25.0.stepgen.00.dirhold [AXIS_1]DIRHOLD setp hm2_5i25.0.stepgen.00.steplen [AXIS_1]STEPLEN setp hm2_5i25.0.stepgen.00.stepspace [AXIS_1]STEPSPACE setp hm2_5i25.0.stepgen.00.position-scale [AXIS_1]STEP_SCALE setp hm2_5i25.0.stepgen.00.step_type 0 setp hm2_5i25.0.stepgen.00.control-type 0 setp hm2_5i25.0.stepgen.00.maxaccel 2200 setp hm2_5i25.0.stepgen.00.maxvel 402 net y-pos-cmd => hm2_5i25.0.stepgen.00.position-cmd net y-enable => hm2_5i25.0.stepgen.00.enable #******************* # AXIS Z1 #******************* # Step Gen signals/setup setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_2]DIRSETUP setp hm2_5i25.0.stepgen.01.dirhold [AXIS_2]DIRHOLD setp hm2_5i25.0.stepgen.01.steplen [AXIS_2]STEPLEN setp hm2_5i25.0.stepgen.01.stepspace [AXIS_2]STEPSPACE setp hm2_5i25.0.stepgen.01.position-scale [AXIS_2]STEP_SCALE setp hm2_5i25.0.stepgen.01.step_type 0 setp hm2_5i25.0.stepgen.01.control-type 0 setp hm2_5i25.0.stepgen.01.maxaccel 2200.0 setp hm2_5i25.0.stepgen.01.maxvel 145.8 net z-pos-fb => axis.2.motor-pos-fb net inzfb <= hm2_5i25.0.stepgen.01.position-fb net z-pos-cmd <= axis.2.motor-pos-cmd net motorposz => hm2_5i25.0.stepgen.01.position-cmd net z-enable axis.2.amp-enable-out => hm2_5i25.0.stepgen.01.enable # ---setup home / limit switch signals--- net z-home-sw => axis.2.home-sw-in net z-neg-limit => axis.2.neg-lim-sw-in net z-pos-limit => axis.2.pos-lim-sw-in #******************* # AXIS W (Z2) #******************* # Step Gen signals/setup setp hm2_5i25.0.stepgen.04.dirsetup [AXIS_8]DIRSETUP setp hm2_5i25.0.stepgen.04.dirhold [AXIS_8]DIRHOLD setp hm2_5i25.0.stepgen.04.steplen [AXIS_8]STEPLEN setp hm2_5i25.0.stepgen.04.stepspace [AXIS_8]STEPSPACE setp hm2_5i25.0.stepgen.04.position-scale [AXIS_8]STEP_SCALE setp hm2_5i25.0.stepgen.04.step_type 0 setp hm2_5i25.0.stepgen.04.control-type 0 setp hm2_5i25.0.stepgen.04.maxaccel 2200.0 setp hm2_5i25.0.stepgen.04.maxvel 145.8 net w-pos-fb => axis.8.motor-pos-fb net inwfb <= hm2_5i25.0.stepgen.04.position-fb net w-pos-cmd <= axis.8.motor-pos-cmd net motorposw => hm2_5i25.0.stepgen.04.position-cmd net w-enable axis.8.amp-enable-out => hm2_5i25.0.stepgen.04.enable # ---setup home / limit switch signals--- net w-home-sw => axis.8.home-sw-in net w-neg-limit => axis.8.neg-lim-sw-in net w-pos-limit => axis.8.pos-lim-sw-in #******************* # SPINDLE S #******************* # ---digital potentionmeter output signals/setup--- setp hm2_5i25.0.7i76.0.3.spinout-minlim [SPINDLE_9]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i76.0.3.spinout-maxlim [SPINDLE_9]OUTPUT_MAX_LIMIT setp hm2_5i25.0.7i76.0.3.spinout-scalemax [SPINDLE_9]OUTPUT_SCALE net spindle-vel-cmd => hm2_5i25.0.7i76.0.3.spinout net spindle-on => hm2_5i25.0.7i76.0.3.output-00 net spindle-on => hm2_5i25.0.7i76.0.3.spinena net spindle-ccw => hm2_5i25.0.7i76.0.3.spindir # ---setup spindle control signals--- net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps net spindle-vel-cmd <= motion.spindle-speed-out net spindle-on <= motion.spindle-on net spindle-cw <= motion.spindle-forward net spindle-ccw <= motion.spindle-reverse net spindle-brake <= motion.spindle-brake net spindle-revs => motion.spindle-revs net spindle-at-speed => motion.spindle-at-speed net spindle-vel-fb => motion.spindle-speed-in net spindle-index-enable <=> motion.spindle-index-enable #****************************** # connect miscellaneous signals #****************************** # ---HALUI signals--- net joint-select-a halui.joint.0.select net x-is-homed halui.joint.0.is-homed net jog-x-pos halui.jog.0.plus net jog-x-neg halui.jog.0.minus net jog-x-analog halui.jog.0.analog net joint-select-b halui.joint.1.select net y-is-homed halui.joint.1.is-homed net jog-y-pos halui.jog.1.plus net jog-y-neg halui.jog.1.minus net jog-y-analog halui.jog.1.analog net joint-select-c halui.joint.2.select net z-is-homed halui.joint.2.is-homed net jog-z-pos halui.jog.2.plus net jog-z-neg halui.jog.2.minus net jog-z-analog halui.jog.2.analog net jog-selected-pos halui.jog.selected.plus net jog-selected-neg halui.jog.selected.minus net spindle-manual-cw halui.spindle.forward net spindle-manual-ccw halui.spindle.reverse net spindle-manual-stop halui.spindle.stop net machine-is-on halui.machine.is-on net jog-speed halui.jog-speed net MDI-mode halui.mode.is-mdi # ---coolant signals--- net coolant-mist <= iocontrol.0.coolant-mist net coolant-flood <= iocontrol.0.coolant-flood # ---probe signal--- net probe-in => motion.probe-input # ---motion control signals--- net in-position <= motion.in-position net machine-is-enabled <= motion.motion-enabled # ---digital in / out signals--- # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-out => iocontrol.0.emc-enable-in # ---toolchange signals for custom tool changer--- net tool-number <= iocontrol.0.tool-number net tool-prep-number <= iocontrol.0.tool-prep-number net tool-change-request <= iocontrol.0.tool-change net tool-change-confirmed => iocontrol.0.tool-changed net tool-prepare-request <= iocontrol.0.tool-prepare net tool-prepare-confirmed => iocontrol.0.tool-prepared #---classicladder connections-- net tool-number => classicladder.0.s32in-01 net tool-prep-number => classicladder.0.s32in-02 net tool-change-confirmed <= classicladder.0.out-05 net tool-change-request => classicladder.0.in-05 net tool-prepare-request => classicladder.0.in-06 net tool-prepare-confirmed <= classicladder.0.out-06 net spindle-at-speed => classicladder.0.in-07 net during-run => classicladder.0.in-08 net vfdswap <= classicladder.0.out-01 net vfdswap => hm2_5i25.0.7i76.0.3.output-01 #---spindleswap connections-- net vfdswap => axisswap.0.sel net z-pos-cmd => axisswap.0.inz net w-pos-cmd => axisswap.0.inw net motorposz <= axisswap.0.outz net motorposw <= axisswap.0.outw net inzfb => axisswap.0.inzfb net inwfb => axisswap.0.inwfb net z-pos-fb <= axisswap.0.outzfb net w-pos-fb <= axisswap.0.outwfb # Load Classicladder without GUI (can reload LADDER GUI in AXIS GUI loadusr classicladder --nogui custom.clp