TỔNG QUAN
Tình hình nghiên cứu trong nước và ngoài nước
APT (Automatically Programmed Tools) là ngôn ngữ lập trình NC bậc cao đầu tiên được sử dụng phổ biến cho máy công cụ điều khiển số Được phát triển tại phòng thí nghiệm hệ thống điện của viện công nghệ Massachusetts, APT ra đời nhờ sự hợp tác với ngành công nghiệp hàng không Hoa Kỳ Từ những năm 1955, APT đã được áp dụng rộng rãi tại Mỹ và thích ứng với nhiều công việc gia công, bao gồm cả lập trình 3D phức tạp APT đã trở thành chuẩn mực cho các máy NC trên toàn thế giới.
APT là ngôn ngữ lập trình của CAM với khoảng 3000 từ vựng, cho phép lập trình gia công các hình dạng đơn giản và các yếu tố đường cong 3 chiều như hình cầu, hình trụ, parabol, và mặt võng Người lập trình có thể xác định hình dáng dụng cụ, dung sai và chuyển động của dụng cụ, cùng với các lệnh hỗ trợ Hệ thống APT cung cấp khả năng xử lý dữ liệu gia công với các chức năng nổi bật như sao chép, lật gương, di chuyển và xoay, đồng thời cho phép làm mềm chương trình gia công thông qua Macro.
Từ APT người ta đã phát triển ra các ngôn ngữ lập trình khác như:
EXAPT (Tập con mở rộng của APT) là một ngôn ngữ lập trình nổi bật, với ưu điểm quan trọng là khả năng tự động tối ưu hóa chế độ cắt Được triển khai tại Đức vào năm 1964, EXAPT đã dẫn đến sự phát triển của ba phiên bản khác nhau.
MINIAPT là một tệp con thu gọn của APT, được phát triển bởi nhà chế tạo phần mềm HOM Ngôn ngữ lập trình này được thiết kế để phục vụ cho việc điều khiển đường và điều khiển phi tuyến Với vốn từ vựng chỉ 200 từ, MINIAPT mang lại sự tiện lợi và hiệu quả trong các ứng dụng điều khiển.
- TELEAPT: Ngôn ngữ này do hãng IBM phát triển, phục vụ cho việc điều khiển điểm, đường và phi tuyến 2
1 D Ngôn ngữ này thuộc họ APT cho phép thông qua mạng TELEPHONE, để chuyển dữ liệu vào máy tính xử lý
COMPACT2 là ngôn ngữ lập trình đa năng, được phát triển bởi Viện Nghiên cứu Dữ liệu Quốc gia Mỹ (MDSI), chuyên dùng cho các nghiệp vụ điều khiển đường và phi tuyến Ngôn ngữ này tương thích với hệ thống TELEPHONE và hỗ trợ chế độ hoạt động đa đối tác trên nhiều thiết bị đầu cuối (TERMINAL), nhờ đó, COMPACT2 đã được áp dụng rộng rãi tại các quốc gia công nghiệp phát triển.
EPLAN là ngôn ngữ lập trình của Pháp, được thiết kế cho các nhiệm vụ gia công từ 2 đến 4 trục điều khiển số, và nó thường được sử dụng trên các máy tính để bàn của hãng HEWLETT – PACKARD.
- AUTOPROGRAMER: Ngôn ngữ lập trình cho các vấn đề gia công tiện, khoan, phay, do hãng BOEHRINGEN phát triển và chạy trên các máy tính nhỏ và trung bình
MITURN là ngôn ngữ lập trình được phát triển tại Hà Lan, chuyên dụng cho việc tính toán và phân tích dữ liệu trong công nghệ gia công và chế độ cắt gọt.
Trong những năm 80, nhiều ngôn ngữ lập trình tương tự như APT đã được phát triển mạnh mẽ tại Tây Âu, như AUTOTECH và SYMAP, nhằm ứng dụng vào các trung tâm gia công và hệ thống tự động linh hoạt trong sản xuất Tuy nhiên, APT vẫn nổi bật như ngôn ngữ đại diện cho phong cách lập trình gia công, và hiện nay, APT là ngôn ngữ lập trình được sử dụng rộng rãi nhất trên thế giới, ngày càng được hoàn thiện.
Các nghiên cứu của thế giới liên quan đền ngôn ngữ lập trình APT gồm:
Đề tài nghiên cứu của O.R Fauvel từ trường đại học Calgary, Canada, tập trung vào việc phân tích các lỗi tuyến tính trong hệ thống lập trình nhiều trục dựa trên ngôn ngữ APT Nghiên cứu đã chỉ ra các nguyên nhân gây ra lỗi tuyến tính và xác định các khoảng sai lệch, từ đó giúp giảm mức độ nghiêm trọng của những lỗi này Kết quả của nghiên cứu đã được công bố trên tạp chí Sciencedirect vào năm 1990.
Chương trình mô phỏng máy NC năm trục với ngôn ngữ lập trình APT được phát triển bởi Ming C Leu và các đồng nghiệp người Mỹ, nhằm mô tả cách quét các đặc trưng hình học 3D và các chuyển động năm trục của dao Bài viết cũng đề cập đến thời gian gia công thực tế khi sử dụng chương trình APT Nghiên cứu này đã được công bố trên tạp chí Sciencedirect vào tháng 12 năm 1996.
Đề tài "Phát triển chương trình biên dịch APT cho máy CNC 5 trục" được thực hiện bởi Hsin Yu Cheng và các đồng nghiệp tại trường đại học Kaohsiung, Đài Loan, bao gồm bảy phân hệ chức năng liên quan Nghiên cứu này giúp máy CNC năm trục với các cấu trúc và hệ điều hành khác nhau dễ dàng nhận file dữ liệu CL Data từ chương trình CAD/CAM, từ đó cải thiện khả năng điều khiển và linh hoạt trong chuyển động của các trục máy Đề tài đã được công bố trên tạp chí Scicentific.net vào tháng 2 năm 2012.
Các đề tài nghiên cứu liên quan tới ngôn ngữ lập trình APT và máy điều khiển số trong nước như:
Đề tài "Ứng dụng ngôn ngữ lập trình bậc cao APT vào gia công một số bề mặt định hình" do KS Nguyễn Thanh Sơn thực hiện đã nghiên cứu cấu trúc chương trình NC và ngôn ngữ lập trình APT Tác giả đã xây dựng chương trình gia công mặt định hình dựa trên lý thuyết APT và bảo vệ thành công đề tài vào năm 2006 tại Trường Đại Học Bách Khoa Hà Nội.
Đề tài nghiên cứu của tác giả Trương Thị Thu Hương tập trung vào việc nâng cao độ chính xác gia công các chi tiết hình dáng phức tạp trên trung tâm gia công ba trục CNC thông qua phương pháp bù sai số Nghiên cứu đã đạt được những kết quả quan trọng, bao gồm việc phân tích tính năng công nghệ của máy CMM – C544 và trung tâm gia công VMC – 85S, ứng dụng công nghệ đo – Scanning để tạo mô hình CAD sản phẩm, và xây dựng thuật toán bù sai số bằng chương trình NC trên máy VMC – 85S Đề tài này đã được bảo vệ thành công vào tháng 5 năm 2008 tại Trường Đại Học Thái Nguyên.
Đề tài "Ứng dụng chuẩn STEP/STEP-NC cho chi tiết tiện phay" do KS Dương Thị Vân Anh thực hiện đã đạt được thành công trong việc xây dựng chương trình chuẩn STEP-NC cho chi tiết phay và tiện 2.5D bằng phần mềm CAD/CAM Đề tài này đã được bảo vệ thành công vào năm 2010 tại trường Đại Học Sư Phạm Kỹ Thuật Thành phố Hồ Chí Minh.
- Đề tài: Xây dựng hệ thống lập quy trình công nghệ theo chuẩn STEP/STEP-
Đề tài NC do KS Nguyễn Đình Nghĩa thực hiện, tập trung vào nghiên cứu chuẩn STEP-NC và xây dựng hệ thống lập quy trình công nghệ theo chuẩn STEP/STEP-NC cho chi tiết phay, tiện 2.5D bằng phần mềm STEP-NC machine Đề tài này đã được bảo vệ thành công vào năm 2011 tại Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh.
Tính cấp thiết của đề tài
Máy công cụ điều khiển số CNC đang trở nên phổ biến trong các nhà máy công nghiệp tại Việt Nam Để tối ưu hóa hiệu quả sử dụng máy CNC, cần nắm vững kiến thức về thiết bị và ngôn ngữ lập trình gia công Sự hiểu biết sâu sắc này không chỉ giúp phát huy khả năng của máy mà còn cải tiến thiết bị để phù hợp hơn với nhu cầu của người Việt Nam.
Trong bối cảnh đổi mới và hiện đại hóa công nghệ chế tạo, máy công cụ cũ đang được thay thế bằng máy CNC và Robot công nghiệp để nâng cao năng suất và giảm giá thành sản phẩm Việc nghiên cứu ứng dụng công nghệ gia công trên máy CNC nhiều trục, đặc biệt là ngôn ngữ lập trình bậc cao APT, đang trở nên cần thiết Do đó, việc học tập và nghiên cứu các ngôn ngữ lập trình để áp dụng cho máy CNC nhiều trục là vấn đề cấp bách cho các nhà công nghệ và sinh viên tại các trường Cao đẳng, Đại học kỹ thuật hiện nay.
Vì thế tôi chọn đề tài “ Công ngh ệ l ậ p trình gia công trên máy CNC nhi ề u tr ụ c s ử d ụ ng ngôn ng ữ l ậ p trình b ậ c cao APT ” làm đề tài luận văn thạc sĩ.
Mục tiêu và đối tƣợng nghiên cứu
Tìm hiểu ngôn ngữ lập trình bậc cao APT giúp nắm vững cấu trúc chương trình và các định nghĩa hình học cần thiết Qua đó, người dùng có thể xây dựng công nghệ lập trình phay CNC ba trục và bốn trục hiệu quả Việc áp dụng APT vào lập trình gia công các chi tiết trên máy phay CNC sẽ nâng cao khả năng thiết kế và chế tạo chính xác.
- Ngôn ngữ lập trình APT
- Cấu trúc chương trình APT
- Công nghệ lập trình phay CNC ba trục dựa vào ngôn ngữ lập trình bậc cao APT
- Công nghệ lập trình phay CNC bốn trục dựa vào ngôn ngữ lập trình bậc cao APT.
Nhiệm vụ của đề tài và phạm vi nghiên cứu
- Nghiên cứu cấu trúc của chương trình NC dựa vào ngôn ngữ APT
- Nghiên cứu về các đặc điểm hình học của ngôn ngữ lập trình bậc cao APT
- Nghiên cứu về các lệnh thiết kế đường chạy dao của ngôn ngữ lập trình bậc cao APT
- Nghiên cứu các lệnh hậu xử lý của của ngôn ngữ lập trình bậc cao APT
- Nghiên cứu hệ thống xử lý chương trình nguồn APT
- Xây dựng công nghệ lập trình phay CNC ba trục dựa vào ngôn ngữ lập trình bậc cao APT
- Lập trình gia công chi tiết trên máy phay CNC ba trục dựa vào ngôn ngữ lập trình bậc cao APT
- Xây dựng công nghệ lập trình phay CNC bốn trục dựa vào ngôn ngữ lập trình bậc cao APT
- Lập trình gia công chi tiết trên máy phay CNC bốn trục dựa vào ngôn ngữ lập trình bậc cao APT
1.4.2 Phạm vi nghiên cứu Đề tài chỉ tập trung nghiên cứu công nghệ lập trình gia công trên máy CNC nhiều trục sử dụng ngôn ngữ lập trình bậc cao APT Các vấn đề liên quan khác không thuộc phạm vi nghiên cứu của đề tài.
Phương pháp nghiên cứu
- Nghiên cứu, phân tích lý thuyết
- Phương pháp điều tra khảo sát.
CƠ SỞ LÝ THUYẾT
Định nghĩa hình học cho ngôn ngữ lập trình APT
Các câu lệnh định nghĩa hình dáng hình học được sử dụng để mô tả phần Profile, bao gồm nhiều phần tử nhỏ như điểm, đường tròn, cung cong, mặt phẳng, cũng như các profile 2 chiều và 3 chiều.
APT dựa vào các yếu tố hình học đã được định nghĩa để thiết lập đường chạy dao và quyết định trạng thái chuyển động của lưỡi cắt Trước khi thực hiện các lệnh thiết lập đường chạy dao trong chương trình APT, phần hình học cần phải được xác định Mặc dù cấu trúc hình học có thể thay đổi, nhưng thông tin vẫn được chứa trong các câu lệnh với dạng chung đã được định nghĩa.
[Nhãn lệnh] Tên thực thể = Dạng thực thể/ Thông tin về việc định nghĩa thực thể
Ví dụ: C1 = CIRCLE/ CENTER, P1, RADIUS, 5
Giải thích nghĩa của ví dụ trên là: C1 được định nghĩa là đường tròn có tâm là điểm P1 và có bán kính là 5
Một điểm được xác định trong không gian bởi ba kích thước trong hệ thống tọa độ vuông góc Trong toán học, có nhiều cách để định nghĩa điểm, và trong phần này, chúng tôi sẽ trình bày phương pháp định nghĩa điểm theo hệ tọa độ vuông góc.
POINT/ Tọa độ X, toạ độ Y, toạ độ Z
Khi tọa độ Z không được chỉ định, giá trị của nó sẽ được xác định bởi lệnh ZSURE đã được thực hiện trước đó Nếu không sử dụng lệnh ZSURE, tọa độ Z của điểm sẽ tự động được gán bằng 0.
Hai điểm với ký hiệu P1, P2 đƣợc xác định trong hệ toạ độ vuông góc nhƣ hình Giá trị toạ độ của 3 điểm này là P1 (3,4,5), P2 (6.5,5.7,0)
Lệnh định nghĩa hình học của 3 điểm này đƣợc đƣa ra nhƣ sau:
Hình 2.1: Điểm đƣợc xác đinh bởi tọa độ vuông góc [9] b) Theo hệ toạ độ cực
Một điểm trong không gian được xác định bởi bán kính và một góc theo hệ tọa độ cực Có ba mặt phẳng được xác định bởi hai trong ba trục tọa độ.
XYPLAN (XY-PLAN mặt phẳng XY); YZPLAN (YZ-PLAN mặt phẳng YZ); ZXPLAN (ZX-PLAN mặt phẳng ZX)
Giá trị góc được xác định từ trục X+ tới bán kính trong mặt tham chiếu XYPLAN hoặc ZXPLAN, trong khi đó, khi sử dụng mặt tham chiếu YZPLAN, giá trị góc được đo từ trục Y+ tới bán kính.
, Giá trị bán kính, giá trị góc
Ví dụ: Định nghĩa 3 điểm P1, P2 trong hệ toạ độ độc cực, nhƣ chỉ ra trong hình
Hình 2.2: Điểm đƣợc xác đinh bởi tọa độ cực [9] c) Theo bán kính, góc và điểm tham chiếu
Một điểm trong mặt phẳng YZ có thể đƣợc xác định bởi bán kính và góc liên hệ với điểm cho trước trong hệ toạ độ độc cực
POINT/ Tên điểm tham chiếu, RADIUS, giá trị bán kính, ATANGL, giá trị góc Chú ý rằng ATANGL là từ bổ nghĩa nhƣ là giá trị góc
Ví dụ: Định nghĩa 2 điểm P1, P2 từ điểm tham chiếu PL1 (Nhƣ chỉ ra trong hình) P1 = POINT/ PT1, RADIUS, 15, ATANGL, 45
Điểm có thể được xác định từ tâm của một đường tròn đã cho, cho phép chúng ta định nghĩa đường tròn dựa trên điểm này.
PONIT/ CENTER, tên đường tròn
Ví dụ: Định nghĩa 2 điểm P1 và P2 lần lượt là tâm của 2 đường tròn cho trước C1 và C2
Hình 2.4: Điểm được xác đinh theo tâm của đường tròn [9] e) Giao điểm của một đường tròn và đường thẳng đi qua tâm
Một điểm có thể được xác định từ giao điểm giữa đường tròn và đường thẳng đi qua tâm của nó, tạo thành một góc với trục X+.
POINT/ Tên đường tròn, ATANGL, giá trị góc
Ví dụ: Định nghĩa ba điểm P1, P2, P3 dựa trên cung tròn C1 nhƣ trong hình P1 = POINT /C1, ATANGL,45
Hình 2.5: Điểm là giao của đường tròn và đường thẳng đi qua tâm [9] f) Điểm xác định bởi quan hệ với một điểm khác trên đường tròn
Một điểm có thể được định nghĩa dựa trên đường tròn trước và tạo một góc với điểm tham chiếu
Từ bổ nghĩa CLW và CCLW được sử dụng để chỉ hướng quay là thuận chiều kim đồng hồ hay ngƣợc chiều kim đồng hồ
Từ khóa phụ DELTA và ATANGL chỉ ra rằng góc đƣa ra là góc tăng, đo từ điểm tham chiếu
POINT/ Tên điểm tham chiếu, DELTA,
CLW , ON, tên đường tròn, ATANGL, giá trị góc
Ví dụ: Định nghĩa 2 điểm P2, P3 dựa trên đường tròn C1 cho trước và điểm tham chiếu P1 nhƣ chỉ ra trên hình
P2 = POINT/ P1, DELTA, CCLW, ON, C1, ATANGL, 45
P3 = POINT/ P1, DELTA, CLW, ON, C1, ATANGL, 60
Hình 2.6: Điểm xác định từ một giá trị góc, đường tròn cho trước và điểm tham chiếu trên đường tròn đó [9] g) Giao điểm của hai đường thẳng
Một điểm có thể được định nghĩa đơn giản là giao điểm của 2 đường thẳng Dạng câu lệnh:
POINT/ INTOF, tên đường thẳng 1, tên đường thẳng 2
Chú ý rằng từ INTOF thay cho “giao của”
Ví dụ: Định nghĩa 3 điểm P1, P2, P3 là giao điểm của 2 đường thẳng trong 3 đường thẳng cho trước trong hình
Hình 2.7: Điểm được định nghĩa bởi giao của các đường thẳng cho trước [9] h) Giao điểm của hai đường thẳng và đường tròn
Một điểm có thể được xác định từ giao điểm giữa đường thẳng và đường tròn Khi đường thẳng cắt đường tròn tại hai điểm, cần có một từ bổ nghĩa để chọn ra điểm duy nhất mà chúng ta mong muốn.
Từ bổ nghĩa được xác định dựa trên vị trí của điểm mong muốn so với các điểm khác Nó được sử dụng để chỉ ra sự lựa chọn, có thể là một trong nhiều khả năng khác nhau.
4 từ sau: XLARGE, XSMALL, YLARGE, YSMALL
, INTOF, tên đường thẳng, tên đường tròn
Ví dụ: Định nghĩa 2 điểm P1, P2 là giao điểm của đường thẳng L1 và đường tròn C1 trong hình :
Hình 2.8: Điểm được xác định bởi giao của đường thẳng và đường tròn [9] i) Giao của hai đường tròn
Một điểm có thể được xác định bởi giao điểm của hai đường tròn Khi hai đường tròn giao nhau, chúng tạo ra hai điểm giao nhau, và một từ bổ nghĩa sẽ được sử dụng để lựa chọn điểm mong muốn.
Từ bổ nghĩa được xác định dựa trên vị trí của điểm mong muốn so với các điểm khác Nó được sử dụng để chỉ ra sự lựa chọn kích thước, bao gồm bốn tùy chọn: XLARGE, XSMALL, YLARGE, và YSMALL.
, INTOF, tên đường tròn, tên đường tròn
Ví dụ: Định nghĩa 2 điểm P1, P2 là giao điểm của đường thẳng C1 và đường tròn C2 trong hình
Hình 2.9: Điểm được xác định bởi giao của hai đường tròn [9] j) Giao của ba mặt phẳng
Trong toán học, giao của 2 mặt phẳng cho ta một đường thẳng và giao của 3 mặt phẳng xác định 1 điểm
POINT/ tên mặt phẳng, tên mặt phẳng, tên mặt phẳng
Ví dụ: Định nghĩa điểm P1 là giao của 3 mặt phẳng PL1, PL2, PL3 nhƣ chỉ ra trong hình
Hình 2.10: Điểm đƣợc xác định bởi giao của ba mặt phẳng [9]
2.1.2 Định nghĩa đường thẳng Đường thẳng được coi là thực thể dài và được xử lý trong APT như là mặt phẳng đứng vuông góc với mặt XY Nói cách khác, nó đƣợc mở rộng ngang sang cả 2 hướng và thẳng góc với trục Z Khi đó, không yêu cầu toạ độ Z trong định nghĩa Sau đây là một vài phương pháp chọn lựa dùng để định nghĩa đường thẳng a) Đường thẳng được định nghĩa qua 2 điểm
Một đường thẳng có thể được định nghĩa qua 2 điểm đã được định nghĩa trước hoặc giá trị toạ độ của chúng đã đƣợc xác định
LINE/ Tên điểm, tên điểm
LINE/ Toạ độ X, toạ độ Y, toạ độ X, toạ độ Y
Hình 2.11: Đường thẳng được định nghĩa qua hai điểm [9] b) Đường thẳng định nghĩa dựa trên trục X hoặc trục Y và khoảng Offset
Trục X và truc Y được xem như là 2 trục cơ sở Một đường thẳng nào đó song song với 2 trục này có thể định nghĩa dựa trên nó cùng với giá trị offset
, Offset rulue (giá trị khoảng offset)
Ví dụ: Định nghĩa 3 đường thẳng như trong hình 2.12, L1 nằm trên trục X, L2 song song với trục X và khoảng rời là 5mm
Đường thẳng được xác định dựa trên trục tọa độ với khoảng offset, trong đó nó đi qua một điểm và tạo ra một góc với trục X hoặc trục Y.
Một đường thẳng có thể được định nghĩa qua một điểm cho trước với phương của nó đƣợc xác định bởi giá trị góc đo từ trục X hoăc truc Y
LINE/ tên điểm, ATANGL, giá trị góc,
Thiết lập đường chạy dao cho ngôn ngữ lập trình APT
2.2.1 Lập trình với đường chạy dao point to point
Lập trình với đường chạy dao point to point mô tả sự di chuyển của dao từ một điểm đến một điểm khác mà không bao gồm chuyển động cắt Câu lệnh này cho phép đưa dụng cụ cắt đến vị trí mong muốn, xác định véc tơ cắt cho đường chạy dao tiếp theo nhằm cắt phôi theo đường thẳng Ví dụ, với lệnh này, mũi khoan hoặc mũi taro có thể được đưa đến vị trí lỗ tâm mà không có chuyển động ăn dao Các lệnh thường được sử dụng trong lập trình bao gồm FROM, GOTO và GODLTA.
Câu lệnh From được sử dụng để xác định vị trí khởi đầu của dao, đóng vai trò như một điểm tham chiếu cho các vị trí tiếp theo Nên sử dụng câu lệnh From ở đầu chuỗi lệnh chạy dao trong chương trình, vì nó không tạo ra sự chuyển động của dao mà chỉ thiết lập vị trí khởi đầu.
FROM / Toạ độ X, toạ độ Y, (toạ độ Z) Hoặc
Trong đó nếu không nhập giá trị toạ độ Z, thì APT mặc định Z = 0
Dưới đây là hai câu lệnh FROM, trong đó câu lệnh đầu tiên mô tả chuyển động của dao từ điểm khởi đầu (3,4,3), trong khi câu lệnh thứ hai chỉ rõ dao bắt đầu di chuyển từ điểm P1, mà P1 cần được định nghĩa trước.
Câu lệnh GOTO trong gia công cơ khí yêu cầu dụng cụ cắt di chuyển từ vị trí hiện tại đến vị trí xác định, thường được sử dụng sau câu lệnh khởi động FROM GOTO thường áp dụng cho các quá trình khoan, doa và taro lỗ Đặc biệt, câu lệnh này không cần cung cấp giá trị offset bán kính dao, vì nó thuộc kiểu di chuyển POINT TO POINT.
GOTO / toạ độ X, toạ độ Y, (toạ độ Z) Hoặc
GOTO / Tên điểm Nếu không nhập toạ độ Z thì APT mặc định toạ độ Z= 0
GOTO / P2 Ở đây P2 là điểm được định nghĩa trước
Hai câu lênh FROM và GOTO thường đi cùng nhau ở đầu của chuỗi các câu lệnh về đường chạy dao để định vị trí dao, trong hình trên
Sau đây, là ba câu lệnh có nhiệm vụ dịch chuyển dao từ (-2, -2, 3) tới (1, 1, 2) sau đó tới (3, 6, 6)
Lệnh GOLDTA yêu cầu dao dịch chuyển đến vị trí mới bằng cách thay đổi khoảng cách d trên các trục X, Y, Z từ điểm hiện tại Khoảng tăng d có thể là giá trị âm hoặc dương; nếu là giá trị dương, dao sẽ di chuyển theo hướng dương trên trục, và ngược lại nếu là giá trị âm.
GOLDTA / X, Y, Z và GOLDTA / Z đề cập đến việc điều chỉnh các giá trị theo trục X, Y và Z để thực hiện giao dịch từ vị trí hiện tại đến điểm xác định Trong lệnh thứ hai, khi chỉ có một giá trị duy nhất được chỉ định, APT sẽ mặc định thực hiện di chuyển theo trục Z.
Ví dụ: Trong hình trên ta sử dụng hai câu lệnh FROM và GOLDTA để dịch chuyển dao từ điểm hiện tại (-2, -2, 3) tới điểm mong muốn (4, 5, 1)
Sau đây là câu lệnh thực hiện
2.2.2 Các bề mặt kiểm soát Đường chạy dao có thể được định nghĩa hình học duy nhất bởi hai bề mặt hoặc bề mặt kiểm soát khi dao cắt dịch chuyển và luôn tiếp xúc với bề mặt đó Có ba bề mặt thường được sử dụng để định nghĩa đường chạy dao kiểu continuos – path đó là:
Drive surface (DS), Part surface (PS), Check surface (CS)
Drive surface là bề mặt tiếp xúc trực tiếp với dao, giữ vai trò quan trọng trong việc định hướng chuyển động của dao cắt Nó luôn duy trì mối quan hệ với đường tâm của dao và hướng dao cắt theo phương vuông góc với trục dao, đảm bảo hiệu quả trong quá trình cắt.
Part surface là bề mặt liên quan trực tiếp đến chiều trục của dao, đóng vai trò quan trọng trong việc kiểm soát độ sâu cắt Bề mặt này có thể là mặt phẳng ngang, mặt phẳng nghiêng hoặc mặt phẳng trụ.
Check surface là bề mặt kiểm soát cho việc kết thúc chuyển động của dao cắt theo yêu cầu cụ thể Mối quan hệ giữa dao cắt và các bề mặt Drive, Part, Check được thể hiện rõ trong hình minh họa.
Hình 2.47: Bề mặt Drive A và bề mặt Check tại B [9]
Dao di chuyển dọc theo bề mặt Drive từ điểm A, với điểm đáy dao luôn tiếp xúc với bề mặt Part Chuyển động của dao sẽ dừng lại khi tiếp xúc với bề mặt Check tại điểm B.
Trong quy trình chạy dao liên tục, bề mặt Check trở thành bề mặt Drive cho các chuyển động tiếp theo, trong khi bề mặt Part được gia công theo yêu cầu Khi một bề mặt được xác định là bề mặt Part, nó vẫn phải thực hiện nhiệm vụ này cho các đường chạy dao tiếp theo cho đến khi có bề mặt khác được xác định để thay thế.
Năm bề mặt được sử dụng để chỉ thị quá trình giao dịch di chuyển liên tiếp qua các điểm A, B, C, D và quay lại A Hình minh họa cho thấy S5 là bề mặt phần cho toàn bộ đường viền.
Hình 2.48: Các bề mặt kiểm soát [9]
Bề mặt Drive và Check cho mỗi chuyển động chạy dao và quan hệ của chúng với lần chạy dao tiếp theo nhƣ sau:
Chuyển động chạy dao Drive surface Check surface Part surface
Khi chỉ sử dụng một bề mặt Part, bề mặt Check cho mỗi chuyển động chạy dao sẽ trở thành bề mặt Drive cho lần chạy dao tiếp theo Ví dụ, S2 là bề mặt Check cho chuyển động từ A đến B và sau đó trở thành bề mặt Drive cho chuyển động từ B đến C Tương tự, các bề mặt S3 và S4 cũng hoạt động theo cách này trong quá trình chạy dao.
2.2.3 Những thay đổi với bề mặt Check
Chuyển động của dao sẽ dừng lại khi tiếp xúc với bề mặt Check, tạo ra tối đa 4 vị trí kết thúc khác nhau cho mỗi lần chạy dao Do đó, mối quan hệ giữa dao và bề mặt Check cần được xác định một cách rõ ràng Những thay đổi trên bề mặt Check được mô tả thông qua 4 từ bổ nghĩa tương ứng.
TANTO Bề mặt Check Bề mặt Drive
Hình 2.49: Những thay đổi với bề mặt Check [9]
Câu lệnh hậu xử lý (postprocessor) cho ngôn ngữ lập trình APT
Trong chương trình NC, có hai loại thông tin cơ bản là đặc điểm đường chạy dao và yêu cầu gia công Lập trình APT tập trung vào các định nghĩa hình học và chuỗi đường chạy dao Đặc điểm gia công bao gồm các lệnh và hàm điều khiển máy như tốc độ, kích thước dụng cụ cắt, lượng tiến dao, chất làm nguội, đơn vị, thay dao, hệ tọa độ máy và các hàm phụ Hầu hết các lệnh gia công kỹ thuật không thuộc hệ thống APT mà được xử lý bởi bộ hậu xử lý (Processor), do đó thường được tham chiếu bởi lệnh của bộ hậu xử lý.
Bộ hậu xử lý là chương trình máy tính chuyển đổi file đầu ra của hệ thống APT thành định dạng phù hợp cho máy công cụ, bao gồm điều khiển tốc độ quay và làm nguội Hệ thống yêu cầu sử dụng F-codes, S-codes và M-codes Bài viết này sẽ trình bày các lệnh của bộ hậu xử lý, cách thiết lập dao và máy, cùng với các thiết lập hỗ trợ khác.
2.3.1 Các thiết lập hậu xử lý
Các lệnh thiết lập hậu xử lý bao gồm một hoặc nhiều từ riêng trong chuỗi lệnh thích hợp Bộ hậu xử lý sẽ đọc và chuyển đổi các lệnh này thành lệnh điều khiển, cho phép máy công cụ điều khiển số nhận diện và thực hiện Dạng tổng quát của câu lệnh hậu xử lý rất quan trọng trong quy trình này.
Câu lệnh hậu xử lý luôn yêu cầu một từ major, trong khi phần minor là tùy chọn, có thể bao gồm từ khóa, từ bổ nghĩa và tham số, tùy thuộc vào thể loại của từ major Phần này sẽ trình bày một số cách sử dụng lệnh hậu xử lý, bao gồm cả việc thiết lập đơn vị.
Có hai đơn vị tiêu chuẩn cơ bản đƣợc dùng trong lập trình NC là:
Trong chương trình, đơn vị Inch là mặc định nhưng có thể bỏ qua, cho phép sử dụng cả hai đơn vị INCH và MM Khi một hệ đơn vị được thiết lập, nó sẽ thay thế hệ đơn vị trước đó và áp dụng cho các lệnh chương trình cho đến khi có sự thay đổi Bên cạnh đó, việc thiết lập dụng cụ cắt cũng rất quan trọng trong quy trình này.
Thiết lập dụng cụ cắt trong APT là quá trình mô tả hình học của dụng cụ cắt được sử dụng trong lập trình theo đường liên tục (continuous-path) Khác với lập trình theo điểm (point-to-point), việc thiết lập dụng cụ cắt không cần phải xác định rõ ràng, vì khoảng cách của dụng cụ không cần phải khai báo Trong lệnh 2D, trên mặt phẳng vuông góc với trục dụng cụ, có thể áp dụng các lệnh thiết lập đơn giản để thực hiện.
Đường kính D và bán kính R của dụng cụ cắt là những thông số quan trọng, trong đó R có thể được tùy chọn và bỏ qua Lệnh quay trục chính Spindle là một phần thiết yếu trong quá trình vận hành.
Lệnh spindel đƣợc dùng để thực hiện ba nhiệm vụ sau:
- Bật hoặc tắt trục chính
- Chỉ ra chiều quay trục chính cùng hoặc ngƣợc chiều kim đồng hồ
- Đặt tốc độ trục chính, số vòng/ phút {RPM}
Câu lệnh SPINDL / OFF được sử dụng để điều khiển trục chính trong máy CNC Câu lệnh đầu tiên cho phép bật trục chính với tốc độ và chiều quay đã được xác định trước, trong khi câu lệnh thứ hai dùng để dừng trục chính.
Có ba câu lệnh hợp lệ: Từ NC tương ứng
Các câu lệnh quay được chuyển sang dạng NC tương ứng trong bộ hậu xử lý của APT d) Thiết lập đường chạy dao
Lượng tiến dao là tốc độ mà dụng cụ cắt di chuyển dọc theo bề mặt PS, và có thể được đo bằng đơn vị inch/phút hoặc inch/vòng.
Lệnh thiết lập lƣợng tiến dao có dạng sau:
FEDRAT / Giá trị lƣợng tiến dao,
Câu lệnh RAPIT khởi động chế độ chạy ngang (không ăn dao) cho chuyển động của dụng cụ cắt, chỉ có hiệu lực cho câu lệnh chuyển động theo sau Sau khi xử lý, RAPIT được chuyển đổi thành mã G00 Trong thiết lập ban đầu, từ khóa IPM là mặc định và có thể được bỏ qua.
Bốn dạng lệnh tiến dao hợp lệ được cho dưới đây
FEDRAT / 10.0, IPM FEDRAT / 10.0 FEDRAT / 0.005, IPR RAPIT
Hai câu lệnh đầu tiên có cùng hiệu lực, chỉ ra lƣợng tiến dao yêu cầu là 10 inch/ phút
Lượng tiến dao được chuyển sang lệnh NC tương ứng bải qua hậu xử lý trong APT Một số ví dụ:
Lệnh lƣợng tiến dao Lệnh NC
RAPIT G00 e) Lệnh thay dao là cần thiết trong quá trình gia công chi tiết, vì thường sử dụng nhiều loại dao khác nhau Lệnh này giúp điều khiển trục chính di chuyển đến vị trí thay dao, lắp dao mới vào trục chính và cập nhật thông tin về dao mới trong hệ thống.
Lệnh thay dao có dạng:
Lệnh thay dao trong lập trình NC được thể hiện bằng mã M06 và số T ở đầu ra, ví dụ như lệnh T1 M06 cho câu lệnh đầu tiên Đồng thời, cần thiết lập chế độ làm nguội để đảm bảo quá trình gia công diễn ra hiệu quả.
Hầu hết các máy CNC hiện nay cho phép cung cấp chất làm nguội dưới dạng dòng (Flood) hoặc phun sương (Mist) Lệnh thiết lập chế độ làm nguội thường có cấu trúc như sau:
Lệnh thiết lập chế độ làm nguội đƣợc chuyển sang mã G07 cho lệnh MIST, M08 cho lệnh FLOOD và M09 cho lệnh OFF g) Lệnh trễ (Delay)
Lệnh Delay trong máy NC cho phép điều khiển hoạt động gia công sau một khoảng thời gian nhất định Chức năng này thường được áp dụng trong gia công lỗ, nhằm tạo ra khoảng dừng tại đáy lỗ trước khi mũi khoan rút ra khỏi bề mặt.
DELAY/ t Với t là thời gian trễ, tính bằng giây
Ví dụ 4.4: Hai câu lệnh hợp lệ được cho dưới đây
Câu lệnh dừng là công cụ quan trọng để kiểm soát sự thay đổi và thực hiện các nhiệm vụ của thợ giám sát, như kiểm tra dao và kích thước tiêu chuẩn Trong APT, có hai loại câu lệnh dừng là STOP và OPSTOP Câu lệnh STOP sẽ tạm dừng chương trình cho đến khi nút START được nhấn lại, và nó được coi là câu lệnh dừng không điều kiện.
OPSTOP nghĩa là tự dừng hoặc dừng lựa chọn và đặt kế hoạch dừng Máy công cụ dừng chỉ khi nút OPSTOP trên bàn điều khiển đƣợc ấn
STOP OPSTOP Câu lệnh STOP được chuyển sang mã G00 trong chương trình NC, lệnh OPSTOP là mã M01 i) Câu lệnh Clear Plane
Hệ thống xử lý chương trình nguồn APT
Bộ xử lý chương trình là trái tim của bộ xử lý APT, được thiết kế để xử lý chương trình nguồn APT và tạo ra file dữ liệu CL DATA.
Dữ liệu vị trí và thông tin điều khiển máy công cụ được lưu trữ trong file CL DATA Sau đó, thông tin này sẽ được chuyển đổi thành mã NC tương thích với máy NC thông qua bộ xử lý và bộ hậu xử lý.
Cấu trúc của bộ xử lí ATP gồm 5 giai đoạn xử lí:
- Giai đoạn giam sát (Supervision)
- Giai đoạn dịch và xử lí cú pháp chương trình (Translation syntax editing phase)
- Giai đoạn tính toán và thực thi chương trình (Execution Caculation phase)
- Giai đoạn biên tập và hiệu chỉnh (Edit phase)
- Giai đoạn xử lí tiếp theo
Hình 2.56: Sơ đồ cấu trúc bộ xử lý APT [9] a) Giai đoạn giám sát (supervision phase)
Giai đoạn giám sát đóng vai trò quan trọng trong việc kiểm soát và định hướng quá trình xử lý của hệ thống Khi chương trình nguồn APT được nhập vào, nó sẽ trải qua các giai đoạn như dịch, thực hiện tính toán, hiệu chỉnh đường chạy dao và hậu xử lý, mỗi giai đoạn đều được quản lý bởi phần giám sát Sau khi hoàn thành nhiệm vụ tại mỗi giai đoạn, chương trình sẽ trở về bộ giám sát để được gán cho giai đoạn xử lý tiếp theo, cho đến khi toàn bộ chương trình nguồn được hoàn tất Giai đoạn dịch và xử lý cú pháp là một phần không thể thiếu trong quy trình này.
Có 3 chức năng đƣợc thể hiện trong giai đoạn này của bộ xử lý APT:
- Chuyển đổi thông tin mô tả hình học trong phần chương trình nguồn sang dạng thức hợp lệ phù hợp cho giai đoạn xử lý tiếp theo
- Tạo ra file dữ liệu trung gian nhƣ file PROFII Trong đó sử dụng dạng thức hợp lệ của việc mô tả hình học và các lệnh APT khác
Kiểm tra cú pháp là bước quan trọng để phát hiện lỗi trong việc sử dụng từ vựng, điều chỉnh sắp xếp dữ liệu, cũng như hệ thống dấu câu và trật tự câu Giai đoạn này cũng bao gồm việc thực hiện các phép tính cần thiết.
Giai đoạn thực hiện tính toán sử dụng file trung gian PROFII, được tạo ra trong quá trình dịch và xử lý cú pháp chương trình, bao gồm các thông tin như dầu vào và các tính toán liên quan đến hình học chi tiết cùng vị trí tâm dao Tại đây, một file khác gọi là file CL-File được tạo ra, chứa thông tin về vị trí tâm dao và các yêu cầu hậu xử lý.
Hai nhiệm vụ chính trong giai đoạn này là
- Biến đổi dữ liệu vị trí tâm dao kết hợp với TRACUT, COPY, VTLAXS và thực hiện cập nhật file CL-File
Tạo file CL-File, được gọi là CL DATA, chứa thông tin về vị trí dao trong quá trình gia công chi tiết và các yêu cầu hậu xử lý được xác định trong chương trình nguồn.
- TRACUT – Transfrom cutter location: Cho phép các vị trí tâm dao đƣợc xoay đi, dịch chuyển, phóng to, thu nhỏ hoặc kết hợp cả 3 yêu cầu này
- COPY: Sử dụng để sao chép phần dữ liệu được định nghĩa trước đó
VTLAXS – Trục công cụ biến đổi: Đây là một loại tệp CL-File đặc biệt được thiết kế riêng cho lập trình đa trục, cho phép điều chỉnh hướng trục dao trong quá trình di chuyển dọc theo các bề mặt kiểm soát liên tiếp Giai đoạn hậu xử lý cũng rất quan trọng trong quy trình này.
Trong giai đoạn này, có thể áp dụng một số bộ hậu xử lý khác nhau, được xác định riêng cho việc kết hợp giữa máy công cụ và kỹ thuật điều khiển số, với mỗi bộ hậu xử lý được thiết kế đặc biệt cho một loại máy NC cụ thể.
Bộ hậu xử lý là chương trình máy tính dùng để chuyển đổi dữ liệu vị trí dao và thông tin vận hành máy thành mã NC có thể đọc được Giai đoạn hậu xử lý không thuộc hệ thống APT, nên việc thực hiện nó là tùy chọn và phụ thuộc vào bộ hậu xử lý được khai báo trong câu lệnh MACHIN Đầu ra của giai đoạn này bao gồm các mã NC với các chức năng M, T, F, cùng các dạng mã chương trình và chức năng khác.
2.4.2 Tiến trình xử lý chương trình nguồn APT
Khi một chương trình nguồn APT được thực hiện, bộ xử lý gán một chuỗi số (ISN) cho mỗi câu lệnh Các lệnh mô tả hình được chuyển đổi thành dạng phức hợp lệ, có thể được in ra bằng lệnh PRINT để kiểm tra Ngoài ra, dữ liệu vị trí dao cũng có thể được in ra thông qua câu lệnh CLPRINT trong phần hiệu chỉnh.
Cuối cùng qua bộ hậu xử lý, một file NC cấu trúc bao gồm các mã chương trình
T, F, M, và S đƣợc đƣa ra để máy gia công
Bảng 2.2: Dạng thức hợp lệ để lựa chọn kiểu thực thể hình học
Giá trị tọa độ của điểm đƣợc đƣa ra trong hệ thống tọa độ
A, B, C và D là các hệ số của phương trình mặt phẳng hoặc đường thẳng thẳng) 3
Phương trình Ax + By + Cz = 0, với A, B, C là tọa độ của véc tơ pháp tuyến, mô tả một mặt phẳng vuông góc với mặt phẳng XY khi C = 0.
Trong APT, đường tròn được xem như là hình trụ vuông góc với mặt XY, A, B, C là tọa độ của véc tơ đường tâm, ở đây với đường tròn thì A = B = 0 và C = 1
R là giá trị bán kính
A, B, C và D là hệ số của phương trình mặt phẳng Ax + By + Cz = D
A, B, C lần lƣợt là véc tơ thành phần trên các trục X, Y, Z
X, Y, Z là tọa độ của điểm trên đường tâm,
A, B, C lần lƣợt là các véc tơ đơn vị nằm trên các trục X, Y, Z để tạo nên đường tâm
R là giá trị bán kính
A, B, C, D, F, G, H, P, Q, R là các hệ số của phương trình bề mặt Quadric
Ax 2 + By 2 + Cz 2 + D + 2FYZ + 2GXZ + 2HXY + 2PX + 2QY+2RZ = 0
C1, C2…C12 là các hệ số của ma trận chuyển đổi
Bộ xử lý APT chuyển đổi các câu lệnh mô tả hình học thành dạng thức hợp lệ, giúp máy tính dễ dàng xử lý dữ liệu Việc sắp xếp dạng thức hợp lệ có thể thay đổi giữa các kiểu phần tử hình học khác nhau Mặc dù có nhiều phương pháp để định nghĩa cùng một kiểu phần tử hình học, tất cả đều được chuyển đổi về một dạng thức hợp lệ chung.
Ví dụ: Các điểm đều đƣợc chỉ ra bởi 3 giá trị tọa độ của nó theo các trục X, Y,
Z và không kể tới chúng đƣợc định nghĩa nhƣ thế nào Bảng trên là danh sách các dạng thức hợp lệ để lựa chọn kiểu thực thể hình học
Nhận diện dạng thức hợp lệ là một công cụ quan trọng trong việc sửa lỗi chương trình trong quá trình kiểm tra Câu lệnh PRINT thường được sử dụng để hiển thị dữ liệu của dạng thức hợp lệ.
Các dạng hợp lệ của cậu lệnh PRINT
PRINT/ ON: Tạo ra dạng thức hợp lệ của mỗi thực thể đƣợc in ra ngay khi nó đƣợc tạo ra
PRINT/ OFF: Để hủy bỏ PRINT/ON
PRINT/ 3ALL: Tạo ra dạng thức hợp lệ và các đại lƣợng toán biến thiên in ra khi gặp câu lệnh này
Bảng 2.3: Các thuật ngữ cơ bản dùng trong lập trình bằng ngôn ngữ APT
STT Thuật ngữ anh Ý nghĩa STT Thuật ngữ anh Ý nghĩa
1 POINT Điểm 23 RADIUS Bán kính
2 LINE Đường thẳng 24 ATANGL Góc
3 X AXIS Trục X 25 INTOF Cắt nhau
4 Y AXIS Trục Y 26 TANTO Tiếp tuyến
5 Z AXIS Trục Z 27 MIROR Tạo đối xứng
6 CIRCLE Đường tròn 28 SCALE Thay đổi tỉ lệ
7 ELLIPS Elip 29 CLW Cùng chiều kim đồng hồ
8 PATERN Hệ các điểm 30 CCLW Ngƣợc chiều kim đồng hồ
9 PLANE Mặt phẳng 31 LEFT Bên trái
10 XY PLAN Mặt phẳng XY 32 LARGE Lớn hơn
11 YZ PLAN Mặt phẳng YZ 33 SMALL Nhỏ hơn
12 ZX PLAN Mặt phẳng ZX 34 X LARGE X lớn hơn
13 Z SURF Mặt phẳng // XY 35 X SMALL X nhỏ hơn
14 SPHERE Hình cầu 36 Y LARGE Y lớn hơn
15 CILINDR Hình trụ 37 Y SMALL Y nhỏ hơn
16 CONE Hình côn 38 Z LARGE Z lớn hon
17 VECTOR Véc tơ 39 Z SMALL Z nhỏ hơn
18 MATRIX Hệ tọa độ 40 LFT Sang bên trái
19 CENTER Tâm 41 RGT Sang bên phải
20 FWD Tiến 42 GOLFT Đi bên trái
21 BACK Lùi 43 GORGT Đi bên phải
22 UP Lên trên 44 GOFWD Đi về phía trước
45 DOWN Xuống dưới 63 GO BACK Lùi về phía sau
46 TO Đến 64 GO UP Đi lên phía trên
47 ON Ở trên 65 GO DOWN Đi xuống
48 PAST Đằng sau 66 XY ROT Quay quanh Z
49 FROM Vị trí ban dầu 67 ZX ROT Quay quanh Y
50 PS Mặt gia công 68 YZ ROT Quay quanh X
51 DS Mặt dẫn hướng 69 CUTER Dao phay
52 CS Mặt giới hạn 70 PARLEL Song song
53 RIGHT Quay sang trái 71 PERPTO Vuông góc
59 TLOFPS Dao tiếp xúc với