User's Manual
Table Of Contents
- 16-Axis MACRO Slave Station Binding to a MACRO Master
- Mapping Servo Channels to Servo Node
- Mapping Motor Node Registers
- Mapping Motor Function Registers to Node Registers
- Mapping of General Purpose I/O
- UMAC (Pack) Configuration
- I/O Accessory Boards
- Auto Configuration and Identification of UMAC (Pack) Boards
- UMAC (Pack) Interface/Breakout Boards
- MACRO Ring Rules
- I7: Phase Cycle Extension
- I19: Clock Source I-Variable Number
- Turbo PMAC2 Ultralite: I6800 and I6801
- UMAC Turbo
- Notes on Servo Clock
- I6840: MACRO IC 0 Master Configuration
- I6890/I6940/I6990: MACRO IC 1/2/3 Master Configuration
- I6841/I6891/I6941/I6991: MACRO IC 0/1/2/3 Node Activation Control
- I70/I72/I74/I76: MACRO IC 0/1/2/3 Node Auxiliary Function Enable
- I71/I73/I75/I77: MACRO IC 0/1/2/3 Node Protocol Type Control
- I78: MACRO Master/Slave Auxiliary Communications Timeout
- I79: MACRO Master/Master Auxiliary Communications Timeout
- I80, I81, I82: MACRO Ring Check Period and Limits
- Ixx01: Commutation Enable
- Ixx02: Command Output Address
- Ixx03, Ixx04: Feedback Address
- Ixx10, Ixx95: Absolute Position Address and Format
- Ixx25, Ixx24: Flag Address and Mode
- Ixx70, Ixx71: Commutation Cycle Size
- Ixx75: Absolute Phase Position Offset
- Ixx81, Ixx91: Power-On Phase Position Address and Mode
- Ixx82: Current Loop Feedback Address
- Ixx83: Commutation Feedback Address
- Ring Update Frequency
- Station Servo Clock Frequency
- MACRO IC 0
- MACRO IC 1
- MACRO IC 0
- MACRO IC 1
- Channels 1-4 (First 4-Axis Board)
- Channels 5-8 (Second 4-Axis Board)
- On Board Auxiliary Channels (Handwheel/Pulse and Direction)
- Incremental Digital Encoder Feedback
- Analog Encoder Feedback
- Resolver Feedback
- MLDT Feedback
- 12-Bit A/D Converter Feedback
- 14E Parallel Feedback
- MI17 Amplifier Fault Disable Control
- MI18 Amplifier Fault Polarity Control
- MI10x Position Feedback Address
- MI11x Power-On Position Feedback Address
- MI16x Power-On MLDT Excitation Value
- MI975 I/O Node Enable
- MI19 I/O Transfer Period
- Bi-Directional I/O Transfer Control
- Uni-Directional I/O Transfer Control
- Setting the Trigger Condition
- Using for Homing
- Using in User Program
- Setting up for a Single Pulse Output
- Setting up for Multiple Pulse Outputs
- How to Enable and Disable MACRO ASCII Communication Mode
- The Ring Order Method
- Example: Read Using MM-Variables – Actual Encoder
- Example: Read DAC Output from Servo IC Card
- Example: Monitor Up/Down Counter from Servo IC Card
- Example: Write to DACnB on Servo IC Card
- Example: Read Using MI198 and MI199 – Direct Hal
- Example: Read Using MI198 and MI199 – Actual DAC
16-Axis MACRO CPU User Manual
How to use the 16-Axis MACRO CPU 53
HOW TO USE THE 16-AXIS MACRO CPU
This section shows many useful examples about the setup of some of the hardware and also shows how to
read any memory location at the MACRO CPU for troubleshooting purposes.
Example Setup for 16-Axis System
One concept that is not obvious to the first time user of the 16-Axis MACRO CPU is the node activation
setup for the MACRO IC1 for axes 9-16. MACRO IC0 for Axes 1-8 node activation can be setup with
SW1. Typically, SW1 is set to 7 and this will activate nodes 0, 1, 4, 5, 8, 9, 12, and 13. For the 16-Axis
MACRO CPU, channels 9-16 can be setup only through the MI996 since it is associated with MACRO
IC1. Initially, MI996 for MACRO IC1 can be set up by writing to MS0,MI1996 because node 0 will be
active (based on SW1 set to 7).
For this example, the clock variables, communication variables and the node activation variables will be
set up at both the MACRO CPU and the Master Controller (Turbo Ultralite).
Ultralite Clock Setup Variables
I6800=6527 ;default setup for 9.034 KHz Max Phase
I6801=0 ;Default setup for 9.034 Khz Phase and Ring Cycle
I6802=3 ;default setup for 2.258 KHz Servo Clock
Ultralite Node Activation
i6840=$4030
i6841=$0FF333 ;Master0: Activate nodes 0,1,4,5,8,9,12,13
i6890=$90
i6891=$1fB333 ;Master1: Activate nodes 16,17,20,21,24,25,28,29
i6940=$10
i6941=$2f8000
i6990=$10
i6991=$3f8000
i70=$3333 ;Activate Control/Status Flag Transfer for
i71=$3333 ;nodes 0,1,4,5,8,9,12,13
i72=$3333 ;Activate Control/Status Flag Transfer for
i73=$3333 ;nodes 16,17,20,21,24,25,28,29
i78=32 ;Set Timeout for MacroI/O to 32 servo cycles
i79=32
MACRO CPU Node Activation
Set SW1=7 and SW2=0 ;Activate nodes 0,1,4,5,8,9,12,13 at MACRO CPU
MS0,MI1996=$1FB333 ;Activate nodes 16,17,20,21,24,25,28,29 at MACRO CPU
;Must MSSAVE & MS$$$ before activated
MS0,MI992=6527 ;Default for 9.034 KHz Max Phase (Always set to I6800)
MS0,MI997=0 ;Default- 9.034 Khz Phase and Ring Cycle (Always set to 0)
MS0,MI998=0 ;Default- 9.034 KHz Servo Clock (Always set to 0)
MS0,MI1992=6527 ;Default for 9.034 KHz Max Phase (Always set to I6800)
MS0,MI1997=0 ;Default- 9.034 Khz Phase and Ring Cycle (Always set to 0)
MS0,MI1998=0 ;Default- 9.034 KHz Servo Clock (Always set to 0)
Macro Station Position Capture Setup
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.