How aPriori calculates achievable tolerance ranges

Given a process and a GCD’s size, aPriori can determine the range of tolerances that the process can achieve for that GCD. The achievable tolerance range helps determine operation feasibility; the tolerance required for the GCD must be no tighter than the best achievable tolerance for the operation’s parent process.

The achievable tolerance range also helps aPriori adjust cycle times based on required tolerance ee How aPriori adjusts cycle times based on tolerances.

aPriori determines the best and worst tolerance that a given process can achieve for a given GCD as follows:

  1. Determine the best and worst achievable tolerance grade for the process.

    • The lookup table tblGtolProcessCapabilities associates two International Tolerance (IT) Grades with each process, the best achievable tolerance grade and the worst achievable tolerance grade.

    • Some entries in the table refer to a group of processes rather than an individual process; in this case, every process in the group has the same best and worst achievable tolerance grades.

    • aPriori looks up the best and worst achievable grades by process (or group) in tblGtolProcessCapabilities. Note that IT Grades are independent of feature size but can be used together with size to obtain a literal tolerance range.

  2. Determine a size value for the GCD as follows:

    GCD

    GTOL Category

    GCD Size

    Simple Hole

    True Position, Tolerance (Co-ordinate)

    Part length/2

    Simple Hole

    Straightness

    GCD Length

    Simple Hole

    All other GTOL categories

    Diameter

    Curved Wall

    Diameter Tolerance, Runout, Total Runout, Symmetry, Tolerance (Co-ordinate)

    Diameter; bend diameter if diameter is null; Sqrt(Finished area) if both diameter and bend diameter are null.

    Curved Wall

    Parallelism

    Wall Height

    Curved Wall

    Position Tolerance

    Part length / 2

    Keyway

    Tolerance (Co-ordinate), Straightness, Symmetry

    Max of GCD length, width, and height

    Remaining GCDs

    Remaining Categories

    Sqrt(Finished area)

Note: True Position in the GCD window = Position Tolerance in the cost model and the gtolProcessCapable table.

Note: Tolerance (Co-oridinate) in the GCD window = Tolerance in the cost model and the gtolProcessCapable table.

  1. Use the size value from step 2 and the best or worst achievable tolerance grade from step 1 in the following formula to calculate best or worst achievable tolerance. This is the literal tolerance value that takes GCD size into account

    Tolerance = 10^(0.2 * (Grade - 1)) * (0.45 * Size ^ (1 / 3) + 0.001 * Size) / 1000

    • Note that, unlike achievable tolerances, the achievable roughness for a process and GCD does not depend on the GCD’s size. Literal achievable roughness ranges are stored directly in tblGtolProcessCapabilities, and they require no conversion based on GCD size.

Note: Throughout the UI, all Rz and Ra specifications are clearly labeled. If you encounter a roughness specification with no Rz or Ra label, it is Ra. By default, if no Roughness Rz value is specified, the default “Best Achievable”/”Worst Achievable” values for Roughness Rz are 4.5 times the value of the specified Roughness Ra.

Besides GCD size and process, another factor that can affect best achievable tolerance is the GCD’s distance from some relevant datum feature, but aPriori does not currently take this into account.

Note: The Injection Molding process allows for significantly tighter “Best Achievable” surface roughness than machining processes such as those that might be used to make the mold. This is because the best tolerances in Injection Molding are achieved via hand polishing of the mold surface, which is not available in other processes. This results in Injection Molding being more capable than other processes relating to tolerance/surface finish.