Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 22

Note: Theo mặc định, công tắc giới hạn phần mềm đầu tiên đang hoạt động.

Công tắc
giới hạn phần mềm thứ 2 có thể được kích hoạt cho một hướng cụ thể với chương
trình người dùng PLC:

DB31, ... DBX12.2/12.3 (công tắc giới hạn phần mềm thứ 2 trừ/cộng)
Data block mặc định trong hệ gantry.
M34201(0) Z
Các bước cài đặt limit cho từng trục riêng biệt
Kích hoạt tránh va chạm
ký hiệu ví dụ
Ký hiệu được phép cho các biến:
● Biến PLC: EB2, A1.2, DB2.DBW2
● Biến NC:
– Biến hệ thống NC: Ký hiệu $AA_IM[1]
– Biến người dùng / GUD: Ký hiệu GUD/MyVariable[1,3]
– Ký hiệu OPI: /CHANNEL/PARAMETER/R[u1,2]
Cấu trúc câu lệnh. Địa chỉ của số khối
G Chức năng chuẩn bị
Dữ liệu vị trí X,Y,Z
Nguồn cấp dữ liệu F
S Tốc độ trục chính
Công cụ T
D Số bù công cụ
M Chức năng bổ sung
H Chức năng phụ trợ

N20 F200 S900 T1 D2 M3 ; Tốc độ tiến dao, trục chính, dao, bù dao,
trục chính theo chiều kim đồng hồ.
1. G-Code là gì?
Nếu bạn đang dấn thân có ý định dấn thân vào ngành công nghệ gia công cắt gọt cơ
khí CNC và lập trình gia công CAM, hoặc chỉ tìm hiểu về các bộ phận cơ bản của
máy CNC cho người mới bắt đầu, bạn có thể đã nghe nói về thuật ngữ G-code, thì G-
code ở đây được hiểu đơn giản là ngôn ngữ lập trình cho máy tính điều khiển số
(Computer Numerical Control). Trong bài viết này, tôi sẽ giới thiệu cho bạn
những điều cơ bản về mã G-code và cách bắt đầu tìm hiểu về nó.

Người vận hành máy CNC sử dụng mã G-code này để chỉ thị vị trí cho máy CNC đi
đến đâu và cách thức di chuyển. Mã này ra lệnh cho máy nên di chuyển theo hướng
nào, nên di chuyển nhanh như thế nào, nên cắt sâu bao nhiêu, v.v.

Ban đầu, ta sẽ lập trình trên chi tiết theo yêu cầu và sẽ được nạp vào máy. Sau đó, làm
theo các hướng dẫn được cung cấp bởi mã G-code, công cụ cắt sẽ tiến hành cắt gọt
nguyên liệu ra khỏi khối để tạo ra sản phẩm hoàn chỉnh.

Mã G-code là một trong những ngôn ngữ lập trình được sử dụng rộng rãi nhất được sử
dụng để điều khiển các máy cơ khí tự động. Hầu hết các máy CNC xuất hiện trên thị
trường thường sử dụng mã lệnh G-code để lập trình, mặc dù còn có sự xuất hiện của
các ngôn ngữ CNC khác, chẳng hạn như Heidenhain, Mazak và các định dạng độc
quyền khác.

Các thợ máy CNC có thể viết mã G-code từ đầu bằng tay, chỉnh sửa mã G-code hiện
có trên bộ nhớ của máy CNC hoặc tạo đoạn mã G-code bằng các phần mềm lập trình
gia công CAM như MasterCAM, Siemens NX, vv. Các phần mềm CAM có thể tạo
mã G-code từ hình ảnh hoặc tệp CAD. Trong ngành công nghiệp CAD rộng lớn ngày
nay, cũng có các chương trình chỉnh sửa CAD tự động chuyển đổi các tệp CAD thành
mã G-code.

2. Ý nghĩa và cách thức lập trình G-Code


