Theory and Design of CNC Systems
Suk-Hwan Suh , Seong-Kyoon Kang , Dae-Hyuk Chung , Ian Stroud
Contents
Abbreviations xvii
Part I Principles and NCK Design of CNC Systems
1 Introduction to NC Systems . 3
1.1 Introduction . 3
1.2 The History of NC and NC Machine Tools . 6
1.3 CNC Driving System Components 8
1.3.1 Driving Motor and Sensor . 9
1.3.2 Linear Movement Guide 15
1.3.3 Coupling . 16
1.4 CNC Control Loop . 17
1.4.1 Semi-closed Loop 18
1.4.2 Closed Loop 18
1.4.3 Hybrid Loop 19
1.4.4 Open Loop . 19
1.5 The Components of the CNC system 19
1.5.1 MMI Function . 22
1.5.2 NCK Function . 23
1.5.3 PLC Function . 25
1.5.4 Real-time Control System . 28
1.6 The Progress Direction of the CNC System . 29
1.7 Summary . 31
2 Interpreter 33
2.1 Introduction . 33
2.2 Part Program 34
2.2.1 Program Structure . 35
2.2.2 Main Programs and Subprograms . 39
2.3 Main CNC System Functions 40
2.3.1 Coordinate Systems 40
xixii Contents
2.3.2 Interpolation Functions . 42
2.3.3 Feed Function . 48
2.3.4 Tools and Tool Functions 50
2.3.5 Spindle Functions 53
2.3.6 Fixed-cycle Function . 53
2.3.7 Skip Function . 56
2.3.8 Program Verification . 56
2.3.9 Advanced Functions 57
2.4 G&M-code Interpreter 62
2.5 Summary . 66
3 Interpolator . 69
3.1 Introduction . 69
3.2 Hardware Interpolator . 70
3.2.1 Hardware Interpolation DDA 71
3.2.2 DDA Interpolation . 73
3.3 Software Interpolator . 75
3.3.1 Software Interpolation Methods 78
3.3.2 Sampled-Data Interpolation . 86
3.4 Fine Interpolation 96
3.5 NURBS Interpolation . 98
3.5.1 NURBS Equation Form . 99
3.5.2 NURBS Geometric Characteristics . 100
3.5.3 NURBS Interpolation Algorithm . 101
3.6 Summary . 106
4 Acceleration and Deceleration . 107
4.1 Introduction . 107
4.2 Acc/Dec Control After Interpolation . 108
4.2.1 Acc/Dec Control by Digital Filter 109
4.2.2 Acc/Dec Control by Digital Circuit . 112
4.2.3 Acc/Dec Control Machining Errors . 121
4.2.4 Block Overlap in ADCAI . 126
4.3 Acc/Dec Control Before Interpolation . 128
4.3.1 Speed-profile Generation 129
4.3.2 Block Overlap Control 132
4.3.3 Corner Speed of Two Blocks Connected by an Acute Angle 142
4.3.4 Corner Speed Considering Speed Difference of Each Axis 144
4.4 Look Ahead . 145
4.4.1 Look-Ahead Algorithm . 147
4.4.2 Simulation Results . 152
4.5 Summary . 155Contents xiii
5 PID Control System 157
5.1 Introduction . 157
5.2 The Servo Controller 158
5.3 Servo Control for Positioning 160
5.4 Position Control 161
5.4.1 PID Controller 162
5.4.2 PID Gain Tuning 166
5.4.3 Feedforward Control . 171
5.5 Analysis of the Following Error . 179
5.5.1 The Following Error of the Feedback Controller 179
5.5.2 The Following Error of the Feedforward Controller 182
5.5.3 Comparison of Following Errors . 183
5.6 Summary . 185
6 Numerical Control Kernel . 187
6.1 Introduction . 187
6.2 Architecture of ACDAI-type NCK 187
6.2.1 Implementation of the Interpolator 188
6.2.2 Implementation of the Rough Interpolator 193
6.2.3 Implementation of an Acc/Dec Controller 199
6.2.4 Implementation of Fine Interpolator . 203
6.2.5 Implementation of the Position Controller 208
6.3 Architecture of an ADCBI-type NCK 211
6.3.1 Implementation of the Look-Ahead Module 213
6.3.2 Implementation of an Acc/Dec Controller 215
6.3.3 Implementation of the Rough Interpolator 222
6.3.4 The Mapping Module 225
6.4 Summary . 226
Part II Open-architectural Soft CNC Systems
7 Programmable Logic Control 229
7.1 Introduction . 229
7.2 PLC Elements . 230
7.3 PLC Programming . 234
7.4 Machine Tool PLC Programming . 235
7.5 PLC System Functions 240
7.5.1 Software Model and Communication Model 242
7.5.2 Programming Model . 244
7.5.3 User Programming Languages . 245
7.6 Soft PLC 247
7.7 PLC Configuration Elements . 248
7.7.1 PLC System Functions 249
7.7.2 Executor Programming Sequence . 253
7.7.3 Executor Implementation Example . 254xiv Contents
7.8 Summary . 268
8 Man–Machine Interface 271
8.1 MMI Function . 271
8.1.1 Area for Status Display . 271
8.1.2 Area for Data Input 273
8.1.3 Area for MPG Handling 273
8.1.4 Area for Machine Operation . 273
8.2 Structure of the MMI System . 275
8.3 CNC Programming . 278
8.3.1 The Sequence of Part Programming . 278
8.3.2 Manual Part Programming 279
8.3.3 Automatic Part Programming 280
8.4 Mazatrol Conversational System 289
8.4.1 Turning Conversational System 289
8.4.2 Programming Procedure 292
8.5 Conversational Programming System Design . 294
8.5.1 Main Sequence for Design 294
8.5.2 Key Design Factors 296
8.6 Development of the Machining Cycle 305
8.6.1 Turning Fixed Cycle 305
8.6.2 Turning Cycle for Arbitrary Shape 306
8.6.3 Corner Machining Cycle 310
8.6.4 Drilling Sequence 312
8.7 Summary . 314
9 CNC Architecture Design . 315
9.1 Introduction . 315
9.2 Operating Systems . 317
9.3 Real-time Programming . 319
9.4 Structure of a Real-time OS 321
9.5 Process Management . 323
9.5.1 Process Creation and Termination 324
9.5.2 Process State Transition . 324
9.5.3 Process Scheduling . 325
9.6 Process Synchronization . 330
9.6.1 Semaphores . 330
9.6.2 Using Semaphores . 331
9.6.3 Events and Signals . 331
9.7 Resources . 334
9.7.1 System Resources 334
9.7.2 Mutual Exclusion 335
9.7.3 Deadlock . 336
9.8 Inter-process Communication 337
9.8.1 Shared Memory . 337Contents xv
9.8.2 Message System . 338
9.9 Key Performance Indices 340
9.9.1 Task Switching Time . 340
9.9.2 Context Switching Time 341
9.9.3 Semaphore Shuffling Time 341
9.9.4 Task Dispatch Latency Time . 341
9.10 Hardware and Operating Systems . 344
9.10.1 Architecture of Multi-processing Hardware 344
9.10.2 Operating System Configuration 347
9.10.3 CNC System Architecture . 348
9.11 Summary . 350
10 Design of PC-NC and Open CNC 353
10.1 Introduction . 353
10.2 Design of Software Architecture 356
10.2.1 CNC System Modeling . 356
10.3 Design of Soft-NC System . 359
10.3.1 Design of Task Module . 359
10.3.2 Design of the System Kernel . 361
10.3.3 PLC Program Scanning and Scheduling . 362
10.3.4 Task Synchronization Mechanism 365
10.3.5 Inter-Task Communication 369
10.4 Motion Control System Programming Example . 376
10.4.1 Design of System Architecture . 377
10.4.2 Creating Tasks 378
10.4.3 Task Synchronization . 378
10.4.4 Task Priority 381
10.4.5 Inter-Task Communication 381
10.4.6 Create Event Service . 384
10.5 Open-CNC Systems 387
10.5.1 Closed-type CNC Systems 387
10.5.2 Open CNC Systems 389
10.6 Summary . 393
11 STEP-NC System 395
11.1 Introduction . 395
11.2 Background of STEP-NC 397
11.2.1 Problems with G&M Codes . 397
11.2.2 Historical Background 398
11.3 STEP-NC: A New CNC Interface Based on STEP . 399
11.3.1 Contents 399
11.3.3 Objectives and Impacts . 401
11.4 STEP-NC Data Model 402
11.4.1 Part 1: Overview and Fundamental Principles . 403
11.3.2 Relationship Between STEP and STEP-NC . 399xvi Contents
11.4.2 Part 10: General Process Data 405
11.4.3 Part 11: Process Data for Milling . 407
11.4.4 Part 12: Process Data for Turning . 407
11.4.5 Tools for Milling and Turning 408
11.5 Part Programming 410
11.5.1 Part Programming for the Milling Operation . 411
11.5.2 Part Programming for the Turning Operation . 414
11.6 STEP-CNC System . 415
11.6.1 Types of STEP-CNC . 417
11.6.2 Intelligent STEP-CNC Systems 418
11.7 Worldwide Research and Development 422
11.7.1 WZL-Aachen University (Germany) 422
11.7.2 ISW-University of Stuttgart (Germany) 424
11.7.3 POSTECH (South Korea) . 425
11.7.4 Ecole Polytechnic F´ ed´ erale of Lausanne (Switzerland) . 426
11.7.5 University of Bath (UK) 427
11.7.6 NIST (USA) 427
11.8 Future Prospects . 428
A Turning and Milling G-code System 431
A.1 Turning . 431
A.2 Milling . 434
A.3 Classification of G-code Groups 437
Bibliography . 439
Index . 447
Abbreviations
AAM – Application Activity Model
AC – Alternating Current
Acc/Dec – Acceleration and Deceleration
ACS – Autonomous Control System
ADCAI – Acc/Dec Control After Interpolation
ADCBI – Acc/Dec Control Before Interpolation
AGV – Autonomous Guided Vehicle
AIM – Application Interpreted Model
AP – Application Protocol
API – Application Programming Interface
APT – Automatically Programmed Tool
ARM – Application Reference Model
ASCII – American Standard Code for Information Interchange
BCD – Binary Coded Decimal
BLU – Basic Length Unit
CAD – Computer-Aided Design
CAI – Computer-Aided Inspection
CAM – Computer-Aided Manufacturing
CAPP – Computer-Aided Process Planning
CAPS – Conversational Automatic Programming System
CCW – Counter Clock Wise
CD – Committee Draft
CES – Code Editing System
CGS – Code Generating System
CMM – Coordinate Measurement Machine
CNC – Computerized Numerical Control
CORBA – Common Object Request Broker Architecture
CPU – Central Processing Unit
xviixviii Abbreviations
CW – Clock Wise
D – Derivative, as in Derivative Control
D/A – Digital to Analog
DA-BA-SA – Design-Anywhere, Build-Anywhere,
Support-Anywhere
DB – DataBase
DC – Direct Current
DDA – Digital Differential Analyzer
DNC – Direct Numerical Control
DPM – Dual Port Memory
DPR – Dual Port RAM
DRV – Drives
DRV – DRiVe
DSP – Digital Signal Processing
EDM – Electrical Discharge Machining
EH – chord Height Error
EIA – Electronic Industries Association
EISA – Extended Industry Standard Architecture
EOB – End Of Block
ER – Radial Error
FA – Flexible Automation
FBD – Function Block Diagram
FDIS – Final Draft International Standard
FIFO – First In, First Out
FIR – Finite Impulse Response
FMS – Flexible Manufacturing System
FPLC – Fast PLC
F/V – Frequency to Voltage
GPMC – General Purpose Motion Control
GUI – Graphical User Interface
HAL – Hardware Abstract Layer
HMI – Human Machine Interface
H/W – Hardware
I – Integral, as in Integral Control
ICS – Information Contents and Semantics
IEC – International Electrotechnical Commission
IKF – Inverse Compensation Filter
IL – Instruction ListAbbreviations xix
IMS – Intelligent Manufacturing Systems
IO – Interrupt Overhead
IPC – Inter Process Communication
IPO – InterPOlation
IPR – InterPReter
IS – International Standard
ISA – Industry Standard Architecture
ISO – International Organization for Standardization
ISR – Interrupt Service Routine
LD – Ladder Diagram
LED – Light Emitting Diode
LM – Linear Movement
LSI – Large Scale Integrated Circuit
MDI – Multiple Document Interface
MES – Manufacturing Execution System
MMC – Man Machine Control
MMI – Man Machine Interface
MPG – Manual Pulse Generator
MRR – Material Removal Rate
MTB – Machine Tool Builder
NC – Numerical Control
NCK – Numerical Control Kernel
NPLC – Normal PLC
NURBS – Non Uniform Rational B-Spline
NWIP – New Work Item Proposal
OAC – Open Architecture Controller
OMM – On Machine Measurement
OS – Operating System
OSI – Open Standard Interface
OT – Over Travel
P – Proportional, as in Proportional Control
PC – Personal Computer
PCI – Peripheral Component Interconnect
PID – Proportional Integral Derivative
PLC – Programmable Logic Control
PMSMs – Permanent Magnet Synchronous Motors
POS – POSition
RAM – Random Access Memoryxx Abbreviations
RM – Rate Monotonic
RMS – Rate Monotonic Scheduling
ROM – Read Only Memory
RPM – Revolutions Per Minute
RS – Recommended Standard
RTOS – Real Time Operating System
RTX – RealTime eXtension
SC – Sub Committee
SERCOS – SErial Realtime COmmunication System
SFC – Sequential Function Chart
SFP – Shop Floor Programming
SISO – Single Input Single Output
SOP – Shop floor Oriented Programming
ST – Structured Text
STEP – STandard for the Exchange of Product model data
S/W – Software
TC – Technical Committee
TPG – Tool Path Generation
VME – Virtual Machine Environment
WD – Working Draft
WOP – Workshop Oriented Programming
XML – eXtensible Markup Language
YACC – Yet Another Compiler Compiler
ZPETC – Zero Phase Error Tracking
Index
AAM, 404
absolute-type encoder, 13
AC servo motor – synchronous, 11
acc/dec control, 107
acc/dec control – algorithm, 109
acc/dec control – block overlap, 126–128
acc/dec control – digital circuit, 112
acc/dec control – digital filter, 109
acc/dec control – exponential, 117–120
acc/dec control – filter, 109
acc/dec control – functions, 200, 216
acc/dec control – implementation, 199, 202,
215
acc/dec control – input/output, 199, 215
acc/dec control – linear, 112–114
acc/dec control – machining error, 121–126
acc/dec control – S-shape, 114–116
acceleration, 107–114
acceleration – deceleration controller, 24
adaptive control module, 157
ADCAI, 107–128, 187
ADCBI, 107, 108, 128–155, 187, 211
ADCBI-type NCK – architecture, 211
address, 237
aging, 328
AGV, 4
AIM, 404
and – AND, 260
and not – ANDN, 261
and stack – ANDS, 266
application layer, 275
approximation errors, 77
APT, 281
architecture – system hardware, 344
area for data input, 273
area for machine operation, 273
area for MPG handling, 273
area for status display, 271
ARM, 400, 404
automatic gain tuning, 168
automatic programming, 278, 280
ball screw, 15
ball screw mechanisms, 4, 6
basic instruction, 250, 256
Bath–United Kingdom, 427
binary semaphore, 330
block classification – normal-normal, 133–136
block classification – normal-short, 138, 139
block classification – short-normal, 136–138
block classification – short-short, 140, 141
block overlap, 126, 132
block overlap control, 132
block record buffer, 359, 374
block record memory, 65, 67
CAD, 4
CAI, 4, 6
CAM, 4
CAN Bus, 22
cancel mode, 50
CAPP, 4, 278
cascade loop structure, 173
cascade structure, 159
causal FIR, 176
causal FIR filter, 177
causal/noncausal FIR, 176
chord height error, 90
circular slot cycle, 55
classification of continuous blocks, 132–141
clock manager, 323
closed loop, 18, 19
closed-type CNC system, 387
CMM, 4, 6
447448 Index
CNC, 7, 8, 21, 22
CNC architecture design, 315
CNC control loop, 17
CNC system – architecture, 348
CNC system – closed, 390
CNC system – communication data
classification, 370
CNC system – components, 19
CNC system – modeling, 356
CNC system – progress, 29
code interpreter, 33
common bus type, 344
common element, 242, 245
communication – inter-process, 323
communication model, 242
compatibility, 391
compensation function, 50
compiling method, 233
complex fixed cycle, 305
computer aided programming technologies,
416
configuration model, 242
connectivity, 241
constant surface speed control function, 53
constructed geometry method, 300
context switching, 322
context switching time, 341
continuous mode, 126
contour control, 69, 160, 161
contour error, 160
control – contour, 160, 161
control – D, 164
control – derivative, 164
control – feedback, 179
control – feedforward, 171, 173–178, 182
control – PI, 164
control – point-to-point, 160, 161
control – position, 161
control – tracking, 160, 161
control system – PID, 157
controller – derivative, 164
controller – feedback, 161
controller – P, 161
controller – PI, 161
controller – PID, 162
conversational programming, 279, 283
convolution, 109
coordinate system, 40
CORBA, 416
corner machining cycle, 310
corner speed, 142, 144, 148
corner speed – acute angle, 142, 144
corner speed – speed difference, 144, 145
counter, 235
counting semaphore, 330
coupling, 16
CPU unit, 231, 232
create event service, 384
critical section, 334
current control loop, 159
curvature, 103
cutting, 3
cutting angle, 307
cutting condition database, 301
cutting edge angle, 307
cutting feature, 290
cutting machines, 3
cyclic task – high priority, 358
cyclic task – low priority, 358
cylindrical interpolation, 46
D control, 164
DA-BA-SA, 397
DC servo motor, 10
DDA, 70–73
DDA – algorithm, 77, 78
DDA – hardware, 75
DDA – integrator, 72, 76
DDA – interpolation, 73, 79
deadlock, 336
deceleration, 107–114
derivative control, 164
derivative controller, 164
derivative gain, 164
design of PC-NC and open CNC, 353
design of system kernel, 361
development of the machining cycle, 305
device manager, 323
digital differential analyzer, 70–73, 75, 76, 78,
79
digital filter, 109, 110
direct access method, 369
direct search, 82
direct search algorithm, 77, 78, 85
direct search interpolation, 84, 85
distributed system, 317
DPM, 359
drawing instruments, 4
drilling cycle, 297
drilling sequence, 312
driving motor and sensor, 9
driving system components, 8
DRV, 33, 34
dry run, 57
dual port memory, 359
dwell, 49
dwell function, 49
dynamic priority scheduling, 328Index 449
e-manufacturing, 397
EDM machines, 3
embedded motion controller, 353
embroidery machines, 4
encoder, 12
EPFL–Switzerland, 426
error – contour, 160
error – position, 160
error – trajectory, 160
error compensation module, 157
error handler, 63
ethernet, 354
Euler algorithm, 92, 93
Euler algorithm – improved, 92, 93
Euler method, 77, 96
event, 331
event handler, 377
event service, 385
event-driven scheduling, 328
exact stop, 49
exact stop mode, 126, 127
EXAPT, 281
executor, 62
executor basic commands, 256
executor implementation example, 254
executor programming sequence, 253
exponential-type Acc/Dec control, 117
exponential-type acc/dec control, 117
exponential-type acc/dec pulse profile, 111
EXPRESS schema, 404
extensibility, 391
FA, 4
face milling pattern, 56
FANUC 0 series, 350
FANUC 150i, 350
FAPT, 281
feature mode, 289
feed function, 48
feedback control, 159, 179
feedback control following error, 179
feedback controller, 161
feedforward, 59
feedforward control, 171, 173–178, 182
feedforward control following error, 182
feedrate, 69, 86
fine boring cycle, 55
fine interpolation, 96
fine interpolator, 203
fine interpolator – functions, 204
fine interpolator – implementation, 203
fine interpolator – input/output, 204
fine interpolator – verification, 205
first-come, first-served scheduling, 327
fixed cycle function, 53
fixed sample time scheduling, 328
fixed-priority scheduling, 328
flexibility, 391
flexible coupling, 16
FMS, 4
following error, 179, 183
following error analysis, 179
full open CNC, 393
function block diagram – FBD, 246, 247
functional instruction, 250
functions – ACCDEC Expo, 202
functions – ACCDEC Expo B0, 202
functions – ACCDEC Expo ES, 202
functions – ACCDEC Linear, 201
functions – ACCDEC Linear B0, 201
functions – ACCDEC Linear ES, 201
functions – ACCDEC Scurve, 201
functions – ACCDEC Scurve B0, 202
functions – ACCDEC Scurve ES, 201
functions – ARoughInterpolation, 198
functions – CircleNormalBlock, 220
functions – CircleSmallBlock, 220
functions – CircularIPO Pre, 223
functions – CWCCWInterpolation, 199
functions – DetermineIBlockVelocity, 214
functions – DetermineVelocityBetweenCC,
215
functions – DetermineVelocityBetweenCL, 215
functions – DetermineVelocityBetweenLC, 214
functions – DetermineVelocityBetweenLL, 214
functions – DetermineVelocityProfile, 216
functions – ecal, 202
functions – FIPO, 204
functions – FIPO Linear, 204
functions – FIPO Moving, 205
functions – lcal, 202
functions – LinearInterpolation, 199
functions – LinearIPO Pre, 223
functions – LineNormalBlock, 217
functions – LineSmallBlock, 218
functions – LookAhead, 214
functions – Mapping, 226
functions – POS, 209
functions – RoughInterpolation, 223
functions – scal, 202
G-code, 37, 397, 398, 431, 434, 437
G00, 43, 47
G01, 44, 47
G02, 44, 47
G03, 44, 47
G04, 49
G09, 48, 49450 Index
G15, 41
G31, 56
G33, 50
G40, 50
G41, 50
G42, 50
G43, 51
G44, 51
G49, 51
G50.1, 42
G51, 41
G51.1, 42
G54, 41
G55, 41
G56, 41
G57, 41
G58, 41
G59, 41
G61, 48, 126
G62, 49
G63, 49
G64, 48, 49, 126
G68, 42
G70, 54
G71, 54
G72, 54
G73, 54
G74, 54
G75, 54
G76, 54
G80, 54
G81, 54
G82, 54
G83, 54
G84, 54
G84.2, 54
G84.3, 54
G85, 54
G86, 54
G87, 54
G88, 54
G89, 54
G90, 41, 43, 45, 54
G91, 41, 43, 45
G92, 54
G94, 54
G96, 53
G97, 53
G98, 54
G99, 54
G&M code, 397
G&M code – difficult traceability, 398
G&M code – information loss, 397
G&M code – lack of interoperability, 398
G&M code – non-compatibility, 398
G&M-code interpreter, 62
gain – derivative, 164
gain – proportional, 163
gain – tuning, 166–168
gain – tuning automatic, 168, 169
gain – tuning Ziegler–Nichols, 167
Giddings and Lewis, 8
GPMC, 29
graphic representation, 234
hard real-time system, 319
hardware interpolator, 70
hardwired NC, 7
helical interpolation, 45
hierarchical structure, 273
hybrid loop, 19
I control, 162
ICS, 396
IEC1131, 241–245, 247
IEC1131-3, 27, 241–243, 247
IEC1131-3 PLC languages, 246
IEC1131-3 software model, 243
IKF, 175
improved Euler algorithm, 92, 93
improved Euler method, 96
improved Tustin algorithm, 95, 96, 195
IMS, 399
incremental-type encoder, 12
induction-type AC servo motor, 10
induction-type servo motor, 11
input unit, 230, 231
inspection, 4
instruction list – IL, 247
instruction list –IL, 246
intelligent and autonomous technologies, 415
intelligent STEP-CNC system, 418
inter-module communication, 371
inter-process communication, 323, 337, 338
inter-task communication, 381
InterBus-S, 22
interchangeability, 391
interference space angle, 307
interlock function, 237
internal block memory, 64
interoperability, 391
interpolation – sampled data, 77
interpolation errors, 77
interpolation functions, 42
interpolator, 24, 69–79, 81–106, 188
interpolator – hardware, 70–75
interpolator – implementation, 188
interpolator – input/output, 196Index 451
interpolator – software, 75–79, 81–90, 92–106
interpretative method, 232
interpreter, 24, 33
interpreter – execution, 191
interpreter – input/output, 192
interpreter – structure, 188
introduction to NC systems, 3
inverse compensation filter, 175
IPC, 323, 337, 338
ISO 10303, 399
ISO 14649, 396, 399
ISO 6983, 397
ISR, 323
ISW–Stuttgart, 424
Jacquard, 8
jig and fixture, 4
Kearney and Tracker, 8
kernel layer, 275, 276
key performance indices, 340
ladder diagram – LD, 234, 235, 246, 247, 253
language-type programming, 279, 280
latency time, 378
linear interpolation, 73
linear movement guide, 15
linear type acc/dec control, 112
linear type acc/dec pulse profile, 111
linear-circular overlap, 141, 142
LINUX, 356
LM guide, 15
loader, 27
local coordinate system, 40
look ahead, 57, 145–155
look ahead algorithm, 147
look ahead function, 49
look ahead module, 213
look-ahead module – functions, 214
look-ahead module – implementation, 213
look-ahead module – input/output, 213
loop cycle time, 361
loop driver mechanism, 366
loosely coupled type, 345
LSI, 7
M address, 37
M-code, 238, 397, 398
M02, 50
M19, 54
M30, 50, 53
machine coordinate system, 40
machine lock, 57
machine tool, 3
machine tool PLC programming, 235
machines – cutting, 3, 4
machines – EDM, 3
machines – embroidery, 4
machines – milling, 3
machines – mother, 3
machines – non-cutting, 3
machines – press, 3
machines – turning, 3
machines – woodworking, 4
machining center sequence flow, 240
machining cycle for arbitrary shape, 306
machining error, 121–124, 126
machining feature, 405, 406
machining geometry definition, 299
machining operation, 405, 406
machining operation cycle, 296
machining strategy, 290
machining strategy data, 301–303, 305
machining tool, 405
macro executor, 63
main program, 39
manual programming, 278
mapping – functions, 226
mapping module, 225
mapping module – input/output, 225
material removal rate, 420
maximum allowable acceleration, 144
maximum allowable error, 101
Mazatrol conversational system, 289
memory manager, 322
message system, 338
method for specifying part shape, 295
milling cycle, 298
milling machines, 3
MMC, 33, 34
MMI, 21, 22, 28, 29, 271–286, 288–311, 313
MMI – monitoring and alarm functions, 23
MMI – operation functions, 22
MMI – parameter setting functions, 23
MMI – program editing functions, 23
MMI – service and utility functions, 23
MMI function, 22, 271
MMI unit, 22
mnemonic, 234, 253
modal code, 37
modularity, 391
module – function, 360, 403
monotonic scheduling, 361
mother machines, 3
moving average method, 97
MPG, 273
MTB, 387
multi-processing hardware, 344452 Index
multi-processing system, 317
multi-programming system, 317
mutual exclusion, 335
NC, 7
NC machine tools – history, 7
NC machines, 3, 4
NC systems, 4
NCK, 21, 22, 24, 26–29, 33, 34, 109, 159,
187–226
NCK function, 23
NCK unit, 24
NIST–USA, 427
non-causal FIR, 176, 177
non-causal FIR filter, 177
non-cutting machines, 3
non-cyclic task, 357
non-pre-emption scheduler, 327
normal block, 130
numerical control kernel, 21, 22, 24, 26–29,
109, 159, 187–226
NURBS, 59–61, 99–101, 103, 105
NURBS – interpolation, 59, 98, 99, 102
NURBS – interpolation algorithm, 101
NURBS – surface machining, 61
OAC, 30
offline tasks, 4
offset cancel mode, 51
offset mode, 51
on-machine measurement, 420
online tasks, 4
open CNC system, 387, 389
open environment common interface controller,
392
open environment controller, 392
open loop, 19
open MMI, 392
open modular architecture controller, 392
open system interface, 375
operating system, 317
operating system configuration, 347
operation sequence control, 305
or – OR, 262
or not – ORN, 263
or stack – ORS, 267
oriented geometry method, 300
OS layer, 275, 277
output unit, 230
overlap between a linear and a circular profile,
141
P control, 162, 163
P controller, 161
painting, 3
parallel programming, 320
parser, 62
Parsons, 8
part program, 34–37, 39–42
part program for the milling operation, 411
part programming, 410
part programming for the turning operation,
414
partially open CNC, 392
path generator, 63
PC NC, 353
PC-based MMI, 275
performance – key indices, 340
PI control, 164
PI controller, 161
PID, 157, 162–166
PID controller, 162, 164–166
PID controller for the discrete time domain,
164
PLC, 21, 22, 24, 25, 27–29, 229–250, 253–269,
284
PLC – Executer, 27
PLC – loader, 27
PLC – program tasks, 364
PLC –programmer, 27
PLC compiler, 233
PLC configuration elements, 248
PLC element, 230
PLC function, 25
PLC program executor, 248, 362
PLC program interpolator, 233
PLC programmer, 250
PLC programming, 234, 238
PLC programming signal definition, 239
PLC system, 249
PLC system functions, 240, 249
PLC unit, 27
PMSM, 8
point-to-point control, 69, 160, 161
portability, 241, 391
position control, 160, 161
position control loop, 159
position controller, 24, 157, 208
position controller – functions, 209
position controller – implementation, 208
position controller – input/output, 209
position controller – verification, 209
position error, 160
post-line tasks, 4
post-processing, 398
Postech–Korea, 425
Pratt and Whitney, 8
pre-emption scheduler, 326Index 453
pre-emptive multi-tasking, 361
press machines, 3
priority, 381
priority scheduling, 327, 365
process coordinator, 322
process creation, 324
process management, 323
process manager, 322
process planning, 4, 278
process scheduling, 325
process state transition, 324
process synchronization, 330
process termination, 324
Profi-Bus, 22
PROFIBUS, 375
profile machining cycle, 297
program executor, 250
program structure, 35
program verification, 56
programmable logic control, 229–250,
253–269, 284
programming – automatic, 278, 280
programming – conversational, 279
programming – language-type, 279, 280
programming – manual, 278
programming – parallel, 320
programming – real-time, 320
programming – sequential, 320
programming language, 232, 234, 242, 244,
245
programming method comparison, 284
programming methods, 299, 300
programming model, 244
programming procedure, 292
proportional control, 162, 163
proportional gain, 163
punch press, 9
radial error, 90
rate monotonic, 328
read – RD, 256
read not – RDN, 257
read not stack – RDNS, 265
read stack – RDS, 264
real time extension, 356, 378
real-time control system, 28
real-time OS, 315, 316, 318, 320, 322, 325,
326, 329, 332, 333, 335, 339, 341–346,
348–351
real-time OS – structure, 321
real-time programming, 320
reference pulse interpolator, 76, 86
reference pulse method, 78
reference word interpolation, 90
reference word interpolator, 76, 87, 88
reference word interpolator for circles, 88
reference word interpolator for lines, 87
relay gain tuning, 168
relay method, 168
remaining pulse, 195
request/answer method, 369
resolver, 14
resource protection, 334
resources, 334
resources – system, 334
reusability, 391
ring buffer, 188, 338, 377
ring menu structure, 273
robots, 3
rough input, 196
rough interpolator, 193, 222
rough interpolator – circular interpolation, 195
rough interpolator – functions, 223
rough interpolator – implementation, 193, 222
rough interpolator – input/output, 222
rough interpolator – linear interpolation, 193
rough output, 198
RS 274, 397
RT LINUX, 356
RTOS, 315, 316, 318, 320, 322, 325, 326, 329,
332, 333, 335, 339, 341–346, 348–351
RTOS kernel, 321
S-code, 53, 238
S-shape type acc/dec control, 114
S-shape type acc/dec pulse profile, 111
Sabin, 427
sampled data interpolation, 77, 86, 96
scalability, 391
scaling function, 41
scheduling, 327, 328
scheduling – event-driven, 328
scheduling – first-come, first-served, 327
scheduling – fixed sample time, 328
scheduling – priority, 327
scheduling – time-slice, 327
self-waking thread, 369
semaphore, 330, 365
semaphore shuffling time, 341
semi-closed loop, 18
sequence of part programming, 278
sequential programming, 320
SERCOS, 22, 389
servo, 8, 10
servo controller, 158, 159
servo driving mechanism, 8
servo motor, 8, 10
SFC, 241, 245454 Index
SFP, 6, 421
shared memory, 337, 376, 383
shop floor programming, 415, 421
shopfloor programming, 6
short block, 130
Siemens 840C, 350
Siemens 840D, 350
signal, 331
simple fixed cycle, 305
single block, 57
SISO, 162
skip function, 56
soft bus, 30, 416
soft PLC, 247–249
soft real-time system, 319
Soft-NC, 30, 248, 353, 355, 357, 359, 362–364,
366–369, 372–377, 388, 392, 393, 416
software model, 242
softwired NC, 7
SOP, 284, 285
speed control loop, 159
speed feedforward controller, 177
speed profile, 129
speed profile generation, 129–132
speed sensor, 15
speed within block, 151
spindle, 9
spindle function, 53
spindle motor, 9
spindle orientation function, 53
spindle position function, 53
spline interpolation, 47
stack register, 254
stairs approximation, 77, 79, 82, 83
stairs approximation algorithm, 78
stairs approximation interpolator, 79
standard bus type, 344
standard communication protocol, 22
standard geometry method, 300
standardization, 241, 391
start-up mode, 50
statement list representation, 234
static priority scheduling, 328
STEP, 398, 399
STEP compliant CNC, 397
STEP manufacturing, 399
step response method, 167
STEP-CNC, 397, 415, 417
STEP-NC, 395–430
STEP-NC data model, 396
STEP-NC technology, 397
structure of a real-time OS, 321
structure of MMI system, 275
structured text – ST, 246, 247
subprogram, 39, 40
symbolic conversational system, 280
symmetry, 42
synchronous-type servo motor, 10, 11
system call, 321
system hardware architecture, 344
system resources, 334
system response, 361, 365
T-code, 238
tacho generator, 15
tapping machine, 9
task dispatch latency time, 341
task priority, 381
task scheduling, 28
task scheduling – priority, 28
task switching time, 340
task synchronization, 331, 365, 378
Taylor algorithm, 93, 96
Taylor method, 77
threading, 50
time sharing system, 317
time-slice scheduling, 327
timer, 235
timer handler, 377
tool database, 301
tool function, 50
tool length compensation function, 51
tool offset database, 301
tool radius compensation, 50
tool sequence database, 301
torque feedforward controller, 178
tracking control, 160, 161
trajectory error, 160
turning fixed cycle, 305
turning machines, 3
Tustin algorithm, 94–96
Tustin algorithm – improved, 95
Tustin method, 77
type of STEP-CNC, 417
ultimate sensitivity method, 167
United States Air Force, 8
user input, 299
user programming languages, 245
virtual mode, 355
VME bus, 349
Weck, 175
welding, 3
woodworking machines, 4
WOP, 6, 284
workingstep, 405Index 455
workpiece coordinate system, 40
workplan, 405
workshop oriented programming, 6, 284
write – WR, 258
write not – WRN, 259
WZL–Aachen, 422
Yasnac, 234
zero-phase error-tracking control, 174, 175
Ziegler–Nichols method, 166, 167
ZPETC, 174, 175
كلمة سر فك الضغط : books-world.net
The Unzip Password : books-world.net
تعليقات