Cập nhật lần cuối 7 Tháng mười một, 2025 bởi Nguyễn Minh Triệu
Việc điều khiển máy tiện CNC chính xác để tạo ra một chi tiết hoàn hảo bắt nguồn từ một chương trình được viết bài bản. Đây là kỹ năng cốt lõi, là “ngôn ngữ” giao tiếp giữa kỹ sư và cỗ máy, quyết định đến 90% sự thành công của sản phẩm. Nếu bạn là người mới và đang tìm cách làm chủ công nghệ này, bạn đã đến đúng nơi.
Lập trình tiện CNC, hay còn gọi là biên soạn chương trình gia công, là quá trình tạo ra một bộ chỉ dẫn chi tiết (sử dụng các mã lệnh G-code và M-code) để máy tiện tự động thực hiện các thao tác: từ việc quay trục chính, gọi dao, di chuyển dao cắt gọt phôi cho đến khi tạo ra chi tiết hoàn chỉnh theo bản vẽ kỹ thuật.
Tại Công ty Minh Triệu, đây là công việc hàng ngày của đội ngũ kỹ sư của chúng tôi. Bài viết này sẽ cung cấp cho bạn một hướng dẫn viết chương trình tiện CNC toàn diện, từ các khái niệm cơ bản nhất đến các chu trình gia công phức tạp, giúp bạn tự tin tạo ra các chương trình đầu tiên của mình.
Những kiến thức nền tảng bắt buộc phải nắm vững
Trước khi viết dòng lệnh đầu tiên, bạn cần nắm vững các khái niệm cơ bản. Đây là bảng chữ cái của ngôn ngữ lập trình CNC.
1. Hệ tọa độ trong máy tiện CNC (Trục X và Z)
Không giống máy phay CNC (thường có 3 trục X, Y, Z), máy tiện CNC 2 trục cơ bản tập trung vào hai trục chính:
- Trục Z: Nằm dọc theo tâm của trục chính (đường tâm phôi). Chuyển động của dao dọc theo trục Z sẽ quyết định chiều dài của chi tiết.
- Trục X: Nằm vuông góc với trục Z. Chuyển động của dao dọc theo trục X sẽ quyết định đường kính của chi tiết.
Hệ tọa độ tuyệt đối (G90) và Tương đối (G91):
- G90 (Tuyệt đối): Mọi kích thước di chuyển của dao đều được tính toán từ một điểm gốc duy nhất (thường là G54). Đây là chế độ phổ biến và an toàn nhất.
- G91 (Tương đối): Kích thước di chuyển tiếp theo được tính toán dựa trên vị trí hiện tại của dao. Thường ít được sử dụng trong tiện, trừ một số trường hợp đặc biệt.
Gốc tọa độ (G54 – G59): Đây là cách bạn “bảo” cho máy biết phôi đang được kẹp ở đâu. Thông thường, gốc tọa độ (Zero phôi) được thiết lập tại mặt đầu của phôi (Z0) và tâm phôi (X0).
2. Các mã lệnh cơ bản: G-code và M-code
Đây là hai nhóm lệnh chính cấu thành nên một chương trình CNC.
- G-code (Geometrical-code): Lệnh di chuyển & Chu trình Đây là các lệnh điều khiển chuyển động của dao và thiết lập các chế độ cắt.
G00: Di chuyển nhanh (không cắt gọt), dùng để đưa dao về vị trí an toàn hoặc vị trí chuẩn bị cắt.G01: Nội suy đường thẳng (cắt thẳng) với tốc độ tiến dao F.G02/G03: Nội suy cung tròn theo chiều kim đồng hồ (G02) hoặc ngược chiều kim đồng hồ (G03).G90/G91: Chọn hệ tọa độ tuyệt đối / tương đối.G96: Chế độ tốc độ cắt bề mặt không đổi (rất quan trọng để tiện mặt ngoài, đảm bảo độ bóng).G97: Chế độ tốc độ trục chính không đổi (RPM), dùng khi khoan, taro hoặc tiện ren.G54: Gọi gốc tọa độ phôi thứ nhất.
- M-code (Miscellaneous-code): Lệnh chức năng phụ Đây là các lệnh điều khiển các chức năng bật/tắt của máy.
M03: Trục chính quay thuận chiều kim đồng hồ.M04: Trục chính quay ngược chiều kim đồng hồ.M05: Dừng trục chính.M08: Bật hệ thống tưới nguội.M09: Tắt hệ thống tưới nguội.M30: Kết thúc chương trình và quay lại đầu chương trình.M02: Kết thúc chương trình (không quay lại).
3. Các thông số lập trình quan trọng
- S (Spindle Speed): Tốc độ trục chính
- Khi dùng
G96,Scó nghĩa là tốc độ cắt bề mặt (m/phút). Ví dụ:G96 S200. - Khi dùng
G97,Scó nghĩa là số vòng quay (vòng/phút). Ví dụ:G97 S1500.
- Khi dùng
- F (Feed Rate): Tốc độ tiến dao
- Trong tiện,
Fthường được thiết lập ở chế độG99(mm/vòng), tức là dao di chuyển được bao nhiêu mm sau mỗi vòng quay của phôi. Ví dụ:F0.2(tiến 0.2mm/vòng).
- Trong tiện,
- T (Tool): Lệnh gọi dao và bù dao
- Một lệnh gọi dao thường có 4 chữ số, ví dụ
T0101. - Hai số đầu (
01) là vị trí (số ổ) chứa dao trên đài dao. - Hai số sau (
01) là số thứ tự của ô nhớ bù dao (offset) tương ứng với dao đó.
- Một lệnh gọi dao thường có 4 chữ số, ví dụ
Cấu trúc tiêu chuẩn của một chương trình tiện CNC
Một chương trình tiện CNC luôn có 3 phần rõ rệt, giúp người vận hành dễ dàng đọc hiểu và kiểm soát.
1. Phần đầu (Khai báo):
- Bắt đầu bằng ký tự
%. - Tên chương trình, bắt đầu bằng chữ
Ovà 4 chữ số (ví dụ:O0001). - Các lệnh thiết lập an toàn ban đầu: đảm bảo máy ở trạng thái an toàn trước khi chạy (ví dụ:
G21– hệ mét,G99– feed/vòng,G40– hủy bù dao,G80– hủy chu trình).
2. Phần thân (Gia công):
- Đây là nội dung chính, chứa tất cả các thao tác gia công.
- Bao gồm các lệnh: gọi dao (
T...), bật trục chính (M03), bật tưới nguội (M08), di chuyển dao (G00,G01…) và thực hiện các chu trình cắt gọt (G71,G70…).
3. Phần kết thúc:
- Các lệnh đưa dao về vị trí an toàn (về Home –
G28). - Tắt trục chính (
M05), tắt tưới nguội (M09). - Kết thúc chương trình (
M30).
Hướng dẫn viết chương trình tiện CNC (5 Bước chi tiết)
Đây là quy trình cốt lõi mà các kỹ sư tại Minh Triệu áp dụng để đảm bảo độ chính xác tuyệt đối.
Bước 1: Đọc và phân tích bản vẽ kỹ thuật
Mọi thứ đều bắt đầu từ bản vẽ. Bạn phải phân tích kỹ:
- Vật liệu phôi: Thép, nhôm, inox hay đồng? Điều này quyết định chế độ cắt (S, F) và loại dao.
- Hình dạng và Kích thước: Xác định các biên dạng cần gia công (tiện trụ, tiện côn, tiện mặt, tiện ren…).
- Yêu cầu kỹ thuật: Quan trọng nhất là dung sai (độ chính xác) và độ nhám bề mặt (độ bóng).
Bước 2: Lập kế hoạch quy trình gia công
Từ bản vẽ, bạn phải vạch ra chiến lược gia công:
- Thứ tự các bước (Nguyên công):
- Tiện thô (Roughing): Bóc đi phần lớn vật liệu thừa một cách nhanh chóng.
- Tiện tinh (Finishing): Cắt lớp vật liệu cuối cùng để đạt kích thước và độ bóng mong muốn.
- Các nguyên công phụ: Tiện rãnh (Grooving), Tiện ren (Threading), Khoan…
- Lựa chọn dao cụ (Tooling): Chọn dao tiện thô, dao tiện tinh, dao tiện rãnh… phù hợp với vật liệu và biên dạng.
Bước 3: Thiết lập Gốc phôi và Bù dao (Offset)
Đây là bước thao tác trên máy. Trước khi chạy chương trình, máy phải “biết”:
- Gốc phôi (G54): Phôi đang nằm ở đâu? Kỹ sư sẽ “set” gốc tọa độ, thường là
Z0tại mặt đầu phôi vàX0tại tâm phôi. - Bù dao (Tool Offset): Mũi dao của bạn dài/ngắn, to/nhỏ thế nào? Kỹ sư sẽ đo và nhập thông số bù trừ chiều dài (Length) và bán kính (Radius) của từng dao vào bộ nhớ của máy.
Bước 4: Viết chương trình (Code)
Đây là lúc kết hợp tất cả kiến thức G-code, M-code và thông số S, F, T. Thay vì viết từng dòng lệnh G01 (sẽ rất dài), các kỹ sư chuyên nghiệp sử dụng các chu trình tiện CNC tự động.
- G71: Chu trình tiện thô theo biên dạng
- Đây là chu trình mạnh mẽ nhất. Bạn chỉ cần định nghĩa biên dạng hoàn thiện của chi tiết, và
G71sẽ tự động tính toán các lớp cắt thô để bóc vật liệu. - Cú pháp cơ bản:
G71 U... R... G71 P... Q... U... W... F...P,Q: Số thứ tự dòng lệnh bắt đầu và kết thúc của biên dạng.U,W: Lượng dư chừa lại cho tiện tinh (theo trục X và Z).
- Đây là chu trình mạnh mẽ nhất. Bạn chỉ cần định nghĩa biên dạng hoàn thiện của chi tiết, và
- G70: Chu trình tiện tinh
- Sau khi chạy
G71, bạn chỉ cần gọiG70để thực hiện một đường cắt tinh cuối cùng. - Cú pháp:
G70 P... Q... F...(sử dụng lại P và Q đã định nghĩa ở G71).
- Sau khi chạy
- G76: Chu trình tiện ren
- Chu trình phức tạp này cho phép bạn tiện ren chỉ trong một khối lệnh, tự động tính toán số lần cắt và chiều sâu cắt. Bạn chỉ cần khai báo bước ren (F), chiều sâu ren, góc ren…
Bước 5: Mô phỏng (Simulation) và Hiệu chỉnh
Đây là bước quan trọng nhất về an toàn và chất lượng. Không bao giờ chạy một chương trình mới mà không mô phỏng.
- Sử dụng phần mềm mô phỏng (nếu có) hoặc chế độ
Graphictrên máy CNC để xem đường chạy dao. - Kiểm tra lỗi va chạm (crash), sai biên dạng.
- Thực hiện “Dry Run” (chạy không tải, không có phôi) và “Single Block” (chạy từng dòng lệnh) để kiểm tra lần cuối.
Ví dụ chương trình tiện CNC mẫu (Tiện trụ bậc đơn giản)
Giả sử chúng ta cần tiện một phôi trụ Ø55mm thành một chi tiết 2 bậc: bậc 1 Ø20mm dài 30mm và bậc 2 Ø50mm dài 50mm (tổng dài).
%
O0001 (VI DU TIEN TRU BAC - MINH TRIEU)
(BLOCK 1: KHOI TAO VA GOI DAO THO T01)
N10 G21 G99 G40 G80 (CAC LENH AN TOAN)
N20 T0101 (GOI DAO SO 1 - DAO TIEN THO)
N30 G96 S200 M03 (TOC DO CAT KHONG DOI 200 M/PHUT, TRUC CHINH QUAY THUAN)
N40 G54 G00 X55.0 Z2.0 M08 (GOI G54, DI CHUYEN NHANH DEN VI TRI AN TOAN, BAT TUOI NGUOI)
(BLOCK 2: CHU TRINH TIEN THO G71)
N50 G71 U1.0 R0.5 (TIEN THO, MOI LAT CAT SAU 1MM, LUI DAO 0.5MM)
N60 G71 P70 Q95 U0.2 W0.1 F0.2 (BIEN DANG TU N70-N95, CHUA TINH 0.2(X) VA 0.1(Z), FEED 0.2)
N70 G00 X20.0 (BAT DAU BIEN DANG TU X20)
N80 G01 Z-30.0 (TIEN THANG DEN Z-30)
N90 G01 X50.0 Z-50.0 (TIEN CON LEN X50, Z-50)
N95 G01 X52.0 (THOAT DAO)
(BLOCK 3: CHU TRINH TIEN TINH G70)
N100 T0202 (GOI DAO SO 2 - DAO TIEN TINH)
N110 G96 S250 M03 (TANG TOC DO CAT CHO TINH)
N120 G54 G00 X55.0 Z2.0 M08
N130 G70 P70 Q95 F0.1 (GOI CHU TRINH TIEN TINH THEO BIEN DANG N70-N95, FEED 0.1)
(BLOCK 4: KET THUC CHUONG TRINH)
N140 G00 X100.0 Z100.0 M09 (LUI DAO VE VI TRI AN TOAN, TAT TUOI NGUOI)
N150 M05 (DUNG TRUC CHINH)
N160 M30 (KET THUC CHUONG TRINH, RESET)
%
Giải thích ví dụ:
N10 - N40: Khối cài đặt ban đầu, gọi dao thô T01.N50 - N60: Gọi chu trình tiện thô G71. Yêu cầu máy tiện biên dạng được định nghĩa từ dòngN70đếnN95, chừa lạiU0.2(trên đường kính X) vàW0.1(trên mặt Z) để tiện tinh.N70 - N95: Định nghĩa biên dạng hoàn thiện của chi tiết.N100 - N130: Thay dao tinh T02 và gọi chu trình tiện tinh G70. Máy sẽ tự động chạy 1 đường cắt duy nhất bám theo biên dạngN70-N95để gia công đúng kích thước.N140 - N160: Kết thúc, đưa dao về vị trí an toàn.
Những lỗi thường gặp và mẹo để viết chương trình hiệu quả
Viết chương trình không tránh khỏi sai sót, đặc biệt là khi mới bắt đầu. Dưới đây là các lỗi phổ biến:
- Quên bù trừ bán kính mũi dao (G41/G42): Khi tiện tinh các góc lượn hoặc mặt côn, nếu không bù dao, kích thước sẽ bị sai.
- Tính toán sai Gốc tọa độ (G54): Chỉ cần set gốc Z sai 1mm, toàn bộ chi tiết sẽ sai 1mm về chiều dài.
- Va chạm do
G00(Chạy nhanh): Luôn đảm bảo lệnhG00chỉ được thực hiện ở một vị trí an toàn, cách xa phôi. - Sai chiều quay M03/M04: Dùng sai chiều quay sẽ làm hỏng dao hoặc không cắt được.
Mẹo để viết code hiệu quả:
- Luôn dùng lệnh an toàn: Bắt đầu chương trình bằng
G40,G80,G99. - Viết chú thích rõ ràng: Sử dụng dấu ngoặc
(...)để ghi chú bạn đang làm gì ở khối lệnh đó. Điều này cực kỳ hữu ích khi bạn hoặc người khác đọc lại. - Ưu tiên các chu trình (G70, G71, G76): Đừng lãng phí thời gian viết
G01cho các thao tác lặp đi lặp lại. Các chu trình nhanh hơn, ít lỗi hơn và dễ chỉnh sửa hơn.
Câu hỏi thường gặp (FAQ)
Lập trình CNC có khó không?
Lập trình CNC đòi hỏi sự tỉ mỉ và kiến thức nền tảng vững chắc. Giống như học một ngôn ngữ mới, ban đầu sẽ có chút bỡ ngỡ với các mã lệnh G-code và M-code, nhưng khi bạn hiểu được logic và cấu trúc, nó sẽ trở nên dễ dàng hơn. Thực hành và mô phỏng thường xuyên là chìa khóa để thành thạo.
Cần phần mềm gì để viết chương trình tiện CNC?
Bạn có thể viết chương trình CNC đơn giản bằng bất kỳ trình soạn thảo văn bản nào (như Notepad). Tuy nhiên, các kỹ sư chuyên nghiệp thường sử dụng phần mềm CAM (Computer-Aided Manufacturing) như Mastercam, SolidCAM, Fusion 360… Các phần mềm này cho phép bạn lập trình trực quan trên mô hình 3D và tự động xuất ra G-code, giúp giảm thiểu sai sót.
Sự khác biệt chính giữa G96 và G97 là gì?
G97(Tốc độ trục chính không đổi): Bạn cài đặt trục chính quaySvòng/phút (RPM). Ví dụG97 S1000nghĩa là trục chính luôn quay 1000 vòng/phút, bất kể dao đang ở đường kính nào. Thường dùng khi khoan, taro, tiện ren.G96(Tốc độ cắt bề mặt không đổi): Bạn cài đặt tốc độ cắtS(m/phút). Máy sẽ tự động điều chỉnh số vòng/phút (RPM) dựa trên vị trí của dao. Khi dao đi vào tâm (đường kính X nhỏ), trục chính sẽ quay nhanh hơn và khi dao đi ra xa (đường kính X lớn), trục chính quay chậm lại. Điều này đảm bảo độ bóng bề mặt đồng đều, rất quan trọng khi tiện mặt và tiện tinh.
Tại sao phải mô phỏng chương trình trước khi chạy thật?
Mô phỏng là bước kiểm tra an toàn và chất lượng bắt buộc. Nó giúp bạn:
- Phát hiện va chạm (Crash): Thấy trước các lỗi di chuyển dao có thể đâm vào phôi, mâm cặp hoặc các bộ phận khác của máy.
- Kiểm tra biên dạng: Đảm bảo đường chạy dao tạo ra chi tiết đúng với bản vẽ, không bị cắt hụt hoặc cắt lẹm.
- Tiết kiệm chi phí: Tránh làm hỏng dao, hỏng phôi hoặc hỏng máy, giúp tiết kiệm rất nhiều chi phí sửa chữa và vật liệu.
Kết luận
Lập trình tiện CNC là một kỹ năng quan trọng, kết hợp giữa kiến thức kỹ thuật chính xác và kinh nghiệm thực tiễn. Việc hiểu rõ cấu trúc, các mã lệnh cơ bản và các chu trình tự động là chìa khóa để bạn làm chủ công nghệ này. Hãy bắt đầu bằng việc đọc hiểu các chương trình mẫu, mô phỏng cẩn thận và thực hành trên máy.
Việc lập trình và vận hành CNC đòi hỏi sự chính xác tuyệt đối ở mọi công đoạn. Tại Minh Triệu, chúng tôi hiểu rõ từng dòng lệnh, từng thông số kỹ thuật để tạo ra các sản phẩm gia công cơ khí chính xác theo yêu cầu hoàn hảo, đáp ứng những yêu cầu khắt khe nhất của khách hàng.
Nếu bạn đang tìm kiếm một công ty gia công cơ khí chính xác uy tín, có chuyên môn sâu về CNC hoặc cần tư vấn về các giải pháp tự động hóa phức tạp cho nhà máy của mình, hãy liên hệ ngay với chúng tôi!
CÔNG TY TNHH THƯƠNG MẠI VÀ SẢN XUẤT MINH TRIỆU
Chuyên gia Gia Công Cơ Khí Chính Xác & Giải Pháp Tự Động Hóa Nhà Máy
- Hotline/Whatsapp/Line: +84 886 151 688
- Email: business@minhtrieu.vn
- Nhà máy: Số 3, lô 5, Khu Công Nghiệp Lai Xá, Kim Chung, Hoài Đức, Hà Nội
- Văn phòng: 52/346 Thiên Lôi, Vĩnh Niệm, Lê Chân, Hải Phòng

Chức vụ: Kỹ sư bán hàng (Sales Engineer)
Với hơn 15 năm kinh nghiệm trong lĩnh vực tư vấn và triển khai các giải pháp tự động hóa, gia công cơ khí chính xác cho các doanh nghiệp trong và ngoài nước, tôi luôn tâm niệm mang đến những hệ thống không chỉ mạnh mẽ về công nghệ mà còn phải thực sự phù hợp với thực tế sản xuất và ngân sách của khách hàng. Tôi tin rằng, sự thành công của khách hàng chính là thước đo chính xác nhất cho giá trị của một giải pháp kỹ thuật.
