.

MPIControlMessage / MEIControlMessage

Definition: MPIControlMessage

typedef enum {
    MPIControlMessageLIBRARY_VERSION,
    MPIControlMessageADDRESS_INVALID,
    MPIControlMessageCONTROL_INVALID,
    MPIControlMessageCONTROL_NUMBER_INVALID,
    MPIControlMessageTYPE_INVALID,  
    MPIControlMessageINTERRUPTS_DISABLED,
    MPIControlMessageEXTERNAL_MEMORY_OVERFLOW,
    MPIControlMessageADC_COUNT_INVALID,               
    MPIControlMessageAXIS_COUNT_INVALID,
MPIControlMessageAXIS_FRAME_COUNT_INVALID, MPIControlMessageCAPTURE_COUNT_INVALID, MPIControlMessageCOMPARE_COUNT_INVALID, MPIControlMessageFILTER_COUNT_INVALID, MPIControlMessageMOTION_COUNT_INVALID, MPIControlMessageMOTOR_COUNT_INVALID, MPIControlMessageSAMPLE_RATE_TO_LOW, MPIControlMessageSAMPLE_RATE_TO_HIGH, MPIControlMessageRECORDER_COUNT_INVALID,
MPIControlMessageCOMPENSATOR_COUNT_INVALID,     MPIControlMessageAXIS_RUNNING,     MPIControlMessageRECORDER_RUNNING,
MPIControlMessagePACK_ALIGNMENT,
} MPIControlMessage;
  Change History: Modified in the 03.04.00.

Description

MPIControlMessage is an enumeration of Control error messages that can be returned by the MPI library.

MPIControlMessageLIBRARY_VERSION
  The MPI Library does not match the application. This message code is returned by mpiControlInit(…) if the MPI's library (DLL) version does not match the MPI header files that were compiled with the application. To correct this problem, the application must be recompiled using the same MPI software installation version that the application uses at run-time.
MPIControlMessageADDRESS_INVALID
  The controller address is not valid. This message code is returned by mpiControlInit(…) if the controller address is not within a valid memory range. mpiControlInit(…) only requires memory addresses for certain operating systems. To correct this problem, verify the controller memory address.
MPIControlMessageCONTROL_INVALID
  Currently not supported.
MPIControlMessageCONTROL_NUMBER_INVALID
  The controller number is out of range. This message code is returned by mpiControlInit(…) if the controller number is less than zero or greater than or equal to MaxBoards(8).
MPIControlMessageTYPE_INVALID
  The controller type is not valid. This message code is returned by mpiControlInit(…) if the controller type is not a member of the MPIControlType enumeration.
MPIControlMessageINTERRUPTS_DISABLED
  The controller interrupt is disabled. This message code is returned by mpiControlInterruptWait(…) if the controller's interrupt is not enabled. This prevents an application from waiting for an interrupt that will never be generated. To correct this problem, enable controller interrupts with mpiControlInterruptEnable(…) before waiting for an interrupt.
MPIControlMessageEXTERNAL_MEMORY_OVERFLOW
  The controller's external memory will overflow. This message code is returned by mpiControlConfigSet(…) if the dynamic memory allocation exceeds the external memory available on the controller. To correct the problem, reduce the number/size of control configuration resources or use a controller model with a larger static memory component.
MPIControlMessageADC_COUNT_INVALID
  The ADC count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of ADCs is greater than MEIXmpMAX_ADCs.
MPIControlMessageAXIS_COUNT_INVALID
  The axis count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of axes is greater than MEIXmpMAX_Axes.
MPIControlMessageAXIS_FRAME_COUNT_INVALID
 

This message is returned from mpiControlConfigSet(...) if the value for MPIControlConfig.axisFrameCount is not a power of two or if axisFrameCount is less than MPIControlMIN_AXIS_FRAME_COUNT.

MPIControlMessageCAPTURE_COUNT_INVALID
  The capture count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of captures is greater than MEIXmpMAX_Captures.
MPIControlMessageCOMPARE_COUNT_INVALID
  The compare count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of compares is greater than MEIXmpMAX_Compares.
MPIControlMessageFILTER_COUNT_INVALID
  The filter count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of filters is greater than MEIXmpMAX_Filters.
MPIControlMessageMOTION_COUNT_INVALID
  The motion count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of motions is greater than MEIXmpMAX_MSs.
MPIControlMessageMOTOR_COUNT_INVALID
  The motor count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of motors is greater than MEIXmpMAX_Motors.
MPIControlMessageSAMPLE_RATE_TO_LOW
  The controller sample rate is too small. This message code is returned by mpiControlConfigSet(…) if the sample rate is less than MPIControlMIN_SAMPLE_RATE (1kHz). SynqNet does not support cyclic data rates below 1kHz. The controller's sample rate specifies the SynqNet cyclic rate.
