Showing results for 
Search instead for 
Do you mean 
Reply

FBM Mapping Features

I'm trying to take a step model from another CAD system and add some smarts to allow FBM to recognize features and interpret them as threaded holes. I have assigned a specific color to the feature and defined face attributes with the thread specifics such as pitch, tap drill dia, etc.

 

I am able to recognize the step model feature by the color and map the attributes to a OOTB feature provided by Siemens.

 

Here's the problem, I am having difficulty getting the chamfer information for the top of the hole machined correctly and the tap driven to the desired depth.

 

I've defined an ANGLE_TOP_CHAMFER and DEPTH_TOP_CHAMFER and passed to the STEP1POCKET_THREAD feature. I also have defined a THREAD_LENGTH and also passed that to the STEP1POCKET_THREAD feature.

 

When I process the features, I get a spot drill operation that only creates a small dia hole to start the drill and the tap is driven to the same depth as the drill.

 

I'm trying to minimize the work needed to make the step model functional with FBM and I am trying to "brute" force a threaded feature into NX with attributes instead of parametric features. Does anyone have any thoughts if this can be done?

 

Thanks, Tom 

8 REPLIES

Re: FBM Mapping Features

Hi Tom,

 

regarding the threaded feature:

The OOTB MKE rules expect to have threads modeled with NX symbolic threads or NX holes. In your case the tapping operation is not able to determine this thread information from the FACES_CYLINDER_n machining area. Therefore, it takes the full length of the cylinder.

You would need to add an add-in to the tapping rule that uses a geometry feature (something like BlindHoleThread) in which you would set the thread depth property to the depth you want to machine.

 

regarding the chamfer:

Do you have a modeled chamfer? I understand you don't. In that case you would have to use the solution by specifying a geometry in an add-in as mentioned before.

If I remember correctly, there may be predefined constants in the OOTB MKE that would allow you to machine chamfers for threaded features without even having a modeled chamfer.

 

I can´t write you more because I don´t have access to NX right know.

Best wishes,
Joachim

In production NX 11.0.1.11 D3

Re: FBM Mapping Features

Joachim,

 

Thanks for the info. Thought I was onto it with the add-on and got it to create the processes with the desired tap depth by defining an add-on of the "NXGeometryFeature" type and the 'Thread Length' parameter equal to my mwf feature thread length attribute. Now it has stopped working and I don't know what I changed that caused it to stop!

 

I'm getting the following message in the information listing:

 

Add-ons created with rule Tap_S1P_thread :

The followwing feature Add-on should be replaced by defining the Machining Area of the operation

HoleBlindThread - NXGeometryFeature :

ThreadLength == 0.3126

ThreadMajorDiameter == 0.1640

ThreadMinorDiameter == 0.1268

ThreadPitch == 0.0313

 

Not sure what is meant by "defining the Machining Area of the operation"? Any thoughts?

 

Tom

 

Re: FBM Mapping Features

This is just a warning and can be ignored, since you are doing this on purpose.

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.0, FBM, MRL 3.1.4 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 10.1
Development: VB.NET, Tcl/Tk    Testing: NX11.0 EAP, NX12.0 EAP

How to Get the Most from Your Signature in the Community

Re: FBM Mapping Features

You did the right thing: Use parametric recognition, pick up the color attribute and use that as a condition to map to a standard STEP1POCKET_THREAD. In the mapping rule you set the Thread_Length parameter.

 

Subsequenly you can insert a hole_making.Tapping operation to machine the STEP1POCKET_THREAD. The operation will take the STEP1POCKET_THREAD.Thread_Length to determine the depth of the operation. The same when you use Create Feature Process with the OOTB machining rules. It is not necessary and not desired to calculate the operation depth yourself with a rule Add-on.

 

If this does not work for your, just send me a PM and I can look at your data.

 

