Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # #######################################
- #
- # HAL file for HostMot2 with 3 steppers
- #
- # Derived from Ted Hyde's original hm2-servo config
- #
- # Based up work and discussion with Seb & Peter & Jeff
- # GNU license references - insert here. www.linuxcnc.org
- #
- #
- # ########################################
- # Firmware files are in /lib/firmware/hm2/5i20/
- # Must symlink the hostmot2 firmware directory of sanbox to
- # /lib/firmware before running EMC2...
- # sudo ln -s $HOME/emc2-sandbox/src/hal/drivers/mesa-hostmot2/firmware /lib/firmware/hm2
- #
- # See also:
- # <http://www.linuxcnc.org/docs/devel/html/man/man9/hostmot2.9.html#config%20modparam>
- # and http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?HostMot2
- #
- # #####################################################################
- # ###################################
- # Core EMC/HAL Loads
- # ###################################
- # kinematics
- loadrt trivkins
- # motion controller, get name and thread periods from ini file
- loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
- loadrt pid num_chan=3
- loadrt threads name1=classicladder-thread period1=2000000
- loadrt classicladder_rt numS32in=3 numS32out=8 numRungs=60 numBits=90 numWords=55 numTimers=27 numCounters=15 numPhysInputs=50 numPhysOutputs=50 numArithmExpr=25 numSections=6 numSymbols=220 numS32in=3 numS32out=9
- loadusr -w classicladder --nogui shizuoka.clp
- # only the 7i43 needs this, but it doesnt hurt the others
- loadrt probe_parport
- loadrt modmath mod_dir=1
- loadrt not
- # hostmot2 driver
- loadrt hostmot2
- loadrt toggle count=1
- # load low-level driver
- loadrt [HOSTMOT2](DRIVER) config=[HOSTMOT2](CONFIG)
- show all
- loadrt mux4 count=1
- loadrt encoder num_chan=1
- setp hm2_[HOSTMOT2](BOARD).0.watchdog.timeout_ns 10000000
- # ################################################
- # THREADS
- # ################################################
- addf classicladder.0.refresh classicladder-thread
- addf hm2_[HOSTMOT2](BOARD).0.read servo-thread
- addf motion-command-handler servo-thread
- addf motion-controller servo-thread
- # revel in the free time here from not having to run PID
- addf pid.0.do-pid-calcs servo-thread
- addf pid.1.do-pid-calcs servo-thread
- addf pid.2.do-pid-calcs servo-thread
- addf hm2_[HOSTMOT2](BOARD).0.write servo-thread
- addf hm2_[HOSTMOT2](BOARD).0.pet_watchdog servo-thread
- addf mod-dir.0 servo-thread
- addf toggle.0 servo-thread
- addf not.0 servo-thread
- addf encoder.capture-position servo-thread
- addf encoder.update-counters servo-thread
- addf mux4.0 servo-thread
- # ######################################################
- # Axis-of-motion Specific Configs (not the GUI)
- # ######################################################
- # ################
- # X [0] Axis
- # ################
- # axis enable chain
- newsig emcmot.00.enable bit
- sets emcmot.00.enable FALSE
- net emcmot.00.enable => pid.0.enable
- net emcmot.00.enable <= axis.0.amp-enable-out
- # encoder feedback
- setp hm2_[HOSTMOT2](BOARD).0.encoder.00.counter-mode 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.00.filter 1
- setp hm2_[HOSTMOT2](BOARD).0.encoder.00.index-invert 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.00.index-mask 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.00.index-mask-invert 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.00.scale [AXIS_0]INPUT_SCALE
- net motor.00.pos-fb hm2_[HOSTMOT2](BOARD).0.encoder.00.position => pid.0.feedback
- net motor.00.pos-fb => axis.0.motor-pos-fb #push copy back to Axis GUI
- # set PID loop gains from inifile
- setp pid.0.Pgain [AXIS_0]P
- setp pid.0.Igain [AXIS_0]I
- setp pid.0.Dgain [AXIS_0]D
- setp pid.0.bias [AXIS_0]BIAS
- setp pid.0.FF0 [AXIS_0]FF0
- setp pid.0.FF1 [AXIS_0]FF1
- setp pid.0.FF2 [AXIS_0]FF2
- setp pid.0.deadband [AXIS_0]DEADBAND
- setp pid.0.maxoutput [AXIS_0]MAX_OUTPUT
- # position command signals
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.00.pwm_frequency 24000
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.00.output-type 2 #pwm on pin1, dir on pin2
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.00.scale [AXIS_0]OUTPUT_SCALE
- net emcmot.00.pos-cmd axis.0.motor-pos-cmd => pid.0.command
- net motor.00.command pid.0.output => hm2_[HOSTMOT2](BOARD).0.pwmgen.00.value
- net x-index-enable hm2_[HOSTMOT2](BOARD).0.encoder.00.index-enable <=> axis.0.index-enable
- net x-velocity-to-pid hm2_5i20.0.encoder.00.velocity pid.0.feedback-deriv
- # ################
- # Y [1] Axis
- # ################
- # axis enable chain
- newsig emcmot.01.enable bit
- sets emcmot.01.enable FALSE
- net emcmot.01.enable => pid.1.enable
- #net emcmot.01.enable => hm2_[HOSTMOT2](BOARD).0.pwmgen.01.enable
- net emcmot.01.enable <= axis.1.amp-enable-out
- # encoder feedback
- setp hm2_[HOSTMOT2](BOARD).0.encoder.01.counter-mode 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.01.filter 1
- setp hm2_[HOSTMOT2](BOARD).0.encoder.01.index-invert 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.01.index-mask 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.01.index-mask-invert 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.01.scale [AXIS_1]INPUT_SCALE
- net motor.01.pos-fb hm2_[HOSTMOT2](BOARD).0.encoder.01.position => pid.1.feedback
- net motor.01.pos-fb => axis.1.motor-pos-fb #push copy back to Axis GUI
- # set PID loop gains from inifile
- setp pid.1.Pgain [AXIS_1]P
- setp pid.1.Igain [AXIS_1]I
- setp pid.1.Dgain [AXIS_1]D
- setp pid.1.bias [AXIS_1]BIAS
- setp pid.1.FF0 [AXIS_1]FF0
- setp pid.1.FF1 [AXIS_1]FF1
- setp pid.1.FF2 [AXIS_1]FF2
- setp pid.1.deadband [AXIS_1]DEADBAND
- setp pid.1.maxoutput [AXIS_1]MAX_OUTPUT
- # position command signals
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.01.pwm_frequency 24000
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.01.output-type 2 #pwm on pin1, dir on pin2
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.01.scale [AXIS_1]OUTPUT_SCALE
- net emcmot.01.pos-cmd axis.1.motor-pos-cmd => pid.1.command
- net motor.01.command pid.1.output => hm2_[HOSTMOT2](BOARD).0.pwmgen.01.value
- net y-index-enable hm2_[HOSTMOT2](BOARD).0.encoder.01.index-enable <=> axis.1.index-enable pid.1.index-enable
- net y-velocity-to-pid hm2_5i20.0.encoder.01.velocity pid.1.feedback-deriv
- # ################
- # Z [2] Axis
- # ################
- # axis enable chain
- newsig emcmot.02.enable bit
- sets emcmot.02.enable FALSE
- net emcmot.02.enable => pid.2.enable
- #net emcmot.02.enable => hm2_[HOSTMOT2](BOARD).0.pwmgen.02.enable
- net emcmot.02.enable <= axis.2.amp-enable-out
- # encoder feedback
- setp hm2_[HOSTMOT2](BOARD).0.encoder.02.counter-mode 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.02.filter 1
- setp hm2_[HOSTMOT2](BOARD).0.encoder.02.index-invert 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.02.index-mask 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.02.index-mask-invert 0
- setp hm2_[HOSTMOT2](BOARD).0.encoder.02.scale [AXIS_2]INPUT_SCALE
- net motor.02.pos-fb hm2_[HOSTMOT2](BOARD).0.encoder.02.position => pid.2.feedback
- net motor.02.pos-fb => axis.2.motor-pos-fb #push copy back to Axis GUI
- # set PID loop gains from inifile
- setp pid.2.Pgain [AXIS_2]P
- setp pid.2.Igain [AXIS_2]I
- setp pid.2.Dgain [AXIS_2]D
- setp pid.2.bias [AXIS_2]BIAS
- setp pid.2.FF0 [AXIS_2]FF0
- setp pid.2.FF1 [AXIS_2]FF1
- setp pid.2.FF2 [AXIS_2]FF2
- setp pid.2.deadband [AXIS_2]DEADBAND
- setp pid.2.maxoutput [AXIS_2]MAX_OUTPUT
- # position command signals
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.02.pwm_frequency 24000
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.02.output-type 2 #pwm on pin1, dir on pin2
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.02.scale [AXIS_2]OUTPUT_SCALE
- net emcmot.02.pos-cmd axis.2.motor-pos-cmd => pid.2.command
- net motor.02.command pid.2.output => hm2_[HOSTMOT2](BOARD).0.pwmgen.02.value
- net z-index-enable hm2_[HOSTMOT2](BOARD).0.encoder.02.index-enable <=> axis.2.index-enable
- net z-velocity-to-pid hm2_5i20.0.encoder.02.velocity pid.2.feedback-deriv
- #setp hm2_[HOSTMOT2](BOARD).0.write_address 13312 # (0x3400)
- #setp hm2_[HOSTMOT2](BOARD).0.write_data 8
- #setp hm2_[HOSTMOT2](BOARD).0.write_strobe TRUE
- ## ##################################################
- # Standard I/O Block - EStop, Etc
- # ##################################################
- setp hm2_[HOSTMOT2](BOARD).0.gpio.052.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.025.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.029.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.030.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.031.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.032.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.033.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.034.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.035.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.037.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.026.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.027.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.028.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.056.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.057.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.059.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.065.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.067.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.069.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.053.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.058.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.063.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.066.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.068.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.039.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.040.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.040.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.041.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.041.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.042.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.042.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.043.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.043.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.044.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.044.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.045.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.045.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.046.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.046.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.047.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.048.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.047.invert_output true
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.068.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.058.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.063.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.053.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.062.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.065.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.067.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.059.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.062.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.049.is_opendrain 0
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.054.is_opendrain 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.055.is_opendrain 0
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.060.is_opendrain 0
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.064.is_opendrain 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.060.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.054.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.064.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.050.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.051.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.071.is_output 1
- setp hm2_[HOSTMOT2](BOARD).0.gpio.070.is_output 0
- setp hm2_[HOSTMOT2](BOARD).0.gpio.049.invert_output true
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.054.invert_output true
- setp hm2_[HOSTMOT2](BOARD).0.gpio.055.invert_output true
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.060.invert_output true
- #setp hm2_[HOSTMOT2](BOARD).0.gpio.064.invert_output true
- net Spindlefwd motion.spindle-forward => hm2_[HOSTMOT2](BOARD).0.gpio.040.out
- net Spindlerev motion.spindle-reverse => hm2_[HOSTMOT2](BOARD).0.gpio.042.out
- #setp hm2_[HOSTMOT2](BOARD).0.pwmgen.03.pwm_frequency 50000
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.03.scale 5915
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.03.output-type 1
- net Spindle-rpm-cmd motion.spindle-speed-out => hm2_[HOSTMOT2](BOARD).0.pwmgen.03.value
- linksp Spindlefwd => hm2_[HOSTMOT2](BOARD).0.pwmgen.03.enable
- #setp hm2_[HOSTMOT2](BOARD).0.raw.write_address 13312 # (0x3400)
- #setp hm2_[HOSTMOT2](BOARD).0.raw.write_data 8
- #setp hm2_[HOSTMOT2](BOARD).0.raw.write_strobe TRUE
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.03.pwm_frequency 24000
- setp hm2_[HOSTMOT2](BOARD).0.pwmgen.03.output-type 2 #pwm on pin1, dir on pin2
- # create a signal for the estop loopback
- #net estop-loop iocontrol.0.user-enable-out => iocontrol.0.emc-enable-in
- net estop-loop hm2_[HOSTMOT2](BOARD).0.gpio.066.in iocontrol.0.emc-enable-in
- net Spindlefwdbutton hm2_[HOSTMOT2](BOARD).0.gpio.058.in_not halui.spindle.forward
- net Spindlervsbutton hm2_[HOSTMOT2](BOARD).0.gpio.056.in_not halui.spindle.reverse
- net Spindlestopbutton hm2_[HOSTMOT2](BOARD).0.gpio.052.in_not halui.spindle.stop
- net feed-hold hm2_[HOSTMOT2](BOARD).0.gpio.062.in_not motion.feed-hold
- net mode-auto hm2_[HOSTMOT2](BOARD).0.gpio.053.in_not halui.mode.auto
- net mode-manual hm2_[HOSTMOT2](BOARD).0.gpio.063.in_not halui.mode.manual
- net mode-mdi hm2_[HOSTMOT2](BOARD).0.gpio.059.in_not halui.mode.mdi
- net program-resume hm2_[HOSTMOT2](BOARD).0.gpio.070.in_not halui.program.resume
- # connect pin 10 to X home and min limit
- net X-home hm2_[HOSTMOT2](BOARD).0.gpio.069.in_not => axis.0.home-sw-in
- # connect pin 11 to Y home and min limit
- net Y-home hm2_[HOSTMOT2](BOARD).0.gpio.067.in_not => axis.1.home-sw-in
- # connect pin 12 to Z home and min limit
- net Z-home hm2_[HOSTMOT2](BOARD).0.gpio.065.in_not => axis.2.home-sw-in
- net emcmot.02.enable hm2_[HOSTMOT2](BOARD).0.gpio.054.out
- # Flood button
- #setp toggle.0.debounce 10
- #net flood-contol hm2_[HOSTMOT2](BOARD).0.gpio.068.in_not => toggle.0.in
- #net floodOn toggle.0.out => halui.flood.on
- #net floodOn toggle.0.out => not.0.in
- #net floodOff not.0.out => halui.flood.off
- # create signals for tool loading loopback
- net tool-prep-loop iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
- #net tool-change-loop iocontrol.0.tool-change => iocontrol.0.tool-changed
- #in
- net magazine-fwd-req-fetch mod-dir.0.up classicladder.0.in-03
- net magazine-rev-req-fetch mod-dir.0.down classicladder.0.in-04
- net tool-change iocontrol.0.tool-change classicladder.0.in-02
- #net tool-prep classicladder.0.in-26 <= iocontrol.0.tool-prepare
- net tool-requested-number classicladder.0.s32in-01 <= iocontrol.0.tool-prep-number
- net tool-requested-match mod-dir.0.on-target classicladder.0.in-05
- net reset classicladder.0.in-01 <= hm2_[HOSTMOT2](BOARD).0.gpio.039.in_not
- net program-running halui.program.is-running classicladder.0.in-07
- net program-is-auto halui.mode.is-auto classicladder.0.in-08
- net flood-coolant-out classicladder.0.out-07 hm2_[HOSTMOT2](BOARD).0.gpio.060.out
- net flood-coolant-io iocontrol.0.coolant-flood classicladder.0.in-09
- net flood-coolant-button hm2_[HOSTMOT2](BOARD).0.gpio.068.in classicladder.0.in-10
- net arm-out-switch hm2_[HOSTMOT2](BOARD).0.gpio.024.in classicladder.0.in-11
- net arm-in-switch hm2_[HOSTMOT2](BOARD).0.gpio.025.in classicladder.0.in-12
- net home-switch hm2_[HOSTMOT2](BOARD).0.gpio.026.in classicladder.0.in-13
- net turret-switch hm2_[HOSTMOT2](BOARD).0.gpio.027.in classicladder.0.in-14
- net drawbar-switch hm2_[HOSTMOT2](BOARD).0.gpio.028.in classicladder.0.in-15
- net emcmot.01.enable classicladder.0.in-17
- #out
- net magazine-forward classicladder.0.out-04 hm2_[HOSTMOT2](BOARD).0.gpio.046.out
- net magazine-reverse classicladder.0.out-05 hm2_[HOSTMOT2](BOARD).0.gpio.047.out
- net tool-load classicladder.0.out-03 hm2_[HOSTMOT2](BOARD).0.gpio.043.out
- net tool-unload classicladder.0.out-02 hm2_[HOSTMOT2](BOARD).0.gpio.045.out
- net arm-in classicladder.0.out-09 <= hm2_[HOSTMOT2](BOARD).0.gpio.071.out
- net arm-out classicladder.0.out-10 <= hm2_[HOSTMOT2](BOARD).0.gpio.041.out
- net claw-open classicladder.0.out-11 <= hm2_[HOSTMOT2](BOARD).0.gpio.050.out
- net claw-close classicladder.0.out-12 <= hm2_[HOSTMOT2](BOARD).0.gpio.051.out
- #net tool-prepared iocontrol.0.tool-prepared classicladder.0.out-20
- net tool-changed iocontrol.0.tool-changed classicladder.0.out-06
- net magazine-position classicladder.0.s32out-01 mod-dir.0.actual
- net mod-desired-position classicladder.0.s32out-02 mod-dir.0.desired
- net servo0-power-on classicladder.0.out-15 hm2_[HOSTMOT2](BOARD).0.pwmgen.00.enable
- net servo1-power-on classicladder.0.out-16 hm2_[HOSTMOT2](BOARD).0.pwmgen.01.enable
- net servo2-power-on classicladder.0.out-17 hm2_[HOSTMOT2](BOARD).0.pwmgen.02.enable
- # "times 4 mode" one count per full quadrature cycle, instead of the usual one count per edge.
- # mpg jog wheels often have a full quadrature cycle per "click". 0 for off and 1 for on.
- setp encoder.0.x4-mode 0
- #setp axis.0.jog-vel-mode 1
- #setp axis.1.jog-vel-mode 1
- #setp axis.2.jog-vel-mode 1
- setp mux4.0.in0 0.0001
- setp mux4.0.in1 0.001
- setp mux4.0.in2 0.01
- net scale1 mux4.0.sel0 <= hm2_[HOSTMOT2](BOARD).0.gpio.034.in_not
- net scale2 mux4.0.sel1 <= hm2_[HOSTMOT2](BOARD).0.gpio.032.in_not
- #net scale2 mux4.0.sel2 <= hm2_[HOSTMOT2](BOARD).0.gpio.034.in_not
- net pend-scale axis.0.jog-scale <= mux4.0.out
- net pend-scale axis.1.jog-scale
- net pend-scale axis.2.jog-scale
- net mpg-a encoder.0.phase-A <= hm2_[HOSTMOT2](BOARD).0.gpio.029.in
- net mpg-b encoder.0.phase-B <= hm2_[HOSTMOT2](BOARD).0.gpio.031.in
- net mpg-x axis.0.jog-enable <= hm2_[HOSTMOT2](BOARD).0.gpio.033.in_not
- net mpg-y axis.1.jog-enable <= hm2_[HOSTMOT2](BOARD).0.gpio.035.in_not
- net mpg-z axis.2.jog-enable <= hm2_[HOSTMOT2](BOARD).0.gpio.037.in_not
- net pend-counts axis.0.jog-counts <= encoder.0.counts
- net pend-counts axis.1.jog-counts
- net pend-counts axis.2.jog-counts
- setp mod-dir.0.max-num [EMCIO]TOOL_TURRET_MAX
- setp mod-dir.0.wrap [EMCIO]TOOL_TURRET_WRAP
- # set encoder latch enable TRUE so encoder count "wraps" during toolchanges
- # and resets under motion controller command for rigid tapping
- #linksp sp-index-enable motenc.3.enc-03-index-enable
- #linksp sp-index-enable tristate-bit.0.out
- #setp tristate-bit.0.in 1
- #linksp tool-change tristate-bit.0.enable
- #linksp sp-index-enable motion.spindle-index-enable
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement