Diagram ControllerTree
ControllerTree
The ControllerTree is the central element of a UP application. It is used to divide a machine process into functional units, so-called Controller. The tree defines a hierarchy in which the higher-level controllers communicate with the lower-level controllers. Communication takes place via the controller interface. The subordinate controllers (child) are commanded by the higher-level controllers (parent). The ControllerTree exists in a project only once.
class ControllerTree extends BaseControllerTree, ACallingBaseElement
BaseControllerTree
abstract class BaseControllerTree extends NamedResource, DatatypeLibraryOwner
Level
The hierarchy of the ControllerTree is defined by levels. The number of levels used is not limited. Within the levels the controller is instantiated.
The usual levels are defined as follows:
Level 4, Top Level: MAIN controllers and "general services" like HMI, Filehandler, ... which have nothing to do with the control function.
Level 3, Group: Group controller, strongly machine-related, head of an entire function group.
Level 2, module: Modules which perform a corresponding function in a group can also be instantiated several times within group or within a whole machine.
Level 1, Element group: Smallest group of similarities, summary of simple element controllers, which do not necessarily have to be addressed separately.
Level 0, Element: Lowest level of the controller, fulfills exactly one task, reusable, interface to the hardware.
Driver, Driver: Hardware-specific configuration, interface between element controller and hardware (typical application for controllers with motion tasks -> controller is identical, drivers differ depending on the drive used).
class Level extends NamedResource
IntercomTask
class IntercomTask extends NamedResource, AnnotableComment, BaseControllerInstanceInteraction, RootVariableLibrary, RootVariableName
InterlockInstance
class InterlockInstance extends RootVariableLibrary, RootVariableName, BaseControllerInstanceInteraction
BaseTreeElementInstance
abstract class BaseTreeElementInstance extends Resource
UserObject
class UserObject extends AUserObjectInterface, APlatformUserObject
ClusterInstance
class ClusterInstance extends NamedResource, BaseTreeElementInstance, AnnotableComment
ControllerInstance
The ControllerInstance is an instance of a controller. A controller is instantiated in the ControllerTree.
The controller instance is the application-specific version of the corresponding controller. In the context of the ControllerTree, various elements are defined which define the uniqueness.
class ControllerInstance extends AnnotableComment, RangeChildFieldRef, BaseTreeElementInstance
Cluster
class Cluster extends BaseControllerTree
AUserObject
abstract class AUserObject extends NamedResource, AnnotableComment
UserObjectWrapper
The UserObjectWrapper can be used to call function blocks outside the controller construct. Relations can be drawn from any controller. The UserObjectWrapper also has two Code Snippet regions. One for the initialization and one for a cyclic call.
class UserObjectWrapper extends AUserObjectInterface
APlatformUserObject
abstract class APlatformUserObject extends AUserObject
AUserObjectInterface
abstract class AUserObjectInterface extends AUserObject
InterfaceOptions
abstract class InterfaceOptions extends Resource, ANotAvailableOnS7Tia_Property, ANotAvailableOnBeckhoff_Property
GlobalVariable
class GlobalVariable extends BaseArrayVariable, InterfaceOptions
BaseControllerInstanceInteraction
class BaseControllerInstanceInteraction extends Resource, RootVariableLibrary
GlobalVariableLibrary
class GlobalVariableLibrary extends NamedResource, DatatypeLibraryOwner, AAutoPrefix