CNC Programming using Fanuc Custom Macro B

  • ISBN13:


  • ISBN10:


  • Edition: 1st
  • Format: Paperback
  • Copyright: 2010-06-22
  • Publisher: McGraw-Hill Education
  • Purchase Benefits
  • Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $71.00 Save up to $10.65
  • Buy New
    Add to Cart Free Shipping


Supplemental Materials

What is included with this book?

  • The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
  • The eBook copy of this book is not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.


Master CNC macro programmingCNC Programming Using Fanuc Custom Macro Bshows you how to implement powerful, advanced CNC macro programming techniques that result in unparalleled accuracy, repeatability, flexible automation, and enhanced productivity. Step-by-step instructions begin with basic principles and gradually proceed in complexity. Specific descriptions and programming examples follow Fanuc's Custom Macro B language with reference to Fanuc 0i series controls. By the end of the book, you will be able to develop highly efficient programs that exploit the full potential of CNC machines.Coverage includes: Variables and expressions Types of variableslocal, global, macro, and system variables Macro functions, including trigonometric, rounding, logical, and conversion functions Branches and loops Subprograms Macro call Complex motion generation Parametric programming Custom canned cycles Probing Communication with external devices Programmable data entry

Author Biography

S. K. Sinha earned his Ph.D. in mechanical engineering from the Indian Institute of Technology in 1993. He has 18 years of teaching experience in CNC programming and has been working in the CNC area for the past 10 years.

Table of Contents

Prefacep. xi
Acknowledgmentsp. xiii
Introductionp. 1
Part Programming Techniquesp. 2
Conventional Part Programmingp. 2
Conversational Part Programmingp. 3
Part Programming Using CAM Softwarep. 3
Macro Programmingp. 4
Comparison of the Four Methodsp. 4
Certain Applications of Macro Programmingp. 4
Complex Motionsp. 5
Families of Partsp. 5
Custom Canned Cyclesp. 6
"Intelligent" Programsp. 7
Probingp. 7
Machine Status Information/Manipulationp. 8
Communication with External Devicesp. 8
Does My Machine Have Macro Capability?p. 9
Aim of the Present Textp. 11
How to Use This Textp. 11
Variables and Expressionsp. 13
Macro Variablesp. 13
Macro Expressionsp. 13
Assigning a Value to a Variablep. 16
Display of Variablesp. 18
Real versus Integer Valuesp. 19
Undefined Variablesp. 22
Null Variables in Word Addressesp. 22
Null Variables in Arithmetic Operationsp. 23
Null Variables in Conditional Expressionsp. 23
A Simple Use of Macro Programming Featuresp. 24
Retaining Programs in MDI Modep. 24
Types of Variablesp. 27
Local and Global Variablesp. 27
Effect of System Reset on Macro Variablesp. 28
Levels of Local Variablesp. 29
Range of Values Stored in Variablesp. 33
System Variablesp. 35
System Variables versus System Parametersp. 35
System Variables on Fanuc 0i Series Controlsp. 36
Displaying System Variablesp. 36
Interface Signalsp. 37
System Variables for Input Interface Signalsp. 40
System Variables for Output Interface Signalsp. 40
Geometry and Wear Offset Valuesp. 40
Workpiece Coordinate System Shift Amountp. 43
Macro Alarmsp. 44
Time Informationp. 45
Automatic Operation Controlp. 45
Execution Pausep. 48
Mirror Image Informationp. 48
Number of Machined Partsp. 48
Modal Informationp. 49
Current Tool Positionp. 52
Work Offset Valuesp. 55
Macro Functionsp. 57
Types of Macro Functionsp. 57
Priority of Operations in Arithmetic Expressionsp. 57
Priority of Operations in Boolean Expressionsp. 58
Effect of Order of Calculationsp. 58
Nesting of Bracketsp. 59
Arithmetic Operationsp. 59
Division versus Block-Skip Functionp. 60
Trigonometric Functionsp. 60
Rounding Functionsp. 63
ROUND, FIX, and FUPp. 64
Miscellaneous Functionsp. 67
SQRTp. 67
ABSp. 67
LNp. 68
EXPp. 68
Arbitrary Exponent of a Numberp. 69
Logical Functionsp. 69
Bitwise Functionsp. 69
Boolean Functionsp. 71
Bitwise versus Boolean Operationsp. 72
Enabling Boolean Operationsp. 73
An Application Example of Bitwise Operationp. 73
Conversion Functionsp. 75
Branches and Loopsp. 79
Unconditional Branchingp. 79
Conditional Branchingp. 80
Conditional Execution of a Single Macro Statementp. 93
Execution in a Loopp. 94
Arithmetic Operations on Macro Variable Numbersp. 103
Methods of Zero Shiftp. 106
Machine Coordinate Systemp. 107
External Workpiece Coordinate Systemp. 107
G54-G59, G54.1 P1-P48 Workpiece Coordinate Systemsp. 108
Zero Shift by Manipulating Offset Distancesp. 109
Zero Shift through System Variablesp. 109
Work Offset Display on a Milling Machinep. 110
System Variables for Various Work Offset Valuesp. 111
Zero Shift through a Programp. 111
Nested WHILE Statementp. 115
Review of Subprogramsp. 121
Introductionp. 121
What Is a Subprogram?p. 121
Why Is It Used?p. 121
Subprograms versus Subroutines of a Conventional Computer Languagep. 122
Subprogram Callp. 122
Multiple Call of a Subprogramp. 125
Subprogram Nestingp. 132
Macro Callp. 137
Introductionp. 137
Macro versus Subprogramp. 137
Macro Callp. 138
Simple Call (G65)p. 138
Modal Call (G66)p. 141
Call with User-Defined G-Codep. 145
Call with User-Defined M-Codep. 147
Subprogram Call without Using M98/M198p. 148
Subprogram Call Using an M-Codep. 148
Subprogram Call Using a T-Codep. 150
Argument Specificationp. 151
Argument Specification Ip. 152
Argument Specification IIp. 153
Mixed Argument Specificationp. 154
An Example of a G-Code Macro Call with Argumentsp. 155
Processing of Macro Statementsp. 163
What Is Buffering?p. 163
How Many Blocks Are Buffered?p. 163
When Are the Buffered Blocks Processed?p. 163
Processing When the Next Block is Not Bufferedp. 163
Processing in Radius Compensation Cancel (G40) Modep. 164
Processing in Radius Compensation Mode (Case 1)p. 164
Processing in Radius Compensation Mode (Case 2)p. 164
Effect of Buffering of Macro Statements on Program Executionp. 165
Complex Motion Generationp. 167
Introductionp. 167
Arc with Uniformly Varying Radiusp. 167
Helical Interpolation with Variable Radiusp. 175
Parabolic Turningp. 181
Roughing Operationp. 184
Step-Removal Operationp. 184
Turning a Sine Curvep. 188
Parametric Programmingp. 193
Introductionp. 193
Locator Pinp. 194
Bolt Holes on a Flangep. 200
Custom Canned Cyclesp. 207
Introductionp. 207
Deep-Hole Peck Drilling on a Lathep. 207
Drilling with Reducing Peck Lengths on a Milling Machinep. 215
Probingp. 223
Introductionp. 223
Skip Function on a CNC Machinep. 224
Probing a Pocketp. 224
Finding Center of a Holep. 228
Finding Angle of an Edgep. 231
Adjusting Wear Offsetp. 233
Communication with External Devicesp. 237
Introductionp. 237
Switching Principlep. 237
Input Types and Wiringp. 239
Connector Pin Assignmentp. 240
Discrete Sensors for Sourcing/Sinking PLC Inputsp. 244
Output Types and Wiringp. 246
Programmable Data Inputp. 251
Introductionp. 251
Data Input for WCS Offset Distancesp. 252
Data Input for Additional WCS Offset Distancesp. 253
Data Input for Compensation Values on a Milling Machinep. 254
Data Input for Compensation Values on a Lathep. 255
Data Input for Parameter Valuesp. 258
A Limitation of G10 L50 Methodp. 262
Appendix A List of Complex Macrosp. 263
Appendix B List of Parametersp. 265
Indexp. 267
Table of Contents provided by Ingram. All Rights Reserved.

Rewards Program

Write a Review