Bộ hậu xử lý cho máy CNC 5 trục

Postprocessor là một mô-đun của phần mềm

CAM vạn năng, giữ vai trò giao diện giữa CAM và

CNC. CAM là phần mềm máy tính chuyên dụng

có nhiệm vụ cung cấp chương trình điều khiển cho

các thiết bị sản xuất là các máy CNC. Yêu cầu cơ

bản đối với một chương trình NC là nó phải tương

thích với máy mà nó phục vụ. Sự tương thích ở đây

bao gồm cả về ngôn ngữ lẫn cấu trúc, tính năng của

máy. Nói chung, các thông tin chứa trong chương

trình NC gồm 2 loại: Loại thứ nhất chỉ liên quan

đến các yếu tố nội tại của quá trình gia công, gồm

quỹ đạo chuyển động tương đối của lưỡi cắt sao với

phôi, các thông số công nghệ như: dụng cụ, lượng

tiến dao, tốc độ trục chính,. đảm bảo chất lượng

và tính kinh tế của quá trình. Loại thứ 2 liên quan

đến đặc tính kỹ thuật của máy công cụ, như kiểu bộ

điều khiển (mỗi bộ điều khiển chỉ có thể hiểu và xử

lý được chương trình có cấu trúc và cú pháp nhất

định), cấu trúc cơ khí của máy công cụ (số lượng

và loại trục điều khiển, giới hạn các thông số công

nghệ,.). Bất kỳ phần mềm CAM nào cũng phải

thỏa mãn yêu cầu trên, có 2 giải pháp kỹ thuật cho

vấn đề này:

Một là tạo ra phần mềm CAM duy nhất,

chuyên dụng để trực tiếp xuất chương trình gia công

cho mỗi máy CNC cụ thể. Giải pháp này kém hiệu

quả vì mỗi nhóm máy đòi hỏi một phần mềm CAM

cho riêng mình.

Hai là tách phần mềm CAM thành 2 mô-

đun. Mô-đun thứ nhất gọi là bộ xử lý (Processor),

có nhiệm vụ xuất một chương trình trung gian, dùng

chung chỉ mô tả quỹ đạo của dao và dùng một ngôn

ngữ chung, chưa cần quan tâm đến cấu trúc, tính

năng của máy và bộ điều khiển cụ thể. Mô-đun thứ

hai gọi là bộ hậu xử lý thông dịch chương trình

trung gian sang dạng tương thích với máy CNC cụ

thể. Khi gặp một bộ máy CNC mới, ta chỉ việc tạo

ra một PP tương ứng.

Bộ hậu xử lý cho máy CNC 5 trục trang 1

Trang 1

Bộ hậu xử lý cho máy CNC 5 trục trang 2

Trang 2

Bộ hậu xử lý cho máy CNC 5 trục trang 3

Trang 3

Bộ hậu xử lý cho máy CNC 5 trục trang 4

Trang 4

Bộ hậu xử lý cho máy CNC 5 trục trang 5

Trang 5

Bộ hậu xử lý cho máy CNC 5 trục trang 6

Trang 6

Bộ hậu xử lý cho máy CNC 5 trục trang 7

Trang 7

pdf 7 trang duykhanh 20040
Bạn đang xem tài liệu "Bộ hậu xử lý cho máy CNC 5 trục", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bộ hậu xử lý cho máy CNC 5 trục

Bộ hậu xử lý cho máy CNC 5 trục
i các hệ thống khác. Một vài hệ 
thống CAD/CAM có thể sinh ra các mã chương 
trình gia công theo mô hình hình học hoặc thậm 
chí cả chương trình gia công hoàn chỉnh. Các mã 
chương trình này sau đó phải được xử lý thêm nhờ 
bộ xử lý ngôn ngữ hoặc bộ PP cho các máy CNC 
cụ thể. 
2. Các yếu tố chính cần giải quyết trong PP
2.1. Động học máy CNC
Đối với các hệ điều khiển theo dạng đường 
liên tục bộ postprocessor phải tính đến động học[5] 
của chuyển động để tránh sai số vị trí.
2.2. Phép biến đổi hình học đối với các máy CNC 
nhiều trục
Trong quá trình sinh ra đường chạy dao 
(toolpath generation), trên các máy CNC nhiều trục 
đòi hỏi một quá trình xử lý tính toán sự định vị của 
trục dụng cụ (tool axis orientations). Trong trường 
hợp này, quá trình tính toán chung sẽ sinh ra dữ liệu 
CL, trong đó mỗi bản ghi của dữ liệu này chứa đựng 
thông tin theo dạng X Y Z I J K [6]. Các giá trị X Y 
Z là giá trị tọa độ của các điểm mũi dao trên quĩ đạo 
chạy dao trong hệ tọa độ phôi, và các giá trị I J K là 
các côsin chỉ phương của véc tơ trục dụng cụ tương 
ứng với các vị trí của dao kể trên trong cùng một hệ 
tọa độ. Do vậy, các bộ PP cho các máy CNC nhiều 
trục phải có khả năng chuyển đổi các giá trị X Y Z I 
J K của CL data sang các dịch chuyển của các trục 
của mỗi máy CNC có cấu hình cụ thể.
2.3. Hiệu chỉnh sai lệch (bù sai số)
Khi yêu cầu tái định vị trục dụng cụ, thì cần 
thiết phải dịch chuyển các tâm quay trong khi quay 
một hoặc cả hai trục quay một cách đồng thời. Nếu 
các dịch chuyển tịnh tiến và dịch chuyển góc này là 
có ở trong cùng một câu lệnh gia công trong bộ điều 
khiển CNC, thì các dịch chuyển tuyến tính và dịch 
chuyển góc sẽ đồng thời diễn ra theo gia số thời 
gian. Kết quả là, quĩ đạo của điểm mũi dao sẽ tuân 
theo một đường cong nào đó có quan hệ với phôi 
gia công. Việc hiệu chỉnh sai lệnh giữa các đường 
cong này và các đoạn tuyến tính như mô tả trong 
CL data là trách nhiệm của phần PP. Trong thực tế, 
các bộ PP hiện hành mới chỉ đảm bảo được rằng sai 
lệch của quĩ đạo thực của điểm mũi dao nằm trong 
giới hạn có thể nào đó so với quĩ đạo mong muốn.
Lẽ tự nhiên, quĩ đạo phi tuyến của điểm mũi 
dao luôn có nhu cầu được tuyến tính hóa [7],[8]. 
Khi độ cong của quĩ đạo dao xấp xỉ với độ cong của 
bề mặt gia công, thì có thể cho phép PP sát nhập 
một số các câu lệnh cắt thẳng thành một câu lệnh 
đơn. Điều này cho phép nâng cao chất lượng bề mặt 
gia công và hiệu suất làm việc của máy.
3. Tạo postprocessor cho máy CNC 5 trục
3.1. Thuật toán tuyến tính hóa đường chạy dao
Khi gia công trên máy CNC 5 trục, các 
đường chạy dao thực sự giữa hai điểm CL không 
phải tuyến tính mà là đường cong. Các đường cong 
trong Hình 1 cho thấy sự khác biệt giữa điểm CL và 
điểm CC thực tế. Đường chạy dao thực này rõ ràng 
là một lỗi do nội suy tuyến tính của máy 5 trục tạo 
ra. Lỗi này cần được kiểm tra và bù sai số, và điều 
này được thực hiện trong PP [10].
ISSN 2354-0575
Khoa học & Công nghệ - Số 11/Tháng 9 - 2016 Journal of Science and Technology 31
Hình 1. Đường dẫn công cụ thực tế giữa hai điểm 
CL[10]
Tuyến tính hóa đường chạy dao được thực 
hiện trong PP bởi nội suy dữ liệu điểm CL mới dọc 
theo đường chạy dao lý tưởng và do đó thêm khối 
mới cho chương trình NC. Một lệnh trong file CL có 
thể tạo ra một vài dòng trong tập tin NC, vì vậy kích 
thước của chương trình NC tăng lên. Các đường 
chạy dao cuối cùng bao gồm các vị trí có nguồn gốc 
trực tiếp từ file dữ liệu CL, và vị trí mới được tạo ra 
bởi CL nội suy dữ liệu trong PP. Tuyến tính hóa sẽ 
không cung cấp chuyển động hoàn hảo của dụng cụ, 
nhưng độ sai lệch với đường chạy dao lý tưởng có 
thể được giảm đến một [9] mức độ chấp nhận được.
Nếu đường chạy dao thực lệch hơn dung sai 
T đối với đường CL tuyến tính, thì đường chạy dao 
sẽ phải được tuyến tính hóa. Vấn đề tuyến tính hóa 
được giải quyết trong PP bằng cách chèn các điểm 
trung gian giữa hai điểm CL liên tiếp, khi độ lệch 
nằm trong miền dung sai không thỏa mãn.
Cho rằng V
i
, V
i+1
 và V
