Access and embedding

The TC3 Plastic Technology Functions creates the corresponding INTERFACEs for each function block (FB). For a detailed description see INTERFACE concept. In this document the following naming rules are applied:

FB_Xyz: Declaration of a function block

fbXyz: an instance of FB_Xyz

I_Xyz: the INTERFACE declaration corresponding to FB_Xyz

iXyz: a variable of I_Xyz that is instantiated with fbXyz

Notice

Do not access the fbXyz instance of an axis directly

We suggest that you don't access the fbXyz of an axis directly, but instead access the properties and methods of the FB_Xyz via iXyz, as is shown below. This is because the development of I_Xyz in TC3_Plastic Technology Functions only considers the properties and methods that are needed externally to operate FB_Xyz. In contrast to that, the properties and methods that are only to be called by other methods inside FB_Xyz do not appear in I_Xyz. As a result, iXyz is clearer than fbXyz and customers can find the information they need faster than with fbXyz, while the risk of misuse is prevented.

sName := fbNcAxis1.Name        // not preferred
sName := iNcClamp1.Name        // preferred

It should be noted that TC3 Plastic Technology Functions creates two INTERFACEs with different information content for each function block of the axes. For example, FB_AxisBase has the interfaces I_AxisBase and I_AxisBaseDev. I_AxisBase contains the necessary functions of the axes for most common cases. In contrast, I_AxisBaseDev provides more information access and allows users to implement more complex functions. For the sake of simplicity and security, it is recommended to use the general interface (e.g. I_AxisBase).

iNcAxis1:             I_AxisNcBase := fbNcAxis1;
iNcAxis1Dev:          I_AxisNcBaseDev := fbNcAxis1;

iHydAxis1:            I_AxisHydraulicBase := fbHydAxis1;
iHydAxis1Dev:         I_AxisHydraulicBaseDev := fbHydAxis1;

The following UML diagram shows the available interfaces of the individual axes and their inheritance structure.

Access and embedding 1:

Name

Description

I_MotionBase

General motion unit

I_MotionBaseDev

I_AxisBase

General axis

I_AxisBaseDev

I_AxisNcBase

NC-based axis

I_AxisNcBaseDev

I_AxisHydraulicBase

Hydraulic-based axis.

.

I_AxisHydraulicBaseDev

I_AxisInvBase

Inverter-based axis

I_AxisInvBaseDev

I_AxisTrafoBase

General transformation axis

I_AxisTrafoBaseDev

I_AxisNcTrafoBase

NC-based transformation axis

I_AxisNcTrafoBaseDev

I_ActuatorBase

Digital linear actuator

I_ActuatorBaseDev