### Using Feature Based Measurement

Feature Based Measurement (FBM) is a program formatting method that you can use to measure arbitrarily selected features without concern for the motion path between those features. When you use FBM, only the required moves, probe changes, and tip rotations will be executed. This feature facilitates a collision-free execution of the part program for a certain selection.

FBM can be useful in these situations:

- You can create a program for a completely manufactured part and still be able to use the same program to measure the part after each operation.

- You can quickly measure only selected features of interest. A real-world application of this could be changing tools on a fully-automated manufacturing line.

It can also be useful in any other situation in which you want to run a partial program.

Using FBM

PC-DMIS's FBM functionality is only available if your portlock is programmed with the Feature Based Measurement module.

FBM functionality ties directly into the GROUP command.

Using FBM to Program

To program using FBM:

1. Create a PC-DMIS measurement program. For example, consider a part that is manufactured in two operations named Operation1 and Operation2. The measurement program will measure all features manufactured in both operations.

2. Create groups around features in each operation. For more information, see Inserting Groups.

3. View the group inside the Edit window's Command mode. You will see that the FEATURE BASED MEASUREMENT/ENABLED=NO statement appears on the second line of the GROUP command block. By default, this statement is set to NO. Change it to YES.

Yellow highlighted lines show that the FBM statements are part of the GROUP command block

Executing the FBM Program

The following apply to executing an FBM program:

- FBM provides you with the ability to run partial programs. Mark the features that you want to measure in the measurement program.

- When you run the program, PC-DMIS will determine if any measurement command is marked in the group for which FBM is enabled. If no measurement command is marked in the enabled group, all other motion commands in this group (move points, tip change commands, etc.) will not be executed, whether marked or not.

- If any measurement command is marked in the FBM enabled group, all commands in that group will be executed.

- All commands in an FBM disabled group (ENABLED=NO) will be executed when marked, even if no measurement command is marked.

Rules of FBM

The following rules apply to FBM:

- Any command that exists outside of all groups; that is, it does not belong to a group, has a "global scope". These commands are always executed according to their marked status.

- If a GROUP command has FBM set to NO, all commands in that group will execute according to its marked status.

- If a GROUP command has FBM set to YES, all marked commands in that group will execute only if the group contains one or more marked measurement commands.

- Nested groups follow the rules above. If an inner group contains a measurement command, its outer group will also execute. For example, suppose you have two groups, GROUP A and GROUP B, and GROUP B is nested inside GROUP A. If FBM is set to YES for both GROUP commands, but only GROUP B generates measurement motion, GROUP A will also execute its marked commands.

Marking Features and Dimensions

To facilitate automation to work with FBM, an XML-based marking solution is used. PC-DMIS can mark features, dimensions, and groups only by importing an XML file (Edit | Markings | Import Feature Based Measurement).

The format of the XML file should be:

<?xml version="1.0"?>

<!--PC-DMIS XML Output File-->

<FeatureBasedMeasurement>

<Feature ID="CIR1" Marked="True" MarkDependencies="True" UID="57" />

<Feature ID="PNT2" Marked="True" MarkDependencies="True" UID="93" />

<Dimension ID="LOC1" Marked="True" MarkDependencies="True" UID="169" />

<Dimension ID="LOC2" Marked="True" MarkDependencies="True" UID="268" />

</FeatureBasedMeasurement>

When you import an XML file, PC-DMIS will mark the features, dimensions, and groups as indicated in the file. All other measurement commands will be unmarked. Non-measurement commands (move points, clear plane, tip change, etc.) are unaffected and will maintain their previously-marked state.