I- Tên đề 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 II- Mục đích của đề tài : - Nhiên cứu cầu trúc của chương trình NC vào ngôn ngữ APT - Xây dựng
Trang 2PHẦN I:
Đặt vấn đề
CHƯƠNG MỞ ĐẦU: Giới thiệu tổng quan về lập trình bằng ngôn ngữ APT với sự trỡ giúp của máy tính I Một số ngôn ngữ lập trình bằng tay
II Giới thiệu ngôn ngữ APT
II.1 Giới thiệu chung
II.2 Tập ký tự dùng trong ngôn ngữ APT
II.3 Tên
II.4 Từ khóa
II.5 Một số quy tắc khi viết chương trình bằng ngôn ngữ APT
II.6 Cấu trúc chung của một chương trình APT
CHƯƠNG I: Các định nghĩa hình học cơ bản trong APT I.1 Định nghĩa điểm
I.1.1 Hệ tọa độ vuông góc
I.1.2 Hệ tọa độ cực
I.1.3 Điểm tham chiếu bán kính và góc
I.1.4 Tâm của một đường tròn
I.1.5 Giao điểm của đường tròn và đường thẳng đi qua tâm
I.1.6 Điểm đĩnh nghĩa quan hệ với một điểm khác trên đường tròn
I.1.7 Giao điểm của 2 đường thẳng
I.1.8 Giao điểm của đường thẳng và đường tròn
I.1.9 Giao điểm của 2 đường tròn
I.1.10 Giao điểm của 3 đường thẳng
I.2 Định nghĩa đường thẳng
I.2.1 Đường thẳng được định nghĩa qua 2 điểm
I.2.2 Đường thẳng được định nghĩa dựa trên trục X hoặc trục Y với khoảng Offset
I.2.3 Đừơng thẳng được đĩnh nghĩa qua một điểm và tạo với trục X hoặc trục Y một góc
I.2.4 Đường thẳng đĩnh nghĩa qua một điểm và song song hoặc vuông góc với một đường thẳng khác
I.2.5 Đường thẳng định nghĩa bởi chiều nghiêng hoặc góc tạo bởi trục chính và đoạn chắn trên trục
1
2
3
3
5
5
7
7
7
8
8
11
13
13
14
15
15
16
17
17
18
19
20
20
20
21
22
22
23
Trang 3I.2.8 Đường thẳng định nghĩa đi qua một điểm và tiếp tuyến với
một đường tròn
I.2.9 Đường thẳng được định nghĩa là tiếp tuyến của đường tròn và hợp với trục X một góc
I.2.10 Đường thẳng định nghĩa là tiếp tuyến của đường tròn và hợp với đường thẳng cho trước một góc xác định
I.2.11 Đường thẳng đĩnh nghĩa là tiếp tuyến của 2 đường tròn
I.3 Định nghĩa tròn
I.3.1 Đường tròn được định nghĩa bởi vị trí tâm và bán kính
I.3.2 Đưừng tròn được định nghĩa bởi điểm tâm và 1 điểm trên chu vi của nó
I.3.3 Đường tròn được định nghĩa bởi 3 điểm trên chu vi của nó
I.3.4 Đường tròn định nghĩa bởi 2 điểm trên chu vi và bán kính xác định
I.3.5 Đường tròn được định nghĩa bởi điểm tâm và đường thẳng tiếp tuyến
I.3.6 Đường tròn định nghĩa bởi điểm tâm và đường tròn tiếp xúc
I.3.7 Đường tròn định nghĩa bởi 2 đường tiếp tuyến giao nhau và giá trị bán kính xác định
I.3.8 Đường tròn được định nghĩa bởi một tiếp tuyến, một điểm trên chu vi và giá trị bán kính xác định
I.3.9 Đường tròn định nghĩa khi nhận 3 đường thẳng làm tiếp tuyến I.3.10 Đường tròn định nghĩa khi biết giá trị bán kính và tiếp xúc với một đường thẳng và đường tròn khác
I.3.11 Đường tròn dược định ra bởi 2 đường tròn tiếp xúc và giá trị bán kính xác định
I.3.12 Đường tròn được định ra bởi một điểm, tiếp xúc với một đường tròn cho trước và bán kính của nó
I.4 Định nghĩa mặt phẳng
I.4.1 Mặt phẳng được định ra bởi 3 điểm không thẳng hàng
I.4.2 Mặt phẳng được định ra bởi các hệ số của phương trình mặt phẳng
I.4.3 Mặt phẳng được định ra bởi một điểm và mặt phẳng song song I.4.4 Mặt phẳng được định ra bởi khoảng cách vuông góc với mặt phẳng song song đã định
I.4.5 Mặt phẳng được định ra bởi 1 điểm và 1 véc tơ vuông góc
26
27
29
30
31
31
32
33
34
35
35
36
38
39
40
41
43
44
44
45
49
50
52
Trang 4I.4.7 Mặt phẳng được định nghĩa qua một điểm cho trước và vuông
góc với 2 mặt phẳng giao
I.4.8 Mặt phẳng được định ra khi song song với một mặt phẳng tọa độ và cách mặt phẳng tọa độ một khoảng xác định
I.4.9 Mặt phẳng được định ra qua một điểm và tiếp xúc với một mặt trụ
I.5 Mục đích ý nghĩa- các bước đưa ra phần định nghĩa các thực thể hình học
I.5.1 Mục đích ý nghĩa
I.5.2 Các bước chỉ dẫn đưa ra phần đĩnh nghĩa thực thể hình học
Chương II: Thiết lập đường chạy dao trong APT II.1 Lập trình với đường chạy dao Point to Point
II.1.1 Lệnh FROM
II.1.2 Lệnh GOTO
II.1.3 Lệnh GOPLTA
II.2 Các bề mặt kiểm soát
II.3 Những thay đổi với bề mặt CHECK
II.4 Lệnh STAR- UP
II.4.1 Lệnh STAR-UP với 3 bề mặ kiểm soát
II.4.2 Lệnh STAR-UP với 2 bề mặt kiểm soát
II.4.3 Lệnh STAR-UP với một bề mặt kiểm soát
II.5 Lập trình đường chạy dao CONTINUOS- PATH
II.5.1 Từ bổ nghĩa về lượng chuyển động chạy dao
II.5.2 Từ bổ nghĩa cho vị trí dao
II.5.3 Lệnh chạy dao CONTINUOS-PATH
II.6 Lệnh thiết lập đặt dụng sai
CHƯƠNG III: Các câu lệnh thuộc bộ xử lý tiếp theo trong APT
III.1 Các câu lệnh thuộc bộ hậu xử lý
III.1.1 Lệnh khai báo hệ đơn vị sử dụng
III.1.2 Lệnh khai báo dụng cụ cắt
III.1.3 Lệnh điều khiển trục chính
III.1.4 Lệnh khai báo tốc độ chạy dao
54
55
56
57
57
57
61
61
61
62
63
64
67
68
68
69
70
72
73
75
76
77
80
81
81
81
85
86
Trang 5III.1.9 Lệnh đĩnh nghĩa mặt phẳng mới
III.1.10 Lệnh hủy bỏ
III.1.11 Lệnh kết thúc chương trình
III.1.12 Lệnh hoàn thành
III.2 Một số lệnh phụ trợ
III.2.1 Lệnh PARTNO
III.2.2 Lênh MACHIN
III.2.3 Lệnh NOPOST
III.2.4 Lệnh CLPRNT
III.2.5 Lệnh REMARK và $$
IV Hệ thống xử lý chương trình nguồn APT- Một số ví dụ về chương trình nguồn APT
IV.1 Bộ xử lý APT
IV.1.1 Giai đoạn giám sát
IV.1.2 Giai đoạn dịch và xử lý cú pháp chương trình IV.1.3 Giai đoạn thực hiện tính toán
IV.1.4 Giai đoạn hiệu chỉnh đường chạy dao
IV.1.5 Giai đoạn hậu xử lý
IV.2 Tiến trình xử lý chương trình nguồn APT
IV.3 Một số ví dụ về lập trình APT
Kết luận chung
Tài liệu tham khảo
Phụ lục
89
89
89
89
89
90
90
90
91
91
93
93
95
95
95
95
96
96
102
116
117
118
Trang 6I- Tên đề 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
II- Mục đích của đề tài :
- Nhiên cứu cầu trúc của chương trình NC vào ngôn ngữ APT
- Xây dựng chương trình gia công mặt định hình theo ngôn ngữ APT
III- Nội dung của đề tài, các vấn đề cần đạt được
Trong những năm gần đây ở Việt Nam các viện nghiên cứu, các trường đại học, các trung tâm công nghệ lớn của đát nước đã được trang bị các hệ máy
NC và CNC đang hoạt động ngày càng rộng rãi gây ấn tượng mạnh mẽ cho các nhà công nghệ nước ta
Nhìn lại lịch sử phát triển của công nghệ và máy gia công đã trải qua các giai đoạn:
- Công nghệ thủ công
- Công nghiệp hoá với sự ra đời của các máy công cụ
- Tự động hoá cơ khí sang tự động hoá có sự trợ giúp của máy vi tính
Năm 1952 máy phay điều khiển số NC đầu tiên ra đời và chương trình gia công được lập theo ngôn ngữ APT (Auto Matically Program medtool) do viện nghiên cứu công nghệ Masschusetts tạo ra Sau đó ngôn ngữ lập trình được phát triển tiếp tục và đến những năm 70 đã ra đời các hệ điều khiển CNC Hệ điều khiển CNC ngoài các chức năng của hệ NC còn có thể hiện nhiều chức
Trang 7năng khác, nó có bộ phận lưu dữ chương trình và có thể thay đổi được chương trình gia công
Cùng với sự phát triển mãnh mẽ của công nghệ tin hoc với sự xuất hiện của các máy vi tính hiện đại cho khả năng nối ghép các quá trình thiết kế với quá trình gia công thành một dự án tổng thể với sự trợ giúp của máy vi tính CIM (Computer Intergrated Menufaturing) gia công có sự can thiệp của máy vi tính đã tạo ra sự thay đổi lớn trong các nhà máy Mục tiêu của CIM là gia công tự động linh hoạt, nó có khả năng gia công đạt hiệu quả kinh tế ngay khi
có số lượng chi tiết gia công trong loạt không lớn, Nó có khả năng rút ngắn thời gian gia công từ khi có ý tưởng về sản phẩm đến khi tạo ra được sản phẩm thực phục vụ cho thị trường Mô hình CIM cho ta đạt được tính linh hoạt tối ưu giữa thiết bị gia công và tổ chức quá trìng gia công
Sự đa dạng ngày càng mạnh mẽ của sản phẩm dẫn đến số lượng chi tiết gai công trong một loạt giảm đi làm tăng giá thành chế tạo Nhưng các hệ thống gia công linh hoạt cho khả năng gia công chi các tiết khác nhau trong cùng một họ các chi tiết với số lương chi tiết và thứ tự gi công tuỳ ý, với giá thành hợp lý
Ở Việt Nam việc ứng dụng công nghệ điều khiển số CNC trong quá trình sản xuất nói chung và quá trình gia công cơ khí nói riêng chắc chắn sẽ được sử dụng rộng rãi trong tương lai Do đó sự cần thiết học tập, nghiên cứu về các công nghệ mới và ứng dụng nó trong thực tế sản xuất là một việc rất cấp bách cho các nhà công nghệ và các sinh viên trong các trường đại học, cao đẳng kỹ thuật hiện nay
Mục đích của đề tài là xây dựng các phương pháp và ngôn ngữ lập trình có ứng dụng chạy thử trên máy CNC Trong đó cần giải quyết một số nội dung
- Nghiên cứu cấu trúc của chương trình NC và ngôn ngữ lập trình APT
Trang 8- Xây dựng chương trình gia công mặt định hình theo ngôn ngữ lập trình APT
PHẦN II
NỘI DUNG CHƯƠNG MỞ ĐẦU
GIỚI THIỆU TỔNG QUAN VỀ LẬP TRÌNH BẰNG NGÔN NGỮ APT VỚI SỰ
TRỢ GIÚP CỦA MÁY TÍNH
I MỘT SỐ NGÔN NGỮ LẬP TRÌNH BẰNG TAY
Có khoảng hơn 100 ngôn ngữ lập trình điều khiển số đã được triển khai ngay
từ những năm thập kỷ 50, khi mà học viện công nghệ Massachuseet của Mỹ bắt đầu nghiên cứu về việc lập trình cho máy điều khiển số Phần lớn trong số những ngôn ngữ này được triển khai để dáp ứng cho các nhu cầu và các máy móc đặc biệt và chúng đã không qua khỏi được kiểm soát của thời gian Tuy nhiên một số ít các ngôn ngữ đó thể hiện được tính ưu việt của chúng và đã được sử dụng và tồn tại cho đến ngày nay chúng có những ưu điểm sau:
- Cho phép xác định bài toán một cách đơn giản không cần đến tính toán
- Ngôn ngữ sử dụng các từ và ký tự biểu trưng dễ học, dễ nhớ, do các từ thường được lấy ra từ gốc tiếng Anh mà ngôn ngữ lập trình CNC được phổ biến và thông hiểu trên phạm vi quốc tế
- Với dự liệu ít có thể sản sinh được nhiều dự liệu đầu ra
- Các tính toán cần thiết do máy thực hiện
Dưới đây là một số ngôn ngữ quan trọng và phổ biến nhất
+ APT (Auto matically Program medtool - tự động hoá lập trình công nghệ) Ngôn ng ữ APT đã được một bộ phận của học viện công nghệ Massachuseet của Mỹ triển khai trên các những hệ thống lập trình điều khiển số vào những năm 50 và được đưa vào sản xuất khoảng năm 1959 Ngày nay APT là ngôn ngữ được sử dụng rộng rãi nhất ở Mỹ
Trang 9+ EXATP: (Extended subject of APT- tệp con mở rộng của APT) ngôn ngữ này có một điểm quan trọng là việc cố gắng tính toán tối ưu chế độ cắt một cách tự động Nó được triển khai ở Đức năm 1964 và lưu trên cơ sở APT có 3 bản (Version)
- EXAPTI: được thiết kế cho điều khiển vị trí điểm và đường (khoan và phay thẳng)
- EXATPII: được thiết kế cho quá trình điều khiển trên máy tiện
- EXATPIII: được thiết kế cho các nguyên công với quỹ đạo hạn chế
+ MINI ATP (tệp con thu gọn của APT) là ngôn ngữ lập trình do nhà chế tạo phần mềm Horn thiết lập cho nhiệm vụ điều khiển đường và phi tuyến với vốn từ vựng thu gọn 200 từ
+ TELEATP : Ngôn ngữ do IBM phát triển có khả năng đối thoại và dùng cho các dạng điều khiển điểm, đường và phi tuyến D
2
1
APT cho phép thông qua mạng TELEPHONE để chuyển vào một máy tính
xử lý
+ COMPACT2: Ngôn ngữ lập trình vạn năng cho các nhiệm vụ điều khiển điểm, đường, phi tuyến do MDSI (Manufatuary – Data – Systems Viện nghiên cứu hệ thống dữ liệu gia công) của Mý phát triển nó là ngôn ngữ có thể dùng được hên thống TELEPHONE và chế độ hoạt động nhiều đối tác trên nhiều TERMINAL và do đó được phổ biến rộng rãi trên thế giới
+ ELAN: Là ngôn ngữ lập trình của Pháp dành cho các nhiệm vụ gia công từ
2 ÷ 4 trục điều khiển số, nó gắn liền với 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
Trang 10+ MITURN : Ngôn ngữ lập trình do Hà Lan phát triển trên công nghệ tiện cho phép tìm ra bằng tính toán các dữ liệu công nghệ gia công và chế độ cắt gọt Ngoài ra còn các ngôn ngữ lập trình khác tương tự như APT được phát triển mãnh mẽ ở Tây Âu trong những năm 80 như AUTOTECH, SYMAP trên cơ
sở ứng dụng rộng rãi các trung tâm gia công và các hệ thống tự động linh hoạt trong sản xuất Nhưng một lần nữa có thể khẳng định rằng trong số tất cả các ngôn ngữ đã nêu trên thì APT là ngôn ngữ đại diện cho phong cách lập trình gia công Ngày nay ngôn ngữ lập trình APT được sử dụng rộng rãi nhất trên thế giới và ngày càng được hoàn thiện hơn
II - GIỚI THIỆU VỀ NGÔN NGỮ APT
II.1 Giới thiệu chung
APT là ngôn ngữ lập trình lập trình NC cao cấp được phát triển cho hệ điều khiển máy công cụ điều khiển số tại Mỹ lần đầu tiên vào năm 1955 Hiện nay
là ngôn ngữ lập trình NC hoàn chỉnh và được phổ biến rộng rãi nhất
Các mẫu APT APT MIT 1956
AI MIT APT II
APT III 1961
Hiện nay ngôn ngữ APT có khoảng 3000 từ cho phép thiết lập phần tạo hình của các quá trình gia công trên máy 5 trục toạ độ chuyển động đồng thời APT là ngôn ngữ lập trình bậc cao, nó thực hiện hàng loạt các tính toán tự động và cho phép tạo ra các chương trình nhanh và chính xác Các chương trình chi tiết trong APT không thể hiểu được bởi hệ điều khiển CNC vì thế nó cần một chương trình dicj từ ngôn ngữ APT sang mã máy G, các chương trình dịch phù hợp được sử dụng từ những năm 60 và dùng đến nay Chương trình dịch là những chương trình lớn mà thoạt đầu chỉ có thể chạy trên các COMPUTER chính, nhưng ngày nay nó có sẵn trên PC Một quyết địng quan trọng khi phát triển APT là nó có thể được thiết kế để sử dụng bởi tất cả các
Trang 11hệ thống CNC được cung cấp trong công nghệ đầu ra từ bộ xử lý APT (PROCESSOR) mà nó mô tả vị trí dụng cụ và trình tự mong muốn của các nguyên công và được biết như một dự liệu định vị dụng cụ Nên là một dạng tiêu chuẩn mà nó phụ thuộc vào hệ thống CNC, hơn nữa nó cần phải được truyền bởi chương trình COMPUTER khác được gọi là bộ hậu xử lý (POST PROCESSOR) trong các mã CNC riêng và được yêu cầu sử dụng bởi máy CNC
APT là một hệ thống trong không gian 3 chiều và nó có thể điều khiển cùng lúc tới 5 trục toạ độ Để lập trình bằng ngôn ngữ APT đầu tiên phải đĩnh nghĩa hình học bề mặt gia công, sau đó phải định hướng dụng cụ cắt đến điểm định vijvaf di chuyển dụng cụ dọc theo bề mặt gia công, để thực hiện các nguyên công cơ khí, điểm nhìn (VIEW POINT) của người lập trình là cố định
và sao cho bề mặt gia công là cố định , còn dụng cụ cắt được coi là di chuyển
Có tất cả 6 loại câu lệnh trong một chương trình APT
1 Các lệnh đĩnh nghĩa ban đầu: Các lệnh này cho phép đĩnh nghĩa hình
dáng hình học của phôi, của chi tiết gia công Ngoài ra chúng còn xác định vật liệu gia công, đặc tính và các thông số kỹ thuật của tất cả các dụng cụ cắt sử dụng trong quá trình gia công
2 Các lệnh dịch chuyển : Các lệnh này được sử dụng để địng vị dao cắt và
mô tả quỹ đạo chuyển động của dao cắt
3 Các lệnh mô tả nguyên công: Mô tả các nguyên công sẽ được tiến hành
đặt chế độ cắt, chọn dao, bật, tắt dung dịch trơn nguội
4 Các lệnh phụ trợ cho công nghệ: Lệnh đĩnh nghĩa dung sai, các chế độ
dừng máy
5 Các cấu trúc điều khiển: Vòng lặp, chương trình con
6 Các lệnh tính toán: Các phép tính toán thông thường, các tham số toán
học, lượng giác
Trang 12II.2 Tập ký tự dùng trong ngôn ngữ APT
Mọi ngôn ngữ lập trình đều được xây dựng lên từ một bộ ký tự nào đó Các
ký tự được nhóm lại theo nhiều cách khác nhau lập nên các từ khoá, Các từ khoá liên kết theo một quy tắc ngữ pháp nhất định nào đó để tạo thành các câu lệnh
Ngôn ngữ APT được xây dựng trên một bộ ký tự được tác ra từ bảng mã ASCII cơ sở (128 ký tự ASCII đầu tiên) cụ thể như sau:
26 chữ cái la tinh lớn A÷Z
II.4 Từ khoá
Từ khoá là những từ có một ý nghĩa hoàn toàn xác định, chúng thường
được sử dụng để khai báo các kiểu dự liệu để viết các toán tử và các câu lệnh
Trang 13II.5 Một số quy tắc khi viết chương trình bằng ngôn ngữ APT
1 Một câu lệnh có thể viết trên một hay nhiều dòng nhưng phải được kết thúc bằng một dấu chấm phẩy (; )
2 Quy tắc viết các lời giải thích
Lời giải thích phải được đặt giữa dấu [ ] và có thể được viết
- Trên cùng một dòng
- Trên cùng nhiều dòng
- Trên phần cuối của một dòng
Lời giải thích chỉ có tác dụng với người đọc chương trình, không có tác dụng đối với sự làm việc của chương trình
3 Quy tắc sử dụng chương trình con có sẵn
Để sẳ dụng được chương trình con đã có sẵn và được lưu giữ ở một tệp trên đĩa ta cần đặt dòng lệnh sau ở đầu chương trình USEMAC <tên và đường dẫn tệp chương trình con>
4 Quy tắc về cấu trúc một chương trình
Một chương trình APT có thể có hay không, nhiều hay ít các chương trình con nhưng bắt buộc phải có thân chương trình được bắt đầu bằng từ khoá
“START” và kết thúc bằng từ khoá “FINI”
II.6 Cấu trúc chung của một chương trình APT
Hệ thống APT là một chương trình máy tính rất phức tạp Một chương trình APT phải được xây dựng một cách liên tiếp và thích hợp cấu trúc điển hình của một chương trình APT gồm 5 phần
Trang 14$$ Bắt đầu chương trình – intralization section
Trang 15+ Phần mở đầu bao gồm các câu lệnh PARTNO, CLPRNT, UNITS, OUTTOL, INTOL, lệnh PARTNO phải là câu lệnh đầu tiên trong chương trình Tiếp theo là câu lệnh MACHIN Nếu như chương trình được xử lý bởi
bộ xử lý tiếp theo vào file CL cần được in ra thì phải có lệnh CLPRNT
Còn các lệnh UNITS, OUTTOL, INTOL là để xác định hệ thống đơn vị chiều dài và trị số dung sai cho đường chạy dao sử dụng trong chương trình + Phần thứ 2 của chương trình là mô tả hình học chi tiết gia công để từ đó quyết định đường chạy dao, trong phần này các lệnh đĩnh nghĩa các phần tử hình học phải được sắp dặt một cách thứ tự có lôgic
+ Phần tiếp theo đưa ra chế độ gia công như: Kích thước, dụng cụ, tốc độ chạy dao, tốc độ trục chính, dung dịch làm mát các lệnh náy phải được đĩnh nghĩa trước khi thiết lập đường chạy dao
+ Các câu lệnh FROM và START- UP phải được sử dụng để chỉ ra véc- tơ cắt khởi đầu trong mối liên hệ với các bề mặt kiểm soát của đường chạy dao tiếp theo
+ Phần kết thúc chỉ cần bao gồm duy nhất hai câu lệnh đó là : END và FINI Câu lệnh END ra hiệu đã đến cuối của tiến trình cắt và kết thúc chương trình Lệnh FINI cho biết đó là câu lệnh cuối cùng của chương trình và hoàn thành chương trình
Trang 16CHƯƠNG 1
CÁC ĐỊNH NGHĨA HÌNH HỌC CƠ BẢN TRONG APT
Các lệnh đĩnh nghĩa hình học được sử dụng để mô tả phần Profile của chi tiết bao gồm từ rất nhiều các thực thể hình học đặc biệt là: Các điẻm, các đường thẳng, các đường tròn, đường cong ,các mặt phẳng và các bề mặt định hình 2D và 3D
Các thực thể hình học này sau đó được sử dụng để xác định sự kết hợp giữa đường dẫn dụng cụ cắt để gia công chi tiết và trạng thái chuyển động của dao cắt Trong chương trình APT thì phần đĩnh nghĩa hình học phải được đĩnh nghĩa trước trạng thái chuyển động của dao cắt
Mặc dù có rất nhiều dạng đĩnh nghĩa hình học theo cấu trúc hình học cơ bảnvà các thông tin chứa đựng trong nó thì các câu lệnh đĩnh nghĩa được sử dụng có dạng chung nhất như trình bày sau:
Tên lệnh (Tên ký hiệu cho thực thể) = Dạng thực thể (kiểu hình học) / thông
tin của việc đĩnh nghĩa thực thể;
Ví dụ: C1= CIRCLE/CENTER, P1, RADIUS, 5;
- Tên lệnh: là một từ lữa chọn chỉ được sử dụng để nhận biết trạng thái của chương trình hoặc để tham chiếu tên kí hiệu kiểu hình học là ký hiệu do người sử dụng đĩnh nghĩa nó có thể bao gồm tới 6 ký tự là tập hợp của các chữ cái và các con số trong đó ký tự đầu tiên phải là chữ cái
- Dấu: (=) có thể được giải thích như “đã được đĩnh nghĩa như” Nó được
sử dụng để gán một tên cho một thực thể hình học hoặc một chương trình Macro (chương trình con) nó có thể được sử dụng để gán một giá trị cho một biến như trình bày trong các ví dụ sau:
Trang 17P1 = Point / 1, 5, 2 Gán P1 cho điểm (1,5,2)
M1 = Macro / x,y,z Gán M1 cho một hàm chương trình Macro
X = 10,0 ; Gán giá trị 10,0 cho điểm X
- Kiểu thực thể: (kiểu hình học) là từ lưu dữ được sử dụng để nhận định dạng, thực thể hình học đã được đĩnh nghĩa Trong phần Prôfin hai chiều đơn giản nó có thể là một trong những từ chính sau: POINT, LINE, CIRCLE, và PLANE một số dạng của thực thể sẵn có để đĩnh nghĩa bề mặt 3 chiều trong APT là: CONE (hình nón) CYLNDR (hình trụ) ELLIPS (hình elip) , GCONIC (dạng nón tổng quát), HYPERB (hy pecbol) , LCONIC (mặt cong lồi nối tiếp), PARSRE (bề mặt tham số), QADRIC (mặt tổng quát), RLDSRE (bề mặt quy luật) , SPHERE (hình cầu)
- Dấu gạch chéo : (/ ) được sử dụng để phân cách từ chính và dự liệu theo sau nó và có thể cũng được sử dụng như ký hiệu cho phép chia số học
- Thông tin của việc đĩnh nghĩa thực thể (mô tả dự liệu) dùng để đĩnh nghĩa phần tử hình học một cách chính xác, đầy đủ và duy nhất, phần này
có thể là dự liệu về vị trí và số lượng chiều các phần tử hình học đã được đĩnh nghĩa và các từ khóa APT khác Các dấu phẩy (, ) được đặt trong phần mô tả dữ liệu để ngăn cách các từ khóa và các số liệu Dấu chấm phẩy (; ) được đặt ở cuối câu lệnh
Chú ý:
Một phần tử hình học trong APT được máy xử lý như là hằng số tức là không được thực hiện các phép toán trên các phần tử hình học mà chỉ có thể sử dụng chúng để làm tham biến cho các lệnh dịch chuyển dao cắt
Có nhiều cách khác nhau để đĩnh nghĩa một phần tủ hình học Dưới đây
sẽ trình bày 4 dạng thực thể hình học cơ bản đó là: POINT (điểm); LINE (đường); CIRCLE (đường tròn) ; PLANE (mặt phẳng)
Trang 181.1 ĐỊNH NGHĨA ĐIỂM (POINT)
Một điểm được cho là có vị trí xác định trong không gian và chỉ được xác định vị trí của nó với 3 kích thước xác định trong hệ toạ độ vuông góc đã chọn Trong toán học điểm có thể được xác định bởi nhiều cách một số phương pháp định nghĩa điểm được đưa ra trong phần này
-2 -4
P2 (-2, -4, 3 ) 5
P3 (6.5, 5.7, 0 )
Hình 1.1 điểm được xác định bởi toạ độ vuông góc
Ba điểm kí hiệu P1, P2, P3 được xác định trong hệ toạ độ vuông góc nhuw trình bày trong hình 1.1 giá trị toạ độ của 3 điểm này là P1(3, 4, 5 ) ;
Trang 19H ình 1.2 điểm được xác định trong hệ toạ độ độc cực
Theo hình 1.2 3 điểm P1, P2, P3 trong hệ toạ độ độc cực được định nghĩa P1 = POINT / R THETA, XY PLAN, 5,60;
Trang 20P2 = POINT / R THETA, YZ PLAN, 7.5,45;
P3 = POINT / R THETA, ZX PLAN, 7,75;
1.1.3 Điểm tham chiếu, bán kính và góc
Một điểm trong mặt phẳng XY 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
Hình 1.3 điểm định nghĩa từ điểm tham chiếu P1= POINT / PT1, RADIUS, 15, ATANGL, 45;
P2 = POINT / PT1, RADIUS, 10, ATANGL, 135;
I.1.4 Tâm của một đường tròn
Tâm của một đường tròn cho trước có thể được định nghĩa như một điểm do
đó đường trònnên được định nghĩa trước trạng thái định nghĩa điểm
Trang 21tâm của đường tròn
1.1.5 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 định nghĩalà giao của một đường tròn và một đường thảng đi qua tâm với một góc hợp đường thẳnh với trục X dương
Dạng câu lệnh:
POINT/ Tên đường tròn, ATANGL, giá trị góc;
Ví dụ 5: định nghĩa 3 điểm P1, P2, P3 dựa trên đường tròn C1 như hình vẽ P1 = POINT / C1, ATANGL, 45;
P3
Hình 1.5 Điểm là giao của một đường tròn và đường thẳng đi qua tâm
Trang 22
1.1.6 Điểm định nghĩa 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 cho trước và tạo một góc với một điểm tham chiếu
Từ bổ nghĩa CLW và CCLW được sử dụng để chỉ ra hướng quay là thuận chiều kim đồng hồ hay ngược chiều kim đồng hồ
Từ phụ DELTA và ATANGL chỉ ra rằng góc đưa ra là góc tăng đo từ điểm tham chiếu
P2 = POINT / P1, DELTA, CCLW, ON, C1, ATANGL, 45;
P3 = POINT / P1, DELTA, CLW, ON, C1, ATANGL, 60;
Hình 1.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 đó
1.1.7 Giao điểm 2 đường thẳng
Một điểm có thể được đĩnh nghĩa đơn giản là dao điểm của 2 đường thăng Dạng câu lệnh
P1 = POINT/ INTOF, tên đường thẳng, tên dường thẳng;
Từ INTOF thay cho “giao của”
Trang 23Ví dụ: 7: Định nghĩa 3 điểm P1, P2, P3 là dao điểm của 2 trong 3 đường thẳng cho trước (hình 1.7)
L3
Hình 1.7 Điểm được định nghĩa bởi giao của các đường thẳng cho trước
1.1.8 Giao điểm của đường thẳng và đường tròn
Một điểm có thể định nghĩa là giao của đường thẳng và đường tròn Khi đường thẳng và đường tròn cho ta 2 giao điểm thì với dạng này 1 từ bổ nghĩa cần thiết được đưa ra để lựa chọn duy nhất điểm mong muốn.Từ bổ nghĩa được dựa trên quan hệ vị trí của điểm mong muốn liên hệ với các điểm có thể khác Từ bổ nghĩa được sử dụng để chỉ ra sự lựa chọn, nó có thể là một trong
4 từ sau XLARGE, XSMALL, YLARGE và YSMALL
Trang 24I.1.9 Giao của 2 đường tròn
Một điểm có thể được xác định bởi giao của 2 đường tròn Khi hai đường tròn giao nhau cho ta hai điểm thì 1 từ bổ nghĩa được đưa ra để lựa chọn điểm mong muốn
P1 = POINT / YLARGE, INTOF, C1, C2;
Hoặc P1 = POINT / XSMALL, INTOF, CI, C2;
P2 = POINT / XLARGE, INTOF, C1, C2;
Y
X C2
C1 P1
P2
Trang 25Y
I.1.10 Giao của 3 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 một điểm
I.2 Đ ỊNH NGHĨA ĐƯỜNG TH ẲNG
Đường thẳng được coi như là thực thể dài và được xử lý trong APT như là mặt phẳng thẳng đứng vuông góc với mặt XY Nói cách khác, nó mở rộng ngang theo cả hai hướng và thẳng góc với trục Z Trong điều kiện đó không yêu cầu toạ độ Z trong định nghĩa
I.2.1 Đườ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 đã định nghĩa trước hoặc giá trị toạ độ của chúng đã được xác định
Dạng câu lệnh:
L = Line / tên điểm, tên đường;
Trang 26X
L2 L1 P2
Định nghĩa đường thẳng L1, L2 như trong hình 2.1
L1 Qua 2 điểm đã định nghĩa trước P1, P2
L2 được định nghĩa bởi giá trị toạ độ của 2 điểm cho trước (5,4) và (2,1) L1 = LINE / P1, P2;
L2 = LINE / 5, 4, 2, 1;
Hình 2.1 Đường thẳng được định
nghĩa qua 2 điểm
I.2.2 Đường thẳng định nghĩa dựa trên trục X hoặc Y với khoảng Offset
Trục X và trục Y có thể được định nghĩa như những đường thẳng, một đường thẳng bất kỳ nào đó song song với một trong hai trục chính và giá trị Offset
Hình 2.2 đường thẳng được định nghĩa
dựa trên trục toạ độ với khoảng offset
Trang 27X
L2 L1
L1 chứa điểm P1 và tạo 1 góc 800 với trục X
L2 đi qua điểm P2 và tạo 1 góc 1200 với truv X
Dạng câu lệnh:
L1 = LINE / P1, ATANGL, 80, XAXIS;
Hoặc:
L1= LINE / P1, ATANGL, -10, YAXIS;
L2= LINE / P2, ATANGL, 120, XAXIS; ( Hình 2.3 đường thảng được Hoặc định nghĩa qua 1điểm và tạo với L2= LINE / P2, ATANGL, -30, YAXIS trục toạ độ 1 góc )
I.2.4 Đường thẳng định nghĩa qua một điểm và song song hoặc vuông góc với một đường thẳng khác
Một đường thẳng có thể được định nghĩa qua một điểm và song song hoặc vuông góc với một đường thẳng cho trước
Dạng câu lệnh:
LINE / Tên điểm PARLEL , Line name (tên đường thẳng)
PERPTO
Trang 28X
L1
L2 L3
Hình 2.4 : Đường thẳng được định nghĩa đi qua một điểm
và song song hoặc vuông góc với một đường thẳng khác
I.2.5 Đường thẳng được định nghĩa bởi chiều nghiêng hoặc góc tạo bởi trục chính và đoạn chắn trên trục
Trong toán học, chiếu nghiêng chính là tang của góc mà đường thẳng hợp với trục toạ độ Còn đoạn chắn là khoảng cách đo từ gốc toạ độ đến giao điểm của đường thẳng với trục X hoặc trục Y Vậy một đường thẳng có thể được định nghĩa bởi chiều nghiêng hoặc góc tạo với trục toạ độ và đoạn chắn
Dạng câu lệnh:
SLPE, giatriradian XAXLX
LINE / , INTERC, , giá trị đoạn chắn; ATANGL, giatrigocdo YAXLX
Ví dụ 2.5: Định nghĩa hai đường thẳng L1, L2 (hình 2.5) L1 tạo một góc 450với trục X và đoạn chắn trên trục Y là -3 L2 tạo một góc 1500 với trục X và đoạn chắn trên trục Y là 7
Trang 29Hình 2.5 Đường thẳng được định nghĩa bởi chiều nghiêng hoặc góc tạo với
trục chính một đoạn chắn trên trục Dạng câu lệnh:
L1 = LINE/ ATANGL, 45 INTERC, XAXIS, -3;
Hoặc:
L1 = LINE, ATANGL, 45, INTERC, YAXIS, 3;
Hoặc:
L1 = LINE / SLOPE, 1, INTERC, XAXIS, -3;
L2 = LINE / ATANGL, 150, INTERC, YAXIS, 7;
Hoặc:
L2 = LINE / SLOPE, -0.577, INTERC, XAXIS, 12.12;
I.2.6 Đường thẳng được định nghĩa đi qua 1 điểm và hợp một góc với đường thẳng cho trước
Đường thẳng có thể được định nghĩa qua 1 điểm và tạo một góc với đường thẳng cho trước Theo hướng từ đường thẳng cho trước tới đường thẳng định nghĩa thì một góc gọi là dương nếu ngược chiều kim đồng hồ và một góc là
âm nếu cùng chiều kim đồng hồ
Dạng câu lệnh:
Trang 30X
L1 L2
45°
60°
(2,3)
P1 L3
Hình 2.6: Đường thẳng định nghĩa
đi qua 1 điểm và hợp 1 góc với
đường thẳng cho trước
Đường thẳng đĩnh nghĩa là đường song song với một đường thẳng cho trước
và cách nó một khoảng theo phương pháp tuyến Hướng Offset được xác định bởi một trong 4 từ bổ nghĩa sau: X LARGE, X SMALL, Y LARGE, Y
Trang 31X
L1 L2
L3
2.0 1.5
SMALL Từ bổ nghĩa được lựa chọn dựa trên quan hệ giữa các giá trị đoạn đoạn chắn của đường thẳng định nghĩa liên hệ với đường thẳng cho trước Dạng câu lệnh:
Định nghĩa hai đường thẳng L2, L3 biết rằng chúng song song với L1
(Hình 2.7) L2 được offset theo hướng chỉ định với khoảng cách 1.5 và L3 offset theo hướng đối diện với khoảng cách offset là 2
Dạng câu lệnh:
L2 = LINE / PARLEL, L1, X SMALL, 1.5;
Hoặc:
L2 = LINE / PARLEL, L1, Y LARGE, 1.5;
L3 = LINE / PARLEL, L1, X LARGE, 2.0;
Hoặc:
L3= LINE / PARLEL, L1, Y SMALL, 2.0;
(Hình 2.7: Đường thẳng được định nghĩa
bởi đường song song và khoảng offset)
I.2.8 Đường thẳng định nghĩa đi qua 1 điểm và tiếp tuyến với một đường tròn
Đường thẳng có thể định như là một tiếp tuyến của một đường tròn xác định
và đi qua một điểm cho trước
Trang 32Khi có thể có hai tiếp điểm thì một từ bổ nghĩa: LEFT hoặc RIGHT phải được sử dụng để lựa chọn xem mặt nào của đường tròn mà đường thẳng mong muốn tiếp xúc với nó Từ bổ nghĩa trực tiếp được lựa chọn theo hướng quan sát dọc theo đường thẳng từ điểm cho trước đến tâm của đường tròn Từ bổ nghĩa LEFT được chọn nếu đường thẳng mong muốn ở bên trái đường quan sát và từ bổ nghĩa RIGHT được sử dụng khi đường thẳng mong muốn ở bên phải đường quan sát
Dạng câu lệnh :
Tên điểm RIGHT
LINE / , ,TANTO, tên ký hiệu đường tròn; toạ độ x, y LEFT
L1 = LINE / P1, LEPT, TANTO, C1;
L2 = LINE / P1, RIGHT, TANTO, C1;
L3 = LINE / P2, LEPT, TANTO, C1;
L4 = LINE / P2, RIGHT, TANTO, C1;
Hình 2.8 Đường thẳng được định nghĩa
đi qua một điểm và tiếp tuyến với một đường tròn
I.2.9 Đường thẳng định nghĩa là tiếp tuyến của một đường tròn và hợp với trục X một góc
Trang 33X C1
L2
L1
3 0°
3 0°
Một đường thẳng định nghĩa có thể là tiếp tuyến của một đường tròn và tạo với trục X một góc Khi mà có thể có hai đường thẳng được định nghĩa, thì một từ bổ nghĩa phải được sử dụng để lựa chọn đường thẳng mong muốn Dạng câu lệnh:
L1 = LINE / Y SMALL, TANTO, C1, ATANGL, 300;
L2 = LINE / X SMALL, TANTO, C1, ATANGL, 300;
Hoặc:
L2 = LINE / Y LARGE, TANTO, C1, ATANGL, 300;
Trang 34Một đường thẳng có thể được định nghĩa như là tiếp tuyến của đường tròn
và hợp vói đường thẳng cho trước 1 góc xác định Từ đường thẳng cho trước tới đường thẳng được định nghĩa, góc có hướng ngược chiều kim đồng hồ là hướng dương Như vậy một từ bổ nghĩa phải được đưa ra để lựa chọn đường thẳng mong muốn
Dạng câu lệnh:
XLARGE LINE / ATANGL, giá trị góc, tên đường thẳng, TANTO, tên đường tròn, XSMALL
YLARGE YSMALL
Ví dụ 2.10:
Hai đường thẳng L2 và L3 được đĩnh nghĩa như là tiếp tuyến của đường tròn C1 và hợp với đường L1 1 góc 550 ( hình 2.10)
Hình 2.10: Đường thẳng được định
nghĩa là tiếp tuyến của đường tròn
và hợp với đường thẳng cho trước
một góc xác định
Dạng câu lệnh:
L2 = LINE / ATANGL, 55, TANTO, C1, X SMALL;
hoặc:
Trang 35X C1
C2
L1 L3
L4 L2
L2 = LINE / ATANGL, 55, L1, TANTO, C1, Y SMALL;
L3 = LINE / ATANGL, 55, L1, TANTO, C1, X LARGE;
Hoặc:
L3 = LINE / ATANGL, 55, L1, TANTO, C1, Y LARGE;
I.2.11 Đường thẳng định nghĩa là tiếp tuyến của 2 đường tròn
Một đường thẳng có thể được định nghĩa như là tiếp tuyến của 2 đường tròn Với hai đường tròn thì có thể có tới 4 đường thẳng là tiếp tuyến Như vậy phải
có từ bổ nghĩa để lựa chọn đường thẳng mong muốn
Ta sử dụng 2 RIGHT hoặc LEFT tuỳ chọn vào mặt nào của đường tròn đường thẳng tiếp xúc, khi quan sát từ tâm đường tròn thứ nhất đến tâm đường tròn thứ 2
Trang 36L2 = LINE / RIGHT, TANTO, C1, LEFT, TANTO, C2;
Hoặc:
L2 = LINE / RIGHT, TANTO, C2, LEFT, TANO, C1;
L3 = LINE/ RIGHT, TANTO, C1, RIGHT, TANTO, C1;
Hoặc:
L3 = LINE/ LEFT, TANTO, C2, LEFT, TANTO, C1;
L4 = LINE / LEFT, TANTO, C1, LEFT, TANTO, C2;
Hoặc:
L4 = LINE / RIGHT, TANTO, C2, RIGHT, TANTO, C1;
I.3 ĐỊNH NGHĨA ĐƯỜNG TRÒN
Trong toán học đường tròn được định nghĩa là quỹ tích của các điểm chuyển động trên cùng một mặt phẳng và duy trì khoảng cách không đổi tới một điểm
cố định
Trong ngôn ngữ lập trình APT, đường tròn được xử lý như mặt trụ vuông góc với mặt phẳng XY kéo dài vô tận theo phương Z Có 12 dạng được sử dụng để định nghĩa đường tròn
I.3.1 Đường tròn được định nghĩa bởi vị trí tâm và bán kính
Một đường có thể được định nghĩabởi vị trí tâm của nó tại điểm cho trước
và giá trị bán kính xác định hoặc tọa độ tâm giá trị bán kính Do đó có 2 dạng định nghĩa đường tròn, tùy thuộc vào cách định nghĩa điểm tâm
Trang 37C2 = CIRCLE / CENTER, P1, RADIUS, 3;
I.3.2 Đường tròn được định nghĩa bởi điểm tâm và một điểm trên chu vi của nó
Một đường tròn có thể được định nghĩa bởi tâm của nó là điểm đã định nghĩa và điểm thứ 2 nằm trên chu vi cũng đã được định nghĩa trước
Trang 38Y
P1
P2 P3
P4
C1 C2
Đường tròn C1 có tâm là P1 và điểm P2 nằm trên đường tròn Đường tròn thứ 2 có tâm là P3 và đi qua điểm P4
Dạng câu lệnh
C1= CIRCLE / CENTER, P1, P2;
C2 = CIRCLE / CENTER, P3, P4;
Hình 3.2 Đường tròn được định nghĩa
bởi điểm tâm và một điểm trên chu vi
I.3.3 Đường tròn được định nghĩa bởi 3 điểm trên chu vi của nó
Qua 3 điểm ph ân biệt không thẳng hàng ta định nghĩa được một đường
tròn duy nhất Trong ngôn ngữ APT điểm 3 điểm này có thể được nhập vào liên tục:
Trang 39C2
P1 P2
R5
R5
I.3.4 Đường tròn đựơc định nghĩa bởi 2 điểm trên chu vi và bán kính xác định
với hai điểm xác định trên chu vi và giá trị bán kính cho trước có thể định
nghĩa được hai đường tròn Như vậy một từ bổ nghĩa trực tiếp sẽ được sử dụng để lựa chọn đường tròn mong muốn Từ bổ nghĩa được lựa chọn trên cở
sở quan hệ giữa tọa độ x hoặc tọa độ y của 2 điểm tâm có thể
C1= CIRCLE/ Y SMALL, P1, P2, RADIUS, 5
C2= CIRCLE/ X SMALL, P1, P2, RADIUS, 5;
Hoặc:
C2= CIRCLE/ Y LARGE, P1, P2, RADIUS, 5;
(Hình 3.4 Đường tròn được định nghĩa bởi 2 điểm
Trên chu vi và bán kính xác định)
Trang 40I.3.5 Đường tròn được định nghĩa bởi điểm tâm và đường thẳng tiếp tuyến
Đường tròn có thể được định nghĩa duy nhất bởi điểm tâm của nó và đường thẳng tiếp tuyến Từ “phụ” TANTO được sử dụng để chỉ ra quan hệ tiếp tuyến giữa đường tròn định nghĩa và đường thẳng cho trước
C1= CIRCLE/ CENTER, P1, TANTO, L1;
C2= CIRCLE/ CENTER, P2, TANTO, L1;
Hình 3.5 Đường tròn được định nghĩa bởi
điểm tâmvà đường thẳng tiếp tuyến
I.3.6 Đường tròn được định nghĩa bởi điểm tâm và đường tròn tiếp xúc
Đường tròn có thể được định nghĩa bởi điểm tâm và đường tròn tiếp xúc với
nó Với cách này có thể có hai đường tròn được định nghĩa khi chúng tiếp xúc tại các mặt khác nhau của đường tròn cho trước Từ bổ nghĩa “SMALL” được
sử dụng khi đường tròn mong muốn nhỏ hơn đường tròn khác, có thể trong trường hợp này đường tròn cho trước nằm ngoài đường tròn đường tròn cần định nghĩa Từ bổ nghĩa “LARGE” được sử dụng cho đường tròn lớn, với đường tròn cho trước nằm bên trong đường tròn cần định nghĩa
Dạng câu lệnh: