axis
Lexicon: eco.wonderland.workcell.device.axis.defs
Type: object
Abstract component composed of a motion system that provides linear or rotational motion for a piece of equipment. In robotics, the term Axis is synonymous with Joint. A Joint is the connection between two parts of the structure that move in relation to each other. linear and rotary components MUST have name that MUST follow the conventions described below. Use the nativeName for the manufacturer’s name of the axis if it differs from the assigned name. MTConnect has two high-level classes for automation equipment as follows: (1) Equipment that controls cartesian coordinate axes and (2) Equipment that controls articulated axes. There are ambiguous cases where some machines exhibit both characteristics; when this occurs, the primary control system’s configuration determines the classification. Examples of cartesian coordinate equipment are CNC Machine Tools, Coordinate measurement machines, as specified in ISO 841, and 3D Printers. Examples of articulated automation equipment are Robotic systems as specified in ISO 8373. The following sections define the designation of names for the axes and additional guidance when selecting the correct scheme to use for a given piece of equipment.
Cartesian Coordinate Naming Conventions
Section titled “Cartesian Coordinate Naming Conventions”A Three-Dimensional Cartesian Coordinate control system organizes its axes orthogonally relative to a machine coordinate system where the manufacturer of the equipment specifies the origin. axes name SHOULD comply with ISO 841, if possible.
Linear Motion
Section titled “Linear Motion”A piece of equipment MUST represent prismatic motion using a linear axis and assign its name using the designations x, y, and z. A linear axis name MUST append a monotonically increasing suffix when there are more than one parallel axes; for example, x2, x3, and x4.
Rotary Motion
Section titled “Rotary Motion”MTConnect MUST assign the name to rotary axes exhibiting rotary motion using a, b, and c. A rotary axis name MUST append a monotonically increasing suffix when more than one rotary axis rotates around the same linear axis; for example, a2, a3, and a4.
Articulated Machine Control Systems
Section titled “Articulated Machine Control Systems”An articulated control system’s axes represent the connecting linkages between two adjacent rigid members of an assembly. The linear axis represents prismatic motion, and the rotary axis represents the rotational motion of the two related members. The control organizes the axes in a kinematic chain from the mounting surface (base) to the end-effector or tooling.
Articulated Machine Axis Names
Section titled “Articulated Machine Axis Names”The axes of articulated machines represent forward kinematic relationships between mechanical linkages. Each axis is a connection between linkages, also referred to as joints, and MUST be named using a j followed by a monotonically increasing number; for example, j1, j2, j3. The numbering starts at the base axis connected or closest to the mounting surface, j1, incrementing to the mechanical interface, Jn, where n is the number of the last axis. The chain forms a parent-child relationship with the parent being the axis closest to the base.
A machine having an axis with more than one child MUST number each branch using its numeric designation followed by a branch number and a monotonically increasing number. For example, if j2 has two children, the first child branch MUST be named j2.1.1 and the second child branch j2.2.1. A child of the first branch MUST be named j2.1.2, incrementing to J2.1.n, where J2.1.n is the number of the last axis in that branch.
Properties
Section titled “Properties”Type: string
Required
Unique identifier for the component.
Type: string
Name of the component. When provided, name MUST be unique for all child component entities of a parent component.
nativeName
Section titled “nativeName”Type: string
Common name associated with component.
sampleInterval
Section titled “sampleInterval”Type: binary32
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.
Type: string
Universally unique identifier for the component.
description
Section titled “description”Type: description
compositions
Section titled “compositions”Type: compositions
components
Section titled “components”Type: components
configuration
Section titled “configuration”Type: configuration
dataItems
Section titled “dataItems”Type: dataItems
references
Section titled “references”Type: references
coordinateSystemIdRef
Section titled “coordinateSystemIdRef”Type: string
Specifies the coordinateSystem for this component and its children.
Referenced By
Section titled “Referenced By”- components
eco.wonderland.workcell.device.component.defs - axes
eco.wonderland.workcell.device.axis.defs
Schema
Section titled “Schema”{ "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "nativeName": { "type": "string" }, "sampleInterval": { "type": "bytes", "minLength": 4, "maxLength": 4 }, "uuid": { "type": "string" }, "compositions": { "type": "ref", "ref": "lex:eco.wonderland.workcell.device.composition.defs#compositions" }, "components": { "type": "ref", "ref": "lex:eco.wonderland.workcell.device.component.defs#components" }, "configuration": { "type": "ref", "ref": "lex:eco.wonderland.workcell.device.configuration.defs#configuration" }, "dataItems": { "type": "ref", "ref": "lex:eco.wonderland.workcell.device.data.defs#dataItems" }, "references": { "type": "ref", "ref": "lex:eco.wonderland.workcell.device.reference.defs#references" }, "coordinateSystemIdRef": { "type": "string" } }}