Một dòng mã G-code điển hình khá khó hiểu đối với người mới, phải mất nhiều năm
để một thợ máy CNC thành thạo ngôn ngữ. Trong khi toàn bộ ngôn ngữ được gọi là
mã G-code, về mặt kỹ thuật nói “mã” chỉ nói đến một hướng dẫn duy nhất trong ngôn
ngữ. Mỗi “mã” bao gồm một địa chỉ chữ cái và một số và đưa ra một hướng dẫn cụ
thể cho máy.

Hầu hết các dòng mã G-code sẽ bắt đầu bằng chữ G – do đó tại sao ngôn ngữ có
tên! Điều này là do chữ G biểu thị mã chuẩn bị. Chúng báo cho máy biết loại chuyển
động nào là bắt buộc hoặc sử dụng giá trị bù nào. Do đó, các mã bắt đầu bằng G hầu
như luôn được tìm thấy khi bắt đầu một dòng mã G. Ví dụ: G00 (lệnh định vị dao
nhanh, dụng cụ cắt sẽ di chuyển với tốc độ tối đa); G01 (lệnh nội suy cắt gọt di
chuyển theo đường thẳng với tốc độ tiến dao F do người vận hành thiết lập); G02
(lệnh nội suy cắt gọt cung tròn cùng chiều kim đồng hồ) và G03 (lệnh nội suy cung
tròn ngược chiều kim đồng hồ).
Không phải tất cả các mã G đều bắt đầu bằng chữ G!

Trong khi các mã bắt đầu bằng G là cực kỳ phổ biến, tất cả 26 chữ cái của bảng chữ
cái được sử dụng trong mã G. Ví dụ: S (thiết lập tốc độ quay cho trục chính); F (thiết
lập tốc độ di chuyển tịnh tiến của bàn máy). Có một số điều cơ bản quan trọng khác
cần biết, chẳng hạn như:

Chữ X chỉ thị sự di chuyển ngang trục X của bàn máy.

Chữ Y chỉ thị sự di chuyển dọc trục Y của bàn máy.

Chữ Z chỉ thị độ sâu di chuyển của trục Z.

Các số bên cạnh các chữ cái này xác định tọa độ di chuyển cho bàn máy.

Các bạn có thể tìm hiểu tất cả các mã lệnh G-code thường được sử dụng trong CNC.

3. Các mã lệnh dùng G-Code trong máy CNC


G90: Lập trình theo tọa độ tuyệt đối, lấy tọa độ so với điểm chuẩn đã chọn.

G91: Lập trình theo tọa độ tương đối, lấy tọa độ so với điểm phía trước.

G28: lùi dao về tham chiếu G91G28Z0;

G54: Lưu gốc tọa độ phôi

G00: Lệnh chạy dao nhanh không cắt gọt

 Cú pháp: G00X_Y_Z_; (X, Y ,Z là tọa độ điểm cần di chuyển đến)


 Khi đã sử dụng G00 trong chương trình, thì nó luôn có hiệu lực cho đến khi
một mã G khác trong nhóm 01 (G00, G01, G02, G03) được sử dụng.
 VD: G90G00X20.Y14.;
G90G00X-15.Y-18.3;
G91G00X-27.5Y20.;
G01: dùng để điều khiển dao dịch chuyển theo đường thằng, có cắt gọt.

 Cú pháp: G01X_Y_Z_F;
 Trong đó: G01 là mã lệnh. X, Y, Z là tọa độ điểm đến. F là lượng tiến dao
(mm/phút)
Ví dụ:   G90G01X25.Y40.5F300;

X15.Y40.5;
X15.Y30.;

G91G01X30.Y40.F200;

X5.Y10.;

X-8.Y7.;

 Lưu ý: lệnh G01 có thể dùng để vát cạnh


G02: điều khiển dụng cụ di chuyển theo cung tròn cùng chiều kim đồng hồ.

G03: điều khiển dụng cụ di chuyển theo cung tròn ngược chiều kim đồng hồ.

 Lệnh nội suy cung tròn trên mp XY


 G17G02(G03)X_Y_I_J_F_;
 G17G02(G03)X_Y_R_F_;
 Lệnh nội suy cung tròn trên mp XZ
 G18G02(G03)X_Z_I_K_F_;
 G18G02(G03)X_Z_R_F_;
 Lệnh nội suy cung tròn trên mp YZ
 G19G02(G03)Y_Z_J_K_F_;
 G19G02(G03)Y_Z_R_F_;
 Trong đó: I, J, K khoảng cách và chiều dài tính từ điểm bắt đầu đến tâm