i+2
 là ba điểm liên tiếp 
trong dữ liệu CL (Hình 2). Các chương trình NC 
tương ứng của V
i
 là N
i
 = [X
i
, Y
i
, Z
i
, B
i
, C
i
]. Mỗi trục 
được giả định để di chuyển tuyến tính giữa các điểm 
quy định. Vì vậy, mỗi điểm trong đường cong thực 
tế có thể được thể hiện là:
N
n,t
 = N
i
 + t(N
i+1
 – N
i
) (1)
Trong đó t là thời gian (0 ≤ t ≤1).
Tương ứng CL dữ liệu V
i,t
 cho N
n,t
 có thể 
được xác định bởi phương trình động lực học trong 
[3, 4]. Hơn nữa, mỗi điểm trên đường chạy dao lý 
tưởng có thể được xác định như sau:
V
i,t
 = V
i + t
(V
i+1
 – V
i
) (2)
Hình 2. Tuyến tính đường chạy dao
Có thể được nhìn thấy từ Hình 2, khoảng 
cách giữa V
n,t
 và V
i,t
 tạo thành một độ lệch, ký hiệu 
d
i,t
. Nếu độ lệch tối đa (d
i,t 
)
max
 vượt quá dung sai cho 
phép thì các dữ liệu V
i,t
 được chèn vào các dữ liệu 
CL gốc. Thông thường, điểm trung bình có t = 0,5 
là điểm được chọn. Sau khi điểm trung gian V
i,t
 đã 
được đưa vào, các mã NC tương ứng có thể được 
tạo ra.
Thuật toán tuyến tính hóa đường chạy dao 
như sau:
1. Chọn t = 0.5
2. Đọc V
i
, V
i+1
 từ CL file
3. Tính toán V
i,t
 = V
i
 + t(V
i+1
 – V
i
)
4. Tính toán Nn, Nn+1 từ Vi, và Vi+1 trên cơ sở 
động học ngược [3, 4].
5. Tính N
n,t
 = N
i
 + t(N
i+1
 – N
i
)
6. Tính V
n,t
 từ N
n,t
 trên cơ sở động học thuận
7. Tính khoảng cách d
i,t 
8. So sánh d
i,t
 với dung sai T
- Nếu di, d
i,t
 ≤ T, thì đọc tiếp điểm CL, i 
= i + 1.
- Nếu d
i,t
 > T, chèn V
i,t
 ở giữa V
i
 và V
i+1
 và 
lặp lại từ bước 2 đến bước 8.
Sơ đồ thuật toán tuyến tính hóa đường chạy 
dao được thể hiện trong Hình 3.
ISSN 2354-0575
Journal of Science and Technology32 Khoa học & Công nghệ - Số 11/Tháng 9 - 2016
BEGIN
Đọc điểm V
i
 và V
i+1
từ CL file
Vi,t = Vi+ t(Vi+1 - Vi)
Động học ngược
tính N
i
, N
i+1
N
i,t
 = N
i + t(Ni+1 - Ni)
Động học thuận
tính V
n,t
Điểm CL tiếp (i=i+1)
d
i,t
 <= T
Đọc hết CL file?
END
V
i =
 V
i; 
V
i+
1 =
 V
