You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>ICAM</strong> <strong>Virtual</strong> <strong>Machine</strong> ® <strong>Virtual</strong> <strong>Machine</strong> Reference, Model Customization<br />
Simulation Macro Functions, <strong>Virtual</strong> <strong>Machine</strong> Probe and Collision Test Functions<br />
4.4.5.14 <strong>Virtual</strong> <strong>Machine</strong> Probe and Collision Test Functions<br />
$FMSCEZ Summary of collision/over-travel events<br />
$FMSGCS Get coordinate system information<br />
$FMSLSR Laser probing<br />
$FMSPDAT Details of probe/collision/over-travel events<br />
$FMSPPOS Axes positions at touch<br />
$FMSPRID Select the object to be used as a probe<br />
$FMSPROB Activate/deactivate probing<br />
$FMSVCL Enable/disable collision testing on objects<br />
The Probe and Collision Test functions can be used to simulate the actions of a touch or laser<br />
probe, and to check for collision and over-travel event information.<br />
The following steps are necessary for touch probing:<br />
1. Call the $FMSPRID function to designate an object that will be used for touch probing.<br />
2. Call the $FMSPROB function to enable probing (i.e., arm the probe).<br />
3. Move the model via GENER or CERUN motion processing, or via $FMSMOVE calls.<br />
4. Check for probe touch via the $VMPRCOD probe status variable.<br />
5. Retrieve basic touch information via the $VMXFER and $VMP* variables.<br />
6. Retrieve details via calls to the $FMSPDAT and $FMSPPOS functions.<br />
7. Optionally call $FMSVCL to disable further collision checking touching objects.<br />
8. Call the $FMSPROB function again to disable probing.<br />
9. Call the $FMSPRID function again to disable the probe object.<br />
The following steps are necessary for laser probing:<br />
1. Call $FMSGCS to obtain the coordinate frame in which the measurement will be taken.<br />
2. Call the $FMSLSR function with a point and vector that specifies the origin and direction<br />
of the light beam, and test the return value for measurement information.<br />
The following steps are necessary to check for collisions and over-travels:<br />
1. Optionally call $FMSVCL to enable/disable collision checking on specific objects.<br />
2. Move the model via GENER or CERUN motion processing, or via $FMSMOVE calls.<br />
3. Retrieve basic collision/over-travel event information via the $VMXFER variable.<br />
4. Call $FMSCEZ to obtain summary information concerning each event.<br />
5. Call $FMSPDAT to obtain details concerning each event.<br />
194 <strong>ICAM</strong> Technologies Corporation – Proprietary