MPIControlMessageSAMPLE_RATE_TO_HIGH
 

The controller sample rate is too big. This message code is returned by mpiControlConfigSet(…) if the sample rate is greater than MPIControlMAX_SAMPLE_RATE (100kHz).

MPIControlMessageRECORDER_COUNT_INVALID
 

The recorder count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of recorders is greater than MEIXmpMAX_Recorders.

MPIControlMessageCOMPENSATOR_COUNT_INVALID
 

The compensator count is not valid. This message code is returned by mpiControlConfigSet(…) if the number of compensators is greater than MPIControlMAX_COMPENSATORS.

MPIControlMessageAXIS_RUNNING
 

Attempting to configure the control object while axes are running. It is recommended that all configuration of the control object occur prior to commanding motion.

MPIControlMessageRECORDER_RUNNING
 

Attempting to configure the control object while a recorder is running. It is recommended that all configuration of the control object occur prior to operation of any recorder objects.

MPIControlMessagePACK_ALIGNMENT
 

The application was compiled with a packing alignment that is different from the MPI library.

For Windows, use the MSVC “/Zp8” compiler option or surround the MPI header files with the following #pragma pack statements:

#pragma  pack(push, 8)
#include "stdmpi.h"
#include "stdmei.h"
#include "apputil.h"
#pragma  pack(pop)

For Linux, use the “-malign-double” compiler option.

 

Definition: MEIControlMessage

typedef enum {
    MEIControlMessageFIRMWARE_INVALID,
    MEIControlMessageFIRMWARE_VERSION_NONE,
    MEIControlMessageFIRMWARE_VERSION,
    MEIControlMessageFPGA_SOCKETS,
    MEIControlMessageBAD_FPGA_SOCKET_DATA,
    MEIControlMessageNO_FPGA_SOCKET,
    MEIControlMessageINVALID_BLOCK_COUNT,
    MEIControlMessageSYNQNET_OBJECTS,
    MEIControlMessageSYNQNET_STATE,
    MEIControlMessageIO_BIT_INVALID,
} MEIControlMessage;

Description

MEIControlMessage is an enumeration of Control error messages that can be returned by the MPI library.

MEIControlMessageFIRMWARE_INVALID
  The controller firmware is not valid. This message code is returned by mpiControlInit(…) if the MPI library does not recognize the controller signature. After power-up or reset, the controller loads the firmware from flash memory. When the firmware executes, it writes a signature value into external memory. If mpiControlInit(…) does not recognize the signature, then the firmware did not execute properly. To correct this problem, download firmware and verify the controller hardware is working properly.
MEIControlMessageFIRMWARE_VERSION_NONE
  The controller firmware version is zero. This message code is returned by control methods do not find a firmware version. This indicates the firmware did not execute at controller power-up or reset. To correct this problem, download firmware and verify the controller hardware is working properly.
MEIControlMessageFIRMWARE_VERSION
  The controller firmware version does not match the software version. This message code is returned by control methods if the firmware version is not compatible with the MPI library. To correct this problem, either download compatible firmware or install a compatible MPI run-tim library.
MEIControlMessageFPGA_SOCKETS
  The maximum number of FPGA socket types has been exceeded. This message code is returned by meiFlashMemoryFromFile(…) if the controller has more FPGA types than the controller has flash memory space to support them.
MEIControlMessageBAD_FPGA_SOCKET_DATA
  Currently not supported.
MEIControlMessageNO_FPGA_SOCKET
  The FPGA socket type does not exist. This message code is returned by meiFlashMemoryFromFile(…) if the controller does not support the FPGA type that was specified in the FPGA image file. To correct this problem, use a different FPGA image that is compatible with the controller.
MEIControlMessageINVALID_BLOCK_COUNT
  Currently not supported.
MEIControlMessageSYNQNET_OBJECTS
  Currently not supported.
MEIControlMessageSYNQNET_STATE
  The controller's SynqNet state is not expected. This message code is returned by mpiControlInit(…), mpiControlReset(…) and mpiControlConfigSet(…) if the SynqNet network initialization fails to reach the SYNQ state. To correct this problem, check your node hardware and network connections.
MEIControlMessageIO_BIT_INVALID
  The controller I/O bit is not valid. This message code is returned by meiControlIoGet(...) and meiControlIoSet(...) if the controller I/O bit is not a member of the MEIControlIoBit enumeration.

See Also

 

 

       Legal Notice  |  Tech Email  |  Feedback
      
Copyright ©
2001-2021 Motion Engineering