Galil DMC-1800 Home Security System User Manual


 
DMC-1700/1800 Chapter 7 Application Programming • 157
Examples of Internal Variables:
POSX=_TPX Assigns value from Tell Position X to the variable POSX.
GAIN=_GNZ*2 Assigns value from GNZ multiplied by two to variable, GAIN.
JP #LOOP,_TEX>5 Jump to #LOOP if the position error of X is greater than 5
JP #ERROR,_TC=1 Jump to #ERROR if the error code equals 1.
Operands can be used in an expression and assigned to a programmable variable, but they cannot be assigned a
value. For example: _GNX=2 is invalid.
Special Operands (Keywords)
The DMC-1700/1800 provides a few additional operands which give access to internal variables that are not
accessible by standard DMC-1700/1800 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-1700/1800 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: