The chart below is a collection of all controller commands associated with the current Nippon Pulse products PMX and CMD families.  Similar commands used for the same function by different controller families are grouped together.  The black dots indicate the command is available on the listed controller family.


Function

Command Syntax

Available with:

ASCII

Standalone

CMD-4CR

PMX-4EX

PMX-4ET

PMX-2ED

PMX-2EX

Separator for comments in Standalone program code


;

●

●

●

●

●

Stop all axes immediately, buffer mode disabled

ABORT

ABORT

●

●

●

●

●

Stop an individual axis immediately, buffer mode disabled

ABORT[axis]

ABORT[axis]

●

●

●

●

●

Set absolute position coordinate mode

ABS

ABS

●

●

●

●

●

Read global acceleration time setting (ms)

ACC

ACC

●

●

●

●

●

Set global acceleration time setting (ms)

ACC=[value]

ACC=[value]

●

●

●

●

●

Read axis acceleration time setting (ms)

ACC[axis]

ACC[axis]

●

●

●

●

●

Set axis acceleration time setting (ms)

ACC[axis]=[value]

ACC[axis]=[value]

●

●

●

●

●

Read analog input status (mV)

AI[1-2]

AI[1-2]

●

●


●

●

Arc interpolation move CCW direction

ARC[A1][A2]N[C1]:[C2]:[Ɵ]


●





ARCN[X]:[Y]:[Ɵ]

ARCN[X]:[Y]:[Ɵ]


●

●



Arc interpolation move CW direction

ARC[A1][A2]P[C1]:[C2]:[Ɵ]


●





ARCN[X]:[Y]:[Ɵ]

ARCN[X]:[Y]:[Ɵ]


●

●



XY arc interpolation CCW with Z-axis linear interpolation move to target

ARCTN[C1]:[C2]:[Ɵ]:[target]

ARCTN[C1]:[C2]:[Ɵ]:[target]

●





XY arc interpolation CW with Z-axis linear interpolation move to target

ARCTP[C1]:[C2]:[Ɵ]:[target]

ARCTP[C1]:[C2]:[Ɵ]:[target]

●





Disable buffer mode

BF

BUFOFF

●

●

●



Enable buffer mode

BO

BUFON

●

●

●



Begin processing the buffer 

BSTART

ISTART

●





Buffer status

BSTAT


●





Circular interpolation in the CCW direction

CIR[A1][A2]N[C1]:[C2]


●





CIRN[X]:[Y]

CIRN[X]:[Y]


●

●



Circular Interpolation in the CCW Direction

CIR[A1][A2]P[C1]:[C2]


●





CIRP[X]:[Y]

CIRP[X]:[Y]


●

●



XY circular interpolation in the CCW direction with Z-axis linear interpolation move to target

CIRTN[C1]:[C2]:[target]

CIRTN[C1]:[C2]:[target]

●





XY circular interpolation in the CW direction with Z-axis linear interpolation move to target

CIRTP[C1]:[C2]:[target]

CIRTP[C1]:[C2]:[target]

●





Clear axis alarm, limits, or StepNLoop error

CLR[axis]

ECLEAR[axis]

●

●

●

●

●

Returns the StepNLoop deviation counter for the specified axis

D[axis]


●





DX[axis]



●

●

●

●

Read baud rate of controller

DB

DB

●

●


●

●

Set baud rate of controller

DB=[value]

DB=[value]

●

●


●

●

Read global deceleration time setting (ms)

DEC

DEC

●

●

●

●

●

Set global deceleration time setting (ms)

DEC=[value]

DEC=[value]

●

●

●

●

●

Read axis deceleration time setting (ms)

DEC[axis]

DEC[axis]

●

●

●

●

●

Set axis deceleration time setting (ms)

DEC[axis]=[value]

DEC[axis]=[value]

●

●

●

●

●

Set delay time (ms), delays time next operation starts


DELAY

●

●

●

●

●

Reads status of all general-purpose digital inputs

DI

DI

●

●

●

●

●

Reads status of specific general-purpose digital input

DI[1-8]

DI[1-8]

●

●

●

●

●

Reads the digital input polarity

DIP


●

●

●



Sets the digital input polarity

DIP=[pol]


●

●

●



Read device name or identification number

DN



●


●

●

ID


●





Set device name or identification number

DN=[value]



●


●

●

ID=[value]


●





Reads the status of all general-purpose digital outputs

DO

DO

●

●

●

●

●

Sets the status of all general-purpose digital outputs

DO=[value]

DO=[value]

●

●

●

●

●

Reads the status of a specific digital output

DO[1-8]

DO[1-8]

●

●

●

●

●

Sets the status of a specific digital output

DO[1-8]=[value]

DO[1-8]=[value]

●

●

●

●

●

Reads the configuration of all general purpose digital outputs on boot-up

DOBOOT


●

●

●

●

●

Sets the configuration of all general purpose digital outputs on boot-up

DOBOOT=[value]


●

●

●

●

●

Reads the digital output polarity

DOP


●

●

●



Sets the digital output polarity

DOP=[pol]


●

●

●



Returns the StepNLoop deviation counter for the specified axis

DX[axis]



●

●

●

●

Reads encoder value of specific axis

E[axis]

E[axis]

●

●

●

●

●

Sets the encoder value of a specific axis

E[axis]=[value]

E[axis]=[value]

●

●

●

●

●

Reads the unique deceleration status

EDEC



●

●

●

●

Enables/disables the unique deceleration status

EDEC=[0-1]



●

●

●

●

Reads the interpolation enable status

EINT


●





Enables/disables interpolation function

EINT=[value]


●





Reads enable status of all axes

EO

EO

●

●

●

●

●

Sets enable status of all axes

EO=[value]

EO=[value]

●

●

●

●

●

Reads enable status of specific axis

EO[no]

EO[no]

●

●

●

●

●

Sets enable status of specific axis

EO[no]=[value]

EO[no]=[value]

●

●

●

●

●

Reads boot-up enable status of all axes

EOBOOT


●

●

●

●

●

Sets enable status for all axes on boot-up

EOBOOT=[value]


●

●

●

●

●

Reads the enable output polarity

EOP



●

●



Sets the enable output polarity

EOP=[value]



●

●



Reads encoder values of all axis

EP


●





PE



●




Reads the enable status of the deflection counter clear output for a specific axis

ERC[axis]


●





Sets the enable status of the deflection counter clear output for a specific axis

ERC[axis]=[value]


●





Reads the pulse delay set value

ERCD


●





Sets the pulse delay value (2-bits)

ERCD=[value]


●





Reads the pulse width set value

ERCP


●





Sets the pulse width value (3-bits)

ERCP=[value]


●





Initiates emergency stop (same as triggering /CMEG)

ESTOP


●





Reads the status of the external start enable

EXST


●





Enables/disables the external start function

EXST=[value]


●





Initiates a defined subroutine (0 – 31)

GS[0-31]

GOSUB [0-31]

●

●

●

●

●

Homing operation

H[axis][+/-][mode]

HOME[axis][+/-][mode]

●

●

●

●


H[axis][+/-]

HOME[axis][+/-]


●

●

●

●

HL[axis][+/-]

HLHOME[axis][+/-]


●

●

●

●

L[axis][+/-]

LHOME[axis][+/-]


●

●

●

●

Z[axis][+/-]

ZOME[axis][+/-]


●

●

●


ZH[axis][+/-]

ZHOME[axis][+/-]


●

●

●


Reads global home correction amount

HCA





●

●

Sets global home correction amount value

HCA=[value]





●

●

Reads home correction amount for a specific axis

HCA[axis]





●

●

Sets home correction amount value for a specific axis

HCA[axis]=[value]





●

●

Read global high-speed setting

HSPD

HSPD

●



●

●

HS


●

●



Set global high-speed value

HSPD=[value]

HSPD=[value]

●



●

●

HS=[value]


●

●



Read high speed setting for a specific axis

HSPD[axis]

HSPD[axis]

●



●

●

HS[axis]


●

●



Set the high-speed setting for a specific axis

HSPD[axis]=[value]

HSPD[axis]=[value]

●



●

●

HS[axis]=[value]


●

●



Setting for buffered interpolation move

I[X target]:[Y target]:[Z target]:[speed]


●

●

●



XY Linear interpolated move

I[X target]:[Y target]





●

●

Read automatic acceleration setting for buffered interpolated moves

IACC



●

●



Set the automatic acceleration setting used for buffered interpolated moves

IACC=[0-1]



●

●



Read controller ID

ID


●



●

●

Set controller ID

ID=[value]


●





Read the ignore limit/alarm status

IERR


●

●

●

●

●

Set the ignore limit/alarm status

IERR=[1-0]


●

●

●

●

●

Conditional loop commands of IF loops in standalone program


IF, ELSEIF, ELSE
ENDIF

●

●

●

●

●

Set incremental coordinate mode

INC

INC

●

●

●

●

●

Read enable/disable status of positioning complete signal for [axis]

INP[axis]


●





Set enable/disable status of positioning complete signal for [axis]

INP[axis]=[value]


●





Read the status of all configurable I/O ports (32-bit)

IO


●





Set the bit status for all configurable outputs

IO=[value]


●





Read the status of the configurable I/O at [port]

IO[port]


●





Set the value of the configurable output bit at [port]

IO[port]=[0-1]


●





Read the status of all general-purpose I/O at startup (32-bit)

IOBOOT


●





Set the value of all configurable outputs at startup

IOBOOT=[value]


●





Read the current configuration of all configurable I/O ports

IOCFG


●





Set the configuration of all configurable I/O ports

IOCFG=[value]


●





Read the configurable I/O polarity setting (2-bit logic)

IOP


●





Set the configurable I/O polarity (2-bit logic)

IOP=[0-1]


●





Read the device IP address

IP




●



Set the device IP address

IP=[value]




●



Jog [axis] in the positive (+) or negative (-) direction

J[axis][+/-]

JOG[axis][+/-]

●

●

●

●

●

Read the allowable speed change for joystick control on [axis]

JDEL[axis]

JOYDEL[axis]

●





Set the allowable speed change for joystick control on [axis]

JDEL[axis]=[value]

JOYDEL[axis]=[value]

●





Read joystick control enable configuration

JENA

JOYENA

●





JE


●




JF





●

●

JO





●

●

Set joystick control enable configuration setting

JENA=[value]

JOYENA=[value]

●





JE=[value]



●




Read the limit setting for joystick control

JLIM[number]


●





JL[number]



●


●

●

Set the limit configuration for joystick control

JLIM[number]=[value]


●





JL[number]=[value]



●


●

●

Read the maximum voltage setting for joystick operation for [axis]

JMAX[axis]


●

●




Set the maximum voltage setting for joystick operation for [axis]

JMAX[axis]=[value]


●

●




Read the minimum voltage setting for joystick operation for [axis]

JMIN[axis]


●

●




Set the minimum voltage setting for joystick operation for [axis]

JMIN[axis]=[value]


●

●




Read the maximum speed setting for joystick operation for [axis]

JSPD[axis]

JOYHS[axis]

●





Set the maximum speed value for joystick operation for [axis]

JSPD[axis]=[value]

JOYHS[axis]=[value]

●





Read the dead band tolerance around mid-voltage range for [axis]

JTOL[axis]


●





Set the dead band tolerance around mid-voltage range for [axis]

JTOL[value]


●





Read the joystick speed, delta, and tolerance configuration assignments 

JV[number]

JOYHS[axis]
JOYDEL[axis]


●


●

●

Set the joystick speed, delta, and tolerance configuration assignments 

JV[number]=[value]

JOYHS[axis]=[value]
JOYDEL[axis]=[value]


●


●

●

Homing using the limit inputs in the [+] or [-] direction

L[axis][+/-]

LHOME[axis][+/-]




●

●

Read the global limit correction amount value

LCA





●

●

Set the global limit correction value

LCA=[value]





●

●

Read the limit correction value for [axis]

LCA[axis]





●

●

Set the limit correction value for [axis]

LCA[axis]=[value]





●

●

Read the global low speed parameter

LSPD

LSPD

●



●

●

LS


●

●



Set the global low speed parameter

LSPD=[value]

LSPD=[value]

●



●

●

LS=[value]


●

●



Read the l low speed parameter for [axis]

LSPD[axis]

LSPD[axis]

●



●

●

LS[axis]


●

●



Set the low speed parameter for [axis]

LSPD[axis]=[value]

LSPD[axis]=[value]

●



●

●

LS[axis]=[value]


●

●



Set the enable/disable for the latch function for [axis]

LT[axis]=[value]


●

●




Read the previously latched encoder position value for [axis]

LTE[axis]


●





LT[axis]E



●

●



Read the previously latched step position value for [axis]

LTP[axis]


●





LT[axis]P



●

●



Read the current latch status for [axis]

LTS[axis]


●





LT[axis]S



●

●



Read the current position coordinate mode setting

MM


●


●

●

●

Read the current manual pulse generator position for [axis]

MP[axis]


●





Set the manual pulse generator position value for [axis]

MP[axis]=[value]


●





Read the current divider parameter of the manual pulse generator for [axis]

MPD[axis]

MPGD[axis]

●





Set the current divider parameter of the manual pulse generator for [axis]

MPD{axis]=[value]

MPDG[axis]=[value]

●





Read the manual pulse generator enable status for [axis]

MPE[axis]


●





Enable/disable the manual pulse generator for [axis]

MPE[axis]=[value]


●





Read the current multiplier parameter of the manual pulse generator for [axis]

MPM[axis]

MPGM[axis]

●





Set the multiplier parameter value of the manual pulse generator for [axis]

MPM[axis]=[value]

MPGM[axis]=[value]

●





Read all motor status, buffer move status, and move mode status for [axis]

MST[axis]

MST[axis]

●

●

●

●

●

Read the current position value for [axis]

P[axis]

P[axis]

●

●

●

●

●

Set the current position value for [axis]

P[axis]=[value]

P[axis]=[value]

●

●

●

●

●

Reads encoder values of all axis

PE 



●

●



EP


●





Read the polarity parameter for specified [axis]

POL[axis]


●



●

●

PO[axis]



●

●



Set the polarity parameter for specified [axis]

POL[axis]=[value]


●



●

●

PO[axis]=[value]



●

●



Read the pulse counter for all 4 axes

PP


●

●

●



Standalone program beginning and ending lines.  All program code must be between PRG [0-3} and END


PRG [0-3]
END

●

●

●

●

●

Read current pulse speed for [axis]

PS[axis]

PSX

●

●

●

●

●

Returns current PWM duty cycle in %

PWM[1-2]


●





Set the current PWN duty cycle in %

PWM[1-2]=[value]


●





Read the value of a specific [reg] for [axis]

REGRD[axis]Ox[reg]


●





Write a value to a specific [reg] for [axis]

REGWR[axis]Ox[reg]=[value]


●





Read the return to zero enable status used during homing

RZ





●

●

Set the return to zero enable status used during homing

RZ=[value]





●

●

Read the specified standalone [line]

SA[line]



●

●

●

●

Set the [value] of the specified standalone [line]

SA[line]=[value]



●

●

●

●

Controls the standalone [prgNo], stop(0), start(1), pause(2), and continue(3)

SACTRL[prgNo]=[0-3]


●





SR[prgNo]=[value]

SR[prgNo]=[value]


●

●

●

●

Read the return jump line for standalone program error handling

SAP


●

●

●



Set the return jump line for standalone program error handling

SAP[0-1]


●

●

●



Read standalone program operation status

SASTAT[0-3]


●

●

●

●

●

Read S-curve acceleration status for [axis]

SCV[axis]

SCV[axis]

●

●

●

●

●

Set S-curve acceleration for [axis] Trapezoidal acceleration used if S-curve disabled.

SCV[axis]=[0-1]


●





SCVX=[0-1]

SCVX=[0-1]


●

●

●

●

Read slow down signal operation status for [axis]

SDC[axis]


●





Set the configuration for slow down signal operation for [axis] (decel only, or decel and stop)

SDC[axis]=[value]


●





Read status of slow down operation for axis

SDE[axis]


●





Enable/disable slow down operation for [axis]

SDE[axis]=[value]


●





Read enable status for StepNLoop operation for [axis]

SL[axis]

SL[axis]

●

●

●

●

●

Enable/disable StepNLoop operation for [axis]

SL[axis]=[value]

SL[axis]=[value]

●

●

●

●

●

Read maximum number of attempts to complete a StepNLoop operation for [axis]

SLA[axis]


●

●

●

●

●

Set number of attempts allowed to complete a StepNLoop operation for [axis]

SLA[axis]=[value]


●

●

●

●

●

Read error range for StepNLoop operation for [axis]

SLE[axis]


●

●

●

●

●

Set error range for StepNLoop operation

SLE[axis]=[value]


●

●

●

●

●

Read StepNLoop ratio for [axis] (ppr/cpr)

SLR[axis]


●

●

●

●

●

Set StepNLoop ratio for [axis] (ppr/cpr)

SLR[axis]=[value]


●

●

●

●

●

Read StepNLoop status for [axis]

SLS[axis]

SLS[axis]

●

●

●

●

●

Read tolerance setting for StepNLoop operation for [axis]

SLT[axis]


●

●

●

●

●

Set the tolerance value for StepNLoop operation for [axis]

SLT[axis]=[value]


●

●

●

●

●

Read the run on power-up status for [prgNo]

SLOAD[pgNo]


●

●

●

●

●

Set the run on power-up status for [prgNo]

SLOAD[prgNo]=[value]


●

●

●

●

●

Read current program counter for [prgNo]

SPC[prgNo]


●

●

●

●

●

Controls the standalone [prgNo], stop(0), start(1), pause(2), and continue(3)

SR[prgNo]=[value]

SR[prgNo]=[value]


●

●

●

●

SACTRL[prgNo]=[0-3]


