Device

Supertype: Component

Definition: Component composed of a piece of equipment that produces observationsobserved value of a property at a point in time. about itself.

Version Info

IntroducedDeprecatedUpdated
1.0  

Documentation

Description

A Device organizesact of containing and owning one or more elements. its parts as Component entities.

A Device MUST have a name and uuid attribute to identify itself.

A Device MUST have the following DataItems: Availability, AssetChanged, and AssetRemoved.

See Components for more details on the properties of Device.

See Section Part Properties of Device for a list of top levelelement that represents the most significant physical or logical functions of a piece of equipment. Component types for a Device.

Inherited Properties

NameTypeIntDepMultiplicityDescription
id ID1.01 unique identifier for the Component.
name string1.00..1

name of the Component.

When provided, name MUST be unique for all child Component entities of a parent Component.

nativeName string1.10..1 common name associated with Component.
sampleInterval float1.20..1

interval in milliseconds between the completion of the reading of the data associated with the Component until the beginning of the next sampling of that data.

This information may be used by client software applications to understand how often information from a Component is expected to be refreshed.

The refresh rate for data from all child Component entities will be the same as for the parent Component element unless specifically overridden by another sampleInterval provided for the child Component.

sampleRate float1.01.20..1 DEPRECATED in MTConnect Version 1.2. Replaced by sampleInterval,Component.
uuid ID1.00..1 universally unique identifier for the Component.
coordinateSystemIdRef ID1.80..1 specifies the CoordinateSystem for this Component and its children.

Inherited Relations

NameTypeIntDepMultiplicityDescription
hasDescription Description1.00..1
hasComposition Composition1.40..*
hasComponent Component1.00..*
hasConfiguration Configuration1.20..1
observes DataItem1.00..*
madeObservation Observation1.00..*
hasReference Reference1.30..*
hasComponentStream ComponentStream1.00..1
isComponentOf Component1.00..*

Properties

NameTypeIntDepMultiplicityDescription
iso841Class string1.01.20..1 DEPRECATED in MTConnect Version 1.2.
uuid ID1.01 universally unique identifier for the element.
mtconnectVersion string1.70..1 MTConnect version of the Device Information Modelinformation model that describes the physical and logical configuration for a piece of equipment and the data that may be reported by that equipment. used to configure the information to be published for a piece of equipment in an MTConnect Response Documentresponse document published by an MTConnect Agent..
name string1.01 name of an element or a piece of equipment.

Relations

NameTypeIntDepMultiplicityDescription
hasAuxiliary Auxiliary1.40..* (through Auxiliaries)
hasController Controller2.00..* (through Controllers)
hasInterface Interface1.30..* (through Interfaces)
hasResource Resource1.40..* (through Resources)
hasStructure Structure1.70..* (through Structures)
hasSystem System1.10..* (through Systems)
hasAxis Axis1.00..* (through Axes)
hasAdapter Adapter1.70..* (through Adapters)
observesAvailability Availability1.11
observesAssetChanged AssetChanged1.21
observesAssetRemoved AssetRemoved1.31
isDeviceOf MTConnectDevices1.01..*

Constraints

Error MessageOCL Expression
All Device entities MUST have DataItem of types AVAILABILITY, ASSET_CHANGED and ASSET_REMOVED.
Components::Devices::Device::allInstances()->iterate(device;devicecount:Real=0|
if device.observes->size() >= 3
then 
    if device.observes->iterate(av;avail:Real=0|if av.oclAsType(DataItems::"DataItem Types"::Event).type = DataTypes::EventEnum::AVAILABILITY then avail+1 else avail+0 endif) = 1
    then if device.observes->iterate(ac;assetc:Real=0|if ac.oclAsType(DataItems::"DataItem Types"::Event).type = DataTypes::EventEnum::ASSET_CHANGED then assetc+1 else assetc+0 endif) = 1
        then if device.observes->iterate(ar;assetr:Real=0|if ar.oclAsType(DataItems::"DataItem Types"::Event).type = DataTypes::EventEnum::ASSET_REMOVED then assetr+1 else assetr+0 endif) = 1
            then devicecount + 1
            else devicecount + 0
            endif
        else devicecount + 0
        endif
    else devicecount + 0
    endif
else devicecount + 0
endif) = hasDevice->size()
Device MUST have at least one of Component, DataItem or Reference entities.
Components::Devices::Device::allInstances()->iterate(device;devicecount:Real=0|
if device.id->size() = 1 and 
    device.name->size() = 1 and
    device.uuid->size() = 1 and
    (device.observes->size() > 0 or device.hasReference->size() > 0 or device.hasComponent->size() > 0) 
then
    devicecount + 1
else
    devicecount + 0
endif
) = Components::Devices::Device::allInstances()->size()

Subclasses

NameIntDep
Agent1.7 

Back to top

Copyright © 2017-2026 Association for Manufacturing Technology (AMT). All rights reserved. MTConnect® is a trademark of AMT. Terms of Use.

MTConnect SysML Model V2.1