FB_Motion

FB_Motion 1:

Represents the standard class for all motion objects, based on TF8560 motion objects.

Syntax:

FUNCTION_BLOCK FB_Motion EXTENDS FB_BaseMd

FB_Motion 2: Properties

Name

Type

Access

Initial value

Description

Name

STRING

Get, Set

<SourceName>

Specifies the name of the class instance.

FB_Motion

Motion

I_MotionBase

Get

NULL

Interface to the assigned TF8560 motion object.

ErrorAlarmTL

TcEventSeverity

Get, Set

Error (3)

Severity of the alarm that the axis triggers in the error state.

Specific

I_MotionSpecific

Get

-

Technology-specific functions/values

FB_BaseMd

MachineData

I_MdBaseContainer

Get

-

Interface for machine data handling.

FB_Base

BaseState

E_BaseState

Get

eNotHandled

Initialization state of the class instance.

Error

BOOL

Get

FALSE

Class is in an error state.

ResultMessage

I_AppMessage

Get

-

Access to the class-internal EventLogger.

[PROTECTED] _Name

STRING

Get

<SourceName>

.Name without leading 'fb'.

FB_Motion 3: Methods

Name

Description

Reset()

Resets the error state of the class.

FB_Motion

CheckAxisState()

Checks the current state of the axis.

FeedEnable(bFeedEnableP, bFeedEnableN)

Enable of a direction of movement.

JogNegative(bCommand)

Starts/stops a jog movement in negative direction.

JogPositive(bCommand)

Starts/stops a jog movement in positive direction.

Power(bCommand)

Switching on the drive control.

SetMotionRef(iMotion)

Assignment method for the TF8560 motion object.

FB_BaseMd

[PROTECTED] AddMdComp()

Adds a component of type I_MdComponent to the machine data container.

FB_Base

SetHMI(ipBase)

General assignment method for an FB_BaseHmi extending class.

Notice This method always fails in the FB_Base implementation. Overwriting is therefore absolutely necessary.

[PROTECTED] _QueryNamespace()

Extracts the first part of the instance path as an object namespace.

[PROTECTED] _QueryObjectName()

Extracts the last part of the instance path as the object name.

FB_Motion 4: Cycle methods

Name

Description

Cyclic()

Cycle method - Call once per PLC cycle (default 10 ms)

CoreCyclic()

Cycle method with short cycle time (default: 2 ms).

FB_Motion 5: Possible events

ID

Description

Alarm/Message

11

Object error state

Alarm

21

Command rejected

Alarm

Component

Description

Index range

Number of instances

FB_MdFileInfo

File information

0x0000 Fxxx

1

FB_MdActuator

Actuator-specific parameters, only if Specific.Actuator.IsActuator = TRUE

0x0000 8xxx

1

FB_Motion 6: Interfaces

Type

Description

I_Base

Standard interface on FB_Base.

I_Motion

Standard interface on FB_Motion

I_TwoTaskInterface

Runtime interface for two PLC tasks.

I_BaseMd

Standard interface on FB_BaseMd.

I_BaseEmpty

For extension without standard interface.

I_BaseDev

Covers all methods and properties of the base class.

Requirements

Development environment

Target platform

PLC libraries to include

TwinCAT >= v3.1.4024.54 (recommended)
TwinCAT >= v3.1.4024.42 (required)

PC or CX (x64, x86)

Tc3_PlasticBaseApplication (>= v3.12.7.0)