-- SOLVED -- Inconsistent Probe Performance...
- cnctrucker
- Topic Author
- Offline
- New Member
Less
More
- Posts: 16
- Thank you received: 4
10 Oct 2024 01:45 - 10 Oct 2024 01:56 #311689
by cnctrucker
Inconsistent Probe Performance... was created by cnctrucker
I'm stumped -- I just cannot get my probe to work correctly.
Attached is my config archive for review.
My system is a Dell Optiplex 7040 Core-i7, 32 gb RAM, 512 gb SSD, 2 tb hard drive
MosChip PCI 9865 Parallel Card (0xd010) Port 0 Configured As Output
Asix Electronics Corporation AX99100 PCIe Parallel Card (0xb010) Port 1, Configured As Input
Debian Linux 12.7 (Bookworm), Cinnamon Version, Kernel 6.9.7+bpo-rt-amd64
LinuxCNC v2.9.3 compiled from source to DEB then installed through Synaptic.
The table is a DIY using steppers, a SainSmart controller card / breakout board on Port 0, and a bare breakout board with pull-down resistors on Port 1 pins 2-9 for inputs from my proximity limit switches; each axis has a home-min switch and a max switch (8 switches total).
The table homes perfectly. When I do a probe test right after homing, it works like expected -- dropping to probe height, slowing to contact, stopping for a few seconds, then rising to pierce height until the timer expires. When I move to a work coordinate position, the probe test again works perfectly.
Unfortunately, that all blows up when I attempt to run a G-Code program (example below). As you can see in the attached video, the torch drops, makes contact, then immediately rises to safe height -- the program pauses with the error "pierce height would exceed Z axis maximum limit".
I have tried all sorts of values, but nothing seems to do any good; I don't see anything in the program that would cause it.
Perhaps one of our "resident Guru's" can give me some insight into this & help me get it to probe properly?
Config Backup:
Picture Of Z-Axis:
YouTube Video of Z-Axis Motion During G-Code Program: youtube.com/shorts/k12akteEZmI?feature=share
(Drawing name : Air Connection Plate For Lowboy Neck v5)
(Program Name : AirConnector)
N10 G21
N15 G90 G40
N20 G17 G91.1
N25 G64 P0.254 Q0.254
N30 M52 P1.
N35 M65 P2.
N40 M65 P3.
N45 M68 E3 Q0.
(2D PROFILE3)
(
)
(- NORMAL OPERATION. -)
(
)
(PLASMA CUTTING)
(THROUGH CUTTING)
N50 M190 P1.
N60 F#<_hal[plasmac.cut-feed-rate]>
N65 G0 X111.149 Y67.376
N70 M3 $0 S1
N75 G1 X109.362 Y72.045
N80 G3 X105.479 Y75.195 I-4.67 J-1.788
N90 X95.472 Y26.873 I-3.886 J-24.392
N95 G1 X95.999 Y26.739
N100 X95.999 Y23.749
N105 X107.299 Y23.749
N110 X107.299 Y26.224
N115 X107.299 Y26.765
N120 X107.822 Y26.901
N125 G3 X100.495 Y75.479 I-6.229 J23.902
N130 X96.281 Y72.789 I0.222 J-4.995
N135 G1 X93.976 Y68.352
N140 M5
N145 X171.948 Y55.76
N150 M3 $0 S1
N155 G1 X169.448 Y60.09
N160 G3 X165.118 Y62.59 I-4.33 J-2.5
N165 X165.118 Y38.99 I0 J-11.8
N170 X165.118 Y62.59 I0 J11.8
N175 X160.266 Y61.547 I0 J-11.8
N180 X157.347 Y57.487 I2.056 J-4.558
N185 G1 X156.848 Y52.512
N190 M5
N195 X44.841 Y55.743
N200 G0 X44.841 Y55.743
N205 M3 $0 S1
N210 G1 X42.341 Y60.073
N215 G3 X38.011 Y62.573 I-4.33 J-2.5
N220 X38.011 Y38.973 I0 J-11.8
N225 X38.011 Y62.573 I0 J11.8
N230 X33.16 Y61.53 I0 J-11.8
N235 X30.24 Y57.47 I2.056 J-4.558
N240 G1 X29.742 Y52.495
N245 M5
N250 G0 X-7.53 Y66.216
N255 M3 $0 S1
N260 G1 X-3.2 Y68.716
N265 G3 X-0.7 Y73.046 I-2.5 J4.33
N270 G1 X-0.7 Y101.6
N275 X-0.7 Y102.3
N280 X203.2 Y102.3
N285 X203.9 Y102.3
N290 X203.9 Y38.1
N295 G2 X165.1 Y-0.7 I-38.8 J0
N300 G1 X38.1 Y-0.7
N305 G2 X-0.7 Y38.1 I0 J38.8
N310 G1 X-0.7 Y73.046
N315 X-0.7 Y78.046
N320 G3 X-3.2 Y82.376 I-5 J0
N325 G1 X-7.53 Y84.876
N330 M5
N335 M5
N340 G0 X0 Y0
N345 M30
Attached is my config archive for review.
My system is a Dell Optiplex 7040 Core-i7, 32 gb RAM, 512 gb SSD, 2 tb hard drive
MosChip PCI 9865 Parallel Card (0xd010) Port 0 Configured As Output
Asix Electronics Corporation AX99100 PCIe Parallel Card (0xb010) Port 1, Configured As Input
Debian Linux 12.7 (Bookworm), Cinnamon Version, Kernel 6.9.7+bpo-rt-amd64
LinuxCNC v2.9.3 compiled from source to DEB then installed through Synaptic.
The table is a DIY using steppers, a SainSmart controller card / breakout board on Port 0, and a bare breakout board with pull-down resistors on Port 1 pins 2-9 for inputs from my proximity limit switches; each axis has a home-min switch and a max switch (8 switches total).
The table homes perfectly. When I do a probe test right after homing, it works like expected -- dropping to probe height, slowing to contact, stopping for a few seconds, then rising to pierce height until the timer expires. When I move to a work coordinate position, the probe test again works perfectly.
Unfortunately, that all blows up when I attempt to run a G-Code program (example below). As you can see in the attached video, the torch drops, makes contact, then immediately rises to safe height -- the program pauses with the error "pierce height would exceed Z axis maximum limit".
I have tried all sorts of values, but nothing seems to do any good; I don't see anything in the program that would cause it.
Perhaps one of our "resident Guru's" can give me some insight into this & help me get it to probe properly?
Config Backup:
Picture Of Z-Axis:
YouTube Video of Z-Axis Motion During G-Code Program: youtube.com/shorts/k12akteEZmI?feature=share
(Drawing name : Air Connection Plate For Lowboy Neck v5)
(Program Name : AirConnector)
N10 G21
N15 G90 G40
N20 G17 G91.1
N25 G64 P0.254 Q0.254
N30 M52 P1.
N35 M65 P2.
N40 M65 P3.
N45 M68 E3 Q0.
(2D PROFILE3)
(
)
(- NORMAL OPERATION. -)
(
)
(PLASMA CUTTING)
(THROUGH CUTTING)
N50 M190 P1.
N60 F#<_hal[plasmac.cut-feed-rate]>
N65 G0 X111.149 Y67.376
N70 M3 $0 S1
N75 G1 X109.362 Y72.045
N80 G3 X105.479 Y75.195 I-4.67 J-1.788
N90 X95.472 Y26.873 I-3.886 J-24.392
N95 G1 X95.999 Y26.739
N100 X95.999 Y23.749
N105 X107.299 Y23.749
N110 X107.299 Y26.224
N115 X107.299 Y26.765
N120 X107.822 Y26.901
N125 G3 X100.495 Y75.479 I-6.229 J23.902
N130 X96.281 Y72.789 I0.222 J-4.995
N135 G1 X93.976 Y68.352
N140 M5
N145 X171.948 Y55.76
N150 M3 $0 S1
N155 G1 X169.448 Y60.09
N160 G3 X165.118 Y62.59 I-4.33 J-2.5
N165 X165.118 Y38.99 I0 J-11.8
N170 X165.118 Y62.59 I0 J11.8
N175 X160.266 Y61.547 I0 J-11.8
N180 X157.347 Y57.487 I2.056 J-4.558
N185 G1 X156.848 Y52.512
N190 M5
N195 X44.841 Y55.743
N200 G0 X44.841 Y55.743
N205 M3 $0 S1
N210 G1 X42.341 Y60.073
N215 G3 X38.011 Y62.573 I-4.33 J-2.5
N220 X38.011 Y38.973 I0 J-11.8
N225 X38.011 Y62.573 I0 J11.8
N230 X33.16 Y61.53 I0 J-11.8
N235 X30.24 Y57.47 I2.056 J-4.558
N240 G1 X29.742 Y52.495
N245 M5
N250 G0 X-7.53 Y66.216
N255 M3 $0 S1
N260 G1 X-3.2 Y68.716
N265 G3 X-0.7 Y73.046 I-2.5 J4.33
N270 G1 X-0.7 Y101.6
N275 X-0.7 Y102.3
N280 X203.2 Y102.3
N285 X203.9 Y102.3
N290 X203.9 Y38.1
N295 G2 X165.1 Y-0.7 I-38.8 J0
N300 G1 X38.1 Y-0.7
N305 G2 X-0.7 Y38.1 I0 J38.8
N310 G1 X-0.7 Y73.046
N315 X-0.7 Y78.046
N320 G3 X-3.2 Y82.376 I-5 J0
N325 G1 X-7.53 Y84.876
N330 M5
N335 M5
N340 G0 X0 Y0
N345 M30
Attachments:
Last edit: 10 Oct 2024 01:56 by cnctrucker. Reason: Added G-Code
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17899
- Thank you received: 4774
10 Oct 2024 02:33 #311690
by PCW
Replied by PCW on topic Inconsistent Probe Performance...
My guess is it might be the lack of debouncing on critical inputs.
The dbounce components are loaded but the raw parallel port signals
are routed to Plasmac and the dbounce component inputs, but the signal
paths should be:
parallel port pin --> dbouncex.in --> dbouncex.out --> Plasmac
That is you have for example:
net plasmac:float-switch <= parport.0.pin-12-in-not
net plasmac:float-switch => db_float.in
when it should be something like:
net raw-float-switch <= parport.0.pin-12-in-not
net raw-float-switch => db_float.in
net plasmac:float-switch => db_float.out
or the equivalent:
net raw-float-switch <= parport.0.pin-12-in-not => db_float.in
net plasmac:float-switch => db_float.out
also the debounce times were not set (so would default to 5 servo-thread periods so 5 ms)
The dbounce components are loaded but the raw parallel port signals
are routed to Plasmac and the dbounce component inputs, but the signal
paths should be:
parallel port pin --> dbouncex.in --> dbouncex.out --> Plasmac
That is you have for example:
net plasmac:float-switch <= parport.0.pin-12-in-not
net plasmac:float-switch => db_float.in
when it should be something like:
net raw-float-switch <= parport.0.pin-12-in-not
net raw-float-switch => db_float.in
net plasmac:float-switch => db_float.out
or the equivalent:
net raw-float-switch <= parport.0.pin-12-in-not => db_float.in
net plasmac:float-switch => db_float.out
also the debounce times were not set (so would default to 5 servo-thread periods so 5 ms)
Please Log in or Create an account to join the conversation.
- phillc54
- Offline
- Platinum Member
Less
More
- Posts: 5698
- Thank you received: 2081
10 Oct 2024 03:15 - 10 Oct 2024 03:19 #311692
by phillc54
Replied by phillc54 on topic Inconsistent Probe Performance...
We kinda do things in a convoluted way, the dbounce component pins are connected by qtplasmac_comp.hal which is in hallib.
qtplasma_comp.hal:
The times should be set in custom.hal but for some reason in this config they are in custom.hal.new_values and probably should be copied to custom .hal for convenience.
custom.hal:
custom.hal.new_values
qtplasma_comp.hal:
Warning: Spoiler!
# ***** plasmac component connections for a QtPlasmaC configuration *****
# do not make any changes to this file, it may be overwritten by future updates
# make all customizations in custom.hal or custom_postgui.hal
# ---PLASMAC COMPONENT INPUTS---
net plasmac:arc-ok db_arc-ok.out => plasmac.arc-ok-in
net plasmac:axis-x-position axis.x.pos-cmd => plasmac.axis-x-position
net plasmac:axis-y-position axis.y.pos-cmd => plasmac.axis-y-position
net plasmac:breakaway-switch-out db_breakaway.out => plasmac.breakaway
net plasmac:current-velocity motion.current-vel => plasmac.current-velocity
net plasmac:cutting-start spindle.0.on => plasmac.cutting-start
net plasmac:cutting-stop halui.spindle.0.stop => plasmac.cutting-stop
net plasmac:feed-override halui.feed-override.value => plasmac.feed-override
net plasmac:feed-reduction motion.analog-out-03 => plasmac.feed-reduction
net plasmac:float-switch-out db_float.out => plasmac.float-switch
net plasmac:feed-upm motion.feed-upm => plasmac.feed-upm
net plasmac:homed motion.is-all-homed => plasmac.homed
net plasmac:ignore-arc-ok-0 motion.digital-out-01 => plasmac.ignore-arc-ok-0
net machine-is-on halui.machine.is-on => plasmac.machine-is-on
net plasmac:motion-type motion.motion-type => plasmac.motion-type
net plasmac:offsets-active motion.eoffset-active => plasmac.offsets-active
net plasmac:ohmic-probe-out db_ohmic.out => plasmac.ohmic-probe
net plasmac:program-is-idle halui.program.is-idle => plasmac.program-is-idle
net plasmac:program-is-paused halui.program.is-paused => plasmac.program-is-paused
net plasmac:program-is-running halui.program.is-running => plasmac.program-is-running
net plasmac:scribe-start spindle.1.on => plasmac.scribe-start
net plasmac:spotting-start spindle.2.on => plasmac.spotting-start
net plasmac:thc-disable motion.digital-out-02 => plasmac.thc-disable
net plasmac:torch-off motion.digital-out-03 => plasmac.torch-off
net plasmac:units-per-mm halui.machine.units-per-mm => plasmac.units-per-mm
net plasmac:x-offset-current axis.x.eoffset => plasmac.x-offset-current
net plasmac:y-offset-current axis.y.eoffset => plasmac.y-offset-current
net plasmac:z-offset-current axis.z.eoffset => plasmac.z-offset-current
# ---PLASMAC COMPONENT OUTPUTS---
net plasmac:adaptive-feed plasmac.adaptive-feed => motion.adaptive-feed
net plasmac:feed-hold plasmac.feed-hold => motion.feed-hold
net plasmac:jog-inhibit plasmac.jog-inhibit => motion.jog-inhibit motion.jog-stop
net plasmac:offset-scale plasmac.offset-scale => axis.x.eoffset-scale axis.y.eoffset-scale axis.z.eoffset-scale
net plasmac:probe-out plasmac.probe-out => motion.probe-input
net plasmac:program-pause plasmac.program-pause => halui.program.pause
net plasmac:program-resume plasmac.program-resume => halui.program.resume
net plasmac:program-run plasmac.program-run => halui.program.run
net plasmac:program-stop plasmac.program-stop => halui.program.stop
net plasmac:torch-on plasmac.torch-on
net plasmac:x-offset-counts plasmac.x-offset-counts => axis.x.eoffset-counts
net plasmac:y-offset-counts plasmac.y-offset-counts => axis.y.eoffset-counts
net plasmac:xy-offset-enable plasmac.xy-offset-enable => axis.x.eoffset-enable axis.y.eoffset-enable
net plasmac:z-offset-counts plasmac.z-offset-counts => axis.z.eoffset-counts
net plasmac:z-offset-enable plasmac.z-offset-enable => axis.z.eoffset-enable
# do not make any changes to this file, it may be overwritten by future updates
# make all customizations in custom.hal or custom_postgui.hal
# ---PLASMAC COMPONENT INPUTS---
net plasmac:arc-ok db_arc-ok.out => plasmac.arc-ok-in
net plasmac:axis-x-position axis.x.pos-cmd => plasmac.axis-x-position
net plasmac:axis-y-position axis.y.pos-cmd => plasmac.axis-y-position
net plasmac:breakaway-switch-out db_breakaway.out => plasmac.breakaway
net plasmac:current-velocity motion.current-vel => plasmac.current-velocity
net plasmac:cutting-start spindle.0.on => plasmac.cutting-start
net plasmac:cutting-stop halui.spindle.0.stop => plasmac.cutting-stop
net plasmac:feed-override halui.feed-override.value => plasmac.feed-override
net plasmac:feed-reduction motion.analog-out-03 => plasmac.feed-reduction
net plasmac:float-switch-out db_float.out => plasmac.float-switch
net plasmac:feed-upm motion.feed-upm => plasmac.feed-upm
net plasmac:homed motion.is-all-homed => plasmac.homed
net plasmac:ignore-arc-ok-0 motion.digital-out-01 => plasmac.ignore-arc-ok-0
net machine-is-on halui.machine.is-on => plasmac.machine-is-on
net plasmac:motion-type motion.motion-type => plasmac.motion-type
net plasmac:offsets-active motion.eoffset-active => plasmac.offsets-active
net plasmac:ohmic-probe-out db_ohmic.out => plasmac.ohmic-probe
net plasmac:program-is-idle halui.program.is-idle => plasmac.program-is-idle
net plasmac:program-is-paused halui.program.is-paused => plasmac.program-is-paused
net plasmac:program-is-running halui.program.is-running => plasmac.program-is-running
net plasmac:scribe-start spindle.1.on => plasmac.scribe-start
net plasmac:spotting-start spindle.2.on => plasmac.spotting-start
net plasmac:thc-disable motion.digital-out-02 => plasmac.thc-disable
net plasmac:torch-off motion.digital-out-03 => plasmac.torch-off
net plasmac:units-per-mm halui.machine.units-per-mm => plasmac.units-per-mm
net plasmac:x-offset-current axis.x.eoffset => plasmac.x-offset-current
net plasmac:y-offset-current axis.y.eoffset => plasmac.y-offset-current
net plasmac:z-offset-current axis.z.eoffset => plasmac.z-offset-current
# ---PLASMAC COMPONENT OUTPUTS---
net plasmac:adaptive-feed plasmac.adaptive-feed => motion.adaptive-feed
net plasmac:feed-hold plasmac.feed-hold => motion.feed-hold
net plasmac:jog-inhibit plasmac.jog-inhibit => motion.jog-inhibit motion.jog-stop
net plasmac:offset-scale plasmac.offset-scale => axis.x.eoffset-scale axis.y.eoffset-scale axis.z.eoffset-scale
net plasmac:probe-out plasmac.probe-out => motion.probe-input
net plasmac:program-pause plasmac.program-pause => halui.program.pause
net plasmac:program-resume plasmac.program-resume => halui.program.resume
net plasmac:program-run plasmac.program-run => halui.program.run
net plasmac:program-stop plasmac.program-stop => halui.program.stop
net plasmac:torch-on plasmac.torch-on
net plasmac:x-offset-counts plasmac.x-offset-counts => axis.x.eoffset-counts
net plasmac:y-offset-counts plasmac.y-offset-counts => axis.y.eoffset-counts
net plasmac:xy-offset-enable plasmac.xy-offset-enable => axis.x.eoffset-enable axis.y.eoffset-enable
net plasmac:z-offset-counts plasmac.z-offset-counts => axis.z.eoffset-counts
net plasmac:z-offset-enable plasmac.z-offset-enable => axis.z.eoffset-enable
The times should be set in custom.hal but for some reason in this config they are in custom.hal.new_values and probably should be copied to custom .hal for convenience.
custom.hal:
Warning: Spoiler!
# Include your custom HAL commands here
# This file will not be overwritten when you run stepconf again
# This file will not be overwritten when you run stepconf again
custom.hal.new_values
Warning: Spoiler!
# Include your custom HAL commands here
# This file will not be overwritten when you run stepconf again
# for the float and ohmic inputs each increment in delay is
# is a 0.001mm (0.00004") increase in any probed height result
setp db_float.delay 5
# set to zero if using internal ohmic sensing
setp db_ohmic.delay 0
setp db_breakaway.delay 5
setp db_arc-ok.delay 5
########################################
# The following variables are available for fine tuning some parameters.
# To use any of these, uncomment the required setp line and set an appropriate value.
# Dampen excessive noise on the arc voltage input
# default = 0 (volts)
#setp plasmac.lowpass-frequency 0
# The time delay from losing the arc ok signal until QtPlasmaC reacts to the arc loss.
# default = 0.0 (seconds)
#setp plasmac.arc-lost-delay 0.0
# For mode 0 Arc-OK only, the number of consecutive readings within the threshold that are required to set the Arc-OK signal.
# default = 6
#setp plasmac.arc-ok-counts 6
# For mode 0 Arc-OK only, the maximum voltage deviation that is allowed for a valid voltage to set the Arc OK signal.
# default = 10 (volts)
#setp plasmac.arc-ok-threshold 10
# The voltage above and below 0V that will display as 0V. Prevents small fluctuations from flickering the voltage display.
# default = 0 (volts)
#setp plasmac.zero-window 0
# The distance (in millimeters) away from the Z MAX_LIMIT that QtPlasmaC will allow the Z axis to travel while under machine control.
# default = 5 (mm)
#setp plasmac.max-offset 5
# The required number of consecutive times that the threshold has been exceeded before applying the void lock to the THC.
# default = 2
#setp plasmac.kerf-error-max 2
# This file will not be overwritten when you run stepconf again
# for the float and ohmic inputs each increment in delay is
# is a 0.001mm (0.00004") increase in any probed height result
setp db_float.delay 5
# set to zero if using internal ohmic sensing
setp db_ohmic.delay 0
setp db_breakaway.delay 5
setp db_arc-ok.delay 5
########################################
# The following variables are available for fine tuning some parameters.
# To use any of these, uncomment the required setp line and set an appropriate value.
# Dampen excessive noise on the arc voltage input
# default = 0 (volts)
#setp plasmac.lowpass-frequency 0
# The time delay from losing the arc ok signal until QtPlasmaC reacts to the arc loss.
# default = 0.0 (seconds)
#setp plasmac.arc-lost-delay 0.0
# For mode 0 Arc-OK only, the number of consecutive readings within the threshold that are required to set the Arc-OK signal.
# default = 6
#setp plasmac.arc-ok-counts 6
# For mode 0 Arc-OK only, the maximum voltage deviation that is allowed for a valid voltage to set the Arc OK signal.
# default = 10 (volts)
#setp plasmac.arc-ok-threshold 10
# The voltage above and below 0V that will display as 0V. Prevents small fluctuations from flickering the voltage display.
# default = 0 (volts)
#setp plasmac.zero-window 0
# The distance (in millimeters) away from the Z MAX_LIMIT that QtPlasmaC will allow the Z axis to travel while under machine control.
# default = 5 (mm)
#setp plasmac.max-offset 5
# The required number of consecutive times that the threshold has been exceeded before applying the void lock to the THC.
# default = 2
#setp plasmac.kerf-error-max 2
Last edit: 10 Oct 2024 03:19 by phillc54.
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17899
- Thank you received: 4774
10 Oct 2024 03:26 #311693
by PCW
Replied by PCW on topic Inconsistent Probe Performance...
OK did not see that hal file (and grep'ed for the db.out pins and did not find them in the supplied hal files)
back to square one I guess...
back to square one I guess...
Please Log in or Create an account to join the conversation.
- phillc54
- Offline
- Platinum Member
Less
More
- Posts: 5698
- Thank you received: 2081
10 Oct 2024 04:09 - 10 Oct 2024 04:10 #311695
by phillc54
Replied by phillc54 on topic Inconsistent Probe Performance...
Try changing the line below this in your hal file:
from:
to:
# ---JOINT ASSOCIATED WITH THE Z AXIS---
from:
net plasmac:axis-position joint.2.pos-fb => plasmac.axis-z-position
to:
net plasmac:axis-position joint.3.pos-fb => plasmac.axis-z-position
Last edit: 10 Oct 2024 04:10 by phillc54.
The following user(s) said Thank You: cnctrucker
Please Log in or Create an account to join the conversation.
- cnctrucker
- Topic Author
- Offline
- New Member
Less
More
- Posts: 16
- Thank you received: 4
10 Oct 2024 06:58 - 10 Oct 2024 07:04 #311701
by cnctrucker
When I created that machine config in StepConf, it did not insert a [JOINT_2] block in the [AXIS_Y] block -- I had to manually copy & paste the [JOINT_1] block to add a [JOINT_2] block. I didn't notice that it had linked the Z axis to [JOINT_2] over in the .HAL file.
I'll give that a try in the morning, but that's probably the problem. Thanks a bunch!!
Replied by cnctrucker on topic Inconsistent Probe Performance...
Ahhh... I never noticed that, but it makes sense.Try changing the line below this in your hal file:
[/code][/code]# ---JOINT ASSOCIATED WITH THE Z AXIS--- from: [code]net plasmac:axis-position joint.2.pos-fb => plasmac.axis-z-position to: [code]net plasmac:axis-position joint.3.pos-fb => plasmac.axis-z-position
When I created that machine config in StepConf, it did not insert a [JOINT_2] block in the [AXIS_Y] block -- I had to manually copy & paste the [JOINT_1] block to add a [JOINT_2] block. I didn't notice that it had linked the Z axis to [JOINT_2] over in the .HAL file.
I'll give that a try in the morning, but that's probably the problem. Thanks a bunch!!
Last edit: 10 Oct 2024 07:04 by cnctrucker. Reason: Fixed formatting
Please Log in or Create an account to join the conversation.
- cnctrucker
- Topic Author
- Offline
- New Member
Less
More
- Posts: 16
- Thank you received: 4
10 Oct 2024 07:12 #311703
by cnctrucker
I'm using proximity switches, so there is no appreciable bounce. With the exception of the line you pointed out, this is the same HAL code I have used in several iterations of this machine -- and I've never had a problem with a lack of debouncing before.
I'm sure that the wrong joint assignment is the problem -- I'll know in the morning for sure, but the previous iteration of the machine worked just fine before I added the THCAD-2 to the machine.
Replied by cnctrucker on topic Inconsistent Probe Performance...
My guess is it might be the lack of debouncing on critical inputs.
The dbounce components are loaded but the raw parallel port signals
are routed to Plasmac and the dbounce component inputs, but the signal
paths should be:
parallel port pin --> dbouncex.in --> dbouncex.out --> Plasmac
That is you have for example:
net plasmac:float-switch <= parport.0.pin-12-in-not
net plasmac:float-switch => db_float.in
when it should be something like:
net raw-float-switch <= parport.0.pin-12-in-not
net raw-float-switch => db_float.in
net plasmac:float-switch => db_float.out
or the equivalent:
net raw-float-switch <= parport.0.pin-12-in-not => db_float.in
net plasmac:float-switch => db_float.out
also the debounce times were not set (so would default to 5 servo-thread periods so 5 ms)
I'm using proximity switches, so there is no appreciable bounce. With the exception of the line you pointed out, this is the same HAL code I have used in several iterations of this machine -- and I've never had a problem with a lack of debouncing before.
I'm sure that the wrong joint assignment is the problem -- I'll know in the morning for sure, but the previous iteration of the machine worked just fine before I added the THCAD-2 to the machine.
Please Log in or Create an account to join the conversation.
- cnctrucker
- Topic Author
- Offline
- New Member
Less
More
- Posts: 16
- Thank you received: 4
10 Oct 2024 08:01 #311708
by cnctrucker
I couldn't wait -- I went out to the shop & made the change tonight.
Problem solved -- it ran the whole G-Code program just like it should (no plasma though). I'll try the actual cut tomorrow, but I'm confident that the issue is solved now.
Again, many thanks!!!
Replied by cnctrucker on topic Inconsistent Probe Performance...
Try changing the line below this in your hal file:
[/code][/code]# ---JOINT ASSOCIATED WITH THE Z AXIS--- from: [code]net plasmac:axis-position joint.2.pos-fb => plasmac.axis-z-position to: [code]net plasmac:axis-position joint.3.pos-fb => plasmac.axis-z-position
I couldn't wait -- I went out to the shop & made the change tonight.
Problem solved -- it ran the whole G-Code program just like it should (no plasma though). I'll try the actual cut tomorrow, but I'm confident that the issue is solved now.
Again, many thanks!!!
The following user(s) said Thank You: phillc54
Please Log in or Create an account to join the conversation.
- cnctrucker
- Topic Author
- Offline
- New Member
Less
More
- Posts: 16
- Thank you received: 4
10 Oct 2024 08:04 #311709
by cnctrucker
Replied by cnctrucker on topic -- SOLVED -- Inconsistent Probe Performance...
ISSUE SOLVED NOW -- PROBING WORKS JUST AS IT SHOULD.
The following user(s) said Thank You: thefabricator03
Please Log in or Create an account to join the conversation.
Moderators: snowgoer540
Time to create page: 0.133 seconds