Summary of Contents for DMC-1000

Page 1: ...erutilized and idle equipment along with credit for buybacks and trade ins Custom engineering so your equipment works exactly as you specify Critical and expedited services Leasing Rentals Demos In st...

Page 2: ...c 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 Artisan Technology Group Qu...

Page 3: ...ur axis controller or the DMC 1080 eight axes controller Users of the DMC 1030 3 axis controller DMC 1020 2 axis controller or DMC 1010 1 axis controller should note that the DMC 1030 uses the axes de...

Page 4: ...o interrogate Ram New feature for Rev 2 0e May 1997 Feature Description 1 ER now accepts argument 0 Disables error output LED and Error Output does not turn on for that axis 2 During a PR decel can no...

Page 5: ...erval and starting point ET ECAM table entry EB Enable ECAM EG Engage ECAM cycle EQ Disengage ECAM New features added Jan 1995 Allow circular array recording New commands added July 1994 Rev 1 4 Comma...

Page 6: ...vector speed with each vector segment Where n sets vector speed New commands added January 1993 Command Description HX Halt execution for multitasking AT At time trippoint for relative time from refe...

Page 7: ...Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 8: ...8 Step 4 Install Communications Software 8 Step 5 Establish Communications with Galil Communication Software 9 Changing the I O Address of the Controller 10 Step 6 Connect Amplifiers and Encoders 11...

Page 9: ...33 Introduction 33 Address Selection 33 Example Address Selection 34 Communication with the Controller 34 Communication Registers 34 Simplified Communication Procedure 34 Advanced Communication Techni...

Page 10: ...Commands 67 Command Summary Contour Mode 68 Operand Summary Contour Mode 68 Stepper Motor Operation 71 Specifying Stepper Motor Operation 71 Using an Encoder with Stepper Motors 72 Command Summary St...

Page 11: ...riables and Array Elements 113 Converting to User Units 114 Programmable Hardware I O 114 Digital Outputs 114 Digital Inputs 115 Input Interrupt Function 116 Analog Inputs 117 Example Applications 118...

Page 12: ...n IDC 149 JD3 20 pin IDC Auxiliary Encoders 150 JD4 20 pin IDC Amplifiers 150 JD6 Daughterboard Connector 60 pin 150 Pin Out Description for DMC 1000 151 Jumper Description for DMC 1000 153 Dip Switch...

Page 13: ...tch Dog Timer 4 Chapter 2 Getting Started 5 The DMC 1000 Motion Controller 5 Elements You Need 6 Installing the DMC 1000 7 Step 1 Determine Overall Motor Configuration 7 Step 2 Configure Jumpers on th...

Page 14: ...fier Interface 30 TTL Inputs 31 Analog Inputs 31 TTL Outputs 32 Offset Adjustment 32 Chapter 4 Communication 33 Introduction 33 Address Selection 33 Example Address Selection 33 Communication with the...

Page 15: ...nic Gearing 59 Electronic Cam 61 Contour Mode 66 Specifying Contour Segments 66 Additional Commands 67 Command Summary Contour Mode 68 Operand Summary Contour Mode 68 Stepper Motor Operation 71 Specif...

Page 16: ...umeric and String 110 Sending Messages 110 Interrogation Commands 111 Formatting Variables and Array Elements 113 Converting to User Units 114 Programmable Hardware I O 114 Digital Outputs 114 Digital...

Page 17: ...d Connector 60 pin 148 J7 10 pin 148 Connectors for Auxiliary Board Axes E F G H 148 JD2 Main 60 pin IDC 148 JD5 I O 26 pin IDC 149 JD3 20 pin IDC Auxiliary Encoders 150 JD4 20 pin IDC Amplifiers 150...

Page 18: ...DB 10072 164 DB 10096 I O Expansion 167 Pinouts for DB 10096 Connectors 168 J1 Pinout 168 J2 Pinout 169 Coordinated Motion Mathematical Analysis 170 DMC 600 DMC 1000 Comparison 173 DMC 600 DMC 1000 C...

Page 19: ...Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 20: ...terpolation electronic gearing and user defined path following Several motion parameters can be specified including acceleration and deceleration rates and slew speed The DMC 1000 also provides S curv...

Page 21: ...scribed in Chapter 2 Stepper Motor with Step and Direction Signals The DMC 1000 can control stepper motors In this mode the controller provides two signals to connect to the stepper motor Step and Dir...

Page 22: ...cation interface with the host PC over the ISA bus uses a bi directional FIFO AM470 and includes PC interrupt handling circuitry General I O The DMC 1000 provides interface circuitry for eight optoiso...

Page 23: ...ture encoders may be either single ended CHA and CHB or differential CHA CHA CHB CHB The DMC 1000 decodes either type into quadrature states or four times the number of cycles Encoders may also have a...

Page 24: ...0 pin header connector for the auxiliary encoder cable of the DMC 1000 3 GL 1800 Custom sub micron gate array J4 20 pin header connector for the stepper amplifier output cable of the DMC 1000 4 Calibr...

Page 25: ...5 or NT Optional but strongly recommended for first time users 7 An Interface Module Optional but strongly recommended The Galil ICM 1100 is an interconnect module with screw type terminals that direc...

Page 26: ...configuration information is necessary to determine the proper motor configuration Standard Servo Motor Operation The DMC 1000 has been setup by the factory for standard servo motor operation providin...

Page 27: ...inserted DMC 1050 through DMC 1080 require two expansion bus slots Step D Insert DMC 1000 card in the expansion bus and secure with screw Step E Attach the ribbon cables to your controller card Insert...

