Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 78 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
78
Dung lượng
2,85 MB
Nội dung
Đại Học Quốc Gia Tp Hồ Chí Minh TRƯỜNG ĐẠI HỌC BÁCH KHOA - NGUYỄN NHƠN HẢI STEP-NC, CÔNG CỤ PHẦN MỀM CHUYỂN ĐỔI STEP-NC TRONG MÃ NC-CODE Chuyên ngành : Công nghệ chế tạo máy LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng 07 năm 2009 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH Cán hướng dẫn khoa học:……………………………………………… (Ghi rõ họ tên, học hàm, học vị chữ ký) Cán chấm nhận xét 1:…………………………………………………… (Ghi rõ họ tên, học hàm, học vị chữ ký) Cán chấm nhận xét 2:…………………………………………………… (Ghi rõ họ tên, học hàm, học vị chữ ký) Luận văn thạc sĩ bảo vệ HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày………tháng…… năm……… ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA -oOo - CỘNG HOÀ XÃ HỘI CHỦ NGHIÃ VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc Tp HCM, ngày tháng năm NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Ngày, tháng, năm sinh : Giới tính : Nam / Nữ Nơi sinh : Chuyên ngành : Khoá (Năm trúng tuyển) : 1- TÊN ĐỀ TÀI: 2- NHIỆM VỤ LUẬN VĂN: 3- NGÀY GIAO NHIỆM VỤ : 4- NGÀY HOÀN THÀNH NHIỆM VỤ : 5- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN (Ghi đầy đủ học hàm, học vị ): Nội dung đề cương Luận văn thạc sĩ Hội Đồng Chuyên Ngành thông qua CÁN BỘ HƯỚNG DẪN (Họ tên chữ ký) CHỦ NHIỆM BỘ MÔN QUẢN LÝ CHUYÊN NGÀNH (Họ tên chữ ký) Lời cảm ơn Kết tốt đẹp nằm cuối đường đầy chông gai thử thách Muốn vượt qua đường đó, cần đến hỗ trợ, giúp đỡ nhiều người thật vậy, luận văn tốt nghiệp hoàn thành giúp sức nhiều người Trước tiên xin chân thành cảm ơn thầy Đặng Thiện Ngơn, người trực tiếp bảo tận tình, góp ý động viên tơi vượt qua khó khăn suốt thời gian thực luận văn Để thực luận văn xin cảm ơn đến quý thầy cô truyền đạt cho kiến thức suốt trình đào tạo Xin gửi lời cảm ơn đến hai em Thơ Tú hổ trợ tơi thực luận văn Ngồi khơng thể quên anh khoa khí – xây dựng trường trung học kỹ thuật & nghiệp vụ NAM SÀI GỊN tạo điều kiện thuận lợi cho tơi học tập thời gian vừa qua Xin cảm ơn đến tất bạn bè đồng nghiệp hổ trợ thực luận văn Cuối lời cảm ơn đến cha, mẹ, anh chị gia đình, người cung cấp động lực ý chí cho để hết đường chông gai thử thách Tóm tắt luận văn thạc sĩ Luận văn thạc sĩ gồm chương: Chương mở đầu nêu lên mục đích đề tài Để thực đề tài ta cần tìm hiểu STEP_NC nứng dụng giới Đó toàn nội dung chương tổng quan Từ chương ta thấy xu phát triển giới việc ứng dụng STEP-NC Tuy nhiên chuẩn ngôn ngữ chưa phát triển Việt Nam, nên hệ điều khiển theo chuẩn ISO 6983 hiểu ngơn ngữ cần phải có phần mềm chuyển đổi Để viết phần mềm ta cần phải nắm cấu trúc chương trình STEP-NC giải thuật chương trình Đó nội dung chương Tiếp theo chương 5: thực hiện đánh giá phần mềm thực phần kết thúc cho luận văn chương Chương đưa kết luận hướng phát triển đề tài MUÏC LUÏC Chương mở đầu Chương 1: Tổng quan 1.1 Đặt vấn đề 1.2.Giới thiệu STEP-NC: 1.3.Ứng dụng STEP-NC: 11 Chương 2: Mục tiêu đề tài 2.1 Nhược điểm NC-Code: 19 2.2.Ưu điểm STEP_NC: 20 2.3.Mục tiêu nghiên cứu: 22 Chương 3: STEP-NC 3.1 Nghiên cứu cấu trúc chương trình STEP-NC 23 3.2 Các thành phần chương trình STEP-NC 24 3.3 Các đặc trưng 29 3.4 Thư viện STEP-NC 34 Chương 4: Giải thuật công cụ phần mềm chuyển đổi 4.1 Công cụ phần mềm chuyển đổi 38 4.2.Những yêu cầu công cụ chuyển đổi 39 4.3.Các bước chuyển đổi 39 4.4 Giải thuật chung 40 4.3 Giải thuật đọc workingstep 44 Chương 5: Thực Kiểm nghiệm 5.1 Công cụ phần mềm thực 56 5.2 Kiểm nghiệm 58 5.3 Đánh giá 61 Chương 6: Kết luận hướng phát triển đề tài 6.1 Kết luận 62 6.2 Hướng phát triển 62 Tài liệu tham khảo 63 Chương mở đầu Ngày nay, với việc ứng dụng chuẩn ngôn ngữ STEP-NC nên suất sản xuất chất lượng sản phẩm tăng lên cách đáng kể Sự đời STEPNC kết nghiên cứu cộng đồng quốc tế nhằm thay cho chuẩn cũ ISO 6983 (NC Code) có nhiều giới hạn cho việc tăng suất chất lượng sản phẩm ISO 6983 phát triển từ đầu năm 1950 mà công nghệ thông tin chưa phát triển máy CNC làm việc cách độc lập khơng có liên kết nhà phân phối quốc gia với Vì chuẩn ngôn ngữ nhà phân phối có cách thể khác Hai hệ điều khiển CNC hai nhà phân phối khác ngồi lệnh chuẩn ln có số lệnh riêng ứng với điều khiển nên chương trình gia cơng có tính trao đổi hồn tồn, … Đó cản trở chuẩn ISO 6983 cho việc tăng suất chất lượng sản phẩm Vì STEP-NC đời để khắc phục nhược điểm Tuy nhiên việc ứng dụng chuẩn ngôn ngữ STEP-NC hạn chế nhiếu quốc gia giới Nó phát triển mạnh quốc gia phát triển Mỹ, Đức, Ý, Anh, Hàn Quốc, … Ở nước ta, hầu hết hệ điều khiển CNC theo chuẩn ISO 6983, muốn đọc chương trình gia cơng theo chuẩn STEP hệ điều khiển cần có cơng cụ phần mềm chuyển đổi Và mục đích đề tài Chương 1: Tổng quan 1.1 Đặt vấn đề: Một công ty A nhận hợp đồng gia cơng sản phẩm khí Các thơng số sản phẩm chương trình gia cơng chi tiết lưu trữ tập tin với khuôn dạng STEP-NC Nhưng vấn đề đặt hầu hết hệ điều khiển máy CNC công ty A không đọc tập tin với định dạng nêu Vì cơng ty có hai hướng giải là: • Nhập thiết bị (bộ điều khiển) để đọc tập tin có định dạng STEPNC • Xây dựng phần mềm công cụ chuyển đổi STEP-NC sang mã G-Code Luận văn vào cách giải thứ hai việc tìm hiểu STEP-NC mặt như: • Lịch sử phát triển STEP-NC • Ứng dụng STEP-NC 1.2 Giới thiệu STEP-NC Trong vài thập kỷ gần đây, số lượng hệ CNC tăng vọt lĩnh vực sản xuất Nhược điểm chung chúng chỗ, thông số công nghệ vận tốc cắt lượng chạy dao áp đặt người lập trình phụ thuộc vào kinh nghiệm, hiểu biết người lập trình Do q trình lập trình gia cơng gây sai sót định tính chủ quan lẫn kinh nghiệm người Cho đến nay, khối lượng sản phẩm khí phải qua gia cơng cắt gọt chiếm tỷ lệ cao phương pháp gia công kim loại Cắt gọt phương pháp hàng đầu khả đáp ứng độ xác kích thước, độ phức tạp hình dạng chất lượng bề mặt chi tiết gia cơng Đó lý khiến cơng nghệ tiên tiến, có trợ giúp máy tính (CAD/CAM-CNC) phát triển sớm mạnh mẽ lĩnh vực Nhờ tích hợp thành tựu kỹ thuật điều khiển máy tính mà hệ điều khiển CNC có nhiều tính vượt trội Tuy nhiên, chất điều khiển máy CNC điều khiển “tĩnh” với tham số hệ thống khơng đổi Biểu mặt công nghệ tốc độ cắt tốc độ chạy dao thiết đặt cố định lệnh chương trình NC trì có lệnh thiết đặt giá trị Trong cơng nghệ CAD/CAM-CNC, điều khiển CNC thông minh hiểu máy CNC thơng minh có chức như: • Dữ liệu chuyển động dao cắt: thay liệu chuyển động trục chuyển tới máy CNC, hệ CNC thơng minh có khả chuyển đổi quỹ đạo chạy dao tới chuyển động trục máy CNC • Thơng tin mức cao: đặc tính chi tiết, vật liệu, dao cắt, kích thước, dung sai gửi tới máy CNC • Thơng tin gửi cách sử dụng chuẩn liệu “STEP NC” AP 238 Trong năm 1970 với phát triển CNC phát triển nhanh chóng công nghệ CAD/CAM thập kỷ trước, tiến trình quan trọng thực sản xuất tự động chi tiết khí Tuy nhiên, ngơn ngữ lập trình sử dụng cơng nghiệp để điều khiển máy giữ giống với chuẩn ban đầu biết G M code (ISO 6983) dựa mô tả chuyển động dụng cụ cắt lệnh tắt/mở Một tiêu chuẩn quốc tế ngày nay, tên ISO 14649 biết đến STEP-NC phát triển để cung cấp giao diện cách mạng cho tích hợp CAD/CAM sử dụng loại ngôn ngữ phát triển từ chuẩn STEP (ISO 10303) Không giống G M code lập trình cho chuyển động trục máy cơng tắc hành trình, STEP-NC cịn mơ hình hóa liệu hồn chỉnh mà liên kết đối tượng gia công (dữ liệu thiết kế CAD) với giải pháp cơng nghệ (dữ liệu qui trình gia cơng CAM yêu cầu) theo hướng đối tượng Và kết chương trình STEP-NC giống với hoạch định trình chi tiết thủ tục q trình gia cơng Trong chương trình vậy, liệu sản xuất cho chi tiết tổ chức dự án hình dạng hình học gia cơng, bước gia cơng (ngun cơng cụ thể) cần thiết cho đặc tính, yêu cầu công nghệ thứ tự công việc (mục đích để cung cấp thơng tin cho máy CNC) Ngôn ngữ cấp cao hướng đối tượng làm cho chương trình gia cơng dễ dàng sử dụng mà không cần phải thay đổi nhiều nhiều máy CNC Quan trọng nữa, xây dựng phản hồi thông tin hai chiều CAD/CAM hệ thống CNC Mục tiêu STEP-NC bao hàm hết toàn phạm vi sản xuất trực tuyến Một mơ hình liệu STEP-NC phát triển để thay cho mơ hình tiêu chuẩn mã G&M cũ cho trình tiện, phay, tia lửa điện (EDM) Một mơ hình liệu thiết lập, phát triển bổ sung để hệ thống CAD/CAM/CNC tương thích với mơ hình liệu kiểu ý 1.2.1 Nội dung STEP-NC mơ hình chuyển đổi liệu hệ thống CAD/CAM máy CNC Mã G-code thể di chuyển trục, tốc độ quay trục chính, chiều sâu ăn dao, vị trí dụng cụ ổ dao, hệ thống làm mát Với thông tin khó khăn cho người vận hành máy nắm thực ngun cơng nào, điều kiện máy, dao gia công, muốn nắm điều người vận hành phải đọc hết chương trình gia cơng Chính điều điều khiển thực thi cách thơng minh dừng chương trình trường họp khẩn cấp với thơng tin giới hạn Ngược lại STEP-NC bao gồm thông tin chức yêu cầu Ví dụ bước làm việc, đặc tính gia cơng, chu trình gia cơng, dụng cụ gia cơng, quỹ đạo gia cơng, chức máy phơi STEP-NC cịn có nghĩa bao gồm nhiều thơng tin thiết lập mơ hình hình học, q trình lập kế hoạch 58 Hình 5.2: Giao diện phần mềm lúc mở tập tin STEP-NC Hình 5.3: Giao diện phần mềm lúc thực việc chuyển đổi 59 5.2 Kiểm nghiệm: Dữ liệu STEP-NC ISO-10303-21; HEADER; FILE_DESCRIPTION(('ISO 14649-11 EXAMPLE 1', 'SIMPLE PRORGRAM WITH A PLANAR_FACE, A POCKET, AND A ROUND_HOLE'), '1'); …… ENDSEC; Khoan lỗ DATA; #1= PROJECT('EXECUTE EXAMPLE1',#2,(#4),$,$,$); #2= WORKPLAN('MAIN WORKPLAN',(#11,#12,#13,#14),$,#8,$); `………… #12= MACHINING_WORKINGSTEP('WS DRILL HOLE1_2',#62,#17,#21,$); #13= MACHINING_WORKINGSTEP('WS ROUGH POCKET1',#62,#18,#22,$); … #17= ROUND_HOLE('HOLE1 D=22MM',#4,(#20,#21),#81,#64,#58,$,#26); #18= CLOSED_POCKET('POCKET1',#4,(#22,#23),#84,#65,(),$,#27,#35,#37,#28); … #21= DRILLING($,$,'DRILL HOLE1_2',10.000,$,#47,#48,#41,$,$,$,$,$,#49); #22= BOTTOM_AND_SIDE_ROUGH_MILLING($,$,'ROUGH POCKET1',15.000,$,#39,#50,#41,$,$,$,#51,2.500,5.000,1.000,0.500); …… #28= GENERAL_CLOSED_PROFILE($,#59); …… #47= MILLING_CUTTING_TOOL('BORING_TOOL_22MM',#33,(#127),90.000,$,$); …… #59= POLYLINE('CONTOUR OF POCKET1',(#121,#122,#123,#124,#121)); …… #64= ELEMENTARY_SURFACE('DEPTH SURFACE FOR ROUND HOLE1',#83); #65= ELEMENTARY_SURFACE('DEPTH SURFACE FOR POCKET1',#94); …… #81= AXIS2_PLACEMENT_3D('HOLE1',#110,#111,$); #83= AXIS2_PLACEMENT_3D('HOLE1',#112,#113,#114); #84= AXIS2_PLACEMENT_3D('POCKET1',#115,#116,#117); #94= AXIS2_PLACEMENT_3D('POCKET1',#118,#119,#120); ……… // Địa xác định gốc chiều sâu lỗ #110= CARTESIAN_POINT('HOLE1: LOCATION ',(20.000,60.000,0.000)); #111= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #112= CARTESIAN_POINT('HOLE1: DEPTH ',(0.000,0.000,-30.000)); #113= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #114= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); // Địa xác định gốc chiều sâu hốc hình chữ nhật #115= CARTESIAN_POINT('POCKET1: LOCATION ',(45.000,110.000,0.000)); #116= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #117= DIRECTION(' REF_DIRECTION',(-1.000,0.000,0.000)); #118= CARTESIAN_POINT('POCKET1: DEPTH ',(0.000,0.000,-30.000)); #119= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #120= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #121= CARTESIAN_POINT('P1',(0.000,0.000,0.000)); #122= CARTESIAN_POINT('P2',(0.000,80.000,0.000)); #123= CARTESIAN_POINT('P3',(-50.000,80.000,0.000)); #124= CARTESIAN_POINT('P4',(-50.000,0.000,0.000)); Gia cơng hốc hình chữ nhật 60 Sau thực chuyển đổi ta mã lệnh NC-code sau: % O2000 … … N0016 G54 N0018 G90 N0019 G97 … //Khoan lỗ … N0032 G81 z-30 R3 F30 N0034 G80 61 … //Gia công hốc chữ nhật N0064 G90 N0068 T3 M6 N0070 S1000 M3 … N0090 G0 X70 Y70 N0092 G1 Z-10 F20 N0094 G91 G42 G1 Y-8 N0096 G1 X-5 N0098 G1 Y16 N0100 G1 X10 … Dùng phần mềm cutviewer mơ ta có kết sau: 62 5.3 Đánh giá: 5.3.1.Giải thuật chương trình: Ưu điểm: • Giải thuật phần mềm dễ dàng nhận diện đặc trưng chuyển đổi đặc trưng sang mã NC-code • Cho phép ta bổ sung, loại bỏ đặc trưng chương trình STEPNC dạng mã ASCII • Hiệu chỉnh thơng số cơng nghệ Nhược điểm: • Chỉ nhận dạng đặc trưng thơng qua từ khóa “machining workingstep” • Chỉ chuyển đổi đặc trưng tương ứng thư viện NC-code Nếu khơng có mã lệnh NC-code tương ứng phần mềm bỏ qua đặc trưng gia cơng • Do sử dụng lệnh NC-code chuẩn nên việc chuyển đổ giới hạn chi tiết 2,5D phần mềm áp dụng cho trình phay 5.3.2.Giao diện phần mềm: Ưu điểm: thể đầy đủ chức phần mềm chuyển đổi: • Mở tập tin chuyển đổi • Thể tập tin chuyển đổi hình • Hiệu chỉnh tập tin chuyển đổi Nhược điểm: Chỉ thể tập tin chương trình dạng mã ASCII, chưa tích hợp hình vẽ chi tiết gia cơng 63 Chương 6: Kết luận hướng phát triển đề tài 6.1 Kết luận: Đề tài thực đạt mục tiêu đặt ra: • Nghiên cứu cấu trúc chương trình STEP-NC • Nghiên cứu cấu trúc mã lệnh NC-code • Đưa giải thuật chuyển đổi chương trình STEP-NC qua mã NCcode • Viết phần mềm chuyển đổi chương trình STEP-NC qua mã NC-code Tuy nhiên việc thực đề tài giới hạn sau đề suất để đề tài phát triển 6.2 Hướng phát triển đề tài: • Xây dựng thêm đặc trưng gia công thư viện NC-code • Mở rộng việc chuyển đổi cho hệ điểu khiển khác để tăng khả chuyển đổi phần mềm • Mở rộng phần mềm cho q trình tiện • Tích họp với phần mềm CAM để chuyển đổi bề mặt phức tạp 64 Tài liệu tham khảo [1] Dave Loffredo STEP-NC Writer Reference Guide URL: http:\\www.steptools.com [2] ISO 14649-10:2003 Industrialautomation systems and integration Physicaldevice control - Data modelfor computerized umerical controllers - Part 1: Overview and fundamental rinciples, ISO TC 184/SC 1, March 3, 2003 [3] ISO 14649-11:2003 Industrialautomation systems and integration—Physicaldevice control— Data modelfor computerized numerical controllers—Part 11: Process data for milling, ISO TC184/SC 1, May 23, 2003 [4] ISO/IS 10303-238 Industrial automation systems and integration — Product data representation and exchange — Part 238: Application protocol: Application interpreted model for computerized numerical controllers [5] Martin Hardwick, David Loffredo STEP-NC SOLUTION URL: http:\\www.steptools.com [6] Mueller, P NC Controllers, STEP-NC + Status of Standardisation ISO 14649, EMO Hannover, September 2001 [7] Martin Hardwick, ISO STEP-Manufacturing, RPI & STEP Tools, Inc [8] STEP Tools, Inc Introduction to STEP-NC URL: http:\\www.steptools.com PHỤ LỤC Ví dụ 1: Dữ liệu STEP-NC ISO-10303-21; HEADER; FILE_DESCRIPTION(('ISO 14649-11 EXAMPLE 1', 'SIMPLE PRORGRAM WITH A PLANAR_FACE, A POCKET, AND A ROUND_HOLE'), '1'); FILE_NAME('EXAMPLE1.STP', '2002-02-02', ('YONG TAK HYUN','JOCHEN WOLF'), ('WZL, RWTH-AACHEN'), $, 'ISO 14649', $); FILE_SCHEMA(('MACHINING_SCHEMA','MILLING_SCHEMA')); ENDSEC; DATA; #1= PROJECT('EXECUTE EXAMPLE1',#2,(#4),$,$,$); #2= WORKPLAN('MAIN WORKPLAN',(#11,#12,#13,#14),$,#8,$); #4= WORKPIECE('SIMPLE WORKPIECE',#6,0.010,$,$,$,(#66,#67,#68,#69)); #6= MATERIAL('ST-50','STEEL',(#7)); #7= PROPERTY_PARAMETER('E=200000N/M2'); #8= SETUP('SETUP1',#71,#62,(#9)); #9= WORKPIECE_SETUP(#4,#74,$,$,()); #11= MACHINING_WORKINGSTEP('WS DRILL HOLE1',#62,#17,#20,$); #12= MACHINING_WORKINGSTEP('WS DRILL HOLE1_2',#62,#17,#21,$); #13= MACHINING_WORKINGSTEP('WS ROUGH POCKET1',#62,#18,#22,$); #14= MACHINING_WORKINGSTEP('WS FINISH POCKET1',#62,#18,#23,$); #16= PLANAR_FACE('PLANAR FACE1',#4,(#19),#77,#63,#24,#25,$,()); #17= ROUND_HOLE('HOLE1 D=22MM',#4,(#20,#21),#81,#64,#58,$,#26); #18= CLOSED_POCKET('POCKET1',#4,(#22,#23),#84,#65,(),$,#27,#35,#37,#28); #20= DRILLING($,$,'DRILL HOLE1',10.000,$,#44,#45,#41,$,$,$,$,$,#46); #21= DRILLING($,$,'DRILL HOLE1_2',10.000,$,#47,#48,#41,$,$,$,$,$,#49); #22= BOTTOM_AND_SIDE_ROUGH_MILLING($,$,'ROUGH Mã NC-code: % O2000 N0010 G91 G28 Z0 N0012 G91 G28 X0 Y0 N0014 G54 G98 G40 G80 G49 N0016 G54 N0018 G90 N0019 G97 N0020 G90 //khoan lỗ(DRILLHOLE1) N0022 T1 M6 N0024 S2000 M3 N0026 G0 G43 Z50 H1 N0028 G0 X20 Y60 N0030 G0 Z5 N0032 G81 z-30 R3 F30 N0034 G80 N0036 G91 G28 X0 Y0 N0038 G0 Z100 N0040 G90 //khoan lỗ(DRILLHOLE1) N0042 T2 M6 N0044 S2000 M3 N0046 G0 G43 Z50 H2 N0048 G0 X20 Y60 N0050 G0 Z5 N0052 G81 z-30 R3 F30 N0054 G80 N0056 G91 G28 X0 Y0 N0058 G0 Z100 //Hốc chữ nhật(POCKET) N0062 G54 N0064 G90 N0066 G97 POCKET1',15.000,$,#39,#50,#41 ,$,$,$,#51,2.500,5.000,1.000,0.500); #23= BOTTOM_AND_SIDE_FINISH_MILLING($,$,'FINISH POCKET1',15.000,$,#39,#52, #41,$,$,$,#53,2.000,10.000,$,$); #24= LINEAR_PATH($,#54,#55); #25= LINEAR_PROFILE($,#57); #26= THROUGH_BOTTOM_CONDITION(); #27= PLANAR_POCKET_BOTTOM_CONDITION(); #28= GENERAL_CLOSED_PROFILE($,#59); #29= TAPERED_ENDMILL(#30,4,$,.F.,$,$); #30= TOOL_DIMENSION(20.000,$,$,$,1.500,$,$); #31= TWIST_DRILL(#32,2,.RIGHT.,.F.,0.840); #32= TOOL_DIMENSION(20.000,31.000,0.100,45.000,2.000,5.000,8.000); #33= TWIST_DRILL(#34,2,.RIGHT.,.F.,0.840); #34= TOOL_DIMENSION(22.000,$,$,$,$,$,$); #35= TOLERANCED_LENGTH_MEASURE(1.000,#36); #36= PLUS_MINUS_VALUE(0.100,0.100,3); #37= TOLERANCED_LENGTH_MEASURE(10.000,#38); #38= PLUS_MINUS_VALUE(0.100,0.100,3); #39= MILLING_CUTTING_TOOL('MILL 20MM',#29,(#125),80.000,$,$); #41= MILLING_MACHINE_FUNCTIONS(.T.,$,$,.F.,$,(),.T.,$,$,()); #43= DIRECTION('STRATEGY PLANAR FACE1: 1.DIRECTION',(0.000,1.000,0.000)); #44= MILLING_CUTTING_TOOL('SPIRAL_DRILL_20MM',#31,(#126),90.000,$,$); #45= MILLING_TECHNOLOGY(0.030,.TCP.,$,16.000,$,.F.,.F.,.F.,$); #46= DRILLING_TYPE_STRATEGY(75.000,50.000,2.000,50.000,75.000,8.000); #47= MILLING_CUTTING_TOOL('BORING_TOOL_22MM',#33,(#127),90.000,$,$); #48= MILLING_TECHNOLOGY(0.030,.TCP.,$,18.000,$,.F.,.F.,.F.,$); #49= DRILLING_TYPE_STRATEGY($,$,$,$,$,$); #50= MILLING_TECHNOLOGY($,.TCP.,$,20.000,$,.F.,.F.,.F.,$); #51= CONTOUR_BIDIRECTIONAL($,$,$,$,$,$); #52= MILLING_TECHNOLOGY($,.TCP.,$,20.000,$,.F.,.F.,.F.,$); #53= CONTOUR_PARALLEL(5.000,.T.,.CW.,.CONVENTIONAL.); #54= TOLERANCED_LENGTH_MEASURE(120.000,#56); #55= DIRECTION('COURSE OF TRAVEL DIRECTION',(0.000,1.000,0.000)); #56= PLUS_MINUS_VALUE(0.300,0.300,3); #57= NUMERIC_PARAMETER('PROFILE LENGTH',100.000,'MM'); #58= TOLERANCED_LENGTH_MEASURE(22.000,#56); #59= POLYLINE('CONTOUR OF POCKET1',(#121,#122,#123,#124,#121)); #62= ELEMENTARY_SURFACE('SECURITY PLANE',#73); #63= ELEMENTARY_SURFACE('PLANAR FACE1-DEPTH PLANE',#80); #64= ELEMENTARY_SURFACE('DEPTH SURFACE FOR ROUND HOLE1',#83); #65= ELEMENTARY_SURFACE('DEPTH SURFACE FOR POCKET1',#94); #66= CARTESIAN_POINT('CLAMPING_POSITION1',(0.000,20.000,25.000)); #67= CARTESIAN_POINT('CLAMPING_POSITION2',(100.000,20.000,25.000)); #68= CARTESIAN_POINT('CLAMPING_POSITION3',(0.000,100.000,25.000)); #69= CARTESIAN_POINT('CLAMPING_POSITION4',(100.000,100.000,25.000)); #71= AXIS2_PLACEMENT_3D('SETUP1',#95,#96,#97); #73= AXIS2_PLACEMENT_3D('PLANE1',#98,#99,#100); #74= AXIS2_PLACEMENT_3D('WORKPIECE',#101,#102,#103); #77= AXIS2_PLACEMENT_3D('PLANAR FACE1',#104,#105,#106); #80= AXIS2_PLACEMENT_3D('PLANAR FACE1',#107,#108,#109); #81= AXIS2_PLACEMENT_3D('HOLE1',#110,#111,$); #83= AXIS2_PLACEMENT_3D('HOLE1',#112,#113,#114); #84= AXIS2_PLACEMENT_3D('POCKET1',#115,#116,#117); #94= AXIS2_PLACEMENT_3D('POCKET1',#118,#119,#120); #95= CARTESIAN_POINT('SETUP1: LOCATION ',(150.000,90.000,40.000)); #96= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #97= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #98= CARTESIAN_POINT('SECPLANE1: LOCATION ',(0.000,0.000,30.000)); #99= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #100= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #101= CARTESIAN_POINT('WORKPIECE1:LOCATION ',(0.000,0.000,0.000)); #102= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #103= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #104= CARTESIAN_POINT('PLANAR FACE1:LOCATION ',(0.000,0.000,5.000)); #105= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #106= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #107= CARTESIAN_POINT('PLANAR FACE1:DEPTH ',(0.000,0.000,5.000)); #108= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #109= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #110= CARTESIAN_POINT('HOLE1: LOCATION N0068 N0070 N0072 N0074 N0076 N0078 N0080 N0082 N0084 N0086 N0088 N0090 N0092 N0094 N0096 N0098 N0100 N0102 N0104 N0106 N0108 N0110 N0112 N0114 N0116 N0118 N0120 N0122 N0124 N0126 N0128 N0130 N0132 N0134 N0136 N0138 N0140 N0142 N0144 N0146 N0148 N0150 N0278 N0280 N0282 N0284 N0286 N0288 N0290 N0292 N0294 N0296 N0298 N0300 N0302 N0304 N0306 N0308 N0310 N0312 N0314 N0316 N0318 N0320 N0322 N0324 N0326 N0328 N0330 N0332 N0334 N0336 N0338 N0340 T3 M6 S1000 M3 G0 G43 Z50 H3 G0 X70 Y70 G0 Z5 G81 Z-30 F200 G80 G28 X0 Y0 T4 M6 S1000 M3 G0 G43 Z50 H4 G0 X70 Y70 G1 Z-15 F200 G91 G42 G1 Y-8 G1 X-5 G1 Y16 G1 X10 G1 Y-24 G1 X-15 G1 Y32 G1 X20 G1 Y-40 G1 X-25 G1 Y48 G1 X30 G1 Y-56 G1 X-35 G1 Y64 G1 X40 G1 Y-72 G1 X-45 G1 Y78 G1 X48 G1 Y-78 G1 X-48 G1 Y78 G90 G0 X70 Y70 G40 G0 Z100 G0 X150 Y150 G0 X70 Y70 G1 Z-30 F200 G91 G42 G1 Y-8 G1 X-5 G1 Y16 G1 X10 G1 Y-24 G1 X-15 G1 Y32 G1 X20 G1 Y-40 G1 X-25 G1 Y48 G1 X30 G1 Y-56 G1 X-35 G1 Y64 G1 X40 G1 Y-72 G1 X-45 G1 Y78 G1 X48 G1 Y-80 G1 X-50 G1 Y80 G1 X50 G1 Y-80 G90 G0 X70 Y70 G40 G0 Z100 G0 X150 Y150 M5 ',(20.000,60.000,0.000)); #111= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #112= CARTESIAN_POINT('HOLE1: DEPTH ',(0.000,0.000,-30.000)); #113= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #114= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #115= CARTESIAN_POINT('POCKET1: LOCATION ',(45.000,110.000,0.000)); #116= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #117= DIRECTION(' REF_DIRECTION',(-1.000,0.000,0.000)); #118= CARTESIAN_POINT('POCKET1: DEPTH ',(0.000,0.000,-30.000)); #119= DIRECTION(' AXIS ',(0.000,0.000,1.000)); #120= DIRECTION(' REF_DIRECTION',(1.000,0.000,0.000)); #121= CARTESIAN_POINT('P1',(0.000,0.000,0.000)); #122= CARTESIAN_POINT('P2',(0.000,80.000,0.000)); #123= CARTESIAN_POINT('P3',(-50.000,80.000,0.000)); #124= CARTESIAN_POINT('P4',(-50.000,0.000,0.000)); #125= CUTTING_COMPONENT(80.000,$,$,$,$); #126= CUTTING_COMPONENT(90.000,$,$,$,$); #127= CUTTING_COMPONENT(100.000,$,$,$,$); ENDSEC; Ví dụ 2: ISO-10303-21; HEADER; FILE_DESCRIPTION(($),'2;1'); FILE_NAME( /* FILENAME */ 'E:\Eigene Dateien\Beleg STEP-NC 2002\Beispiele\Beispiel2_01.stp', /* CREATION DATE */ '2002-11-22 T15:19:55', /* AUTHOR */ ('Steffen Schreiber'), /* ORGANIZATION */ ('OpenSource'), /* PROCESSOR VERSION */ ' 2.4.0-pre4 (compiled 17:20 2002/02/01)', /* PROCESSOR */ 'Express Engine', /* AUTHORIZATION */ 'Steffen Authorizer'); FILE_SCHEMA(('MACHINING_SCHEMA')); ENDSEC; DATA; #1=PROJECT('EXECUTE EXAMPLE1',#2,(#4),$,$,$); #2=WORKPLAN('MAIN WORKPLAN',(#182,#183,#184,#185,#10,#11,#12,#180,#181,#13,#14,#1182),$,#8,$); #4=WORKPIECE('SIMPLE WORKPIECE',#6,0.01,$,$,$,(#66,#67,#68,#69)); #6=MATERIAL('ST-50','STEEL',(#7)); #7=PROPERTY_PARAMETER('E=200000N/M2'); #8=SETUP('SETUP1',#71,#62,(#9)); #9=WORKPIECE_SETUP(#4,#74,$,$,()); #10=MACHINING_WORKINGSTEP('WS FINISH PLANAR FACE1',#62,#16,#19,$); #11=MACHINING_WORKINGSTEP('WS DRILL HOLE1',#62,#17,#20,$); #12=MACHINING_WORKINGSTEP('WS DRILL HOLE2',#62,#150,#20,$); #13=MACHINING_WORKINGSTEP('WS POCKET1',#62,#18,#23,$); #14=MACHINING_WORKINGSTEP('WS POCKET2',#62,#210,#23,$); #16=PLANAR_FACE('PLANAR FACE1',#4,(#19),#77,#63,#24,#25,$,()); #17=ROUND_HOLE('HOLE1 D=9MM',#4,(#20),#81,#64,#58,$,#26); #18=CLOSED_POCKET('POCKET1',#4,(#23),#84,#65,(),$,#27,#35,#37,#28); #19=PLANE_FINISH_MILLING($,$,'FINISH PLANAR FACE1',10.,$,#39,#40,#41,$,#60,#61,#42,2.5,$); #20=DRILLING($,$,'DRILL HOLES1-4',10.,$,#44,#45,#41,$,$,$,$,$,#46); #22=BOTTOM_AND_SIDE_ROUGH_MILLING($,$,'ROUGH POCKET1',15.,$,#39,#50,#41,$,$,$,#51,2.5,5.,1.,0.5); #23=BOTTOM_AND_SIDE_FINISH_MILLING($,$,'POCKET1+2',15.,$,#39,#52,#41,$, $,$,#53,2.,10.,$,$); #24=LINEAR_PATH($,#54,#55); #25=LINEAR_PROFILE($,#57); #26=THROUGH_BOTTOM_CONDITION(); #27=PLANAR_POCKET_BOTTOM_CONDITION(); #28=GENERAL_CLOSED_PROFILE($,#59); #29=TAPERED_ENDMILL(#30,4,$,.F.,$,$); #30=TOOL_DIMENSION(20.,$,$,$,1.5,$,$); #31=TWIST_DRILL(#32,2,.RIGHT.,.F.,0.84); #32=TOOL_DIMENSION(20.,31.,0.1,45.,2.,5.,8.); #33=TAPERED_REAMER(#34,6,$,.F.,$,$); #34=TOOL_DIMENSION(22.,$,$,$,$,$,$); #35=TOLERANCED_LENGTH_MEASURE(1.,#36); #36=PLUS_MINUS_VALUE(0.1,0.1,3); #37=TOLERANCED_LENGTH_MEASURE(10.,#38); #38=PLUS_MINUS_VALUE(0.1,0.1,3); #39=MILLING_CUTTING_TOOL('MILL 20MM',#29,(#125),80.,$,$); #40=MILLING_TECHNOLOGY(0.04,.TCP.,$,12.,$,.F.,.F.,.F.,$); #41=MILLING_MACHINE_FUNCTIONS(.T.,$,$,.F.,$,(),.T.,$,$,()); #42=BIDIRECTIONAL(5.,.T.,#43,.LEFT.,$); #43=DIRECTION('STRATEGY PLANAR FACE1: 1.DIRECTION',(0.,1.,0.)); #44=MILLING_CUTTING_TOOL('SPIRAL_DRILL_20MM',#31,(#126),90.,$,$); #45=MILLING_TECHNOLOGY(0.03,.TCP.,$,16.,$,.F.,.F.,.F.,$); #46=DRILLING_TYPE_STRATEGY(75.,50.,2.,50.,75.,8.); #47=MILLING_CUTTING_TOOL('REAMER_22MM',#33,(#127),100.,$,$); #48=MILLING_TECHNOLOGY(0.03,.TCP.,$,18.,$,.F.,.F.,.F.,$); #49=DRILLING_TYPE_STRATEGY($,$,$,$,$,$); #50=MILLING_TECHNOLOGY($,.TCP.,$,20.,$,.F.,.F.,.F.,$); #51=CONTOUR_BIDIRECTIONAL($,$,$,$,$,$); #52=MILLING_TECHNOLOGY($,.TCP.,$,20.,$,.F.,.F.,.F.,$); #53=CONTOUR_PARALLEL(5.,.T.,.CW.,.CONVENTIONAL.); #54=TOLERANCED_LENGTH_MEASURE(120.,#56); #55=DIRECTION('COURSE OF TRAVEL DIRECTION',(0.,1.,0.)); #56=PLUS_MINUS_VALUE(0.2,0.0001,3); #57=NUMERIC_PARAMETER('PROFILE LENGTH',100.,'MM'); %O1000 //khoan lỗ (DRIL HOLE1) N00022 G90 N00024 T1 M6 N00026 S1000 M3 N00028 G0 G43 Z50 H1 N00030 G0 X7 Y10 N00032 G0 Z5 N00034 G81 Z-37 R3 F30 N00036 G80 N00038 G91 G28 X0 Y0 N00040 G0 Z100 //Khoan lỗ (DRILLHOLE2) N00042 G90 N00044 T1 M6 N00046 S1000 M3 N00048 G0 G43 Z50 H1 N00050 G0 X7 Y70 N00052 G0 Z5 N00054 G81 Z-37 R3 F30 N00056 G80 N00058 G91 G28 X0 Y0 N00060 G0 Z100 //hốc chữ nhật hở (POCKET1) N00062 G54 N00064 G90 N00066 G97 N00068 T1 M6 N00070 S1000 M3 N00072 G0 G43 Z50 H2 N00074 G0 X65 Y61 N00076 G0 Z5 N00078 G81 Z-27 F20 N00080 G80 N00082 G28 X0 Y0 N00084 T2 M6 N00086 S1000 M3 N00088 G0 G43 Z50 H2 N00090 G0 X65 Y61 N00092 G1 Z-10 F20 N00094 G91 G42 G1 Y12.2 N00096 G1 X9 N00098 G1 Y-24.4 N00100 G1 X-18 N00102 G1 Y36.6 N00104 G1 X27 N00106 G1 Y-48.8 N00108 G1 X-36 … N00126 G1 Y109.8 N00128 G1 X81 N00130 G1 Y-120 N00132 G1 X-88 N00134 G1 Y120 N00136 G1 X88 N00138 G1 Y-120 N00140 G90 N00142 G0 X65 Y61 N00144 G40 N00146 G0 Z100 N00148 G0 X150 Y150 N00150 G0 X65 Y61 N00212 G1 Z-25 F200 N00094 G91 G42 G1 Y12.2 N00096 G1 X9 N00098 G1 Y-24.4 N00100 G1 X-18 N00102 G1 Y36.6 N00104 G1 X27 N00106 G1 Y-48.8 N00108 G1 X-36 … N00126 G1 Y109.8 N00128 G1 X81 N00130 G1 Y-120 #58=TOLERANCED_LENGTH_MEASURE(9.,#56); #59=POLYLINE('CONTOUR OF POCKET1',(#121,#122,#123,#124,#121)); #60=PLUNGE_RAMP($,45.); #61=PLUNGE_RAMP($,45.); #62=ELEMENTARY_SURFACE('SECURITY PLANE',#73); #63=ELEMENTARY_SURFACE('PLANAR FACE1-DEPTH PLANE',#80); #64=ELEMENTARY_SURFACE('DEPTH SURFACE FOR ROUND HOLES1-4',#160); #65=ELEMENTARY_SURFACE('DEPTH SURFACE FOR POCKET1',#94); #66=CARTESIAN_POINT('CLAMPING_POSITION1',(0.,20.,25.)); #67=CARTESIAN_POINT('CLAMPING_POSITION2',(100.,20.,25.)); #68=CARTESIAN_POINT('CLAMPING_POSITION3',(0.,75.,25.)); #69=CARTESIAN_POINT('CLAMPING_POSITION4',(100.,75.,25.)); #71=AXIS2_PLACEMENT_3D('SETUP1',#95,#96,#97); #73=AXIS2_PLACEMENT_3D('PLANE1',#98,#99,#100); #74=AXIS2_PLACEMENT_3D('WORKPIECE',#101,#102,#103); #77=AXIS2_PLACEMENT_3D('PLANAR FACE1',#104,#105,#106); #80=AXIS2_PLACEMENT_3D('PLANAR FACE1',#107,#108,#109); #81=AXIS2_PLACEMENT_3D('HOLE1',#110,#111,$); #82=AXIS2_PLACEMENT_3D('HOLE2',#112,#113,$); #83=AXIS2_PLACEMENT_3D('HOLE3',#130,#131,$); #84=AXIS2_PLACEMENT_3D('POCKET1',#115,#116,#117); #85=AXIS2_PLACEMENT_3D('POCKET2',#230,#231,#232); #86=AXIS2_PLACEMENT_3D('DEPTH POCKET2',#220,#221,#222); #94=AXIS2_PLACEMENT_3D('DEPTH POCKET1',#118,#119,#120); #95=CARTESIAN_POINT('SETUP1: LOCATION ',(150.,90.,40.)); #96=DIRECTION(' AXIS ',(0.,0.,1.)); #97=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #98=CARTESIAN_POINT('SECPLANE1: LOCATION ',(0.,0.,30.)); #99=DIRECTION(' AXIS ',(0.,0.,1.)); #100=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #101=CARTESIAN_POINT('WORKPIECE1:LOCATION ',(0.,0.,0.)); #102=DIRECTION(' AXIS ',(0.,0.,1.)); #103=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #104=CARTESIAN_POINT('PLANAR FACE1:LOCATION ',(0.,0.,5.)); #105=DIRECTION(' AXIS ',(0.,0.,1.)); #106=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #107=CARTESIAN_POINT('PLANAR FACE1:DEPTH ',(0.,0.,-5.)); #108=DIRECTION(' AXIS ',(0.,0.,1.)); #109=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #110=CARTESIAN_POINT('HOLE1: LOCATION ',(7.,10.,0.)); #111=DIRECTION(' AXIS ',(0.,0.,1.)); #112=CARTESIAN_POINT('HOLE2: LOCATION ',(7.,70.,0.)); #113=DIRECTION(' AXIS ',(0.,0.,1.)); #115=CARTESIAN_POINT('POCKET1: LOCATION ',(20.,0.,0.)); #116=DIRECTION(' AXIS ',(0.,0.,1.)); #117=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #118=CARTESIAN_POINT('DEPTH POCKET1: DEPTH ',(0.,0.,-27.)); #119=DIRECTION(' AXIS ',(0.,0.,1.)); #120=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #121=CARTESIAN_POINT('P1',(0.,0.,0.)); #122=CARTESIAN_POINT('P2',(0.,122.,0.)); #123=CARTESIAN_POINT('P3',(90.,122.,0.)); #124=CARTESIAN_POINT('P4',(90.,0.,0.)); #125=CUTTING_COMPONENT(80.,$,$,$,$); #126=CUTTING_COMPONENT(90.,$,$,$,$); #127=CUTTING_COMPONENT(100.,$,$,$,$); #128=AXIS2_PLACEMENT_3D('HOLE4',#132,#133,$); #130=CARTESIAN_POINT('HOLE3: LOCATION ',(123.,10.,0.)); #131=DIRECTION(' AXIS ',(0.,0.,1.)); #132=CARTESIAN_POINT('HOLE4: LOCATION ',(123.,57.,0.)); #133=DIRECTION(' AXIS ',(0.,0.,1.)); #150=ROUND_HOLE('HOLE2 D=9MM',#4,(#20),#82,#64,#58,$,#26); #151=ROUND_HOLE('HOLE3 D=9MM',#4,(#20),#83,#64,#58,$,#26); #152=ROUND_HOLE('HOLE4 D=9MM',#4,(#20),#128,#64,#58,$,#26); #160=AXIS2_PLACEMENT_3D('DEPTH HOLES1-4',#170,#171,#172); #170=CARTESIAN_POINT('DEPTH HOLES1-4: DEPTH ',(0.,0.,-37.)); #171=DIRECTION(' AXIS ',(0.,0.,1.)); #172=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #180=MACHINING_WORKINGSTEP('WS DRILL HOLE3',#62,#151,#20,$); #181=MACHINING_WORKINGSTEP('WS DRILL HOLE4',#62,#152,#20,$); #182=MACHINING_WORKINGSTEP('WS POCKEt4',#62,#211,#202,$); #183=MACHINING_WORKINGSTEP('WS POCKEt5',#62,#212,#202,$); #184=MACHINING_WORKINGSTEP('WS POCKEt6',#62,#213,#202,$); #185=MACHINING_WORKINGSTEP('WS POCKEt7',#62,#214,#202,$); #201=BOTTOM_AND_SIDE_FINISH_MILLING($,$,'POCKET3',15.,$,#39,#52,#41,$,$ N00132 G1 X-88 N00134 G1 Y120 N00136 G1 X88 N00138 G1 Y-120 N00260 G90 N00262 G0 X65 Y61 N00264 G40 N00266 G0 Z100 N00268 G0 X150 Y150 N00276 G0 X65 Y61 N00278 G1 Z-27 F20 N00094 G91 G42 G1 Y12.2 N00096 G1 X9 N00098 G1 Y-24.4 N00100 G1 X-18 N00102 G1 Y36.6 N00104 G1 X27 N00106 G1 Y-48.8 N00108 G1 X-36 … N00126 G1 Y109.8 N00128 G1 X81 N00316 G1 Y-120 N00318 G1 X-88 N00320 G1 Y122 N00322 G1 X90 N00324 G1 Y-137 N00326 G1 X-90 N00328 G1 Y137 N00330 G90 N00332 G1 X65 Y61 N00334 G40 N00336 G0 Z100 N00338 G0 X150 Y150 N00340 M5 //hốc chữ nhật ½ đường trịn hở(POCKET2) N00342 G54 N00068 T1 M6 (r=4.5) N00070 S1000 M3 N00072 G0 G43 Z50 H2 N00354 G0 X65 Y38.5 N00356 G0 Z5 N00358 G81 Z-28 F20 N00360 G80 N00362 G28 X0 Y0 N00068 T2 M6 (r=10) N00070 S1000 M3 N00072 G0 G43 Z50 H2 N00370 G0 X65 Y38.5 N00372 G1 Z-28.F20 N00374 G91 G42 G1 Y7.7 N00376 G1 X5 N00378 G1 Y-14.4 N00380 G1 X-10 N00382 G1 Y23.1 N00384 G1 X15 N00386 G1 Y-30.8 N00388 G1 X-20 … N00406 G1 Y69.3 N00408 G1 X45 N00656 G1 Y-75 N00658 G1 X-48 N00660 G1 Y77 N00662 G1 X50 N00664 G1 Y-92 N00666 G1 X-50 N00668 G1 Y92 N00670 G2 X50 I25 J0 N00672 G1 X-5 N00674 G3 X-40.I-20.J0 N00676 G1 X5 N00682 G2 X30 I15.J0 N00702 G1 X-5 N00704 G3 X-20.I-10.J0 ,$,#53,2.,10.,$,$); #202=BOTTOM_AND_SIDE_FINISH_MILLING($,$,'POCKET47',15.,$,#390,#52,#41,$,$,$,#53,2.,10.,$,$); #210=CLOSED_POCKET('POCKET2',#4,(#23),#85,#240,(),$,#27,#35,#37,#250); #211=CLOSED_POCKET('POCKET4',#4,(#202),#850,#866,(),$,#27,#35,#37,#1000); #212=CLOSED_POCKET('POCKET5',#4,(#202),#852,#866,(),$,#27,#35,#37,#1000); #213=CLOSED_POCKET('POCKET6',#4,(#202),#853,#866,(),$,#27,#35,#37,#1000); #214=CLOSED_POCKET('POCKET7',#4,(#202),#854,#866,(),$,#27,#35,#37,#1000); #215=CLOSED_POCKET('POCKET3',#4,(#201),#849,#1066,(),$,#27,#35,#37,#2000) ; #220=CARTESIAN_POINT('DEPTH POCKET2: DEPTH ',(0.,0.,-1.)); #221=DIRECTION(' AXIS ',(0.,0.,1.)); #222=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #230=CARTESIAN_POINT('POCKET2: LOCATION ',(40.,0.,-27.)); #231=DIRECTION(' AXIS ',(0.,0.,1.)); #232=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #240=ELEMENTARY_SURFACE('DEPTH SURFACE FOR POCKET2',#86); #250=GENERAL_CLOSED_PROFILE($,#540); #251=POLYLINE('CONTOUR OF POCKET2_01',(#550,#551)); #252=POLYLINE('CONTOUR OF POCKET2_01',(#552,#553)); #300=TOLERANCED_LENGTH_MEASURE(25.,#36); #301=PARTIAL_CIRCULAR_PROFILE($,#300,180.); #390=MILLING_CUTTING_TOOL('MILL 4MM',#391,(#125),80.,$,$); #391=TAPERED_ENDMILL(#392,4,$,.F.,$,$); #392=TOOL_DIMENSION(4.,$,$,$,1.5,$,$); #500=CARTESIAN_POINT('Kreis1',(25.,77.,0.)); #501=AXIS2_PLACEMENT_3D('Kreis1',#500,$,$); #502=CIRCLE('Kreis1',#501,25.); #510=CARTESIAN_POINT('TrimKreis1',(0.,77.,0.)); #511=CARTESIAN_POINT('TrimKreis1',(50.,77.,0.)); #512=TRIMMED_CURVE('HALBKREIS1',#502,(#510),(#511),.T.,.CARTESIAN.); #530=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#512); #531=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#251); #532=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#252); #540=COMPOSITE_CURVE('Pocket2',(#531,#530,#532),.T.); #550=CARTESIAN_POINT('P1',(0.,0.,0.)); #551=CARTESIAN_POINT('P2',(0.,77.,0.)); #552=CARTESIAN_POINT('P3',(50.,77.,0.)); #553=CARTESIAN_POINT('P4',(50.,0.,0.)); #849=AXIS2_PLACEMENT_3D('POCKET3',#1063,#1064,#1065); #850=AXIS2_PLACEMENT_3D('POCKET4',#863,#864,#865); #851=AXIS2_PLACEMENT_3D('DEPTH POCKET4-7',#860,#861,#862); #852=AXIS2_PLACEMENT_3D('POCKET5',#867,#868,#869); #853=AXIS2_PLACEMENT_3D('POCKET6',#870,#871,#872); #854=AXIS2_PLACEMENT_3D('POCKET7',#873,#874,#875); #860=CARTESIAN_POINT('DEPTH POCKET4-7: DEPTH ',(0.,0.,-9.)); #861=DIRECTION(' AXIS ',(0.,0.,1.)); #862=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #863=CARTESIAN_POINT('POCKET4: LOCATION ',(0.,17.5,0.)); #864=DIRECTION(' AXIS ',(0.,0.,1.)); #865=DIRECTION(' REF_DIRECTION',(-1.,0.,0.)); #866=ELEMENTARY_SURFACE('DEPTH SURFACE FOR POCKET4-7',#851); #867=CARTESIAN_POINT('POCKET5: LOCATION ',(0.,82.5,0.)); #868=DIRECTION(' AXIS ',(0.,0.,1.)); #869=DIRECTION(' REF_DIRECTION',(-1.,0.,0.)); #870=CARTESIAN_POINT('POCKET6: LOCATION ',(0.,2.5,0.)); #871=DIRECTION(' AXIS ',(0.,0.,1.)); #872=DIRECTION(' REF_DIRECTION',(-1.,-1.,0.)); #873=CARTESIAN_POINT('POCKET7: LOCATION ',(130.,49.5,0.)); #874=DIRECTION(' AXIS ',(0.,0.,1.)); #875=DIRECTION(' REF_DIRECTION',(-1.,-1.,0.)); #900=CARTESIAN_POINT('Kreis1',(7.5,7.,0.)); #901=AXIS2_PLACEMENT_3D('Kreis1',#900,$,$); #902=CIRCLE('Kreis1',#901,7.5); #910=CARTESIAN_POINT('TrimKreis1',(0.,7.,0.)); #911=CARTESIAN_POINT('TrimKreis1',(15.,7.,0.)); #912=TRIMMED_CURVE('HALBKREIS1',#902,(#910),(#911),.T.,.CARTESIAN.); #930=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#912); #931=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#1051); #932=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#1052); #940=COMPOSITE_CURVE('Pocket4-7',(#931,#930,#932),.T.); #950=CARTESIAN_POINT('P1',(0.,0.,0.)); #951=CARTESIAN_POINT('P2',(0.,7.,0.)); #952=CARTESIAN_POINT('P3',(7.5,7.,0.)); #953=CARTESIAN_POINT('P4',(7.5,0.,0.)); N00706 G90 G1 X65.Y77 N00706 G0 Z5 N00706 M5 //khoan N00708 N00710 N00712 N00714 N00716 N00718 N00720 N00722 N00724 N00726 lỗ (DRIL HOLE3) G90 T( ) M6 S(n) M3 G0 G43 Z50 H( ) G0 X123 Y10 G0 Z5 G81 Z-37 R3 F30 G80 G91 G28 X0 Y0 G0 Z100 //khoan lỗ (DRIL HOLE4) N00728 G90 N00730 T( ) M6 N00732 S(n) M3 N00734 G0 G43 Z50 H( ) N00736 G0 X123 Y57 N00738 G0 Z5 N00740 G81 Z-37 R3 F30 N00742 G80 N00744 G91 G28 X0 Y0 N00746 G0 Z100 //hốc chữ nhật ½ đường tròn hở(POCKET4) N00754 T - M6 N00756 S - M3 N00758 G0 G43 Z50 H N00760 G0 X3.5 Y10 N00762 G0 Z5 N00764 G81 Z-9 F20 //hốc chữ nhật ½ đường tròn hở(POCKET5) N00992 T - M6 N00994 S - M3 N00996 G0 G43 Z50 H N00998 G0 X3.5 Y75 N01000 G0 Z5 N01002 G81 Z-9 F N01004 G80 //hốc chữ nhật ½ đường trịn hở(POCKET6) N01230 T - M6 N01232 S - M3 N01234 G0 G43 Z50 H N01236 G0 X126.5 Y9 N01238 G0 Z5 N01240 G81 Z-9 F N01242 G80 //hốc chữ nhật ½ đường tròn hở(POCKET7) N01468 T - M6 N01470 S - M3 N01472 G0 G43 Z50 H N01474 G0 X126.5 Y56 N01476 G0 Z5 N01478 G81 Z-9 F N01480 G80 //gia công hóc trịn N01700 G90 N01702 T(-) M6 N01704 S(-) M3 N01706 G0 G43 Z50 H(-) N01708 G0 X55 Y49 N01710 G0 Z5 N01712 G98 G81 Z-9 R3 F30 N01714 G80 N01716 G0 Z100 N01718 G0 X150 Y150 N01720 M5 … #1000=GENERAL_CLOSED_PROFILE($,#940); #1051=POLYLINE('CONTOUR OF POCKET2_01',(#950,#951)); #1052=POLYLINE('CONTOUR OF POCKET2_01',(#952,#953)); #1060=CARTESIAN_POINT('DEPTH POCKET3: DEPTH ',(0.,0.,-9.)); #1061=DIRECTION(' AXIS ',(0.,0.,1.)); #1062=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #1063=CARTESIAN_POINT('POCKET3: LOCATION ',(20.,49.5,-27.)); #1064=DIRECTION(' AXIS ',(0.,0.,1.)); #1065=DIRECTION(' REF_DIRECTION',(1.,0.,0.)); #1066=ELEMENTARY_SURFACE('DEPTH SURFACE FOR POCKET3',#1151); #1151=AXIS2_PLACEMENT_3D('DEPTH POCKET3',#1060,#1061,#1062); #1182=MACHINING_WORKINGSTEP('WS POCKEt3',#62,#215,#23,$); #1900=CARTESIAN_POINT('Kreis1',(35.,0.,0.)); #1901=AXIS2_PLACEMENT_3D('Kreis1',#1900,$,$); #1902=CIRCLE('Kreis1',#1901,35.); #1910=CARTESIAN_POINT('TrimKreis1',(0.,0.,0.)); #1911=CARTESIAN_POINT('TrimKreis1',(0.,0.,0.)); #1912=TRIMMED_CURVE('HALBKREIS1',#1902,(#1910),(#1911),.T.,.CARTESIAN.); #1930=COMPOSITE_CURVE_SEGMENT(.CONTINUOUS.,.T.,#1912); #1940=COMPOSITE_CURVE('Pocket3',(#1930),.T.); #2000=GENERAL_CLOSED_PROFILE($,#1940); ENDSEC; END-ISO-10303-21; N01792 N01794 N01796 N01798 N01800 N01802 N01804 N01806 N01808 N01810 N01812 N01814 N01816 N01818 N01820 N01822 N01824 G1 Z-9 F200 G91 G1 X5 G2 I-5 J0 F200 G1 X5 G2 I-10 J0 F200 G1 X5 G2 I-15 J0 F200 G1 X5 G2 I-20 J0 F200 G1 X5 G2 I-23 J0 G1 X0 G1 I-25 J0 G1 X-35.00000 Y(0) G0 Z20 M5 LÝ LỊCH TRÍCH NGANG Họ tên : Nguyễn Nhơn Hải Ngày, tháng, năm sinh :16/11/1982 Nơi sinh: Tp.Hồ Chí Minh Địa lien lạc: 73/3, Huỳnh Tấn Phát, kp4, P.Phú Thuận, Q.7, Tp.Hồ Chí Minh Q TRÌNH ĐÀO TẠO: Từ năm 2000-2005: Học đại học trường Đại học Sư phạm kỹ thuật Tp.Hồ Chí Minh Từ năm 2007-2009: Học cao học trường Đại học Bách Khoa Tp.Hồ Chí Minh Q TRÌNH CÔNG TÁC: Từ năm 2005 đến nay: Là giáo viên trường trrung học kỹ thuật & nghiệp vụ NAM SÀI GÒN ... END-ISO-10303-21; 39 Chương 4: Giải thuật công cụ phần mềm chuyển đổi 4.1 Công cụ phần mềm chuyển đổi: 4.1.1.Các chuyển đổi nay: Hiện có số cơng cụ phần mềm chuyển đổi viết bởi: Siemens, Indramat, WZL,... chương trình STEP-NC 23 3.2 Các thành phần chương trình STEP-NC 24 3.3 Các đặc trưng 29 3.4 Thư viện STEP-NC 34 Chương 4: Giải thuật công cụ phần mềm chuyển đổi 4.1 Công cụ phần mềm chuyển đổi 38 4.2.Những... dựng phần mềm cơng cụ chuyển đổi STEP-NC sang mã G-Code Luận văn vào cách giải thứ hai việc tìm hiểu STEP-NC mặt như: • Lịch sử phát triển STEP-NC • Ứng dụng STEP-NC 1.2 Giới thiệu STEP-NC Trong