Files
Motion_lib/motion_package/eAxisParameters.py
T

132 lines
8.0 KiB
Python

#!/usr/bin/env python
from enum import *
class E_AxisParameters(Enum):
# PLCopen specific parameters Index-Group 0x4000 + ID
CommandedPosition = 1 # lreal taken from NcToPlc
SWLimitFwd = 2 # lreal IndexOffset= 16#0001_000E
SWLimitBwd = 3 # lreal IndexOffset= 16#0001_000D
EnableLimitFwd = 4 # bool IndexOffset= 16#0001_000C
EnableLimitBwd = 5 # bool IndexOffset= 16#0001_000B
EnablePosLagMonitoring = 6 # bool IndexOffset= 16#0002_0010
MaxPositionLag = 7 # lreal IndexOffset= 16#0002_0012
AxisMaxVelocity = 8 # lreal IndexOffset= 16#0000_0027
ActualVelocity = 10 # lreal taken from NcToPlc
CommandedVelocity = 11 # lreal taken from NcToPlc
AxisDefaultAcceleration = 12 # lreal IndexOffset= 16#0000_0101
AxisDefaultDeceleration = 14 # lreal IndexOffset= 16#0000_0102
AxisDefaultJerk = 16 # lreal IndexOffset= 16#0000_0103
# Beckhoff specific parameters Index-Group 0x4000 + ID
AxisId = 1000 # lreal IndexOffset= 16#0000_0001
AxisManVelSlow = 1001 # lreal IndexOffset= 16#0000_0008
AxisManVelFast = 1002 # lreal IndexOffset= 16#0000_0009
AxisRapidTraverseVelocity = 1009 # lreal IndexOffset= 16#0000_000A
AxisVelocityToCam = 1012 # lreal IndexOffset= 16#0000_0006
AxisVelocityFromCam = 1013 # lreal IndexOffset= 16#0000_0007
AxisJogIncrementForward = 1014 # lreal IndexOffset= 16#0000_0018
AxisJogIncrementBackward = 1015 # lreal IndexOffset= 16#0000_0019
AxisMaxPosLagFilterTime = 1022 # lreal IndexOffset= 16#0002_0013
AxisEnPositionRangeMonitoring = 1023 # bool IndexOffset= 16#0000_000F
AxisPositionRangeWindow = 1024 # lreal IndexOffset= 16#0000_0010
AxisEnTargetPositionMonitoring = 1025 # bool IndexOffset= 16#0000_0015
AxisTargetPositionWindow = 1026 # lreal IndexOffset= 16#0000_0016
AxisTargetPositionMonitoringTime = 1027 # lreal IndexOffset= 16#0000_0017
AxisEnInTargetTimeout = 1028 # bool IndexOffset= 16#0000_0029
AxisInTargetTimeout = 1029 # lreal IndexOffset= 16#0000_002A
AxisEnMotionMonitoring = 1030 # bool IndexOffset= 16#0000_0011
AxisMotionMonitoringWindow = 1031 # lreal IndexOffset= 16#0000_0028
AxisMotionMonitoringTime = 1032 # lreal IndexOffset= 16#0000_0012
AxisDelayTimeVeloPosition = 1033 # lreal IndexOffset= 16#0000_0104
AxisEnLoopingDistance = 1034 # bool IndexOffset= 16#0000_0013
AxisLoopingDistance = 1035 # lreal IndexOffset= 16#0000_0014
AxisEnBacklashCompensation = 1036 # bool IndexOffset= 16#0000_002B
AxisBacklash = 1037 # lreal IndexOffset= 16#0000_002C
AxisEnDataPersistence = 1038 # bool IndexOffset= 16#0000_0030
AxisRefVeloOnRefOutput = 1039 # lreal IndexOffset= 16#0003_0101
AxisOverrideType = 1040 # lreal IndexOffset= 16#0000_0105
# new since 4/2007
AxisEncoderOffset = 1042 # lreal IndexOffset= 16#0001_0007
AxisEncoderDirectionInverse = 1043 # bool IndexOffset= 16#0001_0008
AxisEncoderMask = 1044 # dword IndexOffset= 16#0001_0015
AxisEncoderModuloValue = 1045 # lreal IndexOffset= 16#0001_0009
AxisModuloToleranceWindow = 1046 # lreal IndexOffset= 16#0001_001B
AxisEnablePosCorrection = 1047 # bool IndexOffset= 16#0001_0016
AxisPosCorrectionFilterTime = 1048 # lreal IndexOffset= 16#0001_0017
# new since 1/2010
AxisUnitInterpretation = 1049 # lreal IndexOffset= 16#0000_0026
AxisMotorDirectionInverse = 1050 # bool IndexOffset= 16#0003_0006
# new since 1/2011
AxisCycleTime = 1051 # lreal IndexOffset= 16#0000_0004
# new since 5/2011
AxisFastStopSignalType = 1052 # dword IndexOffset= 16#0000_001E
AxisFastAcc = 1053 # lreal IndexOffset= 16#0000_010A
AxisFastDec = 1054 # lreal IndexOffset= 16#0000_010B
AxisFastJerk = 1055 # lreal IndexOffset= 16#0000_010C
# new since 1/2012 *)
AxisEncoderScalingNumerator = 1056 # lreal IndexOffset= 16#0001_0023 - available in Tc3
AxisEncoderScalingDenominator = 1057 # lreal IndexOffset= 16#0001_0024 - available in Tc3
# new since 7/2016
AxisMaximumAcceleration = 1058 # lreal IndexOffset= 16#0000_00F1
AxisMaximumDeceleration = 1059 # lreal IndexOffset= 16#0000_00F2
AxisVeloJumpFactor = 1060 # lreal IndexOffset= 16#0000_0106
AxisToleranceBallAuxAxis = 1061 # lreal IndexOffset= 16#0000_0108
AxisMaxPositionDeviationAuxAxis = 1062 # lreal IndexOffset= 16#0000_0109
AxisErrorPropagationMode = 1063 # dword IndexOffset= 16#0000_001A
AxisErrorPropagationDelay = 1064 # lreal IndexOffset= 16#0000_001B
AxisCoupleSlaveToActualValues = 1065 # bool IndexOffset= 16#0000_001C
AxisAllowMotionCmdToSlaveAxis = 1066 # bool IndexOffset= 16#0000_0020
AxisAllowMotionCmdToExtSetAxis = 1067 # bool IndexOffset= 16#0000_0021
AxisEncoderSubMask = 1068 # dword IndexOffset= 16#0001_0108
AxisEncoderReferenceSystem = 1069 # dword IndexOffset= 16#0001_0019
AxisEncoderPositionFilterPT1 = 1070 # lreal IndexOffset= 16#0001_0010
AxisEncoderVelocityFilterPT1 = 1071 # lreal IndexOffset= 16#0001_0011
AxisEncoderAccelerationFilterPT1 = 1072 # lreal IndexOffset= 16#0001_0012
AxisEncoderMode = 1073 # dword IndexOffset= 16#0001_000A
AxisEncoderHomingInvDirCamSearch = 1074 # bool IndexOffset= 16#0001_0101
AxisEncoderHomingInvDirSyncSearch = 1075 # bool IndexOffset= 16#0001_0102
AxisEncoderHomingCalibValue = 1076 # lreal IndexOffset= 16#0001_0103
AxisEncoderReferenceMode = 1077 # dword IndexOffset= 16#0001_0107
AxisRefVeloOutputRatio = 1078 # lreal IndexOffset= 16#0003_0102
AxisDrivePositionOutputScaling = 1079 # lreal IndexOffset= 16#0003_0109
AxisDriveVelocityOutputScaling = 1080 # lreal IndexOffset= 16#0003_0105
AxisDriveVelocityOutputDelay = 1081 # lreal IndexOffset= 16#0003_010D
AxisDriveMinOutputLimitation = 1082 # lreal IndexOffset= 16#0003_000B
AxisDriveMaxOutputLimitation = 1083 # lreal IndexOffset= 16#0003_000C
AxisTorqueInputScaling = 1084 # lreal IndexOffset= 16#0003_0031 - available in Tc3
AxisTorqueInputFilterPT1 = 1085 # lreal IndexOffset= 16#0003_0032 - available in Tc3
AxisTorqueDerivationInputFilterPT1 = 1086 # lreal IndexOffset= 16#0003_0033 - available in Tc3
AxisTorqueOutputScaling = 1087 # lreal IndexOffset= 16#0003_010B
AxisTorqueOutputDelay = 1088 # lreal IndexOffset= 16#0003_010F
AxisAccelerationOutputScaling = 1089 # lreal IndexOffset= 16#0003_010A
AxisAccelerationOutputDelay = 1090 # lreal IndexOffset= 16#0003_010E
AxisDrivePositionOutputSmoothFilterType = 1091 # dword IndexOffset= 16#0003_0110
AxisDrivePositionOutputSmoothFilterTime = 1092 # lreal IndexOffset= 16#0003_0111
AxisDrivePositionOutputSmoothFilterOrder = 1093 # dword IndexOffset= 16#0003_0112
AxisDriveMode = 1094 # dword IndexOffset= 16#0003_000A
AxisDriftCompensationOffset = 1095 # lreal IndexOffset= 16#0003_0104
AxisPositionControlKv = 1096 # lreal IndexOffset= 16#0002_0102
AxisCtrlVelocityPreCtrlWeight = 1097 # lreal IndexOffset= 16#0002_000B
AxisControllerMode = 1098 # dword IndexOffset= 16#0002_000A
AxisCtrlAutoOffset = 1099 # bool IndexOffset= 16#0002_0110
AxisCtrlAutoOffsetTimer = 1100 # lreal IndexOffset= 16#0002_0115
AxisCtrlAutoOffsetLimit = 1101 # lreal IndexOffset= 16#0002_0114
AxisSlaveCouplingControlKcp = 1102 # lreal IndexOffset= 16#0002_010F
AxisCtrlOutputLimit = 1103 # lreal IndexOffset= 16#0002_0100
# Beckhoff specific axis status information - READ ONLY Index-Group 0x4100 + ID
AxisTargetPosition = 2000 # lreal IndexOffset= 16#0000_0013
AxisRemainingTimeToGo = 2001 # lreal IndexOffset= 16#0000_0014
AxisRemainingDistanceToGo = 2002 # lreal IndexOffset= 16#0000_0022, 16#0000_0042
# Beckhoff specific axis functions
# read/write gear ratio of a slave
AxisGearRatio = 3000 # lreal read: IndexGroup=0x4100+ID IdxOffset=16#0000_0022
# write:IndexGroup=0x4200+ID IdxOffset=16#0000_0042
# Beckhoff specific other parameters
# new since 1/2011
NcSafCycleTime = 4000 # lreal IndexOffset= 16#0000_0010
NcSvbCycleTime = 4001 # lreal IndexOffset= 16#0000_0012