MPIUserLimitOutputSqNodeAnalogIo

Declaration

typedef struct MPIUserLimitOutputSqNodeAnalogIo {
    int32_t        synqNetNumber;
    int32_t        nodeNumber;
    int32_t        channel;
    MPIGeneric  newValue;
    MPIDataType dataType;
} MPIUserLimitOutputSqNodeAnalogIo;

Required Header: stdmpi.h
Change History: Added in 04.00.

Description

MPIUserLimitOutputSqNodeAnalogIo holds the data for setting a SynqNet node analog output with a user limit’s output block.

syngNetNumber The number of the SynqNet network where the analog output that is to be set when the user limit fires.
nodeNumber The number of the node whose analog output is to be set when the user limit fires.
channel The analog output channel that will be set when the user limit fires.
newValue The new value the analog output channel will be set to when the user limit fires.

Sample Code

MPI_RESULT         returnValue; 
MPIUserLimit       userLimit;
MPIUserLimitConfig userEventConfig;

    /* ... */

returnValue = mpiUserLimitConfigDefault(&userEventConfig);

msgCHECK(returnValue);

/* Generate an event */

userEventConfig.generateEvent = TRUE;     

/* Use a single condition */

userEventConfig.trigger.type = MPIUserLimitTriggerTypeSINGLE_CONDITION;

   /* Trigger when axis 5's actual position exceeds 300000 */

userEventConfig.trigger.condition[0].type = MPIUserLimitConditionTypeAXIS_ACTUAL_POSITION;
userEventConfig.trigger.condition[0].data.axisActualPosition.axisNumber = 5;
userEventConfig.trigger.condition[0].data.axisActualPosition.position   = 300000;
userEventConfig.trigger.condition[0].data.axisActualPosition.logic      = MPIUserLimitLogicGT;

   /* Setup output block:  Set a SynqNet I/O Node's analog output. */
   /* Set node 3's analog channel 7 to a value of 1234             */

userEventConfig.output.type = MPIUserLimitOutputTypeSQNODE_ANALOG_OUT;
userEventConfig.output.data.sqNodeAnalogOut.nodeNumber   = 3;
userEventConfig.output.data.sqNodeAnalogOut.channel      = 7;
userEventConfig.output.data.sqNodeAnalogOut.newValue.i16 = 1234;

returnValue = mpiUserLimitConfigSet(userLimit, &userEventConfig); 

msgCHECK(returnValue);

See Also

MPIUserLimitOutputData | MPIUserLimitOutputType