kopia qtdragon. dodamy gitignore

This commit is contained in:
2025-12-11 10:29:29 +01:00
commit 097fe1e2ca
14 changed files with 70088 additions and 0 deletions

7
.gitignore vendored Normal file
View File

@@ -0,0 +1,7 @@
# Pliki kopii zapasowych i stare wersje
*.bak
*.old
# Pamięć podręczna Pythona
__pycache__/
*.pyc

7
autosave.halscope Normal file
View File

@@ -0,0 +1,7 @@
THREAD servo-thread
MAXCHAN 4
HMULT 1
HZOOM 1
HPOS 5.000000e-01
TMODE 0
RMODE 0

11
custom.hal Normal file
View File

@@ -0,0 +1,11 @@
# Include your custom HAL commands here
# This file will not be overwritten when you run stepconf again
net spindle-on <= spindle.0.on
loadrt debounce cfg=1
addf debounce.0 base-thread
setp debounce.0.delay 100
unlinkp motion.probe-input
net probe-in debounce.0.0.in
net probe-filt debounce.0.0.out => motion.probe-input

3
custom_postgui.hal Normal file
View File

@@ -0,0 +1,3 @@
# Include your custom_postgui HAL commands here
# This file will not be overwritten when you run stepconf again

119
linuxcnc.var Normal file
View File

@@ -0,0 +1,119 @@
5161 0.000000
5162 0.000000
5163 0.000000
5164 0.000000
5165 0.000000
5166 0.000000
5167 0.000000
5168 0.000000
5169 0.000000
5181 0.000000
5182 0.000000
5183 0.000000
5184 0.000000
5185 0.000000
5186 0.000000
5187 0.000000
5188 0.000000
5189 0.000000
5210 1.000000
5211 0.000000
5212 0.000000
5213 0.000000
5214 0.000000
5215 0.000000
5216 0.000000
5217 0.000000
5218 0.000000
5219 0.000000
5220 1.000000
5221 -100.000000
5222 20.000000
5223 -65.947893
5224 0.000000
5225 0.000000
5226 0.000000
5227 0.000000
5228 0.000000
5229 0.000000
5230 0.000000
5241 231.819921
5242 87.920971
5243 -84.140462
5244 0.000000
5245 0.000000
5246 0.000000
5247 0.000000
5248 0.000000
5249 0.000000
5250 0.000000
5261 434.425001
5262 416.681002
5263 -65.728150
5264 0.000000
5265 0.000000
5266 0.000000
5267 0.000000
5268 0.000000
5269 0.000000
5270 0.000000
5281 217.270682
5282 60.971881
5283 -66.378617
5284 0.000000
5285 0.000000
5286 0.000000
5287 0.000000
5288 0.000000
5289 0.000000
5290 0.000000
5301 0.000000
5302 0.000000
5303 0.000000
5304 0.000000
5305 0.000000
5306 0.000000
5307 0.000000
5308 0.000000
5309 0.000000
5310 0.000000
5321 567.963866
5322 36.400000
5323 -64.000000
5324 0.000000
5325 0.000000
5326 0.000000
5327 0.000000
5328 0.000000
5329 0.000000
5330 0.000000
5341 0.000000
5342 0.000000
5343 0.000000
5344 0.000000
5345 0.000000
5346 0.000000
5347 0.000000
5348 0.000000
5349 0.000000
5350 0.000000
5361 0.000000
5362 0.000000
5363 0.000000
5364 0.000000
5365 0.000000
5366 0.000000
5367 0.000000
5368 0.000000
5369 0.000000
5370 0.000000
5381 0.000000
5382 0.000000
5383 0.000000
5384 0.000000
5385 0.000000
5386 0.000000
5387 0.000000
5388 0.000000
5389 0.000000
5390 0.000000

84
mayo-mill.hal Normal file
View File

