Xây dựng mô-đun hỗ trợ CAPP xuất gcode tự động trực tiếp từ đối tượng gia công sử dụng lập trình tham số

Tóm tắt - Lập quy trình công nghệ có sự trợ giúp của máy tính

(CAPP) ngày càng được chú trọng phát triển nhằm đưa công nghệ,

kinh nghiệm và trí tuệ của con người vào lĩnh vực tự động hóa sản

xuất. Việc sử dụng các dữ liệu trích xuất từ CAPP bao gồm các

thông tin hình học và công nghệ của đối tượng gia công để tự động

tạo ra các chương trình Gcode gia công trên máy CNC chưa được

nghiên cứu cụ thể. Mô-đun lập trình CNC theo kiểu tham số cho

các đối tượng gia công phổ biến như mặt phẳng, hốc, đảo, rãnh,

lỗ v.v. được trình bày trong bài báo đã xử lý hiệu quả bài toán đó,

từ đó hoàn thiện dòng tích hợp CAD/CAPP/CNC mà không cần

thông qua các thao tác bằng tay trong mô-đun CAM. Với mỗi đối

tượng gia công chỉ cần khai báo thông số cơ bản, mô-đun sẽ hỗ

trợ xuất Gcode tự động cho từng đối tượng. Trong bài báo, một chi

tiết với các đối tượng gia công cơ bản được sử dụng để mô tả

phương pháp và kiểm tra tính hiệu quả của mô-đun

pdf6 trang | Chuyên mục: Cơ Ứng Dụng | Chia sẻ: yen2110 | Lượt xem: 466 | Lượt tải: 0download
Tóm tắt nội dung Xây dựng mô-đun hỗ trợ CAPP xuất gcode tự động trực tiếp từ đối tượng gia công sử dụng lập trình tham số, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
á trị hiệu chỉnh, nhường lại việc tính 
toán đường chạy dao xung quanh biên dạng cho hệ điều 
khiển máy CNC thực hiện thông qua chức năng hiệu chỉnh 
bán kính dao phay G41/G42. Khi phải chạy nhiều đường 
chạy song song biên dạng thì giá trị hiệu chỉnh bán kính 
dao sẽ được thay đổi tương ứng để tạo thành các đường 
chạy dao cho các vòng cắt thứ i khác nhau. Với thuật toán 
như thế, đường chạy dao cho các vòng cắt là rất rõ ràng, dễ 
nắm bắt và đặc biệt là trong kiểm soát theo những kiểu 
đường cố định và chỉ thay đổi từ bước gia công từ thô sang 
tinh. Các kiểu đường chạy dao trong quá trình cắt thô và 
cắt tinh được minh họa trong Hình 5. 
Trong quá trình cắt thô biên dạng, đường chạy dao là 
các đường hoàn toàn đồng dạng so với biên dạng gia công 
(i = 1÷ n, n là tổng số vòng cắt thô trên 1 lớp cắt cùng độ 
sâu Z). Tọa độ các điểm chạy dao trên các đường này là do 
hệ điều khiển tự động tính toán và nội suy ra thông qua việc 
thay đổi giá trị hiệu chỉnh bán kính dao Hi tương ứng với 
mỗi đường chạy thứ i dao dựa trên tổng lượng dư biên dạng 
cần cắt M, khoảng cách stepover B, lượng dư để lại cho 
phay tinh U, bán kính dao D và giá trị logic A (A=1, 0) thể 
hiện qua phương trình 1. Thuật toán đường chạy dao này 
sẽ tạo ra chương trình gia công thô đơn giản và dễ hiểu cho 
người dùng. 
𝐻𝑖𝑡ℎô = [𝑀 −
𝐷
2
+ (𝑖 − 1)𝐵] 𝐴 + [
𝐷
2
+ 𝑈] (1 − 𝐴) (1) 
Quá trình cắt tinh (i = n+1) sẽ cắt hết phần lượng dư để 
lại sau bước cắt thô để tạo thành biên dạng với kích thước 
và độ nhám bề mặt yêu cầu. Đường chạy dao ở bước này 
có một chút thay đổi ở giá trị hiệu chỉnh là bán kính dao và 
đường chạy dao có thêm các đoạn tiếp vào dao và thoát dao 
theo bán kính cong R được qui định bởi người lập trình 
hoặc có thể để theo tính toán mặc định. Do đó, các điểm 
lập trình ăn dao vào (1→2→3) và thoát dao ra (3→5→1) 
sẽ được tính dựa thông số hình học của đoạn biên dạng đầu 
(P1-P2), bán kính tiếp R và lượng dư cắt lớn nhất M như 
mô tả trong hình 5b. Tọa độ của các điểm này được thể hiện 
trong phương trình (2-6) dựa trên góc C của đoạn biên dạng 
tiếp vào so với trục X+. Hình 6 mô tả thuật toán để tạo ra 
đường chạy dao cho đảo biên dạng ở các bước phay thô và 
phay tinh được sử dụng trong mô-đun. 
Hình 5. Đường chạy dao cho phần a) cắt thô và b) cắt tinh 
𝑋3 =
𝑋𝑃1 + 𝑋𝑃2
2
 𝑌3 =
