Table of Contents

Advertisement

Quick Links

USER MANUAL
CDS-3310
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.galilmc.com
Rev 01/10

Advertisement

Table of Contents
loading

Summary of Contents for Galil Motion Control CDS-3310

  • Page 1 USER MANUAL CDS-3310 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.galilmc.com Rev 01/10...
  • Page 2 Using This Manual This user manual provides information for proper operation of the CDS-3310 controller. A separate manual, the Command Reference, contains a description of the commands available for use with this controller. Users of a 1-4 axis system should note that axes are labeled XYZW.
  • Page 3: Table Of Contents

    CDS-3310 Layout and Dimensions ................... 7 Recommended Components ...................... 7 Installing the CDS-3310 ......................8 Step 1. Install Jumpers on the CDS-3310..............8 Step 2. Connect 18 to 72 VDC Power to the Controller..........9 Step 3. Install Windows Communication Software............. 9 Step 4.
  • Page 4 Command Summary - Jogging .................. 45 Operand Summary - Independent Axis ..............45 Examples ........................45 Position Tracking........................46 Example Motion 1:....................47 Example Motion 2:....................47 Example Motion 3:....................48 Trip Points ......................... 49 ii • Chapter 1 Overview CDS-3310...
  • Page 5 Conditional Jumps ..................... 26 IF, ELSE, AND ENDIF..................... 28 Subroutines........................ 29 Stack Manipulation....................30 Auto-Start Routine ....................30 Automatic Subroutines for Monitoring Conditions ........... 30 Mathematical and Functional Expressions ................35 Mathematical Operators .................... 35 Bit-Wise Operators....................35 CDS-3310 Chapter 1 Overview...
  • Page 6 Analog Output ......................52 The Auxiliary Encoder Inputs ................... 52 Input Interrupt Function .................... 53 Extended I/O of the CDS-3310 Controller ................53 Configuring the I/O of the CDS-3310 ............... 54 Saving the State of the Outputs in Non-Volatile Memory......... 54 Accessing Extended I/O ....................
  • Page 7 J4 RS-232 Serial Port ....................85 J5 POWER 2-pin AMP Universal Mate-N-Lok ............85 J8 100Base-T Ethernet ....................85 Mating Connectors ....................85 Pin-Out Description for CDS-3310 ..................86 Jumper Description for CDS-3310 ..................87 Accessories and Options......................87 ICM-3300 ..........................89 Opto Isolation Settings ....................
  • Page 8 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 Publications ...................... 100 Training Seminars........................100 Contacting Us ........................101 WARRANTY ........................102 Index vi • Chapter 1 Overview CDS-3310...
  • Page 9: Chapter 1 Overview

    A 4Meg Flash EEPROM provides non-volatile memory for storing application programs, parameters, arrays and firmware. New firmware revisions are easily upgraded in the field. Designed to solve complex motion problems, the CDS-3310 can be used for applications involving jogging, point-to-point positioning, electronic gearing to an encoder, multiple move sequences, and contouring.
  • Page 10: Amplifier Specifications

    10 digital outputs, 2 analog intputs (0-5V) and one analog output (-10V to 10V). When the DB-28040 is added to the controller, the CDS-3310 has 8 analog inputs and an additional 40 digital I/O. Dedicated TTL inputs are provided for forward and reverse limit switches, a home switch, and abort.
  • Page 11: Cds-3310 Functional Elements

    The RS-232 channel can generate up to 19.2Kbaud. General I/O The CDS-3310 provides interface circuitry for 8 TTL inputs and 10 TTL outputs. The CDS-3310 also has an additional 40 I/O daughterboard (DB-28040) that can be ordered as an option. General input 1 can also be used a the high speed position latch.
  • Page 12: System Elements

    System Elements As shown in Fig. 1.2, the CDS-3310 controller and drive system is part of a motion control system, which includes motors and encoders. These elements are described below. Power Supply CDS-3310 Computer Controller Amplifier Encoder Motor Figure 1.2 - Elements of Servo systems Motor A motor converts current into torque, which produces motion.
  • Page 13: Watch Dog Timer

    During power-up and if the microprocessor ceases to function properly, the AMPEN output will go low. The error light will also turn on at this stage. A reset is required to restore the CDS-3310 to normal operation. Consult the factory for a Return Materials Authorization (RMA) Number if your CDS-3310 is damaged.
  • Page 14: Chapter 2 Getting Started

    Chapter 2 Getting Started This section describes how to begin communicating with a single controller and how to begin controlling a single motor. Chapter 2 Getting Started CDS-3310...
  • Page 15: Cds-3310 Layout And Dimensions

    CDS-3310 Layout and Dimensions Figure 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 3. Power Supply 4. Brush or Brushless Servo motor with Incremental Encoder...
  • Page 16: Installing The Cds-3310

    5. PC (Personal Computer - RS232 or Ethernet for CDS-3310) 6a. WSDK-32 (recommend for first time users.) 6b. Galil SmartTerminal communication software. Software is available for download at http://www.galilmc.com/support/download.html. Installing the CDS-3310 Step 1. Install jumpers on the CDS-3310 Step 2. Connect 18-72 VDC power to controller Step 3.
  • Page 17: Step 2. Connect 18 To 72 Vdc Power To The Controller

    After applying power to the computer, you should install the Galil software that enables communication between the controller and PC. The following instructions apply to Windows 98 second edition, NT, ME, 2000 or XP. To install the basic communications software, run the Galil CDS-3310 Chapter 2 Getting Started...
  • Page 18: Step 4. Establish Communication

    Delete a controller, or Find an Ethernet Controller. Step A1. Register a Serial Controller Connect the CDS-3310 serial port to your computer via the Galil CABLE-9PIN-D (RS-232 “Straight Through” Serial Cable-- NOT Null Modem). The serial port is configured for full duplex, no parity, 8 data bits, one start bit, one stop bit, and hardware handshaking.
  • Page 19: Step 5. Make Connections To Encoder

    Step A. Connect Encoder Wires to 15-pin high density J2 ENCODER The CDS-3310 accepts single-ended or differential encoder feedback with or without an index pulse. Match the leads from the encoder you are using to the encoder feedback inputs. The signal leads are labeled MA+ (channel A), MB+ (channel B), and IDX+ (index).
  • Page 20: Step 7A. Connect Brush Servo Motor

    Peak Current Operation Step 7a. Connect Brush Servo Motor The CDS-3310 allows for brush operation. To configure an axis for brush-type operation, disconnect power and connect the two motor leads to Phase A and Phase B connections on J1 MOTOR and leave Phase C disconnected.
  • Page 21: Step 8. Close The Loop

    CHA and CHB. If, on the other hand, you are using a differential encoder, interchange only CHA+ and CHA-. The loop polarity and encoder polarity can also be affected through software with the MT, and CE commands (see the Command Reference). CDS-3310 Chapter 2 Getting Started...
  • Page 22: Step 9. Tune The Servo System

    After appropriate PID gains are found, burn them into the EEPROM with BN. For a more detailed description of the operation of the PID filter and/or servo system theory, see Chapter 10 - Theory of Operation. Tuning must be done before configuring a distributed network (Chapter 11). Chapter 2 Getting Started CDS-3310...
  • Page 23: Design Examples

    Define the current positions as 2000 PA 7000 Sets the desired absolute position Start A motion After motion is complete, the axis can be command back to zero: PA 0 Move to 0 Start motion CDS-3310 Chapter 2 Getting Started...
  • Page 24: Velocity Control

    Motion Programs with Loops Motion programs may include conditional jumps as shown below. Instruction Interpretation Label DP 0 Define current position as zero v1=1000 Set initial value of v1 Chapter 2 Getting Started CDS-3310...
  • Page 25: Control Variables

    This program moves A to an initial position of 1000 and returns it to zero on increments of half the distance. Note, _TPA is an internal variable which returns the value of the A position. Internal variables may be created by preceding a CDS-3310 instruction with an underscore, _. CDS-3310...
  • Page 26 THIS PAGE LEFT PLANK INTENTIONALLY Chapter 2 Getting Started CDS-3310...
  • Page 27: Chapter 3 Connecting I/O

    Chapter 3 Connecting I/O Overview This chapter describes the inputs and outputs and their proper connection (see appendix if you are using an ICM-3300). In addition to encoder and hall inputs, the CDS-3310 provides the I/O listed below: INPUTS OUTPUTS...
  • Page 28: Home Switch Input

    1, corresponding to either 0V or 5V depending on the configuration set by the user (CN command). The CN command can be used to customize the homing routine to the user’s application. There are three homing routines supported by the CDS-3310: Find Edge (FE), Find Index (FI), and Standard Home (HM).
  • Page 29: Abort Input

    - input to 6 volts if the signal is a 0 - 12 volt logic). Example: A CDS-3310 has one auxiliary encoder. This encoder has two inputs (channel A and channel B). Channel A input is mapped to input 81 and Channel B input is mapped to input 82. To use this input for 2 TTL signals, the first signal will be connected to AA+ and the second to AB+.
  • Page 30: Analog Inputs

    Analog Inputs The CDS-3310 has two analog inputs configured for the range between 0V and 5V. The inputs are decoded by a 12-bit A/D decoder giving a voltage resolution of approximately 1 mV (a 16-bit A/D is available on the DB-28040). The impedance of these inputs is effectively infinite. The analog inputs are read with @AN[x] where x is a number 1 thru 2.
  • Page 31: Brake Output

    Brake Output Wiring Diagram Analog Output The CDS-3310 has one analog output configured for the range between -10V and 10V. The output is driven by a 16-bit D/A converter giving a voltage resolution of approximately 300 μV. The analog output is set with AO command.
  • Page 32 THIS PAGE LEFT PLANK INTENTIONALLY Chapter 3 Connecting I/O CDS-3310...
  • Page 33: Chapter 4 Communication

    Chapter 4 Communication Introduction The CDS-3310 has one RS232 port and one Ethernet port. The RS-232 port can be configured to speeds of up to 19200 baud. The Ethernet port is 10/100baseT. RS232 Port Configure your PC for 8-bit data, one start-bit, one stop-bit, full duplex and no parity. The Baud rate is set by installing a jumper.
  • Page 34: Communicating With Multiple Devices (Handles)

    Ethernet address. The CDS-3310 Ethernet address is set by the factory and the last two bytes of the address are the serial number of the controller. The second level of addressing is the IP address. This is a 32-bit (or 4 byte) number. The IP address is constrained by each local network and must be assigned locally.
  • Page 35: Modbus

    TCP/IP packet. In this protocol, each slave has a 1 byte slave address. The CDS-3310 can use a specific slave address or default to the handle number. The port number for Modbus is 502. The Modbus protocol has a set of commands called function codes.
  • Page 36: Multicasting

    IP address and the host computer. The CDS-3310 can communicate with a host computer through any application that can send TCP/IP or UDP/IP packets. A good example of this is Telnet, a utility that comes with most Windows systems.
  • Page 37: Data Record

    Data Record The CDS-3310 can provide a block of status information with the use of a single command, QR. This command, along with the QZ command can be very useful for accessing complete controller status. The QR command will return 4 bytes of header information and specific blocks of information as...
  • Page 38 D block d axis velocity D block d axis torque D block 0 or d axis analog (DB-28040) D block e axis status E block e axis switches E block e axis stopcode E block Chapter 4 Communication CDS-3310...
  • Page 39 H block h axis torque H block 0 or h axis analog (DB-28040) H block NOTE: UB = Unsigned Byte, UW = Unsigned Word, SW = Signed Word, SL = Signed Long Word CDS-3310 Chapter 4 Communication...
  • Page 40: Explanation Of Status And Axis Switch Information

    BIT 3 BIT 2 BIT 1 BIT 0 Negative Mode of Motion Motion Motion Latch is Off On Motor Direction Motion stopping armed Error Move slewing due to making armed Contour ST or final Limit decel. Switch Chapter 4 Communication CDS-3310...
  • Page 41: Notes Regarding Velocity And Torque Information

    Each instruction must be terminated by a carriage return or semicolon. Instructions are sent in ASCII, and the CDS-3310 decodes each ASCII character (one byte) one at a time. It takes approximately 0.5 msec for the controller to decode each command. However, the PC can send data to the controller at a much faster rate because of the FIFO buffer.
  • Page 42: Galil Software Tools And Libraries

    Galil has also developed an ActiveX Tool Kit. This provides 32-bit OCXs for handling all of the CDS-3310 communications including support of interrupts. These objects install directly into Visual Basic, LabVIEW, C, or any software that accepts ActiveX tools and are part of the run-time environment.
  • Page 43: Chapter 5 Command Basics

    80 to FF. ASCII commands can be sent “live” over the bus for immediate execution by the CDS-3310, or an entire group of commands can be downloaded into the CDS-3310 memory for execution at a later time.
  • Page 44 PR ,? Request B value only The CDS-3310 provides an alternative method for specifying 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.
  • Page 45: Command Syntax - Binary

    Bit 5 = F axis or 6 data field Bit 4 = E axis or 5 data field Bit 3 = D axis or 4 data field Bit 2 = C axis or 3 data field CDS-3310 Chapter 5 Command Basics...
  • Page 46: Binary Command Table

    01 specifies stop X (bit 0), (2 Binary command table COMMAND COMMAND COMMAND reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved reserved Chapter 5 Command Basics CDS-3310...
  • Page 47: Controller Response To Data

    Controller Response to DATA The CDS-3310 returns a : for valid commands and a ? for invalid commands. For example, if the command BG is sent in lower case, the CDS-3310 will return a ?. :bg <return> invalid command, lower case CDS-3310 returns a ? When the controller receives an invalid command the user can request the error code.
  • Page 48: Summary Of Interrogation Commands

    The controller can also be interrogated with operands. Operands Most CDS-3310 commands have corresponding operands that can be used for interrogation. Operands must be used inside of valid DMC expressions. For example, to display the value of an operand, the user could use the command: MG ‘operand’...
  • Page 49: Chapter 6 Programming Motion

    Chapter 6 Programming Motion Overview The CDS-3310 provides several modes of motion, including independent positioning and jogging, and electronic gearing. Each one of these modes is discussed in the following sections. The example applications described below will help guide you to the appropriate mode of motion.
  • Page 50: Independent Axis Positioning

    The user specifies the desired absolute position (PA) or relative position (PR), slew speed (SP), acceleration ramp (AC), and deceleration ramp (DC), for each axis. On begin (BG), the CDS-3310 profiler generates the corresponding trapezoidal or triangular velocity profile and position trajectory.
  • Page 51: Operand Summary - Independent Axis

    Time constant for independent motion smoothing AM ABCD Trippoint for profiler complete MC ABCD Trippoint for "in position" The CDS-3310 also allows use of single axis specifiers such as PRB=2000 Operand Summary - Independent Axis OPERAND DESCRIPTION _ACx Return acceleration rate for the axis specified by ‘x’...
  • Page 52: Independent Jogging

    An instant change to the motor position can be made with the use of the IP command. Upon receiving this command, the controller commands the motor to a position which is equal to the specified Chapter 6 Programming Motion CDS-3310...
  • Page 53: Command Summary - Jogging

    Specify A,C deceleration of 20000 cts / sec JG 50000,,-25000 Specify jog speed and direction for A and C axis BG A Begin A motion AS A Wait until A is at speed BG C Begin C motion CDS-3310 Chapter 6 Programming Motion...
  • Page 54: Position Tracking

    PA command to the controller. The BG command isn’t required in this mode, the SP, AC, and DC commands determine the shape of the trapezoidal velocity profile that the controller will use. Chapter 6 Programming Motion CDS-3310...
  • Page 55: Example Motion 1

    In figure 3 the velocity profile is triangular because the controller doesn’t have sufficient time to reach the set speed of 50000 cts/sec before it is commanded to change direction. CDS-3310 Chapter 6 Programming Motion...
  • Page 56: Example Motion 3

    The jerk in the system is also affected by the values set for AC and Figure 4 Position vs. Time (msec) Motion 4 Figure 5 Velocity vs.Time Motion 4 Chapter 6 Programming Motion CDS-3310...
  • Page 57: Trip Points

    Only one axis at a time may be specified. PT n,n,n,n,n,n,n,n Command used to enter and exit the Trajectory Modification Mode PA n,n,n,n,n,n,n,n Command Used to specify the absolute position target SP n,n,n,n,n,n,n,n Command used to enter and exit the Trajectory Modification Mode CDS-3310 Chapter 6 Programming Motion...
  • Page 58: Electronic Gearing

    Figure 1 below shows the velocity vs. time profile for instantaneous gearing. Figure 2 shows the velocity vs. time profile for the gradual gearing engagement. Figure 1 Velocity cts/sec vs. Time (msec) Instantaneous Gearing Engagement Chapter 6 Programming Motion CDS-3310...
  • Page 59: Example - Electronic Gearing Over A Specified Interval

    ~3396 counts. The difference between these two values is stored in the _GPn operand. If exact position synchronization is required, the IP command is used to adjust for the difference. CDS-3310 Chapter 6 Programming Motion...
  • Page 60: Command Summary - Electronic Gearing

    Instruction Interpretation GA DA Define aux encoder as the master axis for B. Set gear ratio 2:1 PR300 Specify correction distance SP5000 Specify correction speed AC100000 Specify correction acceleration DC100000 Specify correction deceleration Start correction Chapter 6 Programming Motion CDS-3310...
  • Page 61: Electronic Cam

    Electronic Cam The electronic cam is a motion control mode which enables the periodic synchronization of the axis of motion. Similar to the gearing mode, the CDS-3310 use the auxiliary encoder or the imaginary axis as the master axis. The electronic cam is a more general type of electronic gearing which allows a table-based relationship between the axes.
  • Page 62 If the value of any parameter is outside the range of one cycle, the cam engages immediately. When the cam is engaged, the slave position is redefined, modulo one cycle. Chapter 6 Programming Motion CDS-3310...
  • Page 63 The instruction EAN defines N as the master axis. The cycle of the master is 2000. Over that cycle, X varies by 1000. This leads to the instruction EM 2000,1000. 2 • Chapter 6 Programming Motion CDS-3310...
  • Page 64 Wait for start signal EG1000 Engage slave AI – 1 Wait for stop signal EQ1000 Disengage slave The following example illustrates a cam program with a master axis, N. Instruction Interpretation #A;V1=0 Label; Initialize variable CDS-3310 Chapter 6 Programming Motion...
  • Page 65: Contour Mode

    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 following computer generated paths such as parabolic, spherical or user-defined profiles. The path is not limited to straight line and arc segments and the path length may be infinite.
  • Page 66: Additional Commands

    Figure 6.6 - The Required Trajectory Additional Commands The command, WC, is used as a trippoint "Wait for Contour". This allows the CDS-3310 to use the next increment only when it is finished with the previous one. Zero parameters for DT followed by zero parameters for CD exit the contour mode.
  • Page 67: Command Summary - Contour Mode

    In the given example, A=6000 and B=120, the position and velocity profiles are: π π A = 50T - (6000/2 ) sin (2 T/120) ω Note that the velocity, , in count/ms, is ω π = 50 [1 - cos 2 T/120] 6 • Chapter 6 Programming Motion CDS-3310...
  • Page 68 Figure 6.7 - Velocity Profile with Sinusoidal Acceleration The CDS-3310 can compute trigonometric functions. However, the argument must be expressed in degrees. Using our example, the equation for A is written as: A = 50T - 955 sin 3T A complete program to generate the contour movement in this example is given below. To generate an array, we compute the position value at intervals of 8 ms.
  • Page 69 Several applications require teaching the machine a motion trajectory. Teaching can be accomplished using the CDS-3310 automatic array capture feature to capture position data. The captured data may then be played back in the contour mode. The following array commands are used:...
  • Page 70: Virtual Axis

    For additional information about automatic array capture, see Chapter 7, Arrays. Virtual Axis The CDS-3310 controller has an additional virtual axis designated as the N axis. This axis has no encoder and no DAC. However, it can be commanded by the commands:...
  • Page 71: Backlash Compensation

    The proposed compensation procedure is to start with KP=0, KI=0 and to maximize the value of KD under the condition DV1. Once KD is found, increase KP gradually to a maximum value, and finally, increase KI, if necessary. 10 • Chapter 6 Programming Motion CDS-3310...
  • Page 72: Motion Smoothing

    Repeat #END Motion Smoothing The CDS-3310 controller allows the smoothing of the velocity profile to reduce the mechanical vibration of the system. Trapezoidal velocity profiles have acceleration rates which change abruptly from zero to maximum value. The discontinuous acceleration results in jerk which causes vibration. The smoothing of the acceleration profile leads to a continuous acceleration profile and reduces the mechanical shock and vibration.
  • Page 73: Example

    Deceleration SP 5000 Speed IT .5 Filter for smoothing BG A Begin ACCELERATION TIME VELOCITY TIME ACCELERATION WITH SMOOTHING TIME VELOCITY WITH SMOOTHING TIME Figure 6.9 - Trapezoidal velocity and smooth velocity profiles 12 • Chapter 6 Programming Motion CDS-3310...
  • Page 74: Homing

    3. The motor then traverses very slowly back until the home switch toggles again. 4. The motor then traverses forward until the encoder index pulse is detected. 5. The CDS-3310 defines the home position (0) as the position at which the index was detected. Example...
  • Page 75 POSITION VELOCITY MOTION BEGINS TOWARD HOME DIRECTION POSITION VELOCITY MOTION REVERSE TOWARD HOME DIRECTION POSITION VELOCITY MOTION TOWARD INDEX DIRECTION POSITION INDEX PULSES POSITION Figure 6.10 - Motion intervals in the Home sequence 14 • Chapter 6 Programming Motion CDS-3310...
  • Page 76: Command Summary - Homing Operation

    35 microseconds. General input 1 is associated to the axis for position capture. The CDS-3310 software commands, AL and RL, are used to arm the latch and report the latched position. The steps to use the latch are as follows: 1.
  • Page 77: Chapter 7 Application Programming

    Using the DOS Editor to Enter Programs The CDS-3310 has an internal editor which may be used to create and edit programs in the controller's memory. The internal editor is opened by the command ED. Note that the command ED will not open the internal editor if issued from Galil's Window based software - in this case, a Windows based editor will be automatically opened.
  • Page 78: Edit Mode Commands

    2. <cntrl>Q The <cntrl>Q quits the editor mode. In response, the CDS-3310 will return a colon. After the Edit session is over, the user may list the entered program using the LS command. If no operand follows the LS command, the entire program will be listed. The user can start listing at a specific line or label using the operand n.
  • Page 79: Program Format

    Using Labels in Programs All CDS-3310 programs must begin with a label 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;...
  • Page 80: Commenting Programs

    REM Command If you are using Galil software to communicate with the CDS-3310 controller, you may also include REM statements. ‘REM’ statements begin with the word ‘REM’ and may be followed by any comments which are on the same line. The Galil terminal software will remove these statements when the program is downloaded to the controller.
  • Page 81: Debugging Programs

    (ie. Thread 0). #TASK1 is executed within TASK2. Debugging Programs The CDS-3310 provides commands and operands which are useful in debugging application programs. These commands include interrogation commands to monitor program execution, determine the state of the controller and the contents of the controllers program, array, and variable space. Operands also contain important status information which can help to debug a program.
  • Page 82: Error Code Command

    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.
  • Page 83: Example

    The commands for the second move sequence will not be executed until the motion is complete on the first motion sequence. In this way, the CDS-3310 can make decisions based on its own status or external events without intervention from a host computer.
  • Page 84 CDS-3310 Event Triggers Command Function Halts program execution until motion is complete on AM A B C D E FG H or S the specified axes or motion sequence(s). AM with no parameter tests for motion complete on all axes. This command is useful for separating motion sequences in a program.
  • Page 85 BGA;n=0 Begin Motion #REPEAT # Repeat Loop AR 10000 Wait 10000 counts Tell Position Set output 1 WT50 Wait 50 msec Clear output 1 n=n+1 Increment counter JP #REPEAT,n<5 Repeat 5 times Stop 24 • Chapter 7 Application Programming CDS-3310...
  • Page 86 AD 10000 Wait a distance of 10,000 counts SP 5000 New Speed Wait until motion is completed WT 200 Wait 200 ms PR -10000 New Position SP 30000 New Speed AC 150000 New Acceleration Start Motion CDS-3310 Chapter 7 Application Programming...
  • Page 87: Conditional Jumps

    Conditional jumps are 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 line.
  • Page 88 @IN[1]=0 Multiple Conditional Statements The CDS-3310 will accept multiple conditions in a single jump statement. The conditional statements are combined in pairs using the operands “&” and “|”. The “&” operand between any two conditions, requires that both statements must be true for the combined statement to be true. The “|” operand between any two conditions, requires that only one statement be true for the combined statement to be true.
  • Page 89: If, Else, And Endif

    The CDS-3310 allows for IF conditional statements to be included within other IF conditional statements. This technique is known as 'nesting' and the CDS-3310 allows up to 255 IF conditional statements to be nested. This is a very powerful technique allowing the user to specify a variety of different cases for branching.
  • Page 90: Subroutines

    An example of a subroutine is given below. CDS-3310 Chapter 7 Application Programming...
  • Page 91: Stack Manipulation

    To do this, give a ZS command at the end of the #LIMSWI routine. Auto-Start Routine The CDS-3310 has a special label for automatic program execution. A program which has been saved into the controllers non-volatile memory can be automatically executed upon power up or reset by beginning the program with the label #AUTO.
  • Page 92 This program prints a message upon the occurrence of a limit switch. Note, for the #LIMSWI routine to function, the CDS-3310 must be executing an applications program from memory. This can be a very simple program that does nothing but loop on a statement, such as #LOOP;JP #LOOP;EN.
  • Page 93 1 second of the end of the profiled move. Example - Communication Interrupt A CDS-3310 is used to move the A axis back and forth from 0 to 10000. This motion can be paused, resumed and stopped via input from an auxiliary port terminal.
  • Page 94 In multitasking applications, there is an alternate method for handling command errors from different threads. Using the XQ command along with the special operands described below allows the controller to either skip or retry invalid commands. CDS-3310 Chapter 7 Application Programming...
  • Page 95 End of command error routine Example – Ethernet Communication Error This simple program executes in the CDS-3310 and indicates (via the serial port) when a communication handle fails. By monitoring the serial port, the user can re-establish communication if needed.
  • Page 96: Mathematical And Functional Expressions

    The mathematical operators & and | are bit-wise operators. The operator, &, is a Logical And. The operator, |, is a Logical 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.
  • Page 97: Functions

    Square root of n (Accuracy is +/-.0001) @IN[n] Return digital input at general input n (where n starts at 1) @OUT[n] Return digital output at general output n (where n starts at 1) 36 • Chapter 7 Application Programming CDS-3310...
  • Page 98: Variables

    Spaces are not permitted. Variables can be upper or lowercase, or any combination. Variables are case sensitive, SPEEDC≠speedC. Variable names should not be the same as CDS-3310 instructions. For example, PR is not a good choice for a variable name.
  • Page 99: Operands

    (+/-2,147,483,647.9999). Numeric values can be assigned to programmable variables using the equal sign. Any valid CDS-3310 function can be used to assign a value to a variable. For example, V1=@ABS[v2] or v2=@IN[1]. Arithmetic operations 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 quotation.
  • Page 100: Arrays

    Assign v4 the logical state of the Home input on the D-axis Arrays For storing and collecting numerical data, the CDS-3310 provides array space for 8000 elements. The arrays are one dimensional and up to 30 different arrays may be defined. Each array element has a numeric range of 4 bytes of integer (2 )followed by two bytes of fraction (+/-2,147,483,647.9999).
  • Page 101: Uploading And Downloading Arrays To On Board Memory

    The file is terminated using <control>Z, <control>Q, <control>D or \. Automatic Data Capture into Arrays The CDS-3310 provides a special feature for automatic capture of data such as position, position error, inputs or torque. This is useful for teaching motion trajectories or observing system performance. Up to eight types of data can be captured and stored in eight arrays.
  • Page 102 Play back Initial Counter JP# DONE,N>300 Exit if done Print Counter apos [N]= Print X position bpos [N]= Print Y position aerr[N]= Print X error berr[N]= Print Y error n=n+1 Increment Counter #DONE Done End Program CDS-3310 Chapter 7 Application Programming...
  • Page 103: Deallocating Array Space

    Prompt operator for length in inches PR len *4000 Specify position in counts Begin motion to move material Wait for motion done Set output to cut WT100;CB1 Wait 100 msec, then turn off cutter JP #CUT Repeat process 42 • Chapter 7 Application Programming CDS-3310...
  • Page 104: Operator Data Entry Mode

    EN command is used. EN,1 will re-enable the interrupt and return to the line of the program where the interrupt was called, EN will just return to the line of the program where it was called without re- CDS-3310 Chapter 7 Application Programming...
  • Page 105 #NUMLOOP; CI-1 Check for enter #NMLP Routine to check input from terminal JP #NMLP,P1CD<2 Jump to error if string JP #ERROR,P1CD=2 Read value val=P1NM End subroutine #ERROR;CI-1 Error Routine MG "INVALID-TRY AGAIN" Error message 44 • Chapter 7 Application Programming CDS-3310...
  • Page 106: String Variables

    Leading zeros will be used to display specified format. For example:: MG "The Final Value is", result {F5.2} If the value of the variable result is equal to 4.1, this statement returns the following: CDS-3310 Chapter 7 Application Programming...
  • Page 107: Displaying Variables And Arrays

    Variables and arrays may be sent to the screen using the format, variable= or array[x]=. For example, v1= , returns the value of v1. Example - Printing a Variable and an Array element Instruction Interpretation #DISPLAY Label DM posA[7] Define Array POSA with 7 entries 46 • Chapter 7 Application Programming CDS-3310...
  • Page 108: Interrogation Commands

    Print v1 Interrogation Commands The CDS-3310 has a set of commands that directly interrogate the controller. When these command are entered, the requested data is returned in decimal format on the next line followed by a carriage return and line feed. The format of the returned data can be changed using the Position Format (PF), and Leading Zeros (LZ) command.
  • Page 109: Formatting Variables And Array Elements

    :0000000010.0000 Response - Default format VF2.2 Change format Return v1 :10.00 Response - New format vF-2.2 Specify hex format Return v1 $0A.00 Response - Hex value Change format Return v1 Response - Overflow 48 • Chapter 7 Application Programming CDS-3310...
  • Page 110: 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 have units of quadrature counts. Speed parameters such as SP, JG and VS have units of counts/sec. Acceleration parameters such as AC, DC, VA and VD have units of counts/sec 2 .
  • Page 111: Hardware I/O

    Hardware I/O Digital Outputs The CDS-3310 has an 10-bit uncommitted output port and an additional 40 I/O (with the addition of the daughter board DB-28040) which may be configured as inputs or outputs with the CO command for controlling external events. Each bit on the output port may be set and cleared with the software instructions SB (Set Bit) and CB(Clear Bit), or OB (define output bit).
  • Page 112: Digital Inputs

    Motor A must turn at 4000 counts/sec when the user flips a panel switch to ‘on’. When panel switch is turned to ‘off’ position, motor A must stop turning. Solution: Connect panel switch to input 1 of CDS-3310. High on input 1 means switch is in ‘on’ position.
  • Page 113: Analog Output

    - input should be connected to a voltage that is ½ of the full voltage range (for example, connect the - input to 6 volts if the signal is a 0 - 12 volt logic). Example: 52 • Chapter 7 Application Programming CDS-3310...
  • Page 114: Input Interrupt Function

    A CDS-3310 has one auxiliary encoder. This encoder has two inputs (channel A and channel B). Channel A input is mapped to input 81 and Channel B input is mapped to input 82. To use this input for 2 TTL signals, the first signal will be connected to AA+ and the second to AB+. AA- and AB- will be left unconnected.
  • Page 115: Configuring The I/O Of The Cds-3310

    Configuring the I/O of the CDS-3310 The 40 extended I/O points of the CDS-3310 series controller can be configured in banks of 8. The extended I/O is denoted as banks 2-6 or bits 17-56. The command, CO, is used to configure the extended I/O as inputs or outputs. The CO command has...
  • Page 116: Example Applications

    As soon as the pulse is given, the controller starts the forward motion. Upon completion of the forward move, the controller outputs a pulse for 20 ms and then waits an additional 80 ms before returning to #A for a new cycle. CDS-3310 Chapter 7 Application Programming...
  • Page 117: Backlash Compensation By Sampled Dual-Loop

    The slide is to be controlled by a rotary motor, which is coupled to the slide by a leadscrew. Such a leadscrew has a backlash of 4 micron, and the required position accuracy is for 0.5 micron. 56 • Chapter 7 Application Programming CDS-3310...
  • Page 118 Wait for completion WT 50 Wait 50 msec linpos = _DEA Read linear position er=1000- linpos -_TEA Find the correction JP #C,@ABS[er]<2 Exit if error is small PR er Command correction JP #B Repeat the process CDS-3310 Chapter 7 Application Programming...
  • Page 119: Chapter 8 Hardware & Software Protection

    WARNING: Machinery in motion can be dangerous! It is the responsibility of the user to design effective error handling and safety protection as part of the machine. Since the CDS-3310 is an integral part of the machine, the engineer should design his overall system with protection against a possible component failure on the CDS-3310.
  • Page 120: Input Protection Lines

    The units of the error limit are quadrature counts. The error is the difference between the command position and actual encoder position. If the absolute value of the error exceeds the value specified by ER, the CDS-3310 will generate several signals to warn the host system of the error condition. These signals include: CDS-3310 Chapter 8 Hardware &...
  • Page 121: Programmable Position Limits

    Begin (motion stops at forward limits) Off-On-Error The CDS-3310 controller has a built in function which can turn 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 axes. When this function is enabled, the specified motor will be disabled under the following 3 conditions: 1.
  • Page 122: Limit Switch Routine

    NOTE: An applications program must be executing for the #POSERR routine to function. Limit Switch Routine The CDS-3310 provides forward and reverse limit switches which inhibit motion in the respective direction. There is also a special label for automatic execution of a limit switch subroutine. The #LIMSWI label specifies the start of the limit switch subroutine.
  • Page 123: Amplifier Error Routine

    Check for Overvoltage MG”Overvoltage” Alert Operator ENDIF IF (v1=4) Check for Overtemperature MG”Too Hot!” Alert Operator ENDIF IF (v1=8) Check for Undervoltage MG” Voltage too low” Alert Operator ENDIF Motors Off End Program 62 • Chapter 8 Hardware & Software Protection CDS-3310...
  • Page 124 THIS PAGE LEFT PLANK INTENTIONALLY CDS-3310 Chapter 8 Hardware & Software Protection...
  • Page 125: Chapter 9 Troubleshooting

    Same as above Bad encoder Check the encoder signals. Replace encoder if necessary. Same as above Bad controller Connect the encoder to different axis input. If it works, controller failure. Repair or replace. 64 • Chapter 9 Troubleshooting CDS-3310...
  • Page 126: Communication

    If controller states that the position is the same at different locations it implies encoder noise. Reduce noise. Use differential encoder inputs. Same as above. Programming error. Avoid resetting position error at end of move with SH command. CDS-3310 Chapter 9 Troubleshooting...
  • Page 127: Chapter 10 Theory Of Operation

    Note that the profiling and the closing of the loop are independent functions. The profiling function determines where the motor should be and the closing of the loop forces the motor to follow the commanded position 66 • Chapter 10 Theory of Operation CDS-3310...
  • Page 128 The following section explains the operation of the servo system. First, it is explained qualitatively, and then the explanation is repeated using analytical tools for those who are more theoretically inclined. CDS-3310 Chapter 10 Theory of Operation...
  • Page 129: Operation Of Closed-Loop Systems

    "right" rate. If you turn it too slowly, the temperature response will be slow, causing discomfort. Such a slow reaction is called overdamped response. 68 • Chapter 10 Theory of Operation CDS-3310...
  • Page 130: System Modeling

    The elements of a servo system include the motor, driver, encoder and the controller. These elements are shown in Fig. 10.4. The mathematical model of the various components is given below. CONTROLLER DIGITAL Σ MOTOR FILTER ENCODER Figure 10.4 - Functional Elements of a Motion Control System CDS-3310 Chapter 10 Theory of Operation...
  • Page 131: Motor-Amplifier

    K= 20/65536 = 0.0003 [V/count] Digital Filter The digital filter has three element in series: PID, low-pass and a notch filter. The transfer function of the filter. The transfer function of the filter elements are: 70 • Chapter 10 Theory of Operation CDS-3310...
  • Page 132 ⋅ D = 4T 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...
  • Page 133: Zoh

    To analyze the system, we start with a block diagram model of the system elements. The analysis procedure is illustrated in terms of the following example. Consider a position control system with the CDS-3310 controller and the following parameters: K t = 0.1...
  • Page 134 To analyze the system stability, determine the crossover frequency, ω c at which A(j ω c ) equals one. This can be done by the Bode plot of A(j ω c ), as shown in Fig. 10.8. Magnitude 2000 W (rad/s) Figure 10.8 - Bode plot of the open loop transfer function CDS-3310 Chapter 10 Theory of Operation...
  • Page 135: System Design And Compensation

    System Design and Compensation The closed-loop control system can be stabilized by a digital filter, which is preprogrammed in the CDS-3310 controller. The filter parameters can be selected by the user for the best compensation. The following discussion presents an analytical design method.
  • Page 136 These requirements may be expressed as: |G(j500)| = |P + (j500D)| = 160 arg [G(j500)] = tan -1 [500D/P] = 59° The solution of these equations leads to: P = 160cos 59° = 82.4 CDS-3310 Chapter 10 Theory of Operation...
  • Page 137 Assuming a sampling period of T=1ms, the parameters of the digital filter 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 summarizes the relationship between the various filters.
  • Page 138 THIS PAGE LEFT BLANK INTENTIONALLY CDS-3310 Chapter 10 Theory of Operation...
  • Page 139: Chapter 11 Distributed Control

    Chapter 11 Distributed Control Overview In the “distributed” mode of operation, the CDS-3310 is used in conjunction with up to 7 other CDS- 3310s connected via Ethernet. Programming is simplified because multiple controllers behave as a single multi-axis controller. For example, the commands PR1000,1000,1000; BGXYZ issued on the master CDS-3310 will initiate motion on three controllers.
  • Page 140: Configuration Example

    HC command uses. When the HC command is initiated, the master will ARP addresses where it expects slave controllers to reside. If no controllers respond to the ARPs, the master will then listen for the BOOTP packets from un-assigned slave controllers. CDS-3310 Chapter 11 Distributed Control...
  • Page 141: Global Versus Local Commands

    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 affects one or more controllers in the system (axes A to H) just as if the master were a multi- axis controller.
  • Page 142: Local Commands

    The table below lists global commands that can be issued on the master to query slave I/O: I/O Type Global Commands (Handle * 100) + bit Digital Inputs @IN, TI Digital Outputs SB, CB, @OUT Analog Inputs Analog Outputs CDS-3310 Chapter 11 Distributed Control...
  • Page 143: Appendices

    OUT[1] thru OUT[10] Outputs: TTL (0-5Volts) IN[81], IN[82] Auxiliary Encoder Inputs for A (X) axis. Line Receiver Inputs - accepts differential or single ended voltages with voltage range of +/- 12 Volts. Power 18 to 72 VDC 82 • Appendices CDS-3310...
  • Page 144: Performance Specifications

    Up to 12,000,000 counts/sec servo Velocity Resolution: 2 counts/sec Motor Command Resolution: 16 bit or 0.0003 V Variable Range: +/-2 billion Variable Resolution: 1 ⋅ 10 -4 Array Size: 8000 elements, 30 arrays Program Size: 1000 lines x 80 characters CDS-3310 Appendices...
  • Page 145: Connectors For Cds-3310

    Connectors for CDS-3310 J1 MOTOR Output 4-pin AMP Universal Mate-N-Lok 1 NC J2 ENCODER 15-PIN Hi-density Female D-sub 1 I+ 2 B+ 3 A+ 4 AB+ 5 Ground 6 I- 7 B- 8 A- 9 AA- 10 Hall A 11 AA+...
  • Page 146: J4 Rs-232 Serial Port

    1 +VDC (18 to 72V) 2 GND J8 100Base-T Ethernet 100 BASE-T/10 BASE-T - Kycon GS-NS-88-3.5 Signal Mating Connectors Location Mating Connector Terminal Pins AMP# 172165-1 AMP# 170361-1 J5 POWER (2-pin) AMP# 172167-1 AMP# 170361-1 J1 MOTOR (4-pin) CDS-3310 Appendices...
  • Page 147: Pin-Out Description For Cds-3310

    Pin-Out Description for CDS-3310 Outputs Amp Enable Goes high when the amp is turned on (SH) and low when turned off (MO) Error The signal goes low when the position error on any axis exceeds the value specified by the error limit command, ER.
  • Page 148: Jumper Description For Cds-3310

    High speed position latch to capture axis position within 20 nano seconds on occurrence of latch signal. AL command arms latch. Input 1 is latch. Jumper Description for CDS-3310 Label Function (If jumpered) When OFF, the controller will use the auto-negotiate function to (Rev B and up) set the Ethernet connection speed to either 10 or 100 Base-T.
  • Page 149 CAD-to-DMC AutoCAD DXF translator (Password Required) Motion Control Selector. Utility for motor / amplifier sizing. HPGL HPGL translator (Password Required) 88 • Appendices CDS-3310...
  • Page 150: Opto Isolation Settings

    ICM-3300 The ICM-3300 Interconnect module breaks out the 15 pin and 37 pin connectors on the CDS-3310 into screw-type terminals to allow for easier wiring of external devices. It also provides opto-isolation for all digital I/O except the following: brake output, output compare, reset input and digital input 8.
  • Page 151: Input Isolation

    RLSX HOMEX When INCOM = +V, switch input to GND When INCOM = GND, switch input to +V +V range = 5 to 24V Input Common Voltage (INCOM) 2.2k ABORT (XLATCH) Figure 2: ICM-3300 Digital Input Isolation 90 • Appendices CDS-3310...
  • Page 152: Output Isolation

    RP12 = Outputs 9 -10, Err/AEN Load Pin1 to GND, SB=+V Pin 1 to +5V, SB=GND GND or +5V RP11, 12 2.2k Digital Outputs 5-10, Error/AEN OUTRET (-) Figure 4: Outputs 5-10 and Error/Amp Enable are low-power opto-outputs with the above circuit CDS-3310 Appendices...
  • Page 153: Screw Terminal Description

    BRK PWR Brake Power Supply BRAKE Brake Output (Sinking) -12V -12V output +12V +12V Output +5V Output Analog Output 1 Analog Input 2 Analog Input 1 AGND Analog Input Ground AGND Analog Ground RESET Reset Input 92 • Appendices CDS-3310...
  • Page 154: Introduction

    For a summary of shunt regulator operation, as well as details to help determine if one is required in your system, please refer to application note #5448 at: (http://www.galilmc.com/support/appnotes/miscellaneous/note5448.pdf). DCPower Supply SR-19900 Shunt Regulator System Load Controller Motor MOCMDx Amplifier (Inertia) Encoder Figure 1 Shunt Regulator Placement in a Typical Servo System CDS-3310 Appendices...
  • Page 155: Layout

    8 PG Configuration USR - User Settable Voltage SR-19900 Configuration R8 = 1930 * Vs -42.2K Voltage Threshold Voltage Setting (Vs) (Vs) R8 value (ohms) 33 volts 4.12 k 66 volts 50.44 k User selectable 96.76 k 94 • Appendices CDS-3310...
  • Page 156: Introduction

    DB-28040 Introduction The DB-28040 is an I/O expansion daughter board for the CDS-3310 motion controller that provides 8 analog inputs and 40 digital I/O. Electrical Specifications The analog input impedance is 45.7k. Standard configuration allows for 3.3 V digital I/O. The DB- 28040-5V option provides up to 24 Open-collector outputs that can sink to 5 Volts (3mA).
  • Page 157: Pinout

    41 Bank 2 – Bit 20 42 GND 43 Bank 2 – Bit 19 44 GND 45 Bank 2 – Bit 18 46 GND 47 Bank 2 – Bit 17 48 GND 49 5 V 50 GND 96 • Appendices CDS-3310...
  • Page 158: Layout

    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 Figure 3 DB-28040 Interconnect Mounting Dimensions (Overall Dimensions: 3.075” x 2.650”) CDS-3310 Appendices...
  • Page 159: Cable-15-1M

    The Cable-15-1m is a cable with a 15 pin high-density connector at one end and flying leads at the other that is used to break out the J2 connector on the CDS-3310. This 15 pin cable provides an interface to the encoder and hall sensors. This section lists the color coding for 15 pin cable. (2 meter cables are also available with -2m designation).
  • Page 160 6, module 2, bit 3 to one OB 6006,1 AO 608,3.6 set analog output at handle 6, module 53, bit 1 to 3.6 volts MG @AN[6017] display voltage value of analog input at handle6, module 5, bit 2 CDS-3310 Appendices...
  • Page 161: List Of Other Publications

    This is a “hands-on” seminar and students can test their application on actual hardware and review it with Galil specialists. Attendees must have a current application and recently purchased a Galil controller to attend this course. TIME: Two days (8:30-4:30pm) 100 • Appendices CDS-3310...
  • Page 162: Contacting Us

    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.galilmc.com/ftp CDS-3310 Appendices...
  • Page 163: Warranty

    18 months after shipment. Motors, and Power supplies are warranted for 1 year. Extended warranties are available. In the event of any defects in materials or workmanship, Galil Motion Control will, at its sole option, repair or replace the defective product covered by this warranty without charge. To obtain warranty...
  • Page 164: Index

    EEPROM ..........1, 3, 8, 9, 54 Jog Moves ..............45 Capture Data JP Command ............27 Record..........42, 8, 39, 40, 41 Latching ..............15 Clear Bit............22, 50, 86 Limit Switch.............61 Coordinated Motion Limit Switches ............31 Ecam ..............53–1, 3 Motion Smoothing ...........11 CDS-3310 Index...
  • Page 165 Interrogation ..14, 15, 16, 39, 40, 20, 21, 45, 47, 48 Interrupt ..........19, 29, 30, 32, 53 Stack............29, 30, 33, 53 Invert ............13, 20, 9, 65 Programming...........41, 16, 65 Jog 1, 16, 41, 44, 45, 4, 44 Proportional Gain............14 104 • Index CDS-3310...
  • Page 166 Vector Mode 53, 59, 60, 61, 86 Linear Interpolation............4 Synchronization ..........2, 4, 53 Tangent..............36 Syntax............. 35, 36, 37 Wire Cutter..............55 Tangent............... 36 WSDK..............10, 14 Teach ..............42, 8, 40 Zero Stack .............33, 53 Data Capture ............40, 41 CDS-3310 Index...

Table of Contents