Chuyển đến nội dung chính
CƠ KHÍ.NET
CAD – CAM – CAE

Bù bán kính dao trên máy và bù trong CAM: ai tính quỹ đạo và ai chịu trách nhiệm khi dao mòn

Nguyễn Đỗ Tùng

Biên soạn có hỗ trợ công cụ · nguồn dẫn kèm · cập nhật

Bù bán kính dao trong CAM: phần mềm tính sẵn đường tâm dao theo đường kính dao đã khai, rồi xuất thẳng đường đã bù ra chương trình. Bù trên máy: chương trình giữ nguyên biên dạng, kèm lệnh bù trái hoặc phải, và bộ điều khiển tự dịch đường chạy theo trị số thợ nhập vào bảng dao.

Kết luận trên đúng khi phay biên dạng hai chiều với dao trụ, và khi bộ điều khiển của máy nhận lệnh bù bán kính dao. Nguồn đã kiểm là tài liệu hướng dẫn của Autodesk cho phía CAM, tài liệu G-code của LinuxCNC và trang mã lệnh của Tormach cho phía máy. Bài chỉ lấy câu cơ chế, không so sánh phần mềm và không lấy tên phần mềm làm tiêu chí. Tên biến số của từng dòng bộ điều khiển có thể khác; bài nêu nguyên tắc chung.

Bảng đối chiếu bù dao trên máy và bù dao trong CAM

Tiêu chíBù trong CAM (tính sẵn trong máy tính)Bù trên máy (bộ điều khiển tính)
Ai tính quỹ đạoCAM tự tính theo đường kính dao đã chọn [1]Không tính trong chương trình; bộ điều khiển dịch đường chạy theo bảng dao [1][2]
Chương trình xuất ra chứa gìĐường đã bù trực tiếp, thay cho mã G41/G42 [1]Mã G41/G42 để thợ đặt lượng bù và mòn tại bộ điều khiển [1]
Nguồn trị số bùĐường kính dao khai trong CAM [1]Dữ liệu bảng dao; đặt được lúc chạy bằng G10 L1 [2]; số dao gắn với lượng bù đường kính khai bằng địa chỉ D [3]
Lập trình có cần biết đúng đường kính daoCó, vì đường đã bù tính theo đường kính đã chọn [1]Không, người lập trình lập được đường chạy mà chưa biết đường kính dao chính xác [2]
Chọn bên bùĐặt đường chạy ra ngoài, vào trong, hoặc nằm đúng trên biên dạng đã chọn [1]Bù bên trái hay bên phải đường, nhìn theo chiều chuyển động của dao [2]; G41 là bên trái, G42 là bên phải [2]
Xử lý dao mònChế độ mòn: vẫn xuất mã G41/G42 để thợ chỉnh mòn tại bộ điều khiển bằng chênh lệch kích thước dao nhập dưới dạng số âm [1]; chế độ ngược lại nhập số dương [1]Thợ nhập trị số bù và mòn ngay tại bộ điều khiển [1]
Đoạn dẫn vàoNguồn không nêu ràng buộc riêngPhải dài ít nhất bằng bán kính dao lớn nhất có thể dùng [2]; ít nhất bằng bán kính dao, được phép là hành trình chạy nhanh [3]
Điểm cuối mỗi hành trìnhNguồn không soPhụ thuộc hành trình kế tiếp: góc ngoài thì chạy tới điểm cuối của đường đã bù, góc trong thì dừng sớm để không cắt lẹm vào chi tiết [2]
Lỗi hay gặp được nguồn liệt kêNguồn không soSố dao không hợp lệ hoặc bằng không; bật bù khi bù đang bật; hành trình thẳng sau khi tắt bù ngắn hơn hai lần bán kính mũi dao [3]
Phạm vi áp dụng của bù trên bộ điều khiểnTài liệu ghi bù trên bộ điều khiển, kể cả hai chế độ mòn, chỉ áp cho lượt phay tinh [1]Xem ô bên trái [1]
Xem trước trên màn hìnhBản xem trước là đường chưa bù; chế độ mô phỏng và kiểm tra mới hiện đường đã bù như máy sẽ chạy [1]Đường thật chỉ hiện ra khi máy chạy [1]

Nguồn [1]–[3] ghi ở khối "Nguồn và giới hạn", tra ngày 12/09/2026. Các mã lệnh nêu trong bảng là mã theo tài liệu của LinuxCNC và Tormach; dòng bộ điều khiển khác có thể khai báo khác.

Hai chỗ khác nhau: ai tính, và cái gì nằm trong tệp chương trình

Autodesk mô tả bù bán kính dao là việc dời đường chạy dao ra ngoài, vào trong, hoặc để nằm đúng trên biên dạng đã chọn [1]. Điều đáng nói là tài liệu này tách rõ ai làm việc đó. Ở chế độ tính trong máy tính, bù được CAM tự tính theo đường kính dao đã chọn, và chương trình sau xử lý chứa thẳng đường đã bù, thay cho mã G41/G42 [1]. Ở chế độ bù trên bộ điều khiển, bù không được tính, mà mã G41/G42 được xuất ra để người vận hành đặt lượng bù và mòn tại bộ điều khiển của máy [1].

Phía máy, LinuxCNC nêu đúng lợi ích của cách thứ hai bằng một câu: bù bán kính dao cho phép người lập trình lập đường chạy dao mà không cần biết đường kính dao chính xác [2]. Trị số lấy từ đâu cũng được nói rõ: bù dùng dữ liệu trong bảng dao để xác định lượng dịch cần thiết, và dữ liệu đó đặt được lúc chạy bằng G10 L1 [2]. Tormach mô tả cùng cơ chế theo địa chỉ lệnh: địa chỉ D là số dao gắn với lượng bù đường kính sẽ áp dụng [3], và từ D là tuỳ chọn [3] — nếu không có dao nào được gọi và cũng không có từ D thì bán kính dùng bằng không [3].

Cách hiểu của bài: hai cách bù đặt cùng một phép tính ở hai chỗ khác nhau trong dây chuyền, nên chúng cũng đặt trách nhiệm ở hai chỗ khác nhau. Đường đã bù nằm sẵn trong tệp thì tệp đó gắn với đúng cỡ dao đã khai; còn biên dạng nằm trong tệp thì tệp đó dùng lại được, nhưng mỗi lần chạy phụ thuộc trị số ai đó đã nhập vào bảng dao. Nguồn đã kiểm không so hai cách theo dung sai đạt được, nên bài không gán số cho so sánh này.

Có một chi tiết về màn hình đáng nhớ: Autodesk ghi bản xem trước đường chạy dao luôn là đường đã tính chưa bù, còn chế độ mô phỏng và kiểm tra mới hiện đường đã bù đúng như máy sẽ chạy [1]. Người kiểm chương trình nhìn nhầm chỗ này rất dễ kết luận sai. Cấu trúc một chương trình NC và ý nghĩa các mã nằm ở G-code là gì; bảng tra mã theo chuẩn một hãng điều khiển ở bảng tra G-code chuẩn FANUC.

Dao mòn: chỗ hai cách bù tách hẳn nhau

Tài liệu của Autodesk còn hai chế độ trung gian mà nhiều người bỏ qua. Chế độ mòn giống chế độ tính trong máy tính, nhưng vẫn xuất kèm mã G41/G42; nhờ đó người vận hành chỉnh được phần mòn dao ngay tại bộ điều khiển bằng cách nhập chênh lệch kích thước dao dưới dạng số âm [1]. Chế độ mòn ngược lại giống hệt, chỉ khác là lượng chỉnh nhập dưới dạng số dương [1]. Và chế độ tắt thì không bù gì cả, tâm dao chạy đúng theo hình học đã chọn [1].

Đây là chỗ quyết định khi chi tiết đang bị sai kích thước dần theo số lượng. Nếu chương trình đã nhúng đường bù mà không có mã bù, người đứng máy không có chỗ nào để chỉnh; còn nếu có mã bù, thợ đổi một trị số trong bảng dao là xong lượt sau. Dấu hiệu mòn và lúc phải thay dao nằm ở tuổi bền dao và mòn dao; cách kiểm kích thước theo lô ở kiểm soát dung sai trong gia công CNC.

Một ràng buộc phạm vi cần nhớ: tài liệu ghi bù trên bộ điều khiển, kể cả hai chế độ mòn, chỉ được áp cho các lượt phay tinh [1]. Nghĩa là lượt phá thô trong cùng chương trình vẫn đi theo đường đã tính sẵn.

Cái giá của bù trên bộ điều khiển: hình học đoạn dẫn vào

Bù trên máy đòi hình học chương trình phải chừa chỗ cho chính phép dịch đó. LinuxCNC nêu điều kiện duy nhất: người lập trình phải lập đoạn dẫn vào dài ít nhất bằng bán kính dao lớn nhất có thể dùng [2]; hành trình nào đủ dài để thực hiện phép bù đều làm được đoạn dẫn vào, và chiều dài nhỏ nhất là bán kính dao [2]. Tormach ghi cùng điều kiện và thêm một chi tiết tiện dụng: đoạn dẫn vào phải dài ít nhất bằng bán kính dao, và được phép là hành trình chạy nhanh [3].

Hệ quả hình học của đoạn dẫn vào cũng được LinuxCNC nói thẳng: nếu lập một biên dạng mà điểm kết thúc nằm ở gốc, biên dạng thu được sẽ để lại một vết u do chính đoạn dẫn vào đã bị bù [2]. Đó là lỗi rất khó đọc ra từ chương trình, chỉ hiện lên trên chi tiết.

Phần xử lý góc cũng do bộ điều khiển lo: LinuxCNC ghi điểm cuối của mỗi hành trình phụ thuộc hành trình kế tiếp — nếu hành trình sau tạo góc ngoài thì dao chạy tới điểm cuối của đường cắt đã bù, còn nếu tạo góc trong thì hành trình dừng sớm để không cắt lẹm vào chi tiết [2]. Danh sách lỗi mà Tormach liệt kê cho thấy phần còn lại người lập trình phải giữ: số dao không hợp lệ hoặc bằng không; bật bù trong khi bù đang bật; và hành trình thẳng ngay sau khi tắt bù ngắn hơn hai lần bán kính mũi dao [3]. LinuxCNC thêm một thói quen đơn giản: mở đầu chương trình bằng lệnh tắt bù để chắc chắn bù đang tắt [2].

Ba mẹo sai hay gặp

Mẹo sai 1: "Bù trong CAM và bù trên máy là hai cách gọi của một việc." Autodesk tách rõ hai chế độ: tính trong máy tính thì chương trình chứa thẳng đường đã bù, thay cho mã G41/G42; bù trên bộ điều khiển thì không tính, mà xuất mã G41/G42 để người vận hành đặt lượng bù và mòn tại máy [1]. Hai chế độ ra hai tệp chương trình khác nhau.

Mẹo sai 2: "Dao mòn thì phải sửa lại chương trình." Với chế độ mòn, Autodesk ghi mã G41/G42 vẫn được xuất ra để người vận hành chỉnh mòn dao tại bộ điều khiển bằng chênh lệch kích thước dao nhập dưới dạng số âm [1], hoặc số dương ở chế độ ngược lại [1]. Chương trình giữ nguyên.

Mẹo sai 3: "Bật bù rồi thì máy lo hết." Hình học chương trình vẫn phải chừa chỗ: đoạn dẫn vào dài ít nhất bằng bán kính dao lớn nhất có thể dùng [2], và Tormach ghi cùng điều kiện [3]. LinuxCNC còn nêu vết u để lại trên biên dạng do chính đoạn dẫn vào bị bù [2].

Bảng quyết định: thấy gì ở xưởng thì chọn cách bù nào

Thấy hoặc đo được tại xưởngLàm gìCăn cứ
Đo chi tiết thấy kích thước biên dạng trôi dần theo số lượngChọn cách có mã bù để thợ chỉnh tại máyChế độ mòn cho phép chỉnh mòn tại bộ điều khiển bằng chênh lệch kích thước dao [1]
Dao thực lắp lên máy không đúng đường kính danh nghĩaChọn cách có mã bù, nhập đường kính đo được vào bảng daoLập được đường chạy mà chưa biết đường kính dao chính xác [2]; bảng dao quyết định lượng dịch [2]
Chương trình chỉ chạy một lần, dao đã đo và còn mớiBù tính sẵn trong máy tính là đủBù tính tự động theo đường kính dao đã chọn, chương trình chứa đường đã bù [1]
Dựng thử thấy đoạn dẫn vào ngắn hơn bán kính daoKéo dài đoạn dẫn vào trước khi bật bùĐoạn dẫn vào dài ít nhất bằng bán kính dao lớn nhất có thể dùng [2][3]
Biên dạng có vết u đúng chỗ dao vàoXem lại đoạn dẫn vào, không đổ ngay cho daoBiên dạng để lại vết u do đoạn dẫn vào bị bù [2]
Máy báo lỗi ngay khi gọi lệnh bùKiểm số dao và trạng thái bù hiện tạiSố dao không hợp lệ hoặc bằng không; bật bù khi bù đang bật [3]
Máy báo lỗi sau lệnh tắt bùKiểm chiều dài hành trình thẳng ngay sau đóHành trình thẳng sau khi tắt bù ngắn hơn hai lần bán kính mũi dao [3]
Chương trình có cả lượt phá thô lẫn lượt tinhKhông kỳ vọng bù trên bộ điều khiển áp cho lượt thôBù trên bộ điều khiển, kể cả hai chế độ mòn, chỉ áp cho lượt phay tinh [1]
Kiểm đường chạy trên màn hình trước khi chạyXem ở chế độ mô phỏng, không xem bản xem trướcBản xem trước là đường chưa bù; mô phỏng và kiểm tra mới hiện đường đã bù [1]
Không rõ chương trình đang ở trạng thái bù nàoMở đầu chương trình bằng lệnh tắt bùThói quen tốt: bắt đầu bằng lệnh tắt bù để chắc chắn bù đang tắt [2]

Nguồn và giới hạn

Tra ngày 12/09/2026. Mã HTTP lấy bằng curl không theo chuyển hướng; câu dẫn đối chiếu lại trên chính bản tải về.

Bảng này không dùng cho:

  • So sánh hay chọn phần mềm CAM: bài không so, không lấy tên phần mềm làm tiêu chí.
  • Cú pháp và tên biến số của một dòng bộ điều khiển cụ thể: bài nêu nguyên tắc chung theo tài liệu đã dẫn.
  • Dung sai đạt được của từng cách bù: nguồn đã kiểm không cho số.
  • Bù chiều dài dao, bù mũi dao tiện, bù ba chiều cho mặt cong: nguồn dẫn ở đây nói về bù bán kính khi phay biên dạng.
  • Quy trình đo dao và nhập bảng dao trên máy: chưa kiểm.

Không xác định được từ bài này: trị số bù đang nằm trong bảng dao của máy cụ thể — phải đo dao và đọc bảng tại máy; và cách bù nào cho dung sai tốt hơn, vì nguồn không so hai cách theo kết quả đo.

Cần chính xác hơn: đọc cấu trúc chương trình và các mã liên quan ở bảng tra G-code chuẩn FANUC; phần dựng đường chạy dao từ mô hình ở nguyên lý lập trình CAM.

Câu hỏi thường gặp

Bù bán kính dao là gì? Theo Autodesk, đó là việc dời đường chạy dao ra ngoài, vào trong, hoặc để nằm đúng trên biên dạng đã chọn. LinuxCNC nêu lợi ích phía máy: người lập trình lập được đường chạy dao mà không cần biết đường kính dao chính xác.

Bù trong CAM khác bù trên máy ở chỗ nào? Autodesk ghi chế độ tính trong máy tính cho CAM tự tính theo đường kính dao đã chọn và chương trình chứa thẳng đường đã bù, thay cho mã G41/G42; còn chế độ bù trên bộ điều khiển thì không tính, mà xuất mã G41/G42 để người vận hành đặt lượng bù và mòn tại máy [1].

G41 và G42 khác nhau thế nào? LinuxCNC giải thích theo hướng nhìn từ phía sau dao, theo chiều dao chạy: G41 là bên trái đường, G42 là bên phải đường [2]. Cùng nguồn nêu có hai đường dao đi được vì bù đặt được ở bên trái hoặc bên phải.

Đoạn dẫn vào phải dài bao nhiêu? LinuxCNC ghi phải ít nhất bằng bán kính dao lớn nhất có thể dùng, và hành trình nào đủ dài đều làm được đoạn dẫn vào, với chiều dài nhỏ nhất là bán kính dao [2]. Tormach ghi cùng điều kiện và cho phép đoạn đó là hành trình chạy nhanh [3].

Dao mòn thì chỉnh ở đâu? Autodesk ghi chế độ mòn vẫn xuất mã G41/G42 để người vận hành chỉnh mòn tại bộ điều khiển bằng cách nhập chênh lệch kích thước dao dưới dạng số âm, còn chế độ ngược lại nhập số dương [1]. Chương trình không phải sinh lại.

Vì sao biên dạng có một vết u ở chỗ dao vào? LinuxCNC nêu đúng tình huống này: nếu lập biên dạng mà điểm kết thúc nằm ở gốc, biên dạng thu được sẽ để lại một vết u do chính đoạn dẫn vào đã bị bù [2]. Đây là lỗi hình học chương trình, không phải lỗi dao.

Bù trên bộ điều khiển có áp cho lượt phá thô không? Tài liệu của Autodesk ghi bù trên bộ điều khiển, kể cả hai chế độ mòn, chỉ được áp cho các lượt phay tinh [1]. Lượt thô trong cùng chương trình vẫn đi theo đường đã tính sẵn.

Đọc tiếp

Thuộc chuyên trang: CAD – CAM – CAELập trình CAM