diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..9712a0991 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +#Which files need CRLF handling +* text=auto +*.sh eol=lf +*.bat eol=crlf +*.cmd -text diff --git a/motorApp/AerotechSrc/ParameterId.h b/motorApp/AerotechSrc/ParameterId.h index a2da635c1..e527f8a52 100644 --- a/motorApp/AerotechSrc/ParameterId.h +++ b/motorApp/AerotechSrc/ParameterId.h @@ -1,768 +1,768 @@ -/// \file ParameterId.h -/// \brief File contains parameter identifiers -/// -/// This file is version dependant and needs to match the rest of the software - -#ifndef __PARAMETER_ID_H__ -#define __PARAMETER_ID_H__ - - -/// \brief Represents a parameter identifier -typedef enum { - /// \brief The AxisType parameter - PARAMETERID_AxisType = ( (0 << 24) | 0 ), - /// \brief The ReverseMotionDirection parameter - PARAMETERID_ReverseMotionDirection = ( (0 << 24) | 1 ), - /// \brief The CountsPerUnit parameter - PARAMETERID_CountsPerUnit = ( (0 << 24) | 2 ), - /// \brief The ServoRate parameter - PARAMETERID_ServoRate = ( (0 << 24) | 3 ), - /// \brief The ServoSetup parameter - PARAMETERID_ServoSetup = ( (0 << 24) | 4 ), - /// \brief The GainKpos parameter - PARAMETERID_GainKpos = ( (0 << 24) | 5 ), - /// \brief The GainKi parameter - PARAMETERID_GainKi = ( (0 << 24) | 6 ), - /// \brief The GainKp parameter - PARAMETERID_GainKp = ( (0 << 24) | 7 ), - /// \brief The GainVff parameter - PARAMETERID_GainVff = ( (0 << 24) | 8 ), - /// \brief The GainAff parameter - PARAMETERID_GainAff = ( (0 << 24) | 9 ), - /// \brief The GainKv parameter - PARAMETERID_GainKv = ( (0 << 24) | 10 ), - /// \brief The GainKpi parameter - PARAMETERID_GainKpi = ( (0 << 24) | 11 ), - /// \brief The ServoFilter0CoeffN0 parameter - PARAMETERID_ServoFilter0CoeffN0 = ( (0 << 24) | 12 ), - /// \brief The ServoFilter0CoeffN1 parameter - PARAMETERID_ServoFilter0CoeffN1 = ( (0 << 24) | 13 ), - /// \brief The ServoFilter0CoeffN2 parameter - PARAMETERID_ServoFilter0CoeffN2 = ( (0 << 24) | 14 ), - /// \brief The ServoFilter0CoeffD1 parameter - PARAMETERID_ServoFilter0CoeffD1 = ( (0 << 24) | 15 ), - /// \brief The ServoFilter0CoeffD2 parameter - PARAMETERID_ServoFilter0CoeffD2 = ( (0 << 24) | 16 ), - /// \brief The ServoFilter1CoeffN0 parameter - PARAMETERID_ServoFilter1CoeffN0 = ( (0 << 24) | 17 ), - /// \brief The ServoFilter1CoeffN1 parameter - PARAMETERID_ServoFilter1CoeffN1 = ( (0 << 24) | 18 ), - /// \brief The ServoFilter1CoeffN2 parameter - PARAMETERID_ServoFilter1CoeffN2 = ( (0 << 24) | 19 ), - /// \brief The ServoFilter1CoeffD1 parameter - PARAMETERID_ServoFilter1CoeffD1 = ( (0 << 24) | 20 ), - /// \brief The ServoFilter1CoeffD2 parameter - PARAMETERID_ServoFilter1CoeffD2 = ( (0 << 24) | 21 ), - /// \brief The AmplifierDeadtime parameter - PARAMETERID_AmplifierDeadtime = ( (0 << 24) | 22 ), - /// \brief The RolloverCounts parameter - PARAMETERID_RolloverCounts = ( (0 << 24) | 23 ), - /// \brief The CurrentGainKi parameter - PARAMETERID_CurrentGainKi = ( (0 << 24) | 24 ), - /// \brief The CurrentGainKp parameter - PARAMETERID_CurrentGainKp = ( (0 << 24) | 25 ), - /// \brief The FaultMask parameter - PARAMETERID_FaultMask = ( (0 << 24) | 26 ), - /// \brief The FaultMaskDisable parameter - PARAMETERID_FaultMaskDisable = ( (0 << 24) | 27 ), - /// \brief The FaultMaskDecel parameter - PARAMETERID_FaultMaskDecel = ( (0 << 24) | 28 ), - /// \brief The EnableBrakeControl parameter - PARAMETERID_EnableBrakeControl = ( (0 << 24) | 29 ), - /// \brief The FaultMaskOutput parameter - PARAMETERID_FaultMaskOutput = ( (0 << 24) | 30 ), - /// \brief The ESTOPFaultInput parameter - PARAMETERID_ESTOPFaultInput = ( (0 << 24) | 31 ), - /// \brief The PositionErrorThreshold parameter - PARAMETERID_PositionErrorThreshold = ( (0 << 24) | 32 ), - /// \brief The AverageCurrentThreshold parameter - PARAMETERID_AverageCurrentThreshold = ( (0 << 24) | 33 ), - /// \brief The AverageCurrentTime parameter - PARAMETERID_AverageCurrentTime = ( (0 << 24) | 34 ), - /// \brief The VelocityCommandThreshold parameter - PARAMETERID_VelocityCommandThreshold = ( (0 << 24) | 35 ), - /// \brief The VelocityErrorThreshold parameter - PARAMETERID_VelocityErrorThreshold = ( (0 << 24) | 36 ), - /// \brief The SoftwareLimitLow parameter - PARAMETERID_SoftwareLimitLow = ( (0 << 24) | 37 ), - /// \brief The SoftwareLimitHigh parameter - PARAMETERID_SoftwareLimitHigh = ( (0 << 24) | 38 ), - /// \brief The MaxCurrentClamp parameter - PARAMETERID_MaxCurrentClamp = ( (0 << 24) | 39 ), - /// \brief The InPositionDistance parameter - PARAMETERID_InPositionDistance = ( (0 << 24) | 40 ), - /// \brief The MotorType parameter - PARAMETERID_MotorType = ( (0 << 24) | 41 ), - /// \brief The CyclesPerRev parameter - PARAMETERID_CyclesPerRev = ( (0 << 24) | 42 ), - /// \brief The CountsPerRev parameter - PARAMETERID_CountsPerRev = ( (0 << 24) | 43 ), - /// \brief The CommutationOffset parameter - PARAMETERID_CommutationOffset = ( (0 << 24) | 44 ), - /// \brief The AutoMsetTime parameter - PARAMETERID_AutoMsetTime = ( (0 << 24) | 45 ), - /// \brief The AutoMsetCurrent parameter - PARAMETERID_AutoMsetCurrent = ( (0 << 24) | 46 ), - /// \brief The PositionFeedbackType parameter - PARAMETERID_PositionFeedbackType = ( (0 << 24) | 47 ), - /// \brief The PositionFeedbackChannel parameter - PARAMETERID_PositionFeedbackChannel = ( (0 << 24) | 48 ), - /// \brief The VelocityFeedbackType parameter - PARAMETERID_VelocityFeedbackType = ( (0 << 24) | 49 ), - /// \brief The VelocityFeedbackChannel parameter - PARAMETERID_VelocityFeedbackChannel = ( (0 << 24) | 50 ), - /// \brief The EncoderMultiplicationFactor parameter - PARAMETERID_EncoderMultiplicationFactor = ( (0 << 24) | 51 ), - /// \brief The EncoderSineGain parameter - PARAMETERID_EncoderSineGain = ( (0 << 24) | 52 ), - /// \brief The EncoderSineOffset parameter - PARAMETERID_EncoderSineOffset = ( (0 << 24) | 53 ), - /// \brief The EncoderCosineGain parameter - PARAMETERID_EncoderCosineGain = ( (0 << 24) | 54 ), - /// \brief The EncoderCosineOffset parameter - PARAMETERID_EncoderCosineOffset = ( (0 << 24) | 55 ), - /// \brief The EncoderPhase parameter - PARAMETERID_EncoderPhase = ( (0 << 24) | 56 ), - /// \brief The GantryMasterAxis parameter - PARAMETERID_GantryMasterAxis = ( (0 << 24) | 57 ), - /// \brief The LimitDecelDistance parameter - PARAMETERID_LimitDecelDistance = ( (0 << 24) | 59 ), - /// \brief The LimitDebounceTime parameter - PARAMETERID_LimitDebounceTime = ( (0 << 24) | 60 ), - /// \brief The EndOfTravelLimitSetup parameter - PARAMETERID_EndOfTravelLimitSetup = ( (0 << 24) | 61 ), - /// \brief The BacklashDistance parameter - PARAMETERID_BacklashDistance = ( (0 << 24) | 62 ), - /// \brief The FaultOutputSetup parameter - PARAMETERID_FaultOutputSetup = ( (0 << 24) | 63 ), - /// \brief The FaultOutputState parameter - PARAMETERID_FaultOutputState = ( (0 << 24) | 64 ), - /// \brief The IOSetup parameter - PARAMETERID_IOSetup = ( (0 << 24) | 65 ), - /// \brief The BrakeOutput parameter - PARAMETERID_BrakeOutput = ( (0 << 24) | 66 ), - /// \brief The EncoderDivider parameter - PARAMETERID_EncoderDivider = ( (0 << 24) | 67 ), - /// \brief The ExternalFaultDigitalInput parameter - PARAMETERID_ExternalFaultDigitalInput = ( (0 << 24) | 68 ), - /// \brief The BrakeDisableDelay parameter - PARAMETERID_BrakeDisableDelay = ( (0 << 24) | 69 ), - /// \brief The MaxJogDistance parameter - PARAMETERID_MaxJogDistance = ( (0 << 24) | 70 ), - /// \brief The DefaultSpeed parameter - PARAMETERID_DefaultSpeed = ( (0 << 24) | 71 ), - /// \brief The DefaultRampRate parameter - PARAMETERID_DefaultRampRate = ( (0 << 24) | 72 ), - /// \brief The AbortDecelRate parameter - PARAMETERID_AbortDecelRate = ( (0 << 24) | 73 ), - /// \brief The HomeType parameter - PARAMETERID_HomeType = ( (0 << 24) | 74 ), - /// \brief The HomeSetup parameter - PARAMETERID_HomeSetup = ( (0 << 24) | 75 ), - /// \brief The HomeSpeed parameter - PARAMETERID_HomeSpeed = ( (0 << 24) | 76 ), - /// \brief The HomeOffset parameter - PARAMETERID_HomeOffset = ( (0 << 24) | 77 ), - /// \brief The HomeRampRate parameter - PARAMETERID_HomeRampRate = ( (0 << 24) | 78 ), - /// \brief The DefaultWaitMode parameter - PARAMETERID_DefaultWaitMode = ( (0 << 24) | 79 ), - /// \brief The DefaultSCurve parameter - PARAMETERID_DefaultSCurve = ( (0 << 24) | 80 ), - /// \brief The DataCollectionPoints parameter - PARAMETERID_DataCollectionPoints = ( (0 << 24) | 81 ), - /// \brief The StepperResolution parameter - PARAMETERID_StepperResolution = ( (0 << 24) | 83 ), - /// \brief The StepperRunningCurrent parameter - PARAMETERID_StepperRunningCurrent = ( (0 << 24) | 84 ), - /// \brief The StepperHoldingCurrent parameter - PARAMETERID_StepperHoldingCurrent = ( (0 << 24) | 85 ), - /// \brief The StepperVerificationSpeed parameter - PARAMETERID_StepperVerificationSpeed = ( (0 << 24) | 86 ), - /// \brief The LimitDebounceDistance parameter - PARAMETERID_LimitDebounceDistance = ( (0 << 24) | 87 ), - /// \brief The ServoFilter2CoeffN0 parameter - PARAMETERID_ServoFilter2CoeffN0 = ( (0 << 24) | 88 ), - /// \brief The ServoFilter2CoeffN1 parameter - PARAMETERID_ServoFilter2CoeffN1 = ( (0 << 24) | 89 ), - /// \brief The ServoFilter2CoeffN2 parameter - PARAMETERID_ServoFilter2CoeffN2 = ( (0 << 24) | 90 ), - /// \brief The ServoFilter2CoeffD1 parameter - PARAMETERID_ServoFilter2CoeffD1 = ( (0 << 24) | 91 ), - /// \brief The ServoFilter2CoeffD2 parameter - PARAMETERID_ServoFilter2CoeffD2 = ( (0 << 24) | 92 ), - /// \brief The ServoFilter3CoeffN0 parameter - PARAMETERID_ServoFilter3CoeffN0 = ( (0 << 24) | 93 ), - /// \brief The ServoFilter3CoeffN1 parameter - PARAMETERID_ServoFilter3CoeffN1 = ( (0 << 24) | 94 ), - /// \brief The ServoFilter3CoeffN2 parameter - PARAMETERID_ServoFilter3CoeffN2 = ( (0 << 24) | 95 ), - /// \brief The ServoFilter3CoeffD1 parameter - PARAMETERID_ServoFilter3CoeffD1 = ( (0 << 24) | 96 ), - /// \brief The ServoFilter3CoeffD2 parameter - PARAMETERID_ServoFilter3CoeffD2 = ( (0 << 24) | 97 ), - /// \brief The GearCamSource parameter - PARAMETERID_GearCamSource = ( (0 << 24) | 98 ), - /// \brief The GearCamIndex parameter - PARAMETERID_GearCamIndex = ( (0 << 24) | 99 ), - /// \brief The GearCamScaleFactor parameter - PARAMETERID_GearCamScaleFactor = ( (0 << 24) | 100 ), - /// \brief The GearCamAnalogDeadband parameter - PARAMETERID_GearCamAnalogDeadband = ( (0 << 24) | 105 ), - /// \brief The PrintBufferSize parameter - PARAMETERID_PrintBufferSize = ( (0 << 24) | 106 ), - /// \brief The SerialPort0XonCharacter parameter - PARAMETERID_SerialPort0XonCharacter = ( (0 << 24) | 109 ), - /// \brief The SerialPort0XoffCharacter parameter - PARAMETERID_SerialPort0XoffCharacter = ( (0 << 24) | 110 ), - /// \brief The SerialPort0BaudRate parameter - PARAMETERID_SerialPort0BaudRate = ( (0 << 24) | 111 ), - /// \brief The SerialPort0Setup parameter - PARAMETERID_SerialPort0Setup = ( (0 << 24) | 112 ), - /// \brief The TaskExecutionSetup parameter - PARAMETERID_TaskExecutionSetup = ( (0 << 24) | 113 ), - /// \brief The CodeSize parameter - PARAMETERID_CodeSize = ( (0 << 24) | 114 ), - /// \brief The DataSize parameter - PARAMETERID_DataSize = ( (0 << 24) | 115 ), - /// \brief The StackSize parameter - PARAMETERID_StackSize = ( (0 << 24) | 116 ), - /// \brief The AutoRunProgram parameter - PARAMETERID_AutoRunProgram = ( (0 << 24) | 118 ), - /// \brief The MaxJogSpeed parameter - PARAMETERID_MaxJogSpeed = ( (0 << 24) | 123 ), - /// \brief The GlobalIntegers parameter - PARAMETERID_GlobalIntegers = ( (0 << 24) | 124 ), - /// \brief The GlobalDoubles parameter - PARAMETERID_GlobalDoubles = ( (0 << 24) | 125 ), - /// \brief The DecimalPlaces parameter - PARAMETERID_DecimalPlaces = ( (0 << 24) | 126 ), - /// \brief The TaskErrorAbortAxes parameter - PARAMETERID_TaskErrorAbortAxes = ( (0 << 24) | 127 ), - /// \brief The CalibrationFile1D parameter - PARAMETERID_CalibrationFile1D = ( (0 << 24) | 128 ), - /// \brief The UnitsName parameter - PARAMETERID_UnitsName = ( (0 << 24) | 129 ), - /// \brief The Socket2RemoteIPAddress parameter - PARAMETERID_Socket2RemoteIPAddress = ( (0 << 24) | 130 ), - /// \brief The Socket2Port parameter - PARAMETERID_Socket2Port = ( (0 << 24) | 131 ), - /// \brief The Socket2Setup parameter - PARAMETERID_Socket2Setup = ( (0 << 24) | 132 ), - /// \brief The Socket2TransmissionSize parameter - PARAMETERID_Socket2TransmissionSize = ( (0 << 24) | 133 ), - /// \brief The Socket3RemoteIPAddress parameter - PARAMETERID_Socket3RemoteIPAddress = ( (0 << 24) | 134 ), - /// \brief The Socket3Port parameter - PARAMETERID_Socket3Port = ( (0 << 24) | 135 ), - /// \brief The Socket3Setup parameter - PARAMETERID_Socket3Setup = ( (0 << 24) | 136 ), - /// \brief The Socket3TransmissionSize parameter - PARAMETERID_Socket3TransmissionSize = ( (0 << 24) | 137 ), - /// \brief The Socket2Timeout parameter - PARAMETERID_Socket2Timeout = ( (0 << 24) | 138 ), - /// \brief The Socket3Timeout parameter - PARAMETERID_Socket3Timeout = ( (0 << 24) | 139 ), - /// \brief The AxisName parameter - PARAMETERID_AxisName = ( (0 << 24) | 140 ), - /// \brief The UserInteger0 parameter - PARAMETERID_UserInteger0 = ( (0 << 24) | 141 ), - /// \brief The UserInteger1 parameter - PARAMETERID_UserInteger1 = ( (0 << 24) | 142 ), - /// \brief The UserDouble0 parameter - PARAMETERID_UserDouble0 = ( (0 << 24) | 143 ), - /// \brief The UserDouble1 parameter - PARAMETERID_UserDouble1 = ( (0 << 24) | 144 ), - /// \brief The UserString0 parameter - PARAMETERID_UserString0 = ( (0 << 24) | 145 ), - /// \brief The UserString1 parameter - PARAMETERID_UserString1 = ( (0 << 24) | 146 ), - /// \brief The EnDatEncoderSetup parameter - PARAMETERID_EnDatEncoderSetup = ( (0 << 24) | 147 ), - /// \brief The EnDatEncoderResolution parameter - PARAMETERID_EnDatEncoderResolution = ( (0 << 24) | 148 ), - /// \brief The EnDatEncoderTurns parameter - PARAMETERID_EnDatEncoderTurns = ( (0 << 24) | 149 ), - /// \brief The CommandSetup parameter - PARAMETERID_CommandSetup = ( (0 << 24) | 150 ), - /// \brief The SerialPort1XonCharacter parameter - PARAMETERID_SerialPort1XonCharacter = ( (0 << 24) | 152 ), - /// \brief The SerialPort1XoffCharacter parameter - PARAMETERID_SerialPort1XoffCharacter = ( (0 << 24) | 153 ), - /// \brief The SerialPort1BaudRate parameter - PARAMETERID_SerialPort1BaudRate = ( (0 << 24) | 154 ), - /// \brief The SerialPort1Setup parameter - PARAMETERID_SerialPort1Setup = ( (0 << 24) | 155 ), - /// \brief The RequiredAxes parameter - PARAMETERID_RequiredAxes = ( (0 << 24) | 156 ), - /// \brief The JoystickInput1MinVoltage parameter - PARAMETERID_JoystickInput1MinVoltage = ( (0 << 24) | 157 ), - /// \brief The JoystickInput1MaxVoltage parameter - PARAMETERID_JoystickInput1MaxVoltage = ( (0 << 24) | 158 ), - /// \brief The JoystickInput1Deadband parameter - PARAMETERID_JoystickInput1Deadband = ( (0 << 24) | 159 ), - /// \brief The JoystickInput0MinVoltage parameter - PARAMETERID_JoystickInput0MinVoltage = ( (0 << 24) | 160 ), - /// \brief The JoystickInput0MaxVoltage parameter - PARAMETERID_JoystickInput0MaxVoltage = ( (0 << 24) | 161 ), - /// \brief The JoystickInput0Deadband parameter - PARAMETERID_JoystickInput0Deadband = ( (0 << 24) | 162 ), - /// \brief The JoystickLowSpeed parameter - PARAMETERID_JoystickLowSpeed = ( (0 << 24) | 163 ), - /// \brief The JoystickHighSpeed parameter - PARAMETERID_JoystickHighSpeed = ( (0 << 24) | 164 ), - /// \brief The JoystickSetup parameter - PARAMETERID_JoystickSetup = ( (0 << 24) | 165 ), - /// \brief The HomePositionSet parameter - PARAMETERID_HomePositionSet = ( (0 << 24) | 166 ), - /// \brief The TaskTerminationAxes parameter - PARAMETERID_TaskTerminationAxes = ( (0 << 24) | 167 ), - /// \brief The TaskStopAbortAxes parameter - PARAMETERID_TaskStopAbortAxes = ( (0 << 24) | 168 ), - /// \brief The CalibrationFile2D parameter - PARAMETERID_CalibrationFile2D = ( (0 << 24) | 169 ), - /// \brief The FaultMaskDisableDelay parameter - PARAMETERID_FaultMaskDisableDelay = ( (0 << 24) | 170 ), - /// \brief The DefaultCoordinatedSpeed parameter - PARAMETERID_DefaultCoordinatedSpeed = ( (0 << 24) | 171 ), - /// \brief The DefaultCoordinatedRampRate parameter - PARAMETERID_DefaultCoordinatedRampRate = ( (0 << 24) | 172 ), - /// \brief The DefaultDependentCoordinatedRampRate parameter - PARAMETERID_DefaultDependentCoordinatedRampRate = ( (0 << 24) | 173 ), - /// \brief The GpibTerminatingCharacter parameter - PARAMETERID_GpibTerminatingCharacter = ( (0 << 24) | 174 ), - /// \brief The GpibPrimaryAddress parameter - PARAMETERID_GpibPrimaryAddress = ( (0 << 24) | 175 ), - /// \brief The GpibParallelResponse parameter - PARAMETERID_GpibParallelResponse = ( (0 << 24) | 176 ), - /// \brief The CommandTerminatingCharacter parameter - PARAMETERID_CommandTerminatingCharacter = ( (0 << 24) | 177 ), - /// \brief The CommandSuccessCharacter parameter - PARAMETERID_CommandSuccessCharacter = ( (0 << 24) | 178 ), - /// \brief The CommandInvalidCharacter parameter - PARAMETERID_CommandInvalidCharacter = ( (0 << 24) | 179 ), - /// \brief The CommandFaultCharacter parameter - PARAMETERID_CommandFaultCharacter = ( (0 << 24) | 180 ), - /// \brief The FaultAbortAxes parameter - PARAMETERID_FaultAbortAxes = ( (0 << 24) | 182 ), - /// \brief The HarmonicCancellation0Type parameter - PARAMETERID_HarmonicCancellation0Type = ( (0 << 24) | 185 ), - /// \brief The HarmonicCancellation0Period parameter - PARAMETERID_HarmonicCancellation0Period = ( (0 << 24) | 186 ), - /// \brief The HarmonicCancellation0Gain parameter - PARAMETERID_HarmonicCancellation0Gain = ( (0 << 24) | 188 ), - /// \brief The HarmonicCancellation0Phase parameter - PARAMETERID_HarmonicCancellation0Phase = ( (0 << 24) | 189 ), - /// \brief The HarmonicCancellation1Type parameter - PARAMETERID_HarmonicCancellation1Type = ( (0 << 24) | 190 ), - /// \brief The HarmonicCancellation1Period parameter - PARAMETERID_HarmonicCancellation1Period = ( (0 << 24) | 191 ), - /// \brief The HarmonicCancellation1Gain parameter - PARAMETERID_HarmonicCancellation1Gain = ( (0 << 24) | 193 ), - /// \brief The HarmonicCancellation1Phase parameter - PARAMETERID_HarmonicCancellation1Phase = ( (0 << 24) | 194 ), - /// \brief The HarmonicCancellation2Type parameter - PARAMETERID_HarmonicCancellation2Type = ( (0 << 24) | 195 ), - /// \brief The HarmonicCancellation2Period parameter - PARAMETERID_HarmonicCancellation2Period = ( (0 << 24) | 196 ), - /// \brief The HarmonicCancellation2Gain parameter - PARAMETERID_HarmonicCancellation2Gain = ( (0 << 24) | 198 ), - /// \brief The HarmonicCancellation2Phase parameter - PARAMETERID_HarmonicCancellation2Phase = ( (0 << 24) | 199 ), - /// \brief The CommandTimeout parameter - PARAMETERID_CommandTimeout = ( (0 << 24) | 202 ), - /// \brief The CommandTimeoutCharacter parameter - PARAMETERID_CommandTimeoutCharacter = ( (0 << 24) | 203 ), - /// \brief The ResolverReferenceGain parameter - PARAMETERID_ResolverReferenceGain = ( (0 << 24) | 204 ), - /// \brief The ResolverSetup parameter - PARAMETERID_ResolverSetup = ( (0 << 24) | 205 ), - /// \brief The ResolverReferencePhase parameter - PARAMETERID_ResolverReferencePhase = ( (0 << 24) | 206 ), - /// \brief The SoftwareLimitSetup parameter - PARAMETERID_SoftwareLimitSetup = ( (0 << 24) | 210 ), - /// \brief The SSINet1Setup parameter - PARAMETERID_SSINet1Setup = ( (0 << 24) | 211 ), - /// \brief The SSINet2Setup parameter - PARAMETERID_SSINet2Setup = ( (0 << 24) | 212 ), - /// \brief The EmulatedQuadratureDivider parameter - PARAMETERID_EmulatedQuadratureDivider = ( (0 << 24) | 213 ), - /// \brief The HarmonicCancellation3Type parameter - PARAMETERID_HarmonicCancellation3Type = ( (0 << 24) | 214 ), - /// \brief The HarmonicCancellation3Period parameter - PARAMETERID_HarmonicCancellation3Period = ( (0 << 24) | 215 ), - /// \brief The HarmonicCancellation3Gain parameter - PARAMETERID_HarmonicCancellation3Gain = ( (0 << 24) | 217 ), - /// \brief The HarmonicCancellation3Phase parameter - PARAMETERID_HarmonicCancellation3Phase = ( (0 << 24) | 218 ), - /// \brief The HarmonicCancellation4Type parameter - PARAMETERID_HarmonicCancellation4Type = ( (0 << 24) | 219 ), - /// \brief The HarmonicCancellation4Period parameter - PARAMETERID_HarmonicCancellation4Period = ( (0 << 24) | 220 ), - /// \brief The HarmonicCancellation4Gain parameter - PARAMETERID_HarmonicCancellation4Gain = ( (0 << 24) | 222 ), - /// \brief The HarmonicCancellation4Phase parameter - PARAMETERID_HarmonicCancellation4Phase = ( (0 << 24) | 223 ), - /// \brief The EnhancedThroughputChannel parameter - PARAMETERID_EnhancedThroughputChannel = ( (0 << 24) | 224 ), - /// \brief The EnhancedThroughputGain parameter - PARAMETERID_EnhancedThroughputGain = ( (0 << 24) | 225 ), - /// \brief The HarmonicCancellationSetup parameter - PARAMETERID_HarmonicCancellationSetup = ( (0 << 24) | 226 ), - /// \brief The EnhancedThroughputCurrentClamp parameter - PARAMETERID_EnhancedThroughputCurrentClamp = ( (0 << 24) | 227 ), - /// \brief The Analog0Filter0CoeffN0 parameter - PARAMETERID_Analog0Filter0CoeffN0 = ( (0 << 24) | 228 ), - /// \brief The Analog0Filter0CoeffN1 parameter - PARAMETERID_Analog0Filter0CoeffN1 = ( (0 << 24) | 229 ), - /// \brief The Analog0Filter0CoeffN2 parameter - PARAMETERID_Analog0Filter0CoeffN2 = ( (0 << 24) | 230 ), - /// \brief The Analog0Filter0CoeffD1 parameter - PARAMETERID_Analog0Filter0CoeffD1 = ( (0 << 24) | 231 ), - /// \brief The Analog0Filter0CoeffD2 parameter - PARAMETERID_Analog0Filter0CoeffD2 = ( (0 << 24) | 232 ), - /// \brief The Analog0Filter1CoeffN0 parameter - PARAMETERID_Analog0Filter1CoeffN0 = ( (0 << 24) | 233 ), - /// \brief The Analog0Filter1CoeffN1 parameter - PARAMETERID_Analog0Filter1CoeffN1 = ( (0 << 24) | 234 ), - /// \brief The Analog0Filter1CoeffN2 parameter - PARAMETERID_Analog0Filter1CoeffN2 = ( (0 << 24) | 235 ), - /// \brief The Analog0Filter1CoeffD1 parameter - PARAMETERID_Analog0Filter1CoeffD1 = ( (0 << 24) | 236 ), - /// \brief The Analog0Filter1CoeffD2 parameter - PARAMETERID_Analog0Filter1CoeffD2 = ( (0 << 24) | 237 ), - /// \brief The Analog1Filter0CoeffN0 parameter - PARAMETERID_Analog1Filter0CoeffN0 = ( (0 << 24) | 238 ), - /// \brief The Analog1Filter0CoeffN1 parameter - PARAMETERID_Analog1Filter0CoeffN1 = ( (0 << 24) | 239 ), - /// \brief The Analog1Filter0CoeffN2 parameter - PARAMETERID_Analog1Filter0CoeffN2 = ( (0 << 24) | 240 ), - /// \brief The Analog1Filter0CoeffD1 parameter - PARAMETERID_Analog1Filter0CoeffD1 = ( (0 << 24) | 241 ), - /// \brief The Analog1Filter0CoeffD2 parameter - PARAMETERID_Analog1Filter0CoeffD2 = ( (0 << 24) | 242 ), - /// \brief The Analog1Filter1CoeffN0 parameter - PARAMETERID_Analog1Filter1CoeffN0 = ( (0 << 24) | 243 ), - /// \brief The Analog1Filter1CoeffN1 parameter - PARAMETERID_Analog1Filter1CoeffN1 = ( (0 << 24) | 244 ), - /// \brief The Analog1Filter1CoeffN2 parameter - PARAMETERID_Analog1Filter1CoeffN2 = ( (0 << 24) | 245 ), - /// \brief The Analog1Filter1CoeffD1 parameter - PARAMETERID_Analog1Filter1CoeffD1 = ( (0 << 24) | 246 ), - /// \brief The Analog1Filter1CoeffD2 parameter - PARAMETERID_Analog1Filter1CoeffD2 = ( (0 << 24) | 247 ), - /// \brief The GlobalStrings parameter - PARAMETERID_GlobalStrings = ( (0 << 24) | 248 ), - /// \brief The DefaultCoordinatedRampMode parameter - PARAMETERID_DefaultCoordinatedRampMode = ( (0 << 24) | 249 ), - /// \brief The DefaultCoordinatedRampTime parameter - PARAMETERID_DefaultCoordinatedRampTime = ( (0 << 24) | 250 ), - /// \brief The DefaultCoordinatedRampDistance parameter - PARAMETERID_DefaultCoordinatedRampDistance = ( (0 << 24) | 251 ), - /// \brief The DefaultRampMode parameter - PARAMETERID_DefaultRampMode = ( (0 << 24) | 252 ), - /// \brief The DefaultRampTime parameter - PARAMETERID_DefaultRampTime = ( (0 << 24) | 253 ), - /// \brief The DefaultRampDistance parameter - PARAMETERID_DefaultRampDistance = ( (0 << 24) | 254 ), - /// \brief The ServoFilterSetup parameter - PARAMETERID_ServoFilterSetup = ( (0 << 24) | 255 ), - /// \brief The FeedbackSetup parameter - PARAMETERID_FeedbackSetup = ( (0 << 24) | 256 ), - /// \brief The EncoderMultiplierSetup parameter - PARAMETERID_EncoderMultiplierSetup = ( (0 << 24) | 257 ), - /// \brief The FaultSetup parameter - PARAMETERID_FaultSetup = ( (0 << 24) | 258 ), - /// \brief The ThresholdScheduleSetup parameter - PARAMETERID_ThresholdScheduleSetup = ( (0 << 24) | 259 ), - /// \brief The ThresholdRegion2High parameter - PARAMETERID_ThresholdRegion2High = ( (0 << 24) | 260 ), - /// \brief The ThresholdRegion2Low parameter - PARAMETERID_ThresholdRegion2Low = ( (0 << 24) | 261 ), - /// \brief The ThresholdRegion3GainKpos parameter - PARAMETERID_ThresholdRegion3GainKpos = ( (0 << 24) | 262 ), - /// \brief The ThresholdRegion3GainKp parameter - PARAMETERID_ThresholdRegion3GainKp = ( (0 << 24) | 263 ), - /// \brief The ThresholdRegion3GainKi parameter - PARAMETERID_ThresholdRegion3GainKi = ( (0 << 24) | 264 ), - /// \brief The ThresholdRegion3GainKpi parameter - PARAMETERID_ThresholdRegion3GainKpi = ( (0 << 24) | 265 ), - /// \brief The ThresholdRegion4High parameter - PARAMETERID_ThresholdRegion4High = ( (0 << 24) | 266 ), - /// \brief The ThresholdRegion4Low parameter - PARAMETERID_ThresholdRegion4Low = ( (0 << 24) | 267 ), - /// \brief The ThresholdRegion5GainKpos parameter - PARAMETERID_ThresholdRegion5GainKpos = ( (0 << 24) | 268 ), - /// \brief The ThresholdRegion5GainKp parameter - PARAMETERID_ThresholdRegion5GainKp = ( (0 << 24) | 269 ), - /// \brief The ThresholdRegion5GainKi parameter - PARAMETERID_ThresholdRegion5GainKi = ( (0 << 24) | 270 ), - /// \brief The ThresholdRegion5GainKpi parameter - PARAMETERID_ThresholdRegion5GainKpi = ( (0 << 24) | 271 ), - /// \brief The DynamicScheduleSetup parameter - PARAMETERID_DynamicScheduleSetup = ( (0 << 24) | 272 ), - /// \brief The DynamicGainKposScale parameter - PARAMETERID_DynamicGainKposScale = ( (0 << 24) | 273 ), - /// \brief The DynamicGainKpScale parameter - PARAMETERID_DynamicGainKpScale = ( (0 << 24) | 274 ), - /// \brief The DynamicGainKiScale parameter - PARAMETERID_DynamicGainKiScale = ( (0 << 24) | 275 ), - /// \brief The ServoFilter4CoeffN0 parameter - PARAMETERID_ServoFilter4CoeffN0 = ( (0 << 24) | 276 ), - /// \brief The ServoFilter4CoeffN1 parameter - PARAMETERID_ServoFilter4CoeffN1 = ( (0 << 24) | 277 ), - /// \brief The ServoFilter4CoeffN2 parameter - PARAMETERID_ServoFilter4CoeffN2 = ( (0 << 24) | 278 ), - /// \brief The ServoFilter4CoeffD1 parameter - PARAMETERID_ServoFilter4CoeffD1 = ( (0 << 24) | 279 ), - /// \brief The ServoFilter4CoeffD2 parameter - PARAMETERID_ServoFilter4CoeffD2 = ( (0 << 24) | 280 ), - /// \brief The ServoFilter5CoeffN0 parameter - PARAMETERID_ServoFilter5CoeffN0 = ( (0 << 24) | 281 ), - /// \brief The ServoFilter5CoeffN1 parameter - PARAMETERID_ServoFilter5CoeffN1 = ( (0 << 24) | 282 ), - /// \brief The ServoFilter5CoeffN2 parameter - PARAMETERID_ServoFilter5CoeffN2 = ( (0 << 24) | 283 ), - /// \brief The ServoFilter5CoeffD1 parameter - PARAMETERID_ServoFilter5CoeffD1 = ( (0 << 24) | 284 ), - /// \brief The ServoFilter5CoeffD2 parameter - PARAMETERID_ServoFilter5CoeffD2 = ( (0 << 24) | 285 ), - /// \brief The ServoFilter6CoeffN0 parameter - PARAMETERID_ServoFilter6CoeffN0 = ( (0 << 24) | 286 ), - /// \brief The ServoFilter6CoeffN1 parameter - PARAMETERID_ServoFilter6CoeffN1 = ( (0 << 24) | 287 ), - /// \brief The ServoFilter6CoeffN2 parameter - PARAMETERID_ServoFilter6CoeffN2 = ( (0 << 24) | 288 ), - /// \brief The ServoFilter6CoeffD1 parameter - PARAMETERID_ServoFilter6CoeffD1 = ( (0 << 24) | 289 ), - /// \brief The ServoFilter6CoeffD2 parameter - PARAMETERID_ServoFilter6CoeffD2 = ( (0 << 24) | 290 ), - /// \brief The ServoFilter7CoeffN0 parameter - PARAMETERID_ServoFilter7CoeffN0 = ( (0 << 24) | 291 ), - /// \brief The ServoFilter7CoeffN1 parameter - PARAMETERID_ServoFilter7CoeffN1 = ( (0 << 24) | 292 ), - /// \brief The ServoFilter7CoeffN2 parameter - PARAMETERID_ServoFilter7CoeffN2 = ( (0 << 24) | 293 ), - /// \brief The ServoFilter7CoeffD1 parameter - PARAMETERID_ServoFilter7CoeffD1 = ( (0 << 24) | 294 ), - /// \brief The ServoFilter7CoeffD2 parameter - PARAMETERID_ServoFilter7CoeffD2 = ( (0 << 24) | 295 ), - /// \brief The LinearAmpMaxPower parameter - PARAMETERID_LinearAmpMaxPower = ( (0 << 24) | 296 ), - /// \brief The LinearAmpDeratingFactor parameter - PARAMETERID_LinearAmpDeratingFactor = ( (0 << 24) | 297 ), - /// \brief The LinearAmpBusVoltage parameter - PARAMETERID_LinearAmpBusVoltage = ( (0 << 24) | 298 ), - /// \brief The MotorResistance parameter - PARAMETERID_MotorResistance = ( (0 << 24) | 299 ), - /// \brief The MotorBackEMFConstant parameter - PARAMETERID_MotorBackEMFConstant = ( (0 << 24) | 300 ), - /// \brief The GantrySetup parameter - PARAMETERID_GantrySetup = ( (0 << 24) | 302 ), - /// \brief The RolloverMode parameter - PARAMETERID_RolloverMode = ( (0 << 24) | 303 ), - /// \brief The ResolverCoarseChannel parameter - PARAMETERID_ResolverCoarseChannel = ( (0 << 24) | 306 ), - /// \brief The ResolverFeedbackRatio parameter - PARAMETERID_ResolverFeedbackRatio = ( (0 << 24) | 307 ), - /// \brief The ResolverFeedbackOffset parameter - PARAMETERID_ResolverFeedbackOffset = ( (0 << 24) | 308 ), - /// \brief The InPositionTime parameter - PARAMETERID_InPositionTime = ( (0 << 24) | 319 ), - /// \brief The ExternalFaultAnalogInput parameter - PARAMETERID_ExternalFaultAnalogInput = ( (0 << 24) | 424 ), - /// \brief The ExternalFaultThreshold parameter - PARAMETERID_ExternalFaultThreshold = ( (0 << 24) | 425 ), - /// \brief The DisplayAxes parameter - PARAMETERID_DisplayAxes = ( (0 << 24) | 426 ), - /// \brief The DefaultDependentCoordinatedSpeed parameter - PARAMETERID_DefaultDependentCoordinatedSpeed = ( (0 << 24) | 427 ), - /// \brief The AnalogFilterSetup parameter - PARAMETERID_AnalogFilterSetup = ( (0 << 24) | 482 ), - /// \brief The ModbusMasterSlaveIPAddress parameter - PARAMETERID_ModbusMasterSlaveIPAddress = ( (0 << 24) | 489 ), - /// \brief The ModbusMasterSlavePort parameter - PARAMETERID_ModbusMasterSlavePort = ( (0 << 24) | 490 ), - /// \brief The ModbusMasterSlaveID parameter - PARAMETERID_ModbusMasterSlaveID = ( (0 << 24) | 491 ), - /// \brief The ModbusMasterInputWords parameter - PARAMETERID_ModbusMasterInputWords = ( (0 << 24) | 492 ), - /// \brief The ModbusMasterOutputWords parameter - PARAMETERID_ModbusMasterOutputWords = ( (0 << 24) | 493 ), - /// \brief The ModbusMasterInputBits parameter - PARAMETERID_ModbusMasterInputBits = ( (0 << 24) | 494 ), - /// \brief The ModbusMasterOutputBits parameter - PARAMETERID_ModbusMasterOutputBits = ( (0 << 24) | 495 ), - /// \brief The ModbusMasterSetup parameter - PARAMETERID_ModbusMasterSetup = ( (0 << 24) | 496 ), - /// \brief The ModbusMasterVirtualInputs parameter - PARAMETERID_ModbusMasterVirtualInputs = ( (0 << 24) | 499 ), - /// \brief The ModbusMasterVirtualOutputs parameter - PARAMETERID_ModbusMasterVirtualOutputs = ( (0 << 24) | 500 ), - /// \brief The ModbusMasterOutputWordsSections parameter - PARAMETERID_ModbusMasterOutputWordsSections = ( (0 << 24) | 501 ), - /// \brief The ModbusMasterOutputBitsSections parameter - PARAMETERID_ModbusMasterOutputBitsSections = ( (0 << 24) | 502 ), - /// \brief The ModbusMasterRWReadOffset parameter - PARAMETERID_ModbusMasterRWReadOffset = ( (0 << 24) | 503 ), - /// \brief The ModbusMasterInputWordsOffset parameter - PARAMETERID_ModbusMasterInputWordsOffset = ( (0 << 24) | 504 ), - /// \brief The ModbusMasterOutputWordsOffset parameter - PARAMETERID_ModbusMasterOutputWordsOffset = ( (0 << 24) | 505 ), - /// \brief The ModbusMasterInputBitsOffset parameter - PARAMETERID_ModbusMasterInputBitsOffset = ( (0 << 24) | 506 ), - /// \brief The ModbusMasterOutputBitsOffset parameter - PARAMETERID_ModbusMasterOutputBitsOffset = ( (0 << 24) | 507 ), - /// \brief The ModbusMasterStatusWordsOffset parameter - PARAMETERID_ModbusMasterStatusWordsOffset = ( (0 << 24) | 508 ), - /// \brief The ModbusMasterStatusBitsOffset parameter - PARAMETERID_ModbusMasterStatusBitsOffset = ( (0 << 24) | 509 ), - /// \brief The ModbusMasterVirtualInputsOffset parameter - PARAMETERID_ModbusMasterVirtualInputsOffset = ( (0 << 24) | 510 ), - /// \brief The ModbusMasterVirtualOutputsOffset parameter - PARAMETERID_ModbusMasterVirtualOutputsOffset = ( (0 << 24) | 511 ), - /// \brief The ModbusMasterRWWriteOffset parameter - PARAMETERID_ModbusMasterRWWriteOffset = ( (0 << 24) | 512 ), - /// \brief The ModbusMasterFunctions parameter - PARAMETERID_ModbusMasterFunctions = ( (0 << 24) | 513 ), - /// \brief The ModbusMasterSlaveType parameter - PARAMETERID_ModbusMasterSlaveType = ( (0 << 24) | 514 ), - /// \brief The ModbusSlaveUnitID parameter - PARAMETERID_ModbusSlaveUnitID = ( (0 << 24) | 516 ), - /// \brief The ModbusSlaveInputWords parameter - PARAMETERID_ModbusSlaveInputWords = ( (0 << 24) | 517 ), - /// \brief The ModbusSlaveOutputWords parameter - PARAMETERID_ModbusSlaveOutputWords = ( (0 << 24) | 518 ), - /// \brief The ModbusSlaveInputBits parameter - PARAMETERID_ModbusSlaveInputBits = ( (0 << 24) | 519 ), - /// \brief The ModbusSlaveOutputBits parameter - PARAMETERID_ModbusSlaveOutputBits = ( (0 << 24) | 520 ), - /// \brief The ModbusSlaveInputWordsOffset parameter - PARAMETERID_ModbusSlaveInputWordsOffset = ( (0 << 24) | 521 ), - /// \brief The ModbusSlaveOutputWordsOffset parameter - PARAMETERID_ModbusSlaveOutputWordsOffset = ( (0 << 24) | 522 ), - /// \brief The ModbusSlaveInputBitsOffset parameter - PARAMETERID_ModbusSlaveInputBitsOffset = ( (0 << 24) | 523 ), - /// \brief The ModbusSlaveOutputBitsOffset parameter - PARAMETERID_ModbusSlaveOutputBitsOffset = ( (0 << 24) | 524 ), - /// \brief The ModbusSlaveRWReadOffset parameter - PARAMETERID_ModbusSlaveRWReadOffset = ( (0 << 24) | 525 ), - /// \brief The ModbusSlaveRWWriteOffset parameter - PARAMETERID_ModbusSlaveRWWriteOffset = ( (0 << 24) | 526 ), - /// \brief The CurrentOffsetA parameter - PARAMETERID_CurrentOffsetA = ( (0 << 24) | 662 ), - /// \brief The CurrentOffsetB parameter - PARAMETERID_CurrentOffsetB = ( (0 << 24) | 663 ), - /// \brief The CommandShaperSetup parameter - PARAMETERID_CommandShaperSetup = ( (0 << 24) | 666 ), - /// \brief The CommandShaperTime00 parameter - PARAMETERID_CommandShaperTime00 = ( (0 << 24) | 667 ), - /// \brief The CommandShaperTime01 parameter - PARAMETERID_CommandShaperTime01 = ( (0 << 24) | 668 ), - /// \brief The CommandShaperTime02 parameter - PARAMETERID_CommandShaperTime02 = ( (0 << 24) | 669 ), - /// \brief The CommandShaperTime03 parameter - PARAMETERID_CommandShaperTime03 = ( (0 << 24) | 670 ), - /// \brief The CommandShaperTime04 parameter - PARAMETERID_CommandShaperTime04 = ( (0 << 24) | 671 ), - /// \brief The CommandShaperTime05 parameter - PARAMETERID_CommandShaperTime05 = ( (0 << 24) | 672 ), - /// \brief The CommandShaperTime06 parameter - PARAMETERID_CommandShaperTime06 = ( (0 << 24) | 673 ), - /// \brief The CommandShaperTime07 parameter - PARAMETERID_CommandShaperTime07 = ( (0 << 24) | 674 ), - /// \brief The CommandShaperTime08 parameter - PARAMETERID_CommandShaperTime08 = ( (0 << 24) | 675 ), - /// \brief The CommandShaperTime09 parameter - PARAMETERID_CommandShaperTime09 = ( (0 << 24) | 676 ), - /// \brief The CommandShaperTime10 parameter - PARAMETERID_CommandShaperTime10 = ( (0 << 24) | 677 ), - /// \brief The CommandShaperTime11 parameter - PARAMETERID_CommandShaperTime11 = ( (0 << 24) | 678 ), - /// \brief The CommandShaperTime12 parameter - PARAMETERID_CommandShaperTime12 = ( (0 << 24) | 679 ), - /// \brief The CommandShaperTime13 parameter - PARAMETERID_CommandShaperTime13 = ( (0 << 24) | 680 ), - /// \brief The CommandShaperTime14 parameter - PARAMETERID_CommandShaperTime14 = ( (0 << 24) | 681 ), - /// \brief The CommandShaperTime15 parameter - PARAMETERID_CommandShaperTime15 = ( (0 << 24) | 682 ), - /// \brief The CommandShaperCoeff00 parameter - PARAMETERID_CommandShaperCoeff00 = ( (0 << 24) | 683 ), - /// \brief The CommandShaperCoeff01 parameter - PARAMETERID_CommandShaperCoeff01 = ( (0 << 24) | 684 ), - /// \brief The CommandShaperCoeff02 parameter - PARAMETERID_CommandShaperCoeff02 = ( (0 << 24) | 685 ), - /// \brief The CommandShaperCoeff03 parameter - PARAMETERID_CommandShaperCoeff03 = ( (0 << 24) | 686 ), - /// \brief The CommandShaperCoeff04 parameter - PARAMETERID_CommandShaperCoeff04 = ( (0 << 24) | 687 ), - /// \brief The CommandShaperCoeff05 parameter - PARAMETERID_CommandShaperCoeff05 = ( (0 << 24) | 688 ), - /// \brief The CommandShaperCoeff06 parameter - PARAMETERID_CommandShaperCoeff06 = ( (0 << 24) | 689 ), - /// \brief The CommandShaperCoeff07 parameter - PARAMETERID_CommandShaperCoeff07 = ( (0 << 24) | 690 ), - /// \brief The CommandShaperCoeff08 parameter - PARAMETERID_CommandShaperCoeff08 = ( (0 << 24) | 691 ), - /// \brief The CommandShaperCoeff09 parameter - PARAMETERID_CommandShaperCoeff09 = ( (0 << 24) | 692 ), - /// \brief The CommandShaperCoeff10 parameter - PARAMETERID_CommandShaperCoeff10 = ( (0 << 24) | 693 ), - /// \brief The CommandShaperCoeff11 parameter - PARAMETERID_CommandShaperCoeff11 = ( (0 << 24) | 694 ), - /// \brief The CommandShaperCoeff12 parameter - PARAMETERID_CommandShaperCoeff12 = ( (0 << 24) | 695 ), - /// \brief The CommandShaperCoeff13 parameter - PARAMETERID_CommandShaperCoeff13 = ( (0 << 24) | 696 ), - /// \brief The CommandShaperCoeff14 parameter - PARAMETERID_CommandShaperCoeff14 = ( (0 << 24) | 697 ), - /// \brief The CommandShaperCoeff15 parameter - PARAMETERID_CommandShaperCoeff15 = ( (0 << 24) | 698 ), - /// \brief The CommandShaper0Type parameter - PARAMETERID_CommandShaper0Type = ( (0 << 24) | 703 ), - /// \brief The CommandShaper0Frequency parameter - PARAMETERID_CommandShaper0Frequency = ( (0 << 24) | 704 ), - /// \brief The CommandShaper0Damping parameter - PARAMETERID_CommandShaper0Damping = ( (0 << 24) | 705 ), - /// \brief The CommandShaper1Type parameter - PARAMETERID_CommandShaper1Type = ( (0 << 24) | 706 ), - /// \brief The CommandShaper1Frequency parameter - PARAMETERID_CommandShaper1Frequency = ( (0 << 24) | 707 ), - /// \brief The CommandShaper1Damping parameter - PARAMETERID_CommandShaper1Damping = ( (0 << 24) | 708 ), - /// \brief The ResoluteEncoderSetup parameter - PARAMETERID_ResoluteEncoderSetup = ( (0 << 24) | 715 ), - /// \brief The ResoluteEncoderResolution parameter - PARAMETERID_ResoluteEncoderResolution = ( (0 << 24) | 716 ), - /// \brief The ResoluteEncoderUserResolution parameter - PARAMETERID_ResoluteEncoderUserResolution = ( (0 << 24) | 717 ), - /// \brief The AutofocusInput parameter - PARAMETERID_AutofocusInput = ( (0 << 24) | 721 ), - /// \brief The AutofocusTarget parameter - PARAMETERID_AutofocusTarget = ( (0 << 24) | 722 ), - /// \brief The AutofocusDeadband parameter - PARAMETERID_AutofocusDeadband = ( (0 << 24) | 723 ), - /// \brief The AutofocusGainKi parameter - PARAMETERID_AutofocusGainKi = ( (0 << 24) | 724 ), - /// \brief The AutofocusGainKp parameter - PARAMETERID_AutofocusGainKp = ( (0 << 24) | 725 ), - /// \brief The AutofocusLimitLow parameter - PARAMETERID_AutofocusLimitLow = ( (0 << 24) | 726 ), - /// \brief The AutofocusLimitHigh parameter - PARAMETERID_AutofocusLimitHigh = ( (0 << 24) | 727 ), - /// \brief The AutofocusSpeedClamp parameter - PARAMETERID_AutofocusSpeedClamp = ( (0 << 24) | 728 ), - /// \brief The AutofocusHoldInput parameter - PARAMETERID_AutofocusHoldInput = ( (0 << 24) | 729 ), - /// \brief The AutofocusSetup parameter - PARAMETERID_AutofocusSetup = ( (0 << 24) | 730 ), - /// \brief The ExternalSyncFrequency parameter - PARAMETERID_ExternalSyncFrequency = ( (0 << 24) | 731 ), - /// \brief The GainPff parameter - PARAMETERID_GainPff = ( (0 << 24) | 762 ), - /// \brief The AutofocusInitialRampTime parameter - PARAMETERID_AutofocusInitialRampTime = ( (0 << 24) | 763 ), -} PARAMETERID; - -#endif // __PARAMETER_ID_H__ +/// \file ParameterId.h +/// \brief File contains parameter identifiers +/// +/// This file is version dependant and needs to match the rest of the software + +#ifndef __PARAMETER_ID_H__ +#define __PARAMETER_ID_H__ + + +/// \brief Represents a parameter identifier +typedef enum { + /// \brief The AxisType parameter + PARAMETERID_AxisType = ( (0 << 24) | 0 ), + /// \brief The ReverseMotionDirection parameter + PARAMETERID_ReverseMotionDirection = ( (0 << 24) | 1 ), + /// \brief The CountsPerUnit parameter + PARAMETERID_CountsPerUnit = ( (0 << 24) | 2 ), + /// \brief The ServoRate parameter + PARAMETERID_ServoRate = ( (0 << 24) | 3 ), + /// \brief The ServoSetup parameter + PARAMETERID_ServoSetup = ( (0 << 24) | 4 ), + /// \brief The GainKpos parameter + PARAMETERID_GainKpos = ( (0 << 24) | 5 ), + /// \brief The GainKi parameter + PARAMETERID_GainKi = ( (0 << 24) | 6 ), + /// \brief The GainKp parameter + PARAMETERID_GainKp = ( (0 << 24) | 7 ), + /// \brief The GainVff parameter + PARAMETERID_GainVff = ( (0 << 24) | 8 ), + /// \brief The GainAff parameter + PARAMETERID_GainAff = ( (0 << 24) | 9 ), + /// \brief The GainKv parameter + PARAMETERID_GainKv = ( (0 << 24) | 10 ), + /// \brief The GainKpi parameter + PARAMETERID_GainKpi = ( (0 << 24) | 11 ), + /// \brief The ServoFilter0CoeffN0 parameter + PARAMETERID_ServoFilter0CoeffN0 = ( (0 << 24) | 12 ), + /// \brief The ServoFilter0CoeffN1 parameter + PARAMETERID_ServoFilter0CoeffN1 = ( (0 << 24) | 13 ), + /// \brief The ServoFilter0CoeffN2 parameter + PARAMETERID_ServoFilter0CoeffN2 = ( (0 << 24) | 14 ), + /// \brief The ServoFilter0CoeffD1 parameter + PARAMETERID_ServoFilter0CoeffD1 = ( (0 << 24) | 15 ), + /// \brief The ServoFilter0CoeffD2 parameter + PARAMETERID_ServoFilter0CoeffD2 = ( (0 << 24) | 16 ), + /// \brief The ServoFilter1CoeffN0 parameter + PARAMETERID_ServoFilter1CoeffN0 = ( (0 << 24) | 17 ), + /// \brief The ServoFilter1CoeffN1 parameter + PARAMETERID_ServoFilter1CoeffN1 = ( (0 << 24) | 18 ), + /// \brief The ServoFilter1CoeffN2 parameter + PARAMETERID_ServoFilter1CoeffN2 = ( (0 << 24) | 19 ), + /// \brief The ServoFilter1CoeffD1 parameter + PARAMETERID_ServoFilter1CoeffD1 = ( (0 << 24) | 20 ), + /// \brief The ServoFilter1CoeffD2 parameter + PARAMETERID_ServoFilter1CoeffD2 = ( (0 << 24) | 21 ), + /// \brief The AmplifierDeadtime parameter + PARAMETERID_AmplifierDeadtime = ( (0 << 24) | 22 ), + /// \brief The RolloverCounts parameter + PARAMETERID_RolloverCounts = ( (0 << 24) | 23 ), + /// \brief The CurrentGainKi parameter + PARAMETERID_CurrentGainKi = ( (0 << 24) | 24 ), + /// \brief The CurrentGainKp parameter + PARAMETERID_CurrentGainKp = ( (0 << 24) | 25 ), + /// \brief The FaultMask parameter + PARAMETERID_FaultMask = ( (0 << 24) | 26 ), + /// \brief The FaultMaskDisable parameter + PARAMETERID_FaultMaskDisable = ( (0 << 24) | 27 ), + /// \brief The FaultMaskDecel parameter + PARAMETERID_FaultMaskDecel = ( (0 << 24) | 28 ), + /// \brief The EnableBrakeControl parameter + PARAMETERID_EnableBrakeControl = ( (0 << 24) | 29 ), + /// \brief The FaultMaskOutput parameter + PARAMETERID_FaultMaskOutput = ( (0 << 24) | 30 ), + /// \brief The ESTOPFaultInput parameter + PARAMETERID_ESTOPFaultInput = ( (0 << 24) | 31 ), + /// \brief The PositionErrorThreshold parameter + PARAMETERID_PositionErrorThreshold = ( (0 << 24) | 32 ), + /// \brief The AverageCurrentThreshold parameter + PARAMETERID_AverageCurrentThreshold = ( (0 << 24) | 33 ), + /// \brief The AverageCurrentTime parameter + PARAMETERID_AverageCurrentTime = ( (0 << 24) | 34 ), + /// \brief The VelocityCommandThreshold parameter + PARAMETERID_VelocityCommandThreshold = ( (0 << 24) | 35 ), + /// \brief The VelocityErrorThreshold parameter + PARAMETERID_VelocityErrorThreshold = ( (0 << 24) | 36 ), + /// \brief The SoftwareLimitLow parameter + PARAMETERID_SoftwareLimitLow = ( (0 << 24) | 37 ), + /// \brief The SoftwareLimitHigh parameter + PARAMETERID_SoftwareLimitHigh = ( (0 << 24) | 38 ), + /// \brief The MaxCurrentClamp parameter + PARAMETERID_MaxCurrentClamp = ( (0 << 24) | 39 ), + /// \brief The InPositionDistance parameter + PARAMETERID_InPositionDistance = ( (0 << 24) | 40 ), + /// \brief The MotorType parameter + PARAMETERID_MotorType = ( (0 << 24) | 41 ), + /// \brief The CyclesPerRev parameter + PARAMETERID_CyclesPerRev = ( (0 << 24) | 42 ), + /// \brief The CountsPerRev parameter + PARAMETERID_CountsPerRev = ( (0 << 24) | 43 ), + /// \brief The CommutationOffset parameter + PARAMETERID_CommutationOffset = ( (0 << 24) | 44 ), + /// \brief The AutoMsetTime parameter + PARAMETERID_AutoMsetTime = ( (0 << 24) | 45 ), + /// \brief The AutoMsetCurrent parameter + PARAMETERID_AutoMsetCurrent = ( (0 << 24) | 46 ), + /// \brief The PositionFeedbackType parameter + PARAMETERID_PositionFeedbackType = ( (0 << 24) | 47 ), + /// \brief The PositionFeedbackChannel parameter + PARAMETERID_PositionFeedbackChannel = ( (0 << 24) | 48 ), + /// \brief The VelocityFeedbackType parameter + PARAMETERID_VelocityFeedbackType = ( (0 << 24) | 49 ), + /// \brief The VelocityFeedbackChannel parameter + PARAMETERID_VelocityFeedbackChannel = ( (0 << 24) | 50 ), + /// \brief The EncoderMultiplicationFactor parameter + PARAMETERID_EncoderMultiplicationFactor = ( (0 << 24) | 51 ), + /// \brief The EncoderSineGain parameter + PARAMETERID_EncoderSineGain = ( (0 << 24) | 52 ), + /// \brief The EncoderSineOffset parameter + PARAMETERID_EncoderSineOffset = ( (0 << 24) | 53 ), + /// \brief The EncoderCosineGain parameter + PARAMETERID_EncoderCosineGain = ( (0 << 24) | 54 ), + /// \brief The EncoderCosineOffset parameter + PARAMETERID_EncoderCosineOffset = ( (0 << 24) | 55 ), + /// \brief The EncoderPhase parameter + PARAMETERID_EncoderPhase = ( (0 << 24) | 56 ), + /// \brief The GantryMasterAxis parameter + PARAMETERID_GantryMasterAxis = ( (0 << 24) | 57 ), + /// \brief The LimitDecelDistance parameter + PARAMETERID_LimitDecelDistance = ( (0 << 24) | 59 ), + /// \brief The LimitDebounceTime parameter + PARAMETERID_LimitDebounceTime = ( (0 << 24) | 60 ), + /// \brief The EndOfTravelLimitSetup parameter + PARAMETERID_EndOfTravelLimitSetup = ( (0 << 24) | 61 ), + /// \brief The BacklashDistance parameter + PARAMETERID_BacklashDistance = ( (0 << 24) | 62 ), + /// \brief The FaultOutputSetup parameter + PARAMETERID_FaultOutputSetup = ( (0 << 24) | 63 ), + /// \brief The FaultOutputState parameter + PARAMETERID_FaultOutputState = ( (0 << 24) | 64 ), + /// \brief The IOSetup parameter + PARAMETERID_IOSetup = ( (0 << 24) | 65 ), + /// \brief The BrakeOutput parameter + PARAMETERID_BrakeOutput = ( (0 << 24) | 66 ), + /// \brief The EncoderDivider parameter + PARAMETERID_EncoderDivider = ( (0 << 24) | 67 ), + /// \brief The ExternalFaultDigitalInput parameter + PARAMETERID_ExternalFaultDigitalInput = ( (0 << 24) | 68 ), + /// \brief The BrakeDisableDelay parameter + PARAMETERID_BrakeDisableDelay = ( (0 << 24) | 69 ), + /// \brief The MaxJogDistance parameter + PARAMETERID_MaxJogDistance = ( (0 << 24) | 70 ), + /// \brief The DefaultSpeed parameter + PARAMETERID_DefaultSpeed = ( (0 << 24) | 71 ), + /// \brief The DefaultRampRate parameter + PARAMETERID_DefaultRampRate = ( (0 << 24) | 72 ), + /// \brief The AbortDecelRate parameter + PARAMETERID_AbortDecelRate = ( (0 << 24) | 73 ), + /// \brief The HomeType parameter + PARAMETERID_HomeType = ( (0 << 24) | 74 ), + /// \brief The HomeSetup parameter + PARAMETERID_HomeSetup = ( (0 << 24) | 75 ), + /// \brief The HomeSpeed parameter + PARAMETERID_HomeSpeed = ( (0 << 24) | 76 ), + /// \brief The HomeOffset parameter + PARAMETERID_HomeOffset = ( (0 << 24) | 77 ), + /// \brief The HomeRampRate parameter + PARAMETERID_HomeRampRate = ( (0 << 24) | 78 ), + /// \brief The DefaultWaitMode parameter + PARAMETERID_DefaultWaitMode = ( (0 << 24) | 79 ), + /// \brief The DefaultSCurve parameter + PARAMETERID_DefaultSCurve = ( (0 << 24) | 80 ), + /// \brief The DataCollectionPoints parameter + PARAMETERID_DataCollectionPoints = ( (0 << 24) | 81 ), + /// \brief The StepperResolution parameter + PARAMETERID_StepperResolution = ( (0 << 24) | 83 ), + /// \brief The StepperRunningCurrent parameter + PARAMETERID_StepperRunningCurrent = ( (0 << 24) | 84 ), + /// \brief The StepperHoldingCurrent parameter + PARAMETERID_StepperHoldingCurrent = ( (0 << 24) | 85 ), + /// \brief The StepperVerificationSpeed parameter + PARAMETERID_StepperVerificationSpeed = ( (0 << 24) | 86 ), + /// \brief The LimitDebounceDistance parameter + PARAMETERID_LimitDebounceDistance = ( (0 << 24) | 87 ), + /// \brief The ServoFilter2CoeffN0 parameter + PARAMETERID_ServoFilter2CoeffN0 = ( (0 << 24) | 88 ), + /// \brief The ServoFilter2CoeffN1 parameter + PARAMETERID_ServoFilter2CoeffN1 = ( (0 << 24) | 89 ), + /// \brief The ServoFilter2CoeffN2 parameter + PARAMETERID_ServoFilter2CoeffN2 = ( (0 << 24) | 90 ), + /// \brief The ServoFilter2CoeffD1 parameter + PARAMETERID_ServoFilter2CoeffD1 = ( (0 << 24) | 91 ), + /// \brief The ServoFilter2CoeffD2 parameter + PARAMETERID_ServoFilter2CoeffD2 = ( (0 << 24) | 92 ), + /// \brief The ServoFilter3CoeffN0 parameter + PARAMETERID_ServoFilter3CoeffN0 = ( (0 << 24) | 93 ), + /// \brief The ServoFilter3CoeffN1 parameter + PARAMETERID_ServoFilter3CoeffN1 = ( (0 << 24) | 94 ), + /// \brief The ServoFilter3CoeffN2 parameter + PARAMETERID_ServoFilter3CoeffN2 = ( (0 << 24) | 95 ), + /// \brief The ServoFilter3CoeffD1 parameter + PARAMETERID_ServoFilter3CoeffD1 = ( (0 << 24) | 96 ), + /// \brief The ServoFilter3CoeffD2 parameter + PARAMETERID_ServoFilter3CoeffD2 = ( (0 << 24) | 97 ), + /// \brief The GearCamSource parameter + PARAMETERID_GearCamSource = ( (0 << 24) | 98 ), + /// \brief The GearCamIndex parameter + PARAMETERID_GearCamIndex = ( (0 << 24) | 99 ), + /// \brief The GearCamScaleFactor parameter + PARAMETERID_GearCamScaleFactor = ( (0 << 24) | 100 ), + /// \brief The GearCamAnalogDeadband parameter + PARAMETERID_GearCamAnalogDeadband = ( (0 << 24) | 105 ), + /// \brief The PrintBufferSize parameter + PARAMETERID_PrintBufferSize = ( (0 << 24) | 106 ), + /// \brief The SerialPort0XonCharacter parameter + PARAMETERID_SerialPort0XonCharacter = ( (0 << 24) | 109 ), + /// \brief The SerialPort0XoffCharacter parameter + PARAMETERID_SerialPort0XoffCharacter = ( (0 << 24) | 110 ), + /// \brief The SerialPort0BaudRate parameter + PARAMETERID_SerialPort0BaudRate = ( (0 << 24) | 111 ), + /// \brief The SerialPort0Setup parameter + PARAMETERID_SerialPort0Setup = ( (0 << 24) | 112 ), + /// \brief The TaskExecutionSetup parameter + PARAMETERID_TaskExecutionSetup = ( (0 << 24) | 113 ), + /// \brief The CodeSize parameter + PARAMETERID_CodeSize = ( (0 << 24) | 114 ), + /// \brief The DataSize parameter + PARAMETERID_DataSize = ( (0 << 24) | 115 ), + /// \brief The StackSize parameter + PARAMETERID_StackSize = ( (0 << 24) | 116 ), + /// \brief The AutoRunProgram parameter + PARAMETERID_AutoRunProgram = ( (0 << 24) | 118 ), + /// \brief The MaxJogSpeed parameter + PARAMETERID_MaxJogSpeed = ( (0 << 24) | 123 ), + /// \brief The GlobalIntegers parameter + PARAMETERID_GlobalIntegers = ( (0 << 24) | 124 ), + /// \brief The GlobalDoubles parameter + PARAMETERID_GlobalDoubles = ( (0 << 24) | 125 ), + /// \brief The DecimalPlaces parameter + PARAMETERID_DecimalPlaces = ( (0 << 24) | 126 ), + /// \brief The TaskErrorAbortAxes parameter + PARAMETERID_TaskErrorAbortAxes = ( (0 << 24) | 127 ), + /// \brief The CalibrationFile1D parameter + PARAMETERID_CalibrationFile1D = ( (0 << 24) | 128 ), + /// \brief The UnitsName parameter + PARAMETERID_UnitsName = ( (0 << 24) | 129 ), + /// \brief The Socket2RemoteIPAddress parameter + PARAMETERID_Socket2RemoteIPAddress = ( (0 << 24) | 130 ), + /// \brief The Socket2Port parameter + PARAMETERID_Socket2Port = ( (0 << 24) | 131 ), + /// \brief The Socket2Setup parameter + PARAMETERID_Socket2Setup = ( (0 << 24) | 132 ), + /// \brief The Socket2TransmissionSize parameter + PARAMETERID_Socket2TransmissionSize = ( (0 << 24) | 133 ), + /// \brief The Socket3RemoteIPAddress parameter + PARAMETERID_Socket3RemoteIPAddress = ( (0 << 24) | 134 ), + /// \brief The Socket3Port parameter + PARAMETERID_Socket3Port = ( (0 << 24) | 135 ), + /// \brief The Socket3Setup parameter + PARAMETERID_Socket3Setup = ( (0 << 24) | 136 ), + /// \brief The Socket3TransmissionSize parameter + PARAMETERID_Socket3TransmissionSize = ( (0 << 24) | 137 ), + /// \brief The Socket2Timeout parameter + PARAMETERID_Socket2Timeout = ( (0 << 24) | 138 ), + /// \brief The Socket3Timeout parameter + PARAMETERID_Socket3Timeout = ( (0 << 24) | 139 ), + /// \brief The AxisName parameter + PARAMETERID_AxisName = ( (0 << 24) | 140 ), + /// \brief The UserInteger0 parameter + PARAMETERID_UserInteger0 = ( (0 << 24) | 141 ), + /// \brief The UserInteger1 parameter + PARAMETERID_UserInteger1 = ( (0 << 24) | 142 ), + /// \brief The UserDouble0 parameter + PARAMETERID_UserDouble0 = ( (0 << 24) | 143 ), + /// \brief The UserDouble1 parameter + PARAMETERID_UserDouble1 = ( (0 << 24) | 144 ), + /// \brief The UserString0 parameter + PARAMETERID_UserString0 = ( (0 << 24) | 145 ), + /// \brief The UserString1 parameter + PARAMETERID_UserString1 = ( (0 << 24) | 146 ), + /// \brief The EnDatEncoderSetup parameter + PARAMETERID_EnDatEncoderSetup = ( (0 << 24) | 147 ), + /// \brief The EnDatEncoderResolution parameter + PARAMETERID_EnDatEncoderResolution = ( (0 << 24) | 148 ), + /// \brief The EnDatEncoderTurns parameter + PARAMETERID_EnDatEncoderTurns = ( (0 << 24) | 149 ), + /// \brief The CommandSetup parameter + PARAMETERID_CommandSetup = ( (0 << 24) | 150 ), + /// \brief The SerialPort1XonCharacter parameter + PARAMETERID_SerialPort1XonCharacter = ( (0 << 24) | 152 ), + /// \brief The SerialPort1XoffCharacter parameter + PARAMETERID_SerialPort1XoffCharacter = ( (0 << 24) | 153 ), + /// \brief The SerialPort1BaudRate parameter + PARAMETERID_SerialPort1BaudRate = ( (0 << 24) | 154 ), + /// \brief The SerialPort1Setup parameter + PARAMETERID_SerialPort1Setup = ( (0 << 24) | 155 ), + /// \brief The RequiredAxes parameter + PARAMETERID_RequiredAxes = ( (0 << 24) | 156 ), + /// \brief The JoystickInput1MinVoltage parameter + PARAMETERID_JoystickInput1MinVoltage = ( (0 << 24) | 157 ), + /// \brief The JoystickInput1MaxVoltage parameter + PARAMETERID_JoystickInput1MaxVoltage = ( (0 << 24) | 158 ), + /// \brief The JoystickInput1Deadband parameter + PARAMETERID_JoystickInput1Deadband = ( (0 << 24) | 159 ), + /// \brief The JoystickInput0MinVoltage parameter + PARAMETERID_JoystickInput0MinVoltage = ( (0 << 24) | 160 ), + /// \brief The JoystickInput0MaxVoltage parameter + PARAMETERID_JoystickInput0MaxVoltage = ( (0 << 24) | 161 ), + /// \brief The JoystickInput0Deadband parameter + PARAMETERID_JoystickInput0Deadband = ( (0 << 24) | 162 ), + /// \brief The JoystickLowSpeed parameter + PARAMETERID_JoystickLowSpeed = ( (0 << 24) | 163 ), + /// \brief The JoystickHighSpeed parameter + PARAMETERID_JoystickHighSpeed = ( (0 << 24) | 164 ), + /// \brief The JoystickSetup parameter + PARAMETERID_JoystickSetup = ( (0 << 24) | 165 ), + /// \brief The HomePositionSet parameter + PARAMETERID_HomePositionSet = ( (0 << 24) | 166 ), + /// \brief The TaskTerminationAxes parameter + PARAMETERID_TaskTerminationAxes = ( (0 << 24) | 167 ), + /// \brief The TaskStopAbortAxes parameter + PARAMETERID_TaskStopAbortAxes = ( (0 << 24) | 168 ), + /// \brief The CalibrationFile2D parameter + PARAMETERID_CalibrationFile2D = ( (0 << 24) | 169 ), + /// \brief The FaultMaskDisableDelay parameter + PARAMETERID_FaultMaskDisableDelay = ( (0 << 24) | 170 ), + /// \brief The DefaultCoordinatedSpeed parameter + PARAMETERID_DefaultCoordinatedSpeed = ( (0 << 24) | 171 ), + /// \brief The DefaultCoordinatedRampRate parameter + PARAMETERID_DefaultCoordinatedRampRate = ( (0 << 24) | 172 ), + /// \brief The DefaultDependentCoordinatedRampRate parameter + PARAMETERID_DefaultDependentCoordinatedRampRate = ( (0 << 24) | 173 ), + /// \brief The GpibTerminatingCharacter parameter + PARAMETERID_GpibTerminatingCharacter = ( (0 << 24) | 174 ), + /// \brief The GpibPrimaryAddress parameter + PARAMETERID_GpibPrimaryAddress = ( (0 << 24) | 175 ), + /// \brief The GpibParallelResponse parameter + PARAMETERID_GpibParallelResponse = ( (0 << 24) | 176 ), + /// \brief The CommandTerminatingCharacter parameter + PARAMETERID_CommandTerminatingCharacter = ( (0 << 24) | 177 ), + /// \brief The CommandSuccessCharacter parameter + PARAMETERID_CommandSuccessCharacter = ( (0 << 24) | 178 ), + /// \brief The CommandInvalidCharacter parameter + PARAMETERID_CommandInvalidCharacter = ( (0 << 24) | 179 ), + /// \brief The CommandFaultCharacter parameter + PARAMETERID_CommandFaultCharacter = ( (0 << 24) | 180 ), + /// \brief The FaultAbortAxes parameter + PARAMETERID_FaultAbortAxes = ( (0 << 24) | 182 ), + /// \brief The HarmonicCancellation0Type parameter + PARAMETERID_HarmonicCancellation0Type = ( (0 << 24) | 185 ), + /// \brief The HarmonicCancellation0Period parameter + PARAMETERID_HarmonicCancellation0Period = ( (0 << 24) | 186 ), + /// \brief The HarmonicCancellation0Gain parameter + PARAMETERID_HarmonicCancellation0Gain = ( (0 << 24) | 188 ), + /// \brief The HarmonicCancellation0Phase parameter + PARAMETERID_HarmonicCancellation0Phase = ( (0 << 24) | 189 ), + /// \brief The HarmonicCancellation1Type parameter + PARAMETERID_HarmonicCancellation1Type = ( (0 << 24) | 190 ), + /// \brief The HarmonicCancellation1Period parameter + PARAMETERID_HarmonicCancellation1Period = ( (0 << 24) | 191 ), + /// \brief The HarmonicCancellation1Gain parameter + PARAMETERID_HarmonicCancellation1Gain = ( (0 << 24) | 193 ), + /// \brief The HarmonicCancellation1Phase parameter + PARAMETERID_HarmonicCancellation1Phase = ( (0 << 24) | 194 ), + /// \brief The HarmonicCancellation2Type parameter + PARAMETERID_HarmonicCancellation2Type = ( (0 << 24) | 195 ), + /// \brief The HarmonicCancellation2Period parameter + PARAMETERID_HarmonicCancellation2Period = ( (0 << 24) | 196 ), + /// \brief The HarmonicCancellation2Gain parameter + PARAMETERID_HarmonicCancellation2Gain = ( (0 << 24) | 198 ), + /// \brief The HarmonicCancellation2Phase parameter + PARAMETERID_HarmonicCancellation2Phase = ( (0 << 24) | 199 ), + /// \brief The CommandTimeout parameter + PARAMETERID_CommandTimeout = ( (0 << 24) | 202 ), + /// \brief The CommandTimeoutCharacter parameter + PARAMETERID_CommandTimeoutCharacter = ( (0 << 24) | 203 ), + /// \brief The ResolverReferenceGain parameter + PARAMETERID_ResolverReferenceGain = ( (0 << 24) | 204 ), + /// \brief The ResolverSetup parameter + PARAMETERID_ResolverSetup = ( (0 << 24) | 205 ), + /// \brief The ResolverReferencePhase parameter + PARAMETERID_ResolverReferencePhase = ( (0 << 24) | 206 ), + /// \brief The SoftwareLimitSetup parameter + PARAMETERID_SoftwareLimitSetup = ( (0 << 24) | 210 ), + /// \brief The SSINet1Setup parameter + PARAMETERID_SSINet1Setup = ( (0 << 24) | 211 ), + /// \brief The SSINet2Setup parameter + PARAMETERID_SSINet2Setup = ( (0 << 24) | 212 ), + /// \brief The EmulatedQuadratureDivider parameter + PARAMETERID_EmulatedQuadratureDivider = ( (0 << 24) | 213 ), + /// \brief The HarmonicCancellation3Type parameter + PARAMETERID_HarmonicCancellation3Type = ( (0 << 24) | 214 ), + /// \brief The HarmonicCancellation3Period parameter + PARAMETERID_HarmonicCancellation3Period = ( (0 << 24) | 215 ), + /// \brief The HarmonicCancellation3Gain parameter + PARAMETERID_HarmonicCancellation3Gain = ( (0 << 24) | 217 ), + /// \brief The HarmonicCancellation3Phase parameter + PARAMETERID_HarmonicCancellation3Phase = ( (0 << 24) | 218 ), + /// \brief The HarmonicCancellation4Type parameter + PARAMETERID_HarmonicCancellation4Type = ( (0 << 24) | 219 ), + /// \brief The HarmonicCancellation4Period parameter + PARAMETERID_HarmonicCancellation4Period = ( (0 << 24) | 220 ), + /// \brief The HarmonicCancellation4Gain parameter + PARAMETERID_HarmonicCancellation4Gain = ( (0 << 24) | 222 ), + /// \brief The HarmonicCancellation4Phase parameter + PARAMETERID_HarmonicCancellation4Phase = ( (0 << 24) | 223 ), + /// \brief The EnhancedThroughputChannel parameter + PARAMETERID_EnhancedThroughputChannel = ( (0 << 24) | 224 ), + /// \brief The EnhancedThroughputGain parameter + PARAMETERID_EnhancedThroughputGain = ( (0 << 24) | 225 ), + /// \brief The HarmonicCancellationSetup parameter + PARAMETERID_HarmonicCancellationSetup = ( (0 << 24) | 226 ), + /// \brief The EnhancedThroughputCurrentClamp parameter + PARAMETERID_EnhancedThroughputCurrentClamp = ( (0 << 24) | 227 ), + /// \brief The Analog0Filter0CoeffN0 parameter + PARAMETERID_Analog0Filter0CoeffN0 = ( (0 << 24) | 228 ), + /// \brief The Analog0Filter0CoeffN1 parameter + PARAMETERID_Analog0Filter0CoeffN1 = ( (0 << 24) | 229 ), + /// \brief The Analog0Filter0CoeffN2 parameter + PARAMETERID_Analog0Filter0CoeffN2 = ( (0 << 24) | 230 ), + /// \brief The Analog0Filter0CoeffD1 parameter + PARAMETERID_Analog0Filter0CoeffD1 = ( (0 << 24) | 231 ), + /// \brief The Analog0Filter0CoeffD2 parameter + PARAMETERID_Analog0Filter0CoeffD2 = ( (0 << 24) | 232 ), + /// \brief The Analog0Filter1CoeffN0 parameter + PARAMETERID_Analog0Filter1CoeffN0 = ( (0 << 24) | 233 ), + /// \brief The Analog0Filter1CoeffN1 parameter + PARAMETERID_Analog0Filter1CoeffN1 = ( (0 << 24) | 234 ), + /// \brief The Analog0Filter1CoeffN2 parameter + PARAMETERID_Analog0Filter1CoeffN2 = ( (0 << 24) | 235 ), + /// \brief The Analog0Filter1CoeffD1 parameter + PARAMETERID_Analog0Filter1CoeffD1 = ( (0 << 24) | 236 ), + /// \brief The Analog0Filter1CoeffD2 parameter + PARAMETERID_Analog0Filter1CoeffD2 = ( (0 << 24) | 237 ), + /// \brief The Analog1Filter0CoeffN0 parameter + PARAMETERID_Analog1Filter0CoeffN0 = ( (0 << 24) | 238 ), + /// \brief The Analog1Filter0CoeffN1 parameter + PARAMETERID_Analog1Filter0CoeffN1 = ( (0 << 24) | 239 ), + /// \brief The Analog1Filter0CoeffN2 parameter + PARAMETERID_Analog1Filter0CoeffN2 = ( (0 << 24) | 240 ), + /// \brief The Analog1Filter0CoeffD1 parameter + PARAMETERID_Analog1Filter0CoeffD1 = ( (0 << 24) | 241 ), + /// \brief The Analog1Filter0CoeffD2 parameter + PARAMETERID_Analog1Filter0CoeffD2 = ( (0 << 24) | 242 ), + /// \brief The Analog1Filter1CoeffN0 parameter + PARAMETERID_Analog1Filter1CoeffN0 = ( (0 << 24) | 243 ), + /// \brief The Analog1Filter1CoeffN1 parameter + PARAMETERID_Analog1Filter1CoeffN1 = ( (0 << 24) | 244 ), + /// \brief The Analog1Filter1CoeffN2 parameter + PARAMETERID_Analog1Filter1CoeffN2 = ( (0 << 24) | 245 ), + /// \brief The Analog1Filter1CoeffD1 parameter + PARAMETERID_Analog1Filter1CoeffD1 = ( (0 << 24) | 246 ), + /// \brief The Analog1Filter1CoeffD2 parameter + PARAMETERID_Analog1Filter1CoeffD2 = ( (0 << 24) | 247 ), + /// \brief The GlobalStrings parameter + PARAMETERID_GlobalStrings = ( (0 << 24) | 248 ), + /// \brief The DefaultCoordinatedRampMode parameter + PARAMETERID_DefaultCoordinatedRampMode = ( (0 << 24) | 249 ), + /// \brief The DefaultCoordinatedRampTime parameter + PARAMETERID_DefaultCoordinatedRampTime = ( (0 << 24) | 250 ), + /// \brief The DefaultCoordinatedRampDistance parameter + PARAMETERID_DefaultCoordinatedRampDistance = ( (0 << 24) | 251 ), + /// \brief The DefaultRampMode parameter + PARAMETERID_DefaultRampMode = ( (0 << 24) | 252 ), + /// \brief The DefaultRampTime parameter + PARAMETERID_DefaultRampTime = ( (0 << 24) | 253 ), + /// \brief The DefaultRampDistance parameter + PARAMETERID_DefaultRampDistance = ( (0 << 24) | 254 ), + /// \brief The ServoFilterSetup parameter + PARAMETERID_ServoFilterSetup = ( (0 << 24) | 255 ), + /// \brief The FeedbackSetup parameter + PARAMETERID_FeedbackSetup = ( (0 << 24) | 256 ), + /// \brief The EncoderMultiplierSetup parameter + PARAMETERID_EncoderMultiplierSetup = ( (0 << 24) | 257 ), + /// \brief The FaultSetup parameter + PARAMETERID_FaultSetup = ( (0 << 24) | 258 ), + /// \brief The ThresholdScheduleSetup parameter + PARAMETERID_ThresholdScheduleSetup = ( (0 << 24) | 259 ), + /// \brief The ThresholdRegion2High parameter + PARAMETERID_ThresholdRegion2High = ( (0 << 24) | 260 ), + /// \brief The ThresholdRegion2Low parameter + PARAMETERID_ThresholdRegion2Low = ( (0 << 24) | 261 ), + /// \brief The ThresholdRegion3GainKpos parameter + PARAMETERID_ThresholdRegion3GainKpos = ( (0 << 24) | 262 ), + /// \brief The ThresholdRegion3GainKp parameter + PARAMETERID_ThresholdRegion3GainKp = ( (0 << 24) | 263 ), + /// \brief The ThresholdRegion3GainKi parameter + PARAMETERID_ThresholdRegion3GainKi = ( (0 << 24) | 264 ), + /// \brief The ThresholdRegion3GainKpi parameter + PARAMETERID_ThresholdRegion3GainKpi = ( (0 << 24) | 265 ), + /// \brief The ThresholdRegion4High parameter + PARAMETERID_ThresholdRegion4High = ( (0 << 24) | 266 ), + /// \brief The ThresholdRegion4Low parameter + PARAMETERID_ThresholdRegion4Low = ( (0 << 24) | 267 ), + /// \brief The ThresholdRegion5GainKpos parameter + PARAMETERID_ThresholdRegion5GainKpos = ( (0 << 24) | 268 ), + /// \brief The ThresholdRegion5GainKp parameter + PARAMETERID_ThresholdRegion5GainKp = ( (0 << 24) | 269 ), + /// \brief The ThresholdRegion5GainKi parameter + PARAMETERID_ThresholdRegion5GainKi = ( (0 << 24) | 270 ), + /// \brief The ThresholdRegion5GainKpi parameter + PARAMETERID_ThresholdRegion5GainKpi = ( (0 << 24) | 271 ), + /// \brief The DynamicScheduleSetup parameter + PARAMETERID_DynamicScheduleSetup = ( (0 << 24) | 272 ), + /// \brief The DynamicGainKposScale parameter + PARAMETERID_DynamicGainKposScale = ( (0 << 24) | 273 ), + /// \brief The DynamicGainKpScale parameter + PARAMETERID_DynamicGainKpScale = ( (0 << 24) | 274 ), + /// \brief The DynamicGainKiScale parameter + PARAMETERID_DynamicGainKiScale = ( (0 << 24) | 275 ), + /// \brief The ServoFilter4CoeffN0 parameter + PARAMETERID_ServoFilter4CoeffN0 = ( (0 << 24) | 276 ), + /// \brief The ServoFilter4CoeffN1 parameter + PARAMETERID_ServoFilter4CoeffN1 = ( (0 << 24) | 277 ), + /// \brief The ServoFilter4CoeffN2 parameter + PARAMETERID_ServoFilter4CoeffN2 = ( (0 << 24) | 278 ), + /// \brief The ServoFilter4CoeffD1 parameter + PARAMETERID_ServoFilter4CoeffD1 = ( (0 << 24) | 279 ), + /// \brief The ServoFilter4CoeffD2 parameter + PARAMETERID_ServoFilter4CoeffD2 = ( (0 << 24) | 280 ), + /// \brief The ServoFilter5CoeffN0 parameter + PARAMETERID_ServoFilter5CoeffN0 = ( (0 << 24) | 281 ), + /// \brief The ServoFilter5CoeffN1 parameter + PARAMETERID_ServoFilter5CoeffN1 = ( (0 << 24) | 282 ), + /// \brief The ServoFilter5CoeffN2 parameter + PARAMETERID_ServoFilter5CoeffN2 = ( (0 << 24) | 283 ), + /// \brief The ServoFilter5CoeffD1 parameter + PARAMETERID_ServoFilter5CoeffD1 = ( (0 << 24) | 284 ), + /// \brief The ServoFilter5CoeffD2 parameter + PARAMETERID_ServoFilter5CoeffD2 = ( (0 << 24) | 285 ), + /// \brief The ServoFilter6CoeffN0 parameter + PARAMETERID_ServoFilter6CoeffN0 = ( (0 << 24) | 286 ), + /// \brief The ServoFilter6CoeffN1 parameter + PARAMETERID_ServoFilter6CoeffN1 = ( (0 << 24) | 287 ), + /// \brief The ServoFilter6CoeffN2 parameter + PARAMETERID_ServoFilter6CoeffN2 = ( (0 << 24) | 288 ), + /// \brief The ServoFilter6CoeffD1 parameter + PARAMETERID_ServoFilter6CoeffD1 = ( (0 << 24) | 289 ), + /// \brief The ServoFilter6CoeffD2 parameter + PARAMETERID_ServoFilter6CoeffD2 = ( (0 << 24) | 290 ), + /// \brief The ServoFilter7CoeffN0 parameter + PARAMETERID_ServoFilter7CoeffN0 = ( (0 << 24) | 291 ), + /// \brief The ServoFilter7CoeffN1 parameter + PARAMETERID_ServoFilter7CoeffN1 = ( (0 << 24) | 292 ), + /// \brief The ServoFilter7CoeffN2 parameter + PARAMETERID_ServoFilter7CoeffN2 = ( (0 << 24) | 293 ), + /// \brief The ServoFilter7CoeffD1 parameter + PARAMETERID_ServoFilter7CoeffD1 = ( (0 << 24) | 294 ), + /// \brief The ServoFilter7CoeffD2 parameter + PARAMETERID_ServoFilter7CoeffD2 = ( (0 << 24) | 295 ), + /// \brief The LinearAmpMaxPower parameter + PARAMETERID_LinearAmpMaxPower = ( (0 << 24) | 296 ), + /// \brief The LinearAmpDeratingFactor parameter + PARAMETERID_LinearAmpDeratingFactor = ( (0 << 24) | 297 ), + /// \brief The LinearAmpBusVoltage parameter + PARAMETERID_LinearAmpBusVoltage = ( (0 << 24) | 298 ), + /// \brief The MotorResistance parameter + PARAMETERID_MotorResistance = ( (0 << 24) | 299 ), + /// \brief The MotorBackEMFConstant parameter + PARAMETERID_MotorBackEMFConstant = ( (0 << 24) | 300 ), + /// \brief The GantrySetup parameter + PARAMETERID_GantrySetup = ( (0 << 24) | 302 ), + /// \brief The RolloverMode parameter + PARAMETERID_RolloverMode = ( (0 << 24) | 303 ), + /// \brief The ResolverCoarseChannel parameter + PARAMETERID_ResolverCoarseChannel = ( (0 << 24) | 306 ), + /// \brief The ResolverFeedbackRatio parameter + PARAMETERID_ResolverFeedbackRatio = ( (0 << 24) | 307 ), + /// \brief The ResolverFeedbackOffset parameter + PARAMETERID_ResolverFeedbackOffset = ( (0 << 24) | 308 ), + /// \brief The InPositionTime parameter + PARAMETERID_InPositionTime = ( (0 << 24) | 319 ), + /// \brief The ExternalFaultAnalogInput parameter + PARAMETERID_ExternalFaultAnalogInput = ( (0 << 24) | 424 ), + /// \brief The ExternalFaultThreshold parameter + PARAMETERID_ExternalFaultThreshold = ( (0 << 24) | 425 ), + /// \brief The DisplayAxes parameter + PARAMETERID_DisplayAxes = ( (0 << 24) | 426 ), + /// \brief The DefaultDependentCoordinatedSpeed parameter + PARAMETERID_DefaultDependentCoordinatedSpeed = ( (0 << 24) | 427 ), + /// \brief The AnalogFilterSetup parameter + PARAMETERID_AnalogFilterSetup = ( (0 << 24) | 482 ), + /// \brief The ModbusMasterSlaveIPAddress parameter + PARAMETERID_ModbusMasterSlaveIPAddress = ( (0 << 24) | 489 ), + /// \brief The ModbusMasterSlavePort parameter + PARAMETERID_ModbusMasterSlavePort = ( (0 << 24) | 490 ), + /// \brief The ModbusMasterSlaveID parameter + PARAMETERID_ModbusMasterSlaveID = ( (0 << 24) | 491 ), + /// \brief The ModbusMasterInputWords parameter + PARAMETERID_ModbusMasterInputWords = ( (0 << 24) | 492 ), + /// \brief The ModbusMasterOutputWords parameter + PARAMETERID_ModbusMasterOutputWords = ( (0 << 24) | 493 ), + /// \brief The ModbusMasterInputBits parameter + PARAMETERID_ModbusMasterInputBits = ( (0 << 24) | 494 ), + /// \brief The ModbusMasterOutputBits parameter + PARAMETERID_ModbusMasterOutputBits = ( (0 << 24) | 495 ), + /// \brief The ModbusMasterSetup parameter + PARAMETERID_ModbusMasterSetup = ( (0 << 24) | 496 ), + /// \brief The ModbusMasterVirtualInputs parameter + PARAMETERID_ModbusMasterVirtualInputs = ( (0 << 24) | 499 ), + /// \brief The ModbusMasterVirtualOutputs parameter + PARAMETERID_ModbusMasterVirtualOutputs = ( (0 << 24) | 500 ), + /// \brief The ModbusMasterOutputWordsSections parameter + PARAMETERID_ModbusMasterOutputWordsSections = ( (0 << 24) | 501 ), + /// \brief The ModbusMasterOutputBitsSections parameter + PARAMETERID_ModbusMasterOutputBitsSections = ( (0 << 24) | 502 ), + /// \brief The ModbusMasterRWReadOffset parameter + PARAMETERID_ModbusMasterRWReadOffset = ( (0 << 24) | 503 ), + /// \brief The ModbusMasterInputWordsOffset parameter + PARAMETERID_ModbusMasterInputWordsOffset = ( (0 << 24) | 504 ), + /// \brief The ModbusMasterOutputWordsOffset parameter + PARAMETERID_ModbusMasterOutputWordsOffset = ( (0 << 24) | 505 ), + /// \brief The ModbusMasterInputBitsOffset parameter + PARAMETERID_ModbusMasterInputBitsOffset = ( (0 << 24) | 506 ), + /// \brief The ModbusMasterOutputBitsOffset parameter + PARAMETERID_ModbusMasterOutputBitsOffset = ( (0 << 24) | 507 ), + /// \brief The ModbusMasterStatusWordsOffset parameter + PARAMETERID_ModbusMasterStatusWordsOffset = ( (0 << 24) | 508 ), + /// \brief The ModbusMasterStatusBitsOffset parameter + PARAMETERID_ModbusMasterStatusBitsOffset = ( (0 << 24) | 509 ), + /// \brief The ModbusMasterVirtualInputsOffset parameter + PARAMETERID_ModbusMasterVirtualInputsOffset = ( (0 << 24) | 510 ), + /// \brief The ModbusMasterVirtualOutputsOffset parameter + PARAMETERID_ModbusMasterVirtualOutputsOffset = ( (0 << 24) | 511 ), + /// \brief The ModbusMasterRWWriteOffset parameter + PARAMETERID_ModbusMasterRWWriteOffset = ( (0 << 24) | 512 ), + /// \brief The ModbusMasterFunctions parameter + PARAMETERID_ModbusMasterFunctions = ( (0 << 24) | 513 ), + /// \brief The ModbusMasterSlaveType parameter + PARAMETERID_ModbusMasterSlaveType = ( (0 << 24) | 514 ), + /// \brief The ModbusSlaveUnitID parameter + PARAMETERID_ModbusSlaveUnitID = ( (0 << 24) | 516 ), + /// \brief The ModbusSlaveInputWords parameter + PARAMETERID_ModbusSlaveInputWords = ( (0 << 24) | 517 ), + /// \brief The ModbusSlaveOutputWords parameter + PARAMETERID_ModbusSlaveOutputWords = ( (0 << 24) | 518 ), + /// \brief The ModbusSlaveInputBits parameter + PARAMETERID_ModbusSlaveInputBits = ( (0 << 24) | 519 ), + /// \brief The ModbusSlaveOutputBits parameter + PARAMETERID_ModbusSlaveOutputBits = ( (0 << 24) | 520 ), + /// \brief The ModbusSlaveInputWordsOffset parameter + PARAMETERID_ModbusSlaveInputWordsOffset = ( (0 << 24) | 521 ), + /// \brief The ModbusSlaveOutputWordsOffset parameter + PARAMETERID_ModbusSlaveOutputWordsOffset = ( (0 << 24) | 522 ), + /// \brief The ModbusSlaveInputBitsOffset parameter + PARAMETERID_ModbusSlaveInputBitsOffset = ( (0 << 24) | 523 ), + /// \brief The ModbusSlaveOutputBitsOffset parameter + PARAMETERID_ModbusSlaveOutputBitsOffset = ( (0 << 24) | 524 ), + /// \brief The ModbusSlaveRWReadOffset parameter + PARAMETERID_ModbusSlaveRWReadOffset = ( (0 << 24) | 525 ), + /// \brief The ModbusSlaveRWWriteOffset parameter + PARAMETERID_ModbusSlaveRWWriteOffset = ( (0 << 24) | 526 ), + /// \brief The CurrentOffsetA parameter + PARAMETERID_CurrentOffsetA = ( (0 << 24) | 662 ), + /// \brief The CurrentOffsetB parameter + PARAMETERID_CurrentOffsetB = ( (0 << 24) | 663 ), + /// \brief The CommandShaperSetup parameter + PARAMETERID_CommandShaperSetup = ( (0 << 24) | 666 ), + /// \brief The CommandShaperTime00 parameter + PARAMETERID_CommandShaperTime00 = ( (0 << 24) | 667 ), + /// \brief The CommandShaperTime01 parameter + PARAMETERID_CommandShaperTime01 = ( (0 << 24) | 668 ), + /// \brief The CommandShaperTime02 parameter + PARAMETERID_CommandShaperTime02 = ( (0 << 24) | 669 ), + /// \brief The CommandShaperTime03 parameter + PARAMETERID_CommandShaperTime03 = ( (0 << 24) | 670 ), + /// \brief The CommandShaperTime04 parameter + PARAMETERID_CommandShaperTime04 = ( (0 << 24) | 671 ), + /// \brief The CommandShaperTime05 parameter + PARAMETERID_CommandShaperTime05 = ( (0 << 24) | 672 ), + /// \brief The CommandShaperTime06 parameter + PARAMETERID_CommandShaperTime06 = ( (0 << 24) | 673 ), + /// \brief The CommandShaperTime07 parameter + PARAMETERID_CommandShaperTime07 = ( (0 << 24) | 674 ), + /// \brief The CommandShaperTime08 parameter + PARAMETERID_CommandShaperTime08 = ( (0 << 24) | 675 ), + /// \brief The CommandShaperTime09 parameter + PARAMETERID_CommandShaperTime09 = ( (0 << 24) | 676 ), + /// \brief The CommandShaperTime10 parameter + PARAMETERID_CommandShaperTime10 = ( (0 << 24) | 677 ), + /// \brief The CommandShaperTime11 parameter + PARAMETERID_CommandShaperTime11 = ( (0 << 24) | 678 ), + /// \brief The CommandShaperTime12 parameter + PARAMETERID_CommandShaperTime12 = ( (0 << 24) | 679 ), + /// \brief The CommandShaperTime13 parameter + PARAMETERID_CommandShaperTime13 = ( (0 << 24) | 680 ), + /// \brief The CommandShaperTime14 parameter + PARAMETERID_CommandShaperTime14 = ( (0 << 24) | 681 ), + /// \brief The CommandShaperTime15 parameter + PARAMETERID_CommandShaperTime15 = ( (0 << 24) | 682 ), + /// \brief The CommandShaperCoeff00 parameter + PARAMETERID_CommandShaperCoeff00 = ( (0 << 24) | 683 ), + /// \brief The CommandShaperCoeff01 parameter + PARAMETERID_CommandShaperCoeff01 = ( (0 << 24) | 684 ), + /// \brief The CommandShaperCoeff02 parameter + PARAMETERID_CommandShaperCoeff02 = ( (0 << 24) | 685 ), + /// \brief The CommandShaperCoeff03 parameter + PARAMETERID_CommandShaperCoeff03 = ( (0 << 24) | 686 ), + /// \brief The CommandShaperCoeff04 parameter + PARAMETERID_CommandShaperCoeff04 = ( (0 << 24) | 687 ), + /// \brief The CommandShaperCoeff05 parameter + PARAMETERID_CommandShaperCoeff05 = ( (0 << 24) | 688 ), + /// \brief The CommandShaperCoeff06 parameter + PARAMETERID_CommandShaperCoeff06 = ( (0 << 24) | 689 ), + /// \brief The CommandShaperCoeff07 parameter + PARAMETERID_CommandShaperCoeff07 = ( (0 << 24) | 690 ), + /// \brief The CommandShaperCoeff08 parameter + PARAMETERID_CommandShaperCoeff08 = ( (0 << 24) | 691 ), + /// \brief The CommandShaperCoeff09 parameter + PARAMETERID_CommandShaperCoeff09 = ( (0 << 24) | 692 ), + /// \brief The CommandShaperCoeff10 parameter + PARAMETERID_CommandShaperCoeff10 = ( (0 << 24) | 693 ), + /// \brief The CommandShaperCoeff11 parameter + PARAMETERID_CommandShaperCoeff11 = ( (0 << 24) | 694 ), + /// \brief The CommandShaperCoeff12 parameter + PARAMETERID_CommandShaperCoeff12 = ( (0 << 24) | 695 ), + /// \brief The CommandShaperCoeff13 parameter + PARAMETERID_CommandShaperCoeff13 = ( (0 << 24) | 696 ), + /// \brief The CommandShaperCoeff14 parameter + PARAMETERID_CommandShaperCoeff14 = ( (0 << 24) | 697 ), + /// \brief The CommandShaperCoeff15 parameter + PARAMETERID_CommandShaperCoeff15 = ( (0 << 24) | 698 ), + /// \brief The CommandShaper0Type parameter + PARAMETERID_CommandShaper0Type = ( (0 << 24) | 703 ), + /// \brief The CommandShaper0Frequency parameter + PARAMETERID_CommandShaper0Frequency = ( (0 << 24) | 704 ), + /// \brief The CommandShaper0Damping parameter + PARAMETERID_CommandShaper0Damping = ( (0 << 24) | 705 ), + /// \brief The CommandShaper1Type parameter + PARAMETERID_CommandShaper1Type = ( (0 << 24) | 706 ), + /// \brief The CommandShaper1Frequency parameter + PARAMETERID_CommandShaper1Frequency = ( (0 << 24) | 707 ), + /// \brief The CommandShaper1Damping parameter + PARAMETERID_CommandShaper1Damping = ( (0 << 24) | 708 ), + /// \brief The ResoluteEncoderSetup parameter + PARAMETERID_ResoluteEncoderSetup = ( (0 << 24) | 715 ), + /// \brief The ResoluteEncoderResolution parameter + PARAMETERID_ResoluteEncoderResolution = ( (0 << 24) | 716 ), + /// \brief The ResoluteEncoderUserResolution parameter + PARAMETERID_ResoluteEncoderUserResolution = ( (0 << 24) | 717 ), + /// \brief The AutofocusInput parameter + PARAMETERID_AutofocusInput = ( (0 << 24) | 721 ), + /// \brief The AutofocusTarget parameter + PARAMETERID_AutofocusTarget = ( (0 << 24) | 722 ), + /// \brief The AutofocusDeadband parameter + PARAMETERID_AutofocusDeadband = ( (0 << 24) | 723 ), + /// \brief The AutofocusGainKi parameter + PARAMETERID_AutofocusGainKi = ( (0 << 24) | 724 ), + /// \brief The AutofocusGainKp parameter + PARAMETERID_AutofocusGainKp = ( (0 << 24) | 725 ), + /// \brief The AutofocusLimitLow parameter + PARAMETERID_AutofocusLimitLow = ( (0 << 24) | 726 ), + /// \brief The AutofocusLimitHigh parameter + PARAMETERID_AutofocusLimitHigh = ( (0 << 24) | 727 ), + /// \brief The AutofocusSpeedClamp parameter + PARAMETERID_AutofocusSpeedClamp = ( (0 << 24) | 728 ), + /// \brief The AutofocusHoldInput parameter + PARAMETERID_AutofocusHoldInput = ( (0 << 24) | 729 ), + /// \brief The AutofocusSetup parameter + PARAMETERID_AutofocusSetup = ( (0 << 24) | 730 ), + /// \brief The ExternalSyncFrequency parameter + PARAMETERID_ExternalSyncFrequency = ( (0 << 24) | 731 ), + /// \brief The GainPff parameter + PARAMETERID_GainPff = ( (0 << 24) | 762 ), + /// \brief The AutofocusInitialRampTime parameter + PARAMETERID_AutofocusInitialRampTime = ( (0 << 24) | 763 ), +} PARAMETERID; + +#endif // __PARAMETER_ID_H__ diff --git a/motorApp/AerotechSrc/doCommand.ab b/motorApp/AerotechSrc/doCommand.ab index 887996934..e459bc51e 100755 --- a/motorApp/AerotechSrc/doCommand.ab +++ b/motorApp/AerotechSrc/doCommand.ab @@ -1,235 +1,235 @@ -HEADER - DEFINE cmdDONE 0 - DEFINE cmdVELOCITY_ON 1 - DEFINE cmdVELOCITY_OFF 2 - DEFINE cmdHALT 3 - DEFINE cmdSTART 4 - DEFINE cmdPVT_INIT_TIME_ABS 5 - DEFINE cmdPVT_INIT_TIME_INC 6 - DEFINE cmdPVT1 7 - DEFINE cmdPVT2 8 - DEFINE cmdPVT3 9 - DEFINE cmdPVT 10 - DEFINE cmdABORT 11 - DEFINE cmdSTARTABORT 12 - - DEFINE cmdSCOPEBUFFER 13 - DEFINE cmdSCOPEDATA 14 - DEFINE cmdSCOPESTATUS 15 - DEFINE cmdSCOPETRIG 16 - DEFINE cmdSCOPETRIGPERIOD 17 - DEFINE cmdDRIVEINFO 18 - DEFINE cmdLINEAR 19 - DEFINE cmdDATAACQ_TRIG 20 - DEFINE cmdDATAACQ_INP 21 - DEFINE cmdDATAACQ_ON 22 - DEFINE cmdDATAACQ_OFF 23 - DEFINE cmdDATAACQ_READ 24 - DEFINE cmdDOTRAJECTORY 25 - - DEFINE cmdVar 45 - DEFINE iarg1Var 46 - DEFINE iarg2Var 47 - DEFINE iarg3Var 48 - DEFINE iarg4Var 49 - DEFINE darg1Var 1 - DEFINE darg2Var 2 - DEFINE darg3Var 3 - DEFINE darg4Var 4 - DEFINE darg5Var 5 - DEFINE darg6Var 6 - DEFINE darg7Var 7 - DEFINE darg8Var 8 - DEFINE darg9Var 9 - DEFINE numIArg 44 - DEFINE numDArg 43 - DEFINE pvtWaitMSVar 42 - - ' Numerical values for first arg to scopedata() - DEFINE sd_PositionCommand 0 - DEFINE sd_PositionFeedback 1 - DEFINE sd_ExternalPosition 2 - DEFINE sd_AxisFault 3 - DEFINE sd_AxisStatus 4 - DEFINE sd_AnalogInput0 5 - DEFINE sd_AnalogInput1 6 - DEFINE sd_AnalogOutput0 7 - DEFINE sd_AnalogOutput1 8 - DEFINE sd_DigitalInput0 9 - DEFINE sd_DigitalInput1 10 - DEFINE sd_DigitalOutput0 11 - DEFINE sd_DigitalOutput1 12 - DEFINE sd_CurrentCommand 13 - DEFINE sd_CurrentFeedback 14 - DEFINE sd_OptionalData1 15 - DEFINE sd_OptionalData2 16 - DEFINE sd_ProgramCounter 17 - -END HEADER - -PROGRAM - - DIM axis1Number AS Integer - DIM axis2Number AS Integer - DIM axis3Number AS Integer - DIM axis4Number AS Integer - DIM keepon as Integer - DIM iarg as integer - DIM pvtWaitMS as integer - dim pos as double - dim vel as double - dim timeval as double - dim timeIsAbs as integer - dim timeInitialized as integer - dim numpoints as integer - dim i as integer - - wait mode nowait - ABS - keepon = 1 - pvtWaitMS = IGLOBAL(pvtWaitMSVar) - IF pvtWaitMS < 1 THEN - pvtWaitMS = 50 - END IF - WHILE keepon - IF IGLOBAL(cmdVar) = cmdPVT1 THEN - axis1Number = IGLOBAL(iarg1Var) - pos = DGLOBAL(darg1Var) - vel = DGLOBAL(darg2Var) - timeval = DGLOBAL(darg3Var) - if timeIsAbs and not timeInitialized then - PVT INIT TIME ABS - timeInitialized = 1 - end if - PVT @axis1Number pos, vel TIME timeval - ELSEIF IGLOBAL(cmdVar) = cmdVELOCITY_ON THEN - VELOCITY ON - ELSEIF IGLOBAL(cmdVar) = cmdVELOCITY_OFF THEN - VELOCITY OFF - ELSEIF IGLOBAL(cmdVar) = cmdHALT THEN - HALT - ELSEIF IGLOBAL(cmdVar) = cmdSTARTABORT THEN - START - ABORT @0 - acknowledgeall - enable @0 - keepon = 0 - ELSEIF IGLOBAL(cmdVar) = cmdSTART THEN - START - keepon = 0 - ELSEIF IGLOBAL(cmdVar) = cmdPVT THEN - axis1Number = IGLOBAL(iarg1Var) - axis2Number = IGLOBAL(iarg2Var) - axis3Number = IGLOBAL(iarg3Var) - axis4Number = IGLOBAL(iarg4Var) - if IGLOBAL(numIArg) = 1 then - PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) TIME DGLOBAL(darg3Var) - elseif IGLOBAL(numIArg) = 2 then - PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) @axis2Number DGLOBAL(darg3Var), DGLOBAL(darg4Var) TIME DGLOBAL(darg5Var) - elseif IGLOBAL(numIArg) = 3 then - PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) @axis2Number DGLOBAL(darg3Var), DGLOBAL(darg4Var) @axis3Number DGLOBAL(darg5Var), DGLOBAL(darg6Var) TIME DGLOBAL(darg7Var) - elseif IGLOBAL(numIArg) = 4 then - PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) @axis2Number DGLOBAL(darg3Var), DGLOBAL(darg4Var) @axis3Number DGLOBAL(darg5Var), DGLOBAL(darg6Var) @axis4Number DGLOBAL(darg7Var), DGLOBAL(darg8Var) TIME DGLOBAL(darg9Var) - end if - ELSEIF IGLOBAL(cmdVar) = cmdPVT_INIT_TIME_ABS THEN - 'PVT INIT TIME ABS - timeIsAbs = 1 - timeInitialized = 0 - ELSEIF IGLOBAL(cmdVar) = cmdPVT_INIT_TIME_INC THEN - timeIsAbs = 0 - PVT INIT TIME INC - ELSEIF IGLOBAL(cmdVar) = cmdABORT THEN - axis1Number = IGLOBAL(iarg1Var) - axis2Number = IGLOBAL(iarg2Var) - axis3Number = IGLOBAL(iarg3Var) - axis4Number = IGLOBAL(iarg4Var) - if IGLOBAL(numIArg) = 1 then - ABORT @axis1Number - elseif IGLOBAL(numIArg) = 2 then - ABORT @axis1Number @axis2Number - elseif IGLOBAL(numIArg) = 3 then - ABORT @axis1Number @axis2Number @axis3Number - elseif IGLOBAL(numIArg) = 4 then - ABORT @axis1Number @axis2Number @axis3Number @axis4Number - end if - keepon = 0 - ELSEIF IGLOBAL(cmdVar) = cmdSCOPEBUFFER THEN - iarg = IGLOBAL(iarg1Var) - SCOPEBUFFER iarg - ELSEIF IGLOBAL(cmdVar) = cmdSCOPEDATA THEN - iarg = IGLOBAL(iarg1Var) - if iarg = sd_PositionCommand then - DGLOBAL(darg1Var) = SCOPEDATA(PositionCommand, IGLOBAL(iarg2Var)) - elseif iarg = sd_PositionFeedback then - DGLOBAL(darg1Var) = SCOPEDATA(PositionFeedback, IGLOBAL(iarg2Var)) - elseif iarg = sd_CurrentFeedback then - DGLOBAL(darg1Var) = SCOPEDATA(CurrentFeedback, IGLOBAL(iarg2Var)) - else - DGLOBAL(darg1Var) = -1.2345654321 - end if - ELSEIF IGLOBAL(cmdVar) = cmdSCOPESTATUS THEN - IGLOBAL(iarg1Var) = SCOPESTATUS(IGLOBAL(iarg1Var)) - ELSEIF IGLOBAL(cmdVar) = cmdSCOPETRIG THEN - if IGLOBAL(iarg1Var) = 1 then - SCOPETRIG STOP - ELSE - SCOPETRIG - END IF - ELSEIF IGLOBAL(cmdVar) = cmdSCOPETRIGPERIOD THEN - iarg = IGLOBAL(iarg1Var) - 'SCOPETRIGPERIOD iarg - SCOPETRIGPERIOD iarg*1.0 - ' Not until version 4.03 - ' ELSEIF IGLOBAL(cmdVar) = cmdDRIVEINFO THEN - ' IGLOBAL(iarg1Var) = DRIVEINFO(X, 59) - ELSEIF IGLOBAL(cmdVar) = cmdLINEAR THEN - axis1Number = IGLOBAL(iarg1Var) - LINEAR @axis1Number DGLOBAL(darg1Var) F DGLOBAL(darg2Var) - ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_TRIG THEN - axis1Number = IGLOBAL(iarg1Var) - DATAACQ @axis1Number TRIGGER IGLOBAL(iarg2Var) - ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_INP THEN - axis1Number = IGLOBAL(iarg1Var) - DATAACQ @axis1Number INPUT IGLOBAL(iarg2Var) - ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_ON THEN - axis1Number = IGLOBAL(iarg1Var) - DATAACQ @axis1Number ON IGLOBAL(iarg2Var) - ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_OFF THEN - axis1Number = IGLOBAL(iarg1Var) - DATAACQ @axis1Number OFF - ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_READ THEN - axis1Number = IGLOBAL(iarg1Var) - DATAACQ @axis1Number READ IGLOBAL(iarg2Var), IGLOBAL(iarg3Var) - ELSEIF IGLOBAL(cmdVar) = cmdDOTRAJECTORY THEN - axis1Number = IGLOBAL(iarg1Var) - numpoints = IGLOBAL(iarg2Var) - VELOCITY ON - PVT INIT TIME ABS - for i = 0 to numpoints-1 step 1 - pos = dglobal(3*i) - vel = dglobal(3*i+1) - timeVal = dglobal(3*i+2) - if i = numpoints-2 then - VELOCITY OFF - end if - PVT @axis1Number pos, vel time timeVal - dwell pvtWaitMS/1000 - next i - elseif IGLOBAL(cmdVar) = cmdDONE then - ' do nothing - ' else - ' IGLOBAL(cmdVar) = 1000 - END IF - - IF IGLOBAL(cmdVar) = cmdPVT1 THEN - D = pvtWaitMS/1000 - ELSE - D = .001 - END IF - if IGLOBAL(cmdVar) > 0 then - IGLOBAL(cmdVar) = -(IGLOBAL(cmdVar)) - end if - DWELL D - WEND - -END PROGRAM +HEADER + DEFINE cmdDONE 0 + DEFINE cmdVELOCITY_ON 1 + DEFINE cmdVELOCITY_OFF 2 + DEFINE cmdHALT 3 + DEFINE cmdSTART 4 + DEFINE cmdPVT_INIT_TIME_ABS 5 + DEFINE cmdPVT_INIT_TIME_INC 6 + DEFINE cmdPVT1 7 + DEFINE cmdPVT2 8 + DEFINE cmdPVT3 9 + DEFINE cmdPVT 10 + DEFINE cmdABORT 11 + DEFINE cmdSTARTABORT 12 + + DEFINE cmdSCOPEBUFFER 13 + DEFINE cmdSCOPEDATA 14 + DEFINE cmdSCOPESTATUS 15 + DEFINE cmdSCOPETRIG 16 + DEFINE cmdSCOPETRIGPERIOD 17 + DEFINE cmdDRIVEINFO 18 + DEFINE cmdLINEAR 19 + DEFINE cmdDATAACQ_TRIG 20 + DEFINE cmdDATAACQ_INP 21 + DEFINE cmdDATAACQ_ON 22 + DEFINE cmdDATAACQ_OFF 23 + DEFINE cmdDATAACQ_READ 24 + DEFINE cmdDOTRAJECTORY 25 + + DEFINE cmdVar 45 + DEFINE iarg1Var 46 + DEFINE iarg2Var 47 + DEFINE iarg3Var 48 + DEFINE iarg4Var 49 + DEFINE darg1Var 1 + DEFINE darg2Var 2 + DEFINE darg3Var 3 + DEFINE darg4Var 4 + DEFINE darg5Var 5 + DEFINE darg6Var 6 + DEFINE darg7Var 7 + DEFINE darg8Var 8 + DEFINE darg9Var 9 + DEFINE numIArg 44 + DEFINE numDArg 43 + DEFINE pvtWaitMSVar 42 + + ' Numerical values for first arg to scopedata() + DEFINE sd_PositionCommand 0 + DEFINE sd_PositionFeedback 1 + DEFINE sd_ExternalPosition 2 + DEFINE sd_AxisFault 3 + DEFINE sd_AxisStatus 4 + DEFINE sd_AnalogInput0 5 + DEFINE sd_AnalogInput1 6 + DEFINE sd_AnalogOutput0 7 + DEFINE sd_AnalogOutput1 8 + DEFINE sd_DigitalInput0 9 + DEFINE sd_DigitalInput1 10 + DEFINE sd_DigitalOutput0 11 + DEFINE sd_DigitalOutput1 12 + DEFINE sd_CurrentCommand 13 + DEFINE sd_CurrentFeedback 14 + DEFINE sd_OptionalData1 15 + DEFINE sd_OptionalData2 16 + DEFINE sd_ProgramCounter 17 + +END HEADER + +PROGRAM + + DIM axis1Number AS Integer + DIM axis2Number AS Integer + DIM axis3Number AS Integer + DIM axis4Number AS Integer + DIM keepon as Integer + DIM iarg as integer + DIM pvtWaitMS as integer + dim pos as double + dim vel as double + dim timeval as double + dim timeIsAbs as integer + dim timeInitialized as integer + dim numpoints as integer + dim i as integer + + wait mode nowait + ABS + keepon = 1 + pvtWaitMS = IGLOBAL(pvtWaitMSVar) + IF pvtWaitMS < 1 THEN + pvtWaitMS = 50 + END IF + WHILE keepon + IF IGLOBAL(cmdVar) = cmdPVT1 THEN + axis1Number = IGLOBAL(iarg1Var) + pos = DGLOBAL(darg1Var) + vel = DGLOBAL(darg2Var) + timeval = DGLOBAL(darg3Var) + if timeIsAbs and not timeInitialized then + PVT INIT TIME ABS + timeInitialized = 1 + end if + PVT @axis1Number pos, vel TIME timeval + ELSEIF IGLOBAL(cmdVar) = cmdVELOCITY_ON THEN + VELOCITY ON + ELSEIF IGLOBAL(cmdVar) = cmdVELOCITY_OFF THEN + VELOCITY OFF + ELSEIF IGLOBAL(cmdVar) = cmdHALT THEN + HALT + ELSEIF IGLOBAL(cmdVar) = cmdSTARTABORT THEN + START + ABORT @0 + acknowledgeall + enable @0 + keepon = 0 + ELSEIF IGLOBAL(cmdVar) = cmdSTART THEN + START + keepon = 0 + ELSEIF IGLOBAL(cmdVar) = cmdPVT THEN + axis1Number = IGLOBAL(iarg1Var) + axis2Number = IGLOBAL(iarg2Var) + axis3Number = IGLOBAL(iarg3Var) + axis4Number = IGLOBAL(iarg4Var) + if IGLOBAL(numIArg) = 1 then + PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) TIME DGLOBAL(darg3Var) + elseif IGLOBAL(numIArg) = 2 then + PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) @axis2Number DGLOBAL(darg3Var), DGLOBAL(darg4Var) TIME DGLOBAL(darg5Var) + elseif IGLOBAL(numIArg) = 3 then + PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) @axis2Number DGLOBAL(darg3Var), DGLOBAL(darg4Var) @axis3Number DGLOBAL(darg5Var), DGLOBAL(darg6Var) TIME DGLOBAL(darg7Var) + elseif IGLOBAL(numIArg) = 4 then + PVT @axis1Number DGLOBAL(darg1Var), DGLOBAL(darg2Var) @axis2Number DGLOBAL(darg3Var), DGLOBAL(darg4Var) @axis3Number DGLOBAL(darg5Var), DGLOBAL(darg6Var) @axis4Number DGLOBAL(darg7Var), DGLOBAL(darg8Var) TIME DGLOBAL(darg9Var) + end if + ELSEIF IGLOBAL(cmdVar) = cmdPVT_INIT_TIME_ABS THEN + 'PVT INIT TIME ABS + timeIsAbs = 1 + timeInitialized = 0 + ELSEIF IGLOBAL(cmdVar) = cmdPVT_INIT_TIME_INC THEN + timeIsAbs = 0 + PVT INIT TIME INC + ELSEIF IGLOBAL(cmdVar) = cmdABORT THEN + axis1Number = IGLOBAL(iarg1Var) + axis2Number = IGLOBAL(iarg2Var) + axis3Number = IGLOBAL(iarg3Var) + axis4Number = IGLOBAL(iarg4Var) + if IGLOBAL(numIArg) = 1 then + ABORT @axis1Number + elseif IGLOBAL(numIArg) = 2 then + ABORT @axis1Number @axis2Number + elseif IGLOBAL(numIArg) = 3 then + ABORT @axis1Number @axis2Number @axis3Number + elseif IGLOBAL(numIArg) = 4 then + ABORT @axis1Number @axis2Number @axis3Number @axis4Number + end if + keepon = 0 + ELSEIF IGLOBAL(cmdVar) = cmdSCOPEBUFFER THEN + iarg = IGLOBAL(iarg1Var) + SCOPEBUFFER iarg + ELSEIF IGLOBAL(cmdVar) = cmdSCOPEDATA THEN + iarg = IGLOBAL(iarg1Var) + if iarg = sd_PositionCommand then + DGLOBAL(darg1Var) = SCOPEDATA(PositionCommand, IGLOBAL(iarg2Var)) + elseif iarg = sd_PositionFeedback then + DGLOBAL(darg1Var) = SCOPEDATA(PositionFeedback, IGLOBAL(iarg2Var)) + elseif iarg = sd_CurrentFeedback then + DGLOBAL(darg1Var) = SCOPEDATA(CurrentFeedback, IGLOBAL(iarg2Var)) + else + DGLOBAL(darg1Var) = -1.2345654321 + end if + ELSEIF IGLOBAL(cmdVar) = cmdSCOPESTATUS THEN + IGLOBAL(iarg1Var) = SCOPESTATUS(IGLOBAL(iarg1Var)) + ELSEIF IGLOBAL(cmdVar) = cmdSCOPETRIG THEN + if IGLOBAL(iarg1Var) = 1 then + SCOPETRIG STOP + ELSE + SCOPETRIG + END IF + ELSEIF IGLOBAL(cmdVar) = cmdSCOPETRIGPERIOD THEN + iarg = IGLOBAL(iarg1Var) + 'SCOPETRIGPERIOD iarg + SCOPETRIGPERIOD iarg*1.0 + ' Not until version 4.03 + ' ELSEIF IGLOBAL(cmdVar) = cmdDRIVEINFO THEN + ' IGLOBAL(iarg1Var) = DRIVEINFO(X, 59) + ELSEIF IGLOBAL(cmdVar) = cmdLINEAR THEN + axis1Number = IGLOBAL(iarg1Var) + LINEAR @axis1Number DGLOBAL(darg1Var) F DGLOBAL(darg2Var) + ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_TRIG THEN + axis1Number = IGLOBAL(iarg1Var) + DATAACQ @axis1Number TRIGGER IGLOBAL(iarg2Var) + ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_INP THEN + axis1Number = IGLOBAL(iarg1Var) + DATAACQ @axis1Number INPUT IGLOBAL(iarg2Var) + ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_ON THEN + axis1Number = IGLOBAL(iarg1Var) + DATAACQ @axis1Number ON IGLOBAL(iarg2Var) + ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_OFF THEN + axis1Number = IGLOBAL(iarg1Var) + DATAACQ @axis1Number OFF + ELSEIF IGLOBAL(cmdVar) = cmdDATAACQ_READ THEN + axis1Number = IGLOBAL(iarg1Var) + DATAACQ @axis1Number READ IGLOBAL(iarg2Var), IGLOBAL(iarg3Var) + ELSEIF IGLOBAL(cmdVar) = cmdDOTRAJECTORY THEN + axis1Number = IGLOBAL(iarg1Var) + numpoints = IGLOBAL(iarg2Var) + VELOCITY ON + PVT INIT TIME ABS + for i = 0 to numpoints-1 step 1 + pos = dglobal(3*i) + vel = dglobal(3*i+1) + timeVal = dglobal(3*i+2) + if i = numpoints-2 then + VELOCITY OFF + end if + PVT @axis1Number pos, vel time timeVal + dwell pvtWaitMS/1000 + next i + elseif IGLOBAL(cmdVar) = cmdDONE then + ' do nothing + ' else + ' IGLOBAL(cmdVar) = 1000 + END IF + + IF IGLOBAL(cmdVar) = cmdPVT1 THEN + D = pvtWaitMS/1000 + ELSE + D = .001 + END IF + if IGLOBAL(cmdVar) > 0 then + IGLOBAL(cmdVar) = -(IGLOBAL(cmdVar)) + end if + DWELL D + WEND + +END PROGRAM diff --git a/motorApp/HytecSrc/README_Hy8601Asyn b/motorApp/HytecSrc/README_Hy8601Asyn index e2c396229..47445d623 100644 --- a/motorApp/HytecSrc/README_Hy8601Asyn +++ b/motorApp/HytecSrc/README_Hy8601Asyn @@ -37,53 +37,53 @@ Support modules Hytec 8002/8003/8004 carrier card configuration =============================================== - -This board is a 6U VME64x carrier card. It provides four single size IP slots and -is configurable for many parameters. It supports interrupt level from 0 to 7. Any -IP cards can be enabled/disabled interrupt. The clock can be set to either 8MHz or -32MHz. For IPAC Memory space if required, the base address can be defined automatically -by geographical addressing when VME64x crate is used. For other type of crates, -the base address can be set by configuring a series of jumpers on the board or by -passing parameter to the memory offset register in the ipacAddCarrier call. - -The IPAC Carrier Driver for this board is found in the file drvHy8002.c which -implements two commands ipacAddHy8002 and Hy8002CarrierInfo. The ipacAddHy8002 -command is used to add a Hytec 8002/8003 board to the system. The Hy8002CarrierInfo -reports hardware information for a specified board or all boards in the system if -the parameter passed down is 0xFFFF. These commands are registered by the registrar -routine Hy8002Registrar to add them to the iocsh and link the driver into a final -IOC executable, for which it must be listed in the IOC's .dbd file thus: - - registrar(Hy8002Registrar) - - + +This board is a 6U VME64x carrier card. It provides four single size IP slots and +is configurable for many parameters. It supports interrupt level from 0 to 7. Any +IP cards can be enabled/disabled interrupt. The clock can be set to either 8MHz or +32MHz. For IPAC Memory space if required, the base address can be defined automatically +by geographical addressing when VME64x crate is used. For other type of crates, +the base address can be set by configuring a series of jumpers on the board or by +passing parameter to the memory offset register in the ipacAddCarrier call. + +The IPAC Carrier Driver for this board is found in the file drvHy8002.c which +implements two commands ipacAddHy8002 and Hy8002CarrierInfo. The ipacAddHy8002 +command is used to add a Hytec 8002/8003 board to the system. The Hy8002CarrierInfo +reports hardware information for a specified board or all boards in the system if +the parameter passed down is 0xFFFF. These commands are registered by the registrar +routine Hy8002Registrar to add them to the iocsh and link the driver into a final +IOC executable, for which it must be listed in the IOC's .dbd file thus: + + registrar(Hy8002Registrar) + + 1). Configuration Command and Parameter --------------------------------------- - -- int ipacAddHYy8002(const char *cardParams); - -The parameter string should comprise two (2) to six (6) parameters which are comma -separated. The first two are mandate and have to be separated only by one comma. +-------------------------------------- + +- int ipacAddHYy8002(const char *cardParams); + +The parameter string should comprise two (2) to six (6) parameters which are comma +separated. The first two are mandate and have to be separated only by one comma. The others are key/value pairs and are optional as per the conditions of the operating -system used. The format is defined as - -s,i,IPMEM=d,IPCLCK=d,ROAK=d,MEMOFFS=d - -where d is a decimal integer number. +system used. The format is defined as + +s,i,IPMEM=d,IPCLCK=d,ROAK=d,MEMOFFS=d + +where d is a decimal integer number. s defines the VME slot number of the carrier card. Valid number is 2 ~ 21. this number MUST be the same as the VME slot number where the carrier - card is plugged in. -i defines the interrupt level. Valid number is 0 ~ 7. -IPMEM=d defines the maximum memory size of the IP module. The valid values are 1, 2, + card is plugged in. +i defines the interrupt level. Valid number is 0 ~ 7. +IPMEM=d defines the maximum memory size of the IP module. The valid values are 1, 2, 4 or 8 that represent 1MB, 2MB, 4MB or 8MB respectively. Default is 1. For majority Hytec ADCs, DACs such as 8401, 8414, 8417, 8402 and 8415 etc, they all have 2MB on board. The user can choose to use either 1MB or 2MB. None of - the Hytec IPs has more than 2MB on board memory. Other vendors might have. -IPCLCK=d defines the clock that its value has to be either 8 for 8MHz or 32 for - 32Mhz. Default is 8. -ROAK=d if d =1, it defines carrier card to release the interrupt upon the - acknowledgment. If d=0, the interrupt is released by user interrupt - service routine. Default is 0. + the Hytec IPs has more than 2MB on board memory. Other vendors might have. +IPCLCK=d defines the clock that its value has to be either 8 for 8MHz or 32 for + 32Mhz. Default is 8. +ROAK=d if d =1, it defines carrier card to release the interrupt upon the + acknowledgment. If d=0, the interrupt is released by user interrupt + service routine. Default is 0. MEMOFFS=d this parameter defines the A32 memory access base address. "d" is a decimal number that represents the offset (the upper WORD) of the A32 base address. It is needed when any of the two statements below is true: @@ -150,15 +150,15 @@ the VME slot number in the calculation just makes better logical sense and fits natual of human being's thinking. Some examples are shown below. Let's assume IPMEM=1 (the default setting), this gives 4MB memory space for a 8002 -carrier so starting address line is A22. The remaining must be 0. - +carrier so starting address line is A22. The remaining must be 0. + MEMOFFS BIT 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 A31 A30 A29 A28 A27 A26 A25 A24 A23 A22 0 0 0 0 0 0 For a carrier in VME slot 2, we can define its A32 base address as 0x00400000, plus VME_A32_MSTR_LOCAL. For VME slot 3, it could be 0x00800000 plus VME_A32_MSTR_LOCAL -and for VME slot 4, it could be 0x00C00000 plus VME_A32_MSTR_LOCAL and so forth. - +and for VME slot 4, it could be 0x00C00000 plus VME_A32_MSTR_LOCAL and so forth. + Assuming VME_A32_MSTR_LOCAL is 0x20000000, then for VME slot 4, the calculated base address should be 0x00C00000 + 0x20000000 = 0x20C000000. Hence the MEMOFFS = 8384 (decimal, i.e. 0x20C0). For slot 5, the derived base address could be 0x01000000 + @@ -180,45 +180,45 @@ base address should be 0x01800000 + 0x20000000 = 0x218000000. Hence the MEMOFFS (decimal, i.e. 0x2180). For slot 5, the derived base address could be 0x02000000 + 0x20000000 = 0x22000000. Hence the MEMOFFS = 8704 (decimal, i.e. 0x2200) and so forth. - - -- int Hy8002CarrierInfo(int carrier); - -where 'carrier' is the registered carrier number in the system. If it is specified, -this function prints out the specified carrier hardware information. If carrier = 0xFFFF, -then all carriers' hardware information will be printed out. - - + + +- int Hy8002CarrierInfo(int carrier); + +where 'carrier' is the registered carrier number in the system. If it is specified, +this function prints out the specified carrier hardware information. If carrier = 0xFFFF, +then all carriers' hardware information will be printed out. + + 2). Configuration Examples -------------------------- - -ipacAddHy8002("3,2") - -This indicates that the carrier is in slot 3 and the interrupt level is set to 2. -IP memory uses default 1MB. Clock uses default 8MHz. RORA as default. use geographical -addressing etc. - -ipacAddHy8002("5,4,IPMEM=1,IPCLCK=8,ROAK=1,MEMOFFS=256 ") - -Here the slot is 5, interrupt level is 4. IP memory size is 1MB, clock uses 8MHz. -Use ROAK but not using geographic addressing. The memory offset is 256 which means its -base address is 0x01000000 assuming the VME_A32_MSTR_LOCAL is set to 0x00000000. - +------------------------- + +ipacAddHy8002("3,2") + +This indicates that the carrier is in slot 3 and the interrupt level is set to 2. +IP memory uses default 1MB. Clock uses default 8MHz. RORA as default. use geographical +addressing etc. + +ipacAddHy8002("5,4,IPMEM=1,IPCLCK=8,ROAK=1,MEMOFFS=256 ") + +Here the slot is 5, interrupt level is 4. IP memory size is 1MB, clock uses 8MHz. +Use ROAK but not using geographic addressing. The memory offset is 256 which means its +base address is 0x01000000 assuming the VME_A32_MSTR_LOCAL is set to 0x00000000. + 3). Interrupt Commands Supported -------------------------------- - -The interrupt level can be set by the second parameter of the ipacAddHy8002 routine. -Individual IP module can be set to generate interrupt or not. The commands supported -for ipmIrqCmd are illustrated below. - -cmd Value Returned -ipac_irqGetLevel Carrier interrupt level (0 ~ 7) -ipac_irqEnable 0 = OK -ipac_irqDisable 0 = OK -ipac_irqPoll >0 if the interrupt line is active, else 0 -(other commands) S_IPAC_notImplemented - - +------------------------------- + +The interrupt level can be set by the second parameter of the ipacAddHy8002 routine. +Individual IP module can be set to generate interrupt or not. The commands supported +for ipmIrqCmd are illustrated below. + +cmd Value Returned +ipac_irqGetLevel Carrier interrupt level (0 ~ 7) +ipac_irqEnable 0 = OK +ipac_irqDisable 0 = OK +ipac_irqPoll >0 if the interrupt line is active, else 0 +(other commands) S_IPAC_notImplemented + + Hy8601 IP Asyn Driver Usage ============================ @@ -507,4 +507,4 @@ The following example is for an IOC that uses RTEMS R4.9.4, MVME5500 processor b - + diff --git a/motorApp/MotorSrc/asynMotorAxis.h b/motorApp/MotorSrc/asynMotorAxis.h index 8c47fa318..7cdc2544e 100644 --- a/motorApp/MotorSrc/asynMotorAxis.h +++ b/motorApp/MotorSrc/asynMotorAxis.h @@ -1,88 +1,88 @@ -/* asynMotorAxis.h - * - * Mark Rivers - * - * This file defines the base class for an asynMotorAxis. It is the class - * from which real motor axes are derived. - */ -#ifndef asynMotorAxis_H -#define asynMotorAxis_H - -#include -#include - -#ifdef __cplusplus -#include - -#include "asynMotorController.h" - -/** Class from which motor axis objects are derived. */ -class epicsShareClass asynMotorAxis { - - public: - /* This is the constructor for the class. */ - asynMotorAxis(class asynMotorController *pController, int axisNumber); - virtual ~asynMotorAxis(); - - virtual asynStatus setIntegerParam(int index, int value); - virtual asynStatus setDoubleParam(int index, double value); - virtual asynStatus setStringParam(int index, const char *value); - virtual void report(FILE *fp, int details); - virtual asynStatus callParamCallbacks(); - - virtual asynStatus move(double position, int relative, double minVelocity, double maxVelocity, double acceleration); - virtual asynStatus moveVelocity(double minVelocity, double maxVelocity, double acceleration); - virtual asynStatus home(double minVelocity, double maxVelocity, double acceleration, int forwards); - virtual asynStatus stop(double acceleration); - virtual asynStatus poll(bool *moving); - virtual asynStatus setPosition(double position); - virtual asynStatus setEncoderPosition(double position); - virtual asynStatus setHighLimit(double highLimit); - virtual asynStatus setLowLimit(double lowLimit); - virtual asynStatus setPGain(double pGain); - virtual asynStatus setIGain(double iGain); - virtual asynStatus setDGain(double dGain); - virtual asynStatus setClosedLoop(bool closedLoop); - virtual asynStatus setEncoderRatio(double ratio); - virtual asynStatus doMoveToHome(); - - virtual asynStatus initializeProfile(size_t maxPoints); - virtual asynStatus defineProfile(double *positions, size_t numPoints); - virtual asynStatus buildProfile(); - virtual asynStatus executeProfile(); - virtual asynStatus abortProfile(); - virtual asynStatus readbackProfile(); - - void setReferencingModeMove(int distance); - int getReferencingModeMove(); - - int getWasMovingFlag(); - void setWasMovingFlag(int wasMoving); - int getDisableFlag(); - void setDisableFlag(int disableFlag); - double getLastEndOfMoveTime(); - void setLastEndOfMoveTime(double time); - - protected: - class asynMotorController *pC_; /**< Pointer to the asynMotorController to which this axis belongs. - * Abbreviated because it is used very frequently */ - int axisNo_; /**< Index number of this axis (0 - pC_->numAxes_-1) */ - asynUser *pasynUser_; /**< asynUser connected to this axis for asynTrace debugging */ - double *profilePositions_; /**< Array of target positions for profile moves */ - double *profileReadbacks_; /**< Array of readback positions for profile moves */ - double *profileFollowingErrors_; /**< Array of following errors for profile moves */ - int referencingMode_; - - private: - MotorStatus status_; - int statusChanged_; - int referencingModeMove_; - int wasMovingFlag_; - int disableFlag_; - double lastEndOfMoveTime_; - - friend class asynMotorController; -}; - -#endif /* _cplusplus */ -#endif /* asynMotorAxis_H */ +/* asynMotorAxis.h + * + * Mark Rivers + * + * This file defines the base class for an asynMotorAxis. It is the class + * from which real motor axes are derived. + */ +#ifndef asynMotorAxis_H +#define asynMotorAxis_H + +#include +#include + +#ifdef __cplusplus +#include + +#include "asynMotorController.h" + +/** Class from which motor axis objects are derived. */ +class epicsShareClass asynMotorAxis { + + public: + /* This is the constructor for the class. */ + asynMotorAxis(class asynMotorController *pController, int axisNumber); + virtual ~asynMotorAxis(); + + virtual asynStatus setIntegerParam(int index, int value); + virtual asynStatus setDoubleParam(int index, double value); + virtual asynStatus setStringParam(int index, const char *value); + virtual void report(FILE *fp, int details); + virtual asynStatus callParamCallbacks(); + + virtual asynStatus move(double position, int relative, double minVelocity, double maxVelocity, double acceleration); + virtual asynStatus moveVelocity(double minVelocity, double maxVelocity, double acceleration); + virtual asynStatus home(double minVelocity, double maxVelocity, double acceleration, int forwards); + virtual asynStatus stop(double acceleration); + virtual asynStatus poll(bool *moving); + virtual asynStatus setPosition(double position); + virtual asynStatus setEncoderPosition(double position); + virtual asynStatus setHighLimit(double highLimit); + virtual asynStatus setLowLimit(double lowLimit); + virtual asynStatus setPGain(double pGain); + virtual asynStatus setIGain(double iGain); + virtual asynStatus setDGain(double dGain); + virtual asynStatus setClosedLoop(bool closedLoop); + virtual asynStatus setEncoderRatio(double ratio); + virtual asynStatus doMoveToHome(); + + virtual asynStatus initializeProfile(size_t maxPoints); + virtual asynStatus defineProfile(double *positions, size_t numPoints); + virtual asynStatus buildProfile(); + virtual asynStatus executeProfile(); + virtual asynStatus abortProfile(); + virtual asynStatus readbackProfile(); + + void setReferencingModeMove(int distance); + int getReferencingModeMove(); + + int getWasMovingFlag(); + void setWasMovingFlag(int wasMoving); + int getDisableFlag(); + void setDisableFlag(int disableFlag); + double getLastEndOfMoveTime(); + void setLastEndOfMoveTime(double time); + + protected: + class asynMotorController *pC_; /**< Pointer to the asynMotorController to which this axis belongs. + * Abbreviated because it is used very frequently */ + int axisNo_; /**< Index number of this axis (0 - pC_->numAxes_-1) */ + asynUser *pasynUser_; /**< asynUser connected to this axis for asynTrace debugging */ + double *profilePositions_; /**< Array of target positions for profile moves */ + double *profileReadbacks_; /**< Array of readback positions for profile moves */ + double *profileFollowingErrors_; /**< Array of following errors for profile moves */ + int referencingMode_; + + private: + MotorStatus status_; + int statusChanged_; + int referencingModeMove_; + int wasMovingFlag_; + int disableFlag_; + double lastEndOfMoveTime_; + + friend class asynMotorController; +}; + +#endif /* _cplusplus */ +#endif /* asynMotorAxis_H */ diff --git a/motorApp/MotorSrc/asynMotorController.h b/motorApp/MotorSrc/asynMotorController.h index 5afa650a6..56b44e96b 100644 --- a/motorApp/MotorSrc/asynMotorController.h +++ b/motorApp/MotorSrc/asynMotorController.h @@ -1,315 +1,315 @@ -/* asynMotorController.h - * - * Mark Rivers - * - * This file defines the base class for an asynMotorController. It is the class - * from which real motor controllers are derived. It derives from asynPortDriver. - */ -#ifndef asynMotorController_H -#define asynMotorController_H - -#include -#include - -#define MAX_CONTROLLER_STRING_SIZE 256 -#define DEFAULT_CONTROLLER_TIMEOUT 2.0 - -/** Strings defining parameters for the driver. - * These are the values passed to drvUserCreate. - * The driver will place in pasynUser->reason an integer to be used when the - * standard asyn interface methods are called. */ -#define motorMoveRelString "MOTOR_MOVE_REL" -#define motorMoveAbsString "MOTOR_MOVE_ABS" -#define motorMoveVelString "MOTOR_MOVE_VEL" -#define motorHomeString "MOTOR_HOME" -#define motorStopString "MOTOR_STOP_AXIS" -#define motorVelocityString "MOTOR_VELOCITY" -#define motorVelBaseString "MOTOR_VEL_BASE" -#define motorAccelString "MOTOR_ACCEL" -#define motorPositionString "MOTOR_POSITION" -#define motorEncoderPositionString "MOTOR_ENCODER_POSITION" -#define motorDeferMovesString "MOTOR_DEFER_MOVES" -#define motorMoveToHomeString "MOTOR_MOVE_HOME" -#define motorResolutionString "MOTOR_RESOLUTION" -#define motorEncoderRatioString "MOTOR_ENCODER_RATIO" -#define motorPGainString "MOTOR_PGAIN" -#define motorIGainString "MOTOR_IGAIN" -#define motorDGainString "MOTOR_DGAIN" -#define motorHighLimitString "MOTOR_HIGH_LIMIT" -#define motorLowLimitString "MOTOR_LOW_LIMIT" -#define motorClosedLoopString "MOTOR_CLOSED_LOOP" -#define motorPowerAutoOnOffString "MOTOR_POWER_AUTO_ONOFF" -#define motorPowerOnDelayString "MOTOR_POWER_ON_DELAY" -#define motorPowerOffDelayString "MOTOR_POWER_OFF_DELAY" -#define motorPowerOffFractionString "MOTOR_POWER_OFF_FRACTION" -#define motorPostMoveDelayString "MOTOR_POST_MOVE_DELAY" -#define motorStatusString "MOTOR_STATUS" -#define motorUpdateStatusString "MOTOR_UPDATE_STATUS" -#define motorStatusDirectionString "MOTOR_STATUS_DIRECTION" -#define motorStatusDoneString "MOTOR_STATUS_DONE" -#define motorStatusHighLimitString "MOTOR_STATUS_HIGH_LIMIT" -#define motorStatusAtHomeString "MOTOR_STATUS_AT_HOME" -#define motorStatusSlipString "MOTOR_STATUS_SLIP" -#define motorStatusPowerOnString "MOTOR_STATUS_POWERED" -#define motorStatusFollowingErrorString "MOTOR_STATUS_FOLLOWING_ERROR" -#define motorStatusHomeString "MOTOR_STATUS_HOME" -#define motorStatusHasEncoderString "MOTOR_STATUS_HAS_ENCODER" -#define motorStatusProblemString "MOTOR_STATUS_PROBLEM" -#define motorStatusMovingString "MOTOR_STATUS_MOVING" -#define motorStatusGainSupportString "MOTOR_STATUS_GAIN_SUPPORT" -#define motorStatusCommsErrorString "MOTOR_STATUS_COMMS_ERROR" -#define motorStatusLowLimitString "MOTOR_STATUS_LOW_LIMIT" -#define motorStatusHomedString "MOTOR_STATUS_HOMED" - -/* These are per-axis parameters for passing additional motor record information to the driver */ -#define motorRecResolutionString "MOTOR_REC_RESOLUTION" -#define motorRecDirectionString "MOTOR_REC_DIRECTION" -#define motorRecOffsetString "MOTOR_REC_OFFSET" - -/* These are the per-controller parameters for profile moves (coordinated motion) */ -#define profileNumAxesString "PROFILE_NUM_AXES" -#define profileNumPointsString "PROFILE_NUM_POINTS" -#define profileCurrentPointString "PROFILE_CURRENT_POINT" -#define profileNumPulsesString "PROFILE_NUM_PULSES" -#define profileStartPulsesString "PROFILE_START_PULSES" -#define profileEndPulsesString "PROFILE_END_PULSES" -#define profileActualPulsesString "PROFILE_ACTUAL_PULSES" -#define profileNumReadbacksString "PROFILE_NUM_READBACKS" -#define profileTimeModeString "PROFILE_TIME_MODE" -#define profileFixedTimeString "PROFILE_FIXED_TIME" -#define profileTimeArrayString "PROFILE_TIME_ARRAY" -#define profileAccelerationString "PROFILE_ACCELERATION" -#define profileMoveModeString "PROFILE_MOVE_MODE" -#define profileBuildString "PROFILE_BUILD" -#define profileBuildStateString "PROFILE_BUILD_STATE" -#define profileBuildStatusString "PROFILE_BUILD_STATUS" -#define profileBuildMessageString "PROFILE_BUILD_MESSAGE" -#define profileExecuteString "PROFILE_EXECUTE" -#define profileExecuteStateString "PROFILE_EXECUTE_STATE" -#define profileExecuteStatusString "PROFILE_EXECUTE_STATUS" -#define profileExecuteMessageString "PROFILE_EXECUTE_MESSAGE" -#define profileAbortString "PROFILE_ABORT" -#define profileReadbackString "PROFILE_READBACK" -#define profileReadbackStateString "PROFILE_READBACK_STATE" -#define profileReadbackStatusString "PROFILE_READBACK_STATUS" -#define profileReadbackMessageString "PROFILE_READBACK_MESSAGE" - -/* These are the per-axis parameters for profile moves */ -#define profileUseAxisString "PROFILE_USE_AXIS" -#define profilePositionsString "PROFILE_POSITIONS" -#define profileReadbacksString "PROFILE_READBACKS" -#define profileFollowingErrorsString "PROFILE_FOLLOWING_ERRORS" - -/** The structure that is passed back to devMotorAsyn when the status changes. */ -typedef struct MotorStatus { - double position; /**< Commanded motor position */ - double encoderPosition; /**< Actual encoder position */ - double velocity; /**< Actual velocity */ - epicsUInt32 status; /**< Word containing status bits (motion done, limits, etc.) */ -} MotorStatus; - -enum ProfileTimeMode{ - PROFILE_TIME_MODE_FIXED, - PROFILE_TIME_MODE_ARRAY -}; - -enum ProfileMoveMode{ - PROFILE_MOVE_MODE_ABSOLUTE, - PROFILE_MOVE_MODE_RELATIVE -}; - -/* State codes for Build, Read and Execute. Careful, these must match the - * corresponding MBBI records, but there is no way to check this */ -enum ProfileBuildState{ - PROFILE_BUILD_DONE, - PROFILE_BUILD_BUSY -}; - -enum ProfileExecuteState{ - PROFILE_EXECUTE_DONE, - PROFILE_EXECUTE_MOVE_START, - PROFILE_EXECUTE_EXECUTING, - PROFILE_EXECUTE_FLYBACK -}; - -enum ProfileReadbackState{ - PROFILE_READBACK_DONE, - PROFILE_READBACK_BUSY -}; - - -/* Status codes for Build, Execute and Read */ -enum ProfileStatus { - PROFILE_STATUS_UNDEFINED, - PROFILE_STATUS_SUCCESS, - PROFILE_STATUS_FAILURE, - PROFILE_STATUS_ABORT, - PROFILE_STATUS_TIMEOUT -}; - -#ifdef __cplusplus -#include - -class asynMotorAxis; - -class epicsShareClass asynMotorController : public asynPortDriver { - - public: - /* This is the constructor for the class. */ - asynMotorController(const char *portName, int numAxes, int numParams, - int interfaceMask, int interruptMask, - int asynFlags, int autoConnect, int priority, int stackSize); - - virtual ~asynMotorController(); - - /* These are the methods that we override from asynPortDriver */ - virtual asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value); - virtual asynStatus writeFloat64(asynUser *pasynUser, epicsFloat64 value); - virtual asynStatus writeFloat64Array(asynUser *pasynUser, epicsFloat64 *value, size_t nElements); - virtual asynStatus readFloat64Array(asynUser *pasynUser, epicsFloat64 *value, size_t nElements, size_t *nRead); - virtual asynStatus readGenericPointer(asynUser *pasynUser, void *pointer); - virtual void report(FILE *fp, int details); - - /* These are the methods that are new to this class */ - virtual asynMotorAxis* getAxis(asynUser *pasynUser); - virtual asynMotorAxis* getAxis(int axisNo); - virtual asynStatus startPoller(double movingPollPeriod, double idlePollPeriod, int forcedFastPolls); - virtual asynStatus wakeupPoller(); - virtual asynStatus poll(); - virtual asynStatus setDeferredMoves(bool defer); - void asynMotorPoller(); // This should be private but is called from C function - - /* Functions to deal with moveToHome.*/ - virtual asynStatus startMoveToHomeThread(); - void asynMotorMoveToHome(); - - /* These are the functions for profile moves */ - virtual asynStatus initializeProfile(size_t maxPoints); - virtual asynStatus buildProfile(); - virtual asynStatus executeProfile(); - virtual asynStatus abortProfile(); - virtual asynStatus readbackProfile(); - - virtual asynStatus setMovingPollPeriod(double movingPollPeriod); - virtual asynStatus setIdlePollPeriod(double idlePollPeriod); - - int shuttingDown_; /**< Flag indicating that IOC is shutting down. Stops poller */ - - protected: - /** These are the index numbers for the parameters in the parameter library. - * They are the values of pasynUser->reason in calls from device support */ - // These are the motor commands - #define FIRST_MOTOR_PARAM motorMoveRel_ - int motorMoveRel_; - int motorMoveAbs_; - int motorMoveVel_; - int motorHome_; - int motorStop_; - int motorVelocity_; - int motorVelBase_; - int motorAccel_; - int motorPosition_; - int motorEncoderPosition_; - int motorDeferMoves_; - int motorMoveToHome_; - int motorResolution_; - int motorEncoderRatio_; - int motorPGain_; - int motorIGain_; - int motorDGain_; - int motorHighLimit_; - int motorLowLimit_; - int motorClosedLoop_; - int motorPowerAutoOnOff_; - int motorPowerOnDelay_; - int motorPowerOffDelay_; - int motorPowerOffFraction_; - int motorPostMoveDelay_; - int motorStatus_; - int motorUpdateStatus_; - - // These are the status bits - int motorStatusDirection_; - int motorStatusDone_; - int motorStatusHighLimit_; - int motorStatusAtHome_; - int motorStatusSlip_; - int motorStatusPowerOn_; - int motorStatusFollowingError_; - int motorStatusHome_; - int motorStatusHasEncoder_; - int motorStatusProblem_; - int motorStatusMoving_; - int motorStatusGainSupport_; - int motorStatusCommsError_; - int motorStatusLowLimit_; - int motorStatusHomed_; - - // These are per-axis parameters for passing additional motor record information to the driver - int motorRecResolution_; - int motorRecDirection_; - int motorRecOffset_; - - // These are the per-controller parameters for profile moves - int profileNumAxes_; - int profileNumPoints_; - int profileCurrentPoint_; - int profileNumPulses_; - int profileStartPulses_; - int profileEndPulses_; - int profileActualPulses_; - int profileNumReadbacks_; - int profileTimeMode_; - int profileFixedTime_; - int profileTimeArray_; - int profileAcceleration_; - int profileMoveMode_; - int profileBuild_; - int profileBuildState_; - int profileBuildStatus_; - int profileBuildMessage_; - int profileExecute_; - int profileExecuteState_; - int profileExecuteStatus_; - int profileExecuteMessage_; - int profileAbort_; - int profileReadback_; - int profileReadbackState_; - int profileReadbackStatus_; - int profileReadbackMessage_; - - // These are the per-axis parameters for profile moves - int profileUseAxis_; - int profilePositions_; - int profileReadbacks_; - int profileFollowingErrors_; - #define LAST_MOTOR_PARAM profileFollowingErrors_ - - int numAxes_; /**< Number of axes this controller supports */ - asynMotorAxis **pAxes_; /**< Array of pointers to axis objects */ - epicsEventId pollEventId_; /**< Event ID to wake up poller */ - epicsEventId moveToHomeId_; /**< Event ID to wake up move to home thread */ - double idlePollPeriod_; /**< The time between polls when no axes are moving */ - double movingPollPeriod_; /**< The time between polls when any axis is moving */ - int forcedFastPolls_; /**< The number of forced fast polls when the poller wakes up */ - - size_t maxProfilePoints_; /**< Maximum number of profile points */ - double *profileTimes_; /**< Array of times per profile point */ - - int moveToHomeAxis_; - - /* These are convenience functions for controllers that use asynOctet interfaces to the hardware */ - asynStatus writeController(); - asynStatus writeController(const char *output, double timeout); - asynStatus writeReadController(); - asynStatus writeReadController(const char *output, char *response, size_t maxResponseLen, size_t *responseLen, double timeout); - asynUser *pasynUserController_; - char outString_[MAX_CONTROLLER_STRING_SIZE]; - char inString_[MAX_CONTROLLER_STRING_SIZE]; - - friend class asynMotorAxis; -}; -#define NUM_MOTOR_DRIVER_PARAMS (&LAST_MOTOR_PARAM - &FIRST_MOTOR_PARAM + 1) - -#endif /* _cplusplus */ -#endif /* asynMotorController_H */ +/* asynMotorController.h + * + * Mark Rivers + * + * This file defines the base class for an asynMotorController. It is the class + * from which real motor controllers are derived. It derives from asynPortDriver. + */ +#ifndef asynMotorController_H +#define asynMotorController_H + +#include +#include + +#define MAX_CONTROLLER_STRING_SIZE 256 +#define DEFAULT_CONTROLLER_TIMEOUT 2.0 + +/** Strings defining parameters for the driver. + * These are the values passed to drvUserCreate. + * The driver will place in pasynUser->reason an integer to be used when the + * standard asyn interface methods are called. */ +#define motorMoveRelString "MOTOR_MOVE_REL" +#define motorMoveAbsString "MOTOR_MOVE_ABS" +#define motorMoveVelString "MOTOR_MOVE_VEL" +#define motorHomeString "MOTOR_HOME" +#define motorStopString "MOTOR_STOP_AXIS" +#define motorVelocityString "MOTOR_VELOCITY" +#define motorVelBaseString "MOTOR_VEL_BASE" +#define motorAccelString "MOTOR_ACCEL" +#define motorPositionString "MOTOR_POSITION" +#define motorEncoderPositionString "MOTOR_ENCODER_POSITION" +#define motorDeferMovesString "MOTOR_DEFER_MOVES" +#define motorMoveToHomeString "MOTOR_MOVE_HOME" +#define motorResolutionString "MOTOR_RESOLUTION" +#define motorEncoderRatioString "MOTOR_ENCODER_RATIO" +#define motorPGainString "MOTOR_PGAIN" +#define motorIGainString "MOTOR_IGAIN" +#define motorDGainString "MOTOR_DGAIN" +#define motorHighLimitString "MOTOR_HIGH_LIMIT" +#define motorLowLimitString "MOTOR_LOW_LIMIT" +#define motorClosedLoopString "MOTOR_CLOSED_LOOP" +#define motorPowerAutoOnOffString "MOTOR_POWER_AUTO_ONOFF" +#define motorPowerOnDelayString "MOTOR_POWER_ON_DELAY" +#define motorPowerOffDelayString "MOTOR_POWER_OFF_DELAY" +#define motorPowerOffFractionString "MOTOR_POWER_OFF_FRACTION" +#define motorPostMoveDelayString "MOTOR_POST_MOVE_DELAY" +#define motorStatusString "MOTOR_STATUS" +#define motorUpdateStatusString "MOTOR_UPDATE_STATUS" +#define motorStatusDirectionString "MOTOR_STATUS_DIRECTION" +#define motorStatusDoneString "MOTOR_STATUS_DONE" +#define motorStatusHighLimitString "MOTOR_STATUS_HIGH_LIMIT" +#define motorStatusAtHomeString "MOTOR_STATUS_AT_HOME" +#define motorStatusSlipString "MOTOR_STATUS_SLIP" +#define motorStatusPowerOnString "MOTOR_STATUS_POWERED" +#define motorStatusFollowingErrorString "MOTOR_STATUS_FOLLOWING_ERROR" +#define motorStatusHomeString "MOTOR_STATUS_HOME" +#define motorStatusHasEncoderString "MOTOR_STATUS_HAS_ENCODER" +#define motorStatusProblemString "MOTOR_STATUS_PROBLEM" +#define motorStatusMovingString "MOTOR_STATUS_MOVING" +#define motorStatusGainSupportString "MOTOR_STATUS_GAIN_SUPPORT" +#define motorStatusCommsErrorString "MOTOR_STATUS_COMMS_ERROR" +#define motorStatusLowLimitString "MOTOR_STATUS_LOW_LIMIT" +#define motorStatusHomedString "MOTOR_STATUS_HOMED" + +/* These are per-axis parameters for passing additional motor record information to the driver */ +#define motorRecResolutionString "MOTOR_REC_RESOLUTION" +#define motorRecDirectionString "MOTOR_REC_DIRECTION" +#define motorRecOffsetString "MOTOR_REC_OFFSET" + +/* These are the per-controller parameters for profile moves (coordinated motion) */ +#define profileNumAxesString "PROFILE_NUM_AXES" +#define profileNumPointsString "PROFILE_NUM_POINTS" +#define profileCurrentPointString "PROFILE_CURRENT_POINT" +#define profileNumPulsesString "PROFILE_NUM_PULSES" +#define profileStartPulsesString "PROFILE_START_PULSES" +#define profileEndPulsesString "PROFILE_END_PULSES" +#define profileActualPulsesString "PROFILE_ACTUAL_PULSES" +#define profileNumReadbacksString "PROFILE_NUM_READBACKS" +#define profileTimeModeString "PROFILE_TIME_MODE" +#define profileFixedTimeString "PROFILE_FIXED_TIME" +#define profileTimeArrayString "PROFILE_TIME_ARRAY" +#define profileAccelerationString "PROFILE_ACCELERATION" +#define profileMoveModeString "PROFILE_MOVE_MODE" +#define profileBuildString "PROFILE_BUILD" +#define profileBuildStateString "PROFILE_BUILD_STATE" +#define profileBuildStatusString "PROFILE_BUILD_STATUS" +#define profileBuildMessageString "PROFILE_BUILD_MESSAGE" +#define profileExecuteString "PROFILE_EXECUTE" +#define profileExecuteStateString "PROFILE_EXECUTE_STATE" +#define profileExecuteStatusString "PROFILE_EXECUTE_STATUS" +#define profileExecuteMessageString "PROFILE_EXECUTE_MESSAGE" +#define profileAbortString "PROFILE_ABORT" +#define profileReadbackString "PROFILE_READBACK" +#define profileReadbackStateString "PROFILE_READBACK_STATE" +#define profileReadbackStatusString "PROFILE_READBACK_STATUS" +#define profileReadbackMessageString "PROFILE_READBACK_MESSAGE" + +/* These are the per-axis parameters for profile moves */ +#define profileUseAxisString "PROFILE_USE_AXIS" +#define profilePositionsString "PROFILE_POSITIONS" +#define profileReadbacksString "PROFILE_READBACKS" +#define profileFollowingErrorsString "PROFILE_FOLLOWING_ERRORS" + +/** The structure that is passed back to devMotorAsyn when the status changes. */ +typedef struct MotorStatus { + double position; /**< Commanded motor position */ + double encoderPosition; /**< Actual encoder position */ + double velocity; /**< Actual velocity */ + epicsUInt32 status; /**< Word containing status bits (motion done, limits, etc.) */ +} MotorStatus; + +enum ProfileTimeMode{ + PROFILE_TIME_MODE_FIXED, + PROFILE_TIME_MODE_ARRAY +}; + +enum ProfileMoveMode{ + PROFILE_MOVE_MODE_ABSOLUTE, + PROFILE_MOVE_MODE_RELATIVE +}; + +/* State codes for Build, Read and Execute. Careful, these must match the + * corresponding MBBI records, but there is no way to check this */ +enum ProfileBuildState{ + PROFILE_BUILD_DONE, + PROFILE_BUILD_BUSY +}; + +enum ProfileExecuteState{ + PROFILE_EXECUTE_DONE, + PROFILE_EXECUTE_MOVE_START, + PROFILE_EXECUTE_EXECUTING, + PROFILE_EXECUTE_FLYBACK +}; + +enum ProfileReadbackState{ + PROFILE_READBACK_DONE, + PROFILE_READBACK_BUSY +}; + + +/* Status codes for Build, Execute and Read */ +enum ProfileStatus { + PROFILE_STATUS_UNDEFINED, + PROFILE_STATUS_SUCCESS, + PROFILE_STATUS_FAILURE, + PROFILE_STATUS_ABORT, + PROFILE_STATUS_TIMEOUT +}; + +#ifdef __cplusplus +#include + +class asynMotorAxis; + +class epicsShareClass asynMotorController : public asynPortDriver { + + public: + /* This is the constructor for the class. */ + asynMotorController(const char *portName, int numAxes, int numParams, + int interfaceMask, int interruptMask, + int asynFlags, int autoConnect, int priority, int stackSize); + + virtual ~asynMotorController(); + + /* These are the methods that we override from asynPortDriver */ + virtual asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value); + virtual asynStatus writeFloat64(asynUser *pasynUser, epicsFloat64 value); + virtual asynStatus writeFloat64Array(asynUser *pasynUser, epicsFloat64 *value, size_t nElements); + virtual asynStatus readFloat64Array(asynUser *pasynUser, epicsFloat64 *value, size_t nElements, size_t *nRead); + virtual asynStatus readGenericPointer(asynUser *pasynUser, void *pointer); + virtual void report(FILE *fp, int details); + + /* These are the methods that are new to this class */ + virtual asynMotorAxis* getAxis(asynUser *pasynUser); + virtual asynMotorAxis* getAxis(int axisNo); + virtual asynStatus startPoller(double movingPollPeriod, double idlePollPeriod, int forcedFastPolls); + virtual asynStatus wakeupPoller(); + virtual asynStatus poll(); + virtual asynStatus setDeferredMoves(bool defer); + void asynMotorPoller(); // This should be private but is called from C function + + /* Functions to deal with moveToHome.*/ + virtual asynStatus startMoveToHomeThread(); + void asynMotorMoveToHome(); + + /* These are the functions for profile moves */ + virtual asynStatus initializeProfile(size_t maxPoints); + virtual asynStatus buildProfile(); + virtual asynStatus executeProfile(); + virtual asynStatus abortProfile(); + virtual asynStatus readbackProfile(); + + virtual asynStatus setMovingPollPeriod(double movingPollPeriod); + virtual asynStatus setIdlePollPeriod(double idlePollPeriod); + + int shuttingDown_; /**< Flag indicating that IOC is shutting down. Stops poller */ + + protected: + /** These are the index numbers for the parameters in the parameter library. + * They are the values of pasynUser->reason in calls from device support */ + // These are the motor commands + #define FIRST_MOTOR_PARAM motorMoveRel_ + int motorMoveRel_; + int motorMoveAbs_; + int motorMoveVel_; + int motorHome_; + int motorStop_; + int motorVelocity_; + int motorVelBase_; + int motorAccel_; + int motorPosition_; + int motorEncoderPosition_; + int motorDeferMoves_; + int motorMoveToHome_; + int motorResolution_; + int motorEncoderRatio_; + int motorPGain_; + int motorIGain_; + int motorDGain_; + int motorHighLimit_; + int motorLowLimit_; + int motorClosedLoop_; + int motorPowerAutoOnOff_; + int motorPowerOnDelay_; + int motorPowerOffDelay_; + int motorPowerOffFraction_; + int motorPostMoveDelay_; + int motorStatus_; + int motorUpdateStatus_; + + // These are the status bits + int motorStatusDirection_; + int motorStatusDone_; + int motorStatusHighLimit_; + int motorStatusAtHome_; + int motorStatusSlip_; + int motorStatusPowerOn_; + int motorStatusFollowingError_; + int motorStatusHome_; + int motorStatusHasEncoder_; + int motorStatusProblem_; + int motorStatusMoving_; + int motorStatusGainSupport_; + int motorStatusCommsError_; + int motorStatusLowLimit_; + int motorStatusHomed_; + + // These are per-axis parameters for passing additional motor record information to the driver + int motorRecResolution_; + int motorRecDirection_; + int motorRecOffset_; + + // These are the per-controller parameters for profile moves + int profileNumAxes_; + int profileNumPoints_; + int profileCurrentPoint_; + int profileNumPulses_; + int profileStartPulses_; + int profileEndPulses_; + int profileActualPulses_; + int profileNumReadbacks_; + int profileTimeMode_; + int profileFixedTime_; + int profileTimeArray_; + int profileAcceleration_; + int profileMoveMode_; + int profileBuild_; + int profileBuildState_; + int profileBuildStatus_; + int profileBuildMessage_; + int profileExecute_; + int profileExecuteState_; + int profileExecuteStatus_; + int profileExecuteMessage_; + int profileAbort_; + int profileReadback_; + int profileReadbackState_; + int profileReadbackStatus_; + int profileReadbackMessage_; + + // These are the per-axis parameters for profile moves + int profileUseAxis_; + int profilePositions_; + int profileReadbacks_; + int profileFollowingErrors_; + #define LAST_MOTOR_PARAM profileFollowingErrors_ + + int numAxes_; /**< Number of axes this controller supports */ + asynMotorAxis **pAxes_; /**< Array of pointers to axis objects */ + epicsEventId pollEventId_; /**< Event ID to wake up poller */ + epicsEventId moveToHomeId_; /**< Event ID to wake up move to home thread */ + double idlePollPeriod_; /**< The time between polls when no axes are moving */ + double movingPollPeriod_; /**< The time between polls when any axis is moving */ + int forcedFastPolls_; /**< The number of forced fast polls when the poller wakes up */ + + size_t maxProfilePoints_; /**< Maximum number of profile points */ + double *profileTimes_; /**< Array of times per profile point */ + + int moveToHomeAxis_; + + /* These are convenience functions for controllers that use asynOctet interfaces to the hardware */ + asynStatus writeController(); + asynStatus writeController(const char *output, double timeout); + asynStatus writeReadController(); + asynStatus writeReadController(const char *output, char *response, size_t maxResponseLen, size_t *responseLen, double timeout); + asynUser *pasynUserController_; + char outString_[MAX_CONTROLLER_STRING_SIZE]; + char inString_[MAX_CONTROLLER_STRING_SIZE]; + + friend class asynMotorAxis; +}; +#define NUM_MOTOR_DRIVER_PARAMS (&LAST_MOTOR_PARAM - &FIRST_MOTOR_PARAM + 1) + +#endif /* _cplusplus */ +#endif /* asynMotorController_H */ diff --git a/motorApp/NewportSrc/XPS_C8_errors.h b/motorApp/NewportSrc/XPS_C8_errors.h index cd7087523..2098187d5 100644 --- a/motorApp/NewportSrc/XPS_C8_errors.h +++ b/motorApp/NewportSrc/XPS_C8_errors.h @@ -1,107 +1,107 @@ -/*/////////////////////////////////////////////////////////////////// - * Created header file XPS_C8_errors.h for XPS function errors - */ - -/* TCL interpretor error */ -#define ERR_TCL_INTERPRETOR_ERROR 1 - -/* No error */ -#define SUCCESS 0 - -/* XPS errors */ -#define ERR_BUSY_SOCKET -1 -#define ERR_TCP_TIMEOUT -2 -#define ERR_STRING_TOO_LONG -3 -#define ERR_UNKNOWN_COMMAND -4 -#define ERR_POSITIONER_ERROR -5 -#define ERR_WRONG_FORMAT -7 -#define ERR_WRONG_OBJECT_TYPE -8 -#define ERR_WRONG_PARAMETERS_NUMBER -9 -#define ERR_WRONG_TYPE -10 -#define ERR_WRONG_TYPE_BIT_WORD -11 -#define ERR_WRONG_TYPE_BOOL -12 -#define ERR_WRONG_TYPE_CHAR -13 -#define ERR_WRONG_TYPE_DOUBLE -14 -#define ERR_WRONG_TYPE_INT -15 -#define ERR_WRONG_TYPE_UNSIGNEDINT -16 -#define ERR_PARAMETER_OUT_OF_RANGE -17 -#define ERR_POSITIONER_NAME -18 -#define ERR_GROUP_NAME -19 -#define ERR_FATAL_INIT -20 -#define ERR_IN_INITIALIZATION -21 -#define ERR_NOT_ALLOWED_ACTION -22 -#define ERR_POSITION_COMPARE_NOT_SET -23 -#define ERR_UNCOMPATIBLE -24 -#define ERR_FOLLOWING_ERROR -25 -#define ERR_EMERGENCY_SIGNAL -26 -#define ERR_GROUP_ABORT_MOTION -27 -#define ERR_GROUP_HOME_SEARCH_TIMEOUT -28 -#define ERR_MNEMOTYPEGATHERING -29 -#define ERR_GATHERING_NOT_STARTED -30 -#define ERR_HOME_OUT_RANGE -31 -#define ERR_GATHERING_NOT_CONFIGURED -32 -#define ERR_GROUP_MOTION_DONE_TIMEOUT -33 -#define ERR_TRAVEL_LIMITS -35 -#define ERR_UNKNOWN_TCL_FILE -36 -#define ERR_TCL_SCRIPT_KILL -38 -#define ERR_TCL_INTERPRETOR -37 -#define ERR_MNEMO_ACTION -39 -#define ERR_MNEMO_EVENT -40 -#define ERR_SLAVE_CONFIGURATION -41 -#define ERR_JOG_OUT_OF_RANGE -42 -#define ERR_GATHERING_RUNNING -43 -#define ERR_SLAVE -44 -#define ERR_END_OF_RUN -45 -#define ERR_NOT_ALLOWED_BACKLASH -46 -#define ERR_WRONG_TCL_TASKNAME -47 -#define ERR_BASE_VELOCITY -48 -#define ERR_GROUP_HOME_SEARCH_ZM_ERROR -49 -#define ERR_MOTOR_INITIALIZATION_ERROR -50 -#define ERR_SPIN_OUT_OF_RANGE -51 -#define ERR_WRITE_FILE -60 -#define ERR_READ_FILE -61 -#define ERR_TRAJ_ELEM_TYPE -62 -#define ERR_TRAJ_ELEM_RADIUS -63 -#define ERR_TRAJ_ELEM_SWEEP -64 -#define ERR_TRAJ_ELEM_LINE -65 -#define ERR_TRAJ_EMPTY -66 -#define ERR_TRAJ_VEL_LIMIT -68 -#define ERR_TRAJ_ACC_LIMIT -69 -#define ERR_TRAJ_FINAL_VELOCITY -70 -#define ERR_MSG_QUEUE -71 -#define ERR_TRAJ_INITIALIZATION -72 -#define ERR_END_OF_FILE -73 -#define ERR_READ_FILE_PARAMETER_KEY -74 -#define ERR_TRAJ_TIME -75 -#define ERR_EVENTS_NOT_CONFIGURED -80 -#define ERR_ACTIONS_NOT_CONFIGURED -81 -#define ERR_EVENT_BUFFER_FULL -82 -#define ERR_EVENT_ID_UNDEFINED -83 -#define ERR_HOME_SEARCH_GANTRY_TOLERANCE_ERROR -85 -#define ERR_FOCUS_RESERVED_SOCKET -90 -#define ERR_FOCUS_BUSY_EVENT_SCHEDULER -91 -#define ERR_OPTIONAL_EXTERNAL_MODULE_FILE -94 -#define ERR_OPTIONAL_EXTERNAL_MODULE_EXECUTE -95 -#define ERR_OPTIONAL_EXTERNAL_MODULE_KILL -96 -#define ERR_OPTIONAL_EXTERNAL_MODULE_LOAD -97 -#define ERR_OPTIONAL_EXTERNAL_MODULE_UNLOAD -98 -#define ERR_FATAL_EXTERNAL_MODULE_LOAD -99 -#define ERR_INTERNAL_ERROR -100 -#define ERR_RELAY_FEEDBACK_TEST_NO_OSCILLATION -101 -#define ERR_RELAY_FEEDBACK_TEST_SIGNAL_NOISY -102 -#define ERR_SIGNAL_POINTS_NOT_ENOUGH -103 -#define ERR_PID_TUNING_INITIALIZATION -104 -#define ERR_SCALING_CALIBRATION -105 -#define ERR_WRONG_USERNAME_OR_PASSWORD -106 -#define ERR_NEED_ADMINISTRATOR_RIGHTS -107 -#define ERR_SOCKET_CLOSED_BY_ADMIN -108 -#define ERR_NEED_TO_BE_HOMED_AT_LEAST_ONCE -109 -#define ERR_NOT_ALLOWED_FOR_GANTRY -110 -#define ERR_GATHERING_BUFFER_FULL -111 -#define ERR_EXCITATION_SIGNAL_INITIALIZATION -112 -#define ERR_BOTH_ENDS_OF_RUNS_ACTIVATED -113 -#define ERR_GROUP_CLAMPING_TIMEOUT -114 -#define ERR_HARDWARE_FUNCTION_NOT_SUPPORTED -115 -#define ERR_EXTERNAL_DRIVER_INIT -116 -#define ERR_FUNCTION_ONLY_ALLOWED_IN_DISABLED_STATE -117 -#define ERR_NOT_ALLOWED_DRIVER_NOT_INITIALIZED -118 +/*/////////////////////////////////////////////////////////////////// + * Created header file XPS_C8_errors.h for XPS function errors + */ + +/* TCL interpretor error */ +#define ERR_TCL_INTERPRETOR_ERROR 1 + +/* No error */ +#define SUCCESS 0 + +/* XPS errors */ +#define ERR_BUSY_SOCKET -1 +#define ERR_TCP_TIMEOUT -2 +#define ERR_STRING_TOO_LONG -3 +#define ERR_UNKNOWN_COMMAND -4 +#define ERR_POSITIONER_ERROR -5 +#define ERR_WRONG_FORMAT -7 +#define ERR_WRONG_OBJECT_TYPE -8 +#define ERR_WRONG_PARAMETERS_NUMBER -9 +#define ERR_WRONG_TYPE -10 +#define ERR_WRONG_TYPE_BIT_WORD -11 +#define ERR_WRONG_TYPE_BOOL -12 +#define ERR_WRONG_TYPE_CHAR -13 +#define ERR_WRONG_TYPE_DOUBLE -14 +#define ERR_WRONG_TYPE_INT -15 +#define ERR_WRONG_TYPE_UNSIGNEDINT -16 +#define ERR_PARAMETER_OUT_OF_RANGE -17 +#define ERR_POSITIONER_NAME -18 +#define ERR_GROUP_NAME -19 +#define ERR_FATAL_INIT -20 +#define ERR_IN_INITIALIZATION -21 +#define ERR_NOT_ALLOWED_ACTION -22 +#define ERR_POSITION_COMPARE_NOT_SET -23 +#define ERR_UNCOMPATIBLE -24 +#define ERR_FOLLOWING_ERROR -25 +#define ERR_EMERGENCY_SIGNAL -26 +#define ERR_GROUP_ABORT_MOTION -27 +#define ERR_GROUP_HOME_SEARCH_TIMEOUT -28 +#define ERR_MNEMOTYPEGATHERING -29 +#define ERR_GATHERING_NOT_STARTED -30 +#define ERR_HOME_OUT_RANGE -31 +#define ERR_GATHERING_NOT_CONFIGURED -32 +#define ERR_GROUP_MOTION_DONE_TIMEOUT -33 +#define ERR_TRAVEL_LIMITS -35 +#define ERR_UNKNOWN_TCL_FILE -36 +#define ERR_TCL_SCRIPT_KILL -38 +#define ERR_TCL_INTERPRETOR -37 +#define ERR_MNEMO_ACTION -39 +#define ERR_MNEMO_EVENT -40 +#define ERR_SLAVE_CONFIGURATION -41 +#define ERR_JOG_OUT_OF_RANGE -42 +#define ERR_GATHERING_RUNNING -43 +#define ERR_SLAVE -44 +#define ERR_END_OF_RUN -45 +#define ERR_NOT_ALLOWED_BACKLASH -46 +#define ERR_WRONG_TCL_TASKNAME -47 +#define ERR_BASE_VELOCITY -48 +#define ERR_GROUP_HOME_SEARCH_ZM_ERROR -49 +#define ERR_MOTOR_INITIALIZATION_ERROR -50 +#define ERR_SPIN_OUT_OF_RANGE -51 +#define ERR_WRITE_FILE -60 +#define ERR_READ_FILE -61 +#define ERR_TRAJ_ELEM_TYPE -62 +#define ERR_TRAJ_ELEM_RADIUS -63 +#define ERR_TRAJ_ELEM_SWEEP -64 +#define ERR_TRAJ_ELEM_LINE -65 +#define ERR_TRAJ_EMPTY -66 +#define ERR_TRAJ_VEL_LIMIT -68 +#define ERR_TRAJ_ACC_LIMIT -69 +#define ERR_TRAJ_FINAL_VELOCITY -70 +#define ERR_MSG_QUEUE -71 +#define ERR_TRAJ_INITIALIZATION -72 +#define ERR_END_OF_FILE -73 +#define ERR_READ_FILE_PARAMETER_KEY -74 +#define ERR_TRAJ_TIME -75 +#define ERR_EVENTS_NOT_CONFIGURED -80 +#define ERR_ACTIONS_NOT_CONFIGURED -81 +#define ERR_EVENT_BUFFER_FULL -82 +#define ERR_EVENT_ID_UNDEFINED -83 +#define ERR_HOME_SEARCH_GANTRY_TOLERANCE_ERROR -85 +#define ERR_FOCUS_RESERVED_SOCKET -90 +#define ERR_FOCUS_BUSY_EVENT_SCHEDULER -91 +#define ERR_OPTIONAL_EXTERNAL_MODULE_FILE -94 +#define ERR_OPTIONAL_EXTERNAL_MODULE_EXECUTE -95 +#define ERR_OPTIONAL_EXTERNAL_MODULE_KILL -96 +#define ERR_OPTIONAL_EXTERNAL_MODULE_LOAD -97 +#define ERR_OPTIONAL_EXTERNAL_MODULE_UNLOAD -98 +#define ERR_FATAL_EXTERNAL_MODULE_LOAD -99 +#define ERR_INTERNAL_ERROR -100 +#define ERR_RELAY_FEEDBACK_TEST_NO_OSCILLATION -101 +#define ERR_RELAY_FEEDBACK_TEST_SIGNAL_NOISY -102 +#define ERR_SIGNAL_POINTS_NOT_ENOUGH -103 +#define ERR_PID_TUNING_INITIALIZATION -104 +#define ERR_SCALING_CALIBRATION -105 +#define ERR_WRONG_USERNAME_OR_PASSWORD -106 +#define ERR_NEED_ADMINISTRATOR_RIGHTS -107 +#define ERR_SOCKET_CLOSED_BY_ADMIN -108 +#define ERR_NEED_TO_BE_HOMED_AT_LEAST_ONCE -109 +#define ERR_NOT_ALLOWED_FOR_GANTRY -110 +#define ERR_GATHERING_BUFFER_FULL -111 +#define ERR_EXCITATION_SIGNAL_INITIALIZATION -112 +#define ERR_BOTH_ENDS_OF_RUNS_ACTIVATED -113 +#define ERR_GROUP_CLAMPING_TIMEOUT -114 +#define ERR_HARDWARE_FUNCTION_NOT_SUPPORTED -115 +#define ERR_EXTERNAL_DRIVER_INIT -116 +#define ERR_FUNCTION_ONLY_ALLOWED_IN_DISABLED_STATE -117 +#define ERR_NOT_ALLOWED_DRIVER_NOT_INITIALIZED -118 diff --git a/motorApp/NewportSrc/hxp_errors.h b/motorApp/NewportSrc/hxp_errors.h index 52195524e..3bc40dc5b 100644 --- a/motorApp/NewportSrc/hxp_errors.h +++ b/motorApp/NewportSrc/hxp_errors.h @@ -1,98 +1,98 @@ -//////////////////////////////////////////////////////////////////// -// Created header file hxp_errors.h for XPS function errors -// - -// TCL interpretor error -#define ERR_TCL_INTERPRETOR_ERROR 1 - -// No error -#define SUCCESS 0 - -// XPS errors -#define ERR_TCL_INTERPRETOR_ERROR 1 -#define ERR_BUSY_SOCKET -1 -#define ERR_TCP_TIMEOUT -2 -#define ERR_STRING_TOO_LONG -3 -#define ERR_UNKNOWN_COMMAND -4 -#define ERR_POSITIONER_ERROR -5 -#define ERR_WRONG_FORMAT -7 -#define ERR_WRONG_OBJECT_TYPE -8 -#define ERR_WRONG_PARAMETERS_NUMBER -9 -#define ERR_WRONG_TYPE -10 -#define ERR_WRONG_TYPE_BIT_WORD -11 -#define ERR_WRONG_TYPE_BOOL -12 -#define ERR_WRONG_TYPE_CHAR -13 -#define ERR_WRONG_TYPE_DOUBLE -14 -#define ERR_WRONG_TYPE_INT -15 -#define ERR_WRONG_TYPE_UNSIGNEDINT -16 -#define ERR_PARAMETER_OUT_OF_RANGE -17 -#define ERR_POSITIONER_NAME -18 -#define ERR_GROUP_NAME -19 -#define ERR_FATAL_INIT -20 -#define ERR_IN_INITIALIZATION -21 -#define ERR_NOT_ALLOWED_ACTION -22 -#define ERR_POSITION_COMPARE_NOT_SET -23 -#define ERR_UNCOMPATIBLE -24 -#define ERR_FOLLOWING_ERROR -25 -#define ERR_EMERGENCY_SIGNAL -26 -#define ERR_GROUP_ABORT_MOTION -27 -#define ERR_GROUP_HOME_SEARCH_TIMEOUT -28 -#define ERR_MNEMOTYPEGATHERING -29 -#define ERR_GATHERING_NOT_STARTED -30 -#define ERR_HOME_OUT_RANGE -31 -#define ERR_GATHERING_NOT_CONFIGURED -32 -#define ERR_GROUP_MOTION_DONE_TIMEOUT -33 -#define ERR_TRAVEL_LIMITS -35 -#define ERR_UNKNOWN_TCL_FILE -36 -#define ERR_TCL_SCRIPT_KILL -38 -#define ERR_TCL_INTERPRETOR -37 -#define ERR_MNEMO_ACTION -39 -#define ERR_MNEMO_EVENT -40 -#define ERR_SLAVE_CONFIGURATION -41 -#define ERR_JOG_OUT_OF_RANGE -42 -#define ERR_GATHERING_RUNNING -43 -#define ERR_SLAVE -44 -#define ERR_END_OF_RUN -45 -#define ERR_NOT_ALLOWED_BACKLASH -46 -#define ERR_WRONG_TCL_TASKNAME -47 -#define ERR_BASE_VELOCITY -48 -#define ERR_GROUP_HOME_SEARCH_ZM_ERROR -49 -#define ERR_MOTOR_INITIALIZATION_ERROR -50 -#define ERR_WRITE_FILE -60 -#define ERR_READ_FILE -61 -#define ERR_TRAJ_ELEM_TYPE -62 -#define ERR_TRAJ_ELEM_LINE -65 -#define ERR_TRAJ_EMPTY -66 -#define ERR_TRAJ_VEL_LIMIT -68 -#define ERR_TRAJ_ACC_LIMIT -69 -#define ERR_TRAJ_FINAL_VELOCITY -70 -#define ERR_MSG_QUEUE -71 -#define ERR_TRAJ_INITIALIZATION -72 -#define ERR_END_OF_FILE -73 -#define ERR_READ_FILE_PARAMETER_KEY -74 -#define ERR_TRAJ_TIME -75 -#define ERR_EVENTS_NOT_CONFIGURED -80 -#define ERR_ACTIONS_NOT_CONFIGURED -81 -#define ERR_EVENT_BUFFER_FULL -82 -#define ERR_EVENT_ID_UNDEFINED -83 -#define ERR_HOME_SEARCH_GANTRY_TOLERANCE_ERROR -85 -#define ERR_OPTIONAL_EXTERNAL_MODULE_FILE -94 -#define ERR_OPTIONAL_EXTERNAL_MODULE_EXECUTE -95 -#define ERR_OPTIONAL_EXTERNAL_MODULE_KILL -96 -#define ERR_OPTIONAL_EXTERNAL_MODULE_LOAD -97 -#define ERR_OPTIONAL_EXTERNAL_MODULE_UNLOAD -98 -#define ERR_FATAL_EXTERNAL_MODULE_LOAD -99 -#define ERR_INTERNAL_ERROR -100 -#define ERR_RELAY_FEEDBACK_TEST_NO_OSCILLATION -101 -#define ERR_RELAY_FEEDBACK_TEST_SIGNAL_NOISY -102 -#define ERR_SIGNAL_POINTS_NOT_ENOUGH -103 -#define ERR_PID_TUNING_INITIALIZATION -104 -#define ERR_SCALING_CALIBRATION -105 -#define ERR_WRONG_USERNAME_OR_PASSWORD -106 -#define ERR_NEED_ADMINISTRATOR_RIGHTS -107 -#define ERR_SOCKET_CLOSED_BY_ADMIN -108 -#define ERR_NEED_TO_BE_HOMED_AT_LEAST_ONCE -109 -#define ERR_NOT_ALLOWED_FOR_GANTRY -110 -#define ERR_GATHERING_BUFFER_FULL -111 -#define ERR_BOTH_ENDS_OF_RUNS_ACTIVATED -113 -#define ERR_HARDWARE_FUNCTION_NOT_SUPPORTED -115 +//////////////////////////////////////////////////////////////////// +// Created header file hxp_errors.h for XPS function errors +// + +// TCL interpretor error +#define ERR_TCL_INTERPRETOR_ERROR 1 + +// No error +#define SUCCESS 0 + +// XPS errors +#define ERR_TCL_INTERPRETOR_ERROR 1 +#define ERR_BUSY_SOCKET -1 +#define ERR_TCP_TIMEOUT -2 +#define ERR_STRING_TOO_LONG -3 +#define ERR_UNKNOWN_COMMAND -4 +#define ERR_POSITIONER_ERROR -5 +#define ERR_WRONG_FORMAT -7 +#define ERR_WRONG_OBJECT_TYPE -8 +#define ERR_WRONG_PARAMETERS_NUMBER -9 +#define ERR_WRONG_TYPE -10 +#define ERR_WRONG_TYPE_BIT_WORD -11 +#define ERR_WRONG_TYPE_BOOL -12 +#define ERR_WRONG_TYPE_CHAR -13 +#define ERR_WRONG_TYPE_DOUBLE -14 +#define ERR_WRONG_TYPE_INT -15 +#define ERR_WRONG_TYPE_UNSIGNEDINT -16 +#define ERR_PARAMETER_OUT_OF_RANGE -17 +#define ERR_POSITIONER_NAME -18 +#define ERR_GROUP_NAME -19 +#define ERR_FATAL_INIT -20 +#define ERR_IN_INITIALIZATION -21 +#define ERR_NOT_ALLOWED_ACTION -22 +#define ERR_POSITION_COMPARE_NOT_SET -23 +#define ERR_UNCOMPATIBLE -24 +#define ERR_FOLLOWING_ERROR -25 +#define ERR_EMERGENCY_SIGNAL -26 +#define ERR_GROUP_ABORT_MOTION -27 +#define ERR_GROUP_HOME_SEARCH_TIMEOUT -28 +#define ERR_MNEMOTYPEGATHERING -29 +#define ERR_GATHERING_NOT_STARTED -30 +#define ERR_HOME_OUT_RANGE -31 +#define ERR_GATHERING_NOT_CONFIGURED -32 +#define ERR_GROUP_MOTION_DONE_TIMEOUT -33 +#define ERR_TRAVEL_LIMITS -35 +#define ERR_UNKNOWN_TCL_FILE -36 +#define ERR_TCL_SCRIPT_KILL -38 +#define ERR_TCL_INTERPRETOR -37 +#define ERR_MNEMO_ACTION -39 +#define ERR_MNEMO_EVENT -40 +#define ERR_SLAVE_CONFIGURATION -41 +#define ERR_JOG_OUT_OF_RANGE -42 +#define ERR_GATHERING_RUNNING -43 +#define ERR_SLAVE -44 +#define ERR_END_OF_RUN -45 +#define ERR_NOT_ALLOWED_BACKLASH -46 +#define ERR_WRONG_TCL_TASKNAME -47 +#define ERR_BASE_VELOCITY -48 +#define ERR_GROUP_HOME_SEARCH_ZM_ERROR -49 +#define ERR_MOTOR_INITIALIZATION_ERROR -50 +#define ERR_WRITE_FILE -60 +#define ERR_READ_FILE -61 +#define ERR_TRAJ_ELEM_TYPE -62 +#define ERR_TRAJ_ELEM_LINE -65 +#define ERR_TRAJ_EMPTY -66 +#define ERR_TRAJ_VEL_LIMIT -68 +#define ERR_TRAJ_ACC_LIMIT -69 +#define ERR_TRAJ_FINAL_VELOCITY -70 +#define ERR_MSG_QUEUE -71 +#define ERR_TRAJ_INITIALIZATION -72 +#define ERR_END_OF_FILE -73 +#define ERR_READ_FILE_PARAMETER_KEY -74 +#define ERR_TRAJ_TIME -75 +#define ERR_EVENTS_NOT_CONFIGURED -80 +#define ERR_ACTIONS_NOT_CONFIGURED -81 +#define ERR_EVENT_BUFFER_FULL -82 +#define ERR_EVENT_ID_UNDEFINED -83 +#define ERR_HOME_SEARCH_GANTRY_TOLERANCE_ERROR -85 +#define ERR_OPTIONAL_EXTERNAL_MODULE_FILE -94 +#define ERR_OPTIONAL_EXTERNAL_MODULE_EXECUTE -95 +#define ERR_OPTIONAL_EXTERNAL_MODULE_KILL -96 +#define ERR_OPTIONAL_EXTERNAL_MODULE_LOAD -97 +#define ERR_OPTIONAL_EXTERNAL_MODULE_UNLOAD -98 +#define ERR_FATAL_EXTERNAL_MODULE_LOAD -99 +#define ERR_INTERNAL_ERROR -100 +#define ERR_RELAY_FEEDBACK_TEST_NO_OSCILLATION -101 +#define ERR_RELAY_FEEDBACK_TEST_SIGNAL_NOISY -102 +#define ERR_SIGNAL_POINTS_NOT_ENOUGH -103 +#define ERR_PID_TUNING_INITIALIZATION -104 +#define ERR_SCALING_CALIBRATION -105 +#define ERR_WRONG_USERNAME_OR_PASSWORD -106 +#define ERR_NEED_ADMINISTRATOR_RIGHTS -107 +#define ERR_SOCKET_CLOSED_BY_ADMIN -108 +#define ERR_NEED_TO_BE_HOMED_AT_LEAST_ONCE -109 +#define ERR_NOT_ALLOWED_FOR_GANTRY -110 +#define ERR_GATHERING_BUFFER_FULL -111 +#define ERR_BOTH_ENDS_OF_RUNS_ACTIVATED -113 +#define ERR_HARDWARE_FUNCTION_NOT_SUPPORTED -115