Special Operands (Keywords)
The DMC-1600 provides a few additional operands which give access to internal variables that are
not accessible by standard DMC-1600 commands.
KEYWORD FUNCTION
_BGn
*Returns a 1 if motion on axis ‘n’ is complete, otherwise returns 0.
_BN
*Returns serial # of the board.
_DA
*Returns the number of arrays available
_DL
*Returns the number of available labels for programming
_DM
*Returns the available array memory
_HMn
*Returns status of Home Switch (equals 0 or 1)
_LFn
Returns status of Forward Limit switch input of axis ‘n’ (equals 0 or 1)
_LRX
Returns status of Reverse Limit switch input of axis ‘n’ (equals 0 or 1)
_UL
*Returns the number of available variables
TIME
Free-Running Real Time Clock (off by 2.4% - Resets with power-on).
Note: TIME does not use an underscore character (_) as other keywords.
* - These keywords have corresponding commands while the keywords _LF, _LR, and TIME do
not have any associated commands. All keywords are listed in the Command Summary, Chapter
11.
Examples of Keywords:
V1=_LFX
Assign V1 the logical state of the Forward Limit Switch on the X-axis
V3=TIME
Assign V3 the current value of the time clock
V4=_HMW
Assign V4 the logical state of the Home input on the W-axis
Arrays
For storing and collecting numerical data, the DMC-1600 provides array space for 8000 elements.
The arrays are one dimensional and up to 30 different arrays may be defined. Each array element
has a numeric range of 4 bytes of integer (2
31
)followed by two bytes of fraction
(+/-2,147,483,647.9999).
Arrays can be used to capture real-time data, such as position, torque and analog input values. In
the contouring mode, arrays are convenient for holding the points of a position trajectory in a
record and playback application.
Defining Arrays
An array is defined with the command DM. The user must specify a name and the number of
entries to be held in the array. An array name can contain up to eight characters, starting with an
uppercase alphabetic character. The number of entries in the defined array is enclosed in [ ].
Example:
DM POSX[7]
Defines an array names POSX with seven entries
DM SPEED[100]
Defines an array named speed with 100 entries
DM POSX[0]
Frees array space
140
•
Chapter 7 Application Programming
DMC-1600