MMC120 Linear Motion Control Module Rev 1.00 991221 Delta Computer Systems, Inc. 11719 NE 95th Street, Suite D Vancouver, WA 98682-2444 Tel: 360/254-8688 Fax: 360/254-5435 http://www.deltacompsys.com email@deltacompsys.
Although great effort has been taken to ensure the accuracy of the information in this document, it is intended to be used only as a guide. Knowledge of motion control, hydraulic servos, electric servos, magnetostrictive displacement transducers, and safety rules is required. Delta Computer Systems, Inc. cannot accept responsibility for problems resulting from omissions in this document. The information in this document is subject to change without notice. Neither Delta Computer Systems, Inc.
Contents OVERVIEW .................................................................................................................................................. 9 FEATURES ................................................................................................................................................ 9 General ........................................................................................................................................... 9 Position Inputs .......................
Contents MMC120 Linear Motion Control Module SAVING PARAMETERS AND PROFILES ....................................................................................................... 26 MOTION CONTROL PARAMETERS ..................................................................................................... 27 INITIALIZATION PARAMETERS ................................................................................................................. 27 CONFIGURATION Word (Default: 0000)...................
MMC120 Linear Motion Control Module Contents Command Type 9 - Open Loop Using Profile (0000 XXXX 1001 NNNN) .................................... 59 Command Type A - Get Profiles (0000 XXXX 1010 NNNN)........................................................ 60 Command Type B - Get Parameters (0000 XXXX 1011 NNNN)................................................... 62 Command Type E - Event Step Edit (0000 XXXX 1110 00NN)....................................................
Contents MMC120 Linear Motion Control Module Function Keys............................................................................................................................... 84 Exiting DCS120 Screens............................................................................................................... 84 Displaying Axis Status Information .............................................................................................. 84 Editing the .INI File..............................
Delta Computer Systems, Inc.
Delta Computer Systems, Inc.
MMC120 Linear Motion Control Module Overview OVERVIEW The MMC120 Motion Control Module is a complete two-axis position control subsystem for the Modicon TSX Quantum Automation Series family of Programmable Controllers. An onboard processor controls the axes, providing complete independent PID motion control loops and allowing on-the-fly motion profile changes. The module has two optically isolated magnetostrictive transducer interfaces and two optically isolated ±10 volt outputs.
Overview MMC120 Linear Motion Control Module Drive Outputs • Two optically isolated ±10 volt outputs • 12 bit digital-to-analog converters • Current output available with VC2100 voltage-to-current option 10 Delta Computer Systems, Inc.
MMC120 Linear Motion Control Module Overview SPECIFICATIONS Temperature Operating: 0oC to +60 oC Storage: -40oC to +85 oC Humidity 93% non-condensing Vibration Resistance 1 g at 60 Hz to 500 Hz for 23 minutes 0.
Overview MMC120 Linear Motion Control Module Bus Compatibility ModConnect® Certified partners Quantum Automation Series Direct connection to Quantum backplane 4 input and 4 output registers, using 64 input and 64 output points 32 registers for parameter storage (16 per axis) 32 registers maximum for profile storage (16 per axis) 2048 registers maximum for event steps (256 steps) Fail Safe Timers The MMC120 has two fail safe timers: Drive Output Disable -- 15 microseconds The fastest fail safe timer on t
MMC120 Linear Motion Control Module Description DESCRIPTION Principle Of Operation Position Measurement The MMC120 has interface circuitry for two magnetostrictive transducers. Each axis can be configured for a Start/Stop transducer or a Pulse Width Modulated transducer by changing the axis' Configuration Word. To make a measurement with a Start/Stop transducer, the MMC120 sends an interrogation pulse to the transducer. The transducer responds by returning 2 pulses -- a 'Start' pulse and a 'Stop' pulse.
Description MMC120 Linear Motion Control Module Control Loop The MMC120 is a targeting controller; each millisecond the onboard microprocessor updates the TARGET POSITION and target speed values. For point-to-point moves, TARGET POSITIONS are generated so the target speed follows a profile. The MODE, ACCELERATION, DECELERATION, SPEED, and COMMAND VALUE (requested position) are used to generate the profile. They are specified by the user, and can be changed while the axis is moving.
MMC120 Linear Motion Control Module Description In addition to the closed loop drive, the MMC120 has two feed forward terms, made up of EXTEND and RETRACT FEED FORWARD, and EXTEND and RETRACT ACCELERATION FEED FORWARD. These feed forward terms give approximately the drive needed to make the axis follow the target, freeing the PID loop to correct for nonlinearity in the system and changes in system load.
Front Panel Indicators MMC120 Linear Motion Control Module FRONT PANEL INDICATORS There are 14 green and red light emitting diodes (LEDS) on the front panel of the MMC120. These LEDS provide status information about the module and each of the two axes. The LED labeled "F" is the FAIL indicator for the MMC120 microprocessor. If the FAIL indicator is red, the drive outputs are disabled and the axes will not move unless the valve is out of null.
MMC120 Linear Motion Control Module Setup Checklist SETUP CHECKLIST Wiring (Pages 18 and 19) Wire magnetostrictive transducers to 9-pin terminal block on MMC120. See your transducer documentation for connector pinout or cable color code information.
Preparing For Installation MMC120 Linear Motion Control Module PREPARING FOR INSTALLATION Wiring Notes Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed for your transducers. Drive Outputs When wiring the system, it is important that the drive extends and transducer counts increase when a positive voltage is sent to the drive.
MMC120 Linear Motion Control Module Preparing For Installation Temposonics I transducer users: For the negative interrogation version of this transducer, connect the transducer '+ interrogation in' wire to the MDT Common pin and the transducer '- interrogation in' wire to the '- Int' pin. CONNECT NOTHING TO THE '+ INT' PIN OF THE MMC120. Connect the transducer return plus wire to the '+' return pin on the MMC120 and the transducer return common wire to MDT Common on the MMC120.
Preparing For Installation MMC120 Linear Motion Control Module Serial Port The communication cable attached to the serial port is a potential source of electromagnetic radiation from the MMC120. To minimize radiation, use a well-shielded cable which is as short as possible. Route it out the bottom of the module and against the back panel.
MMC120 Linear Motion Control Module Preparing For Installation Hydraulic System Notes Hydraulic systems must have enough pressure and fluid volume (accumulator) to move the desired load the commanded distance at the commanded speed. Inadequate pressure or volume will cause the axis to lag the target position as the controller attempts to move the axis faster than the system can move. There should be no flexible hose between the valve and the cylinder being controlled.
Startup MMC120 Linear Motion Control Module STARTUP CAUTION: Do not connect the drive outputs to the drives until the EXTEND and RETRACT limits have been determined and the MMC120 has been properly initialized with these limits by the Quantum Programmable Controller. Great care must be taken to avoid accidents when starting the Motion Control Module for the first time. The most common accident is a runaway, where the motion controller tries to go to a position beyond the physical limits of an axis.
MMC120 Linear Motion Control Module Startup SCALE Parameter (Default: 30300) Range: -32767 to 32767, excluding 0 The SCALE factor converts TRANSDUCER COUNTS to Position Units. The SCALE is defined as: SCALE = Position Units per Inch x 32768 x Sign Transducer Cal. Number (µs/in.) x 120 MHz Where 'Sign' equals +1 when an extend move yields increasing ACTUAL POSITION, and -1 when an extend move yields decreasing ACTUAL POSITION.
Startup MMC120 Linear Motion Control Module Open Loop Procedure CAUTION - OPEN LOOP OPERATION IGNORES ALL LIMITS! BE PREPARED TO REMOVE DRIVE POWER! A. Connect the MMC120 drive output to the valves. B. In DCS120, with the cursor on the axis you want to adjust, enter Alt-R to restore the null. Put 0 (zero) in the COMMAND VALUE field, enter Alt-Shift-O, and verify that DRIVE = 0. If the NULL DRIVE is not zero, enter Alt-N to zero it. C. Turn on the hydraulics (the axis will drift due to valve null errors).
MMC120 Linear Motion Control Module Startup Tuning There is no substitute for experience when tuning an axis. This section offers some guidelines, tips, and suggestions for tuning your system. While these steps will work for many systems, they may not be the best for a particular system. In many hydraulic systems the feed forward parameters (EXTEND FEED FORWARD and RETRACT FEED FORWARD) are the most important parameters for position tracking during a move.
Startup MMC120 Linear Motion Control Module increased. If the FOLLOWING ERROR occurs on an extend move, increase the EXTEND FEED FORWARD; it the error occurs on a retract move, increase the RETRACT REED FORWARD. If this doesn't solve the problem, the ACCELERATION and DECELERATION ramps are too steep for the response of the system. Their values can be reduced, or the ACCEL FEED FORWARD and DECEL FEED FORWARD terms can be increased.
MMC120 Linear Motion Control Module Motion Control Parameters MOTION CONTROL PARAMETERS Sixteen Parameter registers and 6 Command registers control the operation of the MMC120. The status of the module is shown in 10 internal Readback registers. Manipulating the contents of the Parameter and Command registers is key to the successful application of the MMC120. Delta's DCS120 program (included with the module) gives you direct access to all the internal registers. This is helpful for setup and debugging.
Motion Control Parameters MMC120 Linear Motion Control Module go negative if the motion controller overshoots the target. This is useful for some injection and blow-molding applications. When this bit is set, two changes are made to the way Open Loop mode is used: 1) After completing a move the axis is automatically placed in Open Loop mode with the drive set to null. 2) When a “P” command is sent to the axis, it is placed in Open Loop mode with the drive set to null.
MMC120 Linear Motion Control Module Motion Control Parameters CONFIGURATION Word Bit Map The axis CONFIGURATION word contains 16 bits of information. This hexadecimal table provides an easy way to convert hexadecimal numbers to bit patterns.
Motion Control Parameters MMC120 Linear Motion Control Module SCALE (Default: 30300) Range: -32767 to 32767, excluding 0 See the Startup section (page 20) for additional information. TIP: Use DCS120 commands P0 and P1 to help calculate SCALE and OFFSET. The SCALE parameter is used to calculate the ACTUAL POSITION in Position Units from the TRANSDUCER COUNTS. Position Units can be 0.001", 0.1 mm, etc. The primary use for the SCALE parameter is to compensate for variations in magnetostrictive transducers.
MMC120 Linear Motion Control Module Motion Control Parameters 9.0110(µs/in) x 120 (MHz) Example 2 For a system using a magnetostrictive transducer with a calibration number of 9.0110 µs per inch and a position unit of 0.1 millimeter, the SCALE will be: 254(Position Units Per Inch) X 32768 SCALE = = 7697 9.0110(µs/in) x 120 (MHz) OFFSET (Default: 0) OFFSET is used to shift the ACTUAL POSITION with respect to the transducer zero.
Motion Control Parameters MMC120 Linear Motion Control Module PROPORTIONAL GAIN = 0.1 millivolt per unit of Position Error Proportional drive is defined as: Proportional Drive = PROPORTIONAL GAIN x Position Error INTEGRAL GAIN (Default: 1) Range: 0 to 65535 The INTEGRAL GAIN is used to control the amount of drive provided by the integrator. The integrator adds the position error to an accumulator every millisecond. INTEGRAL GAIN is defined as: INTEGRAL GAIN = 0.
MMC120 Linear Motion Control Module Motion Control Parameters EXTEND ACCELERATION FEED FORWARD (Default: 0) Range: 0 to 65535 An axis will not respond to a change in the drive output until some time has passed. This causes the error between the actual and target positions to be larger for axes that are moving large masses or have slow valves. The MMC120 can help compensate for these factors by increasing the drive output.
Motion Control Parameters MMC120 Linear Motion Control Module set in the STATUS word. During a Hard Stop, the drive output is set to zero and the axis placed in open loop mode, and held there until a new command is issued; bits 13 (Open Loop) and 14 (Halt) are also set. On startup the Hard Stop error bits are set to E0 hex, enabling only the transducer error bits.
MMC120 Linear Motion Control Module Motion Control Parameters Motion Control Commands The motion control command words (MODE, ACCELERATION, DECELERATION, SPEED, COMMAND VALUE, and COMMAND) can be changed while the axis is in motion. MODE (Default: 00000)(See page 36 for the MODE Word bit map) Eight bits in the MODE word determine the way the MMC120 responds to control commands and parameters. Bit 1 is the MSB and bit 16 is the LSB.
Motion Control Parameters MMC120 Linear Motion Control Module Bits 15 and 16 - Acceleration and Deceleration MODE Select These two bits define four acceleration/deceleration modes: Mode 0 Mode 1 Mode 2 Mode 3 - Bit # 15 16 Ramp Rate (Default) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 Ramp Rate * 1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 1 Distance to specified speed - - - - - - - - - - - - - - - - - - - - - - - - - 1 0 Time to specified speed - - - -
MMC120 Linear Motion Control Module Motion Control Parameters MODE Word Bit Map The axis MODE word contains 16 bits of information. This hexadecimal table provides an easy way to convert hexadecimal numbers to bit patterns.
Motion Control Parameters MMC120 Linear Motion Control Module DECELERATION (Default: 1000) This parameter is the same as ACCELERATION except it specifies the deceleration ramp length or deceleration rate. SPEED (Default: 1000) The SPEED parameter sets the constant speed to be achieved after acceleration. SPEED is expressed in position units/second. If the SCALE is set so one position unit equals .001", a speed of 25 inches per second is expressed as 25000.
MMC120 Linear Motion Control Module Motion Control Parameters Move Profiles The module stores 16 user-programmable move profiles in its memory. The following table lists the default values for these profiles. Profiles 0 through 7 can be changed by either a PLC program or DCS120; profiles 8 through 15 can be changed only by DCS120.
Motion Control Parameters MMC120 Linear Motion Control Module MMC120 Initial Move Profiles A 'Go' or 'Open Loop' command uses the profile of the last move. If these commands are issued immediately after power up, when there is no 'last move' profile, the module uses the following profiles for these commands: Profile Parameter Open Loop Go MODE 1 0 ACCEL 100 1000 DECEL 100 1000 SPEED 0 1000 40 Delta Computer Systems, Inc.
MMC120 Linear Motion Control Module Motion Control Parameters Readback Parameters ACTUAL POSITION The ACTUAL POSITION is the measured position of the axis at any moment. This position is updated every millisecond. The ACTUAL POSITION is calculated from the TRANSDUCER COUNTS as follows: TRANSDUCER COUNTS x SCALE ACTUAL POSITION = + OFFSET 32768 AXIS STATUS Word (See map on page 42) The axis STATUS word contains 16 bits of information about the condition of the axis.
Motion Control Parameters MMC120 Linear Motion Control Module Bit 6 - Position Overflow This bit is set when the ACTUAL POSITION is greater than its 16 bit limit (above 65535 counts). The ACTUAL POSITION will display 65535, indicating an invalid value. The Position Overflow bit is not latched. It causes no action, a Soft Stop, or a Hard Stop, depending on the setting of AUTO STOP bits 6 and 14. This bit will stay on until a new command is given to the axis.
MMC120 Linear Motion Control Module Motion Control Parameters For example, to detect when an axis' target position has come to a halt after an "H" command, monitor for the following status bit combination: Halt bit State bit A State bit B ON (1) (Bit 14) OFF (0) (Bit 12) OFF (0) (Bit 11) You may also want to monitor the Stopped bit (bit 15).
Motion Control Parameters MMC120 Linear Motion Control Module When the axis is moving, the TARGET POSITION is updated each millisecond as it moves toward the COMMAND POSITION. The value can be read by the Quantum Controller on every scan. NOTE: When an axis is stopped, the TARGET POSITION should be the same as the COMMAND POSITION unless an error or HALT has occurred. TRANSDUCER COUNTS TRANSDUCER COUNTS is the axis position read directly from the transducer counters with no scaling.
MMC120 Linear Motion Control Module Motion Control Parameters STATUS Word Bit Map The axis Status word contains 16 bits of information about the status of the axis. This hexadecimal table provides an easy way to convert hexadecimal numbers to bit patterns.
Flash Memory MMC 120 Motion Control Module FLASH MEMORY The MMC120 contains FLASH memory that has two user-accessible sections. Section 1 contains the parameters and profiles for both axes. Section 2 contains the event step table for both axes. The two sections have separate checksums; the checksums are tested on module power-up and on reset. If the parameters initialize bit is off, check the parameter error bits, take the action described below to correct the problem, then issue a 'P' command.
MMC120 Linear Motion Control Module Communicating with the MMC120 COMMUNICATING WITH THE MMC120 Quantum Bus Configuration Select four 3XXXXX registers for inputs and four 4XXXXX registers for outputs of each module. The MMC120 must be configured as a DCS MMC 120 0x module in the I/O map. NOTE: You must confirm that the following line is present in the \MODSOFT\RUNTIME\GCNFTCOP.SYS file.
Communicating with the MMC120 MMC120 Linear Motion Control Module In addition to the parameter storage blocks, memory may be allocated for profile and event step storage if these features are used. Each profile requires four registers and each module can store up to eight profiles in the PLC's memory, for a total of 32 registers. These first eight profiles can be changed from the PLC and another eight, for a total of 16, can be changed from DCS120.
MMC120 Linear Motion Control Module Communicating with the MMC120 Output Registers Four 16-bit registers are sent to the MMC120 each time the I/O drop is accessed. The registers contain commands and data: Register Number Contents 4TTTTT + 0 4TTTTT + 1 4TTTTT + 2 4TTTTT + 3 Command - Axis 1 Data Out - Axis 1 Command - Axis 2 Data Out - Axis 2 The commands sent to the two axes are independent of each other.
Communicating with the MMC120 MMC120 Linear Motion Control Module Command Types The Command Types available for controlling the MMC120 are: Command Type 0 1 2 3 4 5 6 7 8 9 A B C D E F Extended E Binary Representation 0000 XXXX 0000 NNNN 0000 XXXX 0001 NNNN 0000 XXXX 0010 NNNN 0000 XXXX 0011 NNNN 0000 XXXX 0100 NNNN 0000 XXXX 0101 NNNN 0000 XXXX 0110 NNNN 0000 XXXX 0111 NNNN 0000 XXXX 1000 NNNN 0000 XXXX 1001 NNNN 0000 XXXX 1010 NNNN 0000 XXXX 1011 NNNN 0000 XXXX 1100 NNNN 0000 XXXX 1101 NNNN 0000 XXXX 1
MMC120 Linear Motion Control Module Communicating with the MMC120 Command Type 1 - Go Using Profile (0000 XXXX 0001 NNNN) The Go Using Profile command allows the Quantum Programmable Controller to tell the MMC120 to move the axis using stored profiles. These are the most commonly used commands. The Go Using Profile command toggles the Acknowledge bit and clears the In Position bit in the STATUS word.
Communicating with the MMC120 MMC120 Linear Motion Control Module Command Type 2 - Set Profiles (0000 XXXX 0010 NNNN) These commands allow the programmer to change motion profiles stored in the MMC120. Only one value in one profile can be changed each time the drop is accessed, but the profiles can be changed while the axis is moving. The new profile will be used by the next Go Using Profile command specifying that profile. New GO commands can also be given while the axis is moving.
MMC120 Linear Motion Control Module Fourth Scan 4TTTTT + + + + 0 1 2 3 0X2Bh 12000 0X2Bh 20000 Communicating with the MMC120 (Set profile 2 SPEED) (SPEED for profile 2) (Set profile 7 SPEED) (SPEED for profile 7) These four scans result in: Profile 2 - MODE ACCEL DECEL SPEED = 0001h = 100 = 70 = 12000 Delta Computer Systems, Inc.
Communicating with the MMC120 MMC120 Linear Motion Control Module Command Type 3 - Set Parameters (0000 XXXX 0011 NNNN) These commands allow the Quantum Programmable Controller to download new initialization parameters to the MMC120. New parameters can be downloaded at any time, but they do not take effect until a 'P' command is issued (see Command Type 5). An axis must be stopped when issuing a 'P' command.
MMC120 Linear Motion Control Module Communicating with the MMC120 Command Types 4, 5, 6, and 7 - ASCII Commands (0000 XXXX 01NN NNNN) These commands usually don't require parameters. The 'E', 'I', 'G', 'J', 'M', 'N', 'O', 'U', and ‘V’ commands are exceptions. The MMC120 acknowledges these commands by setting the Acknowledge bit in the STATUS word until the next time the drop is accessed.
Communicating with the MMC120 MMC120 Linear Motion Control Module NOTE: When issued by the PLC, these commands must be entered in Hex or Binary. The ASCII representation is used by the DCS120 software package. 'A' - Change ACCELERATION (41h) This commands sets the ACCELERATION parameter to the value in the data register of the PLC or the COMMAND VALUE field in DCS120.
MMC120 Linear Motion Control Module Communicating with the MMC120 'K' - Disable Drive Output (4Bh) This command immediately sets the drive output on the module to the current null value. This is equivalent to a Hard Stop. The output will remain at null until a new command is issued. When a 'K' command is issued from DCS120 it is issued to all axes simultaneously. When issued from the Quantum PLC, it goes only to the specified axis.
Communicating with the MMC120 MMC120 Linear Motion Control Module 'S' - Save Null (53h) The Save Null command saves the current value of the null so it can be recalled later with a Restore Null command ('R'). 's' - Save Integral Drive (73h) This command saves the current value of the Integral Drive so it can be recalled later with a Restore Integral Drive command ('r').
MMC120 Linear Motion Control Module Communicating with the MMC120 Command Type 9 - Open Loop Using Profile (0000 XXXX 1001 NNNN) The Open Loop Using Profile command allows the Quantum to tell the MMC120 to change the output drive to a specified value with respect to null. The drive output will change at a rate specified by the selected prestored profile. NOTE: This command shares the profile table used by the "Go Using Profile" commands.
Communicating with the MMC120 MMC120 Linear Motion Control Module The 4 output registers are defined as follows: 4TTTTT+0 4TTTTT+1 Axis 1 Command - Open Loop using profile Axis 1 Requested Drive 4TTTTT+2 4TTTTT+3 Axis 2 Command - Open Loop using profile Axis 2 Requested Drive Command Type A - Get Profiles (0000 XXXX 1010 NNNN) These commands allow the Programmable Controller to retrieve from the MMC120 profile data that was set up with DCS120.
MMC120 Linear Motion Control Module Communicating with the MMC120 Second Scan: Returns: 3TTTTT + + + + 0 1 2 3 xxxx (Axis 1 status) xxxx xxxx (Axis 2 Status) 0002d (Profile 5 MODE) Sends: 4TTTTT + + + + 0 1 2 3 xxxx xxxx 00A5h (Get Profile 5 ACCEL) xxxx Returns: 3TTTTT + + + + 0 1 2 3 xxxx (Axis 1 status) xxxx xxxx (Axis 2 status) 0050d (Profile 5 ACCEL) Sends: 4TTTTT + + + + 0 1 2 3 xxxx xxxx 00A6h (Get Profile 5 DECEL) xxxx Returns: 3TTTTT + + + + 0 1 2 3 xxxx (Axis 1 status) xxxx xxx
Communicating with the MMC120 MMC120 Linear Motion Control Module Command Type B - Get Parameters (0000 XXXX 1011 NNNN) These commands allow the Programmable Controller to read the current state of the MMC120 initialization parameters. These commands are similar to the Type A commands. The requested parameter will be returned in the corresponding axis status area, and it will be available the next scan after the ACK bit toggles. It will take 17 scans to get all 16 parameters.
MMC120 Linear Motion Control Module Communicating with the MMC120 Command Type E - Event Step Edit (0000 XXXX 1110 00NN) The "Event Step Edit" commands let you change an event parameter's value across a range of steps in a single scan.
Communicating with the MMC120 MMC120 Linear Motion Control Module Extended Command Type E - Event Step Transfer (1110 DSSS SSSS SNNN) The "Event Step Transfer" commands are used to move event step information to and from the MMC120. The ‘D’ bit indicates the direction of data transfer (0 = Put Step, 1 = Get Step), the ‘S’ bits specify the step number, and the ‘N’ bits specify the field of the step to be transferred.
MMC120 Linear Motion Control Module Communicating with the MMC120 Input Registers Status Information can be selectively read by the Quantum Programmable Controller by using the Status Area Request (SAR) field of the command words. The status word returned per axis is specified in the SAR field of the command for the axis.
Quantum Programming Hints MMC120 Linear Motion Control Module QUANTUM PROGRAMMING HINTS The Programmable Controller is responsible for storing the initialization parameters used by the MMC120 and initializing the Motion Control Module with those parameters. The MMC120 provides a STATUS word for each axis. If an error bit is set in the STATUS word, the Programmable Controller is responsible for shutting down the axis drive power.
MMC120 Linear Motion Control Module Troubleshooting TROUBLESHOOTING Problems and Solutions Ladder program cannot access parameters or operate module 1) Module not configured properly - Active LED off. Configure the module as a 4 input and 4 output register module with binary format. 2) Make sure the Programmable Controller is accessing the correct I/O registers. Red LEDS 2, 3, 4, 6, 7, or 8 are on This indicates the transducer is not responding to the module.
Troubleshooting MMC120 Linear Motion Control Module The System is unresponsive and hard to tune This problem could have several causes. The first items to check are: 1) Is there hose, rather than rigid pipe, installed between the hydraulic valve and the cylinder? The hose acts like an accumulator and the fluid goes to fill the hose rather than move the cylinder. 2) Does the valve have overlap? Overlap in hydraulic valves causes a significant dead band and slows the system response.
MMC120 Linear Motion Control Module Hydraulic System Problems HYDRAULIC SYSTEM PROBLEMS These hydraulic system problems can make system tuning difficult or impossible. Nonlinear Valves A valve is linear when the flow through it is directly proportional to the input signal over the entire range of the input signal. It is nonlinear when the output is not directly proportional to the input.
Hydraulic System Problems MMC120 Linear Motion Control Module Pumps and Accumulators Insufficient pump and/or accumulator capacity will cause the system response to degrade during a move because the effective pressure drops. Pressure transients due to insufficient accumulator volume cause jerky motion, particularly during starts and stops. Note: Even systems with ‘fast’ pumps usually require at least a small accumulator near the cylinder to maintain the constant pressure needed to get smooth motion.
MMC120 Linear Motion Control Module Hydraulic System Problems If the speeds show: Your valve is probably curvilinear. Replace the valve with a linear one or increase the proportional gain and tune the system for high-speed stability; expect poor control at low speed and when stopped. If the speeds show: You may have too much hose between the valve and the cylinder. Reduce the amount of hose or add differential gain (usually less than 5). Delta Computer Systems, Inc.
Hydraulic System Problems MMC120 Linear Motion Control Module If the speeds show: Your valve may have slow response. Change to a faster valve or add Acceleration Feed Forward. With normal gain values, if the graph shows: Your pump and/or accumulator may be inadequate (you are running out of oil). Reduce speed, increase pump pressure, add accumulator volume, or get a bigger pump. 72 Delta Computer Systems, Inc.
MMC120 Linear Motion Control Module Repairs and Returns REPAIRS AND RETURNS Warranty The MMC120 shall be free from defects in materials and workmanship under normal and proper use and service for a period of fifteen (15) months from the date of shipment by Delta Computer Systems, Inc. (Delta) or Delta's authorized distributor so long as the module was under warranty when shipped to the customer by the distributor.
Glossary MMC120 Linear Motion Control Module GLOSSARY OF TERMS Actual Position - The scaled measured axis position expressed in Position Units. Circulation - The process of sending an interrogation signal to a transducer and counting a high frequency clock while waiting for the transducer to respond. Cleared - Refers to a FALSE or logic zero value. Counts - Raw number of digital counts for a given physical distance. The number has NOT been scaled to represent the actual physical distance.
MMC120 Linear Motion Control Module ASCII Table ASCII TABLE This is a list of all the standard ASCII control characters, listing the keyboard character, hex value, and decimal value of the character. Key Hex Dec Key Hex Dec Key Hex Dec ^@ ^A ^B ^C ^D ^E ^F ^G ^H ^I ^J ^K ^L ^M ^N ^O ^P ^Q ^R ^S ^T ^U ^V ^W ^X ^Y ^Z 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 + , .
Description Motion Controller Diagnostic and Setup Program Appendix A: DCS120 Diagnostic and Setup Program Description DCS120-DOS is a DOS-based software package that allows you to access, display, troubleshoot, and control features of Delta's MMC120 TSX Quantum motion control products. Used with an IBM PC or compatible, DCS120 allows you to adjust the Motion Control Module’s parameters and make simple movements. You can display a motion trajectory using DCS120's graphic or ASCII formats.
MMC120 Linear Motion Control Module Appendix A: DCS120 Initial Startup Using Display-Only Mode For a quick demonstration of the program, setup DCS120-DOS from the disks provided, then type MMCDOS PC from the installed directory. Since no hardware needs to be connected, DCS120 will display the PC Mode parameters. Note "PC AT" in the upper left corner; this indicates PC (display only) mode. See pages 81-79 for the list of available commands. PC AT 0.99 19990709 DEL TA Computer Systems, Inc.
Appendix A: DCS120 MMC120 Linear Motion Control Module You can also display graphic information previously saved on the disk. The DCS120 distribution disk has two demonstration files: stall.plt and multi.plt. You can use the RP (Read Plot) command to display them. Example: type RP stall . Stall.plt 78 Delta Computer Systems, Inc.
MMC120 Linear Motion Control Module Appendix A: DCS120 Initial Startup Using Motion Control Module Before DCS120 can be used with a Motion Control Module you must connect the appropriate hardware. Refer to pages 17-19 for hardware connection information. Once you have connected the hardware, you must configure DCS120 to match it. Insert the DCS120 disk in drive A and type a:install (you can substitute drive B for A). Select the directory where you want to install DCS120.
Appendix A: DCS120 MMC120 Linear Motion Control Module The DCS120 Screen The DCS120 main screen is divided into five parts: Read Only Parameters Initialization Parameters Command Queue Command Parameters Input Field Read Only Parameters Read Only parameters contain status information about the Motion Control Module. On color monitors this area is green. These parameters are updated automatically by the controller. Do not attempt to write into this section; entries are ignored.
MMC120 Linear Motion Control Module Appendix A: DCS120 Summary of Keyboard Commands When the Shift, Ctrl or Alt keys are pressed, a menu of the available commands is displayed at the bottom of the screen. Pressing the key multiple times will scroll through the entire list of commands available with that key. To change most parameters, cursor to the field and enter a new value. To see the help file of a parameter, press Ctrl-H when the cursor is on that field.
Appendix A: DCS120 MMC120 Linear Motion Control Module Alt Key Commands Alt A D E F G H I i J K M N n Shift-O P Q R r S s U V Change ACCELERATION Change DECELERATION Start Events Feedforward adjust (auto tuning) Issue a Go command to the selected axis Halt command to axis Integral Drive set Integral Drive clear Relative move Issue Emergency Stop command to all axes Set MODE Set NULL Null Drive clear Open Loop Activate control parameters (initializes the axis the cursor is on) Quit events Issue a Restore
Motion Controller Diagnostic and Setup Program Graphs Diagnostic Graphs You can see a diagnostic graph after each move started with a “G” or “O” command. The MMC120 acquires data for each move automatically. Press the INS key to display the graph. Press SHIFT-INS to display the graph with Command Queue data included. The graph displays information with the time base specified in the Plot Time field.
Appendex A: DCS120 MMC120 Linear Motion Control Module Keyboard Commands Getting Help To display the help file of a particular parameter, place the cursor on the line of that parameter then press Ctrl-H. You can also press Shift-? to display the DCS120.HLP file, which contains general help and information about DCS120. The help files are displayed using the editor specified in the .ini file. Follow the editor’s instructions for exiting back to the original DCS120 screen.
MMC120 Linear Motion Control Module Appendix A: DCS120 Open Loop Command CAUTION: OPEN LOOP MODE DISABLES ALL SAFETY CHECKS OF THE MOTION CONTROL MODULES! USE THIS COMMAND WITH CARE! You can execute the "O" (open loop) command by pressing Alt-Shift-O or entering the ASCII value for O (decimal 79) in the COMMAND field. (First you must specify the millivolts of drive output required in the COMMAND VALUE field.
Appendex A: DCS120 MMC120 Linear Motion Control Module Moving Axes Simultaneously Axes can be moved simultaneously with DCS120. When you set the sync bit (bit 12) in the MODE word on both axes, the axes will only respond to G (go) commands when the last axis is given a command. This allows you to configure both axes with requested positions then make them move in unison. Table Editors Three Table Editors are available in DCS120.
MMC120 Linear Motion Control Module Appendix A: DCS120 Advanced Features DOS Command Line Options Syntax: MMCDOS [ini_file] [project_file] [-options] When you start DCS120, you can include up to two command line parameters and several startup options. The first parameter is the name of the initialization file DCS120 uses to configure itself. The default file is DCS120.INI. The second parameter is the name of the project files that contain information about each of the Motion Control Modules in the system.
Appendix A: DCS120 MMC120 Linear Motion Control Module Initialization File To operate, DCS120 must have a filename.INI file. The purpose of the .INI file is to configure DCS120 to work in the display only mode (PC mode) or work with a TSX Quantum PLC. The .INI file must also specify the type of communications used (port and baud rate). NOTE: If the keyword in brackets is not the first item on the line then that line is a comment.
MMC120 Linear Motion Control Module Appendix A: DCS120 [READBACK] The [READBACK] parameter determines whether DCS120 starts up in the Readback mode or Write mode.
Appendix A: DCS120 MMC120 Linear Motion Control Module Project Files The project files are used to set the initialization parameters for each axis. They also contain function key definitions and profile definitions. The name of the file is set in DCS120.INI file in the [PROJECT] field but will always use the .BDn extension. Each module in the system has a .BDn file. DCS120 software is shipped with one .BDn file. These files can be edited to match different configurations.
MMC120 Linear Motion Control Module Appendix A: DCS120 .
Appendix A: DCS120 MMC120 Linear Motion Control Module PRn (Profile) example: [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] [PROF] PROF# 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 MODE 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 00001 ACCEL 25 50 75 100 125 150 25 150 100 100 100 100 100 100 100 100 DECEL 25 50 75 100 125 150 150 25 100 100 100 100 100 100 100 100 SPEED 5000 10000 15000 20000 25000 30
DCS120 Diagnostic and Setup Program User Notes User Notes Negative Offset DCS120 displays both positive and negative numbers in the position, extend limit, and retract limit fields. The way position and limit fields are displayed is determined by the offset field. Most applications requiring an offset use a negative offset. The rule is: all numbers between the negative offset and 0 are displayed as negative numbers.
User Notes DCS120 Diagnostic and Setup Program MMC120 Communication Cable DCS120 communicates with the MMC120 through the RS-232 port on the module.
MMC120 Linear Motion Control Module Appendix B: Event Control Appendix B: Event Control Introduction The Event Control feature in the MMC120 allows you to execute a sequence of commands without intervention from the Programmable Controller (P/C). This lets the module respond to events within one millisecond rather than the scan rate of the P/C. It also reduces the ladder logic programming required. Overview Event Control consists of a series of Steps which are linked together in sequences.
Appendix B: Event Control MMC120 Linear Motion Control Module MODE ACCEL DECEL SPEED COMMAND VALUE COMMAND LINK NEXT | LINK TYPE LINK VALUE Step Table Steps are stored in MMC120 memory. There are eight 16 bit words per Step (6 for the command and 2 for the link). The table has a maximum length of 2048 words (8 x 256). The table is not necessarily 2048 words long. It is only long enough to hold all the steps up to the highest Step number used.
MMC120 Linear Motion Control Module Appendix B: Event Control Linking Steps Link Next Link Next is the number of the Step to be executed in the sequence as soon as the conditions specified by Link Type and Link Value are met. Its range is 0 to 255. Link Type and Link Value Link Type and Link Value specify the condition which causes the MMC120 to execute the next Step in a sequence. There are two link types: Basic and Enhanced.
Appendix B: Event Control MMC120 Linear Motion Control Module Link Type b - Status bit off This Link Type causes the MMC120 to execute the next Step in the sequence as soon as one of the selected status bits is set to 0. The Link Value for Link Type b is a bit pattern expressed in hexadecimal. For example, bit pattern 0000 0000 0010 0000 binary is 0020 hex, and specifies bit 11 (State bit B). If this bit is set to 0 the next Step will execute.
MMC120 Linear Motion Control Module Appendix B: Event Control Enhanced Link Types Enhanced Link Types provide a way to trigger an event on one axis from the other axis' parameters. The Enhanced Link Types have the same link description, value, and range as the Basic Link Types, plus additional link types. The bits in the Enhanced Link Type byte are defined as follows: MSB LSB Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8 Bit 1 - Enhanced Link Type flag.
Appendix B: Event Control MMC120 Linear Motion Control Module Example In the following example three steps are executed. They cause the axis to make a move, wait, and then make another move: Mode Accel Decel Speed Command Value Command Link Type Link Value Link Next Step 15 00001 100 100 10000 15500 G B 00001 16 Step 16 00001 100 100 10000 10000 D 500 17 Step 17 00001 100 100 10000 3000 G 0 0 0 Step 15 issues a “Go” command to 15.5 inches (15500).
MMC120 Linear Motion Control Module Appendix B: Event Control Using DCS120 Step information for the MMC120 is generally programmed using DCS120, but you can modify the Step table directly with the P/C by using Command Type E and Extended E (see pages 63 and 64). MMC120 0.99 19990709 MODE ACCEL DECEL SPEED POSITION COMMAND LINK TYPE LINK VALUE LINK NEXT DELTA Computer Systems, Inc.
Appendix B: Event Control MMC120 Linear Motion Control Module Reading Step files from disk and module To read a Step file from disk to DCS120, press Ctrl-R. A list of available step files will be displayed; enter the desired file name and press Enter (but do not enter the .ST1 extension). To read the Step file from the MMC120 to DCS120, press Alt-R.
MMC120 Linear Motion Control Module Appendix B: Event Control Notes Reading the Current Step The Step field value indicates which step the axis is current executing; the P/C can read this field to find the step being executed. When the axis is not executing steps this field is 0. Terminating a Loop Step chains which are not endless loops should end with Step zero. The last Step which executes a command should have a link type 0 (zero).
Index MMC120 Linear Motion Control Module Index A ACCELERATION, 14, 15, 24, 25, 26, 32, 34, 35, 37, 50, 53, 54, 55, 56, 58, 61, 63, 81 ACTUAL POSITION, 13, 14, 23, 24, 27, 29, 30, 31, 32, 40, 41, 42, 64 ACTUAL SPEED, 43, 76, 78 ASCII, 49, 54, 55, 74, 75, 84, 86, 87, 94, 96 Auto Stop, 16, 24, 33, 40, 41, 44, 46, 53, 61, 65, 76, 78, 89 AXIS STATUS, 40 C Checksum, 45, 66 Circulation, 73 COMMAND, 14, 24, 26, 30, 31, 32, 34, 37, 42, 43, 45, 55, 56, 57, 58, 63, 76, 78, 80, 84, 89, 90, 91, 95, 100 COMMAND VALUE
MMC120 Linear Motion Control Module R Requested Position, 14, 30, 34, 42, 55, 85 Restore Null, 57, 81 RETRACT FEED FORWARD, 15, 25, 32, 53, 61 RETRACT LIMIT, 23, 24, 26, 30, 31, 37, 46, 53, 61, 76, 78, 89 S Save Null, 57, 81 SCALE, 22, 23, 29, 30, 31, 35, 37, 40, 46, 53, 61, 73, 76, 78, 84, 89 Set, 17, 22, 24, 27, 37, 41, 49, 51, 52, 53, 54, 55, 56, 73, 81 Set Feed Forward, 55 Set Parameters, 53, 56 Delta Computer Systems, Inc 360/254-8688 Index Simulation, 36 SPEED, 14, 24, 25, 26, 32, 34, 35, 37, 38,