# Generated by PNCconf at Wed May 23 18:29:55 2012 # 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 probe_parport loadrt hostmot2 loadrt hm2_pci config="firmware=hm2/5i20/SVST8_4.BIT num_encoders=4 num_pwmgens=4 num_stepgens=0" setp hm2_5i20.0.pwmgen.pwm_frequency 100000 setp hm2_5i20.0.pwmgen.pdm_frequency 100000 setp hm2_5i20.0.watchdog.timeout_ns 10000000 addf hm2_5i20.0.read servo-thread addf motion-command-handler servo-thread addf motion-controller servo-thread loadrt pid num_chan=2 addf pid.0.do-pid-calcs servo-thread addf pid.1.do-pid-calcs servo-thread setp pid.0.Pgain pid.x.Pgain setp pid.0.Igain pid.x.Igain setp pid.0.Dgain pid.x.Dgain setp pid.0.bias pid.x.bias setp pid.0.FF0 pid.x.FF0 setp pid.0.FF1 pid.x.FF1 setp pid.0.FF2 pid.x.FF2 setp pid.0.deadband pid.x.deadband setp pid.0.maxoutput pid.x.maxoutput setp pid.0.enable pid.x.enable setp pid.0.command pid.x.command setp pid.0.feedback pid.x.feedback setp pid.0.output pid.x.output setp pid.0.index-enable pid.x.index-enable setp pid.1.Pgain pid.y.Pgain setp pid.1.Igain pid.y.Igain setp pid.1.Dgain pid.y.Dgain setp pid.1.bias pid.y.bias setp pid.1.FF0 pid.y.FF0 setp pid.1.FF1 pid.y.FF1 setp pid.1.FF2 pid.y.FF2 setp pid.1.deadband pid.y.deadband setp pid.1.maxoutput pid.y.maxoutput setp pid.1.enable pid.y.enable setp pid.1.command pid.y.command setp pid.1.feedback pid.y.feedback setp pid.1.output pid.y.output setp pid.1.index-enable pid.y.index-enable addf hm2_5i20.0.write servo-thread addf hm2_5i20.0.pet_watchdog servo-thread # external output signals # external input signals # --- HOME-X --- net home-x <= hm2_5i20.0.gpio.026.in_not # --- HOME-Y --- net home-y <= hm2_5i20.0.gpio.024.in_not # --- MAX-X --- net max-x <= hm2_5i20.0.gpio.028.in # --- BOTH-Y --- net both-y <= hm2_5i20.0.gpio.030.in # --- MIN-X --- net min-x <= hm2_5i20.0.gpio.032.in #******************* # 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 net x-index-enable <=> pid.x.index-enable # PWM Generator signals/setup setp hm2_5i20.0.pwmgen.02.output-type 1 setp hm2_5i20.0.pwmgen.02.scale [AXIS_0]OUTPUT_SCALE net xenable => pid.x.enable net xoutput pid.x.output => hm2_5i20.0.pwmgen.02.value net xpos-cmd axis.0.motor-pos-cmd => pid.x.command net xenable axis.0.amp-enable-out => hm2_5i20.0.pwmgen.02.enable # ---Encoder feedback signals/setup--- setp hm2_5i20.0.encoder.02.counter-mode 0 setp hm2_5i20.0.encoder.02.filter 1 setp hm2_5i20.0.encoder.02.index-invert 0 setp hm2_5i20.0.encoder.02.index-mask 0 setp hm2_5i20.0.encoder.02.index-mask-invert 0 setp hm2_5i20.0.encoder.02.scale [AXIS_0]INPUT_SCALE net xpos-fb <= hm2_5i20.0.encoder.02.position net xpos-fb => pid.x.feedback net xpos-fb => axis.0.motor-pos-fb net x-index-enable axis.0.index-enable <=> hm2_5i20.0.encoder.02.index-enable # ---setup home / limit switch signals--- net home-x => axis.0.home-sw-in net min-x => axis.0.neg-lim-sw-in net max-x => axis.0.pos-lim-sw-in #******************* # AXIS Y #******************* setp pid.y.Pgain [AXIS_1]P setp pid.y.Igain [AXIS_1]I setp pid.y.Dgain [AXIS_1]D setp pid.y.bias [AXIS_1]BIAS setp pid.y.FF0 [AXIS_1]FF0 setp pid.y.FF1 [AXIS_1]FF1 setp pid.y.FF2 [AXIS_1]FF2 setp pid.y.deadband [AXIS_1]DEADBAND setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT net y-index-enable <=> pid.y.index-enable # PWM Generator signals/setup setp hm2_5i20.0.pwmgen.00.output-type 1 setp hm2_5i20.0.pwmgen.00.scale [AXIS_1]OUTPUT_SCALE net yenable => pid.y.enable net youtput pid.y.output => hm2_5i20.0.pwmgen.00.value net ypos-cmd axis.1.motor-pos-cmd => pid.y.command net yenable axis.1.amp-enable-out => hm2_5i20.0.pwmgen.00.enable # ---Encoder feedback signals/setup--- setp hm2_5i20.0.encoder.00.counter-mode 0 setp hm2_5i20.0.encoder.00.filter 1 setp hm2_5i20.0.encoder.00.index-invert 0 setp hm2_5i20.0.encoder.00.index-mask 0 setp hm2_5i20.0.encoder.00.index-mask-invert 0 setp hm2_5i20.0.encoder.00.scale [AXIS_1]INPUT_SCALE net ypos-fb <= hm2_5i20.0.encoder.00.position net ypos-fb => pid.y.feedback net ypos-fb => axis.1.motor-pos-fb net y-index-enable axis.1.index-enable <=> hm2_5i20.0.encoder.00.index-enable # ---setup home / limit switch signals--- net home-y => axis.1.home-sw-in net both-y => axis.1.neg-lim-sw-in net both-y => axis.1.pos-lim-sw-in #******************* # AXIS Z #******************* # ---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 #****************************** # connect miscellaneous signals #****************************** # ---digital in / out signals--- net din-00 => motion.digital-in-00 net din-03 => motion.digital-in-03 # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-out => iocontrol.0.emc-enable-in