Delta Tau BRICK CONTROLLER, TURBO CLIPPER, TURBO PMAC PCI, TURBO PMAC PCI LITE, TURBO PMAC2 PCI User Manual

...
4.3 (4)

^1 USER MANUAL

Turbo PMAC

^3 Programmable Multi Axis Controller

^4 3Ax-602264-TUxx

^5 September 12, 2008

Single Source Machine Control Power // Flexibility // Ease of Use 21314 Lassen Street Chatsworth, CA 91311 // Tel. (818) 998-2095 Fax. (818) 998-7807 // www.deltatau.com

Copyright Information

© 2008 Delta Tau Data Systems, Inc. All rights reserved.

This document is furnished for the customers of Delta Tau Data Systems, Inc. Other uses are unauthorized without written permission of Delta Tau Data Systems, Inc. Information contained in this manual may be updated from time-to-time due to product improvements, etc., and may not conform in every respect to former issues.

To report errors or inconsistencies, call or email:

Delta Tau Data Systems, Inc. Technical Support

Phone: (818) 717-5656

Fax: (818) 998-7807

Email: support@deltatau.com Website: http://www.deltatau.com

Operating Conditions

All Delta Tau Data Systems, Inc. motion controller products, accessories, and amplifiers contain static sensitive components that can be damaged by incorrect handling. When installing or handling Delta Tau Data Systems, Inc. products, avoid contact with highly insulated materials. Only qualified personnel should be allowed to handle this equipment.

In the case of industrial applications, we expect our products to be protected from hazardous or conductive materials and/or environments that could cause harm to the controller by damaging components or causing electrical shorts. When our products are used in an industrial environment, install them into an industrial electrical cabinet or industrial PC to protect them from excessive or corrosive moisture, abnormal ambient temperatures, and conductive materials. If Delta Tau Data Systems, Inc. products are exposed to hazardous or conductive materials and/or environments, we cannot guarantee their operation

Revision History

Revision

Description

Date

CHG

Approved

 

 

 

 

 

1

P. 261 – CORRECTED EX. SETUP PROGRAM

09-12-08

CP

M. YAHYAEI

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Turbo PMAC User Manual

Table of Contents

 

USING THIS MANUAL .............................................................................................................................................

1

What is in this Manual ..............................................................................................................................................

1

Other Manuals to Use................................................................................................................................................

1

Turbo PMAC Software Reference Manual ...........................................................................................................

1

Hardware Reference Manuals ..............................................................................................................................

1

UMAC Quick Reference Guide.............................................................................................................................

1

PMAC Executive Program Manual ......................................................................................................................

1

Software Development Package Manuals.............................................................................................................

2

TURBO PMAC FAMILY OVERVIEW ...................................................................................................................

3

Turbo PMAC vs. Non-Turbo PMAC ........................................................................................................................

3

Turbo PMAC vs. Turbo PMAC2 ..............................................................................................................................

3

Turbo PMAC is a Computer .....................................................................................................................................

3

What Turbo PMAC Does..........................................................................................................................................

4

Executing Motion Programs .................................................................................................................................

4

Executing PLC Programs .....................................................................................................................................

4

Servo Loop Update ...............................................................................................................................................

4

Commutation Update............................................................................................................................................

4

Housekeeping........................................................................................................................................................

4

Communicating with the Host...............................................................................................................................

4

Task Priorities.......................................................................................................................................................

5

Key Hardware Components ......................................................................................................................................

5

CPU Section..........................................................................................................................................................

5

Machine Interface ICs...........................................................................................................................................

8

Communications Ports........................................................................................................................................

12

Key Software Components......................................................................................................................................

13

Operational Firmware........................................................................................................................................

13

Bootstrap Firmware............................................................................................................................................

13

Motors, Axes, and Coordinate Systems...............................................................................................................

13

User Programs....................................................................................................................................................

14

Turbo PMAC Configurations..................................................................................................................................

15

Board-Level Designs...........................................................................................................................................

15

UMAC Rack-Mounted Designs...........................................................................................................................

15

QMAC Boxed Design..........................................................................................................................................

16

TURBO PMAC/PMAC2 SYSTEM CONFIGURATION AND AUTO-CONFIGURATION ............................

17

CPU Clock Frequency.............................................................................................................................................

17

Turbo PMAC2 System Clock Source .....................................................................................................................

18

Default Clock Source ..........................................................................................................................................

18

IC Clock Generation Facilities...........................................................................................................................

18

Typical Clock-Source ICs ...................................................................................................................................

19

External Clock Sources.......................................................................................................................................

19

Distribution of Clock Signals..............................................................................................................................

19

Missing Clock Signals.........................................................................................................................................

20

Re-Initialization Actions .....................................................................................................................................

20

User-Customized Clock-Source Specification ....................................................................................................

21

Normal Reset Actions..........................................................................................................................................

22

MACRO IC Selection .............................................................................................................................................

22

Dual-Ported RAM IC Selection ..............................................................................................................................

23

System Configuration Status Reporting ..................................................................................................................

23

Servo IC Configuration.......................................................................................................................................

23

MACRO IC Configuration ..................................................................................................................................

23

DPRAM IC Configuration ..................................................................................................................................

24

CPU Section Configuration ................................................................................................................................

24

UBUS Accessory Board Identification................................................................................................................

24

Table of Contents

i

 

Turbo PMAC User Manual

Setting System Clock Frequencies ..........................................................................................................................

24

Setting Turbo PMAC Phase and Servo Clock Frequencies ................................................................................

25

Setting Turbo PMAC2 Phase and Servo Clock Frequencies ..............................................................................

26

Setting I10 Servo Update Time Parameter .........................................................................................................

28

Setting up a Turbo PMAC2 on the MACRO Ring..................................................................................................

28

MACRO Ring Frequency Control Variables ......................................................................................................

29

I7: Phase Cycle Extension ..................................................................................................................................

29

I6840: MACRO IC 0 Master Configuration .......................................................................................................

29

I6890/I6940/I6990: MACRO IC 1/2/3 Master Configuration ............................................................................

30

I6841/I6891/I6941/I6991: MACRO IC 0/1/2/3 Node Activation Control...........................................................

30

I70/I72/I74/I76: MACRO IC 0/1/2/3 Node Auxiliary Function Enable..............................................................

31

I71/I73/I75/I77: MACRO IC 0/1/2/3 Node Protocol Type Control ....................................................................

31

I78: MACRO Master/Slave Auxiliary Communications Timeout .......................................................................

31

I79: MACRO Master/Master Auxiliary Communications Timeout.....................................................................

32

I80, I81, I82: MACRO Ring Check Period and Limits .......................................................................................

32

MACRO Node Addresses ....................................................................................................................................

32

Resetting and Re-Initializing Turbo PMAC............................................................................................................

35

Methods of Resetting...........................................................................................................................................

35

Actions on a Normal Reset..................................................................................................................................

35

Actions on Reset with Re-Initialization...............................................................................................................

36

Actions on Reset for Firmware Reload ...............................................................................................................

36

Re-Initialization and Clear Command................................................................................................................

37

TALKING TO TURBO PMAC ...............................................................................................................................

39

Communications Ports ............................................................................................................................................

39

Serial Communications Ports .............................................................................................................................

39

Bus Communications Port ..................................................................................................................................

42

Dual-Ported RAM ...............................................................................................................................................

44

Giving Commands to Turbo PMAC........................................................................................................................

45

Turbo PMAC Processing of Commands .............................................................................................................

45

Command Acknowledgement ..............................................................................................................................

45

Data Response ....................................................................................................................................................

45

Data Integrity......................................................................................................................................................

46

Data Response Format .......................................................................................................................................

46

On-Line (Immediate) Commands ...........................................................................................................................

46

Types of On-Line Commands..............................................................................................................................

46

Buffered (Program) Commands ..............................................................................................................................

48

SETTING UP FEEDBACK AND MASTER POSITION SENSORS...................................................................

49

Setting Up Quadrature Encoders.............................................................................................................................

49

Signal Format .....................................................................................................................................................

49

Hardware Setup ..................................................................................................................................................

49

Turbo PMAC Hardware-Control Parameter Setup............................................................................................

51

Conversion Table Processing Setup – Turbo PMAC Interface...........................................................................

53

Conversion Table Processing Setup – MACRO Station Interface ......................................................................

54

Scaling the Feedback Units ................................................................................................................................

54

Setting Up Digital Hall Sensors ..............................................................................................................................

54

Signal Format .....................................................................................................................................................

54

Hardware Setup ..................................................................................................................................................

55

Turbo PMAC Hardware-Control Parameter Setup............................................................................................

55

Power-Up Phasing Usage...................................................................................................................................

56

Conversion Table Processing Setup – Turbo PMAC Interface...........................................................................

56

Conversion Table Processing Setup – MACRO Station Interface ......................................................................

56

Scaling the Feedback Units ................................................................................................................................

56

Setting up Sinusoidal Encoders...............................................................................................................................

57

Hardware Setup ..................................................................................................................................................

57

Turbo PMAC Hardware-Control Parameter Setup............................................................................................

57

ii

Table of Contents

Turbo PMAC User Manual

Conversion Table Processing Setup – Turbo PMAC Interface...........................................................................

58