𝑌𝑃1 + 𝑌𝑃2
2
(2) 
𝑋1 = 𝑋3 − 2𝑅 ∗ 𝑠𝑖𝑛𝐴 𝑌1 = 𝑌3 − 2𝑅 ∗ 𝑐𝑜𝑠𝐴 (3) 
𝑋4 =
𝑋1 + 𝑋3
2
 𝑌4 =
𝑌1 + 𝑌3
2
(4) 
𝑋2 = 𝑋4 + 𝑅 ∗ 𝑐𝑜𝑠𝐴 𝑌2 = 𝑌4 − 𝑅 ∗ 𝑠𝑖𝑛𝐴 (5) 
𝑋5 = 2𝑋4 − 𝑋2 𝑌5 = 𝑌 − 𝑌2 (6) 
Trong đó: A=180 - C, C là góc tạo bởi đoạn biên dạng 
tiếp vào và vector đơn vị  0,1u trên trục X+. 
𝑐𝑜𝑠𝐶 =
0 ∗ (𝑌𝑃2 − 𝑌𝑃1) + 1 ∗ (𝑋𝑃2 − 𝑋𝑃1) 
1 ∗ √(𝑋𝑃2 − 𝑋𝑃1) 2 + (𝑌𝑃2 − 𝑌𝑃1)2
(7) 
b) 
a) 
56 Phùng Xuân Lan, Nguyễn Kiên Trung 
Xác định đối tượng gia công
(Dạng đảo biên dạng)
Trích xuất các thông số 
của đảo biên dạng
- Tọa độ tuyệt đối của Z
- Chiều cao của đảo K
- Khai báo biên dạng (P, Q)
- Lượng dư lớn nhất theo 
XY (M)
- Vị trí hiệu chỉnh bán kính 
(H)
- Số hiệu dao (T)
- Lượng dư dành cho gia 
công tinh theo trục X (U)
- Lượng dư dành cho gia 
công tinh theo trục Z (W)
- Khoảng cách giữa hai 
đường chạy dai (B)
- Lượng gia tăng theo Z (C)
- Số vòng quay trục chính S
- Lượng chạy dao F
- Khoảng lùi dao an toàn R
Zhiện tại = Z + K + R; HChiện tại = M - D/2
nbiên dạng = 1+100 * (M-U-D)/(D*B)
mlớp = (K – W)/C
HChiện tại = HChiện tại - 100*B*D/2
 Zhiện tại - C > Z + W 
Zhiện tại = Zhiện tại - C
 n= 0, m=0
Gọi biên dạng gia công
 (Sử dụng G41)
m = m + 1
Kết thúc
Bắt đầu
Zhiện tại = Z + W 
HChiện tại > D/2 + U HChiện tại = D/2 + U
n ≥ nbiên dạng 
n = n+1
m ≥ mlớp 
HChiện tại: Giá trị hiệu chỉnh 
bán kính hiện tại
nbiên dạng: Số vòng quanh 
biên dạng
mlớp: Số lớp theo chiều sâu
-
+
+
-
Lớp cuối cùng
Vòng cuối cùng
-
+
-
+
Tính toán các điểm vào, ra 
biên dạng
Hình 6. Sơ đồ khối mô khối mô tả quá trình tính toán và 
 hình thành Gcode cho đảo biên dạng 
