Motion Control
MultiFlex PCI 1000 Series User's Manual
95
// Clockwise arc move #1
//
MCBlockBegin( hCtlr, MC_BLOCK_CONTR_CW, 1 );
MCArcCenter( hCtlr, 1, MC_CENTER_ABS, 10000.0 );
MCArcCenter( hCtlr, 2, MC_CENTER_ABS, 0.0 );
MCMoveAbsolute( hCtlr, 1, 20000.0 );
MCMoveAbsolute( hCtlr, 2, 0.0 );
MCBlockEnd( hCtlr, NULL );
// Clockwise arc move #2
//
MCBlockBegin( hCtlr, MC_BLOCK_CONTR_CCW, 1 );
MCArcCenter( hCtlr, 1, MC_CENTER_REL, -10000.0 );
MCArcCenter( hCtlr, 2, MC_CENTER_REL, 0.0 );
MCMoveRelative( hCtlr, 1, -20000.0 );
MCMoveRelative( hCtlr, 2, 0.0 );
MCBlockEnd( hCtlr, NULL );
Arc motions by specifying the radius and end point
The
MCArcRadius( )
function is used to execute an arc move by specifying the radius and end point of
an arc. The
Axis
parameter should equal the controlling axis for the contour move. The parameter
Radius
should equal the radius of the arc. If the arc is greater than 180 degrees, the parameter
Radius
must be
expressed as a negative number. The
MCMoveAbsolute( )
or
MCMoveRelative( )
commands are used
to specify the end point of the arc. An example of two arc motions is shown below:
MCSetOperatingMode( hCtlr, 1, 1, MC_MODE_CONTOUR );
MCSetOperatingMode( hCtlr, 2, 1, MC_MODE_CONTOUR );
// 90 degree Clockwise arc move #1
//
MCBlockBegin( hCtlr, MC_BLOCK_CONTR_CW, 1 );
MCArcRadius( hCtlr, 1, 10000.0 );
MCMoveRelative( hCtlr, 1, 10000.0 );
MCMoveRelative( hCtlr, 2, 10000.0 );
MCBlockEnd( hCtlr, NULL );
// 270 degree Clockwise arc move #2
//
MCBlockBegin( hCtlr, MC_BLOCK_CONTR_CW, 1 );
MCArcRadius( hCtlr, 1, -10000.0 );
MCMoveRelative( hCtlr, 1, -10000.0 );
MCMoveRelative( hCtlr, 2, -10000.0 );
MCBlockEnd( hCtlr, NULL );
Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com