User's Manual

PMAC User Manual
228 Synchronizing PMAC to External Events
Synchronizing PMAC to Other PMACs
When multiple PMACs are used together, inter-card 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.
PMAC provides the capability for putting multiple cards together in a single application. To get the cards
working together properly in a coordinated fashion, several factors must be considered:
Host communications addressing
Clock timing
Motion program timing
The host communications addressing is covered in the previous Talking to PMAC section and the
following Writing a Host Communications Program section. The timing (synchronization) issues are
covered immediately below.
Clock Timing
PMAC cards use a crystal clock oscillator (the master clock) as their fundamental time measuring device.
Each PMAC has its own crystal oscillator. Although these crystals are made to a very tight tolerance (50
ppm accuracy standard; 10 ppm with Option 8), they are not exactly the same from card to card. This can
cause cards to lose synchronicity with each other over long move sequences if they are each using their
own master clock. Generally, this will be noticeable only if a continuous move sequence lasts more than
10 minutes. For example, in the worst case, with 100 ppm difference between two cards, at the end of a
10-minute continuous sequence, the cards will be off by 60 msec.
Sharing Clock Signals
The solution to this problem is to have all the cards share a common clock signal. With PMAC, this is
done over spare lines on the serial connector. Card @0 outputs its clock signals; all other cards take the
clock signals as inputs. What are actually being shared are the phase clock and servo clock signals, which
are divided down from the master clock as determined by the settings of jumpers E29-E33 and E3-E6.
When sharing clock signals, only the settings of these jumpers on card @0 matter. The I10 servo period
parameter on every board in the chain should match the jumper settings on card @0.
When multiple cards are communicating on the same serial port, they must share a common clock signal.
This is because the same jumpers or switches that control the software addressing (E40-E43, or SW1-1 -
SW1-4) also control whether the clock signal is input or output, so only one card in the chain can use its
own clock signals; all others must receive theirs through the serial port connector.
When multiple cards are communicating at separate hardware addresses on a common bus, or are
operating standalone, it is optional whether they share the same clock signals. To have them share a
common clock signal, use the jumpers or switches to set up one card as @0, and the rest as higher
numbered cards, and tie together the clock signals on the serial ports of all cards. It may be easiest to tie
all of the lines of the serial port together from card to card. These jumper settings will not affect bus
communications protocol in any way.
If not sharing clock signals on multiple cards in a bus application, every card must be set up as @0.
Connections
Clock signals can be shared simply by tying identical pins on the PMACs together. Acc-3D or 3L cables
with extra PMAC connectors (one Acc-3E for each extra PMAC) can be used to share the clock signals in
either bus or serial communications applications (and of course, for actual serial communications). In a
standalone or bus-communications application, there is no need for a host drop on the cable.
As is the case for the communications lines, you cannot tie the clock lines from the RS-422 port of a
PMAC PC to the RS-232 port of a PMAC Lite. With the RS-422 option on the PMAC Lite (Option 9L),
connection to a PMAC PC is possible, but the connector pinouts are different.