Người mới đứng máy CNC hay bị rối ở một chỗ: màn hình có tới mấy cột tọa độ, MACHINE, ABSOLUTE, RELATIVE, rồi bảng WORK OFFSET với G54, G55… Con số nào mới là vị trí thật của dao? Hiểu sai chỗ này là chuyện rất nguy hiểm. Chương trình đúng từng dòng vẫn có thể đâm dao vào ê tô, chỉ vì máy đang chạy theo một gốc tọa độ khác.
Bài này giải thích hai khái niệm nền tảng: hệ tọa độ máy và hệ tọa độ phôi. Ví dụ và mã lệnh viết cho bộ điều khiển Fanuc. Nếu anh em mới làm quen với G-code, nên đọc trước bài G-code là gì?.
Hệ tọa độ máy là gì?
Mỗi máy CNC có một điểm gốc cố định do nhà sản xuất đặt, gọi là gốc máy (machine zero, machine home). Trên đa số máy phay đứng, gốc máy nằm ở vị trí trục Z lên cao nhất, còn X, Y ở một góc hành trình. Vị trí này không đổi khi thay phôi hay thay chương trình.
Tọa độ đo từ gốc máy gọi là tọa độ máy, hiện ở cột MACHINE trên màn hình. Vì gốc máy thường ở cuối hành trình, phần lớn tọa độ máy khi làm việc là số âm, ví dụ X-350. Y-210.
Với máy dùng encoder tương đối, sau khi bật nguồn phải chạy về gốc (reference return) thì máy mới biết mình đang ở đâu. Máy dùng encoder tuyệt đối thì nhớ vị trí, không cần về gốc mỗi lần mở máy. Máy nhà anh thuộc loại nào thì xem sổ tay máy.
Lệnh G53: chạy theo tọa độ máy
G53 bảo máy hiểu tọa độ trong dòng lệnh đó là tọa độ máy. Trên Fanuc, G53 là lệnh một lần (không modal): chỉ có tác dụng trong đúng dòng chứa nó. Nó cũng chỉ dùng được ở chế độ tuyệt đối G90; ở G91 lệnh G53 bị bỏ qua.
Câu lệnh hay gặp nhất là G53 G00 Z0.: rút trục Z về gốc máy, tức là lên cao nhất, trước khi thay dao hoặc kết thúc chương trình. Lệnh này không phụ thuộc phôi kẹp ở đâu, nên rất an toàn để rút dao.
Hệ tọa độ phôi là gì?
Người lập trình không thể viết chương trình theo tọa độ máy. Phôi mỗi lần kẹp lệch đi một chút, nên tọa độ máy của các lỗ cũng thay đổi. Vì vậy ta chọn một điểm trên phôi làm gốc, thường là góc phôi, tâm phôi hoặc tâm một lỗ chuẩn trên bản vẽ. Mọi kích thước trong chương trình tính từ điểm đó. Đó là gốc phôi (work zero).
Việc còn lại là cho máy biết gốc phôi nằm ở đâu so với gốc máy. Khoảng cách này gọi là offset phôi và được nhập vào bảng G54–G59.
Máy tính vị trí dao như thế nào?
Với trục X và Y, có thể hiểu đơn giản:
Tọa độ máy = Offset phôi + Tọa độ trong chương trình
Ví dụ: bảng G54 ghi X-350.000, Y-210.000. Chương trình gọi G54 G00 X40. Y25.. Máy sẽ chạy tới tọa độ máy X = -350 + 40 = -310, Y = -210 + 25 = -185. Màn hình cột ABSOLUTE hiện X40. Y25., cột MACHINE hiện X-310. Y-185.
Trên Fanuc còn có dòng EXT (hoặc số 00) ở đầu bảng offset. Giá trị ở đây được cộng thêm vào tất cả G54–G59. Bình thường nên để EXT bằng 0, trừ khi xưởng có quy ước riêng. Trục Z còn liên quan tới bù chiều dài dao G43, tôi sẽ viết riêng ở bài sau.
G54 đến G59: sáu hệ tọa độ phôi
Fanuc có sẵn 6 hệ tọa độ phôi từ G54 đến G59. Chúng là lệnh modal: gọi G55 một lần thì máy dùng G55 cho tới khi gặp lệnh chọn hệ khác. Khi bật máy hoặc reset, thông thường máy về G54 (tùy tham số).
Nhiều hệ tọa độ giúp chạy nhiều phôi trong một lần gá. Ví dụ kẹp 2 ê tô trên bàn: phôi 1 dùng G54, phôi 2 dùng G55. Chương trình cho mỗi phôi giống hệt nhau, chỉ khác dòng chọn hệ tọa độ.
| Lệnh | Ý nghĩa | Kiểu lệnh (Fanuc) | Dùng khi |
|---|---|---|---|
G53 | Chạy theo tọa độ máy | Một lần (one-shot) | Rút Z về gốc, đưa bàn ra vị trí thay phôi |
G54–G59 | 6 hệ tọa độ phôi chuẩn | Modal | Gia công 1 đến 6 phôi/đồ gá |
G54.1 P1–P48 | Hệ tọa độ phôi mở rộng | Modal, là tùy chọn | Đồ gá nhiều phôi, cần hơn 6 gốc |
EXT (00) | Dịch chung cho mọi hệ | Giá trị trong bảng offset | Bù lệch chung, thường để 0 |
G92 | Đặt lại gốc theo vị trí dao hiện tại | Modal, dễ gây nhầm | Hạn chế dùng trên máy phay |
Số hệ mở rộng G54.1 tùy vào tùy chọn đã mua (48 hoặc 300 hệ). Còn G92 là cách đặt gốc kiểu cũ: nó lấy vị trí dao hiện tại làm mốc. Nếu dao không đứng đúng chỗ lúc chạy dòng đó, cả chương trình lệch theo. Trên máy phay, nên dùng G54–G59 thay cho G92.
Ví dụ chương trình: khoan định tâm 2 phôi bằng G54 và G55
Hai phôi giống nhau, mỗi phôi kẹp trên một ê tô. Gốc phôi đặt ở góc trái phía trước, Z0 ở mặt trên phôi. Cần khoan định tâm 2 điểm X10. Y10. và X50. Y10., sâu 2 mm, trên cả hai phôi.
Một số điểm cần để ý trong chương trình:
- Dòng đầu
G21 G17 G40 G49 G80 G90đưa máy về trạng thái an toàn, không phụ thuộc chương trình chạy trước đó. G43 H01 Z50.bật bù chiều dài dao 1 khi dao còn ở trên cao. Số H phải đúng với số dao.- Dao chạy nhanh G00 chỉ xuống tới Z5., cách mặt phôi 5 mm. Phần ăn vào phôi dùng
G01có lượng chạy dao F. - Trước khi đổi từ G54 sang G55, dao được rút lên Z50. Nếu hai ê tô cao khác nhau, giá trị Z50. ở G55 sẽ ở độ cao khác. Rút lên cao trước là thói quen nên giữ.
- Cuối chương trình dùng
G53 G00 Z0.để rút Z về gốc máy, sau đó trả về G54 để chương trình sau không bị chạy nhầm hệ G55.
Muốn biết cách đo và nhập giá trị G54 cho X, Y bằng dao dò cạnh hay đồng hồ so, anh em đợi bài tiếp theo. Nếu nhờ AI viết chương trình kiểu này, nhớ đọc bài Nhờ AI viết và kiểm tra G-code để biết AI hay sai chỗ nào.
Những lỗi tọa độ hay gặp
- Đo gốc vào G54 nhưng chương trình gọi G55. Máy chạy theo một gốc khác hẳn. Trước khi chạy, so dòng chọn hệ tọa độ trong chương trình với hệ vừa đo.
- Nhập offset sai dấu. Tọa độ máy thường âm. Gõ thiếu dấu trừ là dao chạy ra ngoài phôi, có khi đâm vào đồ gá.
- Nhập vào sai dòng. Nhập giá trị vào dòng EXT thay vì G54 sẽ làm lệch mọi hệ tọa độ cùng lúc.
- Quên trả về G54 cuối chương trình. Chạy chương trình sau mà không có dòng chọn hệ, máy vẫn dùng hệ cũ.
- Dùng G53 trong chế độ G91. Trên Fanuc lệnh bị bỏ qua, dao không rút lên như mong muốn.
Một lưu ý cho xưởng dùng nhiều hãng máy: Okuma OSP không chọn hệ tọa độ phôi bằng G54–G59 như Fanuc mà dùng G15 H1, G15 H2… Xưởng tôi có cả trung tâm gia công Okuma và Matsuura, nên chương trình luôn phải ghi rõ viết cho bộ điều khiển nào. Khi chuyển chương trình giữa hai máy, kiểm tra lại phần chọn hệ tọa độ và đối chiếu với sổ tay máy.
DISTANCE TO GO với khoảng cách thực tế từ dao tới phôi. Thấy sai là dừng máy ngay.Câu hỏi thường gặp
Bật máy lên thì máy dùng hệ tọa độ nào?
Trên Fanuc, thường là G54, vì đây là trạng thái mặc định khi bật nguồn hoặc reset. Tuy vậy trạng thái này có thể đổi bằng tham số, nên luôn ghi rõ G54 hay G55 trong chương trình, không trông vào mặc định.
G53 có phải lệnh modal không?
Không. Trên Fanuc, G53 chỉ có tác dụng trong dòng chứa nó. Dòng sau máy quay lại hệ tọa độ phôi đang chọn (G54–G59). G53 cũng chỉ hoạt động ở chế độ G90.
Nên đặt gốc phôi ở đâu?
Nên đặt ở chỗ dễ đo lại và trùng với chuẩn kích thước trên bản vẽ: góc phôi khi bản vẽ ghi kích thước từ cạnh, tâm phôi hoặc tâm lỗ khi bản vẽ ghi từ tâm. Gốc trùng chuẩn bản vẽ thì ít phải tính đổi, ít sai số.

Để lại một bình luận