Xem mẫu

  1. PHƯƠNG PHÁP BIÊN DỊCH CÁC TẬP TIN DỮ LIỆU GIA CÔNG TRÊN NGÔN NGỮ APT CỦA MÔĐUN PRO/MANUFACTURING SANG CÁC TẬP TIN TRÊN NGÔN NGỮ G-CODE ĐIỀU KHIỂN MÁY TIỆN CNC FANUC T SERIES Oi-S CONVERTING THE MANUFACTURING DATA FILES OF APT LANGUAGE IN PRO/MANUFACTURING INTO THOSE OF G-CODE LANGUAGE CONTROLLING THE CNC TURNING MACHINE FANUC T SERIES Oi-S LÊ CUNG – BÙI MINH HIỂN Trường Đại học Bách khoa, Đại học Đà Nẵng TÓM TẮT Bài báo gi ới thiệu phương pháp xây dựng trình biên dịch các tập tin dữ liệu gia công trên ngôn ngữ APT của môđun Pro/MANUFACTURING trong phần mềm Pro/ENGINEER thành các tập tin trên ngôn ngữ G-Code đi ều khiển các thao tác gia công trên máy tiện CNC T Series Oi-S của hãng FANUC tại phòng thí nghiệm Sản xuất tự động (CRePA), chương trình đào tạo Kỹ sư chất lượng cao PFIEV, trường Đại học Bách khoa, Đại học Đà Nẵng. ABSTRACT This article presents the method to buid up the software to convert the manufacturing data files of APT (Automatically Programmed Tools) in Pro/MANUFACTURING module into those on ISO language controlling the operations of the CNC FANUC T Series Oi-S turning machine installed in the Laboratory CRePA of the Excellent Engineer Formation Program (PFIEV) in Danang Polytechnical University. 1. Đặt vấn đề Hiện nay, trên địa bàn miền Trung và trong cả nư ớc được trang bị ngày càng nhiều các máy tiện điều khiển theo chương trình số CNC (Computer Numerical Control). Các máy tiện CNC cho phép gia công các chi tiết máy có hình dáng tương đối phức tạp với độ chính xác và năng su ất cao, đặc biệt được dùng trong gia công các chi tiết tròn xoay hay các biên d ạng cam thùng... Thông thường việc lập trình gia công thực hiện một cách tự động nhờ các phần mềm CAD/CAM như PRO/ENGINEER, CATIA, MASTERCAM, HYPERMILL… Các phần mềm này có thể xuất ra các tệp tin dữ liệu gia công theo ngôn ngữ APT và theo G-Code. Mođun Pro/MANUFACTURING của phần mềm Pro/ENGINEER, một trong những phần mềm CAD-CAM chuyên dụng và khá phổ biến hiện nay, cho phép thiết lập trình tự nguyên công và các bước gia công, chọn dao cụ, chế độ cắt, chọn lựa các đ ường chạy dao phù hợp…, đồng thời cho phép mô phỏng quá trình gia công trên máy tiện CNC ảo trên giao diện sử dụng của nó. Sau đó môđun Pro/NC xuất ra các tệp tin dữ liệu gia công theo ngôn ngữ APT. Các tệp tin này không thể điều khiển các thao tác trên máy tiện CNC. Bên cạnh đó, môđun G-Post của Pro/ MANUFACTURING cũng cho phép xuất ra các tệp tin dữ liệu gia công theo ngôn ngữ G-Code trực tiếp điều khiển các chuyển động gia công trên máy tiện CNC. Tuy nhiên các tệp tin G-Code nói trên có nhiều đoạn chưa tương thích với
  2. ngôn ngữ điều khiển các máy tiện CNC cụ thể, đặc biệt là phần chuẩn bị gia công, thay dao và một số mã lệnh đặc biệt của từng máy. Người vận hành máy phải tốn nhiều thời gian, công sức và d ễ nhầm lẫn để chỉnh sửa một số đoạn chương trình trước khi chạy máy, nhất là đối với chương trình gia công các chi tiết phức tạp. Bên cạnh đó, việc chỉnh sửa chương trình cần sự trợ giúp của các kỹ thuật viên chuyên về lập trình gia công trên máy CNC. Do vậy, để giải quyết triệt để các khó khăn khi lập trình gia công cho các máy tiện CNC, cần thiết phải xây dựng một trình biên dịch từ ngôn ngữ APT sang ngôn ngữ G-Code hoàn toàn tương thích với các máy tiện CNC hiện có. Đây cũng chính là mục tiêu nghiên cứu của bài báo này. 2. Nguyên tắc và phương pháp xây dựng trình biên dịch Để xây dựng phương pháp và thuật toán cho trình biên dịch, trước hết cần tiến hành phân tích cấu trúc mã lệnh của các tập tin theo ngôn ngữ APT do Pro/NC tạo ra và của các tập tin theo ngôn ngữ G-Code dùng để điều khiển các thao tác gia công trên máy tiện CNC T Series Oi-S của hãng FANUC. 2.1. Cấu trúc mã lệnh APT và G-Code – Nguyên tắc biên dịch Việc phân tích và so sánh cấu trúc của tất cả các câu lệnh APT và G-Code ISO đối với máy tiện cho thấy về cơ bản cấu trúc các câu lệnh trong hai ngôn ngữ có các đặc điểm chung như sau : Với ngôn ngữ APT, câu lệnh có cấu trúc như sau: Tên lệnh + “/” + Các tham số liên quan Các tham số đ ược phân biệt với nhau bằng dấu phẩy “,”. Với ngôn ngữ G-Code, câu lệnh đơn giản hơn nhiều, nhưng cũng có những điểm tương đồng với câu lệnh trong APT. Cấu trúc cơ bản của câu lệnh G-Code như sau: Tên lệnh_Các tham số liên quan Các tham số liên quan thường được đứng trước bằng một chữ cái mô tả nội dung tham số và được phân biệt với nhau bằng các dấu cách. Chính từ điểm chung này, bài báo đ ề xuất phương pháp biên d ịch như sau:  Đọc dữ liệu từ tập tin nguồn, sử dụng một mảng chuỗi kí tự để chứa từng d òng lệnh của tập tin ngu ồn.  Phân tích mỗi câu lệnh APT thành hai thành phần: “tên lệnh” và “tham số” của câu lệnh.  Thay th ế “tên lệnh” APT bằng “tên lệnh” tương ứng của G-Code, đồng thời dựa trên các tham số của câu lệnh APT, chuyển đổi, bổ sung, chọn lọc hay tính toán lại các tham số sao cho phù hợp với câu lệnh G-Code nhưng vẫn không làm thay đ ổi nội dung và ý nghĩa của câu lệnh đó. 2.2. Biên dịch câu lệnh từ APT sang G-Code cho máy tiện FANUC Để minh họa, phần này giới thiệu phương pháp biên dịch một vài câu lệnh từ ngôn ngữ APT sang ngôn ngữ G-Code. o Lệnh thay dao (sử dụng khi tiện trên máy tiện, khi gia công lỗ trên máy tiện hay trung tâm tiện/phay)
  3.  APT: Việc thay dao trong ngôn ngữ APT được mô tả bằng lệnh: TURRET / n, XAXIS, x, ZAXIS, z, OSETNO, o Trong đó: TURRET : tên lệnh, mô tả việc thay dao; n : số hiệu dao; XAXIS : mô tả chiều dài dao theo trục X; x: chiều d ài trục dao theo trục X, tham số tùy chọn (đ ược mô tả bằng tham số GAUGE_X_LENGTH khi thiết lập các tham số của dao); ZAXIS: mô tả chiều dài dao theo trục Z; z: chiều dài trục dao theo trục Z, tham số tùy chọn (được mô tả bằng tham số GAUGE_Z_LENGTH khi thiết lập các tham số của dao); OSETNO: mô tả độ hiệu chỉnh dụng cụ; o : số hiệu độ hiệu chỉnh dụng cụ.  G-Code : Việc chọn dụng cụ trong ngôn ngữ G-Code theo cú pháp của máy tiện FANUC được mô tả bằng lệnh: Tvar1var2 Trong đó : T: tên lệnh, mô tả việc chọn dụng cụ; var1: số hiệu dụng cụ; var2 : số hiệu độ hiệu chỉnh dụng cụ. Với câu lệnh đ ơn giản như trên, chỉ cần thay thế t ên lệnh TURRET trong APT b ằng tên lên T trong G-Code, đọc, chọn lọc các tham số của câu lệnh APT và gán vào câu lệnh tương ứng trong ngôn ngữ G-Code. Câu lệnh APT : TURRET / 1, XAXIS, 10.00000, ZAXIS, 10.00000, OSETNO, 2 SPINDL / RPM, 800.000000, CLW COOLNT / ON Câu lệnh G-Code (theo cú pháp của máy tiện Fanuc) N3 T0102 G97 N4 G96 S800 M3 N5 M7 Tuy nhiên, trong nhiều trường hợp, một câu lệnh APT lại được mô tả bởi một tập hợp các câu lệnh G-Code hoặc một tập hợp các câu lệnh APT được mô tả bằng một câu lệnh hay một tập hợp các câu lệnh G-Code. Ví dụ lệnh chạy dao nhanh, lệnh tiện ren…, trong các trường hợp này việc biên d ịch phức tạp hơn nhiều. o Lệnh tiện ren  APT: Lệnh tiện ren một đầu mối, thực hiện ăn dao một hay nhiều lần khi cắt, đ ược thể hiện trong APT bằng tập hợp các lệnh sau: OP / THREAD, TURN, DEPTH, totdepth, TPI, thread_feed, CUTS, c, FINCUT, n, CUTANG, a GOTO Xvarx1 Y vary1 Zvarz1 GOTO Xvarx2 Y vayx2 Zvarz3 OP / THREAD, NOMORE Trong đó: OP: tên lệnh, mô tả tiện ren; THREAD: mô tả tiện ren; DEPTH: mô tả chiều cao ren; totdepth : chiều cao ren; TPI /MMPR/IPR: mô tả đơn vị b ước ren (TPI : số ren trên một inch, MMRP : mm/vòng, IPR: inch/vòng); CUTS: mô tả số lần cắt để đạt đ ược chiều cao ren; c: số lần cắt; CUTANG: mô tả góc đặt dụng cụ cắt; a : góc đặt dụng cụ cắt so với đường tâm trục chính; các lệnh GOTO mô tả đ ường bao ngo ài của ren và các vị trí ban đầu và cuối cùng của dao khi cắt ren; OP / THREAD, NOMORE : lệnh kết thúc tiện ren.
  4.  G-Code: Lệnh tiện ren trụ hay nón một đầu mối, b ước không đổi theo cú pháp của máy tiện FANUC: G32 Xvarx Yvary Zvarz Fvarf Trong đó: G32 : tên lệnh, mô tả việc tiện ren; Xvarx, Yvary, Zvarz: mô tả tọa độ vị trí ban đầu và vị trí cuối cùng của dao khi dao chạy dọc theo chiều d ài chi tiết tiện; Fvarf : mô tả lượng chạy tiến dao khi cắt ren [mm/vòng]. Mặc khác, cũng cần lưu ý rằng trong chương trình G-Code bên cạnh lệnh G32, còn có các lệnh chạy dao nhanh mô tả quá trình tiến và lùi dao về khoảng cách an toàn khi tiện, kể cả mô tả đường chạy dao cho các lần ăn dao khác nhau. Trong trường hợp này, việc biên d ịch tương đối phức tạp. Trước hết cần thay thế tên lệnh OP trong APT b ằng tên lệnh G32 trong G-Code, đồng thời dựa trên các tham số của câu lệnh APT để tính toán lượng ăn dao theo chiều cao ren cho mỗi lần cắt, số lần ăn dao, tọa độ các vị trí đến của dao cho nhiều lần ăn dao…, sau đó tiến hành biên dịch thành các lệnh chạy dao nhanh tương ứng trong G-Code đ ể mô tả đ ường chạy dao khi tiện ren. Nhóm lệnh APT mô tả tiện ren trên máy tiện: RAPID GOTO / 60.0000000000, 0.0000000000, 93.000000000 FEDRAT / 4.000000, MMPM OP / THREAD , TURN, DEPTH, 2.453720, MMPR, 4.000000, CUTS, 2, FINCUT, 1,$ CUTANG, 180.000000 GOTO / 30.0000000000, 0.0000000000, 93.0000000000 GOTO / 30.0000000000, 0.0000000000, 18.5000000000 OP / THREAD, NOMORE Nhóm lệnh tương ứng trong G-Code : G0 X57.546 Z93 G32 X57.546 Z18.5 F4 G0 X120 Z18.5 G0 X120 Z93 G0 X55.092 Z93 G32 X55.092 Z18.5 F4 G0 X120 Z18.5 N9 G0 X120 Z93 Ngoài ra, trong khi biên dịch chương trình, còn phải bổ sung một số câu lệnh khởi tạo ban đầu khi gia công như về điểm chuẩn trước khi thay dao…, các câu lệnh dừng trục chính, lùi dao về điểm chuẩn của máy, dừng chương trình… Việc khởi tạo kích thước phôi ban đầu khi gia công cho máy tiện cũng được giải quyết. 3. Kết quả và bình luận Trên cơ sở nguyên tắc và phương pháp biên dịch nêu trên, chúng tôi tiến hành biên dịch tất cả các câu lệnh của APT sang các câu lệnh của ngôn ngữ G-Code, xây dựng môđun Turning Machine cho trình biên dịch CNC/CMM-Translater. Trình biên dịch nói trên được viết trên ngôn ngữ Visual Basic. Tập tin dữ liệu nguồn APT có định dạng là *.ncl và tập tin đích theo ngôn ngữ G-Code có đ ịnh dạng file text (*.txt).
  5. Hình 1, hình 2, hình 3 trình bày một phần giao diện của mođun Turning Machine của trình biên dịch CNC/CMM-Translater và tệp tin đã được biên d ịch thành ngôn ngữ G-Code. Hình 1. Giao diện mođun Turning Hình 2. Giao diện mođun Turning Machine của CNC/CMM- Machine và chương trình đã biên TRANSLATER dịch sang ngôn ngữ G-Code Để kiểm nghiệm chương trình biên dịch, chúng tôi tiến hành thiết kế hàng loạt các chi tiết trên Pro/ENGINEER, biên dịch chương trình gia công từ ngôn ngữ APT của môđun Pro/MANUFACTURING sang ngôn ngữ G-Code bằng môđun Turning Machine và tiến hành gia công thử nghiệm trên máy tiện CNC FANUC T Series Oi-S của phòng thí nghiệm Sản xuất tự động CRePA, chương trình đào tạo Kỹ Hình 3. Khởi tạo kích thước phôi tiện sư Chất lượng cao PFIEV. Các kết qu ả thử nghiệm đ ã khẳng định tính chính xác của phần mềm biên dịch. Người vận hành máy không phải chỉnh sửa một câu lệnh nào trong chương trình gia công theo G-Code đã đ ược biên d ịch, ngoài việc định điểm chuẩn cho máy. Hình 4 giới thiệu một vài chi tiết được gia công thử nghiệm trên máy tiện CNC FANUC T Series Oi-S. 4. Kết luận Môđun Turning Machine của phần mềm CNC/CMM-Translater dùng đ ể biên d ịch các tệp tin dữ liệu gia công APT do phần mềm Pro/ENGINEER tạo ra. Các tệp tin dữ liệu G-Code đã đ ược biên dịch điều khiển chính xác các thao tác gia công trên máy tiện FANUC sau khi định điểm chuẩn cho máy. Hoàn toàn không có một lỗi biên dịch nào và người vận hành không cần phải chỉnh sửa chương trình gia công trước khi chạy máy.
  6. Hình 4. Một vài chi tiết gia công thử nghiệm trên máy tiện FANUC Môđun Turning Machine góp phần giải quyết các khó khăn khi soạn thảo chương trình gia công chi tiết, nhất là đ ối với các chi tiết có hình dạng phức tạp có chương trình gia công quá dài. Có thể hiệu chỉnh môđun Turning Machine để biên dịch các chương trình gia công do Pro/MANUFACTURING xu ất ra cho tất cả các loại máy tiện CNC hiện đang được sử dụng trong nước. TÀI LIỆU THAM KHẢO [1 ] Pro/ENGINEER Wildfire Tutorials on Pro/ENGINEER Software. [2 ] Visual Basic Tutorials on Visual Basic Software. Trịnh Thành Nhân - Hướng dẫn thực hành và tự học Pro/ENGINEER căn bản và nâng [3 ] cao - Nhà xuất bản Thống kê thành phố Hồ Chí Minh 2004. [4 ] FANUC Series Oi-TB, Operator’s Manual, ACE Designers Ltd. Lê Cung – Nguyễn Đình Sơn - Phương pháp xây d ựng trình biên dịch các files dữ liệu [5 ] đo DMIS của môđun PRO/CMM trên PRO/ENGINEER sang các files ngôn ngữ GEOPAK-WIN - Tạp chí Khoa học và Công ngh ệ 6 trường Đại học, số 55/2006, Hà Nội 2006 .
nguon tai.lieu . vn