Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X
Hi all,
I have a "nice to have" requirement from my engineering staff that I would like to investigate.
When placing threaded holes with the hole function in Creo the default values for thread depth and drill depth is not according to our company standard.
I'm finding it hard to get the proper information on how to change this, if its even possible. I did find an article(CS99906) on PTC Support that states:
"The values, such as DRILL_DEPTH and THREAD_DEPTH, that are entered manually have no default settings and are not user controllable; they are preset according to the existing geometry size and previously entered values. And also some predefined rules such as Thread Depth = Drill Depth/Depth Ratio."
So, my question is, can you controll the deafult values for drill depth and thread depth.
For example if I add a M8 hole, I would like it to be:
DRILL_DEPTH 16
THREAD_DEPTH 12
(mm)
It is likely that those values are driven values rather than driving values.
It is the hole tables that can be edited. If the value is not there then there is no default.
What you might be able to do with relations is drive the drill depth based on thread depth. I found this to be a shortcoming in the software since quite often, shops have a standard rule for how deep the drilled hole has to be for a given full thread tap depth (plus tap taper). Of course, then you also have bottom tap options which throws in a whole new column of data. I suppose by the same token, you can drive the thread depth by relations based on the either the major diameter or the pitch. I prefer relations such as this to be driven at the feature relation level, the hole feature in this case. But this does make it an additional operation when the hole is created. Maybe a UDF is called for here to make sure it is all managed consistently.
Thanks Antonius,
I'm curious about the suggestion about relation on feature. Would this go into my startpart? Wouldn't this change hole geometry back to deafault values upon regeneration? The wish is to get correct default values at creation, with the possibility to change to something else.
I guess I could always create some mapkeys for this, at least for the basic dimensions M4-M10 perhaps.
In the case of rule-based manufacturing, when 95% of the time you use a common rule to define drill depth or even tap depth based on the thread parameters, you can use a UDF to drive the feature based on the thread specification. This is true only for non-though holes of course. Two parameters that can be automated are thread depth (less common since it depends on the assembly interface) and the drill depth (point or shoulder) depending on the tap used and the clearance required. The relation can be written with the UDF into the feature's relation (rather than part relation). And at that point, yes, the relation will "freeze" the values to your company's "rule" if you will. The relation can always be removed or varied. Part of that relation can determine if it is a bottom tap or not using if IF statement. Be aware however, that changing values in a hole feature seems to rewrite the entire feature by replacing everything instead of changing everything. You can only tweak a few dimensions without this disassociation, but replacing the hole size will generate in essence a whole new hole.
Therefore, Tom's recommendations is a valid one in that making the hole a revolve, for instance, with a cosmetic thread, you have more control over the feature. You can do this with your intelligence built in using the UDF interface to interrogate the designer and then provide the solution.
The real advantage tot he true hole feature is the internal annotation structure. If the annotation note related to a hole feature is important to you, you will want to continue using this. Otherwise you will have to structure something similar on your own.
In general, this may be a lot of work that isn't worth it. I still have a notebook by my side that covers all my design rules. I would have likes a tap clearance value for non-through holes in the hole tables that would drive the initial depth of the hole in relation to the thread depth and maybe a switch for bottom tap or conventional.
Fundamentally, no. The built in hole features have some significant limitations. I see three options.
1.) Use the hole feature and then manually set the values to what you want after feature creation.
2.) Create your own UDFs that contain hole features, but with their values already set to your preferred lengths.
3.) Create your own custom holes (extrudes, cosmetic threads, etc.) with your own relations, parameters, etc.
Both options 2 and 3 require you to only place holes using UDFs, NOT with the built in hole feature interface.
Option 3 can be very powerful and infinitely flexible, but some of the built in things you can do with a single hole feature are not always available for a group of features (hole charts on drawings, some patterning functionality, etc.)