The MotionDeviceType describes one independent motion device, e.g. a manipulator, a turn table or a linear axis. Examples are described in Annex B.1.

A MotionDevice shall have at least one axis and one power train. The MotionDeviceType is formally defined in Figure 14.

image020.png

Figure 13 – Overview MotionDeviceType

Table 15 – MotionDeviceType Definition

Attribute

Value

BrowseName

MotionDeviceType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of the ComponentType defined in OPC Unified Architecture for Devices (DI)

HasProperty

Variable

2:SerialNumber

String

PropertyType

Mandatory

HasProperty

Variable

2:Manufacturer

LocalizedText

PropertyType

Mandatory

HasProperty

Variable

2:Model

LocalizedText

PropertyType

Mandatory

HasProperty

Variable

2:ProductCode

String

PropertyType

Mandatory

HasProperty

Variable

MotionDeviceCategory

MotionDeviceCategoryEnumeration

PropertyType

Mandatory

HasComponent

Object

2:ParameterSet

 

BaseObjectType

Mandatory

HasComponent

Object

Axes

 

FolderType

Mandatory

HasComponent

Object

PowerTrains

 

FolderType

Mandatory

HasComponent

Object

FlangeLoad

 

LoadType

Optional

HasComponent

Object

AdditionalComponents

FolderType

Optional

The following instance declarations are not defined by this type, but by the supertype ComponentType

and repeated here for better readability

HasProperty

Variable

2:AssetId

String

PropertyType

Optional

HasProperty

Variable

2:DeviceManual

String

PropertyType

Optional

HasProperty

Variable

2:ComponentName

LocalizedText

PropertyType

Optional

The SerialNumber property is a unique production number assigned by the manufacturer of the device. This is often stamped on the outside of the device and may be used for traceability and warranty purposes. This property is derived from ComponentType defined in OPC UA DI.

The Manufacturer property provides the name of the company that manufactured the device. This property is derived from ComponentType defined in OPC UA DI.

The Model property provides the name of the product. This property is derived from ComponentType defined in OPC UA DI.

The ProductCode property provides a unique combination of numbers and letters used to identify the product. It may be the order information displayed on type shields or in ERP systems. This property is derived from ComponentType defined in OPC UA DI.

The AssetId property is a user writable alphanumeric character sequence uniquely identifying a component. The ID is provided by the vendor, integrator or user of the device. It contains typically an identifier in a branch, use case or user specific naming scheme.

This could be for example a reference to an electric scheme. For electric schemes typically EN 81346-2 is used.

An use case could be to build up a location oriented view in a spare part management client software. It enables to identify parts with the same article number which is not possible if this entry is not used.

This property is defined by ComponentType defined in OPC UA DI.

The DeviceManual property allows specifying an address of the user manual for the device. It may be a pathname in the file system or a URL (Web address). This property is defined by ComponentType defined in OPC UA DI.

The ComponentName property provides a user writeable name provided by the vendor, integrator or user of the device. The ComponentName may be a default name given by the vendor. This property is defined by ComponentType defined in OPC UA DI.

The variable MotionDeviceCategory provides the kind of motion device defined by MotionDeviceCategoryEnumeration based on ISO 8373.

Table 16 – MotionDeviceCategoryEnumeration

MotionDeviceCategoryEnumeration

EnumString

Value

Description

OTHER

0

Any motion-device which is not defined by the MotionDeviceCategoryEnumeration

ARTICULATED_ROBOT

1

This robot design features rotary joints and can range from simple two joint structures to 10 or more joints. The arm is connected to the base with a twisting joint. The links in the arm are connected by rotary joints.

SCARA_ROBOT

2

Robot has two parallel rotary joints to provide compliance in a selected plane

CARTESIAN_ROBOT

3

Cartesian robots have three linear joints that use the Cartesian coordinate system (X, Y, and Z). They also may have an attached wrist to allow for rotational movement. The three prismatic joints deliver a linear motion along the axis.

SPHERICAL_ROBOT

4

The arm is connected to the base with a twisting joint and a combination of two rotary joints and one linear joint. The axes form a polar coordinate system and create a spherical-shaped work envelope.

PARALLEL_ROBOT

5

These spider-like robots are built from jointed parallelograms connected to a common base. The parallelograms move a single end of arm tooling in a dome-shaped work area.

CYLINDRICAL_ROBOT

6

The robot has at least one rotary joint at the base and at least one prismatic joint to connect the links. The rotary joint uses a rotational motion along the joint axis, while the prismatic joint moves in a linear motion. Cylindrical robots operate within a cylindrical-shaped work envelope.

Table 17 – ParameterSet of MotionDeviceType

Attribute

Value

BrowseName

AxisType

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

HasComponent

Variable

OnPath

Boolean

BaseDataVariableType

Optional

HasComponent

Variable

InControl

Boolean

BaseDataVariableType

Optional

HasComponent

Variable

SpeedOverride

Double

BaseDataVariableType

Mandatory

Description of ParameterSet of MotionDeviceType:

  • Variable OnPath: The variable OnPath is true if the motion device is on or near enough the planned program path such that program execution can continue. If the MotionDevice deviates too much from this path in case of errors or an emergency stop, this value becomes false. If OnPath is false, the motion device needs repositioning to continue program execution.
  • Variable InControl: The variable InControl provides the information if the actuators (in most cases a motor) of the motion device are powered up and in control: "true". The motion device might be in a standstill.
  • Variable SpeedOverride: The SpeedOverride provides the current speed setting in percent of programmed speed (0 - 100%).

Axes is a container for one or more instances of the AxisType.

Table 18 – TypeDefinition of Axes of MotionDeviceType

Attribute

Value

BrowseName

Axes

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

HasComponent

Object

<AxisIdentifier>

AxisType

MandatoryPlaceholder

PowerTrains is a container for one or more instances of the PowerTrainType.

Table 19 –TypeDefinition of PowerTrains of MotionDeviceType

Attribute

Value

BrowseName

PowerTrains

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

HasComponent

Object

<PowerTrainIdentifier>

PowerTrainType

MandatoryPlaceholder

FlangeLoad provides data for the load at the flange or mounting-point of the motion device.

AdditionalComponents is a container for one or more instances of subtypes of ComponentType defined in OPC UA DI. The listed components are installed at the motion device, e.g. an IO-board.

NOTE: Components like motors or gears of a motion device are placed inside the power train object and not inside this AdditionalComponents container.

Table 20 – TypeDefinition of AdditionalComponents of MotionDeviceType

Attribute

Value

BrowseName

AdditionalComponents

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

HasComponent

Object

<AdditionalComponentIdentifier>

2:ComponentType

MandatoryPlaceholder

The AuxiliaryComponentType and DriveType are the only subtypes of ComponentType for use in this container which are described in this specification. The intention is to integrate inside this container devices which are defined in other companion specifications using DI.