Computer Numerical Control (CNC) Programming

  1. The Language of CNC: Codes and Addresses
    1. Program Structure and Syntax
      1. Block Structure
        1. Word Address Format
          1. Character Set and Limitations
          2. G-Code: Preparatory Functions
            1. Purpose and Structure of G-Codes
              1. Motion Control G-Codes
                1. Rapid Traverse (G00)
                  1. Linear Interpolation (G01)
                    1. Circular Interpolation Clockwise (G02)
                      1. Circular Interpolation Counter-Clockwise (G03)
                      2. Plane Selection G-Codes
                        1. XY Plane (G17)
                          1. XZ Plane (G18)
                            1. YZ Plane (G19)
                            2. Units and Positioning G-Codes
                              1. Inch Programming (G20)
                                1. Metric Programming (G21)
                                  1. Absolute Programming (G90)
                                    1. Incremental Programming (G91)
                                    2. Feed Rate Modes
                                      1. Feed Per Minute (G94)
                                        1. Feed Per Revolution (G95)
                                        2. Spindle Control G-Codes
                                          1. Constant RPM (G97)
                                            1. Constant Surface Speed (G96)
                                            2. Tool Compensation G-Codes
                                              1. Tool Length Compensation (G43)
                                                1. Tool Length Compensation Cancel (G49)
                                                  1. Cutter Radius Compensation Left (G41)
                                                    1. Cutter Radius Compensation Right (G42)
                                                      1. Cutter Radius Compensation Cancel (G40)
                                                      2. Coordinate System G-Codes
                                                        1. Work Coordinate Systems (G54-G59)
                                                          1. Extended Work Offsets (G54.1)
                                                        2. M-Code: Miscellaneous Functions
                                                          1. Purpose and Structure of M-Codes
                                                            1. Spindle Control M-Codes
                                                              1. Spindle Start Clockwise (M03)
                                                                1. Spindle Start Counter-Clockwise (M04)
                                                                  1. Spindle Stop (M05)
                                                                  2. Coolant Control M-Codes
                                                                    1. Flood Coolant On (M08)
                                                                      1. Mist Coolant On (M07)
                                                                        1. Coolant Off (M09)
                                                                        2. Tool Change M-Codes
                                                                          1. Tool Change (M06)
                                                                            1. Tool Change with Stop (M00)
                                                                            2. Program Control M-Codes
                                                                              1. Program Stop (M00)
                                                                                1. Optional Stop (M01)
                                                                                  1. Program End (M02)
                                                                                    1. Program End and Rewind (M30)
                                                                                    2. Subprogram M-Codes
                                                                                      1. Subprogram Call (M98)
                                                                                        1. Subprogram Return (M99)
                                                                                      2. Address Characters and Parameters
                                                                                        1. Sequence Numbers (N)
                                                                                          1. Coordinate Addresses (X, Y, Z)
                                                                                            1. Rotational Addresses (A, B, C)
                                                                                              1. Feed Rate (F)
                                                                                                1. Spindle Speed (S)
                                                                                                  1. Tool Number (T)
                                                                                                    1. Arc Parameters (I, J, K, R)
                                                                                                      1. Dwell and Parameter (P)
                                                                                                        1. Tool Offsets (H, D)
                                                                                                          1. Repetition Count (L)