n,
t
No
Yes
Yes
No
Hình 3. Thuật toán tuyến tính đường chạy dao
3.2. Tính toán hệ tọa độ máy
Dữ liệu CL là những vị trí cần cắt (x, y, z) 
và định hướng (i, j, k) được định nghĩa trong hệ tọa 
độ phôi. Ở đây các dữ liệu x, y, z, i, j, k phải được 
chuyển về hệ tọa độ máy X, Y, Z, và (B, C) hoặc 
(A, B) hoặc (A, C) để điều khiển sự chuyển động 
của trục máy. Bằng phương pháp biến đổi động học 
ngược, có thể được tính toán được dữ liệu CL gồm 
có: ba chuyển động liên tuyến tính (X, Y, Z) và hai 
chuyển động khớp quay (B, C) hoặc (A, B) hoặc (A, 
C). Điều này có thể được thực hiện bằng việc chuyển 
đổi hình học từ hệ tọa độ WCS sang hệ tọa độ MCS.
Hình 4 là mô hình máy CNC năm trục DMU 
70 eVolution được sử dụng để chứng minh cho 
phương pháp được đề xuất. Để tính toán tọa độ máy 
(X, Y, Z, B, C) từ dữ liệu CL (x, y, z, i, j, k), thì phải 
bổ sung hệ tọa ở một số khớp. Các hệ tọa độ tham 
chiếu được xác định từ việc việc chuyển đổi từ hệ 
tọa độ phôi sang hệ tọa độ máy. Các hệ tọa độ tham 
chiếu trung gian được hiển thị trong Hình 5 và sự 
chuyển đổi được tính như sau:
Hình 4. Máy CNC năm trục DMU 70 eVolution
Hình 5. Các hệ tọa độ tham chiếu trung gian
O
0
 (x
0
y
0
z
0
): nằm ở tâm bề mặt bàn C, khi B = 
C = 00. Trục z
0
 trùng với tâm trục C.
O
1
 (x
1
y
1
z
1
): Thu được bằng cách quay 
(x
0
y
0
z
0
) quanh z
0
 một góc C.
O2 (x2y2z2): Thu được bằng cách dịch (x1y1z1) 
một khoảng cách +d theo z
0
O
3
 (x
3
y
3
z
3
): Thu được bằng cách quay 
(x2y2z2) quanh x2 một góc +45
0
O
4
 (x
4
y
4
z
4
): Thu được bằng cách quay 
(x
3
y
3
z
3
) quanh z
3
 một góc B
O
5
 (x
5
y
5
z
5
): Thu được bằng cách quay 
(x
4
y
4
z
4
) quanh x
4
 một góc -450
Ow (xwywzw): Thu được bằng cách dịch 
(x
5
y
5
z
5
) một khoảng cách là -d theo z
4
Ot (xtytzt): Hệ tọa độ máy cố định ở trục 
chính.
Bước 1: Quay quanh z
0
 một góc C 
cos sin
sin cos
x x C y C
y x C y C
z z
1 0 0
1 0 0
1 0
= -
= +
=
 (3)
Bước 2: Dịch chuyển O
1
 → O2 theo trục z0 
khoảng cách +d
x x x
y y y
z z z
o o
o o
o o
2 1 1 2
2 1 1 2
2 1 1 2
= +
= +
= +
 với zo1o2 = d (4)
Bước 3: Quay quanh x2 một góc +45
0
sin
sin
x x
y y c z
z y z c
45
45 45
os45
os
3 2
3 2
0
2
0
3 2
0
2
0
=
= +
=- +
 (5)
Bước 4: Quay quanh z
3
 một góc B 
cos sin
sin cos
x x B y B
y x B y B
z z
4 3 3
4 3 3
4 3
= +
=- +
=
 (6)
ISSN 2354-0575
Khoa học & Công nghệ - Số 11/Tháng 9 - 2016 Journal of Science and Technology 33
Bước 5: Quay quanh x
4
 một góc -450
sin
sin
x x
y y c z
z y z c
45
45 45
os45
os
5 4
5 4
0
4
0
5 4
0
4
0
=
= -
= +
 (7)
Bước 6: Dịch chuyển một khoảng -d theo z
5
x x x
y y y
z z z
w o o
w o o
w o o
5 5
5 5
5 5
w
w
w
= +
= +
= +
 với zo5ow = -d (8)
Dữ liệu NC của các thông số X, Y, Z được 
xác định:
X x x
Y y y
Z z z z z
t w
t w
t O O T ww t
= =
= =
= = - +
Z
[
\
]]]
]]]]
 (9)
Trong đó: Z
T
 là chiều dài của dụng cụ cắt.
Với cosB = 2k
0
 - 1, X, Y, Z sẽ là:
cos
sin
X y k k x x k C
x k k y k y C
d z k k
2 2
2 2
2
0 0 0
2
0 0 0
0 0 0
2
0 0 0
0 0 0
2
= - - - + +
+ - + - +
+ - -
_
_
_ _
i
i
i i
8
8
B
B (10)
cos
sin
Y x k k y k C
y k k x k C z d dk z k
2
2
0 0 0
2
0 0
0 0 0
2
0 0 0 0 0 0
= - + +
+ - - - + - +
_
_
i
i
8
8
B
B
(11)
cos
sin
Z x k k y k y C
y k k x k x C d dk zk
2
2
0 0 0
2
0 0 0
0 0 0
2
0 0 0 0 0
= - + - +
+ - - + + - +
_
_
i
i
8
8
B
B
(12)
Ở đây x
0
, y
0
, z
0
, i
0
, j
0
, k
0
 là vị trí mũi dao và 
định hướng dụng cụ được đưa ra trong dữ liệu CL.
Bằng phương pháp tương tự và lưu ý rằng 
i
j
k
0
0
1
4
4
4
=
=
=
Z
[
\
]]]
]]]]
, thì các trục C và B được xác định:
arctan ,C k i k k j
k j k k i
1 2
1 2
0 0 0 0
2
0
0 0 0 0
2
0
= - + -
- -+
_ _
_ _
i i
i i> H (13)
cosB = 2k
0
 - 1 & B = arccos(2k
0
 - 1) (14)
3.3. Phần mềm ứng dụng
Một mô-đun phần mềm tuyến tính hóa 
đường chạy dao đã được phát triển bằng ngôn ngữ 
Visual Basic. Giao diện người dùng của chương 
trình được thể hiện trong Hình 6.
Để thể hiện rõ hiệu quả của công cụ thuật 
toán tìm đường tuyến tính đầu tiên chúng ta kiểm 
tra đối với trường hợp của bốn điểm CL. Bảng 1 cho 
thấy bốn điểm dữ liệu CL để thử nghiệm, và Bảng 2 
cho thấy các dữ liệu CL sau khi tuyến tính hóa bằng 
các thuật toán được đề xuất. Trong ví dụ này chọn 
dung sai T = 0.1, dữ liệu CL sau khi tuyến tính có 11 
điểm thay vì bốn điểm; các dòng in đậm trong bảng 
2 là các điểm chèn vào. Hình 7 là giao diện người 
dùng nhập dữ liệu kiểm tra CL. Hình 8 là giao diện 
của Postprocessor.
Bảng 1. CL data trước khi tuyến tính hóa
x y z i j k
Điểm 1 20 0 -155 0.6327447124 0.465569252 0.6187742456
Điểm 2 100 0 -150 0.628284235 0.461387437 0.62640867
Điểm 3 200 0 -146 0.623829809 0.457180279 0.634039219
Điểm 4 300 0 -139 0.618938519 0.452948814 0.6416794216
Bảng 2. CL data sau khi tuyến tính hóa
x y z i j k
Điểm 1 20 0 -155 0.6327447124 0.465569252 0.6187742456
Điểm 11 60 0 -152.5 0.63051447415 0.4634771812 0.6225885563
Điểm 2 100 0 -150 0.628284235 0.461387437 0.62640867
Điểm 21 125 0 -149 0.62713392215 0.460335647825 0.628311955
Điểm 22 150 0 -148 0.6259836048 0.45928385845 0.630221043
Điểm 23 175 0 -147 0.62483329465 0.458232069075 0.632130131
Điểm 3 200 0 -146 0.623829809 0.457180279 0.634039219
Điểm 31 255 0 -144 0.6224968656 0.45612241345 0.63594926965
Điểm 32 250 0 -142.5 0.6213107503 0.4550645472 0.6378593203
Điểm 33 275 0 140.75 0.620126435 0.45400668095 0.63976937095
Điểm 4 300 0 -139 0.618938519 0.452948814 0.6416794216
ISSN 2354-0575
Journal of Science and Technology34 Khoa học & Công nghệ - Số 11/Tháng 9 - 2016
Hình 6. Giao diện chương trình tuyến tính hóa đường chạy dao
Hình 7. Giao diện người dùng để nhập 4 điểm dữ liệu CL
Hình 8. Giao diện của postprocessor 
ISSN 2354-0575
Khoa học & Công nghệ - Số 11/Tháng 9 - 2016 Journal of Science and Technology 35
4. Kết luận
Dựa trên phương pháp đã tính toán, tác giả 
xây dựng một mô đun phần mềm trên nền windows 
bằng ngôn ngữ lập trình Visual Basic. Kết quả mô 
phỏng kiểm chứng, áp dụng cho máy phay CNC 
5 trục với hai trục quay trên bàn gá phôi (Deckel 
Maho DMU 70 eVoluion), chỉ ra rằng bộ hậu xử 
lý có tính toán tuyến tính hóa đường chạy dao làm 
giảm sai số đường chạy dao, bộ hậu xử lý đáng tin 
cậy và có thể tùy biến để áp dụng cho các kiểu cấu 
hình máy CNC khác nhau.
Tài liệu tham khảo
[1] . Karlo Apro, Secrets of 5-Axis Machining, Industrial Press, Inc. New York 2008.
[2]. Mihir Adivarekar and Frank Liou, Developing a General Postprocessor for Multi-Axis CNC 
Milling Centers, Computer- Aided Design & Applications, pp.57- 68. 2012.
[3]. Tran Duc Tang, A Five-axis Postprocessor based on Inverse Kinematics Transformation, 
Advanced Material Research 662-663, pp.525-530, 2013. 
[4]. Tran Duc Tang, Calculation of Machine Coordinates and Postprocessor for 5-axis CNC Milling 
Machine, Tuyển tập công trình Hội nghị Cơ điện tử toàn quốc lần thứ 6, tr350-356, 2012.
[5]. Chen-Hua She, Design of A Generic Five-axis Postprocessor based on Generalized Kinematics 
Model of Machine Tool, International Journal of Machine Tools & Manufacture, pp. 537–545, 2007
[6]. Hai-Yin Xu & Lian Hu, A Movel Kinematic Model for Five-axis Machine Tools and its CNC 
Applications, Int J Adv Manuf Technol , pp.1297–1307, 2013.
[7]. Tran Duc Tang, Nguyen Phu Thuy, Vuong Si Kong, Tool Path Linearization Algorithm and 
Postprocessor for Five-axis CNC Machine, Hội nghị toàn quốc lần thứ 3 về Điều khiển và Tự động 
hoá - VCCA-2015, tr 860-868, 2015.
[8]. Nuodi Huang, Yong qiao Jin, and QingzhenBi, Integrated Post-processor for 5-axis Machine 
Tools with Geometric Errors Compensation, International Journal of Machine Tools & Manufacture, 
pp.65–73. 2015
[9]. Knut Sorby, Inverse Kinematics of Five-Axis Machines Near Singular Configurations, 
International Journal of Machine Tools & Manufacture 47, pp.299-306, 2007.
[10]. Erik L.J. Bohez, Compensating System Errors in 5-axis NC Machining, Computer-Aided 
Design 34, pp.391-403, 2002.
POSTPROCESSOR FOR FIVE-AXIS CNC MACHINE
Abstract:
Postprocessing is a link interface with computer systems NC and its CAM data conversion CL-
compatible so that each particular CNC machine [1], [2]. It has functions to read, translate production 
orders given by the CAM system and convert them into NC code depending on the combination of machine 
and control configuration. This paper outlines the postprocessors, proposed linearization algorithm 
toolpath and construction of post-processing for 5-axis CNC machine.
Keywords: Linearization toolpath; post-processor; 5-axis CNC machine; Inverse kinematics; CNC 
programming; CAD/CAM/CNC.

File đính kèm:

  • pdfbo_hau_xu_ly_cho_may_cnc_5_truc.pdf