qtdragon - probing issues

More
3 years 5 months ago #270912 by rodw
Replied by rodw on topic qtdragon - probing issues
I assumed I would be still on the same branch after a git pull but I'll check tomorrow.


I would like to eliminate any G1 moves in a hole unless returning to a known safe position. My probe has a maximum recommended velocity of 200mm so I don't want to exceed that.

Something like:
- move down Z clearance + extra depth
- negative G38.2 X axis probe diameter hint x 1.5
- probe away slow G38.4 X(distance to start), record pos
- positive G38.2 probe X axis probe diameter hint x 1.5
- probe away slow G38.4 X(distance to start), record pos
- return to calculated X centre
- negative G38.2 Y axis probe diameter hint x 1.5
- probe away slow G38.4 Y(distance to start), record pos
- positive probe Y axis probe diameter hint x 1.5
- probe away slow G38.4 Y(distance to start), record pos
- return to calculated X,Y centre
- raise to clearance height (could combine with previous move if brave)

This will be much more efficient and using G38.4 should give more accurate results and simplify the code. Just record the position and head for the other side.. What do you think?

Re M61 Qn: qtdragon should know (or could be told via the ini file) if a manual toolchanger is in use. Perhaps it could unhide a button in this case?
The following user(s) said Thank You: Roguish

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #270921 by cmorley
Replied by cmorley on topic qtdragon - probing issues
I don't want to completely change the probe routines - it's complicated code that I don't know well. And i never know when linuxcnc decides it will be released :)
More efficient ones will have to wait for master.

It seems to me, what you are saying - small hole probe should skip the rapid positioning.
Don't want to get rid of rapid completely in case you are probing large holes.
Two ways I can think of that are pretty easy:

1) have probe calculate based on diameter hint and probe diameter when to skip the rapid positioning move. say if diameter is < 4x probe diameter - skip rapid

2) have the user set xy clearance to zero or (diameter to zero?) would cause skipping of rapid positioning

I think in the future the data entries should remember settings based on the displaed probe buttons. meaning if you switch between hole probing and edge probing then clearance etc could be different without having to physically change them each time.

yes I suppose a button that either does M61 or m6 based on a preference setting.
The following user(s) said Thank You: Roguish, rodw

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #270922 by rodw
Replied by rodw on topic qtdragon - probing issues
I understand. June 10 is Bookworm's release date. I'd love to see 2.9 in it...
I'm not sure I was thinking of just small holes but I got no experience with this stuff.
2 sounds better. I can't even probe a hole 5 x the diameter of my 2mm probe.
I think on XY clearance = 0 because you need to be able to set some reference to set the back off distance under present algorithm. The diameter would let you do that. (say 0.25 x diameter?) 
 

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago - 3 years 5 months ago #270930 by Roguish
Replied by Roguish on topic qtdragon - probing issues
guys, probing is definitely complicated, and scary with expensive probes.....
using the old Probe Screen v2, I was able to probe holes as small as .50 inches with a 3mm probe end. it took some doing to adjust the parameters, but it did work. Serguei used both python and gcode. but the gcode was fairly simple. there are only 5 gcode macros.
I've looked through and looked at the current VersaProbe and BasicProbe routines in qtvcp, and it's way complicated, including multiple levels of Py code.... This may not be bad, but it makes it all difficult to follow and debug.
I'm a firm believer of KISS (the good old keep it stupid simple).....

I'm help when and however I can. I was unable to do RIP on my little mill.
It's on bullseye, and Seb's master deb with a 4.19 rt.
I have a few extra ssds, so I can create a totally separate test install.
Which debian version, and linuxcnc version should I use?

chris, you commented on a line in the probe routine as '<<seems wrong' and you are absolutely correct there. that moves the probe way too far from the next edge.

not sure if you recall, but Chris Radek created a good hole probe routine, p_hole.ngc, which has been used as a base for several routines since then, including for ncggui. probe_hole6.ngc. forum.linuxcnc.org/40-subroutines-and-ng...e-for-center-of-hole

So let's keep working this to get it right and safe.....


maybe I'll start here.....   forum.linuxcnc.org/9-installing-linuxcnc...g-installation-notes

well, believe it or not, I made a new install on another ssd, and actually got an RIP to compile.
Rod, I used your direction above on the git clone and branch.
But, how do I know what actually compiled?   the first clone or the branch???
and how can I tell if the branch with the error fixes is actually running....???

 
Last edit: 3 years 5 months ago by Roguish.

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #270954 by rodw
Replied by rodw on topic qtdragon - probing issues
Great work, its simpler than it looks!
I think this should confirm the branch
Code:
git branch --show-current

My machine runs Bullseye too so there is no reason to change.
Chris has been working on the 2.9 branch so when he merges this branch remember to
Code:
git checkout 2.9
(The default branch on an initial clone is master branch eg 2.10)
Re version, just trust git, it tells you the branch you are on when you git checkout <branch>

My instructions show how to build a Deb. That takes a long time.
A RIP build is covered in the Linuxcnc developer docs. basically once the dependencies are installed
Code:
cd ~/linuxcnc-dev/src git checkout qtvcp_probe_max_z_fix make sudo make setuid

Now we need to set the environment so linuxcnc looks in your linuxcnc-dev folder
Code:
. ~/linuxcnc-dev/scripts/rip-environment
(the leading fullstop and space is critical)
Now if you run linuxcnc normally IN THE SAME CONSOLE WINDOW, you get the RIP
Closing the window, destroys the RIP until you run rip-environment again.

If you have installed a Deb you built you may not be able to run rip-environment.
If that's the case uninstall the deb, something like
[/code]
sudo dpkg -r linuxcnc-uspace
[/code]
And reinstall one of sebs debs
Then the RIP will be happy.

I think it's a good thing to bake the probing in once it's debugged with tears and broken probes.
I agree there is only 5 probe types My observations are:
There is redundant code on the corner probes. They should call the primitive 5!
Using G38.4 would substantially simplify the probing, eliminate a lot of code and speed up the process.

It seems like the the original probing came stuff running from Mach3 or some other less sophisticated gcode environment. Linuxcnc is smarter so we should use those smarts! (eg G38.4)
The following user(s) said Thank You: Roguish

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #270956 by rodw
Replied by rodw on topic qtdragon - probing issues
Forgot to say I hate redundant code! :)
Once 2.9 is released, the 2,9 branch will be locked from further development (except bug fixes)
Development will move to master branch (where it should always be)
Custom branches might still be used and you will be able to return by 
[/code]
git checkout master
[/code]
It's just Chris is working hard to get all of our changes into 2.9 In case the release happens tomorrow.... or the next day ... or....
The following user(s) said Thank You: Roguish

Please Log in or Create an account to join the conversation.

Moderators: cmorley
Time to create page: 0.069 seconds
Powered by Kunena Forum