Galil DMC-1000 series Command Reference Manual

Manual is about: Motion Control

Summary of DMC-1000 series

  • Page 1

    Dmc-1000, dmc-1500 command reference manual rev. 1.0g by galil motion control, inc. Galil motion control, inc. 270 technology way rocklin, california 95765 phone: (916) 626-0101 fax: (916) 626-0102 internet address: support@galilmc.Com url: www.Galilmc.Com rev 6/06.

  • Page 3: Overview

    Dmc-1000/1500 command reference overview • 1 overview controller notation this command reference is a supplement to galil motion control user manual. For proper controller operation, consult the users manual. This manual describes commands to be used with the following galil motion controllers: dmc-...

  • Page 4: Command Descriptions

    2 • overview dmc-1000/1500 command reference attention: pertains to servo motor use. Attention: pertains to stepper motor use. Command descriptions each executable instruction is listed in the following section in alphabetical order. Below is a description of the information which is provided for ea...

  • Page 5

    Dmc-1000/1500 command reference overview • 3 direct command arguments an alternative method for specifying data is to set data for individual axes using an axis designator followed by an equals sign. The * symbol defines data for all axes to be the same. For example: pry=1000 sets y axis data at 100...

  • Page 6

    4 • overview dmc-1000/1500 command reference when a master reset occurs, the controller will always reset all setup parameters to their default values and the non-volatile memory is cleared to the factory state. A master reset is executed by the command, or by powering up or resetting the controller...

  • Page 7

    Dmc-100/1500 command reference ab • 5 dmc-1000 dmc-1500 ab function: abort description: ab (abort) stops a motion instantly without a controlled deceleration. If there is a program operating, ab also aborts the program unless a 1 argument is specified. The command ab will shut off the motors for any...

  • Page 8

    6 • ac dmc-1000/1500 command reference dmc-1000 dmc-1500 ac function: acceleration description: the acceleration (ac) command sets the linear acceleration rate of the motors for independent moves, such as pr, pa and jg. The parameters input will be rounded down to the nearest factor of 1024. The uni...

  • Page 9

    Dmc-100/1500 command reference ad • 7 dmc-1000 dmc-1500 ad function: after distance description: the after distance (ad) command is a trippoint used to control the timing of events. This command will hold up the execution of the following command until one of the following conditions have been met: ...

  • Page 10

    8 • ad dmc-1000/1500 command reference hint: the ad command is accurate to the number of counts that occur in 2 msec. Multiply your speed by 2 msec to obtain the maximum position error in counts. Remember ad measures incremental distance from the start of a move on one axis..

  • Page 11

    Dmc-100/1500 command reference af • 9 dmc-1500 af function: analog feedback description:: the analog feedback (af) command is used to set an axis with analog instead of digital feedback (quadrature or pulse & dir). As the analog feedback is decoded by a 12-bit a/d converter, an input voltage of 10 v...

  • Page 12

    10 • ai dmc-1000/1500 command reference dmc-1000 dmc-1500 ai function: after input description: the ai command is used in motion programs to wait until the specified input has occurred. If n is positive, it waits for the input to go high. If n is negative, it waits for n to go low. Arguments: ai +/-...

  • Page 13

    Dmc-100/1500 command reference al • 11 dmc-1000 dmc-1500 al function: arm latch description: the al command enables the latching function of the controller. When the position latch is armed, the main or auxiliary encoder position will be captured upon a low going signal. Each axis has a position lat...

  • Page 14

    12 • am dmc-1000/1500 command reference dmc-1000 dmc-1500 am function: after move description: the am command is a trippoint used to control the timing of events. This command will hold up execution of the following commands until the current move on the specified axis or axes is completed. Any comb...

  • Page 15

    Dmc-100/1500 command reference ap • 13 dmc-1000 dmc-1500 ap function: after absolute position description: the after position (ap) command is a trippoint used to control the timing of events. This command will hold up the execution of the following command until one of the following conditions have ...

  • Page 16

    14 • ar dmc-1000/1500 command reference dmc-1000 dmc-1500 ar function: after relative distance description: the after relative (ar) command is a trippoint used to control the timing of events. This command will hold up the execution of the following command until one of the following conditions have...

  • Page 17

    Dmc-100/1500 command reference as • 15 dmc-1000 dmc-1500 as function: at speed description: the as command is a trippoint that occurs when the generated motion profile has reached the specified speed. This command will hold up execution of the following command until the speed is reached. The as com...

  • Page 18

    16 • at dmc-1000/1500 command reference dmc-1000 dmc-1500 at function: at time description: the at command is a trippoint which is used to hold up execution of the next command until after the specified time has elapsed. The time is measured with respect to a defined reference time. At 0 establishes...

  • Page 19

    Dmc-100/1500 command reference av • 17 dmc-1000 dmc-1500 av function: after vector distance description: the av command is a trippoint which is used to hold up execution of the next command during coordinated moves such as vp,cr or li. This trippoint occurs when the path distance of a sequence reach...

  • Page 20

    18 • bg dmc-1000/1500 command reference dmc-1000 dmc-1500 bg function: begin description: the bg command starts a motion on the specified axis or sequence. Arguments: bg xyzws bg abcdefgh where xyzw are x,y,z,w axes and s is coordinated sequence usage: defaults: while moving yes default value 0 in a...

  • Page 21

    Dmc-100/1500 command reference bl • 19 dmc-1000 dmc-1500 bl function: reverse software limit description: the bl command sets the reverse software limit. If this limit is exceeding during motion, motion on that axis will decelerate to a stop. Reverse motion beyond this limit is not permitted. The re...

  • Page 22

    20 • bn dmc-1000/1500 command reference dmc-1000 dmc-1500 bn function: burn description: the bn command saves the controller parameters shown below in flash eeprom memory. This command typically takes 1 second to execute and must not be interrupted. The controller returns a : when the burn is comple...

  • Page 23

    Dmc-100/1500 command reference bp • 21 dmc-1500 bp function: burn program description:: the bp command saves the application program in non-volatile eeprom memory. This command typically takes up to 10 seconds to execute and must not be interrupted. The controller returns a : when the burn is comple...

  • Page 24

    22 • bv dmc-1000/1500 command reference bv dmc-1500 function: burn variables description:: the bv command saves the controller variables in non-volatile eeprom memory. This command typically takes up to 2 seconds to execute and must not be interrupted. The controller returns a : when the burn is com...

  • Page 25

    Dmc-100/1500 command reference cb • 23 dmc-1000 dmc-1500 cb function: clear bit description: the cb command sets the specified output bit low. Cb can be used to clear the outputs of extended i/o which have been configured as outputs. Arguments: cb n, where n is an integer corresponding to the output...

  • Page 26

    24 • cc dmc-1000/1500 command reference dmc-1500 cc function: configure communications port 2 description: the cc command configures baud rate, handshake, mode, and echo for the aux serial port, referred to as port 2. This command must be given before using the mg, in, or ci commands with port 2. Ar...

  • Page 27

    Dmc-100/1500 command reference cd • 25 dmc-1000 dmc-1500 cd function: contour data description: the cd command specifies the incremental position on x,y,z and w axes. The units of the command are in quadrature counts. This command is used only in the contour mode (cm). Arguments: cd x,y,z,w cdx=x cd...

  • Page 28

    26 • ce dmc-1000/1500 command reference dmc-1000 dmc-1500 ce function: configure encoder description: the ce command configures the encoder to the quadrature type or the pulse and direction type. It also allows inverting the polarity of the encoders. The configuration applies independently to the fo...

  • Page 29

    Dmc-100/1500 command reference ci • 27 dmc-1500 ci function: communication interrupt description: the ci command configures a program interrupt based on characters received on either port 1, the main serial port, or port 2, the aux serial port. An interrupt causes program flow to jump to the #comint...

  • Page 30

    28 • cm dmc-1000/1500 command reference dmc-1000 dmc-1500 cm function: contouring mode description: the contour mode is initiated by the instruction cm. This mode allows the generation of an arbitrary motion trajectory with any of the axes. The cd command specified the position increment, and the dt...

  • Page 31

    Dmc-100/1500 command reference cn • 29 dmc-1000 dmc-1500 cn function: configure description: the cn command configures the polarity of the limit switches, the home switch and the latch input. Arguments: cn m,n,o where m,n,o are integers with values 1 or -1. M = 1 limit switches active high -1 limit ...

  • Page 32

    30 • co dmc-1000/1500 command reference dmc-1000 dmc-1500 co function: configure outputs description: the co command configures the extended i/o on the db-10072 of the dmc-1000 series controller, the db-15072 of the dmc-1500 series controller. For the dmc-1000: the first 48 i/o points of the db-1007...

  • Page 33

    Dmc-100/1500 command reference cr • 31 dmc-1000 dmc-1500 cr function: circle description: the cr command specifies a 2-dimensional arc segment of radius, r, starting at angle, θ, and traversing over angle Δθ. A positive Δθ denotes counterclockwise traverse, negative Δθ denotes clockwise. The ve comm...

  • Page 34

    32 • cr dmc-1000/1500 command reference cr 1000,0,360 generate circle with radius of 1000 counts, start at 0 degrees and complete one circle in counterclockwise direction and use a vector speed of 40000. Ve end sequence bgs start motion.

  • Page 35

    Dmc-100/1500 command reference cs • 33 dmc-1000 dmc-1500 cs function: clear sequence description: the cs command will remove vp, cr or li commands stored in a motion sequence. Note, after a sequence has been run, the cs command is not necessary to put in a new sequence. This command is useful when y...

  • Page 36

    34 • cw dmc-1000/1500 command reference dmc-1000 dmc-1500 cw function: copyright information / data adjustment bit on/off description: the cw command has a dual usage. The cw command will return the copyright information when the argument, n is 0. Otherwise, the cw command is used as a communication...

  • Page 37

    Dmc-100/1500 command reference da • 35 dmc-1000 dmc-1500 da function: deallocate the variables & arrays description: the da command frees the array and/or variable memory space. In this command, more than one array or variable can be specified for deallocation of memories. Different arrays and varia...

  • Page 38

    36 • dc dmc-1000/1500 command reference dmc-1000 dmc-1500 dc function: deceleration description: the deceleration command (dc) sets the linear deceleration rate of the motors for independent moves such as pr, pa and jg moves. The parameters will be rounded down to the nearest factor of 1024 and have...

  • Page 39

    Dmc-100/1500 command reference de • 37 dmc-1000 dmc-1500 de function: dual (auxiliary) encoder position description: the de x,y,z,w command defines the position of the auxiliary encoders. The auxiliary encoders may be used for dual-loop applications. The de command defines the encoder position when ...

  • Page 40

    38 • dl dmc-1000/1500 command reference dmc-1000 dmc-1500 dl function: download description: the dl command transfers a data file from the host computer to the controller. Instructions in the file will be accepted as a datastream without line numbers. The file is terminated using z, q, d, or \. Do n...

  • Page 41

    Dmc-100/1500 command reference dm • 39 dmc-1000 dmc-1500 dm function: dimension description: the dm command defines a single dimensional array with a name and n total elements. The first element of the defined array starts with element number 0 and the last element is at n-1. Arguments: dm c[n] wher...

  • Page 42

    40 • dp dmc-1000/1500 command reference dmc-1000 dmc-1500 dp function: define position description: the dp command sets the current motor position and current command positions to a user specified value. The units are in quadrature counts. This command will set both the tp and rp values. The dp comm...

  • Page 43

    Dmc-100/1500 command reference dt • 41 dmc-1000 dmc-1500 dt function: delta time description: the dt command sets the time interval for contouring mode. Sending the dt command once will set the time interval for all following contour data until a new dt command is sent. 2n milliseconds is the time i...

  • Page 44

    42 • dv dmc-1000/1500 command reference dmc-1000 dmc-1500 dv function: dual velocity (dual loop) description: the dv function changes the operation of the filter. It causes the kd (derivative) term to operate on the dual encoder instead of the main encoder. This results in improved stability in the ...

  • Page 45

    Dmc-100/1500 command reference ea • 43 dmc-1000 dmc-1500 ea function: choose ecam master description: the ea command selects the master axis for the electronic cam mode. Any axis may be chosen. Arguments: ea p where p is xyzw or efgh usage: defaults: while moving yes default value in a program yes d...

  • Page 46

    44 • eb dmc-1000/1500 command reference dmc-1000 dmc-1500 eb function: enable ecam description: the eb function enables or disables the cam mode. In this mode, the starting position of the master axis is specified within the cycle. When the eb command is given, the master axis is modularized. Argume...

  • Page 47

    Dmc-100/1500 command reference ed • 45 dmc-1000 dmc-1500 ed function: edit description: using galil dos terminal software: the ed command puts the controller into the edit subsystem. In the edit subsystem, programs can be created, changed, or destroyed. The commands in the edit subsystem are: d dele...

  • Page 48

    46 • eg dmc-1000/1500 command reference dmc-1000 dmc-1500 eg function: ecam go (engage) description: the eg command engages an ecam slave axis at a specified position of the master. If a value is specified outside of the master’s range, the slave will engage immediately. Once a slave motor is engage...

  • Page 49

    Dmc-100/1500 command reference ei • 47 dmc-1000 ei function: enable interrupts description: the ei command enables interrupt conditions such as motion complete or excess error. The conditions are selected by the parameter m where m is the bit mask for the selected conditions as shown below. Prior to...

  • Page 50

    48 • dmc-1000/1500 command reference related commands: ui user interrupt examples: 1. Specify interrupts for all axes motion complete and limit switch. Enable bits 8 and 10. M = 28 + 210 = 256 + 1024 = 1280 ei 1280 2. Specify interrupt on input 3. Enable bit 15 on m and bit 2 on n. M = 215 = 32768 n...

  • Page 51

    Dmc-100/1500 command reference em • 49 dmc-1000 dmc-1500 em function: cam cycles description: the em command is part of the ecam mode. It is used to define the change in position over one complete cycle of the master. The field for the master axis is the cycle of the master position. For the slaves,...

  • Page 52

    50 • en dmc-1000/1500 command reference dmc-1000 dmc-1500 en function: end description: the en command is used to designate the end of a program or subroutine. If a subroutine was called by the js command, the en command ends the subroutine and returns program flow to the point just after the js com...

  • Page 53

    Dmc-100/1500 command reference en • 51 examples: #a program a pr 500 move x axis forward 500 counts bgx pause the program until the x axis completes the motion amx move x axis forward 1000 counts pr 1000 set another position relative move bgx begin motion en end of program note: instead of en, use t...

  • Page 54

    52 • eo dmc-1000/1500 command reference dmc-1000 dmc-1500 eo function: echo description: the eo command turns the echo on or off. If the echo is off, characters input over the bus will not be echoed back. Arguments: eo n where n=0 or 1. 0 turns echo off, 1 turns echo on. Usage: defaults: while movin...

  • Page 55

    Dmc-100/1500 command reference ep • 53 dmc-1000 dmc-1500 ep function: cam table master interval and phase shift description: the ep command defines the ecam table master interval and phase shift. The interval m is the difference in master position between table entries. The phase shift n instantaneo...

  • Page 56

    54 • eq dmc-1000/1500 command reference dmc-1000 dmc-1500 eq function: ecam quit (disengage) description: the eq command disengages an electronic cam slave axis at the specified master position. Separate points can be specified for each axis. If a value is specified outside of the master’s range, th...

  • Page 57

    Dmc-100/1500 command reference er • 55 dmc-1000 dmc-1500 er function: error limit description: the er command sets the magnitude of the x,y,z and w-axis position errors that will trigger an error condition. When the limit is exceeded, the error output will go low (true). If the off on error (oe1) co...

  • Page 58

    56 • es dmc-1000/1500 command reference dmc-1000 dmc-1500 es function: ellipse scale description: the es command divides the resolution of one of the axes in a vector mode. This allows the generation of an ellipse instead of a circle. The command has two parameters, m and n, (es m,n), and it applies...

  • Page 59

    Dmc-100/1500 command reference et • 57 dmc-1000 dmc-1500 et function: electronic cam table description: the et command sets the ecam table entries for the slave axes.. The values of the master axes are not required. The slave entry (n) is the position of the slave axes when the master is at the poin...

  • Page 60

    58 • fa dmc-1000/1500 command reference dmc-1000 dmc-1500 fa function: acceleration feedforward description: the fa command sets the acceleration feedforward coefficient, or returns the previously set value. This coefficient, when scaled by the acceleration, adds a torque bias voltage during the acc...

  • Page 61

    Dmc-100/1500 command reference fe • 59 dmc-1000 dmc-1500 fe function: find edge description: the fe command moves a motor until a transition is seen on the homing input for that axis. The direction of motion depends on the initial state of the homing input (use the cn command to configure the polari...

  • Page 62

    60 • fi dmc-1000/1500 command reference dmc-1000 dmc-1500 fi function: find index description: the fi and bg commands move the motor until an encoder index pulse is detected. The controller looks for a transition from low to high. When the transition is detected, motion stops and the position is def...

  • Page 63

    Dmc-100/1500 command reference fl • 61 dmc-1000 dmc-1500 fl function: forward software limit description: the fl command sets the forward software position limit. If this limit is exceeded during motion, motion on that axis will decelerate to a stop. Forward motion beyond this limit is not permitted...

  • Page 64

    62 • fv dmc-1000/1500 command reference dmc-1000 dmc-1500 fv function: velocity feedforward description: the fv command sets the velocity feedforward coefficient, or returns the previously set value. This coefficient, generates an output bias signal in proportions to the commanded velocity. Velocity...

  • Page 65

    Dmc-100/1500 command reference ga • 63 dmc-1000 dmc-1500 ga function: master axis for gearing description: the ga command specifies the master axis for electronic gearing. Only one master may be specified. The master may be the main encoder input, auxiliary encoder input, or the commanded position o...

  • Page 66

    64 • gn dmc-1000/1500 command reference dmc-1000 dmc-1500 gn function: gain description: the gn command sets the gain of the control loop or returns the previously set value. It fits in the z-transform control equation as follows: d(z) = gn(z-zr)/z arguments: gn x,y,z,w gnx=x gn a,b,c,d,e,f,g,h wher...

  • Page 67

    Dmc-100/1500 command reference gr • 65 dmc-1000 dmc-1500 gr function: gear ratio description: gr specifies the gear ratios for the geared axes in the electronic gearing mode. The master axis is defined by the gax or gay or gaz or gaw command. The gear ratio may be different for each geared axis and ...

  • Page 68

    66 • hm dmc-1000/1500 command reference dmc-1000 dmc-1500 hm function: home description: the hm command performs a three-stage homing sequence for servo systems and two stage sequence for stepper motor operation. For servo motor operation: the first stage consists of the motor moving at the user pro...

  • Page 69

    Dmc-100/1500 command reference hx • 67 dmc-1000 dmc-1500 hx function: halt execution description: the hx command halts the execution of any of the four programs that may be running independently in multitasking. The parameter n specifies the program to be halted. Arguments: hxn where n is an integer...

  • Page 70

    68 • ii dmc-1000/1500 command reference dmc-1000 dmc-1500 ii function: input interrupt description: the ii command enables the interrupt function for the specified inputs. M specifies the beginning input and n specifies the final input in the range. For example, ii 2,4 specifies interrupts occurring...

  • Page 71

    Dmc-100/1500 command reference ii • 69 bgx begin motion ri0 return to main program, don't re-enable trippoints.

  • Page 72

    70 • il dmc-1000/1500 command reference dmc-1000 dmc-1500 il function: integrator limit description: the il command limits the effect of the integrator function in the filter to a certain voltage. For example, il 2 limits the output of the integrator of the x-axis to the +/-2 volt range. A negative ...

  • Page 73

    Dmc-100/1500 command reference in • 71 dmc-1000 dmc-1500 in function: input variable description: the in command allows a variable to be input from a keyboard. When the in command is executed in a program, the prompt message is displayed. The operator then enters the variable value followed by a car...

  • Page 74

    72 • ip dmc-1000/1500 command reference dmc-1000 dmc-1500 ip function: increment position description: the ip command allows for a change in the command position while the motor is moving. This command does not require a bg. The command has three effects depending on the motion being executed. The u...

  • Page 75

    Dmc-100/1500 command reference it • 73 dmc-1000 dmc-1500 it function: independent time constant - smoothing function description: the it command filters the acceleration and deceleration functions in independent moves of jg, pr, pa type to produce a smooth velocity profile. The resulting profile, kn...

  • Page 76

    74 • jg dmc-1000/1500 command reference dmc-1000 dmc-1500 jg function: jog description: the jg command sets the jog mode. The parameters following the jg set the slew speed of the axes. Use of the question mark returns the previously entered value or default value. The units of this are counts/secon...

  • Page 77

    Dmc-100/1500 command reference jp • 75 dmc-1000 dmc-1500 jp function: jump to program location description: the jp command causes a jump to a program location on a specified condition. The program location may be any program line number or label. The condition is a conditional statement which uses a...

  • Page 78

    76 • js dmc-1000/1500 command reference dmc-1000 dmc-1500 js function: jump to subroutine description: the js command will change the sequential order of execution of commands in a program. If the jump is taken, program execution will continue at the line specified by the destination parameter, whic...

  • Page 79

    Dmc-100/1500 command reference kd • 77 dmc-1000 dmc-1500 kd function: derivative constant description: kd designates the derivative constant in the controller filter. The filter transfer function is d(z) = 4 ⋅ kp + 4 ⋅ kd(z-1)/z + kiz/2 (z-1) for further details on the filter see the section theory ...

  • Page 80

    78 • ki dmc-1000/1500 command reference dmc-1000 dmc-1500 ki function: integrator description: the ki command sets the integral gain of the control loop. It fits in the control equation as follows: d(z) = 4 ⋅ kp + 4 ⋅ kd(z-1)/z + ki z/2(z-1) the integrator term will reduce the position error at rest...

  • Page 81

    Dmc-100/1500 command reference kp • 79 dmc-1000 dmc-1500 kp function: proportional constant description: kp designates the proportional constant in the controller filter. The filter transfer function is d(z) = 4 ⋅ kp + 4 ⋅ kd(z-1)/z + ki z/2(z-1) for further details see the section theory of operati...

  • Page 82

    80 • ks dmc-1000/1500 command reference dmc-1000 dmc-1500 ks function: step motor smoothing description: the ks parameter smoothes the frequency of the step motor pulses. Larger values of ks provide greater smoothness. This parameter will also increase the motion time by 3ks sampling periods. Ks add...

  • Page 83

    Dmc-100/1500 command reference la • 81 dmc-1000 dmc-1500 la function: list arrays description: the la command returns a list of all arrays in memory. The listing will be in alphabetical order. The size of each array will be included next to each array name in square brackets. Arguments: none usage: ...

  • Page 84

    82 • le dmc-1000/1500 command reference dmc-1000 dmc-1500 le function: linear interpolation end description: le signifies the end of a linear interpolation sequence. It follows the last li specification in a linear sequence. After the le specification, the controller issues commands to decelerate th...

  • Page 85

    Dmc-100/1500 command reference _lf* • 83 dmc-1000 dmc-1500 _lf* function: forward limit switch operand (keyword) description: the _lf operand contains the state of the forward limit switch for the specified axis. _lfx where x is the specified axis. 1 = inactive w/ cn -1 1_lfx = 1 when not closed w/ ...

  • Page 86

    84 • li dmc-1000/1500 command reference dmc-1000 dmc-1500 li function: linear interpolation distance description: the li x,y,z,w command specifies the incremental distance of travel for each axis in the linear interpolation (lm) mode. Li parameters are relative distances given with respect to the cu...

  • Page 87

    Dmc-100/1500 command reference li • 85 (li cont.) related commands: le linear end bg bgs - begin sequence lm linear interpolation mode cs clear sequence vs vector speed va vector acceleration vd vector deceleration examples: lm xyz specify linear interpolation mode li 1000,2000,3000 specify distance...

  • Page 88

    86 • ll dmc-1000/1500 command reference dmc-1000 dmc-1500 ll function: list labels description: the ll command returns a listing of all of the program labels in memory. The listing will be in alphabetical order. Arguments: none usage: defaults: while moving yes default value - in a program yes defau...

  • Page 89

    Dmc-100/1500 command reference lm • 87 dmc-1000 dmc-1500 lm function: linear interpolation mode description: the lm xyzw command specifies the linear interpolation mode where xyzw denote the axes for linear interpolation. Any set of 1,2,3 or 4 axes may be used for linear interpolation. Li x,y,z,w co...

  • Page 90

    88 • lm dmc-1000/1500 command reference li 200,300,400,500 specify linear distance le; bgs last vector, then begin motion.

  • Page 91

    Dmc-100/1500 command reference _lr* • 89 dmc-1000 dmc-1500 _lr* function: reverse limit switch operand (keyword) description: *the _lr operand contains the state of the reverse limit switch for the specified axis. _lrx where x is the specified axis. 1 = inactive w/ cn -1 1_lfx = 1 when not closed w/...

  • Page 92

    90 • ls dmc-1000/1500 command reference dmc-1000 dmc-1500 ls function: list program description: the ls command returns a listing of the programs in memory. The listing will start with the line pointed to by the first parameter, which can be either a line number or a label. If no parameter is specif...

  • Page 93

    Dmc-100/1500 command reference lv • 91 dmc-1000 dmc-1500 lv function: list variables description: the lv command returns a listing of all of the program labels in memory. The listing will be in alphabetical order. Arguments: none usage: defaults: while moving yes default value - in a program yes def...

  • Page 94

    92 • lz dmc-1000/1500 command reference dmc-1000 dmc-1500 lz function: leading zeros description: the lz command is used for formatting the values returned from interrogation commands or interrogation of variables and arrays. By enabling the lz function, all leading zeros of returned values will be ...

  • Page 95

    Dmc-100/1500 command reference mc • 93 dmc-1000 dmc-1500 mc function: motion complete - "in position" description: the mc command is a trippoint used to control the timing of events. This command will hold up execution of the following commands until the current move on the specified axis or axes is...

  • Page 96

    94 • mc dmc-1000/1500 command reference mc w after the move is complete on w en end of program #f;dp 0,0,0,0 program f position pr 5000,6000,7000,8000 relative moves bg start x,y,z and w axes mc after motion complete on all axes mg "done"; tp print message en end of program hint: mc can be used to v...

  • Page 97

    Dmc-100/1500 command reference mf • 95 dmc-1000 dmc-1500 mf function forward motion to position description: the mf command is a trippoint used to control the timing of events. This command will hold up the execution of the following command until the specified motor moves forward and crosses the po...

  • Page 98

    96 • mg dmc-1000/1500 command reference dmc-1000 dmc-1500 mg function: message description: the mg command sends data out the bus. This can be used to alert an operator, send instructions or return a variable value. Arguments: mg "m", {^n}, v {fm.N or $m,n} {n} {pn} where "m" is a text message inclu...

  • Page 99

    Dmc-100/1500 command reference mo • 97 dmc-1000 dmc-1500 mo function: motor off description: the mo command shuts off the control algorithm. The controller will continue to monitor the motor position. To turn the motor back on use the servo here command (sh). Arguments: mo xyzw mo abcdefgh where xyz...

  • Page 100

    98 • mr dmc-1000/1500 command reference dmc-1000 dmc-1500 mr function: reverse motion to position description: the mr command is a trippoint used to control the timing of events. This command will hold up the execution of the following command until the specified motor moves backward and crosses the...

  • Page 101

    Dmc-100/1500 command reference mt • 99 dmc-1000 dmc-1500 mt function: motor type description: the mt command selects the type of the motor and the polarity of the drive signal. Motor types include standard servo motors which require a voltage in the range of +/- 10 volts, and step motors which requi...

  • Page 102

    100 • no dmc-1000/1500 command reference dmc-1000 dmc-1500 no function: no operation description: the no command performs no action in a sequence, but can be used as a comment in a program. This helps to document a program. Arguments: no m where m is any group of letter, number, symbol or g for dmc-...

  • Page 103

    Dmc-100/1500 command reference ob • 101 dmc-1000 dmc-1500 ob function: output bit description: the ob n, logical expression command defines output bit n = 1 through 8 as either 0 or 1 depending on the result from the logical expression. Any non-zero value of the expression results in a one on the ou...

  • Page 104

    102 • oe dmc-1000/1500 command reference dmc-1000 dmc-1500 oe function: off on error description: the oe command causes the controller to shut off the motor command if a position error exceeds the limit specified by the er command occurs or an abort occurs from either the abort input or on ab comman...

  • Page 105

    Dmc-100/1500 command reference of • 103 dmc-1000 dmc-1500 of function: offset description: the of command sets a bias voltage in the motor command output or returns a previously set value. This can be used to counteract gravity or an offset in an amplifier. Arguments: of x,y,z,w ofx=x of a,b,c,d,e,f...

  • Page 106

    104 • op dmc-1000/1500 command reference dmc-1500 op function: output port description: the op command sends data to the output ports of the controller. You can use the output port to control external switches and relays. The first parameter controls the first output port (bits 1-8) and the second o...

  • Page 107

    Dmc-100/1500 command reference oq • 105 dmc-1000 oq function: output block description: the oq command sets the state of 16 bits of output at one time. This command is only valid for controllers with the db-10072 or db-10096 i/o expansion board. Arguments: for use with the daughter board db-10096: o...

  • Page 108

    106 • pa dmc-1000/1500 command reference dmc-1000 dmc-1500 pa function: position absolute description: the pa command will set the final destination of the next move. The position is referenced to the absolute zero. If a ? Is used, then the current destination (current command position if not moving...

  • Page 109

    Dmc-100/1500 command reference pf • 107 dmc-1000 dmc-1500 pf function: position format description: the pf command allows the user to format the position numbers such as those returned by tp. The number of digits of integers and the number of digits of fractions can be selected with this command. An...

  • Page 110

    108 • pr dmc-1000/1500 command reference dmc-1000 dmc-1500 pr function: position relative description: the pr command sets the incremental distance and direction of the next move. The move is referenced with respect to the current position. If a ? Is used, then the current incremental distance is re...

  • Page 111

    Dmc-100/1500 command reference qd • 109 dmc-1000 dmc-1500 qd function: download array description: the qd command transfers array data from the host computer to the controller. Qd array[],start,end requires that the array name be specified along with the first element of the array and last element o...

  • Page 112

    110 • qu dmc-1000/1500 command reference dmc-1000 dmc-1500 qu function: upload array description: the qu command transfers array data from the controller to a host computer. Qu array[],start,end,delim requires that the array name be specified along with the first element of the array and last elemen...

  • Page 113

    Dmc-100/1500 command reference ra • 111 dmc-1000 dmc-1500 ra function: record array description: the ra command selects one through four arrays for automatic data capture. The selected arrays must be dimensioned by the dm command. The data to be captured is specified by the rd command and time inter...

  • Page 114

    112 • rc dmc-1000/1500 command reference dmc-1000 dmc-1500 rc function: record description: the rc command begins recording for the automatic record array mode (ra). Rc 0 stops recording. Arguments: rc n,m where n is an integer 1 thru 8 and specifies 2 n samples between records. Rc 0 stops recording...

  • Page 115

    Dmc-100/1500 command reference rd • 113 dmc-1000 dmc-1500 rd function: record data description: the rd command specifies the data type to be captured for the record array (ra) mode. The command type includes: _dex 2nd encoder _tpx position _tex position error _shx commanded position _rlx latched pos...

  • Page 116

    114 • re dmc-1000/1500 command reference dmc-1000 dmc-1500 re function: return from error routine description: the re command is used to end a position error handling subroutine or limit switch handling subroutine. The error handling subroutine begins with the #poserr label. The limit switch handlin...

  • Page 117

    Dmc-100/1500 command reference ri • 115 dmc-1000 dmc-1500 ri function: return from interrupt routine description: the ri command is used to end the interrupt subroutine beginning with the label #inint. An ri at the end of this routine causes a return to the main program. The ri command also re-enabl...

  • Page 118

    116 • rl dmc-1000/1500 command reference dmc-1000 dmc-1500 rl function: report latched position description: the rl command will return the last position captured by the latch. The latch must first be armed by the al command and then a 0 must occur on the appropriate input. (input 1,2,3 and 4 for x,...

  • Page 119

    Dmc-100/1500 command reference rp • 117 dmc-1000 dmc-1500 rp function: reference position description: this command returns the commanded reference position of the motor(s). Arguments: rp xyzw rp abcdefgh where the argument specifies the axes to be affected usage: defaults: while moving yes default ...

  • Page 120

    118 • rs dmc-1000/1500 command reference dmc-1000 dmc-1500 rs function: reset description: the rs command resets the state of the processor to its power-on condition. The previously saved state of the controller, along with parameter values, and saved sequences are restored. Usage: defaults: while m...

  • Page 121

    Dmc-100/1500 command reference rs • 119 dmc-1000 dmc-1500 rs function: master reset description: the master reset command resets the controller to factory default settings and erases eeprom. For the dmc-1500: a master reset can also be performed by setting the mrst dipswitch and resetting the contro...

  • Page 122

    120 • rv dmc-1000/1500 command reference dmc-1000 dmc-1500 rv function: revision information description: this command causes the controller to return firmware revision information. Usage: defaults: while moving yes default value - in a program no default format - command line yes can be interrogate...

  • Page 123

    Dmc-100/1500 command reference sb • 121 dmc-1000 dmc-1500 sb function: set bit description: the sb command sets one of eight bits on the output port. Arguments: sb n where n is an integer in the range 1 to 8 decimal. Usage: defaults: while moving yes default value - in a program yes default format -...

  • Page 124

    122 • sc dmc-1000/1500 command reference dmc-1000 dmc-1500 sc function: stop code description: the sc command allows the user to determine why a motor stops. The controller responds with the stop code as follows: code meaning code meaning 0 motors are running, independent mode 9 stopped after findin...

  • Page 125

    Dmc-100/1500 command reference sh • 123 dmc-1000 dmc-1500 sh function: servo here description: the sh commands causes the controller to set the commanded position to be the current motor position and to enable the motor amplifier for the specified axes. This command can be useful when the position o...

  • Page 126

    124 • sp dmc-1000/1500 command reference dmc-1000 dmc-1500 sp function: speed description: this command sets the slew speed of any or all axes for independent moves, or it will return the previously set value. The parameters input will be rounded down to the nearest factor of 2 and the units of the ...

  • Page 127

    Dmc-100/1500 command reference st • 125 dmc-1000 dmc-1500 st function: stop description: the st command stops motion on the specified axis. Motors will come to a decelerated stop. If st is sent from the host without an axis specification, program execution will stop in addition to motion. Xyzw speci...

  • Page 128

    126 • tb dmc-1000/1500 command reference dmc-1000 dmc-1500 tb function: tell status byte description: the tb command returns status information from the controller as a decimal number. Each bit of the status byte denotes the following condition when the bit is set (high): bit status bit 7 n/a bit 6 ...

  • Page 129

    Dmc-100/1500 command reference tc • 127 dmc-1000 dmc-1500 tc function: tell error code description: the tc command returns a number between 1 and 255. This number is a code that reflects why a command was not accepted by the controller. This command is useful when the controller halts execution of a...

  • Page 130

    128 • tc dmc-1000/1500 command reference 22 begin not possible due to limit switch 84 too many elements 24 begin not valid because no sequence defined 90 only x y z w valid operand 25 variable not given in in command 96 sm jumper needs to be installed for stepper motor operation 28 s operand not val...

  • Page 131

    Dmc-100/1500 command reference td • 129 dmc-1000 dmc-1500 td function: tell dual encoder description:: this command returns the current position of the dual (auxiliary) encoder(s). Auxiliary encoders are not available for stepper axes or for the axis where output compare is used. When operating with...

  • Page 132

    130 • te dmc-1000/1500 command reference dmc-1000 dmc-1500 te function: tell error description:: this command returns the current position error of the motor(s). The range of possible error is 2147483647. The tell error command is not valid for step motors since they operate open-loop. Arguments: te...

  • Page 133

    Dmc-100/1500 command reference ti • 131 dmc-1000 dmc-1500 ti function: tell inputs description: this command returns the state of the general inputs. Ti or ti0 return inputs i1 through i8, ti1 returns i9 through i16 and ti2 returns i17 through i24. Ti or ti0 ti1 ti2 msb bit 7 input 8 input 16 input ...

  • Page 134

    132 • time* dmc-1000/1500 command reference dmc-1000 dmc-1500 time* function: time operand (keyword) description: *the time operand returns the value of the intenal free running, real time clock. The returned value represents the number of servo loop updates and is based on the tm command. The defau...

  • Page 135

    Dmc-100/1500 command reference tl • 133 dmc-1000 dmc-1500 tl function: torque limit description: the tl command sets the limit on the motor command output. For example, tl of 5 limits the motor command output to 5 volts. Maximum output of the motor command is 9.998 volts. Arguments: tl x,y,z,w tlx=x...

  • Page 136

    134 • tm dmc-1000/1500 command reference dmc-1000 dmc-1500 tm function: update time description: the tm command sets the sampling period of the control loop. Changing the sampling period will uncalibrate the speed and acceleration parameters. A negative number turns off the servo loop. The units of ...

  • Page 137

    Dmc-100/1500 command reference tn • 135 dmc-1000 dmc-1500 tn function: tangent description: the tn m,n command describes the tangent axis to the coordinated motion path. M is the scale factor in counts/degree of the tangent axis. N is the absolute position of the tangent axis where the tangent axis ...

  • Page 138

    136 • tp dmc-1000/1500 command reference dmc-1000 dmc-1500 tp function: tell position description: this command returns the current position of the motor(s). Arguments: tp xyzw tp abcdefgh where the argument specifies the axes to be affected usage: defaults: while moving yes default value - in a pro...

  • Page 139

    Dmc-100/1500 command reference tr • 137 dmc-1000 dmc-1500 tr function: trace description: the tr command causes each instruction in a program to be sent out the communications port prior to execution. Tr1 enables this function and tr0 disables it. The trace command is useful in debugging programs. A...

  • Page 140

    138 • ts dmc-1000/1500 command reference dmc-1000 dmc-1500 ts function: tell switches description: ts returns status information of the home switch, forward limit switch and reverse limit switch, error conditions, motion condition and motor state. The value returned by this command is decimal and re...

  • Page 141

    Dmc-100/1500 command reference tt • 139 dmc-1000 dmc-1500 tt function: tell torque description: the tt command reports the value of the analog output signal, which is a number between - 9.998 and 9.998 volts. Arguments: tt xyzw tt abcdefgh where the argument specifies the axes to be affected usage: ...

  • Page 142

    140 • tv dmc-1000/1500 command reference dmc-1000 dmc-1500 tv function: tell velocity description: the tv command returns the actual velocity of the axes in units of quadrature count/s. The value returned includes the sign. Arguments: tv xyzw tv abcdefgh where no argument will provide the auxiliary ...

  • Page 143

    Dmc-100/1500 command reference tw • 141 dmc-1000 dmc-1500 tw function: timeout for in-position (mc) description: the tw x,y,z,w command sets the timeout in msec to declare an error if the mc command is active and the motor is not at or beyond the actual position within n msec after the completion of...

  • Page 144

    142 • ui dmc-1000/1500 command reference dmc-1000 ui function: user interrupt description: the ui command causes an interrupt on the selected irq line. There are 16 user interrupts where ui n, n = 0 through 15. Prior to using the ui command, one irq line must be enabled on the controller and the dat...

  • Page 145

    Dmc-100/1500 command reference ul • 143 dmc-1000 dmc-1500 ul function: upload description: the ul command transfers data from the controller to a host computer through port 1. Programs are sent without line numbers. The uploaded program will be followed by a z or a \ as an end of text marker. Argume...

  • Page 146

    144 • va dmc-1000/1500 command reference dmc-1000 dmc-1500 va function: vector acceleration description: this command sets the acceleration rate of the vector in a coordinated motion sequence. The parameter input will be rounded down to the nearest factor of 1024. The units of the parameter is count...

  • Page 147

    Dmc-100/1500 command reference vd • 145 dmc-1000 dmc-1500 vd function: vector deceleration description: this command sets the deceleration rate of the vector in a coordinated motion sequence. The parameter input will be rounded down to the nearest factor of 1024. The units of the parameter is counts...

  • Page 148

    146 • ve dmc-1000/1500 command reference dmc-1000 dmc-1500 ve function: vector sequence end description: ve is required to specify the end segment of a coordinated move sequence. Ve would follow the final vp or cr command in a sequence. Ve is equivalent to the le command. Arguments: ve ? Returns the...

  • Page 149

    Dmc-100/1500 command reference vf • 147 dmc-1000 dmc-1500 vf function: variable format description: the vf command allows the variables and arrays to be formatted for number of digits before and after the decimal point. When displayed, the value m represents the number of digits before the decimal p...

  • Page 150

    148 • vm dmc-1000/1500 command reference dmc-1000 dmc-1500 vm function: coordinated motion mode description: the vm command specifies the coordinated motion mode and the plane of motion. This mode may be specified for motion on any set of two axes. The motion is specified by the instructions vp and ...

  • Page 151

    Dmc-100/1500 command reference vm • 149 examples: vm x,y specify coordinated mode for x,y cr 500,0,180 specify arc segment vp 100,200 specify linear segment ve end vector bgs begin sequence.

  • Page 152

    150 • vp dmc-1000/1500 command reference dmc-1000 dmc-1500 vp function vector position description: the vp command defines the target coordinates of a straight line segment in a 2 axis motion sequence. The axes are chosen by the vm command. The motion starts with the begin sequence command. The unit...

  • Page 153

    Dmc-100/1500 command reference vp • 151 vs 2000 specify vector speed va 400000 specify vector acceleration bgs begin motion sequence en end program hint: the first vector in a coordinated motion sequence defines the origin for that sequence. All other vectors in the sequence are defined by their end...

  • Page 154

    152 • vr dmc-1000/1500 command reference dmc-1000 dmc-1500 vr function: vector speed ratio description: the vr command multiplies the current vector speed by the value specified by r. R is between 0 and 10 with a resolution of .0001. Vr takes effect immediately and will ratio all the following vs co...

  • Page 155

    Dmc-100/1500 command reference vs • 153 dmc-1000 dmc-1500 vs function: vector speed description: the vs command specifies the speed of the vector in a coordinated motion sequence in either the lm or vm modes. The parameter input is rounded down to the nearest factor of 2. The units are counts per se...

  • Page 156

    154 • vt dmc-1000/1500 command reference dmc-1000 dmc-1500 vt function: vector time constant - s curve description: the vt command filters the acceleration and deceleration functions in vector moves of vm, lm type to produce a smooth velocity profile. The resulting profile, known as s-curve, has con...

  • Page 157

    Dmc-100/1500 command reference wc • 155 dmc-1000 dmc-1500 wc function: wait for contour data description: the wc command acts as a flag in the contour mode. After this command is executed, the controller does not receive any new data until the internal contour data buffer is ready to accept new comm...

  • Page 158

    156 • wt dmc-1000/1500 command reference dmc-1000 dmc-1500 wt function: wait description: the wt command is a trippoint used to time events. After this command is executed, the controller will wait for the number of samples specified before executing the next command. If the tm command has not been ...

  • Page 159

    Dmc-100/1500 command reference xq • 157 dmc-1000 dmc-1500 xq function: execute program description: the xq command begins execution of a program residing in the program memory of the controller. Execution will start at the label or line number specified. Up to four programs may be executed simultane...

  • Page 160

    158 • zr dmc-1000/1500 command reference dmc-1000 dmc-1500 zr function: zero description: the zr command sets the compensating zero in the control loop or returns the previously set value. It fits in the control equation as follows: d(z) = gn(z-zr/z) arguments: zr x,y,z,w zrx=x zr a,b,c,d,e,f,g,h wh...

  • Page 161

    Dmc-100/1500 command reference zs • 159 dmc-1000 dmc-1500 zs function: zero subroutine stack description: the zs command is only valid in an application program and is used to avoid returning from an interrupt (either input or error). Zs alone returns the stack to its original condition. Zs1 adjusts...

  • Page 162

    160 • zs dmc-1000/1500 command reference this page left blank intentionally.

  • Page 163: Index

    Dmc-1000/1500 command reference index • 161 index a abort 5 off-on-error 5, 114 stop motion 139 absolute position 13, 47, 107, 110, 149 absolute value 58 acceleration 6, 16, 67, 83, 148, 159 address 125, 157 analog feedback 9 arm latch 11 array 41, 46, 104, 113, 122, 162 automatic subroutine limswi ...

  • Page 164

    162 • index dmc-1000/1500 command reference electronic cam 51, 63, 66 echo 61, 140 edit mode 53, 102, 173 eeprom 22, 39, 133 electronic cam 51, 63, 66 electronic gearing 73, 75 ellipse scale 65 encoder auxiliary encoder 29, 44, 73 dual encoder 44, 50 index pulse 69, 76 quadrature 7, 13, 14, 18, 21, ...

  • Page 165

    Dmc-1000/1500 command reference index • 163 mctime 105, 156 memory 22, 41, 102 array 41, 46, 104, 113, 122, 162 download 45, 122 upload 158 message 82 motion complete mctime 105, 156 motion smoothing s-curve 16, 85, 170 motor command 114, 147 moving acceleration 6, 16, 67, 83, 148, 159 circular 125,...

  • Page 166

    164 • index dmc-1000/1500 command reference stop code 2, 11, 29, 44, 50, 64, 68, 73, 76, 82, 105, 107, 110, 136, 156 stop motion 139 subroutine 79, 88, 128, 156, 175 syntax 2 t tangent 149, 163 teach 124 data capture 124 latch 11, 33, 130 position capture 11 record 124 tell error position error 8, 9...