PMAC Quick Reference Guide Synchronous M-Variable Assignment The scan of a motion program and execution of the commands in it are governed by the lookahead feature. PMAC will calculate move commands ahead of time for a proper blending and will execute every instruction in between immediately. This ahead-of-time situation would make an M-Variable assignment asynchronous to the motion profiles unless a double equal sign is used instead. M1==1, for example, will indicate to PMAC that the assignment has to take place at the blending point between the previous move encountered and the next.
In LINEAR and CIRCLE mode moves, this blending occurs V*TA/2 distance ahead of the specified intermediate point, where V is the commanded velocity of the axis, and TA is the acceleration (blending) time. This is available only for M-Variables and are not in the form TWB, TWD, TWR, TWS. Synchronizing PMAC to Other PMACs When multiple PMACs are used together, intercard synchronization is maintained by passing the servo clock signal from the first card to the others. With careful writing of programs, this permits complete coordination of axes on different cards.
Axis Transformation Matrices PMAC provides the capability to perform matrix transformation operations on the X, Y, and Z-axes of a coordinate system. These operations have the same mathematical functionality as the matrix forms of the axis definition statements, but these can be changed on the fly in the middle of programs; the axis definition statements should be fixed for a particular application. The matrix transformations permit translation, rotation, scaling, mirroring, and skewing of the X, Y, and Z-axes. They can be useful for English/metric conversion, floating origins, making duplicate mirror images, repeating operations with angle offsets, and more.
The matrices are implemented by the use of Q-Variables and DEFINE TBUF , TSEL , TINIT , ADIS , IDIS , AROT and IROT commands. Position-Capture and Position-Compare Functions The position-capture function latches the current encoder position at the time of an external event into a special register. It is executed totally in hardware, without the need for software intervention (although it is set up, and later serviced, in software). This means that the only delays in the capture are the hardware gate delays (negligible in any mechanical system), so this provides an incredibly accurate capture function.
The move-until-trigger functions (either jog or motion program) conveniently use the position capture feature for continuous motions until a trigger condition is reached. Essentially, the position-compare feature is the opposite of the position-capture function. Instead of storing the position of the counter when an external signal changes, it changes an external signal when the counter reaches a certain position. Learning a Motion Program It is possible to have PMAC learn lines of a motion program using the on-line LEARN command. In this operation, the axes are moved to the desired position and the command is given to PMAC.
PMAC then adds a command line to the open motion program buffer that represents this position. This process can be repeated to learn a series of points. The motors can be open loop or closed loop as they are moved around. 60 Motion Programs