Is it possible to vary a tapped hole size in a family table?
I have a family table of a hub where the key size varies by F.T. instance. A tapped hole for a set screw over the key also varies based on key size.
If I define a standard tapped hole, is it possible to change the thread in the family table? (i.e. if the Generic has a 1/4-20 thread, can I have an instance with a 3/8-16 thread?)
Yes, but it adds complexity to the table.
You need to have all of the tapped holes added to the generic and then add the features to the table and turn them on and off depending on which size you want in that generic.
Probably could do a more automated method with Pro/Program, too.
Pretty much as was said in the previous answer.
Hole tables are not the same as family tables, though you would think that they should be. Therefore it isn't possible to swap out like features and components do in FT. If you have 2 hole options then you need to model the two hole sizes in as 2 features and suppress the one that you don't want in the family table of the part. Make sure that you don't use the reference for the first hole as that for the second or they will both disappear when you suppress the first one.
Hope this helps.
Just a thought I had, no idea if it would work.
What if you made a UDF of the threaded hole, then varied the UDF with the family table?
It would be a bit of work to set up but it might work.
I would like to have a folder of thread UDFs representing each size thread...2-56, 4-40, 6-32, etc. Each UDF would be table driven and the columns would be the parameters from the hole charts. The parameters I would like to vary are the minor diameter, thread depth, drill depth, drill diameter, drill tip angle, csink dia, and csink angle as depending on how you will machine the threaded hole will effect those parameters. My problem is when I use the UDF and select the instance, the holes always come out the same size...am thinking it has to do with the thread hole parameters being locked...is there a way to unlock them? in the udf or the hole chart? Would also like to have a UDF family table with nested family tables...is that even possible?
There is no way to do this with the standard hole features. As someone else was suggesting above, you could create your own custom threaded hole feature (Helical sweep) and then vary the parameters of that feature. Obviously if you do this you loose the notes that are generated from the hole features. You also loose the ability to create a hole table based off of hole features (although depending on your requirements you might be able to use axes or points instead).
It just seems like a lot of work to get around the standard hole feature limitations. Creating custom holes would be tedious as we have over 30 Many thread series and numerous ways to machine them (which modifies the minor dia, drill depth, c'sink angle, etc.) would make custom threaded hole features tedious and as you mentioned, you would loose the notes. If the "out of the box" options come up short, what would be the next option? Is SmartAssembly for automating components in assemblies or does the scripting language contain functions for manipulating features from parameter values at the part level? I was hoping UDF nested family tables would have been a slick way of drilling down to the hole you want without creating hundreds of UDF's in a folder hierarchy or developing custom apps.
I am not personally familiar with SmartAssembly so maybe someone else with experience could add their two cents. I am sure if you had someone who could use one of the available APIs you could write a custom function to handle this. That may be run of the mill for a 3rd party vendor that has experience with the APIs. If you are new to the APIs though you will quickly find that they are arduous to deal with and not friendly by any means.
Is SmartAssembly for automating components in assemblies or does the scripting language contain functions for manipulating features from parameter values at the part level?
Yes. SmartAssembly is fully capable of manipulating both parts and assemblies (and drawings). It can create new hole features and switch existing hole features to different sizes and series. It is also capable of manipulating any of the hole feature's dimensions or notes after placement.
For example, the CREATE_HOLE command:
Thanks TomU. Looks more object oriented and robust compared with Pro Program. May dive in and see if it can solve the UDF nested family table challenge.
May have a question or two after I get my feet wet.
There are parameters associated with the hole features. I believe some of those drive the geometry, and some are driven by the geometry. I have played with the parameters only in the dwg, as I've never had a need to switch hole size via a family table. You might try digging into the parameters and see if you can add those parameters to your family table to get what you want.
I was able to add the parameters of the hole (derived from the hole chart) to the family table but when I selected the specific instance, the hole dimensions reflected the generic values...the hole is the same size regardless of which instance. When I went to Tools-parameters-feature and selected the hole, I noticed the access value is set to locked...could that be it? If so, how do you unlock the parameters?
If they're locked, that means they are either driven by the geometry, or are locked via a relation (or locked deep in the software where you can't get to them). I'm betting they're locked because they're driven. I don't play with the holes much, but thought I remembered some being driving parameters and some being driven parameters. I just couldn't remember which. I don't use the "note" that Creo provides for holes because it doesn't follow ASME convention (SRSLY PTC?), so, my note used a combination of the dimension diameter of the thread and the parameters, using the ":att_feat" functionality since it seems to work pretty well now (didn't used to). So, a combination of actual dimension and parameters might work for you. See if these files help.
I don't use the "note" that Creo provides for holes because it doesn't follow ASME convention...
Quite a bit of work was done in Creo 8 related to hole features. One of these was the addition of some new hole note tokens. While the default, out-of-the-box notes are still are not ASME compliant, with these new tokens it is now possible to automatically create hole notes (from a .hole file) that are fully ASME compliant. 🙂
Nice! Thanks for listing that. When they first did the "hole" command I was stoked and thought that we could just use the notes....aaaaannnnd no. So, I had to make the file to be able to just cut&paste the text string to create the note needed. I would have like to use ALL the parameters in the note instead of the mismatch of dimension and parameters, but the problem is that in the parameter you get the zero to the left of the decimal point. And while you can adjust the number of digits to the right of the decimal point in a parameter, I haven't found a way to eliminate the zero to the left. So, that would be a great enhancement of they could change that. So, maybe one day we'll update to Creo 8 (by the time PTC will be at Creo 12...).
The thread callout format you have in the FS-MOD temp_thread_callout.txt is more like what we use...straight forward, to the point. We don't use the Creo notes out of the box either. Thanks for the examples.
Yeah, it was nice that they did a hole feature instead of making a cut and manually adding cosmetic threads later, but they did it half-@$$ed. We should have been able to have ASME compliant notes from the start. So, we were forced to do what I did, and dig thru the parameters, which if I remember actually CHANGED from Creo 3 to Creo 4 (because suddenly my text string didn't work anymore - thanks PTC). I think the best thing would be if they had a setting in the config.pro file that automatically formatted the note to either ASME std, or ISO std, and then you just "show" the note like you do a dimension, complete with leader. BOOM! Done, easy peasy. But, nooooo...