Echter loop ik tegen een issue aan.... ik had een 100% werkende setup met een simpel parallel BOB , ben nu over naar een MESA 7i76E
De gewone X- en Z-as krijg ik prima omgezet, spindel VFD nog niet geprobeerd maar dat is ook redelijk recht toe recht aan. Echter de toolchanger bezorgt mij (wederom!) hoofdpijn...
De oude setup , uit de HAL file
Code: Selecteer alles
setp parport.0.pin-06-out-invert 1
net ystep => parport.0.pin-06-out
setp parport.0.pin-06-out-reset 1
setp parport.0.pin-07-out-invert 1
net ydir => parport.0.pin-07-out
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 25000
setp stepgen.1.dirsetup 20000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
loadrt toolchanger
addf toolchanger servo-thread
net tool-change iocontrol.0.tool-change => toolchanger.toolchange
net tool-changed iocontrol.0.tool-changed <= toolchanger.toolchanged
net tool-number iocontrol.0.tool-prep-number => toolchanger.toolnumber
net tool-oldnumber iocontrol.0.tool-number => toolchanger.currenttoolnumber
net ypos-cmd toolchanger.position-cmd => stepgen.1.position-cmd
net yhomed axis.1.homed => toolchanger.ishomed
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Code: Selecteer alles
#*******************
# AXIS A
#*******************
setp pid.a.Pgain [AXIS_3]P
setp pid.a.Igain [AXIS_3]I
setp pid.a.Dgain [AXIS_3]D
setp pid.a.bias [AXIS_3]BIAS
setp pid.a.FF0 [AXIS_3]FF0
setp pid.a.FF1 [AXIS_3]FF1
setp pid.a.FF2 [AXIS_3]FF2
setp pid.a.deadband [AXIS_3]DEADBAND
setp pid.a.maxoutput [AXIS_3]MAX_OUTPUT
setp pid.a.error-previous-target true
setp pid.a.maxerror .0005
net a-index-enable <=> pid.a.index-enable
net a-enable => pid.a.enable
net a-pos-cmd => pid.a.command
net a-vel-cmd => pid.a.command-deriv
net a-pos-fb => pid.a.feedback
net a-output => pid.a.output
# Step Gen signals/setup
setp hm2_7i76e.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP
setp hm2_7i76e.0.stepgen.03.dirhold [AXIS_3]DIRHOLD
setp hm2_7i76e.0.stepgen.03.steplen [AXIS_3]STEPLEN
setp hm2_7i76e.0.stepgen.03.stepspace [AXIS_3]STEPSPACE
setp hm2_7i76e.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE
setp hm2_7i76e.0.stepgen.03.step_type 0
setp hm2_7i76e.0.stepgen.03.control-type 1
setp hm2_7i76e.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL
setp hm2_7i76e.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net a-pos-cmd <= axis.3.motor-pos-cmd
net a-vel-cmd <= axis.3.joint-vel-cmd
net a-output => hm2_7i76e.0.stepgen.03.velocity-cmd
net a-pos-fb <= hm2_7i76e.0.stepgen.03.position-fb
net a-pos-fb => axis.3.motor-pos-fb
net a-enable <= axis.3.amp-enable-out
net a-enable => hm2_7i76e.0.stepgen.03.enable
# ---toolchange signals for custom tool changer---
loadrt toolchanger
addf toolchanger servo-thread
net tool-change iocontrol.0.tool-change => toolchanger.toolchange
net tool-changed iocontrol.0.tool-changed <= toolchanger.toolchanged
net tool-number iocontrol.0.tool-prep-number => toolchanger.toolnumber
net tool-oldnumber iocontrol.0.tool-number => toolchanger.currenttoolnumber
# net apos-cmd toolchanger.position-cmd => axis.3.motor-pos-cmd
net ahomed axis.3.homed => toolchanger.ishomed
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared