^1 USER MANUAL ^2 PMAC ^3 Programmable Multi-Axis Controller ^4 3Ax-602264-xUxx ^5 June 28, 2007 Single Source Machine
PMAC User Manual vi Table of Contents Interface to Other Firmware...
PMAC User Manual 80 Setting Up a Motor Table Range The compensation is defined directly for a range of source motor positions starting at zero coun
PMAC User Manual Setting Up a Motor 81 Uses of Cross-Axis Compensation The ability to have separate source and target motors for a table has several
PMAC User Manual 82 Setting Up a Motor S1=L1/NS2=L2/MC =CORRECTION1L1S1(0)S2L2C1C2CN-1CNCN+1CN+2CN+3C2NC2N+1C2N+2C2N+3C2N+4C3N+1C3N+2+SOURCE 1POSIT
PMAC User Manual Setting Up a Motor 83 Backlash Tables A backlash compensation table created with the DEFINE BLCOMP command can be used to create bac
PMAC User Manual 84 Setting Up a Motor The compensation table definition to create these corrections would be: DEFINE COMP 8,4000 -160 80 120 96 40
PMAC User Manual Setting Up a Motor 85 83 ;Correction at 750 counts is 83 DAC bits -97 ;Correction at 1000 counts is -97 DAC bits 60
PMAC User Manual 86 Setting Up a Motor
PMAC User Manual Setting Up PMAC Commutation 87 SETTING UP PMAC COMMUTATION Introduction This section explains how to set up the commutation scheme i
PMAC User Manual 88 Setting Up PMAC Commutation 16THUMBWHEELSRS4228 (16)POSITION ANDHANDWHEELENCODEREXPANSION I/OAND iSBXPMACEXTENSIONHOSTCOMPUTERB
PMAC User Manual Setting Up PMAC Commutation 89 Permanent Magnet Brushless Motor Commutation When commutating a permanent magnet brushless motor (oft
PMAC User Manual Table of Contents vii Multiple-Motor Axes...
PMAC User Manual 90 Setting Up PMAC Commutation If a non-absolute sensor is used for commutation, PMAC must perform a search move for the proper ph
PMAC User Manual Setting Up PMAC Commutation 91 In the stepper-motor phasing search, PMAC first forces current to put the motor at the +/-60o point i
PMAC User Manual 92 Setting Up PMAC Commutation OPEN PLC 1 CLEAR CMD”#2O0” ; Force zero-magnitude open-loop P229=I229 ; Save real Phase A
PMAC User Manual Setting Up PMAC Commutation 93 For example: M171->TWR:0,2 ;Resolver at multiplexer address 0, location 2 at that ; address on
PMAC User Manual 94 Setting Up PMAC Commutation Saving Values Once confirmed that the proper phasing can be reached with the $ command, save the pa
PMAC User Manual Setting Up PMAC Commutation 95 Hall Diagram This diagram shows the hall-effect waveforms with zero offset, defined such that the V-s
PMAC User Manual 96 Setting Up PMAC Commutation Switched Reluctance Motor Commutation To the PMAC commutation algorithm, a switched (variable) relu
PMAC User Manual Setting Up PMAC Commutation 97 sec)/updates(RateUpdatePhase)Hz(FreqSlip)update/cycles(FreqSlip = The phase update rate for PMAC is d
PMAC User Manual 98 Setting Up PMAC Commutation Determination of the proper magnetization current is best done with a simple experimental technique
PMAC User Manual Setting Up PMAC Commutation 99 • Plot the velocity-vs.-time graph on the screen. Calculate an acceleration value from the slope of
PMAC User Manual viii Table of Contents I-Variable Default Value Assignment ...
PMAC User Manual 100 Setting Up PMAC Commutation Setting the I-Variables Setting up a motor for microstepping is simply a matter of setting motor I
PMAC User Manual Setting Up PMAC Commutation 101 Using the Motor Once the motor is set up, use it just as any other PMAC motor. In fact, because it
PMAC User Manual 102 Setting Up PMAC Commutation
PMAC User Manual Closing the Servo Loop 103 CLOSING THE SERVO LOOP The Purpose of the Servo Loop PMAC automatically closes a digital servo loop for a
PMAC User Manual 104 Closing the Servo Loop Amplifier Types PMAC can interface to a variety of different types of amplifiers. The type of amplifie
PMAC User Manual Closing the Servo Loop 105 Torque-mode amplifiers are popular for several reasons. Since they do not need a tachometer or analog ve
PMAC User Manual 106 Closing the Servo Loop Finally, it provides a safer failure mode on loss of feedback. When a servo algorithm loses feedback,
PMAC User Manual Closing the Servo Loop 107 ReferencePositionIMSecondaryPosition("Velocity")Feedback(usuallythe same)PrimaryPositionFeedbac
PMAC User Manual 108 Closing the Servo Loop Actual PID Algorithm The actual equation used in the PID algorithm to compute the commanded output for
PMAC User Manual Closing the Servo Loop 109 Automatic Notch Specification With the PMAC Executive Program, set up a notch filter (this can be done wi
PMAC User Manual Table of Contents ix Defining the Plane of Compensation ...
PMAC User Manual 110 Closing the Servo Loop For example, suppose a 55 Hz resonance has been identified in the mechanical coupling. To compensate f
PMAC User Manual Closing the Servo Loop 111 Lead-Lag The notch filter can be used as a lead-lag filter if the roots are real rather than imaginary.
PMAC User Manual 112 Closing the Servo Loop What is needed to write the Filter The user-written filter will be written on host computer using a cro
PMAC User Manual Closing the Servo Loop 113 • On entry, the X register contains a 48-bit integer representing actual position (APOS) in units of 1/(
PMAC User Manual 114 Closing the Servo Loop ; period factor and its counter should be ; initialized in L:SAMP_A. Notice the sampling ; period c
PMAC User Manual Closing the Servo Loop 115 int argc; char *argv[]; { m = 0; x = 0; if (argc > 1) { infile = fopen(strcat(strcp
PMAC User Manual 116 Closing the Servo Loop
PMAC User Manual Making Your Application Safe 117 MAKING THE APPLICATION SAFE Responsibility for the Safety of a Control System Delta Tau Data System
PMAC User Manual 118 Making Your Application Safe Software Overtravel Limits PMAC also has positive and negative software limits for each motor to
PMAC User Manual Making Your Application Safe 119 PMAC only performs the integrated following error check if the Ix63 integration limit parameter is
PMAC User Manual x Table of Contents Calculation of Subsequent Moves...
PMAC User Manual 120 Making Your Application Safe Ix17 is particularly useful to prevent unreasonable moves early in system development, when it is
PMAC User Manual Making Your Application Safe 121 where: a. Iq (quadrature current) is the commanded torque-producing output of the PID filter in uni
PMAC User Manual 122 Making Your Application Safe Watchdog Timer PMAC has an on-board dead-man (or watchdog) timer. This subsystem provides a fail
PMAC User Manual Making Your Application Safe 123 Program Checksums PMAC continually computes the checksum of its internal program (firmware) as a ba
PMAC User Manual 124 Making Your Application Safe
PMAC User Manual Basic Motor Moves 125 BASIC MOTOR MOVES Commanding Some Basic Moves for the Motor Once the motor is defined and basically working, c
PMAC User Manual 126 Basic Motor Moves Indefinite Jog Commands J+ commands an indefinite positive jog for the addressed motor; J- commands an indef
PMAC User Manual Basic Motor Moves 127 • Ix03 bit 16 specifies whether the hardware-captured counter value is used as the trigger position — suitabl
PMAC User Manual 128 Basic Motor Moves Homing Search Move Control Homing Acceleration The acceleration for homing search moves is controlled by the
PMAC User Manual Basic Motor Moves 129 Trigger Signals and Edges Once the set of flags for the motor have been specified with Ix25, use Encoder/Flag
PMAC User Manual Table of Contents xi Compiled PLC Programs...
PMAC User Manual 130 Basic Motor Moves Although the homing switch does not need to be placed accurately in this type of application, it is importan
PMAC User Manual Basic Motor Moves 131 Buffered Program Command The homing search move can also be commanded from within a motion program with the HO
PMAC User Manual 132 Basic Motor Moves Note: If the following error is received when giving the HOMEZ command, the reported actual position after t
PMAC User Manual Basic Motor Moves 133 ;************** PLC program to execute routine ********************* OPEN PLC 10 CLEAR I125=$2C000 ; Disab
PMAC User Manual 134 Basic Motor Moves I907=11 ; Capture on flag low and index channel high I908=0 ; Use HMFL2 (home flag) as trigger flag CMD&qu
PMAC User Manual Basic Motor Moves 135 I326=0 ; No home offset I912=3 ; Capture on rising flag and rising index I913=0 ; Use HMFL3 as flag CMD&quo
PMAC User Manual 136 Basic Motor Moves Open-Loop Moves Open-loop moves, as their name implies, do not do closed-loop position control. They open u
PMAC User Manual Setting Up a Coordinate System 137 SETTING UP A COORDINATE SYSTEM Coordinating Multiple Motions Once the motors have been set up and
PMAC User Manual 138 Setting Up a Coordinate System Coordinating parallel gantry motors in this fashion is in general superior to using a master/sl
PMAC User Manual Setting Up a Coordinate System 139 Axis Types An axis can have several attributes, as specified below. Note that for most axis func
PMAC User Manual xii Table of Contents Example ...
PMAC User Manual 140 Setting Up a Coordinate System The PMATCH function effectively inverts the equations contained in the Axis Definition statemen
PMAC User Manual Setting Up a Coordinate System 141 What Is Coordinate System Time-Base? Each coordinate system has its own time base that helps cont
PMAC User Manual 142 Setting Up a Coordinate System
PMAC User Manual Computational Features 143 COMPUTATIONAL FEATURES Advanced Computational Features PMAC has advanced computational features that perm
PMAC User Manual 144 Computational Features • Motion Program Move Planning: .Motion program move planning consists of working through the lines of
PMAC User Manual Computational Features 145 Second is to adjust the jobs at a priority level to give them less emphasis. Large PLC programs can be s
PMAC User Manual 146 Computational Features Comm - Communications Line Processing - Servo InterruptRTI - Real Time Interrupt Task* - Start of RT
PMAC User Manual Computational Features 147 Addresses PMAC uses the Motorola DSP56001 as its processor. The 56001 has dual 16-bit address spaces (of
PMAC User Manual 148 Computational Features Value Assignment Values assigned to an I-variable may be either a constant or an expression. The comma
PMAC User Manual Computational Features 149 $0000$00FF$0100$17FF$1800$BBFF$BC00$BFFF$C000$C03F$D000$DFFF$E000$F000$FFFFInternal DSPMemoryDSP-GateRegi
PMAC User Manual Table of Contents xiii Table of Figures Figure 1 PMAC Motion Controller Custom Gate Array IC ...
PMAC User Manual 150 Computational Features Array Writing Writing to a set of P-variables as an array must be done with indirect addressing techniq
PMAC User Manual Computational Features 151 Coordinate System 3's Q0 is the same thing as the Q256 of &1; Coordinate System 4's Q0 is t
PMAC User Manual 152 Computational Features Array Capabilities Array Reading It is possible to use a set of Q-variables as an array. To do this wh
PMAC User Manual Computational Features 153 Special-Use Q-Variables Several Q-variables have special uses that need to be watched. The ATAN2 (two-ar
PMAC User Manual 154 Computational Features See the instructions for each type of M-variable definition in the On-Line Commands section of this man
PMAC User Manual Computational Features 155 Logical Operators PMAC has three logical operators that do bit-by-bit operations: & (bit-by-bit AND),
PMAC User Manual 156 Computational Features ASIN Function inverse sine (arc-sine) function with its range reduced to +/-90 degrees. Syntax ASIN ({e
PMAC User Manual Computational Features 157 LN Function natural logarithm function (log base e). Syntax LN ({expression}) Domain all positive reals D
PMAC User Manual 158 Computational Features Function truncation function Syntax INT ({expression}) Domain all reals Domain units free Range intege
PMAC User Manual Computational Features 159 Why Needed When assigning values to variables is part of the calculation, the variables will get their ne
PMAC User Manual xiv Table of Contents Figure 54 PMAC PC/PMAC Lite Interrupt Structure ...
PMAC User Manual 160 Computational Features Syntax There are four forms of synchronous M-variable assignment statements: M{constant}=={expression}
PMAC User Manual Computational Features 161 Function Expression Value 1- to 20-bit M-Variable * or 24-bit M-Variable 32- or 48-bit M-Variable == All
PMAC User Manual 162 Computational Features Compound Conditions A compound condition is a series of simple conditions connected by the logical oper
PMAC User Manual Computational Features 163 Example: In a PLC program, to turn on an output for a fixed number of milliseconds: M1=1 ; Turn on Machi
PMAC User Manual 164 Computational Features
PMAC User Manual Writing Programs for PMAC 165 WRITING PROGRAMS FOR PMAC Writing a Motion Program PMAC can hold up to 256 motion programs at one time
PMAC User Manual 166 Writing Programs for PMAC Motion Program Trajectories Among the PMAC outstanding characteristics are the power and flexibility
PMAC User Manual Writing Programs for PMAC 167 Note: If PMAC is operating in move segmentation mode (I13>0), which is required for circular interp
PMAC User Manual 168 Writing Programs for PMAC 2aaLLt = 0t = 2tACCELt = tt = 0ACCELt = tLLt = 0Lt = tt = 0ttL0MAX.t
PMAC User Manual Writing Programs for PMAC 169 Note: Feedrate is a magnitude and should therefore always be a positive number. A negative Feedrate w
PMAC User Manual Table of Contents xv
PMAC User Manual 170 Writing Programs for PMAC Small acceleration timeVtimeTM or ∆ P/FTA TAVtimeTM or ∆ P/FTATATM or ∆P/FTAVtimeTM or ∆ P/FTATM or
PMAC User Manual Writing Programs for PMAC 171 Acceleration time matches move timeVtimeVtimeVtimeTAVtimeTA TATM or ∆P/F TM or ∆P/FTA TA TATM or ∆P/F
PMAC User Manual 172 Writing Programs for PMAC Large (velocity limiting) acceleration timeVtimeVtimeTATA TATM or ∆P/FTA TATM or ∆P/FTM or ∆P/FVtime
PMAC User Manual Writing Programs for PMAC 173 Changing acceleration timesTM or VtimeVtimeVtimeVtimeTA1 TA2TM or ∆P/F TM or ∆P/FTA1TA2 actual TA2 spe
PMAC User Manual 174 Writing Programs for PMAC Feedrate Axes If a multi-axis move is specified by feedrate (and not time), there is further flexibi
PMAC User Manual Writing Programs for PMAC 175 The acceleration parameters TA and TS can change between each move. If the final deceleration to a st
PMAC User Manual 176 Writing Programs for PMAC • If input flags are to create the trigger, Ix25 specifies the flag register. • If input flags are
PMAC User Manual Writing Programs for PMAC 177 Standard Planes To specify the circles in the XY plane, simply command NORMAL K-1 (equivalent to G17
PMAC User Manual 178 Writing Programs for PMAC Radius Size Specification If the radius method of locating the arc center is used, the radius is the
PMAC User Manual Writing Programs for PMAC 179 Feedrate Axes Any axes used in the circular interpolation are automatically feedrate axes for circular
Copyright Information © 2007 Delta Tau Data Systems, Inc. All rights reserved. This document is furnished for the customers of Delta Tau Data System
PMAC User Manual 180 Writing Programs for PMAC PMAC Calculations From the specified parameters for the move piece, and the beginning position and v
PMAC User Manual Writing Programs for PMAC 181 3844R3R3844T4VEθ== where V is the vector velocity, T is the segment time, R is the local radius of cu
PMAC User Manual 182 Writing Programs for PMAC Four Programmed SegmentsVtimeTA (added) TA (added)TA TATA TAThree Programmed SegmentsVtimeTA (added)
PMAC User Manual Writing Programs for PMAC 183 PMAC also computes the velocity for each axis at each way point along the spline by taking the velocit
PMAC User Manual 184 Writing Programs for PMAC Cutter Radius Compensation PMAC provides the capability for performing cutter (tool) radius compensa
PMAC User Manual Writing Programs for PMAC 185 Turning on Compensation The compensation is turned on by buffered motion program command CC1 (offset l
PMAC User Manual 186 Writing Programs for PMAC Outside Corner Introduction If the lead-in move and the first fully compensated move form an outside
PMAC User Manual Writing Programs for PMAC 187 LineLineLineLineProgrammedPathTool CenterPathLine to Line Line to ArcArc to ArcArc to LineLineLineProg
PMAC User Manual 188 Writing Programs for PMAC Arc LineLineProgrammedPathTool CenterPathr LineLine r ArcLineLineProgrammedPathTool CenterPathrrArcA
PMAC User Manual Writing Programs for PMAC 189 The added arc prevents the compensated corner from extending too far out on the outside of a sharp cor
PMAC User Manual Introduction 1 INTRODUCTION The Delta Tau Data Systems, Inc. Programmable Multi-Axis Controller (PMAC) is a family of high-performan
PMAC User Manual 190 Writing Programs for PMAC ProgrammedPathTool CenterPathShortArcExecutedCompensatedCircle“Skipped”ProgrammedFull Circle11232Fai
PMAC User Manual Writing Programs for PMAC 191 LineLineProgrammedPathTool CenterPathLine to LineLineLineLineProgrammedPathTool CenterPathLineArcArcLi
PMAC User Manual 192 Writing Programs for PMAC Note that few controllers can make their lead-out move a CIRCLE-mode move. This capability permits
PMAC User Manual Writing Programs for PMAC 193 Line to Line Line to ArcArc to ArcArc to LineRemoving Compensation – Outside CornerLineLineProgrammedP
PMAC User Manual 194 Writing Programs for PMAC LineLineLineLineProgrammedPathTool CenterPathFailure to See ThroughInside CornerrOvercutToolCenter P
PMAC User Manual Writing Programs for PMAC 195 Unlike many controllers, PMAC can execute non-motion program blocks with single-step commands with cut
PMAC User Manual 196 Writing Programs for PMAC Absolute Displacement The ADIS{constant} (absolute displacement) command sets up the displacement po
PMAC User Manual Writing Programs for PMAC 197 Rotation Example To rotate the coordinate system 15 degrees about the origin in the XY plane. Set up
PMAC User Manual 198 Writing Programs for PMAC Entering a Motion Program The motion program statements are entered one program buffer at a time int
PMAC User Manual Writing Programs for PMAC 199 If the LEARN command specifies which axes are to be learned (e.g. LEARN(A,B,C) ), only those axis comm
PMAC User Manual 2 Introduction Manual Layout This manual provides a quick step-by-step guide for the beginner setting up a typical system, as well
PMAC User Manual 200 Writing Programs for PMAC Sequential Moves If the program is in LINEAR, CIRCLE, PVT, or SPLINE mode, and there is more than on
PMAC User Manual Writing Programs for PMAC 201 DWELL(P5) P1=P1+1 ENDWHILE The variables P2, P3, P4, and P5 could be set by the host with on-line co
PMAC User Manual 202 Writing Programs for PMAC If the logic of the subroutine needs to know whether a certain argument has been passed to it or not
PMAC User Manual Writing Programs for PMAC 203 Pointing to the Program Pointing to the program is done with the B{constant} command, where the {const
PMAC User Manual 204 Writing Programs for PMAC G, M, T, and D-Codes When PMAC encounters the letter G with a value in a motion program, it treats t
PMAC User Manual Writing Programs for PMAC 205 G03 — 2D Counterclockwise Arc Mode Typically, this code is implemented in PMAC through use of the CIRC
PMAC User Manual 206 Writing Programs for PMAC G91 — Incremental Move Mode Typically, this code is implemented in PMAC through use of the INC comma
PMAC User Manual Writing Programs for PMAC 207 The subroutine implementing G95 must therefore cause the program to get its time base from the spindle
PMAC User Manual 208 Writing Programs for PMAC G97 — Constant Surface Speed Disable This code cancels spindle constant surface speed mode and puts
PMAC User Manual Writing Programs for PMAC 209 If the spindle were to be controlled in open-loop fashion in CSS mode, it would be best to have a PLC
PMAC User Manual Introduction 3 Electrostatic Sensitive Devices Various circuit card assemblies and electronic components may be classified as Electr
PMAC User Manual 210 Writing Programs for PMAC This assumes, of course, that motor #4 on PMAC is the spindle motor and that the counting-up directi
PMAC User Manual Writing Programs for PMAC 211 M30 — End of Program with Rewind See M02 description. M30 will be essentially equivalent to M02 in mo
PMAC User Manual 212 Writing Programs for PMAC Preparing to Run To prepare to run a rotary program in a coordinate system, use the B0 command (go t
PMAC User Manual Writing Programs for PMAC 213 I16 Restarts Interrupts Variable I16 controls where BREQ gets set again as the executing program in th
PMAC User Manual 214 Writing Programs for PMAC Starting Calculations Upon the command to start the program, PMAC will calculate program statements
PMAC User Manual Writing Programs for PMAC 215 When No Calculation Ahead There are several conditions in a motion program that break the blending and
PMAC User Manual 216 Writing Programs for PMAC The first 360 pieces will be blended (splined) together on the fly as PMAC cycles through the inner
PMAC User Manual Writing Programs for PMAC 217 It is possible to move these non-motion actions to a point one or two moves later in the program to ge
PMAC User Manual 218 Writing Programs for PMAC
PMAC User Manual Synchronizing PMAC to External Events 219 SYNCHRONIZING PMAC TO EXTERNAL EVENTS Features to Help Synchronize Motion PMAC has several
PMAC User Manual 4 Introduction PMAC Japan 3-6-7, Nihonbashi Ningyocho Chuo-Ku Tokyo 103 Japan PH: 011-81-3-3665-6421 FX: 011-81-3-3665-6888 Email:
PMAC User Manual 220 Synchronizing PMAC to External Events Changing Ratios on the Fly To vary the following ratio in the middle of an application,
PMAC User Manual Synchronizing PMAC to External Events 221 Real-Time Input Frequency The PMAC method for doing this leaves the language expressing po
PMAC User Manual 222 Synchronizing PMAC to External Events How It Works Time-base control works by lying to the commanded position update equations
PMAC User Manual Synchronizing PMAC to External Events 223 Step 3: Time Base Calculation A separate entry in the encoder conversion table takes the
PMAC User Manual 224 Synchronizing PMAC to External Events Step 5: Writing the Program When writing the program that is to be under external time-
PMAC User Manual Synchronizing PMAC to External Events 225 Since the math works out more easily if this number is a power of two, declare the real-ti
PMAC User Manual 226 Synchronizing PMAC to External Events Instructions for the Triggered Time-Base Using the triggered time-base feature involves
PMAC User Manual Synchronizing PMAC to External Events 227 The master encoder has 4096 lines per revolution, and typically rotates at about 600 rpm.
PMAC User Manual 228 Synchronizing PMAC to External Events Synchronizing PMAC to Other PMACs When multiple PMACs are used together, inter-card sync
PMAC User Manual Synchronizing PMAC to External Events 229 If no serial communication is being used, but the serial data lines are connected along wi
PMAC User Manual Getting Started with PMAC 5 GETTING STARTED WITH PMAC PMAC is a very flexible controller, suitable for many different types of app
PMAC User Manual 230 Synchronizing PMAC to External Events • Disable all PLC programs using <CTRL-D. This will give the fastest possible respo
PMAC User Manual Synchronizing PMAC to External Events 231 Fortunately, this is simply the position captured during the homing move, which PMAC store
PMAC User Manual 232 Synchronizing PMAC to External Events Compare Control Bits There are three control bits to set up the format of the equals sig
PMAC User Manual Writing a PLC Program 233 WRITING A PLC PROGRAM PLC Programs In addition to the motion programs, which operate sequentially and sync
PMAC User Manual 234 Writing a PLC Program Opening the Buffer For each PLC program, the next step is to open the buffer for entry with the OPEN PLC
PMAC User Manual Writing a PLC Program 235 PLC Program Structure The important thing to remember in writing a PLC program is that each PLC program is
PMAC User Manual 236 Writing a PLC Program Any SEND, COMMAND, or DISPLAY action statement should be done only on an edge-triggered condition, becau
PMAC User Manual Writing a PLC Program 237 Precise Timing Since PLCs 1 to 31 are the lowest computation priority on PMAC, the cycle time cannot be de
PMAC User Manual 238 Writing a PLC Program Execution of Compiled PLCs Of the 32 compiled PLC programs (PLCC 0 to PLCC 31) only PLCC 0 operates in t
PMAC User Manual Writing a PLC Program 239 Executing Integer Arithmetic The compiled PLCs have the capability to perform arithmetic and logical opera
PMAC User Manual 6 Getting Started with PMAC Communications Baud Rate Jumpers The PMAC was shipped configured to be able to communicate either over
PMAC User Manual 240 Writing a PLC Program A small routine in a compiled PLC to make Machine Output 1 follow Machine Input 1 would be: IF (L11=1)
PMAC User Manual Writing a PLC Program 241 Valid Operators All of the mathematical operators (+, -, *, /, %) and bit-by-bit boolean operators (&,
PMAC User Manual 242 Writing a PLC Program Examples of illegal integer statements: L10=P10 P10=L10 L11=L11+P11 L13=16777216/L12 L253=L1
PMAC User Manual Writing a PLC Program 243 A read operation from a less-than-24-bit (1- to 20-bit) signed L-variable takes from six to eight DSP inst
PMAC User Manual 244 Writing a PLC Program If the compiler can compile the entire file successfully, it will create an output file containing the P
PMAC User Manual Writing a PLC Program 245 To use a different uncompiled PLC of the same number as a compiled PLC, include it in the input file to th
PMAC User Manual 246 Writing a PLC Program Note: It is never advisable to have PLC 0 or PLCC 0 running on power-up. Therefore, do not save an I5 v
PMAC User Manual Writing a Host Communications Program 247 WRITING A HOST COMMUNICATIONS PROGRAM Communicating From a Host Computer If communicating
PMAC User Manual 248 Writing a Host Communications Program Base Address The first thing to know is the base address of the COM port in the computer
PMAC User Manual Writing a Host Communications Program 249 Host Port Bus (PC/STDbus) Communications Host Port Structure The host port interface of PM
PMAC User Manual Getting Started with PMAC 7 If using single-ended encoders, have the jumpers set up for non-differential. If using differential e
PMAC User Manual 250 Writing a Host Communications Program where speed is 1 or 2 for a PC-XT, 3 or 4 for a 286-based computer, 5 to 6 for a 386-bas
PMAC User Manual Writing a Host Communications Program 251 PMAC PC/PMAC Lite Input Signal Matching PIC Input PMAC Signal IR0 IPOS IR1 BREQ IR2 EROR
PMAC User Manual 252 Writing a Host Communications Program MI1 and MI2 are PMAC Machine Inputs 1 and 2, which usually come from the system under co
PMAC User Manual Writing a Host Communications Program 253 MI2AXEXP0EQU6EQU2EQU8EQU4EQU7EQU3E58E59E60E61E54E55E56E57E62E63E64E65MI1AXEXP1EQU5EQU1IR6I
PMAC User Manual 254 Writing a Host Communications Program IR6IR7IR5IR4IR3IR2IR1IR0W3 W2 W1PC8259PICINT80x86 CPUBREQPMAC8259PICIPOSHOST REQUESTBOAR
PMAC User Manual Writing a Host Communications Program 255 The EQUn lines can be used to signal the host that the actual position of an axis has reac
PMAC User Manual 256 Writing a Host Communications Program Vectoring In vectoring, usually the first step is to save the old vector so it can be re
PMAC User Manual Writing a Host Communications Program 257 The resulting new mask word is written back to I/O port address 21(hex) with: outportb (0x
PMAC User Manual 258 Writing a Host Communications Program This is done through software programming. In order to do this, an IBM-PC compatible co
PMAC User Manual Writing a Host Communications Program 259 Address Modifier Do Not Care Bits This register (X:$0784) simply states which bits of the
PMAC User Manual 8 Getting Started with PMAC PMAC with Options 4A, 5A, and 5B If the jumper E51 is ON when a PMAC with the Option CPU executes its
PMAC User Manual 260 Writing a Host Communications Program Bits A19-A14 of DPRAM base address must be specified by the host computer every time the
PMAC User Manual Writing a Host Communications Program 261 A simple write command followed by a save command to PMAC will put these values into their
PMAC User Manual 262 Writing a Host Communications Program Binary 1 1 1 1 1 1 Hex 3 F Therefore, we write $3F from the VME host computer (master) i
PMAC User Manual Writing a Host Communications Program 263 Note: Almost all PMAC VME users purchase the Option 2 DPRAM and use the ASCII communicatio
PMAC User Manual 264 Writing a Host Communications Program First write an ASCII 1 to location $7FA005, then a J to $7FA007, then a + to $7FA009, th
PMAC User Manual Writing a Host Communications Program 265 The key to reading data from PMAC through the mailbox registers is that writing to mailbox
PMAC User Manual 266 Writing a Host Communications Program In this example, PMAC will have six characters waiting to be read: 19.2<CR><ACK
PMAC User Manual Writing a Host Communications Program 267 Now we read again the mailbox registers, looking for <CR>, <ACK>, or <BELL&
PMAC User Manual 268 Writing a Host Communications Program DP: (for 32-bit fixed point), and F: (32-bit floating point). For sending data back to
PMAC User Manual Writing a Host Communications Program 269 Write to base + $121 (if using DPRAM)Write $00 intomaibox reg #1Send command line to PM
PMAC User Manual Getting Started with PMAC 9 Installing the PMAC Executive Program The initial communications to the card will be done with Delta T
PMAC User Manual 270 Writing a Host Communications Program It is possible to keep all of the PMACs in a rack completely synchronized by sharing clo
PMAC User Manual Writing a Host Communications Program 271 Communications Checksum PMAC is capable of performing checksum calculations on communicati
PMAC User Manual 272 Writing a Host Communications Program Example With I3=3 and I4=1, and assuming P100=35, Q10=0, Q11=1, and Q12=2: Host sends:
PMAC User Manual Writing a Host Communications Program 273 Real-Time Data Gathering through Dual-Ported RAM Using the dual-ported RAM, it is possible
PMAC User Manual 274 Writing a Host Communications Program To reassemble a long fixed-point word in the host, take the less significant 32-bit word
REVISION HISTORY REV. DESCRIPTION DATE CHG APPVD 1 CORRECTION TO PID EQUATION, P. 108 06/28/07 CP S. MILICI
PMAC User Manual 10 Getting Started with PMAC There are many combinations of amplifier types, motor types and feedback device types that can be con
PMAC User Manual Getting Started with PMAC 11 Connect the A and B (quadrature) encoder channels to the appropriate terminal block pins. For encode
PMAC User Manual 12 Getting Started with PMAC If not using limit switches (e.g., for a rotary axis, or for a preliminary test set-up), either tie t
PMAC User Manual Getting Started with PMAC 13 Encoder I-Variables Several I-variables are linked to particular encoder inputs, regardless of which
PMAC User Manual 14 Getting Started with PMAC Commutation Encoder The encoder register used for commutation feedback must be specified with Ix83.
PMAC User Manual Getting Started with PMAC 15 Velocity-Loop (Motor) Feedback Address It is possible to have separate motor and load feedback encode
PMAC User Manual 16 Getting Started with PMAC Testing the Output and Polarity Next, check the outputs and whether the output polarity matches the f
PMAC User Manual Getting Started with PMAC 17 Setting up the Servo Loop Warning: Make sure the motor is in open-loop mode before restoring the prop
PMAC User Manual 18 Getting Started with PMAC Type J<CR> and the motor should stop. If it takes a while to stop, either slow down the move n
PMAC User Manual Getting Started with PMAC 19 Setting up a Coordinate System In order to run a program on PMAC, first define a coordinate system. T
PMAC User Manual 20 Getting Started with PMAC When finished entering the program, type CLOSE <CR> to exit the program buffer. To enter a new
PMAC User Manual Getting Started with PMAC 21 Writing and Executing a PLC Program PLC programs are useful for doing monitoring and calculations in
PMAC User Manual 22 Getting Started with PMAC
PMAC User Manual PMAC Features 23 PMAC FEATURES Executing Motion Programs The most obvious task of PMAC is executing sequences of motions given to it
PMAC User Manual 24 PMAC Features Task Priorities These tasks are ordered in a priority scheme that was optimized to keep applications running effi
PMAC User Manual Talking to PMAC 25 TALKING TO PMAC Basic Aspects of Communicating with PMAC This section covers basic aspects of communicating with
PMAC User Manual 26 Talking to PMAC Hardware Configuration PMAC PC, -VME PMAC PC and -VME have an RS-422 interface on a 26-pin IDC connector (J4).
PMAC User Manual Talking to PMAC 27 PC Bus Interface The PC bus interface for the PMAC PC and the PMAC Lite can work with just the PC-XT bus (eight b
PMAC User Manual 28 Talking to PMAC Note: If using the Option 2 dual-ported RAM, command PMAC by writing values to specific registers in the DPRAM.
PMAC User Manual Talking to PMAC 29 On-Line (Immediate) Commands Many of the commands given to PMAC are on-line commands; that is, they are executed
PMAC User Manual Table of Contents i Table of Contents INTRODUCTION ...
PMAC User Manual 30 Talking to PMAC Coordinate System Commands There are a variety of types of coordinate-system-specific commands. Axis definitio
PMAC User Manual Talking to PMAC 31 Multiple-Card Applications If there are several cards communicating with the host, there must be a way for the ho
PMAC User Manual 32 Talking to PMAC Note: The Option 9L RS-422 interface is required on a PMAC Lite to tie it to another PMAC. In this case, the A
PMAC User Manual Talking to PMAC 33 Switch Address Control For PMAC STD SW1-1 SW1-2 SW1-3 SW1-4 Card Address Default OFF OFF OFF OFF @0 @0 ON
PMAC User Manual 34 Talking to PMAC Power-Up State With the cards set up for daisy chained communications (i.e., I1 = 2 or 3 saved in EAROM), card
PMAC User Manual Talking to PMAC 35 <CTRL-H> <CTRL-H> (backspace to erase last character sent) actually acts on the entire data stream a
PMAC User Manual 36 Talking to PMAC Typically, this re-initialization procedure is necessary only if the card has been locked up due to errant soft
PMAC User Manual Talking to PMAC 37 The PMAC Executive program V3.x and newer, when it establishes communications with a PMAC in this re-initializati
PMAC User Manual 38 Talking to PMAC For a complete re-initialization of PMAC to known state, the following commands can be added: P0..1023=0 Q0..10
PMAC User Manual Troubleshooting 39 TROUBLESHOOTING PMAC Card Troubleshooting General Is the green LED (power indicator) on PMAC CPU board ON, as it
PMAC User Manual ii Table of Contents Power-Up Mode...
PMAC User Manual 40 Troubleshooting If the motor dies after it is given a jog command, the fatal following error limit has been exceeded. If this
PMAC User Manual Input/Output: Connecting PMAC to the Machine 41 INPUT/OUTPUT: CONNECTING PMAC TO THE MACHINE Capabilities and Features PMAC has ext
PMAC User Manual 42 Input/Output: Connecting PMAC to the Machine Connect pin 1 to 2 to tie differential line to +2.5VConnect pin 2 to 3 to tie diff
PMAC User Manual Input/Output: Connecting PMAC to the Machine 43 Power Supply and Isolation In the basic configuration of PMAC, the encoder circuitry
PMAC User Manual 44 Input/Output: Connecting PMAC to the Machine E35 ON gives it one-fourth the frequency; E36 one-eighth; and E37 one-sixteenth.
PMAC User Manual Input/Output: Connecting PMAC to the Machine 45 Optically Isolated Dedicated Digital Input Flags (JMACH Port) Each channel of PMAC h
PMAC User Manual 46 Input/Output: Connecting PMAC to the Machine Amplifier Enable/Disable Use These outputs are typically used as enable/disable li
PMAC User Manual Input/Output: Connecting PMAC to the Machine 47 Direction Bit Use An alternate use for these outputs is as the direction (sign) bits
PMAC User Manual 48 Input/Output: Connecting PMAC to the Machine Optically Isolated Analog Outputs (JMACH Port) PMAC provides high-precision analo
PMAC User Manual Input/Output: Connecting PMAC to the Machine 49 PMAC is shipped standard with a ULN2803A sinking (open-collector) output IC for the
PMAC User Manual Table of Contents iii Control-Character Commands ...
PMAC User Manual 50 Input/Output: Connecting PMAC to the Machine Non-Multiplexed Uses If none of these accessory boards is used, the inputs and out
PMAC User Manual Input/Output: Connecting PMAC to the Machine 51 Analog Input The Wiper analog input (0 to +10V on PMAC PC, -VME, and -STD; -10V to +
PMAC User Manual 52 Input/Output: Connecting PMAC to the Machine Display Port Outputs (JDISP Port) The JDISP connector (J1) allows connection of th
PMAC User Manual Setting Up a Motor 53 SETTING UP A MOTOR What is a Motor? A motor, to PMAC, is a unit that has feedback, output, flags, and potentia
PMAC User Manual 54 Setting Up a Motor To the beginner, the need to specify addresses for input and output may seem cumbersome. However, for basic
PMAC User Manual Setting Up a Motor 55 01C003000000000000000000011 111MODESADDRESSHEX ($)BINARYLOW 16 BITS (4 HEX DIGITS) SPECIFY THE ADDRESSWHEN HI
PMAC User Manual 56 Setting Up a Motor Note: When using dual feedback, the motor flags specified by Ix25 (see below) should have the same number as
PMAC User Manual Setting Up a Motor 57 1/T Sub-count Interpolation There are two optional methods on PMAC for achieving sub-count resolution with inc
PMAC User Manual 58 Setting Up a Motor Hardware Changes To implement this type of feedback properly, several settings in hardware and software must
PMAC User Manual Setting Up a Motor 59 Parallel position feedback requires one of the conversion formats $20, $30, $60, or $70 (see below). 90BABACON
PMAC User Manual iv Table of Contents Input Source/Sink Control ...
PMAC User Manual 60 Setting Up a Motor Parallel Absolute Feedback When using an absolute encoder as the feedback device, the data is presented to P
PMAC User Manual Setting Up a Motor 61 To PMAC itself, this type of feedback looks like an absolute encoder. The source of the data is the appropria
PMAC User Manual 62 Setting Up a Motor Resolver Feedback PMAC can accept resolver feedback through its Acc-8D Option 7 resolver-to-digital converte
PMAC User Manual Setting Up a Motor 63 Parallel-Data Position Ix10 can specify two types of feedback. If the absolute position data is presented to
PMAC User Manual 64 Setting Up a Motor Geared Resolvers Typically, a single resolver on the back of the motor is not sufficient to determine power-
PMAC User Manual Setting Up a Motor 65 For instance, to assign Motor #1 to the X-axis with 10,000 counts per unit, if the axis zero position should b
PMAC User Manual 66 Setting Up a Motor Conversion Table Structure The Encoder Conversion Table has two columns, one in the X memory space of the pr
PMAC User Manual Setting Up a Motor 67 Each type of conversion is discussed below. Note: If the conversion table has two or more summing entries in a
PMAC User Manual 68 Setting Up a Motor Incremental Encoder Entries Incremental encoders are converted with one of the conversion formats $0x, $8x,
PMAC User Manual Setting Up a Motor 69 ADC1: $C006 ADC9: $C026 ADC2: $C007 ADC10: $C027 ADC3: $C00E ADC11: $C02E ADC4: $C00F ADC12: $C02F
PMAC User Manual Table of Contents v Axis Position Scaling ...
PMAC User Manual 70 Setting Up a Motor get stability using just the linear scale for both position and velocity loop because there is no direct inf
PMAC User Manual Setting Up a Motor 71 Sixth Acc-14 Port B (J15): $FFF9 A typical setup word for this type of feedback is $20FFD0, which provides fo
PMAC User Manual 72 Setting Up a Motor Unfiltered Parallel Feedback X-Words Y-words 1. Intermediate data: Sign-extended most significant word 1
PMAC User Manual Setting Up a Motor 73 Shift-Right Parallel Conversion If both bit 19 and bit 18 of the source and process word for a parallel data c
PMAC User Manual 74 Setting Up a Motor Converted Data The last source data word is stored in the first X word of the entry in the table, and the ne
PMAC User Manual Setting Up a Motor 75 Setting the Trigger State The process bits — bits 16 to 23 of the first Y-word in the conversion table entry —
PMAC User Manual 76 Setting Up a Motor The output value of the exponential filter is placed in the X register of the third line of the conversion t
PMAC User Manual Setting Up a Motor 77 This table can be used unchanged by the great majority of PMAC users. Note that the default motor feedback-po
PMAC User Manual 78 Setting Up a Motor To use something other than the conversion table editor screen in the PMAC Executive program, view the curre
PMAC User Manual Setting Up a Motor 79 Decoder/CounterEncoderConversion(e.g. 1/T)PositionExtensionAxisScalingDone Always24 bitsIntegerCountSet to Zer
Kommentare zu diesen Handbüchern