AXIS_REF_SM3 (FB)

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

SMC_AXIS_STATE

power_off

State of the axis according to the PLCopen state diagram:

  • 0: power_off

  • 1: errorstop

  • 2: stopping

  • 3: standstill

  • 4: discrete_motion

  • 5: continuous_motion

  • 6: synchronized_motion

  • 7: homing

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

fCycleTimeSpent

LREAL

Parameter number: 1024

fTaskCycle

LREAL

0.005

Parameter number: 1025

bError

BOOL

FALSE

Parameter number: 1030

dwErrorID

DWORD

0

Drive specific error identifier, 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

MC_Direction

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

fFactorReference

LREAL

1

The factor the home offset (fReference, parameter 1211) is multiplied by after conversion to increments. When converting from increments, the received value in increments is divided by the factor. Drivers can set this to -1 to invert the sign of the home offset.

iMovementType

INT

SMC_AXIS_TYPE.finite

Parameter number: 1060

fPositionPeriod

LREAL

1000

Parameter number: 1061

eRampType

SMC_RAMPTYPE

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

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

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

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

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

The set torque in [Nm] or [N] (linear) at the gearbox output. Parameter number: 1160

fActTorque

LREAL

0

Actual torque in [Nm] or [N] (linear) at the gearbox output.
Parameter number: 1161

fMaxTorque

LREAL

0

The maximum torque in [Nm] or [N] (linear) at the gearbox output. Parameter number: 1162

fSWMaxTorque

LREAL

FPU.GetLRealSpecialVal(FPU.ESpecial_FP_Value.PosInf)

The maximum torque (software limit) in [Nm] or [N] (linear) at the gearbox output. Parameter number: 1163

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

TRUE

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_SWITCHING_STATE

SMC_ST_INITIALIZING

Parameter number: 1233

iRestNumerator

DINT

0

Parameter number: 1234

iTurn

INT

0

Parameter number: 1235

dwActPosition

DWORD

0

Parameter number: 1238

usiBusBitWidth

USINT

32

The bus bit depth. This is the number of bits used to send the actual and set position from and to the drive. Between 1 and 32.

dwBusModuloMask

DWORD

16#FFFFFFFF

The value (2^k - 1) where k is the bus bit depth.

eBrakeControl

SMC3_BrakeSetState

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

TRUE: When MC_Home is interrupted by MC_Stop, then``MC_Stop.bDone`` is delayed until the drive reports that it has successfully halted. bStartReferenceRealState = FALSE
Parameter number: 1213

fSWErrorMaxDistance

LREAL

0

Distance in which the drive has to reach standstill after an error has occurred.
Parameter number: 1250

eCheckPositionLag

SMC3_CheckPositionLagMode

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

xPersistentDataLoaded

BOOL

FALSE

strDriveInterfaceError

STRING(255)

adatAcyclic

ARRAY [1..SMC3_gc_usiNumberAcyclicChannels] OF SMC3_DriveAcyclicTel

nAbortCounter

UDINT

Internal: counts the number of aborts. This counter simply wraps to 0 when exceeding 2^32-1, so use accordingly. Increased in method SetOwner().

vMinRequiredVersion

VERSION

The minimum version of SM3_Basic that the driver requires.

bAvoidReversalOnHaltStop

BOOL

Parameter number: 1260

bConsiderLimitsOfAbortedMotionOnHaltStop

BOOL

Parameter number: 1270

bUpdateIOsInStop

BOOL

Update the IOs if the application is stopped. Parameter number 1280

bAutoRestart

BOOL

TRUE

If TRUE, an implict SMC3_ReinitDrive is executed after the communication to the drive is established again after a communication loss (e.g. fieldbus slave no longer operational). If FALSE, an explicit call to SMC3_ReinitDrive is required after communication has been established again. (This is the behavior of SoftMotion versions before 4.18.0.0.) Default is TRUE if not set by the device parameter, i.e. the drive device can override the default. Parameter number 1281

overrideFactors

SMRB.DynFactors

STRUCT(fVel := 1, fAcc := 1, fJerk := 1, fTorque := 1)

m_superimposed

SMC_SuperimposedData

Internal: information of superimposed movements

Output

strDriver

STRING(16)

dwDriverVersion

DWORD

Properties:

Methods:

Structure: