Difference between revisions of "G-Code"
From CNC.xyz Wiki
(→M-Commands) |
|||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | G-Code (also known as the RS-274 standard) is the numerical control language that is used to program most CNC Machines. There are several variations to the code used and not all G-code is created equally. Please check with the CNC control software ([[Mach3]], [[LinuxCNC]], [[UCCNC_Software|UCCNC]], [[Grbl]]) for specific reference and setup with CNC processors. | ||
+ | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! | + | ! G-Code !! Code Description |
|- | |- | ||
− | | [[ | + | | [[G00]] || Rapid Positioning |
|- | |- | ||
− | | [[ | + | | [[G01]] || Linear Interpolation |
|- | |- | ||
− | | [[ | + | | [[G02]] || Circular Interpolation, Clockwise |
|- | |- | ||
− | | [[ | + | | [[G03]] || Circular Interpolation, Counterclockwise |
|- | |- | ||
− | | [[ | + | | [[G04]] || Dwell |
|- | |- | ||
− | | [[ | + | | [[G10]] || Coordinate System Origin Setting |
|- | |- | ||
− | | [[ | + | | [[G17]] || XY Plane Selection |
|- | |- | ||
− | | [[ | + | | [[G18]] || XZ Plane Selection |
|- | |- | ||
− | | [[ | + | | [[G19]] || YZ Plane Selection |
|- | |- | ||
− | | [[ | + | | [[G20]] || Unit Selection: Inch |
|- | |- | ||
− | | [[ | + | | [[G21]] || Unit Selection: MM |
|- | |- | ||
− | | [[ | + | | [[G27]] || Verify Home |
|- | |- | ||
− | | [[ | + | | [[G28]] || Home Return (Soft Home) |
|- | |- | ||
− | | [[ | + | | [[G30]] || Home |
|- | |- | ||
− | | [[ | + | | [[G33]] || Lathe Thread Cycle |
|- | |- | ||
− | | [[ | + | | [[G40]] || Cancel Cutter Compensation |
|- | |- | ||
− | | [[ | + | | [[G41]] || Cutter Compensation Left |
|- | |- | ||
− | | [[ | + | | [[G42]] || Cutter Compensation Right |
|- | |- | ||
− | | [[ | + | | [[G43]] || Tool Length Offset |
|- | |- | ||
− | | [[ | + | | [[G49]] || Cancel Tool Length Offset |
|- | |- | ||
− | | [[ | + | | [[G53]] || Motion in Machine Coordinate System |
|- | |- | ||
− | | [[ | + | | [[G54]] || Select Coordinate System 1 |
|- | |- | ||
− | | [[ | + | | [[G55]] || Select Coordinate System 2 |
|- | |- | ||
− | | [[ | + | | [[G56]] || Select Coordinate System 3 |
|- | |- | ||
− | | [[ | + | | [[G57]] || Select Coordinate System 4 |
|- | |- | ||
− | | [[ | + | | [[G58]] || Select Coordinate System 5 |
|- | |- | ||
− | | [[ | + | | [[G59]] || Select Coordinate System 6 |
|- | |- | ||
− | | | + | | [[G59.1]] || Select Coordinate System 7 |
|- | |- | ||
− | | [[G59. | + | | [[G59.2]] || Select Coordinate System 8 |
|- | |- | ||
− | | [[ | + | | [[G59.3]] || Select Coordinate System 9 |
|- | |- | ||
− | | [[ | + | | [[G65]] || Subroutine |
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| [[G80]] || Cancel Motion Modes | | [[G80]] || Cancel Motion Modes | ||
Line 80: | Line 78: | ||
|- | |- | ||
| [[G86]] || Boring Cycle, Stop, Rapid Out | | [[G86]] || Boring Cycle, Stop, Rapid Out | ||
+ | |- | ||
+ | | [[G87]] || Back Boring Cycle | ||
+ | |- | ||
+ | | [[G88]] || Boring Cycle, Stop, Manual Out | ||
|- | |- | ||
| [[G89]] || Boring Cycle, Dwell, Feed Out | | [[G89]] || Boring Cycle, Dwell, Feed Out | ||
|- | |- | ||
− | | [[G90 | + | | [[G90]] || Absolute Distance Mode |
|- | |- | ||
− | | | + | | [[G91]] || Incremental Distance Mode |
|- | |- | ||
| [[G92]] || Coordinate System Offset | | [[G92]] || Coordinate System Offset | ||
|- | |- | ||
− | | | + | | [[G92.2]] || Cancel Coordinate System Offsets |
|- | |- | ||
| [[G92.3]] || Restore Axis Offsets | | [[G92.3]] || Restore Axis Offsets | ||
|- | |- | ||
− | | [[G93]] [[G94]] [[G95]] || Feed | + | | [[G93]] || Inverse Time Feed Mode |
+ | |- | ||
+ | | [[G94]] || Feed per Minute Mode | ||
+ | |- | ||
+ | | [[G95]] || Feed per Revolution Mode | ||
|- | |- | ||
| [[G96]] || Constant Surface Speed | | [[G96]] || Constant Surface Speed | ||
Line 99: | Line 105: | ||
| [[G97]] || RPM Mode | | [[G97]] || RPM Mode | ||
|- | |- | ||
− | | [[G98]] [[G99]] || Canned | + | | [[G98]] || Initial Level Return in Canned Cycles |
+ | |- | ||
+ | | [[G99]] || R-Point Level Return in Canned Cycles | ||
+ | |} | ||
+ | |||
+ | ==M-Commands== | ||
+ | |||
+ | The following is a list of the most typical M-Commands that are supported by every major CNC motion controller program. Beyond M09, most software will allow the creation of custom M-Commands. Consult the documentation for your specific commands associated with your software and machine. Not all commands will be available. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! M-Command !! Code Description | ||
+ | |- | ||
+ | | [[M00]] || Program Stop | ||
+ | |- | ||
+ | | [[M01]] || Optional Stop | ||
+ | |- | ||
+ | | [[M02]] || Program End | ||
+ | |- | ||
+ | | [[M03]] || Spindle On, Clockwise | ||
+ | |- | ||
+ | | [[M04]] || Spindle On, Counter-Clockwise | ||
+ | |- | ||
+ | | [[M05]] || Spindle Off | ||
+ | |- | ||
+ | | [[M06]] || Tool change | ||
+ | |- | ||
+ | | [[M07]] || Mist Coolant On | ||
+ | |- | ||
+ | | [[M08]] || Flood Coolant On | ||
+ | |- | ||
+ | | [[M09]] || Coolant Off | ||
|} | |} |
Latest revision as of 06:25, November 25, 2015
G-Code (also known as the RS-274 standard) is the numerical control language that is used to program most CNC Machines. There are several variations to the code used and not all G-code is created equally. Please check with the CNC control software (Mach3, LinuxCNC, UCCNC, Grbl) for specific reference and setup with CNC processors.
G-Code | Code Description |
---|---|
G00 | Rapid Positioning |
G01 | Linear Interpolation |
G02 | Circular Interpolation, Clockwise |
G03 | Circular Interpolation, Counterclockwise |
G04 | Dwell |
G10 | Coordinate System Origin Setting |
G17 | XY Plane Selection |
G18 | XZ Plane Selection |
G19 | YZ Plane Selection |
G20 | Unit Selection: Inch |
G21 | Unit Selection: MM |
G27 | Verify Home |
G28 | Home Return (Soft Home) |
G30 | Home |
G33 | Lathe Thread Cycle |
G40 | Cancel Cutter Compensation |
G41 | Cutter Compensation Left |
G42 | Cutter Compensation Right |
G43 | Tool Length Offset |
G49 | Cancel Tool Length Offset |
G53 | Motion in Machine Coordinate System |
G54 | Select Coordinate System 1 |
G55 | Select Coordinate System 2 |
G56 | Select Coordinate System 3 |
G57 | Select Coordinate System 4 |
G58 | Select Coordinate System 5 |
G59 | Select Coordinate System 6 |
G59.1 | Select Coordinate System 7 |
G59.2 | Select Coordinate System 8 |
G59.3 | Select Coordinate System 9 |
G65 | Subroutine |
G80 | Cancel Motion Modes |
G81 | Drilling Cycle |
G82 | Drilling Cycle with Dwell |
G83 | Drilling Cycle with Peck |
G85 | Boring Cycle, No Dwell, Feed Out |
G86 | Boring Cycle, Stop, Rapid Out |
G87 | Back Boring Cycle |
G88 | Boring Cycle, Stop, Manual Out |
G89 | Boring Cycle, Dwell, Feed Out |
G90 | Absolute Distance Mode |
G91 | Incremental Distance Mode |
G92 | Coordinate System Offset |
G92.2 | Cancel Coordinate System Offsets |
G92.3 | Restore Axis Offsets |
G93 | Inverse Time Feed Mode |
G94 | Feed per Minute Mode |
G95 | Feed per Revolution Mode |
G96 | Constant Surface Speed |
G97 | RPM Mode |
G98 | Initial Level Return in Canned Cycles |
G99 | R-Point Level Return in Canned Cycles |
M-Commands
The following is a list of the most typical M-Commands that are supported by every major CNC motion controller program. Beyond M09, most software will allow the creation of custom M-Commands. Consult the documentation for your specific commands associated with your software and machine. Not all commands will be available.
M-Command | Code Description |
---|---|
M00 | Program Stop |
M01 | Optional Stop |
M02 | Program End |
M03 | Spindle On, Clockwise |
M04 | Spindle On, Counter-Clockwise |
M05 | Spindle Off |
M06 | Tool change |
M07 | Mist Coolant On |
M08 | Flood Coolant On |
M09 | Coolant Off |