Tính toán thiết kế robot trực giao song song ba bậc tự do ứng dụng trong gia công cơ khí

79 376 0
Tính toán thiết kế robot trực giao song song ba bậc tự do ứng dụng trong gia công cơ khí

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC NỘI DUNG Trang Chương Tính toán phân tích động học 1.1 Phân tích lựa chọn kết cấu máy 1.2 Phân tích động học mô 1.3 Miền làm việc 1.4 Modul phần mềm mô 11 Chương Tính toán đường dụng cụ gia công CNC trục không 12 gian 2.1 Đặt vấn đề 12 2.2 Thuật toán tính quỹ đạo điểm CCi bề mặt gia công 13 2.2.1 Quy luật xoắn ốc 13 2.2.2 Quy luật song song 15 2.2.3 Quy luật ziczắc 18 2.2.4 Quy luật hình tia 18 2.2.5 Quy luật song song chiều 19 2.2.6 Ví dụ áp dụng 20 2.3 Tính đường dụng cụ gia công bề mặt không gian máy phay 21 CNC trục 2.3.1 Tính đường dụng cụ với dao phay ngón đầu cầu 21 2.3.2 Tính đường dụng cụ với dao đầu 22 2.3.3 Tính đường dụng cụ với dao đầu xuyến 23 2.3.4 Ví dụ áp dụng 24 Chương Thiết kế khí 27 3.1 Thiết kế bệ máy bàn máy 27 3.2 Cụm dẫn hướng 28 3.3 Cụm cẳng tay cánh tay 29 3.4 Thiết kế cụm trục 29 i Chương Xây dựng thuật toán điều khiển thiết kế mạch điều khiển 33 4.1 Phân tích thiết kế mạch phần cứng điều khiển 33 4.2 Thuật toán nội suy hàm mã G-code 38 4.2.1 Các thuật toán nội suy mặt phẳng 38 4.2.2 Các thuật toan nội suy không gian 3D 45 Kết luận kết đạt 58 Tài liệu tham khảo 59 Phụ lục (các hàm chinh mã code chương trình) 65 Phụ lục (các vẽ) 75 ii LỜI NÓI ĐẦU Trong thời đại bùng nổ phát triển nhanh chóng khoa học công nghệ việc sử dụng máy móc đại làm tăng suất lao động, suất chất lượng, đồng thời hạ giá thành sản phẩm cách đáng kể trình sản xuất, xu hướng tự động hóa, đưa điều khiển tự động vào dây chuyền sản xuất công nghiệp, vấn đề quan trọng, đòi hỏi phối hợp nhiều ngành khoa học tin học, điều khiển thiết kế hệ thống, khí… Đối với lĩnh vực khí không nằm xu hướng phát triển nói trên, phương tiện máy móc với công nghệ đại điều khiển tự động theo chương trình số, nên hệ thống điều khiển số CNC sử dụng rộng rãi trình gia công, hệ thống điều khiển lập trình trực tiếp ( thay cho điều khiển rơle điện tử) để thực nhiệm vụ chuyên môn thông qua chương trình thiết lập từ trước… Cho đến máy CNC phát triển phong phú đa dạng từ chủng loại , kích thước, độ xác gia công Máy sử dụng phổ biến phân xưởng gia công khí, nước phát triển máy công cụ điều khiển số(CNC) nói chung thường cấu trúc động học hở, sau năm 1990 xuất mẫu máy cấu trúc động học song song (PKMT), mẫu máy thương ứng dụng làm máy phay cao tốc Để dần hoàn thiện gia công nhiều nhà khoa học đề xuất mẫu máy song song kiểu trực giao đầu dao trục đẳng hướng, để dễ dàng hòa nhập vào xu hướng nói em đựơc thầy giáo PGS TS.Phan Văn Đồng giúp đỡ hướng dẫn tận tình đề tài “ Tính toán, thiết kế, robot trực giaosong song bậc tự ứng dụng gia công khí” Em nỗ lực cố gắng hoàn thành luận văn nhiên tránh khỏi sai sót gặp phải trình độ thời gian hạn chế Em mong thầy giáo bỏ qua tạo điều kiện giúp đỡ để em hoàn thành luận văn Học viên thực Nguyễn Mạnh Tiến iii LỜI CẢM ƠN Trong suốt thời gian làm đề tài luận văn Thạc sỹ “ tính toán, thiết kế, robot trực giao song song bậc tự kiểu ứng dụng gia công khí” Dưới hướng dẫn nhiệt tình thầy PGS.TS Phan Văn Đồng, môn sở thiết kế máy & robot,Viện khí, Đại học Bách Khoa Hà Nội em nỗ lực hoàn thành nội dung sau: - Tìm hiểu tổng quan cấu song song cấu trúc trực giao - Phân tích động học lập trình tính toán thông số điều khiển động học trình gia công - Tính toán đường dụng cụ gia công CNC trục không gian - Thiết kế khí - Xây dựng thuật toán điều khiển thiết kế mạch điều khiển Luận văn đạt số kết định : Tìm hiểu cấu trúc máy song song kiểu trực giao Orthoglide ứng dụng gia công khí hoàn, tính toán, thiết kế giải toán điều khiển, miền làm việc, đồng thời hoàn thiện vẽ thiết kế ,từ kết cấu khí mạch phần cứng điều khiển đến xây dựng mô hình toán thuật toán điều khiển Trong khoảng thời gian không dài hướng dẫn nhiệt tình thầy giáo PGS.TS.Phan Văn Đồng em vận dụng kiến thức học chương trình đào tạo Thạc sỹ khoa Khí trường Đại học Bách Khoa Hà Nội để hoàn thành luận văn vừa áp dụng lý thuyết vừa tính thực nghiệm để em hoàn thiện, tổng hợp kiến thức trước tốt nghiệp khoá đào tạo Thạc sỹ Tuy nhiên với kiến thức chuyên môn hạn chế nên đề tài tránh khỏi thiếu sót chưa thể hoàn thiện cách hoàn hảo ý muốn, mong đợi Em mong đợi nhận bảo, góp ý thầy hướng dẫn, thầy phản biện thầy hội đồng để em hoàn thiện kiến thức học hỏi thêm Hà Nội, ngày 20 tháng 03 năm 2011 Học viên Nguyễn Mạnh Tiến iv Ký hiệu DANH MỤC CÁC KÝ HIỆU VÀ CÁC TỪ VIẾT TẮT Nội dung, ý nghĩa CAM : Computer Aided Manufacturing RBSS : Rô bốt song song PKMT : Parallel Kinematic Machine Tool MLV : Miền làm việc CLi : Điểm định vị dụng cụ (cutter location) CCi : Điểm tiếp xúc dụng cụ bề mặt gia công Oxyz Hệ tọa độ quy chiếu gốc máy (hệ 1) Puvw Hệ tọa độ động gắn tâm cụm trục (hệ 2) R Ma trận quay n Véctơ pháp tuyến ξ1 Quỹ đạo điểm cắt cho phương trình f(u,v) r τ tt Vecto đơn vị tiếp tuyến r r CCi Véc tơ định vị điểm CCi ( ∑ s ) r r CLi ∑s R A r Vec tơ định vị điểm CLi dụng cụ Bề mặt gia công tinh Bán kính đầu cầu Ma trận cosin phương hệ tọa độ động so với hệ tọa độ gốc phôi Bán kính xuyến v Chương TÍNH TOÁN PHÂN TÍCH ĐỘNG HỌC 1.1 Phân tích lựa chọn kết cấu máy Máy công cụ cấu trúc động học song song (PKMT: Parallel Kinematic Machine Tool) nghiên cứu phát triển năm 1990, cụ thể máy Octahedral Hexapod hãng Ingersoll (Mỹ) giới thiệu vào năm 1990 hay máy Variax giới thiệu hãng Gidding & Lewis (Mỹ) vào năm 1994, đến cho đời nhiều mẫu máy khác máy phay cao tốc VARIAX-Hexacenter hãng Gidding&Lewis, máy phay TORNADO 2000 hãng Hexel hay máy phay CNC trục TRICEPT 845 hãng Neos Robotics v.v [2, 3, 5, 6] Tuy nhiên hầu hết máy PKMT đầu dao trục định vị định hướng dụng cụ (có số bậc tự lớn 3), số trường hợp cần bậc tự tịnh tiến máy phay CNC trục cấu trúc lại trở nên không hiệu điều khiển phức tạp giá thành cao Để đáp ứng yêu cầu năm gần nhiều nhà khoa học phải kể đến Damien Chablat [4, 8] đề xuất mẫu máy song song kiểu trực giao đầu dao trục đẳng hướng (tịnh tiến song song với trục hệ tọa độ đề đặt gốc máy), sau Ryu 2008 [5] đưa cải tiến cấu trúc chân loại máy cách đưa thêm cụm cấu hình bình hành vào chân đổi kiểu dẫn động từ tịnh tiến thành quay nhằm tăng độ cứng vững máy Trong nghiên cứu tác giả đưa đề xuất cải tiến cụm dẫn động mẫu máy Ryu [5] cách thêm cấu tay quay trượt dẫn động cụm hình bình hành thay dẫn động trực tiếp Máy Rôbốt song song kiểu trực giao mang đầu dao trục chuyển động theo quỹ đạo định vị dụng cụ Trong chuyển động tịnh tiến thực ba chân, chân dẫn động cấu tay quay trượt kết hợp với cấu hình bình hành nhằm tăng hành trình trượt độ cứng vững máy Do trục điều khiển gồm khớp quay khớp trượt nối từ giá cố định đến đầu trục (hình 1) Hầu hết công nghiệp gia công phay CNC trục chuyển động tương đối phôi dụng cụ thực chuyển động tịnh tiến theo trục tọa độ x, y, z hệ tọa độ gốc máy (hình 1.1) Cụm cấu hình bình hành Cụm cấu tay quay trượt Đầu trục Bàn mang phôi Hình Máy CNC trục cấu trúc động học song song cải tiến từ cấu đề xuất Ryu Hình 1.1 Sơ đồ kết cấu máy phay CNC trục Như vậy, ứng dụng cấu trúc động học song song nhằm đưa vào thiết kế máy phay CNC trục cần tìm cấu cho chuyển động giá di động gồm bậc tự tịnh tiến theo trục hệ tọa độ gốc gọi cấu trúc trực giao năm 2000 trở lại cấu trúc song song loại bắt đầu nghiên cứu Ban đầu nghiên cứu mặt cấu trúc nhằm tìm cấu trúc khác máy động học song song kiêu trực giao vấn đề phải kể đến Gogu [15 17] (Xianwen Kong, Clément Gosselin - 2007) [19] đưa nhiều cấu trúc trực giao từ đơn giản đến phức tạp số cấu trúc tiêu biểu a) Cấu trúc đưa Kong Gosselin [19] b) Cấu trúc đưa Gogu [16] : c) Các cấu trúc song song trực giao bậc tự đề xuất Gogu [15] Hình 1.2 Các cấu trúc song song trực giao bậc tự Tiếp đến ghiên cứu động học, độ cứng vững, động lực học điều khiển [ 4, 10-13, 18, 20 ] cho đời mẫu máy phòng thí nghiệm với thử nghiệm khác từ ứng dụng thí nghiệm đơn gian gia công khí để nhằm minh chứng cho kết nghiên cứu lý thuyết Về mặt sản xuất chế tạo thành sản phẩm thương mại hóa kiểu máy phay CNC trục mẫu máy đưa viện nghiên cứu LOLA, Belgrade [21] số mẫu máy chế tạo Hình 1.3 Máy CNC trục IRCCyN nghiên cứu Pháp [11 - 14] Hình 1.4 Máy cấu trúc trực giao nghiên cứu Đại học công nghệ Taipei quốc gia, Đài loan [18] a) Rôbốt Tripteron b) Rôbốt Quadrupteron Hình 1.5 Mô hình rô bốt song song phát triển bới trường đại học Laval [19] Hình 1.6 Máy phay CNC trục kiểu trực giao nghiên cứu Đại học Thessaloniki [10] Hình 1.7 Máy cấu trúc trực giao Isoglide 4-T3R1-A5 nghiên cứu viện học Pháp [17] Trên sở phân tích tổng hợp công trình nghiên cứu lĩnh vực cho thấy cấu trúc máy nhiều nhà nghiên cứu nước application to the orthoglide 3-axis, Transactions of the Canadian Society for Mechanical Engineering, Vol 33, No 3, 2009, 523-541 12 Chablat D., Wenger P., Staicu, S.- Dynamics of the Orthoglide parallel robot, UPB Scientific Bulletin, Series D: Mechanical Engineering, Volume 71 (3), pp 3-16, 2009 13 A Pashkevich, P Wenger, D Chablat - Design strategies for the geometric synthesis of Orthoglide-type mechanisms, Mechanism and Machine Theory 40 907–930, 2005 14 Paskhevich A., Wenger P et Chablat D - Kinematic and stiffness analysis of the Orthoglide, a PKM with simple, regular workspace and homogeneous performances, IEEE International Conference On Robotics And Automation, Rome, Italie, Avril, 2007 15 Grigore Gogu - Structural synthesis of fully-isotropic translational parallel robots via theory of linear transformations, European Journal of Mechanics A/Solids 23 1021–1039,2004 16 Grigore Gogu - Mobility and spatiality of parallel robots revisited via theory of linear transformations, European Journal of Mechanics A/Solids 24, 690–711, 2005 17 Grigore Gogu - Structural synthesis of fully-isotropic parallel robots with Schönflies motions via theory of linear transformations and evolutionary morphology, European Journal of Mechanics A/Solids 26, 242–269,2007 18 Ping-Lang Yen , Chi-Chung Lai - Dynamic modeling and control of a 3-DOF Cartesian parallel manipulator, Mechatronics 19, 390–398, 2009 19 Xianwen Kong, Clément Gosselin- Type Synthesis of Parallel Mechanisms, Springer-Verlag Berlin Heidelberg 2007 20 Han Sung Kim - Kinematic Calibration of a Cartesian Parallel Manipulator, International Journal of Control, Automation, and Systems, vol 3, no 3, pp 453-460, 2005 60 21 Saša Živanović, Miloš Glavonjić, Zoran Dimić “Methodology for Configuring Desktop 3-axis Parallel Kinematic Machine”, FME Transactions, Vol 37(No 3), pp 107-115, 2009 22 Debananda Misra, V.SundararaJan, Paul K Wright; Zig-Zag Tool Path Generation for Sculptured Surface Finishing; AMS/ DIMACS Volume on Computer-Aided Design and Manufacturing 2004 23 Susan X Li, Robert B Jerard; 5-axis machining of Sculptured Surfaces With a flat- end cutter; Computer Aided Design, Volume 26, Number March 1994 24 J G Lee, Y H Cho, S J Yang and J W Park; Near Net-shape Five-axis CL Data Generation by Considering Tool Swept Surface in Face Milling of Sculptured Surface; Computer-Aided Design and Applications;442-451, 2008 25 Helmi A youssef, Hassan El-hofy, Machining technology machine tools and operations, McGraw-Hill, 2008 26 Yoshimi Ito, Dr.-Eng., C.Eng., FIET, Modular Design for Machine Tools, The McGraw-Hill,2008 27 E Abele, Y.Altintas, C.Brecher , Machine tool spindle units, Manufacturing Technology (2010) 28 Anatoly Pashkevich, Philippe Wenger, Damien Chablat, “Kinematic and stiffness analysis of the Orthoglide, a PKM with simple, regular workspace and homogeneous performances”, IEEE International Conference on Robotics and Automation, Rome, Italie, Avrial, 2007 29 Ilian Alexandrov Bonev, Geometric Anlysis of parallel Mechanisms, Philosophiae Doctor (Ph.D), Universit’e Laval Qu’ebec, 2002 30 Ilian A Bonev, Jeha Ryu, “workspace analysis of 6-PRRS parallel manipulators based on the vertex space concept”, Proceedings of the 1999 ASME Design Engineering Technical Conferences September 12-15, Las Vegas, Nevada, 1999 61 31 Ilian A Bonev, Jeha Ryu,“A new approach to orientation workspace analysis of 6-DOF parallel manipulators”, Mechanism and Machine Theory Vol 36, pp 1528, 2001 32 J A Carretero, R P Podhorodeski, M A Nahon, C M Gosselin, “Kinematic Analysis and Optimization of a New three Degree-of-Freedom Spatial parallel Manipulator”, Journal of Mechanism Design, Vol.122, pp 17-24,2000 33 Jason Pusey, Abbas Fattah, Sunil Agrawal, Elena Messina, Adam Jacoff, “Design and Workspace Analysis of a 6-6 Cable-Susspended parallel Robot”, Proceedings of the IEEE/RSJ Intl Conference on Intelligent Robots and Systems, Las -Vegas, Nevada, pp 2090-2095, 2003 34 Jason Pusey, Abbas Fattah, Sunil Agrawal, Elena Messina, “Design and Workspace analysis of a 6-6 cable-suspended parallel robot”, Mechanism and machine theory(39), pp 761-778, 2004 35 Han Sung Kim, Lung-Wen Tsai, “Design Optimization of a Cartesian Parallel Manipulator”, Proceedings of DETC’02 ASME 2002 Design Engineering Technical Conference and Computers and information in Engineering Conference, Montreal, Canada, September 29- October 2,2002 36 Pashkevich, D.Chablat, P Wenger, “Kinematics and Workspace Analysis of a Three-axis Parallel Manipulator: The Orthoglide”, Roboca, Volume 24 , pp 3949, 2006 37 Suk-Hwan Suh, Seong-Kyoon Kang, Dae-Hyuk Chung, Ian Stroud; Theory and Design of CNC Systems, Springer,2008 38 Nguyễn Hồng Thái, Phan Văn Đồng; ”Ứng dụng robot hexapod máy phay CNC nhiều trục gia công tinh bề mặt phức tạp dao phay ngón đầu cầu”; Hội nghị khoa học công nghệ chế tạo máy lần thứ 2, 2009 39 Nguyễn Hồng Thái ; ”Mô bề mặt gia công tinh máy phay CNC trục”; Hội nghị khoa học công nghệ chế tạo máy lần thứ 2, 2009 62 40 Nguyễn Hồng Thái ; ”Thuật toán sinh đường dụng cụ gia công tinh bề mặt phức tạp dao phay ngón đầu cầu máy phay CNC trục”; Hội nghị học toàn quốc kỷ niệm 30 năm thành lập viện học Tạp chí học, Hà nội, trang 91-98, 2009 41 Nguyễn Hồng Thái, Phan Văn Đồng, Nguyễn Xuân Hạ, Nguyễn Thùy Dương ; ”Tính toán mô động học máy phay CNC trục gia công tinh bề mặt phức tạp dao phay ngón đầu cầu”; Hội nghị học toàn quốc kỷ niệm 30 năm thành lập viện học Tạp chí học, Hà nội, trang 99 -106 , 2009 42 Nguyễn Hồng Thái ; ”Một kiểu máy khoan cao tốc bậc tự cấu trúc động học song song; Hội nghi điện tử toàn quốc lần thứ 3”; trang 137-142, 2006 43 Nguyễn Hồng Thái ; ”Chế tạo thử nghiệm robot Hexaligde”; Hội nghi điện tử toàn quốc lần thứ 3;Trang 206-210, 2006 44 Nguyễn Hồng Thái, Phan Văn Đồng, Hoàng Văn Bạo ; ”Sử dụng robot Tripod thuật giải xác định thông số điều khiển ứng dụng gia công bề mặt theo kiểu điêu khắc”; Tập 5; Tuyển tập công trình khoa học hội nghị học toàn quốc; Hà Nội, trang 255-260, 2002 45 Nguyễn Hồng Thái, Phan Văn Đồng ; ”Thuật giải kiến tạo đường cong theo nguyên tắc gia công CNC”; Tập 5; Tuyển tập công trình khoa học hội nghị học toàn quốc; Hà Nội, trang 118-124, 2002 46 Nguyễn Thùy Dương, Nguyễn Hồng Thái, Nguyễn Đình Sâm, Lại Anh Tuấn ; “Thuật toán sinh đường dụng cụ mô trình gia công tinh bề mặt không gian máy phay cnc trục”; Tạp chí khoa học công nghệ sáu trường đại học, số 76,2010 47 Nguyễn Hồng Thái, Nguyễn Thùy Dương, Nguyễn Thị Thanh Huyền ; “Thuật toán xác định thông số điều khiển động học máy phay CNC trục kiểu psk tripod – CNC trục gia công bề mặt phức tạp không gian dao phay ngón đầu cầu”; Tạp chí Khoa học & Công nghệ , Viện khoa học Công nghệ Việt nam, 2010 63 48 Nguyễn Hồng Thái, Hoàng Văn Bạo, Nguyễn Mạnh Tiến , “Máy phay CNC trục cấu trúc động học song song”, Tạp chí Khoa học & Công nghệ , Viện khoa học Công nghệ Việt nam, 2010 49 Nguyễn Hồng Thái, Đặng Bảo Lâm, Trịnh Khánh Ly, Nguyễn Thùy Dương , “Phân tích tổng hợp cấu trúc rô bốt song song đối xứng hai ba bậc tự phẳng”, Tạp chí Khoa học & Công nghệ trường Đại học Kỹ thuật, số 73B, trang 73-77,2009 50 Nguyễn Hồng Thái, “Nghiên cứu cấu trúc cấu kiến tạo robot song song đối xứng nhiều bậc tự không gian”, Tạp chí Khoa học & Công nghệ trường Đại học Kỹ thuật, số 50, trang 63-68, 2005 51 Nguyen Hong Thai, Phan Van Dong, Nguyen Xuan Ha; “Machining Sculptured Surfaces by Multi-Axis Milling and Grinding CNC Machines”; Proceedings of the ISRM , IFToMM International Symposium on Robotics and Mechatronics, September 21 - 23, Hanoi, Vietnam, pp 194-200, 2009 52 Nguyễn Hồng Thái, Luận án tiến sỹ kỹ thuật, Đại học Bách khoa Hà nội 2010 53 Nguyễn Hồng Thái, Ứng dụng Solidwork thiết kế khí, Nhà xuất Khoa học Kỹ thuật, 2006 64 PHỤ LỤC CÁC HÀM CHÍNH MÃ CODE CHƯƠNG TRÌNH I Mã code cac modul chuong trinh tính đường dụng cụ băng Matlab function [CLx,CLy,CLz]=daodaucau3truc(CCx,CCy,CCz,nx,ny,nz,R) CLx=CCx+R*nx; CLy=CCy+R*ny; CLz=CCz+R*nz; %========================================================= =============== function [nx,ny,nz]=fphaptuyen(tux,tuy,tuz,tvx,tvy,tvz) tgx=tuy.*tvz-tuz.*tvy; tgy=tuz.*tvx-tvz.*tux; tgz=tux.*tvy-tuy.*tvx; h=sqrt(tgx.^2+tgy.^2+tgz.^2); nx=tgx./h; ny=tgy./h; nz=tgz./h; %========================================================= =============== %function ptmatcau(R,umax,umin,vmax,vmin,du,dv)GH=[] clear; umax=180;umin=0;vmax=360;vmin=0;du=10;dv=10;R=100; m=(umax-umin)/du;n=(vmax-vmin)/dv; X=zeros(m,n);Y=zeros(m,n);Z=zeros(m,n);CCx=[];CCy=[];CCz=[]; tux=[];tuy=[];tuz=[];tvx=[];tvy=[];tvz=[]; tdux=zeros(m,n);tduy=zeros(m,n);tduz=zeros(m,n);tdvx=zeros(m,n);tdvy=zero s(m,n);tdvz=zeros(m,n); nxm=zeros(m,n);nym=zeros(m,n);nzm=zeros(m,n); u=[];v=[]; u(1)=0;v(1)=0;dut=du*pi/180;dvt=dv*pi/180; %Dung be mat for i=1:m u(i+1)=u(i)+dut; for j=1:n v(j+1)=v(j)+dvt; X(i,j)=R.*cos(u(i)).*cos(v(j)); Y(i,j)=R.*cos(u(i)).*sin(v(j)); Z(i,j)=R.*sin(u(i)); % phap tuyen mat tdux(i,j)=-R.*sin(u(i)).*cos(v(j)); tduy(i,j)=-R.*sin(u(i)).*sin(v(j)); tduz(i,j)=R.*cos(u(i)); 65 tdvx(i,j)=-R.*cos(u(i)).*sin(v(j)); tdvy(i,j)=R.*cos(u(i)).*cos(v(j)); tdvz(i,j)=0; end end %phap tuyen be mat [nxm,nym,nzm]=fphaptuyen(tdux,tduy,tduz,tdvx,tdvy,tdvz); %====================================================== dr=2;dphi=3; [CCx,CCy]=functionssdongtam(dphi,dr,R); % phap tuyen duong dung cu for e=1:1:length(CCx) vd(e)=atan(CCy(e)./CCx(e)); ud(e)=acos(CCy(e)./(R.*sin(vd(e)))); CCz(e)=R.*sin(ud(e)); %===================================== if (CCx(e)>0) tux(e)=R.*sin(ud(e)).*cos(vd(e)); tuy(e)=R.*sin(ud(e)).*sin(vd(e)); tuz(e)=-R.*cos(ud(e)); else tux(e)=(-R.*sin(ud(e))).*(cos(vd(e))); tuy(e)=(-R.*sin(ud(e))).*(sin(vd(e))); tuz(e)=R.*(cos(ud(e))); end tvx(e)=(-R.*(cos(ud(e)))).*(sin(vd(e))); tvy(e)=(R.*(cos(ud(e)))).*(cos(vd(e))); tvz(e)=0; end [nx,ny,nz]=fphaptuyen(tux,tuy,tuz,tvx,tvy,tvz); %========================================================= ============== D=4; [CLx,CLy,CLz]=daodaucau3truc(CCx,CCy,CCz,nx,ny,nz,3) %========================================================= ============== function [d1,d2,d3]=function_trucgiao(l0,l1,l4,e,XA11,YA22,ZA32,lcd,Xcl,Ycl,Zcl,XOB, YOB,ZOB) % Chan Xp=Xcl+XOB; XB13=Xp; delta1=asin((XB13-XA11+l4)./(-l1)); 66 Z1E=-(l1/2).*cos(delta1); X1E=-(l1/2).*sin(delta1); d1=X1E+sqrt(l0^2-(Z1E+e).^2) % chan Yp=Ycl+YOB; YB22=Yp; delta2=asin((YB22-YA22+l4)./(-l1)); Z2E=-(l1/2).*cos(delta2); Y2E=(l1/2).*sin(delta2)+YA22; d2=Y2E+sqrt(l0^2-(Z2E+e).^2) % Chan Zp=Zcl+lcd+ZOB; ZB33=Zp; delta3=asin((ZB33-ZA32+l4)./l1); Y3E=(l1/2).*cos(delta3); Z3E=(l1/2).*sin(delta3)+ZA32; d3=Z3E-sqrt(l0^2-(Y3E-e).^2) % TINH TOAN THONG SO DIEU KHIEN [d1,d2,d3]=function_trucgiao(l0,l1,l4,e,XA11,YA22,ZA32,lcd,xcl,ycl,zcl,XOB,Y OB,ZOB); %================================ %================================= %hien thi i=1:length(xcl); plot(i,d1,'r', , 'LineWidth',2) hold on plot(i,d2,'b', , 'LineWidth',2) hold on plot(i,d3,'m', , 'LineWidth',2) hold on II Một số hàm mã code chương trình mô Open GL #if !defined(AFX_PSKDOC_H 435B9FF9_54CB_44B8_A26F_E0A2CF8D9141 IN CLUDED_) #define AFX_PSKDOC_H 435B9FF9_54CB_44B8_A26F_E0A2CF8D9141 INCLUDE D_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 67 class CPSKDoc : public CDocument { protected: // create from serialization only CPSKDoc(); DECLARE_DYNCREATE(CPSKDoc) // Attributes public: // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CPSKDoc) public: virtual BOOL OnNewDocument(); virtual void Serialize(CArchive& ar); //}}AFX_VIRTUAL // Implementation public: virtual ~CPSKDoc(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; #endif protected: // Generated message map functions protected: //{{AFX_MSG(CPSKDoc) // NOTE - the ClassWizard will add and remove member functions here // DO NOT EDIT what you see in these blocks of generated code ! //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} 68 // Microsoft Visual C++ will insert additional declarations immediately before the previous line #endif // !defined(AFX_PSKDOC_H 435B9FF9_54CB_44B8_A26F_E0A2CF8D9141 IN CLUDED_) CDothi::CDothi(CWnd* pParent /*=NULL*/) : CDialog(CDothi::IDD, pParent) { //{{AFX_DATA_INIT(CDothi) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT } void CDothi::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDothi) // NOTE: the ClassWizard will add DDX and DDV calls here //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDothi, CDialog) //{{AFX_MSG_MAP(CDothi) // NOTE: the ClassWizard will add message map macros here //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE; // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return TRUE; } ///////////////////////////////////////////////////////////////////////////// // CMainFrame diagnostics 69 #ifdef _DEBUG void CMainFrame::AssertValid() const { CFrameWnd::AssertValid(); } void CMainFrame::Dump(CDumpContext& dc) const { CFrameWnd::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CMainFrame message handlers BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) { m_Splitter.Create(this,RUNTIME_CLASS(CCTRPANEL),RUNTIME_CLAS S(CPSKView),pContext,1); m_Splitter.SetColumnInfo(0,100,10); m_Splitter.RecalcLayout(); m_Splitter.SetInitialStatus(); return TRUE; CFileDialog m_File (TRUE); m_File.DoModal(); return CFrameWnd::OnCreateClient(lpcs, pContext); } void CMainFrame::Run(double _theta1, double _theta2, double _theta3, double _d1, double _d2, double _d3, double _theta11, double _theta22, double _theta33, double _beta1, double _beta2, double _beta3, double _alpha1, double _alpha2, double _alpha3, double _xp,double _yp,double _zp,double _B,double _C, double _xp1,double _yp1,double _zp1,double _dao,double _k) { ((CPSKView*)m_Splitter.GetPane(0,1))->ThamChieu(_theta1,_theta2,_theta3, _d1,_d2,_d3, 70 _theta11,_theta22,_theta33, _beta1,_beta2,_beta3, _alpha1,_alpha2,_alpha3, _xp,_yp,_zp,_B,_C, _xp1,_yp1,_zp1,_dao,_k); } void CMainFrame::Reset() { ((CPSKView*)m_Splitter.GetPane(0,1))->XoaQuyDao(); } void CMainFrame::ToaDoBanMay(bool _banmay) { ((CPSKView*)m_Splitter.GetPane(0,1))->Banmay(_banmay); } void CMainFrame::Bemat(bool _bemat) { ((CPSKView*)m_Splitter.GetPane(0,1))->Bemat(_bemat); } void CMainFrame::DuongDungCu(bool _dungcu) { ((CPSKView*)m_Splitter.GetPane(0,1))->DuongDungCu(_dungcu); } void CMainFrame::HuongTrucDao(bool _trucdao) { ((CPSKView*)m_Splitter.GetPane(0,1))->HuongTrucDao(_trucdao); } void CMainFrame::ToaDoPhoi(bool _phoi) { ((CPSKView*)m_Splitter.GetPane(0,1))->ToaDoPhoi(_phoi); } void CMainFrame::PhapTuyen(bool _phaptuyen) { ((CPSKView*)m_Splitter.GetPane(0,1))->PhapTuyen(_phaptuyen); } void CMainFrame::Namefile(CString _filename) { 71 ((CPSKView*)m_Splitter.GetPane(0,1))->Namefile(_filename); } void CMainFrame::Dothi(bool _dothi) { } void CMainFrame::ThamSo(double _md1, double m_d2, double m_d3, double m_B, double m_C) { } #if !defined(AFX_PSKDOC_H 435B9FF9_54CB_44B8_A26F_E0A2CF8D9141 IN CLUDED_) #define AFX_PSKDOC_H 435B9FF9_54CB_44B8_A26F_E0A2CF8D9141 INCLUDE D_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 class CPSKDoc : public CDocument { protected: // create from serialization only CPSKDoc(); DECLARE_DYNCREATE(CPSKDoc) // Attributes public: // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CPSKDoc) public: virtual BOOL OnNewDocument(); virtual void Serialize(CArchive& ar); //}}AFX_VIRTUAL // Implementation 72 public: virtual ~CPSKDoc(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; #endif protected: // Generated message map functions protected: //{{AFX_MSG(CPSKDoc) // NOTE - the ClassWizard will add and remove member functions here // DO NOT EDIT what you see in these blocks of generated code ! //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line #endif // !defined(AFX_PSKDOC_H 435B9FF9_54CB_44B8_A26F_E0A2CF8D9141 IN CLUDED_) 73 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN KHÍ PHỤ LỤC II BẢN VẼ THIẾT KẾ HÀ NỘI 03-2011 74 ... Nguyễn Mạnh Tiến iii LỜI CẢM ƠN Trong suốt thời gian làm đề tài luận văn Thạc sỹ “ tính toán, thiết kế, robot trực giao song song bậc tự kiểu ứng dụng gia công khí Dưới hướng dẫn nhiệt tình thầy... máy song song kiểu trực giao Orthoglide ứng dụng gia công khí hoàn, tính toán, thiết kế giải toán điều khiển, miền làm việc, đồng thời hoàn thiện vẽ thiết kế ,từ kết cấu khí mạch phần cứng điều... tình đề tài “ Tính toán, thiết kế, robot trực giaosong song bậc tự ứng dụng gia công khí Em nỗ lực cố gắng hoàn thành luận văn nhiên tránh khỏi sai sót gặp phải trình độ thời gian hạn chế Em

Ngày đăng: 24/07/2017, 22:58

Từ khóa liên quan

Mục lục

  • MỤC LỤC

  • LỜI NÓI ĐẦU

  • LỜI CẢM ƠN

  • DANH MỤC CÁC KÝ HIỆU VÀ CÁC TỪ VIẾT

  • Chương 1ĐỘNG HỌC

  • Chương 2ĐƯỜNG DỤNG CỤ GIA CÔNG CNC 3 TRỤC TRONG KHÔNG

  • Chương 3Ơ KHÍ

  • Chương 4ĐIỀU KHIỂN VÀ THIẾT KẾ MẠCH PHẦN

  • KẾT LUẬN VÀ KẾT QUẢ ĐẠT ĐƯỢC

  • TÀI LIỆU THAM KHẢO

  • PHỤ LỤC 1

  • PHỤ LỤC II

Tài liệu cùng người dùng

Tài liệu liên quan