●





Initiates on-the-fly speed change for [axis], buffer must be disabled

SSPD[axis]=[value]

SSPD[axis]=[value]

●

●

●

●

●

Read the current on-the-fly speed range mode for [axis]

SSPDM[axis]

SSPDM[axis]

●

●

●

●

●

Set the on-the-fly speed range for [axis]

SSPDM[axis]=[value]

SSPDM[axis]=[value]

●

●

●

●

●

Initiates a ramp down to low speed and stop for all axes

STOP

STOP

●

●

●

●

●

Initiates a ramp down to low speed and stop for [axis]

STOP[axis]

STOP[axis]

●

●

●

●

●

Saves parameters to flash memory

STORE


●

●

●

●

●

Standalone program sub routine start and end line


SUB [0-31]
ENDSUB

●

●

●

●

●

Read sync condition and source for [axis]

SYNC[axis]

SYNCFG[axis]

●





SYN[axis]C


●

●



Set sync condition and source for [axis]

SYNC[axis]=[value]


●





SYN[axis]C=[1-3]



●

●



Disable sync window and sync output for [axis]

SYNF[axis]

SYNOFF[axis]

●





SYN[axis]F


●

●



Read maximum value of the sync pulse window for [axis]

SYNMAX[axis]


●





Set maximum value of the sync pulse window for [axis]

SYNMAX[axis]=[value]


●





Read minimum value of the sync pulse window for [axis]

SYNMIN[axis]


●





Set minimum value of the sync pulse window for [axis]

SYNMIN[axis]=[value]


●





Enable synchronization output for [axis]

SYNO[axis]

SYNON[axis]

●





SYN[axis]O


●

●



Read synchronization position value or distance between pulses for continuous sync for [axis]

SYNP[axis]

SYNPOS[axis]

●





SYN[axis]P


●

●



Set synchronization position value or distance between pulses for continuous sync for [axis]

SYNP[axis]=[value]


●





SYN[axis]P=[value]



●

●



Read status of synchronization operation for [axis]

SYNS[axis]

SYNSTAT[axis]

●





Read sync output pulse width time(ms) for [axis]. Only applicable if sync output configuration is set to 1

SYN[axis]T

SYNTIME[axis]


●

●



Set sync output pulse width time(ms) for [axis]. Only applicable if sync output configuration is set to 1.

SYN[axis]T=[value]



●

●



Disable the synchronization window for [axis]

SYNWF[axis]


●





Enable the synchronization window for [axis]

SYNWO[axis]


●





Initiates on-the-fly target position change for [axis]

T[axis][value]


●

●

●

●

●

Read the communication time out parameter in ms

TOC

TOC


●

●

●

●

Set the communication time out parameter in ms

TOC=[value]

TOC=[value]


●

●

●

●

Read the timer register value in ms

TR



●

●



Set the timer register value in ms

TR=[value]



●

●



Read standalone variable [no]

V[no]

V[no]

●

●

●

●

●

Set standalone variable [no] to [value]

V[no]=[value]

V[no]=[value]

●

●

●

●

●

Read the controller firmware version

VER


●

●

●

●

●

Sets [axis] to wait until the current move is complete before executing the next line of code.


WAIT[axis]

●

●

●

●

●

Conditional statements used in program loops


WHILE
ENDWHILE

●

●

●

●

●

Perform individual motion in X and /or Y axis

X[target X]
Y[target Y]





●

●

Perform linear interpolation motion with X and Y axes

X[target X]Y[target Y]





●

●

Perform individual motion in X, Y, Z, and/or U axes

X[target X]
Y[target Y]
Z[target Z]
U[target U]

X[target X]
Y[target Y]
Z[target Z]
U[target U]

●

●

●



Perform linear interpolation motion with X, Y, Z, and/or U axes.  Include all axes that will be interpolated. EINT must be enabled (1)

X[targetX]Y[targetY]Z[targetZ]U[targetU]


●





Perform homing function for [axis] in the positive [+] or negative [-] direction using the Z-index pulse only

Z[axis][+/-]

ZOME[axis][+/-]




●

●

Read number of Z-index pulse to count for [axis]

ZCNT[axis]


●





Set number of Z-index pulse to count for [axis]

ZCNT[axis]=[value]


●





Perform homing function for [axis] in the positive [+] or negative [-] direction using the home and Z-index pulse.

ZH[axis][+/-]

ZHOME[axis][+/-]




●

●

Perform the EZ count operation for [axis] in the positive [+] or negative [-] direction

ZMOVE[axis][+/-]


●



●