background image

CDS-3310 

Chapter

 7 Application Programming 

i

 21 

NOTE:

 When the trace function is enabled, the line numbers as well as the command line will be 

displayed as each command line is executed. 

Error Code Command 

When there is a program error, the CDS-3310 halts the program execution at the point where the error 
occurs.  To display the last line number of program execution, issue the command, MG _ED.  

The user can obtain information about the type of error condition that occurred by using the command, 
TC1.  This command reports back a number and a text message which describes the error condition.  
The command, TC0 or TC, will return the error code without the text message.  For more information 
about the command, TC, see the Command Reference. 

Stop Code Command 

The status of motion for each axis can be determined by using the stop code command, SC.  This can 
be useful when motion on an axis has stopped unexpectedly.  The command SC will return a number 
representing the motion status.  See the command reference for further information. 

RAM Memory Interrogation Commands 

For debugging the status of the program memory, array memory, or variable memory, the CDS-3310 
has several useful commands.  The command, DM ?, will return the number of array elements 
currently available.  The command, DA ?, will return the number of arrays which can be currently 
defined.  For example, a standard CDS-3310 will have a maximum of 8000 array elements in up to 30 
arrays.  If an array of 100 elements is defined, the command DM ? will return the value 7900 and the 
command DA ? will return 29. 

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 command, LA (List Arrays).  To list the contents of 
the Program space, use the interrogation command, LS (List).  To list the application program labels 
only, use the interrogation command, LL (List Labels). 

Operands  

In general, all operands provide information which may be useful in debugging an application 
program.  Below is a list of operands which are particularly valuable for program debugging.  To 
display the value of an operand, the message command may be used.  For example, since the operand, 
_ED contains the last line of program execution, the command MG _ED will display this line number. 

 

_ED contains the last line of program execution.  Useful to determine where program stopped. 

_DL contains the number of available labels. 

_UL contains the number of available variables. 

_DA contains the number of available arrays. 

_DM contains the number of available array elements. 

_AB contains the state of the Abort Input 

_LFa contains the state of the forward limit switch for the 'a' axis 

_LRa contains the state of the reverse limit switch for the 'a' axis 

_RS contains the state of the power-up error status 

Содержание CDS-3310

Страница 1: ...310 Manual Rev 1 0f By Galil Motion Control Inc Galil Motion Control Inc 270 Technology Way Rocklin California 95765 Phone 916 626 0101 Fax 916 626 0102 E mail Address support galilmc com URL www gali...

Страница 2: ...4 axis system should note that axes are labeled XYZW Users of a 1 8 axis system should note that axes are labeled A B C D E F G H The axes A B C D may be used interchangeably with X Y Z W WARNING Mach...

Страница 3: ...stall Windows Communication Software 9 Step 4 Establish Communication 10 Step 5 Make Connections to Encoder 11 Step 6 Configure Amplifier 11 Step 7a Connect Brush Servo Motor 12 Step 7b Connect Brushl...

Страница 4: ...solicited Messages Generated by Controller 33 Galil Software Tools and Libraries 34 Chapter 5 Command Basics 35 Introduction 35 Command Syntax ASCII 35 Command Syntax Binary 37 Binary Command Format 3...

Страница 5: ...eration 15 Operand Summary Homing Operation 15 High Speed Position Capture The Latch Function 15 Example 15 Chapter 7 Application Programming 16 Overview 16 Using the DOS Editor to Enter Programs 16 E...

Страница 6: ...erting to User Units 49 Hardware I O 50 Digital Outputs 50 Digital Inputs 51 Analog Inputs 51 Analog Output 52 The Auxiliary Encoder Inputs 52 Input Interrupt Function 53 Extended I O of the CDS 3310...

Страница 7: ...81 Accessing the I O of the Slaves 81 Appendices 82 Electrical Specifications 82 Servo Control 82 Input Output 82 Power 82 Performance Specifications 83 Connectors for CDS 3310 84 J1 MOTOR Output 4 p...

Страница 8: ...bit Analog Inputs 95 Interfacing to the Digital I O 95 Using Opto 22 G4 Series Racks with DB 28040 95 Pinout 96 Layout 97 CABLE 15 1m 98 Communicating with OPTO 22 SNAP B3000 ENET 98 List of Other Pu...

Страница 9: ...x5 21x2 3 22x0 or CDS 3310 Ethernet controllers In this mode of operation each controller must contain it s own application program and or a host PC must communicate with each controller individually...

Страница 10: ...h as Visual Basic C C etc Drivers for DOS Linux QNX Windows 3 1 95 98 2000 ME NT and XP are available Amplifier Specifications The CDS 3310 integrated amplifier is a brush brushless trans conductance...

Страница 11: ...ms and arrays It also contains the CDS 3310 firmware Motor Interface Galil s GL 1800 custom sub micron gate array performs quadrature decoding of each encoder at up to 12 MHz For standard servo operat...

Страница 12: ...n should be 1 A V Encoder An encoder translates motion into electrical pulses which are fed back into the controller The CDS 3310 accepts feedback from either a rotary or linear encoder Typical encode...

Страница 13: ...g timer which checks for proper microprocessor operation The timer toggles the Amplifier Enable Output AMPEN which can be used to switch the amplifier off in the event of a serious CDS 3310 failure Th...

Страница 14: ...6 i Chapter 2 Getting Started CDS 3310 Chapter 2 Getting Started This section describes how to begin communicating with a single controller and how to begin controlling a single motor...

Страница 15: ...re 2 6 CDS 3310 Recommended Components For a complete system Galil recommends the following elements 1 CDS 3310 Motion Controller 2 ICM 3300 interconnect module with screw terminals and opto isolation...

Страница 16: ...mplifier Step 7a Connect brush servo motor or Step 7b Connect brushless servo motor Step 8 Close the Loop Step 9 Tune the servo system Step 1 Install Jumpers on the CDS 3310 Ethernet Speed 10B Install...

Страница 17: ...ed to be issued to turn the motor off Option OPT Reserved Step 2 Connect 18 to 72 VDC Power to the Controller Connect power to the connector labeled J5 POWER You will need to crimp two pins onto the a...

Страница 18: ...del e g CDS 3310 You then need to choose serial or Ethernet connection The registry information will show a default Comm Port of 1 and a default Comm Speed of 19200 appears This information can be cha...

Страница 19: ...cannot observe the encoder signals try a different encoder 3 There is a hardware failure in the controller connect the same encoder to a different controller If the problem disappears you probably hav...

Страница 20: ...b Connect Brushless Servo Motor Step A Connect Hall Sensors To configure an axis for brushless motor operation connect the Hall sensors to pins HALA HALB and HALC on 15 pin high density connector J2 E...

Страница 21: ...m the controller for 300 milliseconds If the controller is able to move the motor and the Hall transitions are not correct the controller will alert the operator and recommend which motor phases to ch...

Страница 22: ...tart set the gains to zero with the instructions KIX 0 return Integrator gain KPX 0 return Proportional gain KDX 0 return Derivative gain Increase KD gradually maximum is 4095 and stop after the motor...

Страница 23: ...ration and deceleration rates of 100 000 counts s2 In this example the motor turns and stops Instruction Interpretation PR1000 Distance SP20000 Speed DC 100000 Deceleration AC 100000 Acceleration BG S...

Страница 24: ...the A motor will probably not move since the output signal will not be sufficient to overcome the friction If the motion starts it can be stopped easily by a touch of a finger Increase the torque leve...

Страница 25: ...ent position as zero PR 4000 Initial position SP 2000 Set speed BG Move A AM Wait until move is complete WT 500 Wait 500 ms B v1 _TPA Determine distance to zero PR v1 2 Command A move 1 2 the distance...

Страница 26: ...18 i Chapter 2 Getting Started CDS 3310 THIS PAGE LEFT PLANK INTENTIONALLY...

Страница 27: ...puts The general use inputs are TTL and are labeled DGTL IN 1 to DGTL IN 8 on the silkscreen on the sheet metal These inputs can be interrogated with the use of the command TI Tell Inputs the operand...

Страница 28: ...en reached by a moving part in the motion control system A reference point can be a point in space or an encoder index pulse The Home input detects any transition in the state of the switch and change...

Страница 29: ...dependent on the state of the off on error function OE for each axis If the Off On Error function is enabled for any given axis the motor for that axis will be turned off when the abort signal is gen...

Страница 30: ...y to disable the amplifier and is exposed for optional external connection The signal toggles with the commands MO and SH Output Compare The output compare signal is TTL and is labeled COMPARE on the...

Страница 31: ...diagram below shows how to wire a brake The brake is controlled with the MO FET off and SH FET on commands The OS command allows the brake to be controlled with SB and CB Brake Output Wiring Diagram A...

Страница 32: ...24 i Chapter 3 Connecting I O CDS 3310 THIS PAGE LEFT PLANK INTENTIONALLY...

Страница 33: ...cating Each packet sent is acknowledged when received If no acknowledgement is received the information is assumed lost and is resent Unlike TCP IP UDP IP does not require a connection This protocol i...

Страница 34: ...255 require that the corresponding fields in the IP address of the controller be the same as the IP address of the PC For instance if the Subnet Mask of the PC is 255 255 0 0 and the IP address is 192...

Страница 35: ...s 04 Read Input Registers Read Words 05 Force Single Coil Write One Bit 06 Preset Single Register Write One Word 07 Read Exception Status Read Error Code 15 Force Multiple Coils Write Multiple Bits 16...

Страница 36: ...le 6 Multicasting A multicast may only be used in UDP IP and is similar to a broadcast where everyone on the network gets the information but specific to a group In other words all devices within a sp...

Страница 37: ...d Map DATA TYPE ITEM BLOCK UB 1st byte of header Header UB 2nd byte of header Header UB 3rd byte of header Header UB 4rth byte of header Header UW sample number I block UB general input 0 I block UB g...

Страница 38: ...B block SL b axis velocity B block SW b axis torque B block SW 0 or b axis analog DB 28040 B block UW c axis status C block UB c axis switches C block UB c axis stopcode C block SL c axis reference p...

Страница 39: ...ock SW 0 or f axis analog DB 28040 F block UW g axis status G block UB g axis switches G block UB g axis stopcode G block SL g axis reference position G block SL g axis motor position G block SL g axi...

Страница 40: ...eneral Status Information 1 Byte BIT 7 BIT6 BIT5 BIT4 BIT3 BIT 2 BIT 1 BIT 0 Program Running N A N A N A N A Waiting for input from IN command Trace On Echo On Axis Switch Information 1 Byte BIT 7 BIT...

Страница 41: ...IFO buffer After the instruction is decoded the CDS 3310 returns a response to the port from which the command was generated If the instruction was valid the controller returns a colon or a question m...

Страница 42: ...te 2437 Galil Software Tools and Libraries API Application Programming Interface software is available from Galil The API software is written in C and is included in the Galil CD ROM They can be used...

Страница 43: ...llowing chapter Binary commands cannot be used in Applications programming This section describes the CDS 3310 instruction set and syntax A summary of commands as well as a complete listing of all CDS...

Страница 44: ...ing data Here data is specified individually using a single axis specifier such as A B C or D An equals sign is used to assign data to that axis For example PRA 1000 Specify a position relative moveme...

Страница 45: ...ent the binary value 01101101 Negative values are represented in 2 s complement Binary Command Format All binary commands have a 4 byte header and is followed by data fields The 4 bytes are specified...

Страница 46: ...ere A1 is the command number for ST 00 specifies 0 data fields 00 specifies no coordinated motion 01 specifies stop X bit 0 20 1 Binary command table COMMAND NO COMMAND NO COMMAND NO reserved 80 reser...

Страница 47: ...ns a When the controller receives an invalid command the user can request the error code The error code will specify the reason for the invalid command response To request the error code type the comm...

Страница 48: ...manded Values Most commands can be interrogated by using a question mark as the axis specifier Type the command followed by a for each axis requested PR Request A B C D values PR Request B value only...

Страница 49: ...PR SP AC DC Velocity control where no final endpoint is prescribed Motion stops on Stop command Independent Jogging JG AC DC ST Absolute positioning mode where absolute position targets may be sent t...

Страница 50: ...ly ABC or D axis specifiers are required to select the axes for motion When no axes are specified this causes motion to begin on all axes The speed SP and the acceleration AC can be changed at any tim...

Страница 51: ...tion if in a move _PRx Returns current incremental distance specified for the x axis Examples Absolute Position Movement Instruction Interpretation PA 10000 20000 Specify absolute A B position AC 1000...

Страница 52: ...and then decelerate such that the final position agrees with the command position PR The C axis accelerates but before the specified speed is achieved must begin deceleration such that the axis will s...

Страница 53: ...otion smoothing JG A B C D Specifies jog speed and direction ST ABCD Stops motion Parameters can be set with individual axes specifiers such as JGB 2000 set jog speed for B axis to 2000 Operand Summar...

Страница 54: ...constantly update the position target it is moving towards Galil motion controllers support this type of motion with the position tracking mode This mode will allow scheduled or random updates to the...

Страница 55: ...to 5000 however partway through the motion the object that was being tracked changed direction so the host program determined that the actual target position should be 2000 cts at that time Figure 2 s...

Страница 56: ...otion towards position 5000 changes the target to 2000 and then changes it again to 8000 Figure 4 shows the plot of position vs time Figure 5 plots velocity vs time and Figure 6 demonstrates the use o...

Страница 57: ...ng Mode COMMAND DESCRIPTION AC n n n n n n n n Acceleration settings for the specified axes AP n n n n n n n n Trip point that holds up program execution until an absolute position has been reached DC...

Страница 58: ...s traveling at high speeds it is desirable to have the gear ratio ramp gradually to minimize large changes in velocity on the slave axis when the gearing is engaged For example if the master axis is a...

Страница 59: ...ectronic Gearing Over a Specified Interval Objective Run a geared motor at a speed of 1 132 times the speed of an external master Because the master is traveling at high speeds it is desirable for the...

Страница 60: ...der as the master GR 1 132 Specify gear ratios Now suppose the gear ratio of the A axis is to change on the fly to 2 This can be achieved by commanding GR 2 Specify gear ratio for A axis to be 2 Phase...

Страница 61: ...this example the position of x is always expressed in the range between 0 and 6000 Similarly the slave position is also redefined such that it starts at zero and ends at 1500 At the end of a cycle wh...

Страница 62: ...x indicates the corresponding slave position For this example the table may be specified by ET 0 0 ET 1 3000 ET 2 2250 ET 3 1500 This specifies the ECAM table Step 5 Enable the ECAM To enable the ECAM...

Страница 63: ...f the parameter is outside the master cycle the stopping is instantaneous To illustrate the complete process consider the cam relationship described by the equation X 0 5 N 100 sin 0 18 N where N is t...

Страница 64: ...P Loop to construct table from equation P n 3 6 Note 3 6 0 18 20 S SIN P 100 Define sine position X n 10 S Define slave position ET n X Define table n n 1 JP LOOP n 100 Repeat the process EN Now suppo...

Страница 65: ...Exit the ECAM mode EN End of the program Contour Mode The CDS 3310 also provides a contouring mode This mode allows any arbitrary position curve to be prescribed for 1 to 8 axes This is ideal for fol...

Страница 66: ...ction Interpretation A Label CMA Specifies A axis for contour mode DT 2 Specifies first time interval 22 ms CD 48 WC Specifies first position increment DT 3 Specifies second time interval 23 ms CD 240...

Страница 67: ...be complete before next data record is processed General Velocity Profiles The Contour Mode is ideal for generating any arbitrary velocity profiles The velocity profile can be specified as a mathemat...

Страница 68: ...n value at intervals of 8 ms This is stored at the array pos Then the difference between the positions is computed and is stored in the array dir Finally the motors are run in the contour mode POINTS...

Страница 69: ...l where n is 2n samples m is number of records to be captured RC or _RC Returns a 1 if recording Record and Playback Example Instruction Interpretation RECORD Begin Program DP0 Define position for A a...

Страница 70: ...may be mounted in any position The most common use for the second encoder is backlash compensation described below The second encoder may be a standard quadrature type or it may provide pulse and dir...

Страница 71: ...compensates for the backlash continuously The second method the sampled dual loop reads the load encoder only at the end point and performs a correction This method is independent of the size of the b...

Страница 72: ...RRECT Correction loop AMA Wait for motion completion v1 10000 _DEA Find linear encoder error v2 _TEA 4 v1 Compensate for motor error JP END ABS v2 2 Exit if error is small PR v2 4 Correction move BGA...

Страница 73: ...s The following example illustrates the effect of smoothing Fig 6 9 shows the trapezoidal velocity profile and the modified acceleration and velocity Note that the smoothing process results in longer...

Страница 74: ...d This allows for finer positioning on initialization The command sequence HM and BG causes the following sequence of events to occur 1 Upon begin motor accelerates to the slew speed The direction of...

Страница 75: ...DIRECTION POSITION HOME SWITCH _HMA 1 _HMX 0 POSITION MOTION REVERSE TOWARD HOME DIRECTION MOTION BEGINS TOWARD HOME DIRECTION VELOCITY VELOCITY VELOCITY POSITION POSITION INDEX PULSES POSITION HOME S...

Страница 76: ...ch function is enabled for active low operation the position will be captured within 12 microseconds When the latch function is enabled for active high operation the position will be captured within 3...

Страница 77: ...is chapter discuss all aspects of creating applications programs The program memory size is 80 characters x 1000 lines Using the DOS Editor to Enter Programs The CDS 3310 has an internal editor which...

Страница 78: ...nd 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 will be inserted between lines 1 and 2 This new line will be labelled line 2 Th...

Страница 79: ...t 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 permitted Valid labels BEGIN SQUARE X1...

Страница 80: ...and can be used to include comments from the programmer as in the following example Instruction Interpretation PATH Label NO This is a comment Comment No Operation NOTE The NO command is an actual co...

Страница 81: ...reference CB1 Clear Output 1 JP LOOP1 Repeat Loop1 TASK2 Task2 label XQ TASK1 1 Execute Task1 LOOP2 Loop2 label PR 1000 Define relative distance BGX Begin motion AMX After motion done WT 10 Wait 10 ms...

Страница 82: ...of arrays which can be currently defined For example a standard CDS 3310 will have a maximum of 8000 array elements in up to 30 arrays If an array of 100 elements is defined the command DM will retur...

Страница 83: ...program flow can be altered with the use of event triggers trippoints and conditional jump statements Event Triggers Trippoints To function independently from the host computer the CDS 3310 can be pr...

Страница 84: ...ill trip immediately Will function on geared axis or aux inputs MR A or B or C or D or E or F or G or H Halt program execution until after reverse motion reached absolute position Only one axis may be...

Страница 85: ...ounts from the start of the move The accuracy of the trippoint is the speed multiplied by the sample period Instruction Interpretation SETBIT Label SP 10000 Speed is 10000 PA 20000 Specify Absolute po...

Страница 86: ...End program Example Set Output when At Speed Instruction Interpretation ATSPEED Program Label JG 50000 Specify jog speed AC 10000 Acceleration rate BGA Begin motion ASA Wait for at slew speed 50000 S...

Страница 87: ...useful for testing events in real time They allow the CDS 3310 to make decisions without a host computer For example the CDS 3310 can decide between two motion profiles based on the state of an input...

Страница 88: ...med V1 V2 V3 and V4 JP TEST V1 V2 V3 V4 In this example this statement will cause the program to jump to the label TEST if V1 is less than V2 and V3 is less than V4 To illustrate this further consider...

Страница 89: ...e associated ENDIF command is executed OR an ELSE command occurs in the program see discussion of ELSE command below NOTE An ENDIF command must always be executed for every IF command that has been ex...

Страница 90: ...cuted if 1st IF conditional true MG INPUT 1 AND INPUT 2 ARE ACTIVE Message executed if 2nd IF is true ELSE ELSE command for 2nd IF statement MG ONLY INPUT 1 IS ACTIVE Message executed if 2nd IF is fal...

Страница 91: ...the command BP Automatic Subroutines for Monitoring Conditions Often it is desirable to monitor certain conditions continuously without tying up the host or CDS 3310 program sequences The CDS 3310 ca...

Страница 92: ...Message 004 RE Return to main program control Q Quit Edit Mode XQ LOOP Execute Dummy Program JG 5000 Jog BGA Begin Motion Now when a forward limit switch occurs on the A axis the LIMSWI subroutine wi...

Страница 93: ...broutine MG A fell short Send out a message EN End subroutine This simple program will issue the message A fell short if the A axis does not reach the commanded position within 1 second of the end of...

Страница 94: ...to original speed EN1 1 Re enable trip point and communication interrupt Example Command Error Instruction Interpretation BEGIN Begin main program IN ENTER SPEED speed Prompt for speed JG speed BGA Be...

Страница 95: ...Begin thread 0 continuous loop JP A EN End of thread 0 B Begin thread 1 n 1 Create new variable KP n Set KP to value of n an invalid value TY Issue invalid command EN End of thread 1 CMDERR Begin comm...

Страница 96: ...ogical Or These operators allow for bit wise operations on any valid CDS 3310 numeric operand including variables array elements numeric values functions keywords and arithmetic expressions The bit wi...

Страница 97: ...er types in the string TESTME at the input prompt the controller will respond with the following T Response from command MG len6 S4 E Response from command MG len5 S4 S Response from command MG len4 S...

Страница 98: ...or determined by program calculations For example a cut to length application may require that a cut length be variable Instruction Interpretation PR posa Assigns variable posa to PR command JG rpmb 7...

Страница 99: ...to SP command Displaying the value of variables at the terminal Variables may be sent to the screen using the format variable For example v1 returns the value of the variable v1 Operands Operands all...

Страница 100: ...has a numeric range of 4 bytes of integer 231 followed by two bytes of fraction 2 147 483 647 9999 Arrays can be used to capture real time data such as position and torque values In the contouring mod...

Страница 101: ...er 10 msec The values are stored in an array named POS The variable count is used to increment the array element counter The above example can also be executed with the automatic data capture feature...

Страница 102: ...ontinuously in a circular manner _RD is the recording pointer and indicates the address of the next array element N 0 stops recording RC Returns a 0 or 1 where 0 denotes not recording 1 specifies reco...

Страница 103: ...the end of the input message and the variable name Example Cut to Length In this example a length of material is to be advanced a specified distance When the motion is complete a cutting head is acti...

Страница 104: ...terpretation JP LOOP P1CD 3 Checks to see if status code is 3 number received JP P P1CH V Checks if last character received was a V PR P1NM Assigns received number to position JS XAXIS P1ST X Checks t...

Страница 105: ...PRINT Routine to print message to terminal MG TO CHANGE SPEEDS Print message MG TYPE A OR B MG TYPE S TO STOP JOGLOOP Loop to change Jog speeds JG speedA speedB Set new jog speed JP JOGLOOP EN End of...

Страница 106: ...roller can be commanded to return the values of variables and arrays as well as other information using the interrogation commands the interrogation commands are described in chapter 5 Sending Message...

Страница 107: ...erminal Any ASCII character can be sent by using the format n where n is any integer between 1 and 255 Example MG 07 255 sends the ASCII characters represented by 7 and 255 to the Ethernet serial port...

Страница 108: ...TE The numeric values may be formatted in decimal or hexadecimal with a specified number of digits to the right and left of the decimal point using the PF command Position Format is specified by PF m...

Страница 109: ...r of digits to the left of the decimal and m is the number of digits to the right of the decimal TP F2 2 Tell Position in decimal format 2 2 05 00 05 00 00 00 07 00 Response from Interrogation Command...

Страница 110: ...MG command Converting to User Units Variables and arithmetic operations make it easy to input data in desired user units such as inches or RPM The CDS 3310 position parameters such as PR PA and VP hav...

Страница 111: ...non zero Clear Output 1 if POS equals 0 OB 2 IN 1 Set Output 2 if Input 1 is high If Input 1 is low clear Output 2 OB 3 IN 1 IN 2 Set Output 3 only if Input 1 and Input 2 are high OB 4 COUNT 1 Set Ou...

Страница 112: ...p after input 1 goes low AMA JP S After motion repeat EN Analog Inputs The controller has two analog inputs and provides eight analog inputs with the addition of the DB 28040 The value of these inputs...

Страница 113: ...The resolution of the Digital to Analog conversion is 16 bits Example Objective Produce a sinusoidal analog signal with a specified amplitude and period Instruction Interpretation Amplitud 5 5 Volts t...

Страница 114: ...Interrupt RI command is used to return from this subroutine to the place in the program where the interrupt had occurred If it is desired to return to somewhere else in the program after the execution...

Страница 115: ...41 48 5 23 8 49 56 6 24 16 The simplest method for determining n Step 1 Determine which 8 bit I O banks to be configured as outputs Step 2 From the table determine the decimal value for each I O bank...

Страница 116: ...ast significant bit of bank 2 assuming bank 2 is configured as an input Example Applications Wire Cutter An operator activates a start switch This causes a motor to advance the wire a distance of 10 W...

Страница 117: ...by Sampled Dual Loop The continuous dual loop enabled by the DV1 function is an effective way to compensate for backlash In some cases however when the backlash magnitude is large it may be difficult...

Страница 118: ...equal resolution on both linear and rotary sensors To illustrate the control method assume that the rotary encoder is used as a feedback for the X axis and that the linear sensor is read and stored i...

Страница 119: ...ine the engineer should design his overall system with protection against a possible component failure on the CDS 3310 Galil shall not be liable or responsible for any incidental or consequential dama...

Страница 120: ...lit on the amplifier until the voltage drops below 74 V This error is monitored with bit 1 of the TA0 command It is possible to get into this condition if the power supply voltage is too high or if th...

Страница 121: ...off the motors under certain error conditions This function is know as Off On Error To activate the OE function for each axis specify 1 for A B C and D axis To disable this function specify 0 for the...

Страница 122: ...h is activated and that axis motor is moving in that direction The RE command ends the subroutine The state of the forward and reverse limit switches may also be tested during the jump on condition st...

Страница 123: ...v1 _TA1 v2 _TA2 Set variable v1 to general amplifier set v2 to Hall Error IF v2 1 Check Hall error on X axis MG Hall Error on X Alert Operator ENDIF IF v2 2 Check Hall error on Y axis MG Hall Error o...

Страница 124: ...CDS 3310 Chapter 8 Hardware Software Protection i 63 THIS PAGE LEFT PLANK INTENTIONALLY...

Страница 125: ...bles Installation SYMPTOM CAUSE REMEDY Motor runs away when connected to amplifier with no additional inputs Amplifier offset too large Adjust amplifier offset Same as above but offset adjustment does...

Страница 126: ...Motor oscillates Too high gain or too little damping Decrease KI and KP Increase KD Operation SYMPTOM CAUSE REMEDY Controller rejects command Responded with a Anything Interrogate the cause with TC o...

Страница 127: ...irst level the closing of the loop assures that the motor follows the commanded position This is done by closing the position loop using a sensor The operation at the basic level of closing the loop i...