Page 28: ...f the controller and other information To do this run the program DMCREG16 for Windows 3 x or DMCREG32 for Windows 95 and NT The DMCREG window will appear Select Registry from the menu Note If you are...

Page 29: ...ation changing this address may be necessary If the address 1000 is not available Galil recommends using the address 816 as it is likely to be available Changing the I O address at which the DMC 1000...

Page 30: ...ign Kit for the DMC 1000 WSDK16 Windows 3 x 16 bit version of the Servo Design Kit and WSDK32 Windows 95 and NT 32 bit version of the Servo Design Kit Step 6 Connect Amplifiers and Encoders Once you h...

Page 31: ...te the enable input as inhibit To change the voltage level of the AEN signal note the state of the resistor pack on the ICM 1100 When Pin 1 is on the 5V mark the output voltage is 0 5V To change to 12...

Page 32: ...ve a hardware failure Consult the factory for help Step 7a Connect Standard Servo Motors The following discussion applies to connecting the DMC 1000 controller to standard servo motor amplifiers The m...

Page 33: ...xample the following command will limit the output of the controller to 1 volt on the X axis TL 1 CR Note Once the correct polarity of the feedback loop has been determined the torque limit should in...

Page 34: ...n loop has been closed with the correct polarity the next step is to adjust the PID filter parameters KP KD and KI It is necessary to accurately tune your servo system to ensure fidelity of position a...

Page 35: ...back When a stepper is used the auxiliary encoder for the corresponding axis is unavailable for an external connection If an encoder is used for position feedback connect the encoder to the main encod...

Page 36: ...his order To start set the integrator to zero with the instruction KI 0 CR Integrator gain and set the proportional gain to a low value such as KP 1 CR Proportional gain KD 100 CR Derivative gain For...

Page 37: ...n also be referred to as the A B C D axes Instruction Interpretation OE 1 1 1 1 1 1 1 1 Enable automatic Off on Error function for all axes ER 1000 Set error limit for all axes to 1000 counts KP10 10...

Page 38: ...G Z Start Z motion BG Y Start Y motion Example 5 Position Interrogation The position of the four axes may be interrogated with the instruction TP Instruction Interpretation TP Tell position all four a...

Page 39: ...cluding direction reversal The motion can be stopped with the instruction ST Stop Example 8 Operation Under Torque Limit The magnitude of the motor command may be limited independently by the instruct...

Page 40: ...ion ED Edit mode moves the operation to the editor mode where the program may be written and edited The editor provides the line number For example in response to the first ED command the first line i...

Page 41: ...ved 4000 BGY Start Y motion AP 6000 Wait until position X 6000 SP 2000 50000 Change speeds AP 50000 Wait until position Y 50000 SP 10000 Change speed of Y EN End program To start the program command X...

Page 42: ...on axes LI 7000 3000 6000 Relative distances for linear interpolation LE Linear End VS 6000 Vector speed VA 20000 Vector acceleration VD 20000 Vector deceleration BGS Start motion Example 16 Circular...

Page 43: ...r 2 Getting Started DMC 1000 X Y R 2000 0 0 local zero 4000 0 4000 4000 0 4000 Figure 2 4 Motion Path for Example 16 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artis...

Page 44: ...deceleration rate previously set with the DC command The motor will remain in a servo state after the limit switch has been activated and will hold motor position When a forward or reverse limit swit...

Page 45: ...oming is a combination of Find Edge and Find Index homing Initiating the standard homing routine will cause the motor to slew until a transition is detected in the logic state of the Home input The mo...

Page 46: ...age in the range of 5V to 28V into INCOM of the input circuitry from a separate power supply Wiring the Optoisolated Inputs The default state of the controller configures all inputs to be interpreted...

Page 47: ...1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 ABORT Figure 3 1 The Optoisolated Inputs Using an Isolated Power Supply To take full advantage of opto isolation an isolated power supply should be used to provide the vo...

Page 48: ...the ribbon cable if the ICM 1100 or equivalent breakout board is not available Bypassing the Opto Isolation If no isolation is needed the internal 5 Volt supply may be used to power the switches as s...

Page 49: ...operation with no additional compensation The gain should be set such that a 10 Volt input results in the maximum required current The DMC 1000 also provides an amplifier enable signal AEN This signal...

Page 50: ...he user to connect their own resistor to the desired voltage level Up to24V Figure 3 4 Connecting AEN to the motor amplifier TTL Inputs 1080 As previously mentioned the DMC 1000 has 8 uncommitted TTL...

Page 51: ...D on the controller will be on An error condition indicates one of the following conditions 1 At least one axis has a position error greater than the error limit The error limit is set by using the co...

Page 52: ...it to zero and setting a switch to the OFF position sets that bit to 1 Please note that this discussion refers only to the computer address of the controller and is not related to specifying axes for...

Page 53: ...NTROL for status control N 1 Read and Write The DMC 1000 provides three registers used for communication The READ register and WRITE register occupy address N and the CONTROL register occupies address...

Page 54: ...e Changing Almost Full Flags on pg 35 Any high level computer language such as C Basic Pascal or Assembly may be used to communicate with the DMC 1000 as long as the READ WRITE procedure is followed a...

Page 55: ...ate the interrupt line for the PC bus The available lines are IRQ2 IRQ3 IRQ4 IRQ5 IRQ7 IRQ9 IRQ10 IRQ11 IRQ12 IRQ14 IRQ15 Note that the jumper for IRQ2 and IRQ9 is at the same location IRQ9 is used fo...

