FreeCAD icon indicating copy to clipboard operation
FreeCAD copied to clipboard

[Problem] PartDesign/Hole feature threading clearance accepts only positive values

Open TCSMedia opened this issue 2 years ago • 5 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Problem description

When trying to model a threaded rod it seems to be the easiest solution to create a threaded hole object and make a Boolean Cut with it on a proper sized cylinder. If we want to match the size of the threaded socket (or nut) and the rod, proper clearance is required. The PartDesign/Hole feature has the clearance, but it accepts only positive values (which grows the hole size). I can type in negative value on the "Hole parameters" panel, and the view update shows the perfect (shrunk) result, but upon clicking the OK button the clearance sets back to 0,00. This is a huge problem, because the shrunk size threaded hole object could be used as a perfect cutting die for modelling the threaded rod.

Full version info

OS: Windows 10 build 19045
Word size of FreeCAD: 64-bit
Version: 0.21.1.33668 +26 (Git)
Build type: Release
Branch: (HEAD detached at 0.21.1)
Hash: f6708547a9bb3f71a4aaade12109f511a72c207c
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.3
Locale: Hungarian/Hungary (hu_HU)
Installed mods: 
  * A2plus
  * ExplodedAssembly
  * fasteners
  * fcgear
  * Manipulator

Subproject(s) affected?

None

Anything else?

No response

Code of Conduct

  • [X] I agree to follow this project's Code of Conduct

TCSMedia avatar Jan 06 '24 13:01 TCSMedia

Do you know the Fasteners Workbench?

Roy-043 avatar Jan 07 '24 09:01 Roy-043

Yes, I know and used the Fasteners workbench, but for this technique it was also inappropriate. For anyone who is interested let me explain in details:

I'm trying to model a matching M36 sized threaded rod / nut pair for use with FDM 3D printing. The new modeled thread option of the Hole feature is perfect for the nut, but the problem is that the nut is already designed and printed (I'm not the designer for that), so it's size cannot be changed (and it's a nominal M36 sized hole).

So I needed some solution for the rod to be modelled with matching dimensions which would require smaller outer diameter also to be able to fit (obviously the clearance is not zero). I was aware of the Fasteners workbench's ScrewDie feature which is exactly for this purpose: make a boolean cut with in on a proper sized rod. Unfortunately two issues arised:

  • the size of the threaded hole is the same as the nominal M36 nut, without any clearance (so upon exporting and printing the rod it won't fit the nut)
  • the Mesh conversion of the rod which is done with boolean cut takes several minutes and produces a gigantic file size (about 150 MB!) in STL export

The only solution right now was to shrink the modeled rod in the X and Y directions to a small amount, but this is a huge problem because it shrinks other features modeled on the rod as well.

So in short: it would be highly preferable for the Hole feature to handle well the negative Custom Thread Clearance parameter. And what's funny, that it can do that right now when I set it to negative value, the model displays the proper size, but upon pressing OK it resets to 0,00 and the model jumps back to original.

TCSMedia avatar Jan 07 '24 12:01 TCSMedia

Trying to put in a negative number on clearances was something I also did. It was what felt intuitive to me with my rather limited understanding of CAD. I have yet to explore into addons.

My use case is very similar to @TCSMedia. I'm also FDM 3D printing, and tolerances are rather high in the positive direction (screws get bigger, holes shrink). This means that for parts to fit, the clearance of the hole needs to account for the tolerance on the screw, but by doing so, any existing parts that cannot be modified (e.g. metal screws) can no longer fit in the holes, as the holes are too much clearance.

A temporary solution is to scale the entire screw down, but you scale that entire model, which could have been trivially solved by allowing negative clearances.

uwidev avatar Jan 19 '24 07:01 uwidev