Conversion Table Processing Setup – MACRO Station Interface ......................................................................

59

Scaling the Feedback Units ................................................................................................................................

59

Setting up Resolvers................................................................................................................................................

60

Hardware Setup ..................................................................................................................................................

60

Turbo PMAC Hardware-Control Parameter Setup............................................................................................

60

Conversion Table Processing Setup – Turbo PMAC Interface...........................................................................

61

Conversion Table Processing Setup – MACRO Station Interface ......................................................................

61

Setting Up for Power-On Absolute Position .......................................................................................................

61

Scaling the Feedback Units ................................................................................................................................

62

Setting Up MLDTs..................................................................................................................................................

62

MLDT Interface Type..........................................................................................................................................

62

Signal Formats....................................................................................................................................................

62

Hardware Setup ..................................................................................................................................................

63

Turbo PMAC Hardware-Control Parameter Setup............................................................................................

63

Conversion Table Processing Setup – Turbo PMAC Interface...........................................................................

66

Conversion Table Processing Setup – MACRO Station Interface ......................................................................

66

Setting Up for Power-On Absolute Position .......................................................................................................

66

Scaling the Feedback Units ................................................................................................................................

66

Setting Up LVDTs, RVDTs, & Other Analog ........................................................................................................

67

Hardware Setup ..................................................................................................................................................

67

Turbo PMAC Hardware-Control Parameter Setup............................................................................................

67

Conversion Table Processing Setup – Turbo PMAC Interface...........................................................................

68

Conversion Table Processing Setup – MACRO Station Interface ......................................................................

68

Setting Up for Power-On Absolute Position .......................................................................................................

69

Scaling the Feedback Units ................................................................................................................................

69

Setting Up Absolute Encoders ................................................................................................................................

69

BASIC MOTOR SETUP...........................................................................................................................................

71

Hardware Setup.......................................................................................................................................................

71

Parameters to Set up Basic Motor Operation ..........................................................................................................

71

Initial Setup Parameters ..........................................................................................................................................

72

Activating the Motor: Ixx00 ................................................................................................................................

72

Activating PMAC Motor Commutation: Ixx01 ...................................................................................................

72

Motor Address Setup Parameters ............................................................................................................................

73

Command Output Address: Ixx02.......................................................................................................................

74

Position-Loop Feedback Address: Ixx03 ............................................................................................................

74

Velocity-Loop Feedback Address: Ixx04 ............................................................................................................

74

Flag Addresses: Ixx25, Ixx42, Ixx43...................................................................................................................

74

Flag Modes: Ixx24 ..............................................................................................................................................

75

Absolute Power-Up Position Address and Format: Ixx10 and Ixx95 .................................................................

76

Power-Up Mode: Ixx80.......................................................................................................................................

76

Is Turbo PMAC Commutating or Closing the Current Loop for This Motor?........................................................

77

Setting up Turbo PMAC for Velocity or Torque Control .......................................................................................

77

Hardware Setup ..................................................................................................................................................

77

Turbo PMAC Parameter Setup...........................................................................................................................

77

Setting Up Turbo PMAC2 for Pulse-and-Direction Control...................................................................................

79

Hardware Setup ..................................................................................................................................................

80

Signal Timing......................................................................................................................................................

80

Turbo PMAC Parameter Setup...........................................................................................................................

81

Testing the Setup.................................................................................................................................................

85

SETTING UP TURBO PMAC-BASED COMMUTATION AND/OR CURRENT LOOP................................

89

Beginning Setup of Commutation...........................................................................................................................

89

Commutation Enable: Ixx01 ...............................................................................................................................

89

Commutation Cycle Size: Ixx70 & Ixx71 ............................................................................................................

89

Commutation Feedback Address: Ixx83 .............................................................................................................

90

Table of Contents

iii

Turbo PMAC User Manual

Current Loop in Turbo PMAC or Not.................................................................................................................

91

Setting Up for Direct PWM Control .......................................................................................................................

91

Introduction ........................................................................................................................................................

91

Digital Current Loop Principle of Operation .....................................................................................................

91

Turbo PMAC Parameter Setup...........................................................................................................................

94

Special Instructions for Direct-PWM Control of Brush Motors .......................................................................

100

Testing PWM and Current Feedback Operation ..............................................................................................

101

Position Feedback and Polarity Test ................................................................................................................

102

Establishing Basic Current Loop Operation.....................................................................................................

107

Setting Up Turbo PMAC for Sine-Wave Output Control .....................................................................................

110

Hardware Setup ................................................................................................................................................

110

Turbo PMAC Parameter Setup.........................................................................................................................

111

Establishing Basic Output Operation ...............................................................................................................

114

Finishing Setting up Turbo PMAC Commutation (Direct PWM or Sine Wave), Synchronous Motors...............

115

Confirming Commutation Polarity Match ........................................................................................................

115

Establishing a Phase Reference........................................................................................................................

116

Finishing Setting up Turbo PMAC Commutation (Direct PWM or Sine Wave), Asynchronous (Induction) Motors

...............................................................................................................................................................................

127

Calculating Ixx78 Slip Constant .......................................................................................................................

127

Setting Ixx77 Magnetization Current................................................................................................................

128

Direct Microstepping of Motors (Open-Loop Commutation) ...............................................................................

129

Setting the I-Variables ......................................................................................................................................

130

What to Do Next ...................................................................................................................................................

132

User-Written Phase Algorithms ............................................................................................................................

133

Writing the Algorithm .......................................................................................................................................

133

SETTING UP THE ENCODER CONVERSION TABLE ..................................................................................

135

Conversion Table Execution .................................................................................................................................

136

Conversion Table Structure...................................................................................................................................

136

Setup Structure..................................................................................................................................................

136

Result Structure.................................................................................................................................................

138

Using the Results ..............................................................................................................................................

139

Conversion Methods .............................................................................................................................................

140

Digital Quadrature Encoders ...........................................................................................................................

140

Analog Sine/Cosine Encoders...........................................................................................................................

142

Acc-28 Analog-to-Digital Converters...............................................................................................................

143

Parallel Feedback.............................................................................................................................................

143

Exponential Filter .............................................................................................................................................

145

Sum and Difference...........................................................................................................................................

145

Time Base (Differentiation) ..............................................................................................................................

146

SETTING UP THE SERVO LOOP.......................................................................................................................

149

Servo Update Rate.................................................................................................................................................

149

Reasons to Change Servo Update Rate.............................................................................................................

149

Ramifications of Changing the Servo Update Rate...........................................................................................

149

Types of Amplifiers ..............................................................................................................................................

150

Amplifiers for Which Servo Produces Velocity Command................................................................................

150

Amplifiers for Which Servo Produces Torque/Force Command.......................................................................

151

PID/Feedforward/Notch Servo Filter ....................................................................................................................

152

PID Feedback Filter .........................................................................................................................................

152

Feedforward Filter ...........................................................................................................................................

153

Actual PID/Feedforward Algorithm .................................................................................................................

154

Notch Filter.......................................................................................................................................................

154

Servo-Loop Modifiers .......................................................................................................................................

159

Extended Servo Algorithm....................................................................................................................................

161

Cascading Servo Loops.........................................................................................................................................

163

Selecting Turbo PMAC Motors to Use .............................................................................................................

164

iv

Table of Contents

Turbo PMAC User Manual

Inner Loop General Setup.................................................................................................................................

164

Outer Loop General Setup ................................................................................................................................

164

Joining the Loops..............................................................................................................................................

165

Tuning the Outer Loop......................................................................................................................................

166

Programming the Outer Loop Motor................................................................................................................

166

Setup Example...................................................................................................................................................

167

Changing the Mode of Control .........................................................................................................................

167

Special Instructions for Extended Single-Loop Setup .......................................................................................

168

User-Written Servo Algorithms ............................................................................................................................

169

Open Servo Compiled Algorithms.....................................................................................................................

169

Assembled User-Written Servo Algorithms.......................................................................................................

181

MOTOR COMPENSATION TABLES AND CONSTANTS ..............................................................................

183

Position Compensation Tables ..............................................................................................................................

183

Source, Target, and Assigned Motors...............................................................................................................

183

Dimension of the Table .....................................................................................................................................

184

Using Desired vs. Actual Position ....................................................................................................................

185

Multiple Tables per Motor ................................................................................................................................

185

Table Range ......................................................................................................................................................

186

Determining Compensation Values ..................................................................................................................

186

Entering Tables.................................................................................................................................................

186

Enabling and Disabling Tables ........................................................................................................................

188

Active Calculation of Corrections.....................................................................................................................

189

Reporting Table Information ............................................................................................................................

189

Deleting Tables .................................................................................................................................................

189

Backlash Compensation ........................................................................................................................................

190

Constant Backlash Parameter ..........................................................................................................................

190

Backlash Take-Up Rate.....................................................................................................................................

190

Backlash Hysteresis ..........................................................................................................................................

190

Backlash Compensation Tables ........................................................................................................................

190

Enabling and Disabling Backlash.....................................................................................................................

191

Backlash Table Example...................................................................................................................................

192

Torque Compensation Tables................................................................................................................................

193

Entering Tables.................................................................................................................................................

193

Reporting Table Information ............................................................................................................................

194

Enabling and Disabling Tables ........................................................................................................................