Page 56: ...program stopped 14 Command done 15 Inputs uses n for mask Bit number n Input 0 Input 1 1 Input 2 2 Input 3 3 Input 4 4 Input 5 5 Input 6 6 Input 7 7 Input 8 and M 2m N 2n For example to select an inte...

Page 57: ...ugh FF User interrupt E1 through E8 Input interrupt C0 Limit switch occurred C8 Excess position error D8 All axis motion complete D7 E axis motion complete D6 F axis motion complete D5 G axis motion c...

Page 58: ...nstructions that return data such as Tell Position TP the DMC 1000 will return the data followed by a carriage return line feed and It is good practice to check for after each command is sent to preve...

Page 59: ...40 Chapter 4 Communication DMC 1000 THIS PAGE LEFT BLANK INTENTIONALLY Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 60: ...erminate the instruction for processing by the DMC 1000 command interpreter Note If you are using a Galil terminal program commands will not be processed until an enter command is given This allows th...

Page 61: ...nd A B C D may be used interchangeably BG ABCDEFGH Begin all axes BG D Begin D only Coordinated Motion with more than 1 axis When requesting action for coordinated motion the letter S is used to speci...

Page 62: ...d line feed The format of the returned data can be changed using the Position Format PF Variable Format VF and Leading Zeros LZ command See Chapter 7 and the Command Reference Summary of Interrogation...

Page 63: ...alid DMC expressions For example to display the value of an operand the user could use the command MG operand All of the command operands begin with the underscore character _ For example the value of...

Page 64: ...ctory The controller determines a new command position along the trajectory every sample period until the specified profile is complete Motion is complete when the last position command is sent by the...

Page 65: ...SPH 10000 Operand Summary Independent Axis OPERAND DESCRIPTION _ACx Return acceleration rate for the axis specified by x _DCx Return deceleration rate for the axis specified by x _SPx Returns the spee...

Page 66: ...40 60 80 TIME ms 100 X axis velocity profile Y axis velocity profile Z axis velocity profile 0 Figure 6 1 Velocity Profiles of XYZ Notes on fig 6 1 The X and Y axis have a trapezoidal velocity profil...

Page 67: ...COMMAND DESCRIPTION AC x y z w Specifies acceleration rate BG X Y Z W Begins motion DC x y z w Specifies deceleration rate IP x y z w Increments position instantly IT x y z w Time constant for indepen...

Page 68: ...o 511 incremental move segments may be given prior to the Begin Sequence BGS command Once motion has begun additional LI segments may be sent to the controller The clear sequence CS command can be use...

Page 69: ...he After Vector trippoint which halts program execution until the vector distance of n has been reached In this example the XY system is required to perform a 90 turn In order to slow the speed around...

Page 70: ...te override VR does not ratio the accelerations For example VR 5 results in the specification VS 2000 to be divided in half Command Summary Linear Interpolation COMMAND DESCRIPTION LM xyzw LM abcdefgh...

Page 71: ...e zero Now suppose that the interrogation is repeated at the second segment when Y 2000 The value of _AV at this point is 7000 _CS equals 1 _VPX 5000 and _VPY 0 Example Linear Move Make a coordinated...

Page 72: ...igure 6 2 Linear Interpolation Example Multiple Moves This example makes a coordinated linear move in the XY plane The Arrays VX and VY are used to store 750 incremental distances which are filled by...

Page 73: ...dinated motion mode is similar to the linear interpolation mode Any pair of two axes may be selected for coordinated motion consisting of linear and circular segments In addition a third axis can be c...

Page 74: ...olled deceleration LM or _LM returns the available spaces for motion segments that can be sent to the buffer 511 returned means the buffer is empty and 511 segments can be sent A zero means the buffer...

Page 75: ...p specifies tangent axis such as X Y Z W or A B C D E F G H p N turns off tangent axis Before the tangent mode can operate it is necessary to assign an axis via the VM command and define its offset an...

Page 76: ...mand until Motion Sequence is complete TN m n Tangent scale and offset ES m n Ellipse scale factor VT S curve smoothing constant for coordinated moves LM Return number of available spaces for linear a...

Page 77: ...t a point halfway between the points C and D The value of _AV is 4000 1500 2000 10 712 The value of _CS is 2 _VPX _VPY contain the coordinates of the point C C 4000 3000 R 1500 B 4000 0 D 0 3000 A 0 0...

Page 78: ...here n X Y Z or W or A B C D E F G H for main encoder as master n XC YC ZC or WC or AC BC CC DC EC FC GC HC for commanded position n DX DY DZ or DW or DA DB DC DD DE DF DG DH for auxiliary encoders n...

Page 79: ...that a gantry is driven by two axes X Y on both sides The X axis is the master and the Y axis is the follower To synchronize Y with the commanded position of X use the instructions GA XC Specify maste...

Page 80: ...onic cam mode the position of the master is always expressed modulo one cycle In this example the position of x is always expressed in the range between 0 and 6000 Similarly the slave position is also...

Page 81: ...where n indicates the order of the point The value n starts at zero and may go up to 256 The parameters x y z w indicate the corresponding slave position For this example the table may be specified b...

Page 82: ...e corresponding slave axes are disengaged Master X 4000 2250 2000 6000 3000 1500 0 Figure 6 8 Electronic Cam Example This disengages the slave axis at a specified master position If the parameter is o...