Страница 128: ...nagement The top manager the motion program may specify the following instruction for example PR 6000 4000 SP 20000 20000 AC 200000 00000 BG A AD 2000 BG B EN This program corresponds to the velocity...

Страница 129: ...duced sufficiently The closing of the servo loop is very similar Suppose that we want the motor position to be at 90 degrees The motor position is measured by a position sensor often an encoder and th...

Страница 130: ...ter The filter parameters are represented by the three constants KP KI and KD which correspond to the proportional integral and derivative term respectively The damping element of the filter acts as a...

Страница 131: ...I W P CURRENT SOURCE Figure 10 6 Mathematical model of the motor and amplifier Encoder The encoder generates N pulses per revolution It outputs two signals Channel A and B which are in quadrature Due...

Страница 132: ...G s G s P sD I s a S a P 4KP D 4T KD I KI 2T a 1 T ln 1 B where T is the sampling period For example if the filter parameters of the CDS 3310 are KP 4 KD 36 KI 2 PL 0 75 T 0 001 s the digital filter...

Страница 133: ...period is T 0 001 for example H s becomes H s 2000 s 2000 However in most applications H s may be approximated as one This completes the modeling of the system elements Next we discuss the system anal...

Страница 134: ...in Fig 10 7 50 0 980s 318 V ENCODER 500 S2 FILTER 2000 S 2000 0 0003 4 ZOH DAC AMP MOTOR Figure 10 7 Mathematical model of the control system The open loop transfer function A s is the product of all...

Страница 135: ...can be selected by the user for the best compensation The following discussion presents an analytical design method The Analytical Method The analytical design method is aimed at closing the loop at a...

Страница 136: ...phase Arg L j500 180 tan 1 500 2000 194 G s is selected so that A s has a crossover frequency of 500 rad s and a phase margin of 45 degrees This requires that A j500 1 Arg A j500 135 However since A s...

Страница 137: ...are KP 20 6 KD 68 6 The CDS 3310 can be programmed with the instruction KP 20 6 KD 68 6 In a similar manner other filters can be programmed The procedure is simplified by the following table which sum...

Страница 138: ...CDS 3310 Chapter 10 Theory of Operation i 77 THIS PAGE LEFT BLANK INTENTIONALLY...

Страница 139: ...ticular system HC uses the BOOTP packets from the slaves to automatically select IP addresses and set up the system The HC command indicates the number of axes including the master update rate and typ...

Страница 140: ...up to 20 seconds to complete due to the time involved in waiting for the BOOTP packets Configuration Example The example below shows a typical setup file for a three axis three CDS 3310s distributed...

Страница 141: ...nds The command set of the controller is divided into global and local commands When a global command is sent to the master CDS 3310 e g from a PC or an application program running on the master it af...

Страница 142: ...handle Each handle adds 100 to the bit number Handle A is 100 and handle H is 800 In a TCP IP control setup with two handles per slave it is imperative that you send commands to the first handle desi...

Страница 143: ...mum A B edge rate 12 MHz Minimum IDX pulse width 80 nsec Input Output Limit Switch Inputs Home Inputs IN 1 thru IN 8 Uncommitted Inputs and Abort Input TTL 0 5 Volts Pulled up internally to 5VDC throu...

Страница 144: ...Long Term Phase locked better than 0 005 Short Term System dependent Position Range 2147483647 counts per move Velocity Range Up to 12 000 000 counts sec servo Velocity Resolution 2 counts sec Motor C...

Страница 145: ...2 Error Output Amp Enable 21 Output 4 3 Output 3 22 Output 2 4 Output 1 23 Encoder compare output 5 Analog input 1 0V 5V 24 Analog input 2 0V 5V 6 Input 7 25 Input 6 7 Input 5 26 Input 4 8 Input 3 27...

Страница 146: ...put 7 RTS input 8 CTS output 9 NC can connect to 5V or sample clock J5 POWER 2 pin AMP Universal Mate N Lok 1 VDC 18 to 72V 2 GND J8 100Base T Ethernet 100 BASE T 10 BASE T Kycon GS NS 88 3 5 Pin Sign...

Страница 147: ...ulses into CHA and direction into Channel B and using the CE command to configure this mode Encoder Index I Once Per Revolution encoder pulse Used in Homing sequence or Find Index command to define ho...

Страница 148: ...ory default settings and erases EEPROM Requires power on or RESET to be activated UPGD Used to upgrade controller firmware when resident firmware is corrupt 9600 Sets serial port baud rate to 9600 bau...

Страница 149: ...88 Appendices CDS 3310 CAD to DMC AutoCADR DXF translator Password Required MCS Motion Control Selector Utility for motor amplifier sizing HPGL HPGL translator Password Required...

