OK. We zijn terug :)permeke schreef: ↑10 dec 2021 01:10 ik heb een zwak vermoeden dat ik hier iets moet toevoegen/aanpassen.
sub zhcmgrid
;;;;;;;;;;;;;
;probe scanning routine for eneven surface milling
;scanning starts at x=0, y=0
if [#4100 == 0]
#4100 = 10 ;nx
#4101 = 5 ;ny
#4102 = 40 ;max z
#4103 = 10 ;min z
#4104 = 1.0 ;step size
#4105 = 100 ;probing feed
endif
#110 = 0 ;Actual nx
#111 = 0 ;Actual ny
#112 = 0 ;Missed measurements counter
#113 = 0 ;Number of points added
#114 = 1 ;0: odd x row, 1: even xrow
;Dialog
dlgmsg "gridMeas" "nx" 4100 "ny" 4101 "maxZ" 4102 "minZ" 4103 "gridSize" 4104 "Feed" 4105
if [#5398 == 1] ; user pressed OK
;Move to startpoint
g0 z[#4102];to upper Z
g0 x0 y0 ;to start point
;ZHCINIT gridSize nx ny
ZHCINIT [#4104] [#4100] [#4101]
#111 = 0 ;Actual ny value
while [#111 < #4101]
if [#114 == 1]
;even x row, go from 0 to nx
#110 = 0 ;start nx
while [#110 < #4100]
;Go up, goto xy, measure
g0 z[#4102];to upper Z
g0 x[#110 * #4104] y[#111 * #4104] ;to new scan point
g38.2 F[#4105] z[#4103];probe down until touch
;Add point to internal table if probe has touched
if [#5067 == 1]
ZHCADDPOINT
msg "nx="[#110 +1]" ny="[#111+1]" added"
#113 = [#113+1]
else
;ZHCADDPOINT
msg "nx="[#110 +1]" ny="[#111+1]" not added"
#112 = [#112+1]
endif
#110 = [#110 + 1] ;next nx
endwhile
#114=0
else
;odd x row, go from nx to 0
#110 = [#4100 - 1] ;start nx
while [#110 > -1]
;Go up, goto xy, measure
g0 z[#4102];to upper Z
g0 x[#110 * #4104] y[#111 * #4104] ;to new scan point
g38.2 F[#4105] z[#4103];probe down until touch
;Add point to internal table if probe has touched
if [#5067 == 1]
ZHCADDPOINT
msg "nx="[#110 +1]" ny="[#111+1]" added"
#113 = [#113+1]
else
;ZHCADDPOINT
msg "nx="[#110 +1]" ny="[#111+1]" not added"
#112 = [#112+1]
endif
#110 = [#110 - 1] ;next nx
endwhile
#114=1
endif
#111 = [#111 + 1] ;next ny
endwhile
g0 z[#4102];to upper Z
;Save measured table
ZHCS zHeightCompTable.txt
msg "Done, "#113" points added, "#112" not added"
else
;user pressed cancel in dialog
msg "Operation canceled"
endif
endsub
;Remove comments if you want additional reset actions
;when reset button was pressed in UI
;sub user_reset
; msg "Ready for operation"
;endsub
Ik heb besloten om spindle_4 referentie te gebruiken.
Bij Eding is dit de "mounted probe M95
Kan ik deze code (hieronder )bij de hierboven vermelde code zetten zodat wanneer ik de Z height compensation macro aanspreek de machine automatisch de offset meerekent ?
[SPINDLE_4]
;Mounted Probe M95
xOffset = ?
yOffset = ?
zOffset = ?
onOffOutputPortID = 0 ;0: Standard tool output, 1-9: AUX1-AUX10 < ---------------en wat met deze lijn ?