Page 83: ...with the instruction ET N Y Instruction Interpretation SETUP Label EAX Select X as master EM 2000 1000 Cam cycles EP 20 0 Master position increments N 0 Index LOOP Loop to construct table from equati...

Page 84: ...ble ET 8 120 60 9th point in the ECAM table ET 9 40 20 10th point in the ECAM table ET 10 0 0 Starting point for next cycle EB 1 Enable ECAM mode JGZ 4000 Set Z to jog at 4000 EG 0 0 Engage both X and...

Page 85: ...contouring mode may be operated in other modes A contour is described by position increments which are described with the command CD x y z w over a time interval DT n The parameter n specifies the ti...

Page 86: ...s first position increment DT 3 Specifies second time interval 23 ms CD 240 WC Specifies second position increment DT 4 Specifies the third time interval 24 ms CD 48 WC Specifies the third position in...

Page 87: ...Summary Contour Mode OPERAND DESCRIPTION _CS Return segment number General Velocity Profiles The Contour Mode is ideal for generating any arbitrary velocity profiles The velocity profile can be speci...

Page 88: ...s is stored at the array POS Then the difference between the positions is computed and is stored in the array DIF Finally the motors are run in the contour mode Contour Mode Example Instruction Interp...

Page 89: ...for DMC 1080 RD _TPX Specify data for capturing such as _TPX or _TPZ RC n m Specify capture time interval where n is 2n msec m is number of records to be captured RC or _RC Returns a 1 if recording Re...

Page 90: ...fies a stepper motor with active low step output pulses 2 specifies a stepper motor with active high step output pulses 2 5 specifies a stepper motor with active low step output pulses and reversed di...

Page 91: ...s on the parameter which is specified by the command KS As mentioned earlier there will always be some amount of stepper motor smoothing The default value for KS is 2 which corresponds to a time const...

Page 92: ...r each axis except for axes configured for stepper motor operation When used the second encoder is typically mounted on the motor or the load but may be mounted in any position The most common use for...

Page 93: ...has a backlash To compensate for the backlash position encoders are mounted on both the motor and the load The continuous dual loop combines the two feedback signals to achieve stability This method r...

Page 94: ...is one inch and that this corresponds to 40 000 counts of the rotary encoder and 10 000 counts of the linear encoder The design approach is to drive the motor a distance which corresponds to 40 000 ro...

Page 95: ...ng When operating with servo motors motion smoothing can be accomplished with the IT and VT command These commands filter the acceleration and deceleration functions to produce a smooth velocity profi...

Page 96: ...KS The KS command smoothes the frequency of step motor pulses Similar to the commands IT and VT this produces a smooth velocity profile The step motor smoothing is specified by the following command...

Page 97: ...fter sensing the home switch The velocity profile generated is shown in Fig 6 7 The Home HM command can be used to position the motor on the index pulse after the home switch is detected This allows f...

Page 98: ...ion 79 SP 8000 Speed FE Y Find edge command BG Y Begin motion AM Y After complete MG FOUND HOME Print message DP 0 Define position as 0 EN End Artisan Technology Group Quality Instrumentation Guarante...

Page 99: ...POSITION HOME SWITCH INDEX PULSES MOTION REVERSE TOWARD HOME DIRECTION MOTION TOWARD INDEX DIRECTION MOTION BEGINS TOWARD HOME DIRECTION Figure 6 7 Motion intervals in the Home sequence Artisan Techno...

Page 100: ...t the latched position The steps to use the latch are as follows Give the AL XYZW command or ABCDEFGH for DMC 1080 to arm the latch for the specified axis or axes Test to see if the latch has occurred...

Page 101: ...82 Chapter 6 Programming Motion DMC 1000 THIS PAGE LEFT BLANK INTENTIONALLY Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 102: ...necessary The following sections in this chapter discuss all aspects of creating applications programs Using the DMC 1000 Editor to Enter Programs Application programs for the DMC 1000 may be created...

Page 103: ...cntrl P command moves the editor to the previous line cntrl I The cntrl I command inserts a line above the current line For example if the editor is at line number 2 and cntrl I is applied a new line...

Page 104: ...and end with an End EN statement Labels start with the pound sign followed by a maximum of seven characters The first character must be a letter after that numbers are permitted Spaces are not permit...

Page 105: ...37 characters on a single line after the NO command and can be used to include comments from the programmer as in the following example PATH NO 2 D CIRCULAR PATH VMXY NO VECTOR MOTION ON X AND Y VS 1...

Page 106: ...ndent programs simultaneously These programs are called threads and are numbered 0 through 3 where 0 is the main one Multitasking is useful for executing independent operations such as PLC functions t...

Page 107: ...formation which can help to debug a program Trace Commands The trace command causes the controller to send each line in a program to the host computer immediately prior to execution Tracing is enabled...

Page 108: ...he value 1500 and the command DA will return 13 To list the contents of the variable space use the interrogation command LV List Variables To list the contents of array space use the interrogation com...

Page 109: ...ake decisions based on the occurrence of an event Such events include waiting for motion to be complete waiting for a specified amount of time to elapse or waiting for an input to change logic levels...

Page 110: ...may be specified If position is already past the point then MR will trip immediately Will function on geared axis MC X or Y or Z or W A or B or C or D or E or F or G or H Halt program execution until...

Page 111: ...0000 Speed is 10000 PA 20000 Specify Absolute position BGX Begin motion AD 1000 Wait until 1000 counts SB1 Set output bit 1 EN End program Event Trigger Repetitive Position Trigger To set the output b...

