Breadcrumbs

Single Axis Motion

The Single Axis Motion command can be used to move the XBot in a single axis (any of the 6 axis).

singleaxis_2.png

Fieldbus Interface

PMC_SingleAxisMotion 

Inputs

Name

Data Type

Description

Execute

BOOL

cmdLB

UINT

XbotID

USINT

Mode

USINT

0: Absolute Position. 1: Relative Positioning

Priority

USINT

0: No priority. 1: high priority - the specified mover will move on its travel path before other movers. Other movers are not allowed to enter the travel path until the specified mover completes its motion

Axis ID

USINT

Pos

REAL

Target position (m or rad)

EndVel

REAL

Ending Speed  (m/s or rad/s), default = 0

MaxVel

REAL

Maximum Speed (m/s or rad/s), default = 1.0 m/s

MaxAcc

REAL

Maximum Acceleration (m/s2 or rad/s2), default = 10.0 m/s2 or 10.0 rad/s2

PM_Controller

PMControllerType

Outputs

Name

Data Type

Description

Ack

BOOL

Done

BOOL

Busy

BOOL

Aborted

BOOL

Error

BOOL

ErrorID

UINT

TravelTime

REAL

Traveling time (s)

Ethernet Interface 

MotionRtn LinearSingleAxisMotionSI(ushort cmdLabel, int xbotID, POSITIONMODE positionMode, AXISNAME axis, double targetPos, double finalSpeed, double maxSpeed, double maxAcceleration)

Parameters

Name

Type

Description

cmdLabel

ushort

xbotID

int


positionMode

enum

ABSOLUTE (0) = absolute positioning, RELATIVE(1) = relative positioning

axis

enum


targetPos

double

Target position, or relative increment, in meters or radians

finalSpeed

double

Final Speed  (m/s or rad/s)

maxSpeed

double

Max Speed (m/s or rad/s)

maxAcceleration

double

Max Acceleration (m/s2 or rad/s2)

Returns

Name

Type

Description

MotionRtn.PmcRtn

PMCRTN enum

MotionRtn.TravelTimeSecs

float

Time required to complete this command, in seconds

Conditions

Operating Conditions

Preconditions

Postconditions

Description

The single axis motion command can be used to move the XBot towards the target position in 1 axis, without the need to know the current position of the XBot in any other axis.

  • The target position can be specified either in absolute coordinates or relative coordinates. Relative coordinates are relative to the reference position of the XBot when the command begins execution

  • The maximum speed and acceleration must be specified. The input maximum speed and acceleration will be automatically adjusted if they are below or above the configured system limit settings

  • The desired ending speed must also be specified:

    • Ending speed = 0 means that the XBot will stop at the end target position

    • Ending speed > 0 can be used to connect multiple motion commands seamlessly (see below, functions the same way as XY Linear Motion)

Non_Zero_Ending_Speed.png

If the ending speed is non-zero but no motion command is available to be run by the XBot when it is done executing the initial linear motion command, the XBot will:

  • Begin decelerating to a complete stop after reaching the target position

  • Backtrack to the target position in the shortest time possible after stopping completely

  • Therefore, it may appear as though the XBot has overshot its target position. If the target position is located close to the flyway boundary and would cause the overshoot to exceed the flyway boundary, then the command will be rejected

If the ending speed is unachievable within the distance available between the starting and end positions, the PMC will automatically limit the ending speed to an achievable value.

Changelog

PMC v11687 - added Priority Input