National Instruments NI-Motion User Manual

Page 143

Advertising
background image

Chapter 10

Electronic Gearing and Camming

© National Instruments Corporation

10-21

NI-Motion User Manual

// Configure the superimposed move (optional)

// Set to absolute mode

err = flex_set_op_mode(boardID, slaveAxis,

NIMC_ABSOLUTE_POSITION);

CheckError;

// Set the maximum velocity

data.doubleData = velocity;

err = flex_load_move_constraint(boardID, slaveAxis,

TnimcMoveConstraintVelocity, &data);

CheckError;

// Set the target position

err = flex_load_target_pos(boardID, slaveAxis,

targetPos, 0xFF);

CheckError;

// Start the master axis movement

err = flex_start(boardID, slaveAxis, 0x0);

CheckError;

// Wait for move to complete

err = flex_wait_for_move_complete (boardID,

slaveAxis, 0x1, 20000, 20, &moveComplete);

CheckError;

// Error Handling

//

nimcHandleError; //NIMCCATCHTHIS:

// Disable camming

flex_enable_camming_single_axis(boardID, slaveAxis,

FALSE, -1.0);

// Clear (delete) the buffer

flex_clear_buffer(boardID, buffer);

// Check to see if there were any Modal Errors

flex_read_csr_rtn(boardID, &csr);

if (csr & NIMC_MODAL_ERROR_MSG)

{

do

{

// Get the command ID, resource and the error code of the

modal

//error from the error stack on the board

Advertising