194

Active Calculation of Corrections.....................................................................................................................

194

Deleting Tables .................................................................................................................................................

194

TURBO PMAC GENERAL PURPOSE I/O USE ................................................................................................

195

Turbo PMAC General-Purpose I/O (JOPTO) Port................................................................................................

195

Hardware Characteristics ................................................................................................................................

195

Software Access ................................................................................................................................................

195

Turbo PMAC Multiplexed I/O (JTHW) Port ........................................................................................................

196

Turbo PMAC Control Panel Port ..........................................................................................................................

196

Control-Panel Inputs ........................................................................................................................................

196

Control-Panel Outputs......................................................................................................................................

196

Turbo PMAC2 General-Purpose I/O (JIO) Port....................................................................................................

197

Hardware Characteristics ................................................................................................................................

197

Suggested M-Variables .....................................................................................................................................

197

Direction Control..............................................................................................................................................

197

Inversion Control..............................................................................................................................................

198

Alternate Uses...................................................................................................................................................

198

Turbo PMAC2 Multiplexed I/O Port (JTHW) ......................................................................................................

198

Multiplexer Port Accessories............................................................................................................................

199

Hardware Characteristics ................................................................................................................................

199

Suggested M-Variables .....................................................................................................................................

199

Table of Contents

v

 

Turbo PMAC User Manual

Direction Control..............................................................................................................................................

199

Inversion Control..............................................................................................................................................

200

Alternate Uses...................................................................................................................................................

200

Turbo PMAC Analog Input (JANA) Port .............................................................................................................

200

Hardware Characteristics ................................................................................................................................

200

Multiplexing Principle ......................................................................................................................................

201

De-multiplexing I-Variables .............................................................................................................................

201

UMAC Digital I/O Boards ....................................................................................................................................

202

Addressing UMAC I/O Boards .........................................................................................................................

202

Setting up UMAC I/O Boards ...........................................................................................................................

203

MAKING AN APPLICATION SAFE ...................................................................................................................

207

Following Error Limits..........................................................................................................................................

207

Fatal Following Error Limit.............................................................................................................................

207

Warning Following Error Limit........................................................................................................................

207

Integrated Following Error Protection.............................................................................................................

208

Position (Overtravel) Limits..................................................................................................................................

208

Hardware Overtravel Limit Switches ...............................................................................................................

208

Software Overtravel Limit Variables ................................................................................................................

209

Velocity Limits......................................................................................................................................................

210

Vector Velocity Limit ........................................................................................................................................

210

Motor Velocity Limit.........................................................................................................................................

210

Acceleration Limits...............................................................................................................................................

211

Command Output Limits.......................................................................................................................................

211

Integrated Current (I2T) Protection.......................................................................................................................

211

Amplifier Enable and Fault Lines .........................................................................................................................

213

Encoder-Loss Detection ........................................................................................................................................

213

User-Written Safety Algorithms ...........................................................................................................................

215

Watchdog Timer....................................................................................................................................................

215

Actions on Watchdog Timer Trip ......................................................................................................................

215

Diagnosing Cause of Watchdog Timer Trip .....................................................................................................

215

Hardware Stop Command Inputs ..........................................................................................................................

216

Host-Generated Stop Commands ..........................................................................................................................

216

Program Checksums..............................................................................................................................................

217

Firmware Checksum .........................................................................................................................................

217

User-Program Checksum..................................................................................................................................

217

Communications Data Integrity ............................................................................................................................

218

EXECUTING INDIVIDUAL MOTOR MOVES .................................................................................................

219

Jogging Move Control...........................................................................................................................................

219

Jog Acceleration ...............................................................................................................................................

219

Jog Speed ..........................................................................................................................................................

219

Jog Commands..................................................................................................................................................

221

Triggered Motor Moves ........................................................................................................................................

222

Types of Triggered Moves.................................................................................................................................

222

Types of Trigger Conditions .............................................................................................................................

222

Capturing the Trigger Position.........................................................................................................................

223

Post-Trigger Move............................................................................................................................................

224

Homing Search Moves ......................................................................................................................................

224

Jog-Until-Trigger Moves ..................................................................................................................................

231

Motion Program Move-Until-Trigger...............................................................................................................

232

Open-Loop Moves.................................................................................................................................................

233

TURBO PMAC COMPUTATIONAL FEATURES.............................................................................................

235

Computational Priorities .......................................................................................................................................

235

Single Character I/O.........................................................................................................................................

235

Commutation Update........................................................................................................................................

235

vi

Table of Contents

Turbo PMAC User Manual

Servo Update ....................................................................................................................................................

235

Real-Time Interrupt Tasks ................................................................................................................................

236

VME Mailbox Processing .................................................................................................................................

236

Background Tasks.............................................................................................................................................

236

Priority Level Optimization ..............................................................................................................................

238

Evaluating the Turbo PMAC’s Computational Load ............................................................................................

238

Phase Interrupt Tasks .......................................................................................................................................

238

Servo Interrupt Tasks........................................................................................................................................

239

Real-Time Interrupt Tasks ................................................................................................................................

239

Total Interrupt Tasks ........................................................................................................................................

239

Sample Monitoring Program ............................................................................................................................

239

Background Cycle Time....................................................................................................................................

240

Numerical Values..................................................................................................................................................

240

Internal Formats ...............................................................................................................................................

240

Receiving Values...............................................................................................................................................

241

Reporting Values...............................................................................................................................................

241

Addresses ..............................................................................................................................................................

242

Variables ...............................................................................................................................................................

242

I-Variables ........................................................................................................................................................

242

P-Variables .......................................................................................................................................................

243

Q-Variables.......................................................................................................................................................

244

M-Variables ......................................................................................................................................................

245

Operators...............................................................................................................................................................

247

Arithmetic Operators ........................................................................................................................................

247

Logical Operators.............................................................................................................................................

248

Functions...............................................................................................................................................................

248

Expressions ...........................................................................................................................................................

248

The {DATA} Syntax .............................................................................................................................................

248

Variable Value Assignment Statement..................................................................................................................

249

I-Variable Default Value Assignment ...............................................................................................................

249

Synchronous M-Variable Value Assignment.....................................................................................................

249

Comparators ..........................................................................................................................................................

251

Conditions .............................................................................................................................................................

252

Simple Conditions .............................................................................................................................................

252

Compound Conditions ......................................................................................................................................

252

Single-Line Condition Actions ..........................................................................................................................

252

Multiple-Line Conditions..................................................................................................................................

253

Timers ...................................................................................................................................................................

253

Computational Considerations ..............................................................................................................................

253

SETTING UP A COORDINATE SYSTEM..........................................................................................................

255

What is a Coordinate System?...............................................................................................................................

255

What is an Axis? ...................................................................................................................................................

255

Single-Motor Axes.............................................................................................................................................

255

Multiple-Motor Axes .........................................................................................................................................

256

Phantom Axes ...................................................................................................................................................

256

Axis Definition......................................................................................................................................................

256

Matching Motor to Axis ....................................................................................................................................

256

Scaling and Offset.............................................................................................................................................

256

Axis Types .........................................................................................................................................................

257

Conversion from Axis to Motor Position ..........................................................................................................

258

Conversion from Motor to Axis Positions.........................................................................................................

258

Coordinate-System Kinematic Calculations..........................................................................................................

259

Creating the Kinematic Program Buffers .........................................................................................................

260

Coordinate System Transformations with Kinematics ......................................................................................

267

Executing the Kinematic Programs ..................................................................................................................

267

Table of Contents

vii

 

Turbo PMAC User Manual

Coordinate System Time-Base..............................................................................................................................

268

WRITING AND EXECUTING MOTION PROGRAMS....................................................................................

271

Sequenced Motion Program Execution.................................................................................................................

271

Flow Control .........................................................................................................................................................

271

G-Codes ................................................................................................................................................................

271

Modal Commands .................................................................................................................................................

272

Move Commands ..................................................................................................................................................

272

Motion Program Trajectories ................................................................................................................................

272

Linear Blended Moves ..........................................................................................................................................

272

Position or Distance Specification....................................................................................................................

272

Feedrate or Move-Time Specification...............................................................................................................

272

Acceleration Parameters ..................................................................................................................................

274

Acceleration Limits ...........................................................................................................................................

275

Minimum Move Time ........................................................................................................................................

276

Maximum Move Time........................................................................................................................................

277

The Blending Function......................................................................................................................................

277

Circular Blended Moves........................................................................................................................................

282

Specifying the Interpolation Plane....................................................................................................................

282

Circle Modes.....................................................................................................................................................

282

Center Vector....................................................................................................................................................

283

Radius Size Specification ..................................................................................................................................

284

No Center Specification ....................................................................................................................................

285

Vector Feedrate Axes........................................................................................................................................

285

Circle-Radius Errors ........................................................................................................................................

285

Move Segmentation Mode.................................................................................................................................

285

Rapid-Mode Moves...............................................................................................................................................

286

Move Time ........................................................................................................................................................

286

Move Path.........................................................................................................................................................

286

No Blending ......................................................................................................................................................

287

Motion Program Move-Until-Trigger...............................................................................................................

287

Altered-Destination Moves ...............................................................................................................................

288

Spline-Mode Moves ..............................................................................................................................................

289

How They Work ................................................................................................................................................

289

Added Pieces.....................................................................................................................................................

290

Quantifying the Position Adjustment ................................................................................................................

290

5-Point Spline Correction .................................................................................................................................

290

Non-Uniform Spline..........................................................................................................................................

290

PVT-Mode Moves.................................................................................................................................................

292

Mode Statement.................................................................................................................................................

292

Move Statements ...............................................................................................................................................

292

Turbo PMAC Calculations ...............................................................................................................................

292

Problems in Stepping ........................................................................................................................................

292

Use of PVT to Create Arbitrary Profiles...........................................................................................................

292

Use of PVT in Contouring.................................................................................................................................

293

Cutter Radius Compensation.................................................................................................................................

294

Defining the Plane of Compensation ................................................................................................................

294

Defining the Magnitude of Compensation ........................................................................................................

295

Turning On Compensation................................................................................................................................

295

Turning Off Compensation ...............................................................................................................................

295

How Turbo PMAC Introduces Compensation ..................................................................................................

295

Treatment of Compensated Inside Corners.......................................................................................................

297

Treatment of Outside Corners ..........................................................................................................................

297

Treatment of Full Reversal ...............................................................................................................................

299

Note on Full Circles..........................................................................................................................................

299

Speed of Compensated Moves...........................................................................................................................

300

viii

Table of Contents

Turbo PMAC User Manual

Changes in Compensation ................................................................................................................................

300

Failures in Cutter Compensation......................................................................................................................

302

Block Buffering for Cutter Compensation.........................................................................................................

303

Single-Stepping While in Compensation...........................................................................................................

304

Three-Dimensional Cutter Radius Compensation.................................................................................................

305

Defining the Magnitude of 3D Compensation ..................................................................................................

305

Turning on 3D Compensation...........................................................................................................................

305

Turning Off 3D Compensation..........................................................................................................................

306

Declaring the Surface-Normal Vector ..............................................................................................................

306

Declaring the Tool-Orientation Vector.............................................................................................................

306

How 3D Compensation is Performed ...............................................................................................................

307

Turbo PMAC Lookahead Function.......................................................................................................................

307

Quick Instructions: Setting Up Lookahead.......................................................................................................

309

Detailed Instructions: Setting up to use Lookahead .........................................................................................

310

Running a Program with Lookahead ................................................................................................................

315

Stopping While In Lookahead...........................................................................................................................

317

Reversal While in Lookahead ...........................................................................................................................

319

Axis Transformation Matrices...............................................................................................................................

320

Setting up the Matrices .....................................................................................................................................

321

Using the Matrices............................................................................................................................................

321

Calculation Implications...................................................................................................................................

322

Examples...........................................................................................................................................................

322

Entering a Motion Program...................................................................................................................................

323

Learning a Motion Program.............................................................................................................................

324

Motion Program Structure................................................................................................................................

324

Running a Motion Program ..............................................................................................................................

328

Implementing a Machine-Tool Style Program ......................................................................................................

329

G, M, T, and D-Codes.......................................................................................................................................

329

Standard G-Codes.............................................................................................................................................

329

Spindle Programs .............................................................................................................................................

333

Standard M-Codes ............................................................................................................................................

334

Default Conditions............................................................................................................................................

336

Rotary Motion Program Buffers............................................................................................................................

337

Defining a Rotary Buffer...................................................................................................................................

337

Preparing to Run ..............................................................................................................................................

337

Opening for Entry .............................................................................................................................................

337

Staying Ahead of Executing Line ......................................................................................................................

338

Closing and Deleting Buffers............................................................................................................................

338

How PMAC Executes a Motion Program .............................................................................................................

339

Calculation of Subsequent Moves .....................................................................................................................

340

When No Calculation Ahead.............................................................................................................................

341

SYNCHRONIZING TURBO PMAC TO EXTERNAL EVENTS......................................................................

345

Position Following (Electronic Gearing)...............................................................................................................

345

Position Following I-Variables.........................................................................................................................

345

Changing Ratios on the Fly ..............................................................................................................................

346

Superimposing Following on Programmed Moves...........................................................................................

346

External Time-Base Control (Electronic Cams)....................................................................................................

347

What Is Time-Base Control?.............................................................................................................................

347

Instructions for Using an External Time-Base Signal ......................................................................................

348

Time-Base Example ..........................................................................................................................................

350

Triggered Time Base.........................................................................................................................................

352

Synchronizing Turbo PMAC to other Turbo PMACs...........................................................................................

354

Clock Timing.....................................................................................................................................................

354

Motion Program Timing ...................................................................................................................................

356

Hardware Position-Capture Functions ..................................................................................................................

357

Table of Contents

ix

 

Turbo PMAC User Manual

Requirements for Hardware Capture ...............................................................................................................

357

Setting the Trigger Condition ...........................................................................................................................

357

Automatic Move-Until-Trigger Functions ........................................................................................................

358

Manual Use of the Capture Feature .................................................................................................................

358

Converting to Motor and Axis Coordinates ......................................................................................................

361

Using the Position-Compare Feature on Turbo PMAC.........................................................................................

362

Scaling and Offset of Position-Compare Registers...........................................................................................

362

Setup on a PMAC-Style Servo IC......................................................................................................................

362

Setup on a PMAC2-Style Servo IC....................................................................................................................

363

Converting from Motor and Axis Coordinates..................................................................................................

368

Synchronous M-Variable Assignment Outputs.....................................................................................................

369

WRITING AND EXECUTING PLC PROGRAMS.............................................................................................

371

What are PLC Programs?......................................................................................................................................

371

When To Use.....................................................................................................................................................

371

Common Uses ...................................................................................................................................................

371

64 PLC Programs .............................................................................................................................................

371

Entering a PLC Program .......................................................................................................................................

371

Opening the Buffer............................................................................................................................................

372

Downloading the Program ...............................................................................................................................

372

Closing the Buffer .............................................................................................................................................

372

Erasing the Program ........................................................................................................................................

372

Example ............................................................................................................................................................

372

PLC Program Structure .........................................................................................................................................

373

Calculation Statements .....................................................................................................................................

373

Conditional Statements .....................................................................................................................................

373

Compiled PLC Programs ......................................................................................................................................

375

Execution of Compiled PLCs ............................................................................................................................

376

Writing Compiled PLC Programs.....................................................................................................................

376

Optimization for Speed .....................................................................................................................................

380

Memory Utilization ...........................................................................................................................................

380

Compiling the PLCs..........................................................................................................................................

381

Running Compiled PLCs...................................................................................................................................

382

WRITING A HOST COMMUNICATIONS PROGRAM...................................................................................

383

Turbo PMAC Command/Response Format ..........................................................................................................

383

Response Types .................................................................................................................................................

383

Variations .........................................................................................................................................................

384

Clearing the Port ..............................................................................................................................................

384

Serial Port Communications..................................................................................................................................

385

Setting Up the Interface ....................................................................................................................................

385

Sending a Character .........................................................................................................................................

385

Reading a Character.........................................................................................................................................

385

ISA/PCI Host Port Communications.....................................................................................................................

386

Host Port Structure...........................................................................................................................................

386

Register Functions ............................................................................................................................................

386

Registers for Simple Polled Communications...................................................................................................

386

Setting up the Port ............................................................................................................................................

387

Sending a Character .........................................................................................................................................

387

Reading a Character.........................................................................................................................................

387

ISA/PCI Interrupts ............................................................................................................................................

387

Initializing the Interrupt Controller..................................................................................................................

391

VME Bus Communications ..................................................................................................................................

391

Setting up VME Communications .....................................................................................................................

392

VME Mailbox Register Communications..........................................................................................................

392

Dual-Ported RAM Communications .....................................................................................................................

397

Physical Configuration and Connection...........................................................................................................

398

x

Table of Contents

Turbo PMAC User Manual

Host Address Setup ...............................................................................................................................................

398

ISA Bus Setup....................................................................................................................................................

398

VME Bus Setup .................................................................................................................................................

399

Mapping of Memory Addresses ........................................................................................................................

401

DPRAM Automatic Functions...........................................................................................................................

402

DPRAM Data Format.......................................................................................................................................

402

DPRAM Motor Data Reporting Buffer .............................................................................................................

403

DPRAM Background Data Reporting Buffer....................................................................................................

404

DPRAM ASCII Communications ......................................................................................................................

405

DPRAM Communications Interrupts ................................................................................................................

406

DPRAM Background Variable Read Buffer .....................................................................................................

407

DPRAM Background Variable Data Write Buffer............................................................................................

409

DPRAM Binary Rotary Program Transfer Buffers...........................................................................................

410

DPRAM Data Gathering Buffer........................................................................................................................

412

Turbo PMAC Ethernet Protocol............................................................................................................................

412

PMAC Ethernet Protocol Command Packet Description .................................................................................

413

Turbo PMAC Ethernet Protocol Command Set ................................................................................................

414

Data Gathering ......................................................................................................................................................

420

Table of Contents

xi

Turbo PMAC User Manual

xii

Table of Contents

Turbo PMAC User Manual

USING THIS MANUAL

This is the User Manual for the Turbo PMAC family of motion and machine controllers from Delta Tau Data Systems, Inc. The Turbo PMAC family combines power, flexibility, and ease of use in a wide variety of configurations to provide optimal solutions for machine builders.