I understand you also want to spot drill deeper so that a drilled hole already has a chamfer, while the chamfer is not modelled in the CAD geometry. This is possible. You must create a rule Add-on for the Spot_Drilling operation which calculates the depth of the operation. You must make this Add-on conditional, such that it is not active when the chamfer is really modelled. To make the Add-on conditional, you have to pass information to the POCKET_ROUND_TAPERED feature via a feature parameter.

Reinier Capelle

NX CAM Development

NX CAM Machinery and Automation

Re: FBM Mapping Features

Hi Tom,

 

the warning has the following background:

 

With the new hole machining operations from NX9 on you state the geometry to be machined by choosing the respective machining area in the operation.

 

For cases like yours or for a reaming operation that should not machine the full cylinder, you have to use the geometry add-in because there is no other solution.

 

Thus, as Stefan wrote you can ignore the warning.

Best wishes,
Joachim

In production NX 11.0.1.11 D3

Re: FBM Mapping Features

I would be happy to ignore the warning, except, the add-on is no longer functioning since the warning began to appear.

 

For Tap_S1P_thread I defined a "depth" add-on of type=NXGeometryFeature and class=HoleBlindThread with the following code:

 

REM Do this for brute force threads

 

is_defined(mwf.MACHINING_RULE) AND mwf.MACHINING_RULE = "POCKET"  

 

depth.'Thread Length' = mwf.THREAD_LENGTH + (2 * mwf.THREAD_PITCH)
depth.ThreadMajorDiameter = mwf.THREAD_MAJOR_DIAMETER
depth.ThreadMinorDiameter = mwf.THREAD_MINOR_DIAMETER
depth.ThreadPitch = mwf.THREAD_PITCH

 

MACHINING_RULE is defined as a face attribute in my step model. This had been working and then suddenly stopped working. I can't tell what has changed that is affecting the output, other than I am now receiving the warning.

 

My Tap_S1P_thread conditions are:

 

REM Application Criteria

 

mwf.THREAD_METHOD = "CUT" OR mwf.THREAD_METHOD = "Cut"
$$ Use of Tap is denied

 

REM Tool Attributes

 

tool.'Tool holder' = constant.Active_tool_holder

 

tool.'State 1'= "DEFINED"

 

REM accomodate sloppy tool definitions
tool.Diameter > mwf.THREAD_MAJOR_DIAMETER - 0.002
tool.Diameter < mwf.THREAD_MAJOR_DIAMETER + 0.002

 

REM accomodate rounding errors in pitch:
IF is_defined(mwf.THREAD_PITCH) AND mwf.THREAD_PITCH > 0 THEN tool.Pitch > mwf.THREAD_PITCH - 0.001
IF is_defined(mwf.THREAD_PITCH) AND mwf.THREAD_PITCH > 0 THEN tool.Pitch < mwf.THREAD_PITCH + 0.001

 

REM Pick correct tap tool group
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNC"    THEN tool.'Tool group' = "03"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNF"    THEN tool.'Tool group' = "03"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UN"     THEN tool.'Tool group' = "03"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNEF"   THEN tool.'Tool group' = "03"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNC-SL" THEN tool.'Tool group' = "04"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNF-SL" THEN tool.'Tool group' = "04"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNC-HC" THEN tool.'Tool group' = "11"
IF is_defined(mwf.THREAD_FORM) AND mwf.THREAD_FORM = "UNF-HC" THEN tool.'Tool group' = "11"

 

REM Less Worked Feature Attributes

 

REM LWF diameter _upper and _lower = 0 forces the predrill operation
REM to use exactly the THREAD_TAPPED_DRILL_SIZE
REM This fixed PR#6628986

REM Since version 8.0.2 the function IT_Class_ISO() will return undefined if UPPER == LOWER.


lwf.DIAMETER_1 = mwf.THREAD_TAPPED_DRILL_SIZE

