Bài viết này trình bày sơ lược về Postprocessor, đề xuất thuật toán tuyến tính hóa đường chạy dao và xây dựng bộ hậu xử lý cho máy CNC 5 trục. Mời các bạn cùng tham khảo!
ISSN 2354-0575 BỘ HẬU XỬ LÝ CHO MÁY CNC TRỤC Vương Sĩ Kông Trường Đại học Sư phạm Kỹ thuật Hưng Yên Ngày nhận: 27/06/2016 Ngày sửa chữa: 03/08/2016 Ngày xét duyệt: 12/09/2016 Tóm tắt: Bộ hậu xử lý (Postprocessor- PP) giao diện liên kết hệ thống CAM với máy CNC chuyển đổi liệu CL cho tương thích với máy CNC cụ thể [1], [2] Nó có chức đọc, dịch lệnh sản xuất đưa hệ thống CAM chuyển đổi chúng thành mã NC tùy thuộc vào kết hợp máy cấu hình điều khiển Bài báo trình bày sơ lược Postprocessor, đề xuất thuật tốn tuyến tính hóa đường chạy dao xây dựng hậu xử lý cho máy CNC trục Từ khóa: Tuyến tính hóa đường chạy dao; Bộ hậu xử lý; Máy CNC trục; Động học ngược; Lập trình CNC; CAD/CAM/CNC Các từ viết tắt CC Cutter Contact CL Cutter Location PP Post-processor CAD Computer-Aided Design CAM Computer-Aided Manufacturing CNC Computer Numerical Control MCS Machine Coordinate System WCS Workpiece Coordinate System Mở đầu Postprocessor mô-đun phần mềm CAM vạn năng, giữ vai trò giao diện CAM CNC CAM phần mềm máy tính chun dụng có nhiệm vụ cung cấp chương trình điều khiển cho thiết bị sản xuất máy CNC Yêu cầu chương trình NC phải tương thích với máy mà phục vụ Sự tương thích bao gồm ngơn ngữ lẫn cấu trúc, tính máy Nói chung, thơng tin chứa chương trình NC gồm loại: Loại thứ liên quan đến yếu tố nội trình gia cơng, gồm quỹ đạo chuyển động tương đối lưỡi cắt với phôi, 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 tính kinh tế trình Loại thứ liên quan đến đặc tính kỹ thuật máy cơng cụ, kiểu điều khiển (mỗi điều khiển hiểu xử lý chương trình có cấu trúc cú pháp định), cấu trúc khí máy công cụ (số lượng loại trục điều khiển, giới hạn thông số công nghệ, ) Bất kỳ phần mềm CAM phải thỏa mãn yêu cầu trên, có giải pháp kỹ thuật cho vấn đề này: Một tạo phần mềm CAM nhất, chuyên dụng để trực tiếp xuất chương trình gia cơng Khoa học & Công nghệ - Số 11/Tháng - 2016 cho máy CNC cụ thể Giải pháp hiệu nhóm máy địi hỏi phần mềm CAM cho riêng Hai tách phần mềm CAM thành môđun Mô-đun thứ gọi xử lý (Processor), có nhiệm vụ xuất chương trình trung gian, dùng chung mô tả quỹ đạo dao dùng ngôn ngữ chung, chưa cần quan tâm đến cấu trúc, tính máy điều khiển cụ thể Mô-đun thứ hai gọi 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áy CNC mới, ta việc tạo PP tương ứng Các phần mềm CAD/CAM có đầy đủ chức đắt, đảm bảo chức xử lý Nhờ có hậu xử lý mà ta dùng chung phần mềm CAD/CAM cho nhiều máy CNC Để chuẩn bị chương trình NC cho máy CNC phải quan tâm đến hai yếu tố: yếu tố hình học sản phẩm gia cơng yếu tố yêu cầu chuyên biệt khác máy công cụ Trong thực tiễn nay, tất hệ thống quan tâm đến điều cách sử dụng chương trình đơn nhất, cách sử dụng hai chương trình (hai cơng đoạn riêng rẽ) để chia sẻ gánh nặng trình tạo lập chương trình gia cơng, là: - Q trình xử lý đưa kết chung - Quá trình hậu xử lý đưa kết riêng biệt Quá trình xử lý đưa xuất kết chung sinh liệu vị trí qui ước dụng cụ (CL-data) Thông thường, CL-data không phụ thuộc vào máy CNC riêng biệt Về mặt chất, CL-data tập hợp giá trị toạ độ X, Y, Z vị trí mũi dao (Tooltip), phần tử tập hợp Journal of Science and Technology 29 ISSN 2354-0575 xếp theo trình tự di chuyển dụng cụ theo quĩ đạo hình học Các câu lệnh đặc biệt chương trình gia cơng (ví dụ tốc độ trục chính, lượng tiến dao, thay đổi dụng cụ, đổi phơi, ) xử lý Postprocessor Các hãng sản xuất máy công cụ khác hồn tồn đưa cấu trúc máy công cụ với điều khiển CNC khác Có điều khiển yêu cầu vị trí chạy dao phải tính tốn cho gia tốc trục chuyển động chạy dao không vượt giá trị tối đa cho phép Tuy nhiên, hầu hết hệ thống khác nay, có tích hợp với mạch điện tử, cho phép giải vấn đề Do vậy, cần thiết phải tiến hành tính tốn đặc biệt cho chương trình gia cơng tương thích với tổ hợp máy công cụ điều khiển cụ thể Với ngơn ngữ lập trình gia cơng đưa kết chung, ví dụ như: APT, ADAPT, EXAPT, v.v…, việc xây dựng phép tính tốn khác phụ thuộc vào tổ hợp máy khác chương trình cần thiết, chương trình gọi Postprocessor Các hệ thống CAD/CAM ngày làm cho ngơn ngữ lập trình xử lý kết chung trở lên lỗi thời, việc tính tốn đường chạy dao nhiệm vụ phần mềm CAD/CAM Đối với phần mềm vậy, người sử dụng tiến hành gia cơng hình đồ hoạ (graphic machining), thông thường, phần mềm CAD/CAM sử dụng kiểu câu lệnh (menu lệnh) với ngôn ngữ lập trình kể Phần CAM hệ thống thực phép tính hồn tồn tương tự để đưa đường chạy dao giống ngôn ngữ lập trình NC đưa kết chung khác Đường chạy dao hiển thị hình đồ hoạ tuỳ thuộc vào người sử dụng Điều cho phép kiểm tra, đánh giá chương trình gia cơng không cần chạy máy trước sử dụng Các hệ thống CAD/CAM thường bao gồm công cụ để phát triển PP Tuy nhiên nhiều hệ thống CAD/CAM không đưa kết nối trực tiếp với CL-data tiêu chuẩn (độc lập với với máy CNC) Phần PP phát triển mơi trường khép kín khó khơng thể sử dụng với hệ thống khác Một vài hệ thống CAD/CAM sinh mã chương trình gia cơng theo mơ hình hình học chí chương trình gia cơng hồn chỉnh Các mã chương trình sau phải xử lý thêm nhờ xử lý ngôn ngữ PP cho máy CNC cụ thể Các yếu tố cần giải PP 2.1 Động học máy CNC Đối với hệ điều khiển theo dạng đường 30 liên tục postprocessor phải tính đến động học[5] chuyển động để tránh sai số vị trí 2.2 Phép biến đổi hình học máy CNC nhiều trục Trong trình sinh đường chạy dao (toolpath generation), máy CNC nhiều trục địi hỏi q trình xử lý tính tốn định vị trục dụng cụ (tool axis orientations) Trong trường hợp này, trình tính tốn chung sinh liệu CL, ghi liệu chứa đựng thông tin theo dạng X Y Z I J K [6] Các giá trị X Y Z giá trị tọa độ điểm mũi dao quĩ đạo chạy dao hệ tọa độ phôi, giá trị I J K côsin phương véc tơ trục dụng cụ tương ứng với vị trí dao kể hệ tọa độ Do vậy, PP cho máy CNC nhiều trục phải có khả chuyển đổi giá trị X Y Z I J K CL data sang dịch chuyển trục 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ụ, cần thiết phải dịch chuyển tâm quay quay hai trục quay cách đồng thời Nếu dịch chuyển tịnh tiến dịch chuyển góc có câu lệnh gia công điều khiển CNC, dịch chuyển tuyến tính dịch chuyển góc đồng thời diễn theo gia số thời gian Kết là, quĩ đạo điểm mũi dao tuân theo đường cong có quan hệ với phôi gia công Việc hiệu chỉnh sai lệnh đường cong đoạn tuyến tính mô tả CL data trách nhiệm phần PP Trong thực tế, PP hành đảm bảo sai lệch quĩ đạo thực điểm mũi dao nằm giới hạn so với quĩ đạo mong muốn Lẽ tự nhiên, quĩ đạo phi tuyến điểm mũi dao ln có nhu cầu tuyến tính hóa [7],[8] Khi độ cong quĩ đạo dao xấp xỉ với độ cong bề mặt gia cơng, cho phép PP sát nhập số câu lệnh cắt thẳng thành câu lệnh đơn Điều cho phép nâng cao chất lượng bề mặt gia công hiệu suất làm việc máy Tạo postprocessor cho máy CNC trục 3.1 Thuật tốn tuyến tính hóa đường chạy dao Khi gia công máy CNC trục, đường chạy dao thực hai điểm CL khơng phải tuyến tính mà đường cong Các đường cong Hình cho thấy khác biệt điểm CL điểm CC thực tế Đường chạy dao thực rõ ràng lỗi nội suy tuyến tính máy trục tạo Lỗi cần kiểm tra bù sai số, điều thực PP [10] Khoa học & Công nghệ - Số 11/Tháng - 2016 Journal of Science and Technology ISSN 2354-0575 Hình Đường dẫn cơng cụ thực tế hai điểm CL[10] Tuyến tính hóa đường chạy dao thực PP nội suy liệu điểm CL dọc theo đường chạy dao lý tưởng thêm khối cho chương trình NC Một lệnh file CL tạo vài dòng tập tin NC, kích thước chương trình NC tăng lên Các đường chạy dao cuối bao gồm vị trí có nguồn gốc trực tiếp từ file liệu CL, vị trí tạo CL nội suy liệu PP Tuyến tính hóa khơng cung cấp chuyển động hồn hảo dụng cụ, độ sai lệch với đường chạy dao lý tưởng giảm đến [9] mức độ chấp nhận Nếu đường chạy dao thực lệch dung sai T đường CL tuyến tính, đường chạy dao phải tuyến tính hóa Vấn đề tuyến tính hóa giải PP cách chèn điểm trung gian hai điểm CL liên tiếp, độ lệch nằm miền dung sai không thỏa mãn Cho Vi, Vi+1 Vi+2 ba điểm liên tiếp liệu CL (Hình 2) Các chương trình NC tương ứng Vi Ni = [Xi, Yi, Zi, Bi, Ci] Mỗi trục giả định để di chuyển tuyến tính điểm quy định Vì vậy, điểm đường cong thực tế thể là: Nn,t = Ni + t(Ni+1 – Ni) (1) Trong t thời gian (0 ≤ t ≤1) Tương ứng CL liệu Vi,t cho Nn,t xác định phương trình động lực học [3, 4] Hơn nữa, điểm đường chạy dao lý tưởng xác định sau: Vi,t = Vi + t(Vi+1 – Vi) (2) Hình Tuyến tính đường chạy dao Có thể nhìn thấy từ Hình 2, khoảng cách Vn,t Vi,t tạo thành độ lệch, ký hiệu di,t Nếu độ lệch tối đa (di,t )max vượt dung sai cho phép liệu Vi,t chèn vào liệu CL gốc Thơng thường, điểm trung bình có t = 0,5 điểm chọn Sau điểm trung gian Vi,t đưa vào, mã NC tương ứng tạo Thuật tốn tuyến tính hóa đường chạy dao sau: Chọn t = 0.5 Đọc Vi, Vi+1 từ CL file Tính tốn Vi,t = Vi + t(Vi+1 – Vi) Tính tốn Nn, Nn+1 từ Vi, Vi+1 sở động học ngược [3, 4] Khoa học & Cơng nghệ - Số 11/Tháng - 2016 Tính Nn,t = Ni + t(Ni+1 – Ni) Tính Vn,t từ Nn,t sở động học thuận Tính khoảng cách di,t So sánh di,t với dung sai T - Nếu di, di,t ≤ T, đọc tiếp điểm CL, i = i + - Nếu di,t > T, chèn Vi,t Vi Vi+1 lặp lại từ bước đến bước Sơ đồ thuật tốn tuyến tính hóa đường chạy dao thể Hình Journal of Science and Technology 31 ISSN 2354-0575 BEGIN Động học ngược tính Ni, Ni+1 Vi,t = Vi+ t(Vi+1 - Vi) Ni,t = Ni + t(Ni+1 - Ni) Vi = Vi; Vi+1 = Vn,t Đọc điểm Vi Vi+1 từ CL file No Động học thuận tính Vn,t di,t k0 i0 H (13) _ k0 - i j0 + _ k0 - k02 i i0 (7) z5 = y4 sin 45 + z cos45 Bước 6: Dịch chuyển khoảng -d theo z5 xw = x5 + xo5ow yw = y5 + yo5ow với zo5ow = -d (8) zw = z5 + zo5ow Dữ liệu NC thông số X, Y, Z xác định: Z] X = x = x t w ]] []Y = yt = yw (9) ]] ] Z = zt = zOw Ot - zT + zw \ Trong đó: ZT chiều dài dụng cụ cắt Với cosB = 2k0 - 1, X, Y, Z là: 0 X = 8- y0 _ k0 - k02 i - x0 + 2x0 k0B cos C + + 8x0 _ k0 - k02 i + 2y0 k0 - y0B sin C + + _ d - z0 i _ k0 - k i cosB = 2k0 - & B = arccos(2k0 - 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 phát triển ngôn ngữ Visual Basic Giao diện người dùng chương trình thể Hình Để thể rõ hiệu cơng cụ thuật tốn tìm đường tuyến tính kiểm tra trường hợp bốn điểm CL Bảng cho thấy bốn điểm liệu CL để thử nghiệm, Bảng cho thấy liệu CL sau tuyến tính hóa thuật tốn đề xuất Trong ví dụ chọn dung sai T = 0.1, liệu CL sau tuyến tính có 11 điểm thay bốn điểm; dịng in đậm bảng điểm chèn vào Hình giao diện người dùng nhập liệu kiểm tra CL Hình giao diện Postprocessor (10) Y = 8x0 _ k0 - k02 i + y0 k0B cos C + + y0 _ k0 - k02 i - x0 k0B sin C - z0 + d - dk0 + z0 k0 (11) Z = 8x0 _ k0 - k02 i + y0 k0 - y0B cos C + + y0 _ k0 - k02 i - x0 k0 + x0B sin C + d - dk0 + zk0 (12) Bảng CL data trước tuyến tính hóa Điểm Điểm Điểm Điểm x y z 20 100 200 300 0 0 -155 -150 -146 -139 i j 0.6327447124 0.628284235 0.623829809 0.618938519 0.465569252 0.461387437 0.457180279 0.452948814 k 0.6187742456 0.62640867 0.634039219 0.6416794216 Bảng CL data sau tuyến tính hóa Điểm Điểm 11 Điểm Điểm 21 Điểm 22 Điểm 23 Điểm Điểm 31 Điểm 32 Điểm 33 Điểm x y z i 20 60 0 -155 -152.5 0.6327447124 0.63051447415 0.465569252 0.4634771812 0.6187742456 0.6225885563 100 125 150 175 0 0 -150 -149 -148 -147 0.628284235 0.62713392215 0.6259836048 0.62483329465 0.461387437 0.460335647825 0.45928385845 0.458232069075 0.62640867 0.628311955 0.630221043 0.632130131 200 255 250 275 0 0 -146 -144 -142.5 140.75 0.623829809 0.6224968656 0.6213107503 0.620126435 0.457180279 0.45612241345 0.4550645472 0.45400668095 0.634039219 0.63594926965 0.6378593203 0.63976937095 300 -139 0.618938519 0.452948814 0.6416794216 Khoa học & Công nghệ - Số 11/Tháng - 2016 j k Journal of Science and Technology 33 ISSN 2354-0575 Hình Giao diện chương trình tuyến tính hóa đường chạy dao Hình Giao diện người dùng để nhập điểm liệu CL Hình Giao diện postprocessor 34 Khoa học & Công nghệ - Số 11/Tháng - 2016 Journal of Science and Technology ISSN 2354-0575 Kết luận Dựa phương pháp tính tốn, tác giả xây dựng mơ đun phần mềm windows ngơn ngữ lập trình Visual Basic Kết mô kiểm chứng, áp dụng cho máy phay CNC trục với hai trục quay bàn gá phôi (Deckel Maho DMU 70 eVoluion), hậu xử lý có tính tốn tuyến tính hóa đường chạy dao làm giảm sai số đường chạy dao, hậu xử lý đáng tin cậy tùy biến để áp dụng cho kiểu cấu hình máy CNC khác 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ử tồ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ứ Điều khiển 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 CLcompatible 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 Khoa học & Công nghệ - Số 11/Tháng - 2016 Journal of Science and Technology 35 ... 60 0 - 155 - 152 .5 0.6327447124 0.63 051 4474 15 0.4 655 69 252 0.4634771812 0.6187742 456 0.62 258 855 63 100 1 25 150 1 75 0 0 - 150 -149 -148 -147 0.6282842 35 0.627133922 15 0.6 259 836048 0.624833294 65 0.461387437... 0.4603 356 478 25 0. 459 283 858 45 0. 458 2320690 75 0.62640867 0.628311 955 0.630221043 0.632130131 200 255 250 2 75 0 0 -146 -144 -142 .5 140. 75 0.623829809 0.6224968 656 0.621310 750 3 0.6201264 35 0. 457 180279... 0.621310 750 3 0.6201264 35 0. 457 180279 0. 456 122413 45 0. 455 06 454 72 0. 454 006680 95 0.634039219 0.6 359 49269 65 0.637 859 3203 0.639769370 95 300 -139 0.61893 851 9 0. 452 948814 0.6416794216 Khoa học & Công