Lập trình máy tiện CNC là một trong những công việc cần thực hiện trước khi tiến hành gia công. Tuy nhiên, với những người mới bắt đầu thường gặp khó khăn trong quá trình thực hiện một chương trình tiện CNC đầy đủ. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách lập trình máy tiện CNC đầy đủ các bước, cực kỳ dễ thực hiện.
Lập trình máy tiện CNC có khó không?

Lập trình máy tiện CNC được xem là một trong những kỹ năng khá phức tạp và đòi hỏi chuyên môn cao. Tuy nhiên, độ khó của việc này phụ thuộc vào nhiều yếu tố như trình độ kỹ thuật của người lập trình, mức độ phức tạp của công việc cần thực hiện, và mức độ sẵn có của tài nguyên.
Về cơ bản, lập trình máy tiện CNC bao gồm việc tạo ra các chuỗi lệnh và các lệnh điều khiển để máy tiện có thể thực hiện các thao tác cắt và gia công trên các chi tiết theo các đặc điểm được chỉ định. Người lập trình cần phải hiểu về cách hoạt động của máy tiện, các công cụ cắt, vật liệu làm việc, và cả các phần mềm CAD/CAM để tạo ra các mô hình và lập trình.
Một số thách thức trong lập trình máy tiện CNC bao gồm:
- Kiến thức kỹ thuật: Đòi hỏi người lập trình phải có hiểu biết sâu sắc về cách thức hoạt động của máy tiện CNC, bao gồm cả các phần cơ bản như định hình và lập trình động cơ, cũng như các nguyên lý vận hành chi tiết như làm mát, bôi trơn và cách thức hoạt động của các bộ truyền động.
- Kỹ năng lập trình: Đòi hỏi khả năng sử dụng các ngôn ngữ lập trình như G-code hoặc M-code để tạo ra các chương trình gia công. Điều này đòi hỏi sự chính xác và kiên nhẫn, đặc biệt là khi cần điều chỉnh và sửa lỗi trong quá trình lập trình.
- Hiểu biết về vật liệu và công cụ: Phải có kiến thức vững về các vật liệu khác nhau và cách chúng phản ứng với các phương pháp cắt khác nhau. Cũng như phải biết lựa chọn và sử dụng các loại công cụ cắt phù hợp để đảm bảo chất lượng và hiệu suất của quá trình gia công.
- An toàn và chất lượng: Lập trình viên cần phải luôn tuân thủ các quy tắc an toàn trong quá trình lập trình và hoạt động của máy tiện CNC. Ngoài ra, họ cũng cần đảm bảo rằng các chương trình lập trình của họ tạo ra các sản phẩm cuối cùng với chất lượng cao và đáp ứng các yêu cầu cụ thể của khách hàng.
Xem thêm: 9 dòng máy tiện cấp phôi tự động cực tốt bán chạy nhất thị trường
Các mã lệnh lập trình máy tiện CNC cơ bản
1. Mã lệnh G trong lập trình máy tiện CNC

Trong quá trình lập máy tiện CNC, mã lệnh G thường được sử dụng để quy định tốc độ di chuyển, chức năng di chuyển của dụng cụ cắt,…. Các mã G-code được sử dụng phổ biến trong máy tiện CNC bao gồm:
| Mã lệnh | Miêu tả |
| G00 | Chạy dao nhanh |
| G01 | Nội suy đường thẳng |
| G02 | Nội suy đường tròn chiều thuận (theo kim đồng hồ) |
| G03 | Nội suy chiều nghịch |
| G04 | Tạm dừng chương trình với thời gian xác định |
| G09 | Dừng chính xác |
| G10 | Thiết lập OFF-SET |
| G15 | Xóa chỉ lệnh tọa độ cực |
| G16 | Chỉ lệnh tọa độ |
| G17 – G19 | Chọn các mặt phẳng gia công (XY, XZ, YZ) |
| G20 – G21 | Hệ đơn vị tính theo inch & mm |
| G22 – G23 | Đóng & tắt cực hạn hành trình dao. |
| G27 | Kiểm tra lại điểm tham chiếu |
| G28 | Trở lại điểm tham chiếu |
| G30 | Vị trí trở lại tham chiếu |
| G31 | Bỏ qua chức năng |
| G32 | Cắt ren- tiến liên tục theo đường thẳng |
| G34 | Cắt ren theo biến dẫn |
| G36 | Tự động bù dao cho trục X |
| G37 | Tự động bù dao cho trục Z |
| G40 | Hủy bỏ bù bán kính mũi dao |
| G41- G42 | Bù trái và phải bán kính mũi dao |
| G49 | Bỏ bù chiều dài dao |
| G52 | Xác lập hệ tọa độ cục bộ |
| G53 | Xác lập hệ tọa độ má |
| G54 – G59 | Hệ tọa độ làm việc (phôi I – phôi VI) |
| G61 | Chế độ kiểm tra dừng chính xác |
| G62 | Ghi đè góc tự động |
| G63 | Chế độ khai thác |
| G64 | Tốc độ tốt nhất |
| G65 | Gọi macro riêng |
| G66 | Gọi chế độ macro riêng |
| G67 | Xóa bỏ chế độ macro riêng |
| G68 | Lệnh đối xứng |
| G70 | Chu trình tiện tinh |
| G71 – G76 | Các chu trình tiện và khoan |
| G83 – G89 | Các chu trình khoan, taro và doa |
| G90 | Chu trình cắt dọc trục. |
| G92 | Chu trình tiện ren |
| G94 | Chu kỳ cắt hướng kính |
| G96 | Chế độ tốc độ cắt không đổi |
| G97 | Xóa bỏ chế độ G96 |
| G98 – G99 | Lượng ăn dao theo phút & vòng |
2. Mã lệnh M trong máy tiện CNC

Mã lệnh M-Code được sử dụng trong lập trình tiện CNC nhằm hỗ trợ cho mã lệnh G dùng để điều khiển chương trình gia công tiện CNC, bao gồm:
| Mã M | Miêu tả |
| M00 | Dừng chương trình |
| M01 | Dừng chương trình có điều kiện. |
| M02, M30 | Kết thúc chương trình, quay lại đầu chương trình |
| M03 | Trục chính quay thuận (theo chiều kim đồng hồ). |
| M04 | Trục chính quay nghịch (ngược chiều kim đồng hồ). |
| M05 | Dừng trục chính. |
| M06 | Thay đổi công cụ. |
| M08 | Bật dung dịch tưới nguội. |
| M09 | Tắt dung dịch tưới nguội. |
| M10 | Đóng thủy lực với máy tiện là chấu cặp (máy FEELLER hệ fanuc series oi-MD) |
| M11 | Mở thủy lực máy tiện là chấu cặp (máy FEELLER hệ Fanuc series oi-MD) |
| M12 | Đóng thủy lực máy tiện là chấu cặp (GSK 945, STK T200…) |
| M13 | Mở thủy lực máy tiện là chấu cặp (GSK 945, STK T200…) (Máy Feeler hệ Fanuc series -oi MD thì M12 và M13 là lệnh đóng mở thủy lực của ụ động) Trục chính bật xoay thuận |
| M14 | Trục chính bật xoay nghịch. Mở thủy lực máy tiện. |
| M30 | Kết thúc chương trình và reset |
| M31 | Tải phôi ra trước |
| M33 | Dừng tải phôi |
| M36 | Pallet sẵn sàng |
| M41 | Trục chính quay ở vùng tốc độ thấp. |
| M42 | Trục chính quay ở vùng tốc độ cao. |
| M69 | Đóng thủy lực mâm cặp |
| M69 | Mở thủy lực mâm cặp. |
| M76 | Tắt hiển thị điều khiển |
| M77 | Mở hiển thị điều khiển |
| M80 | Tự động mở cửa |
| M81 | Tự động đóng cửa |
| M82 | Nhả kẹp dụng cụ |
| M86 | Kẹp dụng cụ |
| M88 | Cấp nước làm mát qua trục chính |
| M89 | Ngừng cấp nước qua trục chính |
| M90 | Chế độ ngủ |
| M97 | Gọi chương trình tại chỗ |
| M98 | Gọi chương trình con. |
| M99 | Kết thúc chương trình con, tiếp tục gia công theo chương trình chính. |
3. Các mã lệnh khác trong lập trình tiện CNC
Bên cạnh mã G-code và M-code còn có các mã lệnh thường xuyên được sử dụng trong lập trình máy tiện CNC, được tổng hợp trong bảng dưới đây.
| Mã lệnh | Miêu tả |
| A | Tọa độ góc trục A. |
| B | Tọa độ góc trục B. |
| C | Tọa độ góc trục C. |
| D | Giá trị bù bán kính dao cắt. |
| F | Tốc độ chạy dao khi cắt (mm/phút). |
| H | Bù chiều cao (Z) của dao cắt (trong bảng thay dao – đơn vị mm). |
| IJK | Độ lệch tương đối với tọa độ X,Y,Z. |
| N | Đánh số đầu dòng. |
| O | Nhãn chương trình con. |
| P | Dừng chuyển động các trục trong lúc gia công – giá trị tính bằng phần nghìn của giây hoặc giây. |
| Q | Độ sâu trong của một lần khoan nhắp, hoặc số lần lặp lại của chương trình con. |
| R | Tọa độ rút dao về trong các lệnh khoan. |
| S | Tốc độ quay trục chính (vòng/phút). |
| T | Số hiệu dao cắt trong bảng thay dao. |
| XYZ | Tọa độ decac của đầu dao. |
Chu trình tiện CNC
Trước khi tiến hành lập trình máy tiện CNC, bên cạnh việc nắm vững các mã lệnh lập trình CNC, người lập trình còn cần hiểu rõ về các chu trình tiện CNC sau:
Chu trình tiện thô dọc trục Z – G90

- Chức năng: Tiện trụ ngoài, trụ trong, côn dọc trục.
- Cấu trúc câu lệnh:
G90 X (U)__Z (W)__R__F__;
Trong đó:
- X (U)__: Đường kính chi tiết tại điểm cần đến theo phương X.
- Z (W)__: Tọa độ điểm cuối theo phương Z.
- F__: Tốc độ tiến dao khi cắt vật liệu.
- R__: Độ sai lệnh bán kính mặt đầu côn và mặt kết thúc côn, giá trị này có thể âm hoặc dương.
- R = (đường kính đầu côn – đường kính kết thúc côn)/2.
Chu trình tiện thô dọc trục X – G94
– Chức năng: Tiện mặt đầu và côn dọc trục.
– Cấu trúc câu lệnh:
G94 X (U)__Z (W)__R__F__;
– Với:
- X (U)__: Là đường kính chi tiết tại điểm cần đến theo phương X.
- Z (W)__: Là tọa độ điểm cuối theo phương Z.
- F__: Là tốc độ tiến dao khi cắt vật liệu.
- R__: Là độ sai lệnh bán kính mặt đầu côn và mặt kết thúc côn, giá trị có thể âm hoặc dương.
- R = (đường kính đầu côn – đường kính kết thúc côn) /2
Chu trình tiện ren – G92

– Chức năng: Tiện mặt đầu và côn dọc trục.
– Cấu trúc câu lệnh:
G92 X (U)__Z (W)__R__F__;
– Với:
- X (U)__: Là đường kính chân ren tại điểm cuối theo phương X.
- Z (W)__: Là tọa độ điểm cuối theo phương Z.
- F__: Là tốc độ tiến dao khi cắt ren, F (mm/vòng) = bước ren
- R__: Là độ sai lệnh bán kính mặt đầu côn và mặt kết thúc côn, giá trị có thể âm hoặc dương.
- R = (đường kính đầu côn – đường kính kết thúc côn) /2
Chu trình tiện thô biên dạng dọc trục Z – G71
– Chức năng: Dùng để tiện thô dọc trục Z theo biên dạng được mô tả.
– Cấu trúc câu lệnh:
G71 U(d)_ R(e)_ ;
G71 P _ Q _ U _ W_ F_ ;
– Với:
- U (d): Là chiều sâu mỗi lớp cắt tính theo đường kính (mm).
- R (e): Là khoảng lùi dao (có thể thiết lập bởi tham số N0. 718).
- P: Là số block bắt đầu của đoạn chương trình gia công được mô tả.
- Q: Là số block kết thúc của đoạn chương trình gia công được mô tả.
- U: Là lượng dư để lại cho chu trình tiện tinh theo phương X.
- W: Là lượng dư để lại cho chu trình tiện tinh theo phương Z.
- F: Là tốc độ tiến dao.
Chu trình tiện thô biên dạng dọc trục Z – G72
– Chức năng: Dùng để tiện thô dọc trục X theo biên dạng được mô tả.
– Cấu trúc câu lệnh:
G72 W(l)_ R(e)_ ;
G72 P _ Q _ U _ W_ F_ ;
– Với:
- W(l): Là chiều sâu mỗi lớp cắt tính theo phương Z (mm).
- R(e): Là khoảng lùi dao (có thể thiết lập bởi tham số N0. 718).
- P: Là số block bắt đầu của đoạn chương trình gia công được mô tả.
- Q: Là số block kết thúc của đoạn chương trình gia công được mô tả.
- U: Là lượng dư để lại cho chu trình tiện tinh theo phương X.
- W: Là lượng dư để lại cho chu trình tiện tinh theo phương Z.
- F: Là tốc độ tiến dao.
Chu trình tiện thô chép hình – G73
– Chức năng: Tiện thô dọc theo biên dạng của chi tiết với các đường chạy dao liên tiếp nhau.
– Cấu trúc câu lệnh:
G73 U(d)_ W(l)_ R(e)_ ;
G73 P _ Q _ U _ W_ F_ ;
– Với:
- U(d): Là chiều dày lượng dư theo phương X.
- W(l): Là chiều dày lượng dư theo phương Z.
- R(e): Là số lần chia (số lớp cắt thô).
- P: Là số block bắt đầu của đoạn chương trình gia công được mô tả.
- Q: Là số block kết thúc của đoạn chương trình gia công được mô tả.
- U: Là lượng dư để lại cho chu trình tiện tinh theo phương X.
- W: Là lượng dư để lại cho chu trình tiện tinh theo phương Z.
- F: Là tốc độ tiến dao.
Chu trình tiện tinh – G70
– Chức năng: Tiện tinh G70 thường kết hợp với các chu trình gia công thô G71, G72, G73 nhằm gia công tinh đạt được hình dạng chi tiết gia công theo yêu cầu kỹ thuật.
– Cấu trúc câu lệnh:
G70 P (ns)_ Q (nf)_ F (f)_ S_ ;
– Với:
- P: Là số block đầu tiên của đoạn chương trình gia công được mô tả.
- Q: Là số block cuối cùng của đoạn chương trình gia công được mô tả.
- F: Là tốc độ tiến dao.
- S: Là số vòng quay trục chính.
Chu trình tiện rãnh – khoan mặt đầu – G74

– Chức năng: Dùng để tiện rãnh hay khoan lỗ mặt đầu.
– Cấu trúc câu lệnh:
G74 R(e)_ ;
G74 X(U)_ Z(W)_ P _ Q _ F_ ;
– Với:
- R(e): Là khoảng lùi dao theo phương Z
- X: Là tọa độ X tuyệt đối tại điểm B
- U: Là khoảng cách tương đối từ A đến B theo trục X
- Z: Là tọa độ Z tuyệt đối tại điểm C
- W: Là khoảng cách tương đối từ A đến C theo trục Z
- P: Là khoảng dịch chuyển của dụng cụ theo phương X, lập trình theo bán kính và không có dấu chấm thập phân.
- Q: Là chiều sâu mỗi lần cắt theo phương Z và không có dấu chấm thập phân.
- F: Là tốc độ tiến dao.
Chu trình tiện rãnh trụ ngoài, rãnh trụ trong – G75
– Chức năng: Dùng để tiện rãnh trụ ngoài hoặc trụ trong.
– Cấu trúc câu lệnh:
G75 R(e)_ ;
G75 X(U)_ Z(W)_ P _ Q _ F_ ;
– Với:
- R (e): Là khoảng lùi dao theo phương Z
- X: Là tọa độ X tuyệt đối tại điểm B
- U: Là khoảng cách tương đối từ A đến B theo trục X
- Z: Là tọa độ Z tuyệt đối tại điểm C
- W: Là khoảng cách tương đối từ A đến C theo trục Z
- P: Là khoảng dịch chuyển của dụng cụ theo phương X, lập trình theo bán kính và không có dấu chấm thập phân.
- Q: Là chiều sâu mỗi lần cắt theo phương Z, không có dấu chấm thập phân.
- F: Là tốc độ tiến dao.
Chu trình tiện ren hỗn hợp – G76
– Chức năng: Dùng thực hiện nhiều lần chạy dao liên tiếp nhau để tiện ren.
– Cấu trúc câu lệnh:
G76 P (m) (a) (œ) Q(Dd min) R(d)_ ;
G76 X(u)_ Z(w)_ P(Di)_ Q(Dk)_ R (Dd)_ F(f)_ ;
– Với:
- P (m): Là số lần tiện ren tinh (0-99 lần).
- (a): Là khoảng vuốt chân ren:
- (œ): Là góc vào dao của dao tiện ren:
- Q (Dd min): Là chiều sâu cắt nhỏ nhất (Q1000 =1 mm) .
- R (d): Là lượng dư gia công tinh (R1000 = 1 mm) .
- X (u): Là đường kính chân ren theo phương X.
- X (u) = đường kính đỉnh ren – 1.3 * bước ren
- hoặc X(u) = đường kính đỉnh ren – 2 * chiều cao ren
- P (Di): Là chiều cao ren (tính theo bán kính và luôn dương, không dấu chấp thập phân, P1000 =1 mm)
- Q (Dk): Là chiều sâu lớp cắt đầu tiên (tính theo bán kính và luôn dương).
- R (Dd): Là độ sai lệch bán kính mặt đầu côn và mặt kết thúc côn, giá trị này có thể âm hoặc dương.
- F (f): Tốc độ tiến dao: F (mm/vòng) = bước ren.
Xem thêm: Máy tiện PMW có mấy loại? Đặc điểm và ứng dụng từng loại
Hướng dẫn lập trình máy tiện CNC hệ Fanuc
Quá trình lập trình máy tiện CNC hệ Fanuc thường bao gồm những bước cơ bản sau:
- Bước 1:
Đầu tiên, gọi công cụ cắt thích hợp cho quá trình gia công. Các mã lệnh được gọi sẽ phụ thuộc vào hệ điều khiển. Trên máy CNC hệ điều hành Fanuc thì bạn cần sử dụng lệnh T5 hoặc T0505.
- Bước 2:
Lập trình xoay trục chính máy tiện CNC: G97 S1000
- Bước 3:
Thiết lập lệnh xoay trục chính theo 2 cách:
M03 – CW (Xoay theo chiều kim đồng hồ).
M04 – CCW (Xoay ngược chiều kim đồng hồ).
- Bước 4:
Lệnh mở chất làm mát máy CNC:
M08: Xoay theo chiều kim đồng hồ
M09: Xoay ngược chiều kim đồng hồ
- Bước 5:
Để di chuyển công cụ với tốc độ nhanh, sử dụng lệnh lập trình CNC hoặc mã G. Giá trị X và Z với G00 là tọa độ đích đến của dụng cụ: G00 X… Z…
- Bước 6:
Để di chuyển dụng cụ cắt theo đường thẳng, các giá trị X và Z với G01 cho phép nội suy dụng cụ cắt theo đường thẳng.
Giá trị F là tốc độ tiến dao của dụng cụ, sử dụng lệnh như sau:
G01 X… Z… F…
- Bước 7:
Sử dụng lệnh G02, G03 để lập trình cung tròn.
Giá trị X và Z là tọa độ điểm đến và R là bán kính cung tròn:
G02 X… Z… R…
G03 X… Z… R…
- Bước 8:
Kết thúc chương trình tiện CNC bằng lệnh M30.
Trên đây, chúng tôi đã hướng dẫn bạn cách lập trình máy tiện CNC đầy đủ các bước, ngay cả người mới cũng có thể dễ dàng thực hiện. Nếu bạn đang có nhu cầu đầu tư máy tiện CNC PMW chất lượng cao, giá tốt, hãy liên hệ ngay với chúng tôi để được hỗ trợ và tư vấn nhanh nhất!
NHÀ PHÂN PHỐI CHÍNH THỨC THƯƠNG HIỆU PMW TẠI VIỆT NAM
- Trụ Sở Chính TLT – Hồ Chí Minh:
354 Quốc Lộ 1A, P. Bình Hưng Hòa B, Q. Bình Tân, Tp. Hồ Chí Minh
- Chi Nhánh TLT – Hà Nội:
Km 6 Võ Văn Kiệt, Thôn Đoài, X. Nam Hồng, H. Đông Anh, Thủ đô Hà Nội
- Chi nhánh TLT – Bắc Ninh:
Đ. Lê Thái Tổ, P. Võ Cường, TP. Bắc Ninh (Kế bên Honda, đối diện Toyota)
- Hotline: 1900.98.99.06