IF mwf.THREAD_MAJOR_DIAMETER - mwf.THREAD_PITCH = mwf.THREAD_TAPPED_DRILL_SIZE THEN (
lwf.DIAMETER_1_UPPER = 0.0 AND
lwf.DIAMETER_1_LOWER = 0.0 )
ELSE (
lwf.DIAMETER_1_UPPER = mwf.THREAD_TAPPED_DRILL_SIZE*0.025 AND
lwf.DIAMETER_1_LOWER = -mwf.THREAD_TAPPED_DRILL_SIZE*0.025)

lwf.CHAMFER = mwf.CHAMFER

REM lwf.ANGLE_TOP_CHAMFER = mwf.ANGLE_TOP_CHAMFER


REM modified here and for other Rules too for PR 6211235
IF mwf.ANGLE_TOP_CHAMFER > constant.Small_Value
THEN
lwf.DEPTH_TOP_CHAMFER = mwf.DEPTH_TOP_CHAMFER + 0.5*(mwf.DIAMETER_1 - mwf.THREAD_TAPPED_DRILL_SIZE)/TAN(mwf.ANGLE_TOP_CHAMFER)


REM keep the Tip Angle as it was in the designed feature

lwf.DEPTH_1 = mwf.DEPTH_1
lwf.DEPTH = lwf.DEPTH_1 + (mwf.DEPTH - mwf.DEPTH_1)*(lwf.DIAMETER_1/mwf.DIAMETER_1)

lwf.name = mwf.THREAD_CALLOUT + "-" + mwf.THREAD_FORM

REM IF is_defined(mwf.THREAD_LENGTH) AND mwf.THREAD_LENGTH > constant.Small_Value THEN lwf.DEPTH = mwf.THREAD_LENGTH

 

REM Operation Attributes

 

oper.PROGRAM_ORDER_GROUP = "T" + tool.name

oper.Feed_Cut__Unit ="mmpr"
oper.Feed_Cut = tool.Pitch

oper.Check_Collision = "true"
oper.Top_Offset_Value = constant.op_Clearance_Distance

oper.Rapto_Offset_Type ="Distance"
oper.Rapto_Offset_Value = 0

oper.Bottom_Offset_Value = mwf.THREAD_PITCH

oper.IPW_Type = "None"
oper.Geometry_Roles = mwf.FACES_CYLINDER_1

oper.name = "TAP " + mwf.THREAD_CALLOUT + "-" + mwf.THREAD_FORM

 

 I'm looking into handling the chamfer the same way, with an add-on. I'll update when I make any progress.

Re: FBM Mapping Features

Starting with NX 8 it is recommended to use the OperationParameters add-on instead of the oper class in the conditions.

The oper class in the conditions can lead to error due to falsely being interpreted as a condition instead of an assignment.

In addition the oper class does not offer all parameters of the OperationParameters add-on.

 

When you manually create an operation for this hole, what settings do you use in the geometry section.

If I remember correctly, you also have to set UseModelDepth to false to make things work.

The customization tab in MKE offers the dialog location for any setting, so it should be easy to find the missing setting to make things work again.

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.0, FBM, MRL 3.1.4 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 10.1
Development: VB.NET, Tcl/Tk    Testing: NX11.0 EAP, NX12.0 EAP

How to Get the Most from Your Signature in the Community

Re: FBM Mapping Features

OK, here's what I've found so far...

 

Didn't need to use the add-on for the tap depth. Defining the face property named THREAD_LENGTH was sufficient during the feature mapping.

 

The missing piece was another property named THREAD_DIAMETER_NR. Received from GTAC:

 

This value indicates which of the diameters of a stepped hole/pocket has the thread defined.

So for a STEP2 feature this could be 1 or 2

For a STEP1 feature is can only be set to 1

 

This got my tap depths modified as desired.

 

Now, on to try and deal with spot drilling the thread countersink when the engineer didn't model one and also recognizing when they did....

Learn online





Solution Information