What is in this Manual

This manual contains a step-by-step guide to setting up the Turbo PMAC application, starting with the overall system configuration, moving on to the setup of the individual motors and the grouping of the motors into coordinate systems, followed by the writing of motion programs, PLC programs, and host communications programs.

The User Manual is divided into sections that are put in the order that most new users will need during the basic setup of their application. In the later stages of development, the typical user will be going back and forth in this manual for more detailed information about particular subjects of interest.

Other Manuals to Use

Other manuals should be consulted during the development of the Turbo PMAC project. The most important of these manuals are listed below:

Turbo PMAC Software Reference Manual

Hardware Reference Manuals

UMAC Quick Reference Guide

PMAC Executive Program Manual

Software Development Package Manuals

Turbo PMAC Software Reference Manual

The Software Reference Manual for the Turbo PMAC family of controllers contains detailed descriptions of all commands and setup variables, listed in alphabetical or numerical order for easy reference. It also contains a detailed memory and I/O map for the Turbo PMAC family, plus suggested M-variable pointer definitions and a list of updates to the Turbo PMAC embedded firmware.

If there is a specific question about the implementation of a particular Turbo PMAC setup variable, command, or register, consult the appropriate section of the Software Reference Manual for the quickest answer.

Hardware Reference Manuals

A particular Turbo PMAC hardware configuration will have its own Hardware Reference Manual for the controller, and any accessories will each have its own Hardware Reference (User) Manual. These will be among the first manuals to consult, because they explain how to configure and install the Turbo PMAC.

UMAC Quick Reference Guide

New users of the UMAC rack-mounted configuration of the Turbo PMAC family will want to consult the UMAC Quick Reference Guide. This guide provides a good overview of the hardware and software setup for the UMAC and its accessories, so less use is required of the more detailed manuals.

PMAC Executive Program Manual

Virtually all users will utilize a PMAC Executive program on a PC to start the development, even if there will not be a PC in the final application. The most commonly used Executive program as of this writing is Pewin32 Pro (PMAC Executive program for 32-bit Windows, Pro Suite). While the installation and use of this program suite is very intuitive and in accordance with industry standards, consult the manual for this package.

Using this Manual

1

Turbo PMAC User Manual

Actually, the Pewin32 Pro package is a suite of software programs, including step-by-step tutorial setup programs, tuning programs (interactive and auto-tuning), and plotting programs.

The Pewin32 Pro suite automates or simplifies many of the setup steps that are explained in detail for low-level setup in this manual. Utilize the Pro Suite tools for automated setup wherever possible.

Software Development Package Manuals

Delta Tau offers several software development packages to enable the quick and easy development of front-end software for communications with the Turbo PMAC and interface with the machine operator. Each of these packages has its own manual.

The two most commonly used packages are the PComm32 Pro (PMAC Communications Library for 32bit Windows, Pro suite) library of communications routines, and the PHMI (PMAC Human-Machine Interface) GUI development package.

2

Using this Manual

Turbo PMAC User Manual

TURBO PMAC FAMILY

The Turbo PMAC family of controllers is the newest generation of motion and machine controllers from Delta Tau Data Systems. It is available in a wide variety of configurations, permitting the user to optimize the controller hardware and software to particular application needs. This section provides a brief overview of the Turbo PMAC structure; all items mentioned here are covered in more detail elsewhere in the User Manual or in related reference manuals.

Turbo PMAC vs. Non-Turbo PMAC

The Turbo PMAC family of controllers is the next generation after the original PMAC family of controllers, differing only in having a faster and more powerful CPU section, but able to maintain the same interface circuitry. Indeed, in some configurations it is possible to remove the old non-Turbo PMAC CPU board from a controller and install the Turbo PMAC CPU as a field upgrade.

The Turbo PMAC family retains the same capabilities and programming styles as the original PMAC family, but adds important new capabilities as well. These new capabilities are fully listed in a section of the Software Reference manual, and detailed in the appropriate sections of the User Manual and Software Reference; highlights are listed here:

32-motor capability vs. 8-motor

16-coordinate-system capability vs. 8-coordinate-system

Forward and inverse kinematic algorithms

Standard multi-move lookahead algorithms

32,768 user variables vs. 4096

Simultaneous communication over multiple ports

Turbo PMAC vs. Turbo PMAC2

As with the original PMAC family, Turbo PMACs can come as Turbo PMAC or Turbo PMAC2 controllers. The difference is due to the nature of the “core” servo-interface ICs and in a few aspects of the firmware used to set them up. Fundamentally, PMAC2-style Servo ICs permit programmable configuration of the frequency of the key clock signals that drive the hardware and software processes on the controllers; PMAC-style Servo ICs do not.

Unlike the older non-Turbo PMACs, it is possible to mix PMAC-style and PMAC2-style Servo ICs in a single Turbo PMAC system. The Turbo PMAC CPU will automatically recognize which types of ICs are present, and configure the setup I-variables appropriately.

In this documentation, Turbo PMAC refers generically to both Turbo PMAC and Turbo PMAC2 controllers. Turbo PMAC and Turbo PMAC2 refer specifically to one type of controller. If a specific product name (e.g. Turbo PMAC-PC) does not specify 1 or 2, it is a PMAC controller.

Turbo PMAC is a Computer

It is important to realize that Turbo PMAC is a full computer in its own right, capable of standalone operation with its own stored programs. Furthermore, it is a real-time, multitasking computer that can prioritize tasks and have the higher priority tasks pre-empt those of lower priority (most personal computers are not capable of this).

Even when used with a host computer, the communications should be thought of as those from one computer to another, not as computer to peripheral. In these applications, Turbo PMAC’s ability to run multiple tasks simultaneously, properly prioritized, can take a tremendous burden off the host computer (and its programmer), both in terms of processor time, and of task-switching complexity.

Turbo PMAC Family Overview

3

Turbo PMAC User Manual

What Turbo PMAC Does

Turbo PMAC can handle all of the tasks required for machine control, constantly switching back and forth between the different tasks thousands of times per second. The major tasks involved in machine control are summarized here.

Executing Motion Programs

The most obvious task of Turbo PMAC is executing sequences of motions given to it in a motion program. When told to execute a motion program, Turbo PMAC works through the program one move at a time, performing all the calculations up to that move command (including non-motion tasks) to prepare for actual execution of the move. Turbo PMAC is always working ahead of the actual move in progress, so it can blend properly into the upcoming move, if required. See the Writing a Motion Program section for more details.

Executing PLC Programs

The sequential nature of motion program suits it well for commanding a series of moves and other coordinated actions; however these programs are not good at performing actions that are not directly coordinated with the sequence of motions. For these types of tasks, Turbo PMAC provides the capability for users to write “PLC programs.” These are named after Programmable Logic Controllers because they operate in a similar manner, continually scanning through their operations as fast as processor time allows. These programs are very useful for any task that is asynchronous to the motion sequences. See the Writing a PLC Program section for more details.

Servo Loop Update

In an automatic task that is essentially invisible to the Turbo PMAC user, Turbo PMAC performs a servo update for each motor at a fixed frequency (usually around 2 kHz). The servo update for a motor consists of incrementing the commanded position (if necessary) according the equations generated by the motion program or other motion command, comparing this to the actual position as read from the feedback sensor, and computing a command output based on the difference. This task occurs automatically without the need for any explicit commands. See the Setting up the Servo Loop section for more details.

Commutation Update

If Turbo PMAC is requested to perform the commutation for a multiphase motor, it will perform commutation updates automatically at a fixed frequency (usually around 9 kHz). The commutation, or phasing, update for a motor consists of measuring and/or estimating the rotor magnetic field orientation, then apportioning the command that was calculated by the servo update among the different phases of the motor. This task occurs automatically without the need for any explicit commands. See the Setting up Commutation section for more details.

Housekeeping

Turbo PMAC regularly and automatically performs housekeeping tasks that make sure the system is in good working order. These tasks include the safety checks, such as following error limits, hardware overtravel limits, software overtravel limits, and amplifier faults, plus general status updates. They also include the update of the watchdog timer. If any problem in hardware or software keeps these tasks from executing, the watchdog timer will trip, and the card will shut down. See the Making an Application Safe section for more details.

Communicating with the Host

Turbo PMAC can communicate with one or more host computers at any time, even in the middle of a sequence of motions. Turbo PMAC will accept a command, and take the appropriate action – putting the command in a program buffer for later execution, providing a data response to the host, starting a motor move, etc. If the command is illegal, it will report an error to the host.

4

Turbo PMAC Family Overview

Turbo PMAC User Manual

Task Priorities

These tasks are ordered in a priority scheme that has been optimized to keep applications running efficiently and safely. While the priority levels are fixed, the frequency at which various tasks are performed is under user control. See Computational Features for more details.

Key Hardware Components

A Turbo PMAC controller is a combination of a computer processor section and specialized interface circuitry for motion, I/O, and communications. Different configurations of Turbo PMAC controllers provide different combinations of these components. The following block diagram shows the basic possibilities for combinations of the concepts in PMAC and Turbo PMAC control systems.

PMAC Family Main Components

I/O Interface

Circuitry

yPMAC(1)-style

yPMAC2-style

