FB_HandshakeHmi

FB_HandshakeHmi 1:

Implements a general handshake procedure with life sign mechanism and companion identification.

FB_HandshakeHmi 2:

Class is abstract

Since the class is defined as ABSTRACT, the class cannot be instantiated and must be implemented using inheritance.

Syntax:

FUNCTION_BLOCK ABSTRACT FB_HandshakeHmi EXTENDS FB_BaseHmi

FB_HandshakeHmi 3: Handshake signal properties

Name

Type

Access

Initial value

Description

PLC / HMI1

Reset

BOOL

Get, Set

FALSE

Request to reinitialize the communication.

HMI

FB_HandshakeHmi

CompanionID

UINT

Get, Set

0

ID of the currently connected HMI Companion.

HMI

LiveSignHMI

UINT

Get, Set

0

Changing value of the HMI client to signal an active connection.

HMI

1The PLC/HMI column describes the assignment of the write access.

FB_HandshakeHmi 4: Properties

Name

Type

Access

Initial value

Description

Name

STRING

Get, Set

<SourceName>

Specifies the name of the class instance.

FB_HandshakeHmi

CompanionTimeout

LREAL

Get, Set

5.0

Time after which the Companion is considered disconnected (no longer connected) if there is no sign of life.

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_HandshakeHmi 5: Methods

Name

Description

Reset()

Resets the error state of the class.

FB_HandshakeHmi

Cyclic()

Cycle method

FB_Base

GetHMI()

Returns the assigned HMI object.

Notice The method is not implemented in the FB_Base class. If the method is not overwritten by inheritance, a pseudo variable is always returned.

SetHMI(ipBase)

General assignment method for an FB_BaseHmi extending class as a local HMI.

Notice The method is not implemented in the FB_Base class. If the method is not overridden by inheritance, it always fails.

[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_HandshakeHmi 6: Interfaces

Type

Description

I_Base

Standard interface on FB_Base.

I_HandshakeHmi

Standard interface on FB_HandshakeHmi

I_BaseEmpty

For extension without standard interface.

I_BaseDev

Covers all methods and properties of the base class.

Prerequisites

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 (>= v12.10.2.0)