Page 112: ...At speed Instruction Interpretation ATSPEED Program Label JG 50000 Specify jog speed AC 10000 Acceleration rate BGX Begin motion ASX Wait for at slew speed 50000 SB1 Set output 1 EN End program Event...

Page 113: ...ion OUTPUT Program label AT0 Initialize time reference SB1 Set Output 1 LOOP Loop AT 10 After 10 msec from reference CB1 Clear Output 1 AT 40 Wait 40 msec from reference and reset reference SB1 Set Ou...

Page 114: ...s given the jump will always occur Examples Number V1 6 Numeric Expression V1 V7 6 ABS V1 10 Array Element V1 Count 2 Variable V1 V2 Internal Variable _TPX 0 _TVX 500 I O V1 AN 2 IN 1 0 Multiple Condi...

Page 115: ...P Begin loop PA 1000 Position absolute 1000 BGX Begin move AMX Wait for motion complete WT 100 Wait 100 msec PA 0 Position absolute 0 BGX Begin move AMX Wait for motion complete WT 100 Wait 100 msec C...

Page 116: ...broutine L Define relative position movement on X and Y Begin motion AMX BGY AMY After motion on X Begin Y Wait for motion on Y to complete EN End subroutine L Stack Manipulation It is possible to man...

Page 117: ...tion Example Limit Switch This program prints a message upon the occurrence of a limit switch Note for the LIMSWI routine to function the DMC 1000 must be executing an applications program from memory...

Page 118: ...nput Interrupt on 1 JG 30000 60000 Jog BGXW Begin Motion LOOP JP LOOP EN Loop ININT Input Interrupt STXW AM Stop Motion TEST JP TEST IN 1 0 Test for Input 1 still low JG 30000 6000 Restore Velocities...

Page 119: ...be executed prompting the operator to enter a new number Mathematical and Functional Expressions Mathematical Expressions For manipulation of data the DMC 1000 provides the use of the following mathe...

Page 120: ...using bit wise operations as illustrated in the following example Instruction Interpretation TEST Begin main program IN ENTER LEN S6 Input character string up to 6 characters into variable LEN FLEN F...

Page 121: ...Using Functions V1 ABS V7 The variable V1 is equal to the absolute value of variable V7 V2 5 SIN POS The variable V2 is equal to five times the sine of the variable POS V3 IN 1 The variable V3 is equa...

Page 122: ...perations are also permitted To assign a string value the string must be in quotations String variables can contain up to six characters which must be in quotations Variable values may be assigned to...

Page 123: ...to the DMC 1000 command Commands which have an associated operand are listed in the Command Reference as Used as an Operand Yes Status commands such as Tell Position return actual values whereas actio...

Page 124: ...tation 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...

Page 125: ...2 SPEED 1 Returns array element value POSX 10 _TPX Assigns the 10th element of the array POSX the returned value from the tell position command CON 2 COS POS 2 Assigns the second element of the array...

Page 126: ...Capture COMMAND DESCRIPTION RA n m o p Selects up to four arrays eight arrays for DMC 1080 for data capture The arrays must be defined with the DM command RD type1 type2 type3 type4 Selects the type...

Page 127: ...DM XPOS 300 YPOS 300 Define X Y position arrays DM XERR 300 YERR 300 Define X Y error arrays RA XPOS XERR YPOS YERR Select arrays for capture RD _TPX _TEX _TPY _TEY Select data types PR 10000 20000 S...

Page 128: ...specified distance When the motion is complete a cutting head is activated to cut the material The length is variable and the operator is prompted to input it in inches Motion starts with a start butt...

Page 129: ...ys as well as other information using the interrogation commands the interrogation commands are described in chapter 5 Sending Messages Messages may be sent to the bus using the message command MG Thi...

Page 130: ...ween 1 and 255 Example MG 07 255 sends the ASCII characters represented by 7 and 255 to the bus Summary of Message Functions FUNCTION DESCRIPTION Surrounds text string Fn m Formats numeric values in d...

Page 131: ...here negative numbers have a negative sign The default format is PF 10 0 If the number of decimal places specified by PF is less than the actual value a nine appears in all the decimal places Examples...

Page 132: ...is the number of digits to the left of the decimal point 0 through 10 and n is the number of digits to the right of the decimal point 0 through 4 A negative sign for m specifies hexadecimal format The...

Page 133: ...ntroller interprets time in milliseconds All input parameters must be converted into these units For example an operator can be prompted to input a number in revolutions A program could be used such t...

Page 134: ...gle command to define the state of the entire 8 bit output port where 20 is output 1 21 is output 2 and so on A 1 designates that the output is on Example Using the output PORT Command op Instruction...

Page 135: ...l input in the range The parameter o is an interrupt mask If m and n are unused o contains a number with the mask A 1 designates that input to be enabled for an interrupt where 20 is bit 1 21 is bit 2...

Page 136: ...econd example shows a continuous move Example Position Follower Point to Point Objective The motor must follow an analog signal When the analog signal varies by 10V motor must move 10000 counts Method...

Page 137: ...quals 6370 counts and a slew speed of 5 inches per second for example equals 3185 count sec The input signal may be applied to I1 for example and the output signal is chosen as output 1 The motor velo...

Page 138: ...ing a cut along the circle Once the circular motion is completed the Z axis is raised and the motion continues to point C etc Assume that all of the 3 axes are driven by lead screws with 10 turns per...