Serial Communications

Interface

yRS-232 and / or

yRS-422

CPU

yNon-Turbo: DSP5600x (16-bit addressing)

yTurbo: DSP5630x (24-bit addressing)

Bus Communications

Interface

yISA / VME / PCI

yPC104 / STD

yUSB

yETHERNET (optional DPRAM)

Servo Interface

Circuitry

yPMAC(1)–style ICs

yPMAC2–style ICs

yPMAC(1)–style connectors

yPMAC2–style connectors

yMini / Lite / (full)

MACRO Ring

Interface

yPMAC2 Ultralite

yACC-24P

yACC-5E (UMAC)

CPU Section

The computer portion of a Turbo PMAC is often called the CPU (central processing unit). It consists of a microprocessor, memory, and associated support circuitry. In most Turbo PMAC configurations, the CPU is on a separate circuit board from the interface circuitry – a piggyback board on top of expansionslot controllers, or a dedicated board in the case of the rack-mounted UMAC controllers. However, in the Lite and Ultralite controllers, this circuitry is integrated into the main circuit board.

Processor

Turbo PMAC controllers use a processor from Motorola’s DSP56300 family of digital signal processors (DSPs). A DSP is a special type of microprocessor optimized for fast and repeated mathematical operations of the type found commonly in audio, video, and motion control. They provide a more costeffective solution to these specific types of computations than do general-purpose microprocessors.

Different members of the DSP56300 family are used depending on the CPU option ordered for the Turbo PMAC.

Turbo PMAC Family Overview

5

Turbo PMAC User Manual

Option 5Cx (the x specifies the external memory size – see below) provides an 80 MHz DSP56303 with 8k 24-bit words of internal memory. This is the default processor.

Option 5Dx provides a 100 MHz DSP56309 with 34k 24-bit words of internal memory.

Option 5Ex provides a 160 MHz DSP56311 with 128k 24-bit words of internal memory. These options require firmware revision V1.939 or newer.

Option 5Fx (expected release in 3rd quarter 2003) provides a 240 MHz DSP56321 with 192k 24-bit words of internal memory. These options require firmware revision V1.940 or newer.

Not all of these options are available in all Turbo PMAC configurations.

Note:

Just because a processor is capable of operating at a particular frequency does not mean that it will actually be operating at that frequency. The value of Turbo PMAC variable I52 at power-up/reset controls what the operating frequency of the processor will be: 10 MHz * (I52+1). The default value of I52 is 7, for 80 MHz operation, regardless of the CPU speed option ordered. The TYPE command will show the frequency at which the CPU is actually operating.

To locate the CPU part number, issue the CPU on-line command. Turbo PMAC will respond with the part number (e.g. 56311). Internally, global status bits X:$000006 bit 21 and Y:$000006 bit 21 (part of the ??? global status query word) indicate which type of CPU is present.

Active Memory

Turbo PMAC uses static RAM (SRAM) ICs for its active memory. This type of RAM is faster and more robust than the dynamic RAM (DRAM) that forms the bulk of the PC’s memory. (SRAM ICs are used for the PC’s fast cache memory bank.)

As with any RAM ICs, the contents of these SRAM ICs (as well as memory registers internal to the DSP, and memory-mapped registers in the ASICs) are lost when power is removed. Settings that should be retained through a power-down must first be copied to non-volatile flash memory with the SAVE command.

The Motorola DSPs employ a Harvard architecture, which uses separate memory banks for program (compiled or assembled machine code instructions) storage and data (everything else, including interpreted program commands) storage. This is in contrast to the more common von Neumann architecture that the PC uses, in which any memory can be used for program or data storage.

The standard memory configuration for a Turbo PMAC (Option 5x0, where “x” specifies the CPU speed, as explained above) provides 128k 24-bit words of program memory, and 128k 24-bit words (organized as 64k 48-bit words) of data memory, in addition to what is internal to the DSP. This is the default configuration. With the standard memory configuration, the total addressable memory is the sum of memory internal to the DSP and the external memory in the SRAM ICs; getting a DSP with more internal memory adds to your total memory capacity.

If the extended memory configuration is ordered (Option 5x3), the Turbo PMAC comes with a total of 512k 24-bit words of program memory, and 512k 24-bit words (organized as 256k 48-bit words) of data memory. With the extended memory configuration, the total addressable memory is limited by the addressing space of the DSP; getting a DSP with more internal memory does not add to the total memory capacity (although it does substitute faster internal memory for slower external memory).

6

Turbo PMAC Family Overview

Turbo PMAC User Manual

Status variable I4908 contains the address of the next register past last word of unreserved data memory. If no UBUFFER has been defined, this is the address one greater than the last word of data memory. With the standard memory configuration, no UBUFFER is defined on re-initialization. With the extended memory configuration, a UBUFFER of 65,536 words – from X/Y:$030000 - $03FFFF – is defined automatically on re-initialization.

Flash Memory

Turbo PMAC’s non-volatile memory storage is contained in a flash-memory IC. Flash-memory ICs retain their contents without applied power. However, they are relatively slow in access times, so Turbo PMAC does not use the flash IC in ongoing operation. Instead, during power-up/reset, it copies the contents of the flash memory into fast SRAM so the processor can access it quickly. The flash memory is only written to upon a SAVE command, or when new firmware is downloaded.

The flash memory provides non-volatile storage for both the firmware created by Delta Tau, and the programs, variable values, and other settings created by the user. The flash memory IC is sized depending on the active memory capacity so as to be able to store the entire contents of the active memory. Status variables I4904 and I4909 both contain information as to what size of flash memory is present.

Copying user settings to flash memory with the SAVE command takes several seconds during which some other tasks, including several safety checks, are not performed; this should not be done while the machine is in actual operation. As Turbo PMAC is copying saved data from flash memory to active SRAM during a power-up/reset, it is evaluating the checksum of this data and comparing it to the checksum calculated during the last SAVE operation. If there is a discrepancy, it will revert the settings in active memory to factory default values, as if the card had been re-initialized, and set the Flash Read Error (a.k.a. “EAROM error) status bit at X:$000006 bit 21, part of the ??? global status query word.

Optional Battery-Backed Parameter Memory

If Option 16A is ordered, the Turbo CPU section is provided with an additional bank of 32k 24-bit words (mapped as 16k 48-bit words) of data-memory SRAM that is battery-backed (BBRAM) and can be used for parameter storage. Typically, this memory bank is used to store machine-state information without the need for a lengthy SAVE command.

The low-power SRAM that can be powered from batteries for lengthy periods is slower than the SRAM ICs used for the main memory, so the user should be aware that significant use of this memory bank might incur a noticeable computational speed penalty. P-variable and/or Q-variable storage can be moved from fast main memory to the battery-backed memory by changing I46 from its default value of 0. This provides automatic retention of the variable values at the cost of slower access. More commonly, registers in the BBRAM are just accessed with M-variable as pointers. BBRAM registers start at X/Y:$050000.

Although the expected average battery life for the lithium battery that retains this memory is five years or more, a yearly replacement schedule is recommended. There is a super-capacitor capable of retaining the contents of the memory for several minutes without the battery, so a battery change can be done without power applied to the controller.

Turbo PMAC register X:$00003F contains the address of the end register of BBRAM. It will report a value of $050000 if there is no BBRAM present. It will report a value of $054000 if the Option 16A BBRAM is present. It will report a value of $060000 if extended BBRAM is present (Turbo PMAC designs support this but it is not being sold at this time).

Turbo PMAC Family Overview

7

Turbo PMAC User Manual

Machine Interface ICs

The Turbo PMAC CPU communicates to the physical machine through several types of special ICs that have memory-mapped registers for easy processor access, and application-specific circuitry for the machine interface. The most common of these are the Servo ICs, the MACRO ICs, and the I/O ICs, application-specific ICs (ASICs) designed by Delta Tau and manufactured in gate array technology to create a full feature set in a cost-effective manner.

Servo ICs

The Servo ICs contain all of the digital logic to provide the interface between the CPU and the motion (servo or stepper) channels. Each Servo IC provides the interface to four motion channels. There are presently two types of Servo ICs, one supporting the older PMAC-style interface (analog amplifier interface only), and the other supporting the newer PMAC2-style interface (analog or digital amplifier interfaces).

Servo Channels: Servo channels are a hardware structure in Turbo PMAC systems, a set of interfaces and registers in the Servo ICs and surrounding systems. A channel consists of the interface and registers for a single amplifier, encoder, and set of flags. While these channels are usable by Turbo PMAC motors, axes, and coordinate systems (which are software structures – see Key Software Components below) for various purposes, they can exist independently of any of those structures.

Reporting Servo ICs Present: Turbo PMAC variable I4900 reports how many Servo ICs are present, and at which addresses. I4901 reports which type each Servo IC is. The following table shows which Servo ICs can be present, their addresses, and the I-variables used to configure them:

Servo IC #

Base Address

I Variables

Servo IC #

Base Address

I Variables

0

$078000

I7000 – I7049

5

$079300

I7500 – I7549

1

$078100

I7100 – I7149

6

$07A200

I7600 – I7649

2

$078200

I7200 – I7249

7

$07A300

I7700 – I7749

3

$078300

I7300 – I7349

8

$07B200

I7800 – I7849

4

$079200

I7400 – I7449

9

$07B300

I7900 – I7949

Servo ICs 0 and 1 are on board a board-level Turbo PMAC or in a 3U-format stack. Servo ICs 2 through 9 are accessed through the expansion port, either the UMAC’s UBUS backplane expansion port, or a board-level Turbo PMAC’s JEXP cable expansion port, on an Acc-24x axis board, or an Acc-51x interpolator board.

PMAC-Style DSPGATE ASIC: The PMAC-style Servo IC is labeled the DSPGATE. It is a 4-channel part with 32 memory-mapped registers. Each channel supports the following features:

Serial output for 16-bit digital-to-analog converter

Input for digital quadrature or pulse-and-direction feedback with index

Four input flags (home, +/-limit, amp-fault) that can trigger hardware encoder capture

Amplifier-enable output

Hardware position-compare output

Input from 16-bit analog-to-digital converter (from accessory board)

8

Turbo PMAC Family Overview

Delta Tau BRICK CONTROLLER, TURBO CLIPPER, TURBO PMAC PCI, TURBO PMAC PCI LITE, TURBO PMAC2 PCI User Manual

Turbo PMAC User Manual

 

 

 

 

 

 

 

HOME 1-

 

 

 

 

PMAC

 

 

+LIMIT 1-

 

 

 

 

 

 

-LIMIT 1-

 

 

 

 

CUSTOM

 

 

FAULT 1-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

AENA 1-4

 

 

SELECTABLE-FREQUENCY CLOCK INPUTS

 

 

LD

EQU 1-4

 

 

 

 

 

 

 

 

ENCODER

 

 

 

 

DAC 1

 

 

 

 

 

 

 

 

 

 

 

 

 

SAMPLE

SERVO

PHASE

 

 

 

 

 

 

 

 

 

 

 

 

LD

 

 

 

 

 

 

 

 

 

DAC 2

 

4

 

 

 

 

 

 

 

 

 

ANALOG

 

 

 

 

 

INPUT

 

 

OUTPUTS.

 

 

 

 

 

 

 

 

 

 

 

 

 

FLAG

FLAGS

 

LD

 

16 BIT

 

 

 

 

 

 

DAC 3

RESOLUTION

 

A

 

 

CONTROL

 

 

 

 

 

 

 

 

 

 

 

 

 

B

ENCODER 1

 

 

OUTPUT

 

 

 

 

 

C

 

 

 

 

 

 

 

 

 

 

FLAGS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SERIAL

 

LD

 

 

 

A

 

DAC SHIFT REGISTERS (4)

DATA OUT

 

DAC 4

 

 

 

B

ENCODER 2

 

 

 

 

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

4

 

 

 

 

OPTO

 

 

 

 

 

 

 

 

 

 

 

ENCODER

 

 

 

 

 

 

 

 

 

 

DSP-GATE

 

ISOLATION

 

 

 

INPUTS

A

 

 

 

 

 

 

 

 

 

1

 

 

B

ENCODER 3

 

 

SERIAL

 

 

 

 

 

 

 

 

 

4

 

C

 

 

 

DATA IN

ADC

 

2

 

 

 

ADC SHIFT REGISTERS (4)

MUX

ANALOG

 

 

 

 

16 BIT

 

INPUTS

 

A

 

 

 

 

 

3

 

 

 

 

 

 

 

4

 

 

B

ENCODER 4

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

 

 

 

 

CLOCK

 

 

 

 

 

 

 

 

ANALOG

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CONTROL

 

 

 

 

 

 

 

ENCODER

 

 

MUX

ACCESSORY BOARD

 

 

 

 

CONTROL

 

 

CONTROL

 

 

 

 

 

 

 

 

 

 

 

 

24-BIT

16-BIT

 

 

 

 

 

 

 

 

DATA BUS

ADDRESS BUS

 

 

 

 

 

The PMAC-style DSPGATE IC is provided on the following Turbo PMAC products:

Turbo PMAC PC

Turbo PMAC VME

Turbo PMAC PCI

Turbo PMAC PCI Lite

Acc-24P ISA-Format Axis-Expansion Board

Acc-51P ISA-Format Interpolator Board

PMAC2-Style DSPGATE1 ASIC: The PMAC2-style Servo IC is labeled the DSPGATE1. It is a 4- channel part with 64 memory-mapped registers. Each channel supports the following features:

Three output command signal sets, configurable as either:

Two serial data streams to digital-to-analog converters of up to 18 bits, and one pulse-and- direction pair, or

Three pulse-width-modulated (PWM) top and bottom pairs

Input for digital quadrature with index, pulse-and-direction, or MLDT feedback

Four input flags (home, +/-limit, user) that can trigger hardware encoder capture

Amplifier-fault input

Four supplemental input flags (T, U, V, W) for hall commutation sensors, sub-count data, fault codes, or general use

Amplifier-enable output

Hardware position-compare output

Input from two analog-to-digital converters of up to 18 bits (from amplifier or accessory board)

Turbo PMAC Family Overview

9

Turbo PMAC User Manual

The DSPGATE1 IC also has on-board software-configurable clock generation circuitry. It can generate the servo and phase clocks for the entire Turbo PMAC system (only one IC will do this; the others will accept these as inputs). It also generates the clock signals that drive its own circuitry: DAC, ADC, PWM and PFM (pulse-frequency-modulation).

PMAC2 Gate Array IC

“DSPGATE1”

3

Encoder 1

Output1 A,B,C

6

9

Flag 1

ADCIN1 A,B

2

2

 

 

 

3

Encoder 2

Output2 A,B,C

6

9

Flag 2

ADCIN2 A,B

2

2

 

 

 

3

Encoder 3

Output3 A,B,C

6

9

Flag 3

ADCIN3 A,B

2

2

 

 

 

3

Encoder 4

Output4 A,B,C

6

9

Flag 4

ADCIN4 A,B

2

2

 

 

 

 

Encoder/Flag

Output/ADCIN

2

 

Status & Control

Control

2

Clock, PLL

 

 

24-bit

6-bit

DATA BUS

ADDRESS BUS

The PMAC2-style DSPGATE1 IC is provided on the following Turbo PMAC products:

Turbo PMAC2 PC

Turbo PMAC2 VME

Turbo PMAC2 PCI

Turbo PMAC2 PCI Lite

Acc-24P2 ISA-format Axis Expansion Board

Acc-24E2 UMAC PWM Axis Board

Acc-24E2A UMAC Analog Axis Board

Acc-24E2S UMAC Encoder/Stepper Board

Acc-51E UMAC Interpolator Board

Acc-24C2 UMAC-CPCI PWM Axis Board

Acc-24C2A UMAC CPCI Analog Axis Board

Acc-51C UMAC CPCI Interpolator Board

Acc-2E 3U-Format Stack Axis Board

MACRO ICs

The Turbo PMAC has two types of ASICs that support communication over the MACRO ring, the openarchitecture high-speed real-time communications ring that Delta Tau developed to simplify connection of distributed control hardware.

10

Turbo PMAC Family Overview

Turbo PMAC User Manual

Turbo PMAC variable I4902 reports how many MACRO ICs are present, and at which addresses. I4903 reports which type each MACRO IC is, a DSPGATE2 or a MACROGATE (see below). Variables I20 – I23 specify the addresses of the four MACRO ICs that are automatically configured with I-variables. The following table summarizes this configuration:

MACRO IC #

I Variables

Usual Base Address

Usual Type

0

I6800 – I6849

$078400

DSPGATE2

1

I6850 – I6899

$079400

MACROGATE

2

I6900 – I6949

$07A400

MACROGATE

3

I6950 – I6999

$07B400

MACROGATE

DSPGATE2 MACRO IC

The DSPGATE2 IC provides both MACRO-ring functions and general-purpose I/O functions. The I/O functions are described in the next section. For the MACRO ring, the DSPGATE2 provides a 16-node bidirectional interface. Of these nodes, eight can be used as servo nodes, each of which can transfer all of the command and feedback data required for the servo and commutation of a motor. Six of the nodes can be used for general-purpose I/O, each node supporting 72 bits of hard real-time I/O in each direction. Two of the nodes are for non-real-time communications, including broadcast mode in which a master controller can talk to all of its slave devices simultaneously.

Turbo PMAC2 Ultralite controllers come standard with a single DSPGATE2 IC, for a 16-node MACRO interface. The UMAC Acc-5E also comes standard with a single DSPGATE2 IC.

MACROGATE MACRO IC

The MACROGATE IC provides the same 16-node MACRO-ring interface as does the DSPGATE2 IC, but it does not have the I/O capability of a DSPGATE2. Subsequent optional MACRO ICs (Options 1U1, 1U2, and 1U3) on a Turbo PMAC2 Ultralite are MACROGATE ICs.

I/O ICs

The Turbo PMAC CPU accesses general-purpose digital I/O through a variety of I/O interface ICs. On Turbo PMAC boards, these are modern equivalents of the classic 8255 IC design originally made by Intel. These ICs are addressed by a Turbo PMAC CPU at Y:$078800 – Y:$078803.

On Turbo PMAC2 boards, and UMAC I/O boards, these are Delta Tau-designed I/O ASICs, as described below.

DSPGATE2 I/O IC

