FUNCTION_BLOCK AXIS_REF_SM3 IMPLEMENTS DED.IDevice2, IAxisRef
The function block serves as drive interface containing routines serving as drivers. Every SoftMotion axis is an extended instance of this function block.
Note
Every motion-generating function block or, more generally, a function block having a VAR_IN_OUT of type AXIS_REF_SM3 needs to be called in the bus cycle task of the drive device represented by this AXIS_REF_SM3.
InOut:
Scope |
Name |
Type |
Initial |
Comment |
Input |
wAxisStructID |
WORD |
16#FE12 |
|
nAxisState |
power_off |
State of the axis according to the PLCopen state diagram:
Parameter number: 1000 |
||
bRegulatorOn |
BOOL |
FALSE |
Parameter number: 1010 |
|
bDriveStart |
BOOL |
FALSE |
Parameter number: 1011 |
|
bCommunication |
BOOL |
FALSE |
TRUE: Communication OK Parameter number: 1012 |
|
wCommunicationState |
WORD |
16#FFFF |
Parameter number: 1013 |
|
uiDriveInterfaceError |
UINT |
Drive interface error number Parameter number: 1014 |
||
bRegulatorRealState |
BOOL |
FALSE |
Parameter number: 1015 |
|
bDriveStartRealState |
BOOL |
FALSE |
Parameter number: 1016 |
|
wDriveId |
WORD |
0 |
Parameter number: 1021 |
|
iOwner |
INT |
0 |
Parameter number: 1022 |
|
iNoOwner |
INT |
0 |
Parameter number: 1023 |
|
fCycleTimeSpent |
LREAL |
Parameter number: 1024 |
||
fTaskCycle |
LREAL |
0.005 |
Parameter number: 1025 |
|
bError |
BOOL |
FALSE |
Parameter number: 1030 |
|
dwErrorID |
DWORD |
0 |
Parameter number: 1031 |
|
bErrorAckn |
BOOL |
FALSE |
Parameter number: 1032 |
|
bDisableErrorLogging |
BOOL |
FALSE |
Parameter number: 1036 |
|
fbeFBError |
ARRAY [0..g_SMC_NUMBER_FB_ERRORS] OF SMC_FBERROR |
Parameter number: 1035 |
||
dwRatioTechUnitsDenom |
DWORD |
1 |
Parameter number 1051 |
|
iRatioTechUnitsNum |
DINT |
1 |
Parameter number 1052 |
|
nDirection |
positive |
Parameter number 1053 |
||
fScalefactor |
LREAL |
1 |
Parameter number 1054 |
|
fFactorVel |
LREAL |
1 |
Parameter number 1055 |
|
fFactorAcc |
LREAL |
1 |
Parameter number: 1056 |
|
fFactorTor |
LREAL |
1 |
Parameter number: 1057 |
|
fFactorJerk |
LREAL |
1 |
Factor jerk Parameter number: 1058 |
|
fFactorCur |
LREAL |
1 |
Parameter number: 1059 |
|
iMovementType |
INT |
1 |
Parameter number: 1060 |
|
fPositionPeriod |
LREAL |
1000 |
Parameter number: 1061 |
|
eRampType |
trapez |
Parameter number: 1062 |
||
byControllerMode |
BYTE |
SMC_position |
Parameter number:1091 |
|
byRealControllerMode |
BYTE |
SMC_position |
Parameter number: 1092 |
|
fSetPosition |
LREAL |
0 |
Parameter number: 1100, 1 |
|
fActPosition |
LREAL |
0 |
Parameter number: 1101 |
|
fAimPosition |
LREAL |
0 |
Parameter number: 1105 |
|
fMarkPosition |
LREAL |
0 |
Parameter number: 1106 |
|
fSavePosition |
LREAL |
0 |
Parameter number: 1107 |
|
fSetVelocity |
LREAL |
0 |
Parameter number: 1110, 11 |
|
fActVelocity |
LREAL |
0 |
Parameter number: 1111, 10 |
|
fMaxVelocity |
LREAL |
0 |
Maximum velocity of the drive (remote parameter) in [u/s] Parameter number: 1112,9 |
|
fSWMaxVelocity |
LREAL |
0 |
Maximum velocity (software limit) in [u/s] Parameter number: 1113 |
|
bConstantVelocity |
BOOL |
FALSE |
Parameter number: 1115 |
|
fMarkVelocity |
LREAL |
0 |
Parameter number: 1116, 9 |
|
fSaveVelocity |
LREAL |
0 |
Parameter number: 1117 |
|
fSetAcceleration |
LREAL |
0 |
Parameter number: 1120 |
|
fActAcceleration |
LREAL |
0 |
Parameter number: 1121 |
|
fMaxAcceleration |
LREAL |
0 |
Maximum acceleration of the drive (remote parameter) in [u/s²] Parameter number: 1122, 13 |
|
fSWMaxAcceleration |
LREAL |
0 |
Maximum acceleration (software limit) in [u/s²] Parameter number: 1123 |
|
bAccelerating |
BOOL |
FALSE |
Parameter number: 1125 |
|
fMarkAcceleration |
LREAL |
0 |
Parameter number: 1126 |
|
fSaveAcceleration |
LREAL |
0 |
Parameter number: 1127 |
|
fMaxDeceleration |
LREAL |
0 |
Maximum deceleration of the drive (remote parameter) in [u/s²] Parameter number: 1132, 15 |
|
fSWMaxDeceleration |
LREAL |
0 |
Maximum deceleration (software limit) in [u/s²] Parameter number: 1133 |
|
bDecelerating |
BOOL |
FALSE |
Parameter number: 1135 |
|
fSaveDeceleration |
LREAL |
0 |
Parameter number: 1137 |
|
fSetJerk |
LREAL |
0 |
Parameter number: 1140 |
|
fActJerk |
LREAL |
0 |
Parameter number: 1141 |
|
fMaxJerk |
LREAL |
0 |
Maximum jerk of the drive (remote parameter) in [u/s³] Parameter number: 1142, 16 |
|
fSWMaxJerk |
LREAL |
0 |
Maximum jerk (software limit) in [u/s³] Parameter number: 1143 |
|
fRampJerk |
LREAL |
100000 |
Maximum Jerk, special value for sin² ramp type in [u/s³] Parameter number: 1144 |
|
fMarkJerk |
LREAL |
0 |
Parameter number: 1146 |
|
fSaveJerk |
LREAL |
0 |
Parameter number: 1147 |
|
fSetCurrent |
LREAL |
0 |
Parameter number: 1150 |
|
fActCurrent |
LREAL |
0 |
Parameter number: 1151 |
|
fMaxCurrent |
LREAL |
100 |
Maximum current in [A] Parameter number: 1152 |
|
fSWMaxCurrent |
LREAL |
0 |
Maximum user defined current in [A] Parameter number: 1153 |
|
fSetTorque |
LREAL |
0 |
Parameter number: 1153 |
|
fActTorque |
LREAL |
0 |
Actual torque in [Nm] or [N] (linear), actual value Parameter number: 1161 |
|
fMaxTorque |
LREAL |
0 |
Parameter number: 1162 |
|
fSWLimitPositive |
LREAL |
0 |
Position limit in positive direction in [u] Parameter number: 1200, 2 |
|
fSWLimitNegative |
LREAL |
0 |
Position limit in negative direction in [u] Parameter number: 1201, 3 |
|
usiSWEndSwitchState |
USINT |
0 |
Parameter number: 1204 |
|
bSWLimitEnable |
BOOL |
FALSE |
Parameter number: 1205 |
|
bHWLimitEnable |
BOOL |
FALSE |
Parameter number: 1206 |
|
bStartReference |
BOOL |
FALSE |
Parameter number: 1210 |
|
fReference |
LREAL |
0 |
Parameter number: 1211 |
|
bStartReferenceRealState |
BOOL |
FALSE |
Parameter number: 1212 |
|
fOffsetPosition |
LREAL |
0 |
Parameter number: 1215 |
|
dwPosOffsetForResiduals |
DWORD |
0 |
Parameter number: 1230 |
|
dwOneTurn |
DWORD |
0 |
Parameter number: 1231 |
|
dwLastPosition |
DWORD |
0 |
Parameter number: 1232 |
|
bySwitchingState |
SMC_ST_INITIALIZING |
Parameter number: 1233 |
||
iRestNumerator |
DINT |
0 |
Parameter number: 1234 |
|
iTurn |
INT |
0 |
Parameter number: 1235 |
|
dwPosOffsetForResidualsHoming |
DWORD |
0 |
Parameter number: 1237 |
|
dwActPosition |
DWORD |
0 |
Parameter number: 1238 |
|
dwBusBandWidth |
DWORD |
0 |
The bus band width, 0 if the bus has 32 bit, 2^k otherwise where 0 < k < 32 is the bus bit depth. Parameter number: 1240 |
|
dwBusModuloMask |
DWORD |
16#FFFFFFFF |
The value (2^k - 1) where k is the bus bit depth. Parameter number ? |
|
eBrakeControl |
SMC_BRAKE_AUTO |
Parameter number: 1017 |
||
bBrakeClosedRealState |
BOOL |
FALSE |
Parameter number: 1018 |
|
bOldError |
BOOL |
Parameter number: 1033 |
||
bVirtual |
BOOL |
TRUE: Virtual drive. Parameter number: 1040 |
||
bLogical |
BOOL |
Parameter number: 1041 |
||
fSetActTimeLagCycles |
LREAL |
3 |
Parameter number: 1070 |
|
diSetPosition |
DINT |
0 |
Parameter number: 1108 |
|
diActPosition |
DINT |
0 |
Parameter number: 1109 |
|
diSetVelocity |
DINT |
0 |
Parameter number: 1118 |
|
diActVelocity |
DINT |
0 |
Parameter number: 1119 |
|
diSetAcceleration |
DINT |
0 |
Parameter number: 1128 |
|
diActAcceleration |
DINT |
0 |
Parameter number: 1129 |
|
diSetCurrent |
DINT |
0 |
Parameter number: 1158 |
|
diActCurrent |
DINT |
0 |
Parameter number: 1159 |
|
diSetTorque |
DINT |
0 |
Parameter number: 1168 |
|
diActTorque |
DINT |
0 |
Parameter number: 1169 |
|
fSWLimitDeceleration |
LREAL |
0 |
Deceleration in [u/s²] with which the system will brake in case of a software limit. Parameter number: 1203 |
|
xWaitForHaltWhenStopInterruptsHome |
BOOL |
|||
fSWErrorMaxDistance |
LREAL |
0 |
Distance in which the drive has to reach standstill after an error has occurred. Parameter number: 1250 |
|
eCheckPositionLag |
0 |
Parameter number: 1207 |
||
fMaxPositionLag |
LREAL |
Parameter number: 1208 |
||
bPositionLagActive |
BOOL |
Parameter number: 1209 |
||
bModuloDoneByDrive |
BOOL |
Parameter number: 1242 |
||
diFollowingError |
DINT |
Parameter number: 1243 |
||
fFollowingError |
LREAL |
Parameter number: 1244 |
||
aCaptDesc |
ARRAY [0..7] OF SMC3_CaptureDescription |
Parameter number: 1400 |
||
bRestarting |
BOOL |
FALSE |
||
xPersistentDataLoaded |
BOOL |
FALSE |
||
strDriveInterfaceError |
STRING |
|||
adatAcyclic |
ARRAY [1..SMC3_gc_usiNumberAcyclicChannels] OF SMC3_DriveAcyclicTel |
|||
iLastSinSquareOwner |
INT |
-3 |
Internal: Last owner that constructed a sin² trajectory. |
|
bSetValuesModifiedByMoveSuperimposed |
BOOL |
Internal: MC_MoveSuperImposed active |
||
vMinRequiredVersion |
VERSION |
The minimum version of SM3_Basic that the driver requires. |
||
iRampType1 |
SMC_TG_IRAMPTYPE |
Instance of ramp type interface, used for Robotics, acceleration ramp |
||
iRampType2 |
SMC_TG_IRAMPTYPE |
Instance of ramp type interface, used for Robotics, deceleration ramp |
||
Output |
strDriver |
STRING(16) |
||
dwDriverVersion |
DWORD |