Page 139: ...completion of Z motion CR 80000 270 360 Circle VE VS 40000 Feedrate BGS Start circular move AMS Wait for completion PR 80000 Move Z up BGZ Start Z move AMZ Wait for Z completion PR 21600 Move X SP 20...

Page 140: ...olution of 1000 lines or 4000 count rev This speed equals 3000 rpm 50 rev sec 200000 count sec The program reads the input voltage periodically and assigns its value to the variable VIN To get a speed...

Page 141: ...ibed below This design example addresses the basic problems of backlash in motion control systems The objective is to control the position of a linear slide precisely The slide is to be controlled by...

Page 142: ...s 980 counts it implies that a correction of 20 counts must be made However when the X axis is commanded to be at the position of 1000 suppose that the actual position is only 995 implying that X has...

Page 143: ...124 Chapter 7 Application Programming DMC 1000 THIS PAGE LEFT BLANK INTENTIONALLY Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 144: ...xis amplifier has separate amplifier enable lines This signal also goes low when the watch dog timer is activated or upon reset Note The standard configuration of the AEN signal is TTL active low Both...

Page 145: ...on These signals include Signal or Function Indication of Error POSERR Jumps to automatic excess position error subroutine Error Light Turns on when position error exceeds error limit OE Function Shut...

Page 146: ...relay STX Stop motor AMX After motor stops SHX Servo motor here to clear error RE Return to main program NOTE An applications program must be executing for the POSERR routine to function Limit Switch...

Page 147: ...MG FORWARD LIMIT Send message STX AMX Stop motion PR 1000 BGX AMX Move in reverse JP END End LR LR MG REVERSE LIMIT Send message STX AMX Stop motion PR1000 BGX AMX Move forward END End RE Return to m...

Page 148: ...uns away when connected to amplifier with no additional inputs Amplifier offset too large Adjust amplifier offset Same as above but offset adjustment does not stop the motor Damaged amplifier Replace...

Page 149: ...gh gain or too little damping Decrease KI and KP Increase KD Operation SYMPTOM CAUSE REMEDY Controller rejects command Responded with a Invalid Command Interrogate the cause with TC or TC1 Motor does...

Page 150: ...n at the basic level of closing the loop involves the subjects of modeling analysis and design These subjects will be covered in the following discussions The motion profiling is the generation of the...

Page 151: ...This program corresponds to the velocity profiles shown in Fig 10 3 Note that the profiled positions show where the motors must be at any instant of time Finally it remains up to the servo system to...

Page 152: ...the error is positive and it triggers an action which raises the water temperature until the temperature error is reduced sufficiently The closing of the servo loop is very similar Suppose that we wa...

Page 153: ...bility and accuracy Typically such a filter produces in addition to the proportional gain damping and integrator The combination of the three functions is referred to as a PID filter The filter parame...

Page 154: ...V The transfer function relating the input voltage V to the motor position P is P V K K S ST ST V t m e 1 1 where T RJ K m t 2 s and T L R e s and the motor parameters and units are Kt Torque constant...

Page 155: ...n amplifier that performs the commutation The combined transfer function of motor amplifier combination is the same as that of a similar brush motor as described by the previous equations Velocity Loo...

Page 156: ...encoder generates N pulses per revolution It outputs two signals Channel A and B which are in quadrature Due to the quadrature relationship between the encoder channels the position resolution is incr...

Page 157: ...grator It is equivalent to a continuous PID filter with a transfer function G s G s P sD I s P K 1 A 4 KP D T K A 4 T KD I C T KI 2T For example if the filter parameters of the DMC 1000 are KP 4 KD 36...

Page 158: ...igital filter gain KD 245 Digital filter zero KI 0 No integrator N 500 Counts rev Encoder line density T 1 ms Sample period The transfer function of the system elements are Motor M s P I Kt Js2 500 s2...

Page 159: ...c equals one This can be done by the Bode plot of A j c as shown in Fig 10 8 1 4 0 1 50 200 2000 W rad s Magnitude Figure 10 8 Bode plot of the open loop transfer function For the given example the c...

Page 160: ...d by a design example Consider a system with the following parameters Kt 0 83 Nm A Torque constant J 2 10 4 kg m2 System moment of inertia R 2 Motor resistance Ka 2 Amp Volt Current amplifier gain N 1...

Page 161: ...ude of G j500 A j500 L j500 160 and a phase arg G j500 arg A j500 arg L j500 135 194 59 In other words we need to select a filter function G s of the form G s P sD so that at the frequency c 500 the f...

Page 162: ...ed The procedure is simplified by the following table which summarizes the relationship between the various filters Equivalent Filter Form DMC 1000 18 Digital D z K z A z Cz z 1 Digital D z 4 KP 4 KD...

Page 163: ...144 Chapter 10 Theory of Operation DMC 1000 THIS PAGE LEFT BLANK INTENTIONALLY Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 164: ...Input Output Uncommitted Inputs Limits Home Abort Inputs 2 2K ohm in series with optoisolator Requires at least 1 mA for on Can accept up to 28 Volts without additional series resistor Above 28 Volts...

Page 165: ...00 elements DMC 1040 MX and DMC 1080 Program Size 500 lines x 40 characters 1000 lines x 80 characters DMC 1080 2000 lines x 40 characters DMC 1040 MX Connectors for DMC 1000 Main Board J2 Main 60 pin...

Page 166: ...General I O 26 pin IDC 1 Analog 1 2 Analog 2 3 Analog 3 4 Analog 4 5 Analog 5 6 Analog 6 7 Analog 7 8 Ground 9 5 Volts 10 Output 1 11 Output 2 12 Output 3 13 Output 4 14 Output 5 15 Output 6 16 Outpu...

