Chapter 7 Application Programming 130 USER MANUAL
Arrays
For storing and collecting numerical data, the DMC-13X8 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 (231) 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

Assignment of Array Entries

Like variables, each array element can be assigned a value. Assigned values can be numbers or
returned values from instructions, functions and keywords.
Array elements are addressed starting at count 0. For example the first element in the POSX array
(defined with the DM command, DM POSX[7]) would be specified as POSX[0].
Values are assigned to array entries using the equal sign. Assignments are made one element at a time
by specifying the element number with the associated array name.
NOTE: Arrays must be defined using the command, DM, before assigning entry values.
Examples:
DM SPEED[10] Dimension Speed Array
SPEED[0]=7650.2 Assigns the first element of the array, SPEED the value 7650.2
SPEED[0]= Returns array element value
POSX[9]=_TPX Assigns the 10th element of the array POSX the returned value from the tell
position command.
CON[1]=@COS[POS]*2 Assigns the second element of the array CON the cosine of the variable POS
multiplied by 2.
TIMER[0]=TIME Assigns the first element of the array timer the returned value of the TIME
keyword.

Using a Variable to Address Array Elements

An array element number can also be a variable. This allows array entries to be assigned sequentially
using a counter.
For example:
#A Begin Program
COUNT=0;DM POS[10] Initialize counter and define array
#LOOP Begin loop
WT 10 Wait 10 msec