M code này là của máy HASS lathe,những M code có dấu * thì có cùng công dụng với những máy khác .
*M0
rogram stop(setting 42,41)
khi máy đọc M0 sẽ ngừng lại,tắt trục quay spindle chuck,tắt nước,và trương trình sẽ tạm dừng ở đó. M0 dùng trong trương trình khi người ta muốn dừng lại để thổi mạt sắt (chip)bám quanh part cho sạch trước khi chạy bước tiếp theo,hoặc dừng lại đo part ,trở đầu part.
*M01
ptional stop (setting 17) Ngừng có chọn lựa
đọc M01 máy sẽ ngừng khi bạn mở (turn on)nút Optional stop lên thì máy sẽ ngừng,nếu không mở nút đó thì máy sẽ chạy tiếp,M01 thường dùng khi chạy part đầu tiên.
*M02
rogram end :hết trương trình và ngừng tại đó nếu bạn có bấm nút chạy cycle start máy cũng không chạy ,M02 rất hiếm khi dùng tới.
*M03 :spindle on forward (setting 144):mở trục quay theo chiều kim đông hồ.
*M04:spindle on reverse (setting 144):mở trục quay ngược chiều kim đông hồ
*M05:spindle stop .ngừng
*M08:turn on coolant :mở nước
*M09: Tắt nước
M10:Chuck clamp (setting 92):kẹp part ,chuck sẽ giữ part lại cho chắc.
M11:Chuck unclamp (setting 92):Nhả ra.
M12 : air on ; thổi hơi gió
M13:air off ; tắt hơi gió.
M14:Main spindle clamp :trục chính kẹp part
M15:Main spindle unclamp:..........Nhả ra.
M17:Rotate turret forward (setting 97):quay ổ dao về phía trước
M18:Rotate turret reverse (setting 97): :quay ổ dao trở lại
M19:Orient spindle (RR):quay trục cho ngay vị trí (khi máy đọc m19 là sẽ quay đúng vị chí của nó
M21:Tailstock advance:Tailstock tiến đến (part) Cái Tailstock này là phần giữ ở đuôi part,khi cắt những part dài thì phải dùng Tailstock.(setting 93,94,106,107,121,145)những số đó để điều chỉng khoảng cách,tiến nhanh,chậm.
M22 ;Tailstock retract :rút lại.(setting 105)
M23:angle out of thread on:mở Góc độ răng lòi ra (setting 95,96).vào parametter mở và điều chỉnh khoảng cách
M24:angle out of thread off.Tắt
*M30:End program and reset:hết trương trình và trở lại đầu trương trình.
*M41:spindle Low gear overide:hình như chạy tốc độ quay dưới 1200 là Lơ gear thì dùng M41(máy cũ thường phải dùng nó mới chạy).Máy Mori seiki ,dewoo ,hitachi seiki bây giờ tôi thấy không dùng tới M41,M42.
*M42:spindle High gear overide:quay tốc độ nhanh .
M85 :autdoor open :máy tự mở cửa(setting 51,131,vào parameter set 51,bấm 1input thì mới hoạt động)
M86 :autdoor close :máy tự đóng cửa (setting 51,131)
M88: high presser coolant on (mở máy có sức ép nước mạnh setting 32)
M89: high presser coolant off :tắt M88
M95:slpeep mode:máy ngủ (khi đọc M này máy sẽ ngưng mọi hoạt động,bỏ thời gian ngủ vào ,sáng máy sẽ tự động mở và chạy program mình chọn,như làm nóng ,warm up grogram)
M97:local sub-routine call(P,L)m code này rất thông dụng trong máy HASS
Ví dụ dưới là PROGRAM số 1000 dùng M97 cắt mill 3 lỗ với SUB-routine P200(N200)
01000;
G0 G90 G40 G80 G20 G69
S2500 M3;
G0 G90 G54 X0. Y0. ;
G43 H1 Z2.M8;
Z1.;
M97 P200;
G00 G90 X5.Y0. ;(M99 sẽ quay lại chạy hàng kế tiếp ở đây)
Z1.
M97 P200; (cắt đường kính 2.inch ở vị trí absolute G54 X5.)
G00 G90 X10.Y0. ; (M99 sẽ quay lại chạy hàng kế tiếp ở đây)
Z1.
M97 P200; (cắt đường kính 2.inch ở vị trí absolute G54 X10).
G90;
G0 Z10. M9;
G91 G28 Z0.M5;
G28 x0. y0.
G90
M30;
%
(Sub cắt vòng tròn ID đường kính 2.inch,độ xâu .5 inch)
N200; (khi đọc M97 P200 sẽ nhảy xuống hàng này )
G91 (incremental)
G1 Z-.9 F20. ; (chạy chậm có F cách mặt Z0.là .1,tương tự như G90 Z.1)
Z-.6 F7. (cắt chậm xuống độ xâu là 1/2 inch ,tương tự như G90 Z-.5)
G1 G41 Y1. D1 F15.; (G1 không có ở đây cũng được vì ở hàng F20. đã có)
G02 Y-2. R1. ; (theo chiều kim đồng hồ ,từ dưới cắt lên nửa vòng bên trái)
Y2 . R1. ; (theo chiều kim đồng hồ ,tiếp cắt xuống nửa vòng bên phải)
G40 Y 1. ; (xoá D offset,đi về trung tâm)
Z2. (rút dao lên cách mặt 1.5 inch)
G90
M99; (đọc đến M99 sẽ quay lại hàng kế tiếp ở program chính)
Như vậy là mặc dù đã có M30 % nhưng phía dưới vẫn còn N200 là sub-routine cho M97 P200.
còn L có ý nghĩa loop (lập lại chu kỳ)
G0 G90 G54 X15. Y0. ;
S1500 M3;
G43 H1 Z25. M8;
G73 Z-1.5. Q.1 R.2 F7.; (sẽ đục 1 lỗ ở vị trí X15.)
G91; (Lệnh G91 )
X5. L5 ; (đục thêm 5 lỗ vị trí cách nhau 5.inch hướng X cộng)
G90;
G0 G80 Z25. M9;
G91 G28 Z0. M5;
G90 ; (trở về lệnh tuyệt đối vị trí G54)
M30;
*M98 ;subprogram call (P,L)cũng rất thông dụng ,M98 gọi một program khác ở ngoài chạy.
M98 ;P1000 sẽ nhảy đi tìm grogram số O1000 chạy.
*M99 ;sub-program/routine return or loop ( trở lại ).
Sẽ tiếp theo phần G code