Page 167: ...command Z 12 Amp enable Z 13 PWM Z STEP Z 14 Sign Z DIR Z 15 5 Volt 16 Motor command W 17 Amp enable W 18 PWM W STEP W 19 Sign W DIR W 20 Ground J6 Daughter Board Connector 60 pin For use only with a...

Page 168: ...el B F 43 Channel I F 44 Channel I F 45 Channel A G 46 Channel A G 47 Channel B G 48 Channel B G 49 Channel I G 50 Channel I G 51 Channel A H 52 Channel A H 53 Channel B H 54 Channel B H 55 Channel I...

Page 169: ...ux A E 18 Aux A E 19 5 Volt 20 Ground JD4 20 pin IDC Amplifiers 1 Motor Command E 2 Amp enable E 3 PWM E Step E 4 Sign E Dir E 5 NC 6 Motor Command F 7 Amp enable F 8 PWM F Step F 9 Sign F Dir F 10 NC...

Page 170: ...agnitude Mode Jumper SM the PWM signal is 0 for 0 Voltage 99 6 for full voltage and the sign of the Motor Command is available at the sign output PWM STEP OUT For stepmotors The STEP OUT pin produces...

Page 171: ...the controller along with parameter values and saved sequences are restored Forward Limit Switch When active inhibits motion in forward direction Also causes execution of limit switch subroutine LIMSW...

Page 172: ...MW motors SM must always be jumpered The Analog command is not valid with SM jumpered OPT Reserved JP21 MRST Master Reset enable Returns controller to factory default settings and erases EEPROM Requir...

Page 173: ...MP 1130 Three axis amplifier AMP 1140 Four axis amplifier MX option Memory expansion option to 2000 lines 8000 array elements 254 labels and 254 variables AF option Analog feedback option Uses analog...

Page 174: ...x 532 x x x x x 536 x x x x x 540 x x x x 544 x x x x x x 548 x x x x x 552 x x x x x 556 x x x x 560 x x x x x 564 x x x x 568 x x x x 572 x x x 576 x x x x x x 580 x x x x x 584 x x x x x 588 x x x...

Page 175: ...x 728 x x x 732 x x 736 x x x x 740 x x x 744 x x x 748 x x 752 x x x 756 x x 760 x x 764 x 768 x x x x x x 772 x x x x x 776 x x x x x 780 x x x x 784 x x x x x 788 x x x x 792 x x x x 796 x x x 800...

Page 176: ...x x x 900 x x x x 904 x x x x 908 x x x 912 x x x x 916 x x x 920 x x x 924 x x 928 x x x x 932 x x x 936 x x x 940 x x 944 x x x 948 x x 952 x x 956 x 960 x x x x 964 x x x 968 x x x 972 x x 976 x x...

Page 177: ...ascade DON T USE THIS 10 106 or 72h 11 107 or 73h 12 108 or 74h Mouse DSR 13 109 or 75h Math Co processor exception 14 110 or 76h Fixed Disk DON T USE THIS 15 111 or 77h ICM 1100 Interconnect Module T...

Page 178: ...elow Rev A B Terminal Rev C Terminal Label Description 2 GND Ground 1 1 GND Ground 2 4 ACMDX X input to servo amp 3 3 AENX X amp enable 4 6 PULSX X pulse input for stepper 5 5 DIRX X direction input f...

Page 179: ...r B 46 48 WAA W Auxiliary encoder A 47 47 WAA W Auxiliary encoder A 48 50 ZAB Z Auxiliary encoder B 49 49 ZAB Z Auxiliary encoder B 50 52 ZAA Z Auxiliary encoder A 51 51 ZAA Z Auxiliary encoder A 52 5...

Page 180: ...ncoder I 88 90 YI Y Main encoder I 89 89 ZA Z Main encoder A 90 92 ZA Z Main encoder A 91 91 ZB Z Main encoder B 92 94 ZB Z Main encoder B 93 93 ZI Z Main encoder I 94 96 ZI Z Main encoder I 95 95 WA...

Page 181: ...7 CHB 8 CHB 9 INDEX 10 INDEX CAUTION The ICM 1100 10 pin connectors are designed for the N23 and N34 encoders from Galil If you are using Galil s Motor 5 500 Motor 50 1000 or Motor 500 1000 you must...

Page 182: ...Weight 4 pounds Mounting Keyholes 1 4 Gain 1 amp volt DB 10072 OPTO 22 Expansion Option The DB 10072 is a separate full length PC card designed to work with OPTO 22 I O isolation products that featur...

Page 183: ...utput bits The OQ command set 16 bits at one time The command syntax for the command is the following OQ m n o where m n and o range from 0 to 65535 The data fields define the outputs as follows Field...

Page 184: ...32 Ground 33 3 7 32 34 Ground 35 3 6 31 36 Ground 37 3 5 30 38 Ground 39 3 4 29 40 Ground 41 3 3 28 42 Ground 43 3 2 27 44 Ground 45 3 1 26 46 Ground 47 3 0 25 48 Ground 49 volts 50 Ground J2 Pinout P...

Page 185: ...64 2 Ground 3 7 6 63 4 Ground 5 7 5 62 6 Ground 7 7 4 61 8 Ground 9 7 3 60 10 Ground 11 7 2 59 12 Ground 13 7 1 58 14 Ground 15 7 0 57 16 Ground 17 8 7 72 18 Ground 19 8 6 71 20 Ground 21 8 5 70 22 Gr...

