Trên máy phay Fanuc để tham số mặc định, Z100 là 0,1 mm. Muốn 100 mm phải viết Z100. hoặc Z100.0. Một câu mở đầu chương trình quen thuộc như G0 G90 G54 X0 Y0 Z100 M03 S1500 (gọi gốc phôi G54, đưa dao về tâm, nhấc lên cao rồi cho trục chính quay) mà thiếu dấu chấm sau số 100 sẽ cho dao chạy nhanh bằng G00 xuống cách mặt phôi đúng một phần mười milimét. Màn hình không hiện báo động nào.
Với hệ điều khiển, Z100 vẫn là một câu lệnh hợp lệ, chỉ được đọc theo đơn vị khác. Bài viết này giải thích máy hiểu con số không có dấu chấm thập phân ra sao, địa chỉ nào phải có chấm, địa chỉ nào không được có, và cách bắt lỗi trước khi dao chạm phôi. Kèm theo là một chỗ cần đính chính: nhiều tài liệu vẫn chép rằng số thiếu chấm bị máy tính theo mét. Sai.
Không có chấm, Fanuc đọc số theo đơn vị 0,001 mm
Mỗi hệ điều khiển có một đơn vị nhỏ nhất mà nó nhận được khi nhập số, gọi là đơn vị nhập nhỏ nhất. Máy phay Fanuc hệ mét phổ biến dùng chuẩn IS-B, đơn vị này là 0,001 mm. Gặp tọa độ có dấu chấm, máy hiểu con số là milimét; không có chấm, máy coi con số là bội số của 0,001 mm.
X200 vì thế là 200 lần 0,001 mm, tức 0,2 mm. X200. (có chấm) và X200.0 cùng là 200 mm. Hai cách viết chênh nhau đúng 1.000 lần, và con số 1.000 có lẽ là gốc của lời đồn "tính theo mét": thấy kết quả lệch nghìn lần, người ta đoán máy đổi đơn vị. Trên Fanuc không có địa chỉ nào tính theo mét cả. Số thiếu chấm bị đọc nhỏ đi chứ không to lên, và trên máy độ phân giải cao dùng chuẩn IS-C (đơn vị nhỏ nhất 0,0001 mm), X200 còn nhỏ thêm mười lần nữa, chỉ 0,02 mm.
Máy nhìn chữ cái địa chỉ đứng trước để biết con số thuộc loại gì, như đã nói trong bài cấu trúc câu lệnh NC.

Thừa chấm máy báo lỗi, thiếu chấm máy vẫn chạy
Fanuc bắt lỗi dấu chấm theo đúng một chiều. Đặt dấu chấm sau một địa chỉ không nhận số thập phân, chẳng hạn G04 P1.5, máy dừng ngay với báo động 007 (dùng dấu chấm sai chỗ). Quên chấm ở X, Y, Z thì không có báo động nào, vì 0,2 mm hay 0,1 mm đều là tọa độ hợp lệ.
Hậu quả tùy địa chỉ bị thiếu và tùy dao đang đứng ở đâu. Câu G01 X200 F200 chạy từ X0 chỉ nhích dao 0,2 mm, nhanh tới mức trông như máy bỏ qua dòng đó. Ở chế độ tuyệt đối G90, dao đang ở X150 mà câu tiếp theo ghi X200 thiếu chấm thì dao không sang phải thêm 50 mm. Nó quay ngược về X0,2, sát gốc phôi, và có thể cắt ngang qua vùng vừa gia công. Trên trục Z, Z-5 thiếu chấm thành Z-0,005, dao gần như cắt không khí và chi tiết ra lò thiếu chiều sâu.
Nặng nhất là Z100 ở câu mở đầu đã nêu. G00 chạy bằng tốc độ nhanh nhất của máy, còn điểm đến chỉ cách mặt phôi 0,1 mm. Phôi gá cao hơn gốc Z, hay một bu lông kẹp nằm trên đường xuống, là đâm dao.
Lệch nghìn lần mà vẫn lọt qua khâu soát, vì trên bản in giấy X200 và X200. gần như không phân biệt được, nhất là khi chương trình dài vài trăm câu và dấu chấm nằm sát mép dòng.
Tham số 3401 khiến hai máy đọc cùng một file theo hai kiểu
Fanuc có một tham số đổi cách đọc số không có chấm: tham số 3401, bit 0, tên là DPI. Để bằng 0 (mặc định), máy đọc như đã nói ở trên. Đặt bằng 1, máy chuyển sang kiểu "máy tính bỏ túi": số không có chấm được hiểu là milimét, X200 thành 200 mm đúng như cách viết trên giấy.
Rắc rối xuất hiện khi trong một xưởng có máy bật, có máy tắt. Chương trình viết quen tay không chấm, chạy đúng trên máy DPI bằng 1, chép sang máy bên cạnh để DPI bằng 0 thì mọi tọa độ không chấm co lại nghìn lần, dù file không đổi một ký tự. Muốn biết máy đang đặt kiểu nào, vào SYSTEM, chọn PARAM, gõ 3401 rồi tìm, nhìn bit 0 ở ngoài cùng bên phải. Đổi tham số này thì mọi chương trình cũ trong máy bị đọc lại theo kiểu mới, nên việc đó để người phụ trách máy quyết.
Cách chắc ăn hơn là không phụ thuộc vào tham số: viết dấu chấm cho mọi giá trị là kích thước. X200. chạy ra 200 mm trên cả máy DPI bằng 0 lẫn máy DPI bằng 1.
Địa chỉ nào cần chấm, địa chỉ nào không
Phải có chấm là mọi địa chỉ mang kích thước hoặc góc: X, Y, Z, tâm cung I, J, K, bán kính R, các trục quay A, B, C, và Q chiều sâu mỗi lần khoan trong chu trình G73, G83. Viết X200. hay X200.0 đều được. Số nhỏ hơn 1 nên viết Z0.5 thay vì Z.5. Máy hiểu cả hai là 0,5 mm, nhưng soát bằng mắt thì Z.5 rất dễ bị đọc nhầm thành Z5.
Q trong chu trình khoan dễ bị sót, vì nó trông giống một "hệ số" hơn là một kích thước. G83 với Q2500 nghĩa là mỗi lần mổ sâu 2,5 mm. Viết Q2.5 cho dễ đọc. Chu trình khoan có bài riêng: chu trình khoan G81 đến G83.
Ngoại lệ nằm bên máy tiện. Chu trình tiện ren G76 không nhận dấu chấm ở P và Q, chiều sâu cắt ở đó bắt buộc ghi theo đơn vị 0,001 mm.
Lệnh dừng G04 có hai cách ghi thời gian. G04 X1. là dừng 1 giây. X ở đây phải có chấm, vì G04 X1 không chấm chỉ dừng 0,001 giây, gần như không thấy máy dừng. G04 P1000 cũng là 1 giây, G04 P100 là 0,1 giây. P tính bằng mili giây, nhận số nguyên, không dùng chấm. Chấm vào P là gặp lại báo động 007.
Còn lại là nhóm để số nguyên: số thứ tự câu N, số chương trình O, mã M, số dao T, số bù chiều dài H, số bù bán kính D, P khi chỉ số chương trình con hay mili giây, và L hoặc K khi chỉ số lần lặp. F và S thường không bị ảnh hưởng: F200 vẫn là 200 mm/phút ở chế độ G94, S500 vẫn là 500 vòng/phút. Lượng chạy dao theo vòng G99 trên máy tiện vốn là số lẻ như F0.2 nên tự nhiên có chấm.

Soát bằng GRAPH và cột DISTANCE TO GO
Lỗi thiếu chấm gần như chỉ sinh ra khi gõ tay. Chương trình xuất từ phần mềm CAM qua post-processor chuẩn cho Fanuc thường có dấu chấm đầy đủ, nên chương trình dài nên lập bằng CAM. Buộc phải gõ thì soạn trên máy tính bằng CIMCO Edit, phần mềm tô màu từng địa chỉ và có chức năng kiểm lỗi. Nhập thẳng vào máy thì soát từng câu ngay lúc gõ, cách làm có trong bài soạn thảo và nhập chương trình trên máy phay CNC.
Với chương trình mới hoặc vừa sửa, trước khi chạy thật nên làm theo thứ tự:
- Bấm GRAPH để mô phỏng đường dao. Biên dạng lẽ ra rộng vài chục milimét mà co lại thành một chấm nhỏ sát gốc tọa độ thì gần như chắc chắn là thiếu dấu chấm.
- Chạy từng câu bằng Single Block, vặn núm tốc độ chạy nhanh về mức thấp (25% hoặc F0), có thể chạy khô với dao nhấc cao như hướng dẫn ở bài Dry Run, Single Block, Optional Stop.
- Bấm POS, chọn trang DISTANCE TO GO (có máy ghi DIST TO GO, nghĩa là quãng còn lại) và nhìn cột này ngay khi câu bắt đầu chạy. Câu lẽ ra đi 200 mm mà cột chỉ hiện 0.200 thì bấm Feed Hold, mở câu đó ra xem.
- Sửa xong, mô phỏng lại từ đầu chương trình, vì một lỗi thiếu chấm thường kéo theo vài lỗi tương tự ở những câu gõ cùng lúc.

Kể cả khi máy đang dùng đặt DPI bằng 1, vẫn nên viết chấm cho mọi kích thước. Ai đang học lập trình tay theo bài tổng quan về lập trình phay CNC và tập viết lệnh cắt gọt theo đường thẳng G01 thì tập như vậy từ bài tập đầu tiên.
Học lập trình phay CNC theo phương pháp Hybrid tại CVTECH
Tại CVTECH, phần lý thuyết như cấu trúc câu lệnh, đơn vị nhập, chu trình khoan được học online qua app và web, còn phần soát chương trình, mô phỏng GRAPH, chạy Single Block và đọc DISTANCE TO GO được làm trực tiếp trên máy Fanuc tại xưởng Lô 4 Cụm công nghiệp Lai Xá, phường Tây Tựu, Hà Nội. Lịch học 8h–17h từ thứ Hai đến thứ Sáu, thực hành không giới hạn, học lại miễn phí đến khi thành nghề.
Khóa Lập trình máy phay CNC chuyên sâu (MasterCAM 2018) và khóa Vận hành máy phay CNC thực chiến cùng học 1 tháng, 180 giờ, học phí 8 triệu. Bên tiện có khóa Lập trình và vận hành máy tiện CNC. Ngày khai giảng xem ở trang học phí và lịch khai giảng, cần hỏi thêm thì gọi Mr Quyết 0969.081.015.
Câu hỏi thường gặp
Quên dấu chấm thập phân thì máy CNC có tính theo mét không?
Không. Trên Fanuc hệ mét để mặc định, số không có chấm được đọc theo đơn vị nhỏ nhất 0,001 mm, nên X200 là 0,2 mm. Con số bị nhỏ đi 1.000 lần chứ không to lên.
X200. và X200.0 có khác nhau không?
Không khác. Cả hai đều là 200 mm. Viết X200.0 thì dấu chấm nằm giữa con số, khó bị bỏ sót khi soát bằng mắt hơn.
G04 P1000 và G04 X1. khác nhau thế nào?
Cùng là dừng 1 giây. P tính bằng mili giây và chỉ nhận số nguyên, X tính bằng giây và phải có dấu chấm. Viết G04 X1 không chấm thì máy chỉ dừng 0,001 giây, còn viết G04 P1.5 thì máy báo lỗi 007.
Làm sao biết máy đang đọc số không chấm là milimét?
Xem tham số 3401 bit 0 (DPI) trong màn hình SYSTEM, mục PARAM. Bit này bằng 1 là kiểu máy tính bỏ túi, X200 hiểu là 200 mm. Bằng 0 là kiểu mặc định, X200 hiểu là 0,2 mm.



