1. Trang chủ
  2. » Tất cả

mo phong chuyen dong cua robot voi opengl

47 11 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 47
Dung lượng 3,38 MB

Nội dung

Theo mặc định, các phần mềm CAD không cho phép xuất ra các tọa độ âm trong file STL. Điều này là để tạo ra các file STL tương thích với các máy in khắc hình (stereolithography). • Nếu phát hiện tọa độ âm, phần mềm sẽ tự động tịnh tiến đối tượng để đảm bảo tọa độ xuất ra không âm. Điều này làm cho việc định vị đối tượng trong chương trình OpenGL có thể bị sai lệch. • Một giải pháp là trong phần mềm CAD, dịch các đối tượng sao cho tọa độ dương, ghi nhận véctơ dịch chuyển, rồi trong chương trình OpenGL sử dụng lớp CSTL_File, truyền thêm tham số véctơ này cho hàm Load() • stl.Load(“cylinder.stl”, Vec3D(1, 1.5, 0));

BÀI MÔ PHỎNG CHUYỂN ĐỘNG CỦA ROBOT VỚI OPENGL Ths Nguyễn Xn Hồng Sơ đồ quy trình mơ Bắt đầu Kích thước, hình ảnh, sơ đồ,… A Xây dựng mơ hình thiết lập phương trình giải phương trình Add-in Visual C++ Connect OpenGL Thư viện đồ DirectX họa Matlab Maple Solve Robot Simulator Programming Load HUST Vẽ mơ hình 3D SolidWorks Inventor Dimensions Data files (q, v, a) AutoCAD Robot Simulator Software 10/5/2015 4 Import Export STL files MÔ PHỎNG CHUYỂN ĐỘNG CỦA ROBOT VỚI OPENGL MỤC TIÊU Có hiểu biết quy trình mơ chuyển động Nắm kỹ thuật mô chuyển động Robot Xây dựng chương trình mơ chuyển động Robot HUST 10/5/2015 NỘI DUNG HUST Quy trình mơ chuyển động Robot File mơ tả mơ hình 3d STL Xây dựng chương trình mơ Robot 10/5/2015 NỘI DUNG HUST Quy trình mô chuyển động Robot File mô tả mô hình 3d STL Xây dựng chương trình mơ Robot 10/5/2015 Quy trình mơ chuyển động Robot SolidWorks Export STL File Khaui.sldprt Khaui.stl Export AutoCAD Load Khaui.dwg Robot Project MFC OpenGL STL Reader Build Robot Programing Matlab/Maple Write solve q, ̇ , ̈ HUST TXT File Read TXT Reader q, ̇ , ̈ Kq.txt 10/5/2015 Robot Simulator C++ Solve q, ̇ , ̈ NỘI DUNG HUST Quy trình mơ chuyển động Robot File mơ tả mơ hình 3d STL Xây dựng chương trình mơ Robot 10/5/2015 Cấu trúc file STL Dạng văn • Solid name • Danh sách tam giác  facet normal ni nj nk  outer loop  vertex v1x v1y v1z  vertex v2x v2y v2z  vertex v3x v3y v3z  endloop  endfacet  endsolid name HUST 10/5/2015 Dạng nhị phân • UINT8[80] – Tiêu đề • UINT32 – Số tam giác • Danh sách tam giác  REAL32[3] – véctơ pháp  REAL32[3] – Đỉnh  REAL32[3] – Đỉnh  REAL32[3] – Đỉnh  UINT16 – Thuộc tính Cấu trúc file ASCII STL solid AutoCAD facet normal 9.9518473e-001 -9.8017140e-002 1.3058506e-017 outer loop vertex 9.9039274e+000 4.0245494e+000 2.0000001e+001 vertex 9.9039274e+000 4.0245494e+000 1.0000000e-006 vertex 1.0000001e+001 5.0000010e+000 2.0000001e+001 endloop endfacet … facet normal 0.0000000e+000 -0.0000000e+000 1.0000000e+000 outer loop vertex 9.6074598e-002 4.0245494e+000 2.0000001e+001 vertex 9.9039274e+000 4.0245494e+000 2.0000001e+001 vertex 1.0000000e-006 5.0000010e+000 2.0000001e+001 endloop endfacet endsolid AutoCAD HUST 10/5/2015 Xuất mơ hình 3D file STL AutoCad  Sử dụng command STLOUT HUST 10/5/2015 10 Thêm lớp đọc file STL vào project  Thêm tệp:  STL_File.h & STL_File.cpp: Chứa lớp đọc file STL  Vector4D.h: Chứa lớp tiện ích vector 4D, matrix 4D HUST 10/5/2015 33 Xây dựng chương trình mô Robot Robot Project MFC OpenGL STL Reader Robot Programing TXT Reader q, ̇ , ̈ HUST C++ Solve q, ̇ , ̈ 10/5/2015 34 Lớp quản lý thông tin mơ hình CModel  Lớp mơ tả thơng tin thuộc tính khâu  Thuộc tính  CSTL_File m_stl; Biến lưu trữ liệu đọc từ file STL  Cmaterial m_Material; Thông tin material model  String m_filename; Đường dẫn file STL  Phương thức  setModel: Tạo model từ file STL  drawObject: Vẽ đối tượng vào OpenGL HUST 10/5/2015 35 Lớp quản lý thông tin Robot: CRobot  Lớp mơ tả thơng tin thuộc tính Robot  Thuộc tính  model: Biến lưu trữ danh sách liệu khâu  m_d1, m_d2, m_d3: Kích thước khâu  m_q1, m_q2, m_q3: Các biến khớp  Phương thức  InitData: Khởi tạo liệu Robot  ReadData: Nạp liệu từ file  CalculateData: Nạp liệu từ tính tốn HUST 10/5/2015 36 Thêm lớp CModel, CRobot vào project  Tạo Filter Robot  Thêm file Model.h, Model.cpp, Robot.h, Robot.cpp  Thêm biến lớp CRobot vào lớp COpenGLInit  Thêm code InitRobot vào hàm OnCreate  Thêm code Draw Robot vào hàm OnDraw HUST 10/5/2015 37 Khởi tạo thông tin robot  Khởi tạo hàm InitData  Nạp kích thước khâu robot di  Nạp giá trị đầu biến khớp qi  Cài đặt liệu khâu từ file STL  Cài đặt scale cho khâu từ scale robot HUST 10/5/2015 38 Vẽ robot  Vẽ khâu robot từ khấu đế, khâu 1, khâu 2, khâu  Gọi hàm drawObject để vẽ khâu tương ứng HUST 10/5/2015 39 Các phép biến đổi tọa độ OpenGL  OpenGL cho phép thực phép biến đổi tọa độ thông qua hàm – glTranslate() tịnh tiến đối tượng – glRotate() quay đối tượng quanh trục – glScale() thu phóng đối tượng HUST 10/5/2015 40 Xây dựng chương trình mô Robot Robot Project MFC OpenGL STL Reader Robot Programing TXT Reader q, ̇ , ̈ HUST C++ Solve q, ̇ , ̈ 10/5/2015 41 Đọc liệu từ file text  Thêm mục Read Data vào menu chương trình  Thực việc chọn file liệu  Gọi hàm ReadData lớp robot HUST 10/5/2015 42 Xây dựng chương trình mơ Robot Robot Project MFC OpenGL STL Reader Robot Programing TXT Reader q, ̇ , ̈ HUST C++ Solve q, ̇ , ̈ 10/5/2015 43 Tính tốn biến khớp theo cơng thức  Với mơ hình robot đơn giản, số bậc tự nhỏ tính tốn các giá trị biến khớp trực tiếp từ công thức toán học  Bảng D-H j i q1 q2 z0 di d1 d3 0 i 90o 90o zE x3 z3 x2 d3 q2 z2  Tọa độ điểm tác động cuối sin( ) = cos = sin sin( ) = + sin x1 z1 d1 yE y0 xE q1 x0 HUST 10/5/2015 44 Quy trình mơ chuyển động Robot Robot Project OpenGL MFC STL Reader Build Robot Programing TXT Reader q, ̇ , ̈ HUST Robot Simulator C++ Solve q, ̇ , ̈ 10/5/2015 45 Chương trình mơ chuyển động Robot HUST 10/5/2015 46 HUST 10/5/2015 47 ... 10/5/2015 36 Thêm lớp CModel, CRobot vào project  Tạo Filter Robot  Thêm file Model.h, Model.cpp, Robot. h, Robot. cpp  Thêm biến lớp CRobot vào lớp COpenGLInit  Thêm code InitRobot vào hàm OnCreate... material model  String m_filename; Đường dẫn file STL  Phương thức  setModel: Tạo model từ file STL  drawObject: Vẽ đối tượng vào OpenGL HUST 10/5/2015 35 Lớp quản lý thông tin Robot: CRobot... MFC OpenGL STL Reader Robot Programing TXT Reader q, ̇ , ̈ HUST C++ Solve q, ̇ , ̈ 10/5/2015 26 Thêm số lớp hỗ trợ OpenGL vào project  Tạo Filter OpenGL project  Thêm tệp:  OpenGLInit.h & OpenGLInit.cpp:

Ngày đăng: 02/03/2023, 14:25

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w