Page 186: ...1 through 8 on the DMC 1000 n 1 reads inputs 9 through 16 on the DB 10096 n 2 reads inputs 17 through 24 and so on as shown in the table below For example if inputs 17 through 24 are high V1 _TI2 assi...

Page 187: ...1 out 26 22 out 27 23 out 28 24 out 29 25 out 30 26 out 31 27 out 32 28 out 33 29 out 34 30 out 35 31 out 36 32 out 37 33 out 38 34 out 39 35 out 40 36 NC 37 NC 38 GND 39 GND 40 NC 41 in 9 42 in 10 43...

Page 188: ...23 in 44 24 in 45 25 in 46 26 in 47 27 in 48 28 in 49 29 in 50 30 in 51 31 in 52 32 in 53 33 in 54 34 in 55 35 in 56 36 NC 37 NC 38 GND 39 GND 40 NC 41 in 57 42 in 58 43 in 59 44 in 60 45 in 61 46 in...

Page 189: ...th is specified as a collection of segments For the purpose of specifying the path define a special X Y coordinate system whose origin is the starting point of the sequence Each linear segment is spec...

Page 190: ...nd Yk are the changes in X and Y positions along the linear segment The length of the circular arc is L R k k k 2 360 The total travel distance is given by D Lk k n 1 The velocity profile may be speci...

Page 191: ...the velocities along the X and Y axes for the path shown in Fig 12 2 are given in Fig 12 4 Fig 12 4a shows the vector velocity It also indicates the position point along the path starting at A and en...

Page 192: ...16 bits Maximum move length 8 x 106 8 x 106 2 x 109 Sample time 1 msec 1 msec 0 5 msec 4 axes Program memory 500 lines 32 chr 500 lines 32 chr 500 lines 40 chr EEPROM memory for parameter storage Non...

Page 193: ...ED Edit mode EN End program EO Echo ON OFF ER Define error limit FA Acceleration feedforward FE Find edge GN Gain HM Home II Interrupt for input IN Input prompt IP Increment position JG Jog mode JP C...

Page 194: ...te program ZR Filter zero ZS Zero subroutine stack New Commands AL Arm latch AR After relative distance trippoint AT After time AV After vector distance trippoint A i n Define array element BL Set rev...

Page 195: ...n TN Tangent TV Tell velocity VD Vector deceleration VE Vector sequence end VF Variable format VM Coordinated motion mode VT Vector time constant S curve WC Wait for contour data Deleted Commands Dele...

Page 196: ...Enable S curve Use VT VR Specify S curve Use VT ZM Zero master Use Electronic Gearing GA GR DMC 600 DMC 1000 Pin out Conversion Table DMC 600 DMC 1000 Function Pin Pin 1 1 Ground 2 2 5V 3 3 Error 4 4...

Page 197: ...38 1 60 Ground 39 N C 40 18 J5 Input 8 41 19 J5 Input 7 42 20 J5 Input 6 43 21 J5 Input 5 44 22 J5 Input 4 45 23 J5 Input 3 46 24 J5 Input 2 47 25 J5 Input 1 48 8 J5 Ground 49 17 J5 Output 7 50 16 J5...

Page 198: ...Control by Microprocessors by Dr Jacob Tal Contacting Us Galil Motion Control 203 Ravendale Drive Mountain View CA 94043 Phone 650 967 1700 Fax 650 967 1751 BBS 650 964 8566 8 N 1 up to 14 400 baud I...

Page 199: ...d with transportation and insurance prepaid We will reship at our expense only to destinations in the United States Any defect in materials or workmanship determined by Galil Motion Control to be attr...

Page 200: ...Auxiliary Encoder 1 5 25 59 71 75 150 152 160 1 5 25 59 71 75 150 152 Dual Encoder 74 107 74 107 B Backlash 73 75 122 73 75 122 Backlash Compensation Dual Loop 71 75 71 75 122 71 75 71 75 122 Begin Mo...

Page 201: ...5 25 59 71 75 71 75 150 152 Differential 12 14 130 12 15 130 Dual Encoder 74 107 74 107 Index Pulse 12 26 78 12 26 78 Quadrature 1 3 4 114 118 126 137 1 3 4 114 118 126 137 Error Handling 25 86 97 98...

Page 202: ...04 23 95 103 104 Interrogation 19 20 43 44 110 111 19 20 43 44 110 111 Interrupt 1 3 6 7 9 33 34 36 39 86 87 93 97 98 116 1 3 6 7 9 33 34 36 39 86 87 93 97 98 116 Invert Loop Polarity 130 J Jog 20 92...

Page 203: ...of Data 110 Clear Bit 114 Set Bit 114 P PID 14 134 138 143 15 134 138 143 Play Back 108 POSERR 86 97 98 126 27 86 97 98 126 27 Position Error 13 19 14 19 Position Capture 81 Latch 30 81 30 81 Teach 70...

Page 204: ...1 Play Back 108 Position Capture 81 Record 68 70 105 108 109 68 70 105 108 109 Tell Error Position Error 13 19 14 19 Tell Position 39 92 104 6 39 92 104 6 Terminal 26 29 83 103 111 25 29 83 103 111 Th...

Page 205: ...188 Index DMC 1000 Z Zero Stack 100 116 100 116 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 206: ...uipment Have surplus equipment taking up shelf space We ll give it a new home Learn more Visit us at artisantg com for more info on price quotes drivers technical specifications manuals and documentat...

Reviews: