SMC_TrafoF_Tripod_Lin (FB)

FUNCTION_BLOCK SMC_TrafoF_Tripod_Lin

Forward transformation for tripod

InOut:

Scope

Name

Type

Initial

Comment

Inout

DriveA

AXIS_REF_SM3

The 0 position of DriveA is at the point where the axis, along which the drive moves, intersects the plane where the dOuterRadius is measured. Can be adjusted by dOffsetA.

DriveB

AXIS_REF_SM3

The 0 position of DriveB is at the point where the axis, along which the drive moves, intersects the plane where the dOuterRadius is measured. Can be adjusted by dOffsetB.

DriveC

AXIS_REF_SM3

The 0 position of DriveC is at the point where the axis, along which the drive moves, intersects the plane where the dOuterRadius is measured. Can be adjusted by dOffsetC.

Input

dOuterRadius

LREAL

Radius of outer ring

dInnerRadius

LREAL

Radius of inner ring

dLength

LREAL

Length of linkage

dDistance

LREAL

Distance between two cooperating linkages

dRotationOffset

LREAL

0

Angle between x-axis and first rail

dAxisAngle

LREAL

Absolute angle between rails and z-axis

dOffsetA

LREAL

Offset added to the position of DriveA before the transformation is performed.

dOffsetB

LREAL

Offset added to the position of DriveB before the transformation is performed.

dOffsetC

LREAL

Offset added to the position of DriveC before the transformation is performed.

Output

pi

SMC_PosInfo

Position of the inner ring's center (x,y,z)

bError

BOOL