typedef struct MPIControlConfig {
       	   MPIControlConfigDynamicMemAlloc   dynamicMemAlloc;
       	   MPIControlConfigEnabled           enabled;
       	   MPIControlProcessMap              processMap;
	   int32_t                              userVersion;
	   char                              userLabel[MPIObjectLabelCharMAX+1]; /* +1 for NULL terminator */
	   int32_t                              syncInterruptPeriod;
    } MPIControlConfig;


Required Header: control.h

Change History: Modified in 04.00. Modified in the 03.04.00.


MPIControlConfig is a structure that specifies the controller configurations.  It contains the dynamic memory allocations for the resources and configurations for the controller’s operation.

The controller’s memory allocation is dynamic, allowing it to scale to fit the motion system.  While dynamic memory allocation provides exact fit flexibility, it also requires initial planning for applications that need to support multiple network topologies or need to scale the controller’s object counts during operation.  The control object count configuration has two parts:  dynamicMemAlloc and enabled.  The dynamicMemAlloc count determines the memory allocated to the number of objects and enabled determines how many objects are processed by the controller.

WARNING!  Configuring the control dynamicMemAlloc object counts will clear the controller’s dynamic memory and any configurations previously written to the controller’s dynamic memory is lost.  It is recommended to configure the control dynamicMemAlloc object counts first, BEFORE configuring other objects.

dynamicMemAlloc This structure contains the object counts for the controller’s dynamic memory allocation.
enabled This structure contains the object counts for the controller to process.
processMap This structure contains the controller’s operation order for sub-sampling objects.
userVersion A 32 bit user defined field. The userVersion is used to mark a firmware image with an identifier. This is useful if multiple controller firmware images are saved to a file.
userLabel This value consists of 16 characters and is used to label the control object for user identification purposes. Note: The userLabel field is not used by the controller.
syncinterruptPeriod samples/interrupt. Configures the controller to send a hardware interrupt to host computer every n controller samples. 0 = disabled, 1 = every sample, 2 = every other sample, etc.

See Also

mpiControlConfigGet | mpiControlConfigSet | mpiControlTimingConfigGet | mpiControlTimingConfigSet