cung tròn, tính theo tọa độ tương đối, được xác định bằng cách đặt tọa độ tại
điểm bắt đầu, rồi xác định các giá trị I, J, K so với tọa độ đó.
G04 lập trình với thời gian dừng ở cuối hành trình

 Cú pháp:  G04X_; hoặc G04P_;


 Trong đó:
 X thời gian dừng được tính bằng giây, có thể biểu diễn số
thập phân
 P thời gian dừng được tính bằng phần ngàn của giây, không
thể biểu diễn số thập phân
 Ví dụ:
 G04X3.5; dừng 3.5 giây
 G04P3500; dừng 3.5 giây
G15, G16 lập trình trong hệ tọa độ cực, thông qua bán kính và góc xoay, G16 (khởi
động hệ tọa độ cực), G15 (hủy lập trình tọa độ cực).

 Chú ý: Một số lệnh không dùng trong hệ tọa độ cực: G40, G52, G92, G53,
G22, G68, G51.
 Cú pháp:
 G17G90G16;
 X_Y_;
 Trong đó:
 X: bán kính xoay
 Y: Góc xoay
 Ví dụ:
 Tuyệt đối:
G17G90G16;G81X20Y60Z-
30R5F300;Y120;Y180;Y240;G15G80;
 Tuyệt đối cho bán kính, tương đối cho góc:
G17G90G16;
G81X20Y60Z-30R5F300;

G90Y60;

Y60;

Y60;

G15G80;

G40, G41, G42 Bù trừ bán kính dao, hay offset dao, dùng để cắt đúng biên dạng chi
tiết gia công để không lẹm vào chi tiết.

G41: Bù trừ dao bên trái

G42: Bù trừ dao bên phải

G40: Hủy bù trừ dao.

Để xác định bù trừ dao bên trái hay phải bằng cách, đứng tại điểm tiếp xúc để xét,
nếu dao nằm bên trái thì dùng G41, dao nằm bên phải dùng G42.

 Cú pháp:          G01G41(G42)X_Y_D_;
 Trong đó:         X, Y là tọa độ điểm đến. D là số offset dao (trên máy phải
cho tham số No.36#6 là 1)
G43, G49 Bù trừ chiều dài dao, mỗi dao có chiều dài khác nhau, vì vậy ta dùng bù trừ
chiều dài dao tại một điểm để dễ gia công.

G43 Thiết lập bù trừ chiều dài dao

G49 Lệnh hủy bù trừ chiều dài dao

 Cú pháp:          G00G43Z_H_;
 Trong đó:         Z là tọa độ điểm xét bù trừ theo phương Z.  H là số offset
dao
G50, G51 Dùng để phóng to và thu nhỏ đường dịch chỉnh của dao

G51 Thiết lập lệnh phóng to, thu nhỏ.

G50 Lệnh hủy phóng to, thu nhỏ.

 Cú pháp:          N1G51X_Y_Z_P_;
N2……

N3……       vùng lệnh khuếch đại có hiệu lực

N4……

N5G50        kết thúc khuếch đại

 Trong đó:         X, Y, Z là tọa độ tâm khuếch đại (tính theo tuyệt đối). P là
hệ số khuếch đại chung cho tất cả các trục, không có dấu chấm thập phân.
P1000 ứng với hệ số khuếch đại là 1.
 Ví dụ:        G51X10Y10P2000;
G90G01X5Y5F200;

X15Y5;

X10Y15;

X5Y5;

G50;

 Để khuếch đại riêng cho từ trục, ta viết cú pháp như sau:


N1G51X_Y_Z_I_J_K_;

N2……..

N3……..     vùng khuếch đại có hiệu lực

N4……..

N5G50        kết thúc khuếch đại

 Trong đó:    X, Y, Z là tâm khuếch đại. I, J, K là hệ số khuếch đại tương ứng


với từng trục X, Y, Z
 Ví dụ:             G51X10Y10I2000J500;
G90G00X5Y5;

X15Y5;

X10Y15;

X5Y5;

G50;

Chú ý:

 Khuếch đại phải được hủy trước khi dùng các lệnh G27, G28, G29, G30,
G92.
 Việc phóng tó thu nhỏ sẽ không ảnh hương tới tham số Z, R, Q, P trong các
chu trình đã lập sẵn.
 Việc phóng to thu nhỏ sẽ không ảnh hưởng đến offset dao theo bán kính.
 Có thể dùng G51 để lấy đối xứng theo các trục nếu hệ số khuếch đại là -1.
G68, G69  Lệnh xoay tọa độ

G68          Thiết lập xoay tọa độ

G69          Hủy xoay tọa độ

 Cú pháp:          G68X_Y_R_;


 Trong đó:         X,Y là tâm xoay
R là góc xoay giới hạn từ -360o  đến 360o

 Ví dụ:
Chú ý:

 Nếu không chỉ ra X, Y trong lệnh G68 thì tâm xoay sẽ là vị trí mà dụng cụ
đang đứng.
 Nếu góc xoay bị bỏ qua trong lệnh G68 thì giá trị thiết lập bởi tham số
No730 sẽ là góc xoay.
 Lệnh G69 có thể đứng chung với các lệnh khác trong một dòng lệnh, sau khi
xoay offset dao có hiệu lực. Nếu G69 đứng chung với các lệnh chuyển động
thì các lệnh này phải lập trình tuyệt đối.
Các chu trình khoan lỗ:

Chú ý:

 Không dùng các lệnh G00, G01, G02, G03 trong các chu trình gia công lỗ,
nếu có các lệnh này thì chu trình gia công lỗ sẽ bị hủy
 Để hủy các chu trình khoan lỗ ta dùng G80
 Dùng G98 thì sau khi khoan dao sẽ lùi về cao độ xuất phát, dùng G99 thì
dao sẽ lùi về cao độ an toàn R.
G83, G73 chu trình khoan lỗ

G83 dùng để khoan lỗ sâu, hay khoan mồi. Quá trình khoan: dao sẽ di chuyển đến
cách bề mặt gia công một khoảng R , từ cao độ R sẽ khoang xuống 1 lượng Q, sau đó
lùi về vị trí R để thoát phoi, sau đó di chuyển xún cách mặt vừa gia công 1 khoảng d,
rồi gia công tiếp, cứ thế cho đến hết lỗ, giá trị d được thiết lập bởi tham sô No532.

G73 Chu trình khoan lỗ có bẻ phôi, cũng giống như G83 nhưng khác ở chỗ sau khi
khoan nó sẽ ko lùi dao về vị trí cắt mặt khoảng R mà lùi về cách bề mặt đang gia công
một đoạn d rồi gia công tiếp.

 Cú pháp:          G83(G73)X_Y_Z_Q_R_F_;
 Trong đó:         X, Y là tọa độ tâm lỗ
Z là cao độ Z của điểm cuối lỗ

Q chiều sâu mỗi lần cắt

R khoảng cách an toàn

F lượng ăn dao mm/phút

Ví dụ: G83X20.Y30.Z30.Q2R5F200;

G81 Chu trinh khoét hay doa lỗ không dừng ở cuối hành trình
 Cú pháp:           G81X_Y_Z_R_F_;
 Trong đó:         X,Y tọa độ tâm lỗ
Z cao độ của điểm cuối lỗ

R khoảng cách an toàn

F lượng ăn dao mm/phút

Ví dụ: G81X20Y20Z25R5F200;

G82 Chu trình doa lỗ có dừng ở cuối hành trình

 Cú pháp:          G82X_Y_Z_R_P_F_;


 Trong đó:         X, Y là tọa độ tâm lỗ
Z cao độ của điểm cuối lỗ

R khoảng cách mặt an toàn

P thời gian dừng ở cuối hành trình x1000

F lượng ăn dao

 Ví dụ:        G82X15Y35Z40R5P3000F300;


G84, G74 Chu trình taro ren

G84 Chu trình taro ren phải.

G74 chu trình taro ren trái.

 Cú pháp:          G84(G74)X_Y_Z_R_P_F_;


 Trong đó:         X, Y tọa độ tâm lỗ
Z cao độ điểm cuối hành trình

R khoảng cách an toàn

P thời gian dừng ở cuối hành trình x1000

F là lượng ăn dao, khi ta taro thì giữa F và số vòng quay trục chính S có mỗi quan hệ
với nhau.

F=SxP
Trong đó:

F lượng ăn dao

S số vòng quay trục chính

P bước ren ( được tính theo công thức h = 0,625P với h là chiều cao ren)

G85, G86 chu trình doa lỗ.

G85 dùng để doa tinh lỗ, đặc điểm là dụng cụ đi từ điểm an toàn R đến cao độ Z, và từ
cao độ Z về lại khoảng an toàn R với cùng một lượng ăn dao F.

G86 đặc điểm: khi dụng cụ đến cao độ Z thì trục chính ngừng quay và quay về cao độ
R.

 Cú pháp:          G85(G86)X_Y_Z_R_F_;


 Trong đó:         X, Y tọa độ tâm lỗ
Z cao độ điểm cuối lỗ

R khoảng cách an toàn

F lượng ăn dao

G76 Chu trình doa lỗ tinh

 Cú pháp:          G76X_Y_Z_R_Q_P_F_;


 Trong đó:         X, Y là tọa độ tâm lỗ
Z cao độ điểm cuối

R khoảng cách an toàn

Q khoảng lùi dao ngang tại đáy lỗ

P thời gian dừng cuối hành trình

F lượng ăn dao

Chu trình con

 Cấu trúc của chương trình con


O0001;                 tên chương trình con
….

….                        Vùng thân chương trình

….

M99;                    kết thúc chương trình con

 Cách gọi chương trình con


M98Pxxxxyyyy;

 Trong đó: xxxx là số lần gọi chương trình con. yyyy là tên chương trình con
 Ví dụ: M98P200010 (gọi chương trình con 0010 ra 20 lần)
 Khi không chỉ ra số lần gọi thì máy mặc định là gọi ra 1 lần
 Số thế hệ tối đa có thể lồng nhau là 4, chương trình chính
gọi chương trình con, chương trình con gọi chương trình
cháu, chương trình cháu gọi chương trình chắc. Số lần gọi
tối đa là 999 và có thể gọi chương trình con tại mọi thời
điểm.
 Sau khi thực hiện xong chương trình con xong, hệ thống
không trở về nơi đã gọi mà có thể nhảy đến dòng khác, câu
lệnh như sau:
 M99Pzzzz (zzzz là số thứ tự dòng cần đến)
 Ví dụ: M99P1010   –  sau khi thực hiện xong chương trình con thì nó sẽ
nhảy đến dòng N1010 .
4. Các mã lệnh dùng M-Code trong máy CNC
M00 – Tạm dừng chương trình

M01 – Tạm dừng chương trình có lựa chọn

M02,M30 – kết thúc chương trình, quay lại đầu chương trình

M03 – Trục chính quay thuận

M04 – Trục chính quay ngược

M05 – Dừng quay trục chính

M08 – Bật tước nguội

M09 – Tắt tưới nguội


M10 – Đóng thủy lực với máy tiện là chấu cặp (máy FEELLER hệ fanuc series oi-
MD)

M11 – Mở thủy lực máy tiện là chấu cặp ( máy FEELLER hệ fanuc series oi-MD)

M12 – Đóng thủy lực máy tiện là chấu cặp ( GSK 945, STK T200… )

M13 – Mở thủy lực máy tiện là chấu cặp( GSK 945, STK T200… ) (Đối với máy
Feeler hệ fanuc series -oi MD thì M12 và M13 là lệnh đóng mở thủy lực của ụ động )

M32 – Bật động cơ bơm dầu

M33 – Tắt động cơ bơm dầu

M97 – Đếm số chi tiết

M98 – Gọi chương trình phụ

M99 – Kết thúc chương trình phụ, tiếp tục gia công theo chương trình chính

You might also like