Moog Animatics has broken down the barrier between multiple integrated motors and introduced a simple command structure that allows any one SmartMotor™ to command linear Interpolated paths across multiple motors at once.

The Synchronized Motion command set opens the door to direct control without the need for any centralized processor.

The user may command Path Velocity, Acceleration, Deceleration and Target points in 3 Cartesian dimensions.

## Command Set

### Dual Axis Example: (Absolute Move)

```a=1 b=2             'Motor addresses, x and y
x=123000            'X Axis Target Position
y=20000             'Y Axis Target Position
VTS=100000          'set path velocity
ATS=1000            'set path acceleration
DTS=100             'set path deceleration
PTS(x;a,y;b)        'set 2-axis synchronized target position
GS                  'Go, 2-axis linear interpolation
TSWAIT              'Wait until 2 axis move is complete
``` ### Dual Axis Example: (Relative Move Syntax)

```PTRS(x;a,y;b)    'set 2-axis synchronized Relative Target position
```

### Three Axis XYZ Example

```a=1 b=2 c=3             'Motor addresses, x, y and z
x=123000                'X Axis Target Position
y=20000                 'Y Axis Target Position
z=8000                  'Z Axis Target Position
PTS(x;a,y;b, z;c)       'set 3-axis synchronized target position
GS                      'Go, 3-axis linear interpolation
TSWAIT                  'Wait until 3 axis move is complete
``` ### Four Axis X1, X2, Y, Z Example

```a=1 b=2 c=3              'Motor addresses, x, y and z
u=4                      'Motor address, x slave (parallel X axis)
x=123000                 'X Axis Target Position
y=20000                  'Y Axis Target Position
z=8000                   'Z Axis Target Position
PTS(x;a;u,y;b,z;c)       'set 4-axis including x slave
GS                       'Go, 3-axis +slave X axis
TSWAIT                   'Wait until all axis move is complete
``` ### Synchronized commands allow up to 3 pairs of motors for X, Y and Z for large parallel axis gantry systems with 2 motors per axis:

```PTS(x;a;u,y;b;v,z;c;z)          'set 6-axis including x slave, y slave, z slave
GS                              'Go, 3-axis primaries x, y, z, + slaves: u, v, and w
TSWAIT                          'Wait until all axis move is complete
```

### Supplemental Axis syntax allows for additional motors above and beyond that will start and stop and the exact same time as the main motors: These motors could be rotary axis, pumps, etc….

```PTS(x;a,y;b,z;c)          'set 3-axis X, Y, Z
PTSS(j,q)                 'set supplemental axis q to j absolute position
PRTSS(k,r)                'set supplemental axis r, k relative distance
GS                        'Go, all 5 motors
TSWAIT                    'Wait until all moves are complete
```