5. Xây dựng và thử nghiệm hiệu quả mô-đun chuyển 
đổi Gcode 
Hình 7. Giao diện của mô-đun chuyển đổi Gcode 
Mô-đun chuyển đổi Gcode được viết dựa trên ngôn ngữ 
C#. Mô-đun có tính năng cơ bản như: hỗ trợ và minh họa 
đường chạy dao cho các đối tượng gia công cơ bản. Trong 
giao diện chính là phần nhập chu trình Gcode đặc trưng cho 
các đối tượng gia công, phần chuyển đổi sẽ hỗ trợ để 
chuyển đổi các chu trình Gcode này sang Gcode dưới dạng 
chương trình cụ thể để có thể chạy trên các máy gia công 
CNC. Bên cạnh đó, một giao diện mô phỏng đường chạy 
dưới dạng 2D cũng được tích hợp vào mô-đun để giúp 
minh họa trực quan các đường chạy dao tương ứng với từng 
câu lệnh Gcode giúp người lập trình có thể giám sát được 
các đường chạy dao trong chương trình. 
Để minh họa cho khả năng thực thi và độ tin cậy của 
gia công chương trình CNC tự động sinh ra với mô-đun 
chuyển đổi, một chi tiết với một số đối tượng gia công cơ 
bản được đưa ra thử nghiệm. Dưới đây là toàn bộ chương 
trình Gcode mới để gia công chi tiết ví dụ và trích đoạn 
chương trình Gcode (chương trình chính và chương trình 
con) cho hệ điều khiển Fanuc21C được mô-đun chuyển đổi 
xuất ra. Trong ví dụ này, chương trình ngắn gọn với 17 câu 
lệnh bao gồm các chu trình Gcode mới là chu trình phay 
mặt phẳng G130/G131, chu trình phay đảo biên dạng 
G104/G105 và chu trình gia công hệ lỗ sâu phân bố trên 
vòng tròn G183. 
• Chương trình viết theo các chu trình Gcode mới để 
gia công chi tiết 
N1 G54 
N2 G21 G90 G40 
N3 G130 X0 Y0 Z0 I55 J40 K1.5 
D18 E0 T01 
N4 G131 B50 C0.5 R2 W0 
S1000 F150 
N5 G104 Z-5 K5 H12 D12 E0 T02 
N6 G105 P7 Q15 B75 C1 R2 
M15 U0.5 W0 S1000 F150 
N7 G00 X10.0 Y10.0 
N8 G01 X5.0 Y25.0 
N9 G02 X15.0 Y35.0 R10.0 
N10 G03 X40.0 Y35.0 R30.0 
N11 G02 X50.0 Y25.0 R10.0 
N12 G01 Y20.0 
N13 G01 X45.0 Y10 
N14 G01 X30.0 Y7.0 
N15 G01 X10.0 Y10.0 
N16 G183 X27 Y17 Z0 A10 
K5 M4 I40 R10 T03 C2 F100 
S1000 
N17 M30 
• Chương trình chính Gcode (Fanuc21C) 
N42 #26 = -5 (Z +/- ) 
N43 #6 = 5 (K +) 
N44 #11 = 12 (H) 
N45 #7 = 12 (D) 
N46 #8 = 0 (E) 
N47 #2 = 75 (B %) 
N64 G94 G97 F#9 S#19 
N65 M06 T#20 M03 
N66 G43 H#20 
N67 #102 = #7 * #2 / 100 
N68 #103 = 2 (So vong XY) 
N69 #104 = 5 (So lop Z) 
N70 #100 = 0 
N71 #105 = #13 - [#7/2] 
N72 #101 = 1 
N73 #106 = 0.94868 (SinA) 
N74 #107 = 0.31623 (CosA) 
N75 M98 P101040 
• Chương trình con Gcode (Fanuc21C) cho phay đảo 
biên dạng 
O1040 
N1 IF[#100 LT #103] GOTO5 
N2 #101 = #101 + 1 
N3 #100 = 0 
N4 #105 = #13 - [#7/2] 
N5 #100 = #100 + 1 
N6 IF[#100 LT #103] GOTO8 
N7 #105 =#7/2+#21 
N8 G90 G10 L11 P#11 R#105 
N9 G41 H#11 
N11 G90 G00 X7.5 Y17.5 
N15 G01 Z#108 
N16 G01 X5 Y25 
N17 G02 X15.0 Y35.0 R10.0 
N18 G03 X40.0 Y35.0 R30.0 
N19 G02 X50.0 Y25.0 R10.0 
N20 G01 Y20.0 
N21 G01 X45.0 Y10 
N22 G01 X30.0 Y7.0 
N23 G01 X10.0 Y10.0 
N25 G40 G00 
X1*#105*#106+7.5 
ISSN 1859-1531 - TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI HỌC ĐÀ NẴNG, VOL. 17, NO. 1.1, 2019 57 
Z#26+#6+#18 
N12 #108=-#101*#3 
N13 IF [[#26 + #23] LT #108] 
GOTO15 
N14 #108 = #26+#23 
Y1*#105*#107 +17.5 
N26 #105 = #105 - #102 
N27 IF[#105 GT 0] GOTO29 
N28 #105=#102-#21 
Hình 7 thể hiện giao diện của mô-đun chuyển đổi với 
các chức năng tương ứng. Cửa sổ lệnh bên trên cho phép 
nhập các chu trình Gcode mới để gia công chi tiết. Cửa sổ 
dưới chính là kết quả xuất Gcode sử dụng trực tiếp trong 
hệ điều khiển Fanuc21 hoặc Fanuc31. 
Hình 8. Kết quả mô phỏng gia công trên WinNC Fanuc21 
Kết quả của mô phỏng gia công với chương trình Gcode 
chuyển đổi theo Fanuc 21C được thể hiện trên Hình 8. Đối 
với phay mặt phẳng cần phay 3 lớp để ăn hết chiều sâu và 
phay đảo biên dạng cần phay 5 lớp để ăn hết chiều sâu và 
mỗi lớp chạy 2 vòng để ăn hết lượng dư theo bề rộng. Số 
các lớp và vòng cắt là do mô-đun tự động tính toán ra dựa 
trên các thông số hình học và công nghệ của đối tượng gia 
công. Hình 8, mô tả hình ảnh gia công tại lớp 1 và lớp 2 
của phay phẳng, vòng 1 lớp 1 và vòng 2 lớp 4 của phay đảo 
biên dạng và kết quả gia công toàn bộ chi tiết. Từ các kết 
quả mô phỏng cho thấy, chương trình xuất ra là hoàn toàn 
khả thi để gia công chi tiết. 
6. Kết luận 
Bài báo cùng kết quả đạt được đã cho thấy, phương 
pháp lập trình tham số hiệu quả với việc xuất Gcode trực 
tiếp từ đối tượng gia công đã được trích xuất từ CAPP. Với 
lập trình theo kiểu tham số, chương trình gia công rất ngắn 
gọn và rõ ràng, dễ theo dõi và hiệu chỉnh chứ không như 
CAM. Mô-đun chuyển đổi có thể được sử dụng hỗ trợ lập 
trình bằng tay với mã lệnh Gcode mới và số dòng lệnh nhập 
vào ngắn gọn, rõ ràng hoặc kết hợp với mô-đun 
CAD/CAPP để tạo thành dòng tích hợp CAD/CAPP/CNC 
hoàn chỉnh. Trong các nghiên cứu tiếp theo, nhóm sẽ tập 
trung tới các biên dạng là đường cong phức tạp 2D, 3D và 
độ chính xác gia công trong so sánh với chương trình xuất 
từ mô-đun CAM. 
TÀI LIỆU THAM KHẢO 
[1] Mohd Asif Hasan. A Practical Approach to the use of Local 
Variables in CNC Machines Programming for Fanuc Custom 
Macros. Journal of Material Science and Mechanical Engineering 
(JMSME). Volume 3, Issue 3; 2016 p. 254-257 
[2] M. Sadaiah1, D. R. Yadav2, P. V. Mohanram1 and P. Radhakrishnan 
A Generative Computer-Aided Process Planning System for Prismatic 
Components. Int J Adv Manuf Technol (2002) 20:709–719 
[3] Mohd Asif Hasan A Conceptual Framework of Common Variables 
in CNC Machines Programming for Fanuc Custom Macros. Journal 
of Material Science and Mechanical Engineering (JMSME). 
Volume 3, Issue 3; April-June, 2016 p. 250-253 
[4] Peter Smid. Fanuc CNC Custom Macros. Industrial Press Inc. 2005. 
[5] Vratraj Joshi, Keyur Desai, Harit Raval. Machining of Archimedean 
spriral by parametric programming. International Journal of Modern 
Manufacturing Technologies. Vol. VIII, No. 2. 2016 p. 25-30.
(BBT nhận bài: 12/12/2018, hoàn tất thủ tục phản biện: 20/01/2019) 

File đính kèm:

  • pdfxay_dung_mo_dun_ho_tro_capp_xuat_gcode_tu_dong_truc_tiep_tu.pdf