@@ -0,0 +1,84 @@
# Generated by stepconf 1.1 at Thu May 29 11:48:34 2025
# If you make changes to this file, they will be
# overwritten when you run stepconf again
loadrt [KINS]KINEMATICS
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hal_parport cfg="0 out"
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,0,0
addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread
addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
net probe-in => motion.probe-input
setp parport.0.pin-01-out-invert 1
net spindle-on => parport.0.pin-01-out
net xdir => parport.0.pin-02-out
net xstep => parport.0.pin-03-out
setp parport.0.pin-03-out-reset 1
net ydir => parport.0.pin-04-out
net ystep => parport.0.pin-05-out
setp parport.0.pin-05-out-reset 1
net zdir => parport.0.pin-06-out
net zstep => parport.0.pin-07-out
setp parport.0.pin-07-out-reset 1
net home-x <= parport.0.pin-10-in
net home-y <= parport.0.pin-11-in
net home-z <= parport.0.pin-12-in
net estop-ext <= parport.0.pin-13-in-not
net probe-in <= parport.0.pin-15-in
setp stepgen.0.position-scale [JOINT_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 70000
setp stepgen.0.dirsetup 70000
setp stepgen.0.maxaccel [JOINT_0]STEPGEN_MAXACCEL
net xpos-cmd joint.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => joint.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable joint.0.amp-enable-out => stepgen.0.enable
net home-x => joint.0.home-sw-in
setp stepgen.1.position-scale [JOINT_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 70000
setp stepgen.1.dirsetup 70000
setp stepgen.1.maxaccel [JOINT_1]STEPGEN_MAXACCEL
net ypos-cmd joint.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => joint.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable joint.1.amp-enable-out => stepgen.1.enable
net home-y => joint.1.home-sw-in
setp stepgen.2.position-scale [JOINT_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 70000
setp stepgen.2.dirsetup 70000
setp stepgen.2.maxaccel [JOINT_2]STEPGEN_MAXACCEL
net zpos-cmd joint.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => joint.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable joint.2.amp-enable-out => stepgen.2.enable
net home-z => joint.2.home-sw-in
net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in
net tool-change <= iocontrol.0.tool-change
net tool-changed => iocontrol.0.tool-changed
net tool-number <= iocontrol.0.tool-prep-number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared

191
mayo-mill.ini Normal file
View File

@@ -0,0 +1,191 @@
# Generated by stepconf 1.1 at Thu May 29 11:48:34 2025
# If you make changes to this file, they will be
# overwritten when you run stepconf again
[EMC]
MACHINE = mayo-mill
DEBUG = 0
VERSION = 1.1
[DISPLAY]
DISPLAY = qtvcp qtdragon_hd
PREFERENCE_FILE_PATH = WORKINGFOLDER/qtdragon_hd.pre
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm 1in 2in 5in 10in
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_OVERRIDE = 0.5
MAX_SPINDLE_OVERRIDE = 1.2
DEFAULT_LINEAR_VELOCITY = 5.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 50.00
CYCLE_TIME = 0.100
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/cnc/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
[KINS]
JOINTS = 3
KINEMATICS = trivkins coordinates=XYZ
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
PROGRAM_EXTENSION = .nc,.tap G-Code File
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
# start up G/M codes when first loaded
RS274NGC_STARTUP_CODE = G17 G21 G40 G43H0 G54 G64P0.0127 G80 G90 G94 G97 M5 M9
# subroutine/remap path list
SUBROUTINE_PATH =\
~/linuxcnc/nc_files/examples/ngcgui_lib:\
~/linuxcnc/nc_files/examples/ngcgui_lib/utilitysubs:\
~/linuxcnc/nc_files/examples/remap-subroutines:\
~/linuxcnc/nc_files/examples/remap_lib
# is the sub, with is called when a error during tool change happens.
ON_ABORT_COMMAND=O <on_abort> call
# The remap code for QtVCP's versaprobe's automatic tool probe of Z
REMAP=M6 modalgroup=6 prolog=change_prolog ngc=qt_auto_probe_tool epilog=change_epilog
# required for python remaps
[PYTHON]
# The path to start a search for user modules. ie python's sys.path.insert(0,PATH)
#PATH_PREPEND = ~/linuxcnc/nc_files/examples/remap_lib/python-stdglue/python
# The path start point for all remap searches ie. python's sys.path.append()
PATH_APPEND = ~/linuxcnc/nc_files/examples/remap_lib/python-stdglue/python
# path to the tremap's 'oplevel file
TOPLEVEL = ~/linuxcnc/nc_files/examples/remap_lib/python-stdglue/python/toplevel.py
# set remap debug level
#LOG_LEVEL = 1000
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000
[HAL]
HALFILE = mayo-mill.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal
[TRAJ]
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 5.00
MAX_LINEAR_VELOCITY = 50.00
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[PROBE]
# pick basic probe or versa probe or remove for none
USE_PROBE = versaprobe
#USE_PROBE = basicprobe
[VERSA_TOOLSETTER]
X = 32.5
Y = 458.5
Z = -30
Z_MAX_CLEAR = -2
MAXPROBE = 40
[CHANGE_POSITION]
X = 10
Y = 10
Z = -2
[MDI_COMMAND_LIST]
# for macro buttons on main oage up to 10 possible
MDI_COMMAND = G0 Z25;X0 Y0;Z0, Goto\nUser\nZero
MDI_COMMAND = G53 G0 Z0;G53 G0 X0 Y0,Goto\nMachn\nZero
#*** AXIS_X *******************************
[AXIS_X]
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 500.0
MIN_LIMIT = -0.001
MAX_LIMIT = 780.0
[JOINT_0]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -0.001
MAX_LIMIT = 780.0
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 625.0
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -20.000000
HOME_LATCH_VEL = -6.250000
HOME_SEQUENCE = 2
#******************************************
#*** AXIS_Y *******************************
[AXIS_Y]
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 500.0
MIN_LIMIT = -0.001
MAX_LIMIT = 485.0
[JOINT_1]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -0.001
MAX_LIMIT = 485.0
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 625.0
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -20.000000
HOME_LATCH_VEL = -6.250000
HOME_SEQUENCE = 1
#******************************************
#*** AXIS_Z *******************************
[AXIS_Z]
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 500.0
MIN_LIMIT = -100.0
MAX_LIMIT = 0.001
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -100.0
MAX_LIMIT = 0.001
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 625.0
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 10.000000
HOME_LATCH_VEL = 6.250000
HOME_SEQUENCE = 0
#******************************************

7
postgui_call_list.hal Normal file
View File

@@ -0,0 +1,7 @@
# These files are loaded post GUI, in the order they appear
# Generated by stepconf 1.1 at Thu May 29 11:48:34 2025
# If you make changes to this file, they will be
# overwritten when you run stepconf again
source qtvcp_postgui.hal
source custom_postgui.hal

5
pyvcp_options.hal Normal file
View File

@@ -0,0 +1,5 @@
# These files are loaded post GUI, in the order they appear
# Generated by stepconf 1.1 at Thu May 29 11:48:34 2025
# If you make changes to this file, they will be
# overwritten when you run stepconf again
sets spindle-at-speed true

251
qt_auto_probe_tool.ngc Normal file
View File

@@ -0,0 +1,251 @@
o<qt_auto_probe_tool> sub
; IMPORTANT: this remap enables using a gcode/ngc program on machines without
; automatic tool changers, and without repeatable tool holders, but which
; do have a tool setter (and ideally, an xyz probe).
; With this remap, a program or user can issue TxM6 commands at any
; point and the machine will automatically do the following:
; 1. Move to a tool change position defined in .ini parameters, Z first, then XY
; 2. Perform the normal M6 tool change (IE stop spindle, prompt for tool)
; 3. Move to the location of the toolsetter, Z first, then XY, probe the new tool's offset
; 4. Change the offset of the current coordinate system to match the new tool
; 5. Return the tip of the new tool to the same spot as the tip of the old tool
; based on newly measured z-offset
; 6. Return control back to whatever state it was in prior, continuing the program
; if one had been running.
; The following settings should be enabled in the QtDragon interface:
; A - Under Probe Tool screens: insure that "Tool Measure" is enabled
; B - Under Settings: insure that "Use Tool Sensor" is enabled
; The following workflow assumes using both a XYZ probe and a Z Toolsetter:
; 1 - Initial Setup: Before beginning the program, setup the Probe Tool as
; having a zero z-offset in the tool table. (Non-zero tool lengths
; for the probe tool can be made to work, but have multiple extra
; steps required, and it is easy to have the tool offset interfere with
; the remap coding and cause incorrect adjustments to your offsets.
; This procedure assumes a zero length.)
; 2 - Initial Tool: Load the probe tool with M61 Qx, where x is the Probe tool's number
; in the tool table. (Do not use TxM6)
; 3 - Toolsetter measure: Use button under the Probe Screens for "Probe Tool Setter
; Z Height:" this will set and display on the Probe Settings screen the
; "Probe HT" = #<_hal[qtversaprobe.probeheight> value in ABS coordinates.
; 4 - Workpiece Measure: Use the button under the Probe Screens for "Probe Z height
; of material:" this will set and display on the Probe Settings screen the
; "Block Ht" = #<_hal[qtversaprobe.blockheight]> value in ABS coordinates.
; 5 - Set Coord System (G54): Use the Probe Tool and whichever probe screen is
; appropriate to set the coordinate system XYZ offsets needed for your job.
; NOTE: Return_Option 3 uses the current local coordinate system, not just ABS coord.
; 6 - Prepare to Run: You may then issue a manual TnM6 command to change the tool
; before starting the job, or if the job begins with a TnM6 command before
; spinning the spindle, you may leave the Probe Tool installed.
; !! Take care not to leave the XYZ tool probe in the spindle when a program may start
; the spindle. !!
;(debug, in change tool_in_spindle=#<tool_in_spindle> current_pocket=#<current_pocket>)
;(debug, selected_tool=#<selected_tool> selected_pocket=#<selected_pocket>)
(debug, !!!! ALTERNATIVE FILE !!!!)
; -------------------------------------
; --- Begin Initial data gathering ----
; -------------------------------------
#<tool> = #<selected_tool>
#<pocket> = #<selected_pocket>
#<local_start_x> = #<_x>
#<local_start_y> = #<_y>
#<local_start_z> = #<_z>
#<zworkoffset> = [#[5203 + #5220 * 20] + #5213 * #5210]
; -------------------------------------
; --- End Initial Data Gathering ----
; -------------------------------------
; -------------------------------------
; --- Begin Initial Safety Checks ----
; -------------------------------------
; we must execute this only in the milltask interpreter
; or preview will break, so test for '#<_task>' which is 1 for
; the milltask interpreter and 0 in the UI's
o100 if [#<_task> EQ 0]
(debug, Task is Null)
o100 return [999]
o100 endif
; check we are in right mode
o110 if [#<_metric_machine>]
o115 if [#<_imperial>]
(MSG, Auto Tool probe error: not in G21 mode )
o115 return [-3] ; indicate probe contact failure to epilog
o115 endif
o110 else
o115 if [#<_imperial> EQ 0]
(MSG, Auto Tool probe error: not in G20 mode )
o115 return [-3] ; indicate probe contact failure to epilog
o115 endif
o110 endif
;check we have a usable search velocity configured, otherwise error
o150 if [#<_hal[qtversaprobe.searchvel]> LE 0]
(MSG, No usable search velocity in hal.qtversaprobe.searchvel)
o150 return [-1] ; indicate searchvel <= 0
o150 endif
;check we do not have an invalid Return Option
o175 if [EXISTS[#<_ini[VERSA_TOOLSETTER]RETURN_OPTION>]]
#<return_opt> = #<_ini[VERSA_TOOLSETTER]RETURN_OPTION>
o176 if [[#<return_opt> EQ 1] OR [#<return_opt> EQ 2] OR [#<return_opt> EQ 3]]
;Continue: Return_Option is both defined and valid
o176 else
(MSG, Invalid RETURN_OPTION in .ini file under VERSA_TOOLSETTER)
o176 return [-1] ; signal error to post processing
o176 endif
o175 else
;Continue: it is valid to not define Return_Option, defaults to 1
o175 endif
; -------------------------------------
; --- End Initial Safety Checks ----
; -------------------------------------
; -------------------------------------
; --- Begin Physical Tool Change ----
; -------------------------------------
;first go up
F #<_hal[qtversaprobe.searchvel]>
G53 G0 Z[#<_ini[CHANGE_POSITION]Z>]
o200 if [#<_current_tool> NE #<tool>]
; then move to change position
G53 G0 X[#<_ini[CHANGE_POSITION]X>] Y[#<_ini[CHANGE_POSITION]Y>]
o200 endif
;cancel tool offset mode
G49
; using the code being remapped here means 'use builtin behaviour'
; ie, this is not a recursive call to this program, but calls the
; un-remapped M6 processing
; That processing includes actually sending the window to the user
; to press OK when they have completed the tool change.
M6
; -------------------------------------inal (modal)coord system
; ------ End Physical Tool Change ----
; -------------------------------------
; -------------------------------------
; ------ Begin Safety Checks for Tool Offset Measurement ----
; -------------------------------------
o300 if [#<_hal[qtversaprobe.enable]> EQ 0]
(MSG, Auto Tool probe disabled )
G43 ;turn back on tool offset mode before returning
o300 return [3] ; indicate no tool measurement
o300 endif
;check we have a usable probe velocity configured, otherwise error
o400 if [#<_hal[qtversaprobe.probevel]> LE 0]
o400 return [-2] ; indicate probevel <= 0
o400 endif
; -------------------------------------
; ------ End Safety Checks for Tool Offset Measurement ----
; -------------------------------------
; -------------------------------------
; ------ Begin Tool Offset Measurement ----
; -------------------------------------
;rapid-move to safe height
G53 G0 Z[#<_ini[VERSA_TOOLSETTER]Z_MAX_CLEAR>]
;Then rapid-move to probe XY location
G53 G0 X[#<_ini[VERSA_TOOLSETTER]X>] Y[#<_ini[VERSA_TOOLSETTER]Y>]
;then feed down to the probe start location
F #<_hal[qtversaprobe.searchvel]>
G53 G1 Z[#<_ini[VERSA_TOOLSETTER]Z>]
;switch to relative distance mode for probe moves
G91
;begin initial probe move
F #<_hal[qtversaprobe.searchvel]>
G38.2 Z- #<_ini[VERSA_TOOLSETTER]MAXPROBE>
G0 Z #<_hal[qtversaprobe.backoffdist]>
o510 if [#5070 EQ 0]
G90
o510 return [-3] ; indicate probe contact failure to epilog
o510 endif
;reprobe at probe speed: G38.2 means probe toward workpiece, stop on contact
; when G38.n axis completes, it puts the Z value detected (in the coordinates system
; in which this program started) into parameter #5063 (because we're probing Z)
;
F #<_hal[qtversaprobe.probevel]>
G38.2 Z- [#<_hal[qtversaprobe.backoffdist]> *1.2]
o520 if [#5070 EQ 0]
G90
o520 return [-3] ; indicate probe contact failure to epilog
o520 endif
;switch back to absolute distance mode once probing is done
G90
;set the current offset
#<touch_result> = #5063
;
; G10 L1 is the Set Tool Table Offset: it changes the tool table offset,
; it DOES NOT change the offsets in the current coordinate system. (that would be G10 L2)
; <----- CODE MODIFICATION ------->
; #<calculated_offset> = [#<touch_result> - #<_hal[qtversaprobe.probeheight]> + #<_hal[qtversaprobe.blockheight]>]
#<calculated_offset> = [#<touch_result> - #<_hal[qtversaprobe.probeheight]> + #<zworkoffset>]
G10 L1 P#<tool> Z[#<calculated_offset>]
; <----- CODE MODIFICATION ------->
;G43 enables tool length offset: this affects all subsequent moves by applying
; the offset just calculated to the coordinate system currently in
; effect. ie. it has subtracted Calculated Offset from the Z offset
G43
; <----- CODE MODIFICATION ------->
#<z_touch> = [#5063 + #<zworkoffset>]
;G10 L1 P#<tool> Z[#<z_touch>]
; <----- CODE MODIFICATION ------->
(DEBUG, %fProbe Height: #<_hal[qtversaprobe.probeheight]>)
(DEBUG, %fBlock Height: #<_hal[qtversaprobe.blockheight]>)
(DEBUG, %fProbe Result [without offs]: #<touch_result>)
(DEBUG, %fProbe Result [with offs]: #<z_touch>)
(DEBUG, %fZ Axis Offset [Z zero]: #<zworkoffset>)
(DEBUG, %fCalculated Offset: #<calculated_offset>)
; -------------------------------------
; ------ End Tool Offset Measurement ----
; -------------------------------------
; -------------------------------------
; ------ Begin Return Movement ----
; -------------------------------------
; return to original tool-tip position, but using new z-offset
(DEBUG, Return to original tool-tip position using new z-offset: #<local_start_x> , #<local_start_y> , #<local_start_z>)
G53 G0 Z[#<_ini[VERSA_TOOLSETTER]Z_MAX_CLEAR>]
; now use original (modal)coord system to go over to xy
;G0 X[#<local_start_x>] Y[#<local_start_y>]
; and finally down to the (already offset) z coord
;G0 Z[#<local_start_z>]
; -------------------------------------
; ------ End Return Movement ----
; -------------------------------------
; signal success be returning a value > 0:
o<qt_auto_probe_tool> endsub [1]
m2

141
qtdragon_hd.pref Normal file
View File

@@ -0,0 +1,141 @@
[DIALOG_GEOMETRY]
AboutDialog-geometry = half
LncMessage-geometry = 910 539 280 118
ToolChangeDialog-geometry = default
VersaHelpDialog-geometry = default
[DIALOG_OPTIONS]
EntryDialog_play_sound = True
EntryDialog_sound_type = READY
toolDialog_play_sound = True
toolDialog_speak = True
toolDialog_sound_type = READY
fileDialog_play_sound = True
fileDialog_sound_type = READY
CalculatorDialog_play_sound = True
CalculatorDialog_sound_type = READY
MachineLogDialog_play_sound = True
MachineLogDialog_sound_type = READY
RunFromLineDialog_play_sound = True
RunFromLineDialog_sound_type = READY
[BOOK_KEEPING]
last_loaded_directory = /home/cnc/Nextcloud/@Home/Mayo/gcode
last_loaded_file = /home/cnc/Nextcloud/@Home/Mayo/gcode/bottom_model.ngc
style_QSS_Path = DEFAULT
RecentPath_0 = /home/cnc/Nextcloud/@Home/Mayo/gcode/bottom_model.ngc
[ORIGINOFFSET_SYSTEM_NAMES]
__dialogOffsetViewWidget-G54 = User System 1
__dialogOffsetViewWidget-G55 = User System 2
__dialogOffsetViewWidget-G56 = User System 3
__dialogOffsetViewWidget-G57 = User System 4
__dialogOffsetViewWidget-G58 = User System 5
__dialogOffsetViewWidget-G59 = User System 6
__dialogOffsetViewWidget-G59.1 = User System 7
__dialogOffsetViewWidget-G59.2 = User System 8
__dialogOffsetViewWidget-G59.3 = User System 9
offset_table-G54 = User System 1
offset_table-G55 = User System 2
offset_table-G56 = User System 3
offset_table-G57 = User System 4
offset_table-G58 = User System 5
offset_table-G59 = User System 6
offset_table-G59.1 = User System 7
offset_table-G59.2 = User System 8
offset_table-G59.3 = User System 9
[SCREEN_OPTIONS]
catch_errors = True
desktop_notify = True
notify_max_msgs = 10
shutdown_check = True
sound_player_on = False
MainWindow-geometry = 0 0 1920 1080
[MCH_MSG_OPTIONS]
mchnMsg_play_sound = True
mchnMsg_speak_errors = False
mchnMsg_speak_text = True
mchnMsg_sound_type = ATTENTION
[USR_MSG_OPTIONS]
usermsg_play_sound = True
userMsg_sound_type = ATTENTION
userMsg_use_focusOverlay = True
[SHUTDOWN_OPTIONS]
shutdown_play_sound = True
shutdown_alert_sound_type = READY
shutdown_exit_sound_type = LOGOUT
shutdown_msg_title = Do you want to Shutdown now?
shutdown_msg_focus_text =
shutdown_msg_detail =
[NOTIFY_OPTIONS]
notify_start_greeting = False
notify_start_title = Welcome
notify_start_detail = This option can be changed in the preference file
notify_start_timeout = 5
[FILEMANAGER_JUMPLIST]
[SCREEN_CONTROL_LAST_SETTING]
gcodegraphics-user-view = p
gcodegraphics-user-zoom = 10.0
gcodegraphics-user-panx = 0.0
gcodegraphics-user-pany = 0.0
gcodegraphics-user-lat = 0.0
gcodegraphics-user-lon = 0.0
[CUSTOM_FORM_ENTRIES]
Tool to load = 0
Laser X = 100.0
Laser Y = -20.0
Sensor X = 10.0
Sensor Y = 10.0
Camera X = 10.0
Camera Y = 10.0
Work Height = 20.0
Touch Height = 40.0
Sensor Height = 40.0
Search Velocity = 40.0
Probe Velocity = 10.0
Max Probe = 10.0
Retract Distance = 10.0
Z Safe Travel = 10.0
Eoffset count = 0
External offsets = False
Reload program = False
Reload tool = False
Use keyboard = True
Use tool sensor = True
Use tool touchplate = False
Run from line = False
Use virtual keyboard = False
Use camera = False
Use alpha display mode = False
Inhibit display mouse selection = True
Camview xscale = 100
Camview yscale = 100
Camview cam number = 0
[VERSA_PROBE_OPTIONS]
ps_searchvel = 300.0
ps_probevel = 10.0
ps_z_clearance = 3.0
ps_probe_max = 1.0
ps_probe_max_z_travel = 1.0
ps_probe_latch = 0.5
ps_probe_diam = 2.0
ps_xy_clearance = 5.0
ps_side_edge_length = 5.0
ps_probe_height = 20.0
ps_block_height = 20.0
use_tool_measurement = True
ps_offs_x = 0.0
ps_offs_y = 0.0
ps_offs_z = 0.0
ps_offs_angle = 0.0
ps_probe_rapid_vel = 60.0

File diff suppressed because it is too large Load Diff

3
qtvcp_postgui.hal Normal file
View File

@@ -0,0 +1,3 @@
net tool-change => hal_manualtoolchange.change
net tool-changed <= hal_manualtoolchange.changed
net tool-number => hal_manualtoolchange.number

7
tool.tbl Normal file
View File

@@ -0,0 +1,7 @@
T0 P0 ;Probe
T1 P1 D+0.850000 ;0.85 Flat end mill
T2 P2 D+3.175000 Z-0.012833 ;3.175 Flat end mill
T3 P3 D+3.175000 ;3.175 Engrave mill 30* 0.2
T4 P4 D+6.000000 Z+15.800167 ;6mm Flat end mill
T5 P0 D+1.000000 Z-0.001500 ;1mm Flat end mill
T6 P0 D+0.800000 ;drill 0.7