Страница 150: ...24V sourcing outputs Figure 1 ICM 3300 Layout and Dimensions Opto Isolation Settings The ICM 3300 module allows for opto isolation on digital inputs and outputs This includes the dedicated I O includi...

Страница 151: ...ch Common Shown below is the circuit diagram for the isolated inputs DI1 DI2 DI3 DI4 DI5 DI6 DI7 ABORT FLSX RLSX HOMEX XLATCH Limit Switch Common LSCOM Input Common Voltage INCOM When INCOM V switch i...

Страница 152: ...te of the outputs For example when you issue the SB1 command the polarity of the resistor pack will determine whether the output is turned on or off RP10 RP6 OUTSUP 5 to 24V OUTRET Load DO 1 4 Pin1 to...

Страница 153: ...Digital Input 1 9 I 26 INCOM Input Common I 27 LSCOM Limit Switch Common I 28 XHOM Home Input 9 I 29 RLSX Reverse Limit Input 9 I 30 FLSX Forward Limit Input 9 I 31 CMP Output Compare O 32 AEN ERR Am...

Страница 154: ...ator should be placed in parallel with the power supply as in the figure below and it should be mounted to a metal surface using thermal grease to aid in heat transfer Connections are made to the unit...

Страница 155: ...pin Mate N Lock Power Ground 1 PG 1 Earth 5 PG Voltage Supply 2 VS 2 VS 6 PG Power Ground 3 PG 3 VS 7 PG Voltage Supply 4 VS 4 VS 8 PG Configuration SR 19900 Configuration USR User Settable Voltage R8...

Страница 156: ...16 bit Analog Feedback firmware Interfacing to the Digital I O The DB 28040 5V offers up to 32 digital I O points that can interface directly to I O racks such as Grayhill 70GRCM32 HL Galil IOM 1964 a...

Страница 157: ...xtended I O headers Damage may occur if the connection is made with Galil extended I O headers The pinout configurations are laid out for a specific DEC computer interface and PAMUX B4 brain boards Pi...

Страница 158: ...Input 1 4 Analog Input 2 5 Analog Input 3 6 Analog Input 4 7 Analog Input 5 8 Analog Input 6 9 Analog Input 7 10 Analog Input 8 11 GND 12 GND 13 12 Volt Supply 14 12 Volt Supply 15 5 V 16 GND Layout F...

Страница 159: ...te 14 Pink 7 Orange 15 Light Green 8 Yellow Communicating with OPTO 22 SNAP B3000 ENET The controller is connected to OPTO 22 via handle F The OPTO 22 s IP address is 131 29 50 30 The Rack has the fol...

Страница 160: ...I 2 NUMOFIO Conditional statement MBF 6 16 632 MODULE 8 NU MOFIO 2 A Configure I O using Modbus function code 16 where the starting register is 632 MODULE 8 number of registers is NUMOFIO 2 and A con...

Страница 161: ...advanced MOTION CONTROL MADE EASY WHO SHOULD ATTEND Those who need a basic introduction or refresher on how to successfully implement servo motion control systems TIME 4 hours 8 30 am 12 30pm ADVANCE...

Страница 162: ...ppendices i 101 Contacting Us Galil Motion Control 270 Technology Way Rocklin California 95765 Phone 916 626 0101 Fax 916 626 0102 E mail address support galilmc com URL www galilmc com FTP www galilm...

Страница 163: ...nsportation and insurance prepaid We will reship at our expense only to destinations in the United States and for products within warranty Call Galil to receive a Return Materials Authorization RMA nu...

Страница 164: ...s 38 Bit Wise 27 35 45 Burn EEPROM 1 3 8 9 54 Capture Data Record 42 8 39 40 41 Clear Bit 22 50 86 Coordinated Motion Ecam 53 1 3 Electronic Cam 53 2 Data Record 29 33 Dip Switch Address 101 Ecam 53 1...

Страница 165: ...48 Interrupt 19 29 30 32 53 Invert 13 20 9 65 Jog 1 16 41 44 45 4 44 Jumper 8 9 10 25 65 87 Label 2 3 Program Label 10 16 18 21 26 27 29 39 Special Label 18 19 23 30 31 53 60 61 Latch 3 32 40 15 87 A...

Страница 166: ...20 23 26 29 30 31 32 34 43 53 59 60 61 86 Synchronization 2 4 53 Syntax 35 36 37 Tangent 36 Teach 42 8 40 Data Capture 40 41 Latch 3 32 40 15 87 Play Back 8 Record 42 8 39 40 41 Tell Code 39 40 22 Te...

Отзывы: