Chức năng máy M-codes
Dưới đây là tổng hợp một số mã lệnh trong hệ điều khiển Fanuc O-T
Các bạn có thể sử dụng lệnh M00 hoặc M0 đều được.
M00
: Dừng chương trình (không có điều kiện). Khi chương trình gặp M00 thì sẽ dừng trục chính và chuyển động chạy dao. Mục đích có thể là: chúng ta dừng để kiểm tra chi tiết, hay dừng lại để kiểm tra trong quá trình tiện ren hay một bề mặt yêu cầu khắt khe để chúng ta xem có đạt hay không trước khi cắt đứt phôi hoặc trước khi tháo phôi xuống máy.
M01
: Dừng chương trình giống M0 nhưng có điều kiện. Điều kiện là Nút Optione Stop trên máy được bật sáng thì chức năng M1 giống như chứng năng M0. Hay sử dụng trong gia công loạt chi tiết, ví dụ gia công 1 loạt ren, mới thay dao thì có thể trong 10 chi tiết đầu chưa phải kiểm tra nhưng khoảng 15 chi tiết sau thì có khi chúng ta cần tạm dừng để kiểm tra.
M02
: Dừng chương trình. Lệnh này sẽ đặt ở cuối chương trình, có thể sử dụng M02
hoặc M30
.
- Nếu sử dụng
M30
thì khi kết thúc chương trình, con trỏ sẽ di chuyển về Start – Câu lệnh đầu tiên (Ví dụ O0001). Nó trở về vị trí đầu để nếu chúng ta có gá phôi tiếp theo thì chỉ cần nhấn Nút Start, nó sẽ chạy từ đầu. - Nếu sử dụng
M02
thì khi kết thúc chương trình, con trỏ sẽ di chuyển ở yên tại vị trí đó. Nếu muốn di chuyển về đầu chương trình thì chúng ta nhấn Edit và di chuyển lên trên đầu.
M03
: Trục chính quay thuận theo chiều kim đồng hồ:
- Máy Phay: quay thuận theo chiều kim đồng hồ.
- Máy Tiện: quay ngược chiều kim đồng hồ, nhìn từ ụ động vào mâm cặp.
M04
: Trục chính quay ngược chiều kim đồng hồ:
- Máy Phay: quay ngược chiều kim đồng hồ.
- Máy Tiện: quay thuận theo chiều kim đồng hồ, nhìn từ ụ động vào mâm cặp.
M05
: Dừng trục chính.
M08
: Tưới dung dịch trơn nguội.
M09
: Tắt dung dịch trơn nguội.
M98
: Gọi chương trình con.
Cú pháp gọi chương trình con: M98 P _ _ _ _ _ _ _ _;
- 4 ký tự sau P là số lần lặp của chương trình con. Nếu không ghi ra số lần lặp của chương trình con thì hệ thông hiểu là 1 lần lặp lại.
- 4 ký tự tiếp theo là số của chương trình con.
Cấu trúc của một chương trình con:
O _ _ _ _; | | | M99;
Hình bên trên, chúng ta có thể thấy chương trình chính O001 gọi chương trình con có tên là O1000 bằng lệnh M98P1000
…
M99
: Kết thúc chương trình con.
Ví dụ:
Trong chương trình chính, khi gọi chương trình con M98 P21010
có nghĩa là gọi chương trình con có tên là 1010
và lặp lại 2
lần.
Tương tự với dòng lệnh tiếp theo: M98 P1020
có nghĩa là gọi chương trình con có tên là 1020
và lặp lại 1
lần (Không ghi số lần lặp lại thì sẽ là 1 lần lặp lại).
Chức năng dụng cụ T-word (Tool Function)
Câu lệnh: T _ _ _ _
- 2 ký tự đầu là tên con dao hoặc vị trí trên ổ tích dụng cụ.
- 2 ký tự sau là ô khai báo thông số hình học của dao. Trường hợp dao mòn thì chúng ta có thể khai báo để bù dao.
Chức năng tốc độ quay S-word (Spindle Speed Function)
G96 S120
: Tốc độ cắt v=120 m/ph thì tốc độ qua trục chính n= 120*1000/(pi*D)
G97 S1000
: Số vòng quay trục chính n=1000 v/ph
Vậy tới đây, chúng ta sẽ đặt ra câu hỏi là: Khi nào cắt với vận tốc v bằng hằng số, khi nào cắt với n bằng hằng số?
Trả lời:
Cắt với cắt với n bằng hằng số – RPM
Ví dụ: khi chúng ta tiện một mặt dạng lượn sóng hoặc côn, đặt n=const thì v sẽ biến đổi theo công thức v=pi*D*n/1000. Chúng ta biết độ nhẵn bóng bề mặt ảnh hưởng của vận tốc cắt, nếu vận tốc cắt ổn định thì độ nhẵn bóng bề mặt sẽ đều, ngược lại, nếu vận tốc cắt thay đổi thì bề mặt sẽ có chỗ thô, chỗ bóng. Vậy nên khi chúng ta tiện càng gần tâm khi bề mặt nó càng thô.
Cắt với vận tốc cắt v bằng hằng số – CSS
Ví dụ: khi chúng ta tiện dưỡng hay một bề mặt côn cần độ bóng đều, chúng ta sử dụng vận tốc cắt bằng hằng số, lúc này, tốc độ quay trục chính sẽ tự động biến đổi theo công thức n= v*1000/(pi*D). Như vậy, với những vị trí có kích thước lớn thì vận tốc vòng quay trục chính sẽ giảm, còn càng gần vào tâm thì tốc độ trục chính càng quay nhanh.
Chức năng lượng chạy dao F-word (Feed Function)
Cú pháp câu lệnh:
G98 F120
: Lượng chạy dao = 120mm/ phút. Khi phay sẽ sử dụng G94
G99 F0.25
: Lượng chạy dao = 0.25 mm/vòng. Khi phay sẽ sử dụng G95
Chức năng thiết lập đơn vị đo G20, G21
G21;
Đơn vị là mm
X200;
= 0.2 mmX20.0;
= 20 mmW20.5;
= 20.5 mm
G22;
Đơn vị là inch
X2000;
= 0.2 inchZ6800;
= 0.68 inchU5000;
= 0.5 inch
Chức năng lập trình theo hệ tọa độ tuyệt đối, tương đối G90, G91
Trong tiện thì theo phương X, bạn thiết lập là đường kính.
G90 X_ Z_ R_ F_ ;
Hệ tọa độ tuyệt đối.
Chức năng: Tiện trụ ngoài, trụ trong, côn dọc trục.
G91 U_ W_ R_ F_ ;
Hệ tọa độ tương đối.
Chu trình tiện thô dọc trục X: G94
Chức năng: Tiện mặt đầu, 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)__: Đườ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
Các chứng năng hình học G-codes (Preparatory Funtions G-codes)
Lệnh chạy dao nhanh G00
G00 X_ Z_ ;
X và Z là tọa độ điểm tới. Trong câu lệnh không có F, nó sẽ lấy theo tốc độ chạy dao nhanh do chúng ta cài đặt trong hệ điều khiển của máy.
Ví dụ: N0101 G00 X25. Z5. ;
Lệnh này được hiểu là con dao sẽ chạy nhanh từ ngoài tới tọa độ X=25mm và Z=5mm (Chạy tới chấm đỏ hình dưới)
Lệnh nội suy tuyến tính G01
G01 X_ Z_ F_;
X và Z là tọa độ điểm tới. Trong câu lệnh bắt buộc phải có F – giá trị lượng chạy dao.
Ví dụ: N0101 G01 X25. Z-30. F0.2 ;
Câu lệnh này có ý nghĩa là nó nội suy đường thẳng, nó sẽ chạy đến tọa độ X=25mm, Z=-30mm và cắt với lượng chạy dao F=0.2. Các câu lệnh G1 phía sau nếu chúng ta không khai báo lại F thì nó sẽ lấy giá trị F trước đó.
Chức năng nâng cao của lệnh G01
Cấu trúc vát mép
Câu lệnh: G1 Z(W)_ C(I) +-i F_ ;
bởi vì nó chạy theo phương Z mà X=0 nên không có X trong câu lệnh. C viết tắt của Chamfer, có hệ điều khiển dùng biến I, có hệ dùng biến C.
Ví dụ: N0101 G1 Z20. C-3. F0.2 ;
Câu lệnh: G1 X(U)_ C(K) +-k F_ ;
Trường hợp này giống như khi bạn khỏa mặt đầu.
Cấu trúc bo tròn
Tương tự như vát mép
Câu lệnh: G1 Z(W)_ R+-r F_ ;
bởi vì nó chạy theo phương Z mà X=0 nên không có X trong câu lệnh. C viết tắt của Chamfer, có hệ điều khiển dùng biến I, có hệ dùng biến C.
Ví dụ: N0101 G1 Z20. R3. F0.2 ;
Câu lệnh: G1 X(U)_ R+-r F_ ;
Ví dụ
Cấu trúc chương trình, mình sẽ sử dụng dấu xược để mô tả:
%PM O001 (VD_1) T0101; //Gọi con dao số 1 M3 S1000; //Khởi động trục chính quay thuận (M3) và quay với vận tốc S=1000 v/ph G0 X40. Z82.; //G0 là lệnh chạy dao nhanh tới tọa độ X=40mm và Z=82mm, Z=82mm cách mặt đầu 2mm tránh tiếp xúc vào phôi. G1 Z30. R6. F0.2; //G1 trong trường hợp này là lệnh nâng cao, Z=30mm là tọa độ điểm cuối với cung tròn R=6mm. Lượng chạy dao F=0.2 mm/vòng X100. C-3.; //Khi đọc xong câu lệnh trên, lúc này con dao đang ở vị trí X=46mm và Z=30mm. X=100mm là tọa độ điểm cuối, vát mép ngược chiều Z nên có giá trị là -3mmm. Vì không ghi G1 và F nên nó tự hiểu lấy G1 và F ở dòng lệnh trên. W-15.; //Lúc này con dao đang ở vị trí X=100mm và Z=27mm, W là tọa độ tương đối của Z, -15 vì nó chạy ngược chiều Z và nó sẽ chạy từ Z=27mm thêm 15mm thì lúc đó tọa độ cuối cùng là X=100mm và Z=12mm. U10. M05; //U là hệ tọa độ tương đối của trục X, ở dòng lệnh trên thì tọa độ con là X=100mm, khi tới lệnh U10. thì nó di chuyển thêm 10mm theo chiều dương, vậy tọa độ X lúc này là 110mm. Sau đó dừng trục chính bằng lệnh M05. G28 U0 W0; //G28 là lệnh lùi dao về gốc máy; U, W là tọa độ điểm trung gian con dao sẽ lùi qua trước khi con dao lùi về gốc máy.) M30; //Kết thúc chương trình, con trỏ sẽ di chuyển về Start. %