Để điều khiển máy CNC, chúng ta sử dụng các lệnh gọi là Mã G CNC. Mặc dù các nhà sản xuất máy công cụ khác nhau có thể áp dụng cách sử dụng riêng của họ cho một số Mã G nhất định, nhưng có một nhóm cốt lõi chung trên mọi máy công cụ. Các tiêu chuẩn này được sử dụng trên Máy tiện CNC, Máy phay, Máy phay và gần đây hơn là trên Máy in 3D (ở dạng rất cơ bản). Hôm nay chúng ta sẽ xem xét nhóm này và cách chúng được sử dụng để điều khiển máy móc.
G00 – Di chuyển nhanh

Có thể rút ngắn thành G0 vì các máy cũ không có nhiều RAM và mọi bit đều quan trọng.
Lệnh này được sử dụng khi dụng cụ không chạm vào chi tiết để di chuyển nhanh, thường được sử dụng khi về nhà để thay dụng cụ và quay lại với dụng cụ mới. Một số thợ máy thích di chuyển nhanh càng gần chi tiết càng tốt nhưng tôi khuyên bạn nên để khoảng cách ít nhất là 1mm. Giữ tay trên núm cấp liệu và di chuyển chậm trong lần chạy đầu tiên. Ở chế độ này, bạn sẽ gây ra nhiều thiệt hại nhất nếu không thiết lập đúng dụng cụ.
G00 X-100;
Trong ví dụ trên, tôi đang di chuyển dao cắt 100mm sang bên trái.
G00 là lệnh di chuyển nhanh trong G Code. Lệnh này được sử dụng khi máy cắt hoặc dụng cụ không loại bỏ vật liệu để thời gian gia công chi tiết nhanh nhất có thể. Tốc độ tối đa được thiết lập theo thông số máy và do đó chỉ có thể được điều khiển bởi người vận hành bằng cách sử dụng điều khiển ghi đè nhanh.
Khi sử dụng chuyển động nhanh, hãy chú ý đến bất kỳ kẹp, ê tô và bộ phận nào có thể nằm trên đường đi của bạn. Nếu bạn không chắc chắn, có thể khôn ngoan khi di chuyển trục X và Y trước, sau đó trên một đường riêng biệt, di chuyển xuống theo trục Z. Điều này sẽ làm tăng thời gian gia công của bạn thêm một hoặc hai giây nhưng sẽ giúp tránh sự cố 3 trục.
Lệnh G00 có thể được rút ngắn thành G0 vì các máy cũ không có nhiều RAM và mọi bit đều quan trọng.
G01 – Nội suy tuyến tính

Lệnh G01 được sử dụng khi bạn cắt theo đường thẳng. Lệnh này phải có tốc độ nạp liệu (F) hoạt động trước khi chạy. Một khối điển hình sẽ trông giống như G01 X-100 F50.0; Bạn không cần phải thêm lệnh này vào mọi dòng, miễn là không có chuyển động nào khác Mã G đang hoạt động, ví dụ, bạn chỉ cần thêm nó sau lệnh G02, G03 hoặc G00. Tương tự như vậy, tốc độ nạp liệu (F50) chỉ cần một lần cho đến khi bạn muốn thay đổi tốc độ cắt.
G00 X101 Z1.0;
G01 X100 Z-20 F100;
X110 Y-40;
G00 Z300;
Lệnh này có thể được sử dụng với tất cả các trục cắt cùng lúc hoặc chỉ một trục. Không phổ biến khi cắt bằng trục Z cũng như X và Y nhưng có thể thực hiện được nếu cần.
Khi lập trình một cấu hình, sẽ dễ dàng hơn khi sử dụng bù dao G41 và G42 vì bạn không cần phải tính đến bán kính của dao khi vẽ đường chạy dao, bạn chỉ cần sử dụng các kích thước trên bản vẽ và máy sẽ bù dao để đạt được kích thước chính xác.
G02 và G03 – Nội suy vòng tròn

G02 được sử dụng để gia công cung tròn hoặc bán kính theo chiều kim đồng hồ và G03 dùng để gia công ngược chiều kim đồng hồ.
Sử dụng giá trị ‘R’ để xác định bán kính, lệnh G02/G03 di chuyển máy cắt theo đường thẳng với bán kính đã xác định ở cuối lần di chuyển này.
Nếu tốc độ cấp liệu đã được kích hoạt thì không cần phải thêm nó vào dòng này trừ khi bạn muốn thay đổi tốc độ cấp liệu để gia công cung.
G03 Y50.0 R10.0 F100.0;
G01 X50.0;
Điểm trung tâm của cung tròn cũng có thể được xác định bằng các giá trị I, J và K. I (X), J(Y) và K(Z) xác định trục phụ.
sử dụng bản vẽ ở trên, lập trình một cung tròn sử dụng các giá trị I và J sẽ trông như thế này:
G03 Y50.0 I10.0 J40.0 F100.0;
G01 X50.0;
Phím K ít khi được sử dụng nhưng có thể sử dụng nếu cần tạo cung tròn sử dụng trục Z.
Khi sử dụng G02 với G01 và G03 (Cung ngược chiều kim đồng hồ), bất kỳ hình dạng nào cũng có thể được gia công. Ba Mã G này là nền tảng của lập trình Mã G và là ba mã bạn sẽ sử dụng khi cắt vật liệu.
G04 – Dừng lại
Đôi khi chúng ta cần tạm dừng máy cắt trong một thời gian ngắn, khi đó chúng ta sẽ thêm lệnh dừng vào mã để ngăn máy tiếp tục đọc chương trình trong một khoảng thời gian nhất định.
Công dụng:
Khi khoan bằng mũi khoan đáy phẳng và bề mặt lỗ khoan có bề mặt gồ ghề, chúng ta có thể dừng chuyển động mũi khoan theo Trục Z trong khi mũi khoan vẫn quay trong nửa giây để làm sạch bề mặt.
G01 Z-20.0 F50; G04 X500; G01 Z5.0;
Một vài khối được liệt kê ở trên trông giống như công cụ sẽ di chuyển 500mm khi ở sâu trong bộ phận. Nó sẽ không. Giá trị X trong ‘G04 X500’ buộc công cụ phải dừng trong 500 mili giây trước khi di chuyển đến khối tiếp theo. Tốc độ cấp liệu không cần phải được chỉ định lại sau lệnh dừng vì máy vẫn biết rằng một lệnh đã được xác định trước khi dừng trên khối G01.
G20 và G21 – Hệ thống đo lường

Hệ thống Anh và Hệ mét G20 và G21 G20 Định nghĩa đơn vị Inch; G21 Định nghĩa đơn vị Mét; Máy CNC có thể đọc số đo theo cả hệ thống Anh và hệ mét (inch và mm), được định nghĩa bởi G20 và G21.
Mặc dù chỉ cần một lần trong chương trình nhưng thực hành tốt là thêm thông tin này sau mỗi lần thay đổi công cụ. Điều này giúp chạy an toàn hơn từ bất kỳ vị trí nào trong chương trình.
Ví dụ, bạn có thể muốn lặp lại đường cắt hoàn thiện để loại bỏ thêm vật liệu sau khi đo. Việc xác định lại đơn vị đo sẽ ngăn máy vô tình ở sai hệ thống và di chuyển bất ngờ.
G90 và G91 – Tuyệt đối hoặc Gia tăng
G90 = Định vị tuyệt đối
G91 = Định vị gia tăng
Hệ thống định vị phải được xác định trước khi thực hiện bất kỳ chuyển động nào, dưới đây là giải thích về cả hai hệ thống định vị
G90 chọn hệ thống định vị tuyệt đối. Trong chế độ này, tất cả các chuyển động của trục chính được lấy từ vị trí chuẩn. Ví dụ, nếu X100.0 được bộ điều khiển đọc thì dụng cụ sẽ di chuyển đến 100mm theo hướng dương từ chuẩn. Nếu X150.0 là chuyển động định vị tiếp theo thì dụng cụ sẽ di chuyển thêm 50mm theo hướng đó.
G91 chọn hệ thống định vị gia tăng. Khi G91 hoạt động, tất cả các chuyển động của trục chính được lấy từ vị trí đã biết cuối cùng của nó. Ví dụ, nếu X100.0 được đọc thì dụng cụ sẽ di chuyển 100mm theo hướng dương của vị trí mà dụng cụ đã ở. Nếu X150.0 được đọc sau khi di chuyển này, dụng cụ sẽ di chuyển thêm 150mm theo hướng dương.
G40, G41 và G42 – Bù dao cắt

G40 = Hủy bù dao cắt
G41 = Bù dao cắt trái
G42 = Bù dao cắt phải
Nếu không sử dụng bù dao cắt khi lập trình, chúng ta sẽ phải tính đến đường kính của dao khi viết đường cắt. Chúng ta có thể lập trình theo kích thước của thành phần bằng cách sử dụng bù dao cắt.
Điều này bù trừ cho dao cắt theo bán kính của nó tùy thuộc vào hướng cắt.
Nhiều chu kỳ lặp lại (Máy tiện)

G70 = Chu trình hoàn thiện
G71 = Chu trình gia công thô OD/ID
G72 = Chu trình gia công thô
G73 = Chu trình lặp lại hoa văn
G74 = Chu trình tạo rãnh mặt
G75 = Chu trình tạo rãnh
G76 = Chu trình cắt ren vít
Nhiều chu kỳ lặp lại cho phép lập trình viên loại bỏ nhiều vật liệu chỉ bằng một vài dòng mã g, thường sử dụng lại hồ sơ như một chương trình con. Các chu kỳ lặp lại này cho phép máy xử lý các đường dẫn công cụ giúp tăng tốc quá trình lập trình.
Chu kỳ đóng hộp

G80 = Chu kỳ
G81 = Chu kỳ khoan
G82 = Chu kỳ khoan ngược
G83 = Chu kỳ khoan đục
G84 = Chu kỳ taro cứng
G85 = Chu kỳ doa (doa vào, doa ra)
G86 = Chu kỳ doa (doa vào, doa ra nhanh)
Các chu trình đóng hộp cho phép chúng ta viết mã g để khoan và khoan nhiều lỗ với số dòng mã g tối thiểu. Chúng cho phép chúng ta cung cấp tất cả thông tin trên một dòng, sau đó các dòng tiếp theo là vị trí.
Dữ liệu ca làm việc G54-G59

G53 là dữ liệu máy của chúng tôi. Đây là hằng số và chỉ có thể thay đổi trong các tham số hoặc bằng cách sử dụng lệnh G92 (không bao giờ làm điều này trừ khi bạn có lý do chính đáng và biết mình đang làm gì).
Phạm vi G-Code từ G54 đến G59 được sử dụng để thiết lập dữ liệu ca làm việc. Các dữ liệu này có thể được thiết lập trong chương trình bằng cách sử dụng G10 hoặc bằng cách thiết lập chúng trong các điều khiển CNC. Sau khi thiết lập, tất cả các phép đo sẽ đến từ điểm này. Nó thiết lập vị trí X0, Y0, Z0 mà tất cả các kích thước sẽ chạy từ đó cho đến khi một dữ liệu mới được xác định.