The DSPGATE2 IC provides both MACRO-ring functions and general-purpose I/O functions. The MACRO functions are described in the previous section. Each board-level Turbo PMAC2 board and the UMAC’s Acc-5E board use the DSPGATE2 to support the non-servo I/O ports. These ports are:

The JTHW multiplexer port

The JIO general-purpose I/O port

The JDISP display port

The JHW handwheel port

The DSPGATE2 IC on a board-level Turbo PMAC2 is addressed at Y:$078400 – Y:$07843F. On a UMAC Acc-5E board with the address DIP-switches in the default configuration, the DSPGATE2 IC is addressed at this same location.

Turbo PMAC Family Overview

11

Turbo PMAC User Manual

IOGATE I/O IC

The IOGATE IC is used to access general-purpose digital I/O on most of the UMAC I/O boards. It provides 48 I/O points, addressed as 6 bytes in consecutive registers. Different boards use different buffers and drivers around the IOGATE to provide the specific I/O features desired. While on the IOGATE itself, each I/O point is individually selectable as to direction, on most of the I/O boards, each point’s direction is fixed by the external circuitry for that point. The IOGATE must be set up at poweron/reset to support the particular direction configuration of the board it is used on.

Potentially, up to 16 boards with the IOGATE or similar ICs can be installed in a UMAC system. The following table shows the possible addresses of these boards:

DIP

Base

DIP

Base

DIP

Base

DIP

Base

Switch

Address

Switch

Address

Switch

Address

Switch

Address

0

$078C00

4

$079C00

8

$07AC00

12

$07BC00

1

$078D00

5

$079D00

9

$07AD00

13

$07BD00

2

$078E00

6

$079E00

10

$07AE00

14

$07BE00

3

$078F00

7

$079F00

11

$07AF00

15

$07BF00

Communications Ports

Turbo PMAC controllers provide multiple communications ports. These ports can be used simultaneously, permitting the use of a second port for debugging while the primary port is used in the actual application, or of a second port for an operator pendant.

Bus Ports

Each configuration of the Turbo PMAC supports a bus port for fast parallel communications. These utilize the host port on the DSP, and optionally dual-ported RAM for communications through shared memory. The buses can be either the traditional backplane buses, or the newer wire buses.

The backplane buses currently supported are:

ISA (or the PC/104 stack version)

PCI

VME

The wire buses currently supported are:

USB (1.1 or 2.0)

Ethernet (TCP/IP or UDP/IP protocols) at 10 Mbps

Serial Ports

Turbo PMACs also support serial-port communications, always with a single serial port, optionally with a second serial port as well.

Main Serial Port

Turbo PMAC controllers always come with a standard serial communications port. In most configurations, this port can be used with either RS-232 signal format, or RS-422 signal format, jumper selectable. Even if there are separate connectors for the two signal formats, this is a single port; only one of the connectors can be used at a time.

Optional Auxiliary Serial Port

If the Option 9T is ordered, a second serial port, always at RS-232 levels, is provided. This port can be used for general communications. It is possible to turn off the command parser for this port by setting variable I43 to 1, so Turbo PMAC does not try to interpret incoming characters as commands, making it possible for the user to parse incoming data as he pleases. This port is required for setup and diagnostics if the IEC-1131 PMAC Ladder programs are used.

12

Turbo PMAC Family Overview

Turbo PMAC User Manual

Key Software Components

In any application, the Turbo PMAC will have software components provided both by Delta Tau and by the user. The Delta Tau software components are known as the firmware (software embedded in the hardware). These are not application-specific. The user software components – primarily motion programs and PLC programs – are application-specific.

Operational Firmware

The operational firmware of the Turbo PMAC serves as both the operating system for the controller and as the PMAC-language interpreter. As an operating system, it provides a hard-real-time multi-tasking environment with extremely fast task switching, providing a very high level of determinism for the highpriority tasks such as servo-loop closure. It also handles the sequencing of operations within motion programs automatically, so this sequencing of move-by-move operations does not have to be handled by the user.

Typically, the operational firmware is updated once or twice a year to add new features and to fix problems. Field upgrades of the firmware are easy to perform. Simply power up the Turbo PMAC with the firmware reload jumper installed, and then launch the PMAC Executive program on the PC. The Executive program will notice automatically that the Turbo PMAC is ready to install new firmware and query for the file to be downloaded. It will download the new firmware automatically from the specified file into the Turbo PMAC.

Bootstrap Firmware

The operation of the bootstrap firmware is invisible to virtually all Turbo PMAC users. Its function is very similar to that of a PC’s BIOS, providing a link between the hardware and the operating system, and permitting the operating system to load. While Delta Tau may upgrade the bootstrap firmware from time to time (and each new hardware configuration of the CPU may require a different variation of the bootstrap firmware), Delta Tau does not support the field upgrade of the bootstrap firmware.

In normal operation, the bootstrap firmware operates invisibly underneath the operational firmware, automatically loading the operational firmware on top of it at each power-up/reset. However, if the Turbo PMAC is powered up or reset with the firmware-reload jumper on, the operational firmware will not be loaded from flash memory, and the host computer can communicate directly with the bootstrap firmware (through the main serial port or a bus that uses the CPU’s host port only). If the operational firmware has not been loaded, Turbo PMAC’s response to the ?, ??, or ??? status query command is BOOTSTRAP

PROM.

Motors, Axes, and Coordinate Systems

Motors, axes, and coordinate systems are software structures in a Turbo PMAC system. While they usually utilize hardware channels to interface to the outside world, it is possible to use them as virtual structures, just for their computational features.

Motors

A motor in Turbo PMAC consists of the software structures necessary for basic moves, commandedposition interpolation, servo-loop closure, commutation, and current-loop closure. Every Turbo PMAC has the capability for executing the algorithms for 32 motors, even if only a few servo channels are provided. These motors are specified by number (1 through 32), and their attributes are specified in terms of raw “counts”, milliseconds, and related units.

A Turbo PMAC motor accesses hardware-channel functions for its various input and output needs through setup I-variables that contain the address of the register to be used. This mapping functionality provides great power and flexibility in a simple manner.

Turbo PMAC Family Overview

13

Turbo PMAC User Manual

Axes

Generally, motions in a Turbo PMAC system are commanded through the use of axes. An axis in Turbo PMAC consists of the software structures for programmed moves. Axes are specified by letter (A, B, C, U, V, W, X, Y, and Z), and their attributes are specified in terms of user-specified units (e.g. millimeters, inches, degrees, seconds, minutes).

Axes are assigned to motors through axis definition statements or kinematic subroutines. While there is usually a one-to-one mapping between axes and motors (e.g. Motor 1 assigned to the X-axis and Motor 2 assigned to the Y-axis), this does not have to be the case. Multiple motors can be assigned to a single axis, as in a gantry configuration; there can be no motors assigned to an axis, creating a virtual axis; or there can be a complex relationship of multiple motors to multiple axes in a kinematic algorithm.

An axis belongs to a coordinate system (see below). Up to 9 axes may be used in a single coordinate system, one of each letter name.

Coordinate Systems

The coordinate system is Turbo PMAC’s structure for achieving tightly coordinated motion of multiple motors. Turbo PMAC supports up to 16 separate coordinate systems. A motor is assigned to an axis in a particular coordinate system. Multiple axes in the same coordinate system that are commanded on the same line of a motion program are automatically coordinated.

To make the motion of more than one motor coordinated, assign them to axes in the same coordinate system. To have independent motion of motors (i.e. starting stopping, and changing speeds at arbitrary times with respect to each other, assign the motors to axes in separate coordinate systems.

User Programs

Turbo PMAC users can install several types of programs into the controller, each type with a specific purpose.

Motion Programs

Turbo PMAC motion programs provide an easy way to specify sequences of coordinated motion and the execution of any calculations that are synchronous with the programmed motions. The motion program language combines features of the RS-274 standard G-code machine-tool programming language, which is good for specifying sequences of coordinated motion, and BASIC, which is good for the associated math and logic.

PLC Programs

PLC programs in Turbo PMAC are intended for actions and calculations that are asynchronous to the programmed motion. PLC programs repeatedly scan in the fashion of regular programmable logic controllers. They can be used for I/O control as a dedicated PLC would be, but because they have direct access to all registers in Turbo PMAC, they have many other uses as well.

Turbo PMAC programs can either be written in a BASIC-like text language, or in IEC-1131 ladder logic or sequential function charts (extended memory option and special PC software required). Text PLC programs can be run either as interpreted code, or as compiled code for greater efficiency. See the User Manual section on PLC programs for more details.

User-Written Servo and Phase Algorithms

Virtually all users will be able to utilize Turbo PMAC’s built-in servo-loop-closure and phasecommutation algorithms. However, it is possible for the user to install custom algorithms for either or both of these to accomplish tasks not possible with the standard algorithms. Some people will use these algorithms simply for high-speed, high-priority I/O or calculations by activating them on an otherwise unused motor.

User-written servo algorithms can be written either in the high-level PMAC language (for ease of use) or in DSP56300 assembly language (for maximum efficiency). User-written phase algorithms must be written in assembly language. See the User Manual sections on commutation and servo loops for details.

14

Turbo PMAC Family Overview

Loading...
+ 410 hidden pages