confused drilling path

Here's the place for discussion related to CAM/CNC and the development of the Path module.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

confused drilling path

Post by freman »

Hi,

I just pulled a fresh copy of master a couple of days back and knocked up a simple plate with four holes in it.

I added a drill path which did not select "peck" option.

When I look at the output I'm getting an air cut G80 down to stock; G0 to safe-height, then a G81cutting the same hole in the air hole before actually cutting the metal.

This is obviously a gross waste of machine time and seems rather confused. Why is it mixing G80 and G81 to get this job done?

This does not seem right. What is going on ?

Thanks.

OS: Fedora 34 (Thirty Four) (LXQt//usr/share/xsessions/lxqt)
Word size of FreeCAD: 64-bit
Version: 0.20.26155 (Git)
Build type: Release
Branch: master
Hash: 0926a4148bcff11249fd4f56bc30256102ffe105
Python version: 3.9.7
Qt version: 5.15.2
Coin version: 4.0.0a
OCC version: 7.5.0
Locale: English/United Kingdom (en_GB)

Attachments
ipn-holes-peck.txt
(1.18 KiB) Downloaded 25 times
pecked-holes.FCStd
(23.89 KiB) Downloaded 29 times
GeneFC
Veteran
Posts: 5373
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: confused drilling path

Post by GeneFC »

freman wrote: Wed Oct 20, 2021 8:41 pm This does not seem right. What is going on ?
Drilling used to work perfectly. I used it for thousands of holes.

A little more than two years ago someone had a problem when trying to drill a bunch of holes on a non-planar surface, all while using a single G81 operation. Broken tools and damaged material.

The solution was to kill the canned operation (G81) after every hole by adding a G80 cancel command. Extra hops up to the Clearance height were also added.

I argued quite strenuously against this silliness, but I lost.

I now have a modified postprocessor that removes all G80 commands. They are never really needed, since any motion command, such as G1, will cancel the G81 canned operation.

Gene
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: confused drilling path

Post by freman »

Thanks Gene. So it's a case of broke by design :(

I recall a discussion about a year about safe ht vs clearance ht, which seems to have the same root problem of not doing things the right for some distorted logic. I think it fizzled out and it just got dropped.

Could you post you post processor or PM me? That could save me some time writing it. This just taking a stupid amount of time cutting air.

Thanks for confirming it was not just me looking at it backwards.
GeneFC
Veteran
Posts: 5373
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: confused drilling path

Post by GeneFC »

Sorry, I did not remember my final solution correctly. I changed the PathDrilling.py instead of the postprocessor.

I removed:

Code: Select all

     # Cancel canned drilling cycle
            self.commandlist.append(Path.Command('G80'))
            self.commandlist.append(Path.Command('G0', {'Z': obj.SafeHeight.Value}))
I tried several things and ended up with this solution. I have not needed to drill a large number of holes lately so I forgot what I did. :oops:

Gene
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: confused drilling path

Post by freman »

Brilliant , that saved me lots of time. Since I'm building from src anyway, that's just a tweek I have to put in each time.
Thx. 8-)
GeneFC
Veteran
Posts: 5373
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: confused drilling path

Post by GeneFC »

Just make sure you check that the resulting path is sensible.

Gene
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: confused drilling path

Post by freman »

OK, I'll only say it was your fault if it goes badly wrong and I need someone else to blame ;)
Post Reply