1. Trang chủ
  2. » Thể loại khác

Do an CDT docx

34 979 10
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Mô phỏng chuyển động của Robot Hàn AX-V6
Tác giả Bùi Văn Hạnh
Người hướng dẫn PGS.TS. Bùi Văn Hạnh
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Cơ Điện Tử
Thể loại Đồ án thiết kế
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 34
Dung lượng 2,13 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Một khi được lập trình hợp lý, các robot sẽ tạo ra những mối hàn y như nhau trên các vật hàn cùng kích thước và quy cách.Chuyển động của que hàn được tự động hóa sẽ giảm nguy cơ mắc lỗi

Trang 1

MỤC LỤC

LỜI NÓI ĐẦU 2

YÊU CẦU ĐỀ TÀI 3

A.TÍNH TOÁN, THIẾT KẾ ROBOT 4

1 Xây dựng cấu trúc , thiết lập hệ phương trình động học của robot 4

2 Giải bài toán động học ngược của Robot 5

3 Thiết kế 2D , 3D các khâu của Robot 8

B.CÁC CÔNG CỤ ĐỂ XÂY DỰNG BÀI TOÁN MÔ PHỎNG HOẠT ĐỘNG CỦA ROBOT 13

1- Giới thiệu về phần mền OpenGL : 13

2- Đặc điểm của OpenGL: 14

3- Giới thiệu về ngôn ngữ lập trình Visual C ++ và các ứng dụng của MFC 16

C.XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG 17

D.XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG THEO QUỸ ĐẠO ĐÃ ĐƯỢC SỐ HÓA 27

Trang 2

LỜI NÓI ĐẦU

Trong sự nghiệp công nghiệp hóa, hiện đại hóa đất nước vấn đề tự động hóa sản xuất có vai trò đặc biệt quan trọng.

Mục tiêu ứng dụng robot trong công nghiệp là nhằm nâng cao năng suất dây chuyền công nghệ, nâng cao chất lượng và khả năng cạnh tranh của sản phẩm , đồng thời cải thiện điều kiện lao động Sự cạnh tranh hàng hóa đặt ra một vấn đề thời sự là làm sao để hệ thống tự động hóa sản xuất phải có tính linh hoạt cao nhằm đáp ứng sự biến động thường xuyên của thị trường hàng hóa cạnh tranh Robot công nghiệp là bộ phận cấu thành không thể thiếu không thể thiếu trong việc tạo ra những hệ thống sản xuất linh hoạt đó Robot hàn chiếm 80% về Robot trong sản xuất công nghiệp Robot hàn có độ chính xác và năng suất cao Hàn bằng robot nâng cao

độ tin cậy của mối hàn Một khi được lập trình hợp lý, các robot sẽ tạo ra những mối hàn y như nhau trên các vật hàn cùng kích thước và quy cách.Chuyển động của que hàn được tự động hóa sẽ giảm nguy cơ mắc lỗi trong thao tác, do vậy giảm phế phẩm và khối lượng công việc phải làm lại Robot không những làm việc nhanh hơn mà còn có thể hoạt động liên tục suốt ngày đêm, hiệu quả hơn nhiều so với một hệ thống hàn tay.Quá trình hàn được tự động hóa giải phóng người công nhân khỏi những tác hại khi hàn do tiếp xúc với bức xạ hồ quang, vẩy hàn nóng chảy, khí độc

Với những ứng dụng và ưu việt như trên, việc học tập, nghiên cứu và ứng dụng Robot hàn

là vấn đề cấp thiết đối với sinh viên ngành công nghệ hàn Sinh viên được giao nhiệm vụ giải bài toán động học ngược của Robot hàn 6 bậc tự do và tịnh tiến Trong quá trình sinh viên làm

đồ án Cơ Điện tử này, đã tích lũy được kiến thức cơ bản về Robot hàn, ứng dụng của Robot hàn để phục vụ công việc và học tập trong tương lai; biết cách tìm và đọc tài liệu, đặc biệt

là tài liệu tiếng anh; kiến thức về lập trình C# , ….Em xin gửi lời cảm ơn chân thành tới

Bộ môn hàn và công nghệ kim loại, đồng thời gửi lời cảm ơn chân thành tới PGS.TS Bùi Văn Hạnh đã tận tình giúp đỡ, định hướng để em hoàn thành Đồ án này.

Trang 3

YÊU CẦU ĐỀ TÀI

Đề tài : “Mô phỏng chuyển động của Robot hàn AX-V6”

Yêu cầu đặt ra :

 Xây dựng cấu trúc, thiết lập hệ phương trình động học của Robot

 Giải bài toán động học ngược robot:

o Tự xây dựng một quy luật chuyển động của khâu thao tác E của Robot

o Khảo sát bài toán động học ngược của Robot để tìm quy luật chuyểnđộng của các khâu

o Ứng dụng phần mềm tính toán , mô phỏng số

 Thiết kế mô phỏng:

o Thiết kế 2D, 3D các khâu của Robot

o Mô phỏng hoạt động của Robot

Trang 4

A TÍNH TOÁN, THIẾT KẾ ROBOT

1. Xây dựng cấu trúc , thiết lập hệ phương trình động học của robot

Cấu trúc Robot được vẽ như sau :

Đánh dấu hệ trục tọa độ theo phương pháp Denavit - Hatenberg ta có bảng DH như sau :

Trang 5

Các ma trận quay cơ bản trong hệ tọa đồ thuần nhất bốn chiều và có dạng như sau:

Tx(φ) = Rot(x,φ) = 1 0 0 0 ) = Rot(x,φ) = Rot(x,φ) = 1 0 0 0 ) = 1 0 0 0

0 cosφ) = Rot(x,φ) = 1 0 0 0 -sinφ) = Rot(x,φ) = 1 0 0 0 0

0 sinφ) = Rot(x,φ) = 1 0 0 0 cosφ) = Rot(x,φ) = 1 0 0 0 0

0 0 0 1

Trang 6

Ty() = Rot(y,) = cos 0 sin 0

2. Giải bài toán động học ngược của Robot

a) Xây dựng quỹ đạo chuyển động :

Ta sẽ đi xây dựng một quỹ đạo chuyển động của khâu cuối E

Ta hãy tính toán động học để điều khiển rôbốt thực hiện được thao tác công nghệtheo yêu cầu hàn một mối hàn là đường xoắn trụ trên vật thể hình trụ có kích thướcchiều dài và bán kính lớn Đường hàn là một đường xoắn ốc có góc nghiêng/ 9(rad)

   Quỹ đạo chuyển động của mỏ hàn trong hệ tọa độ vật được cho như sau:

Trang 7

Ở đây hệ tọa độ vật được xác định bởi các giá trị sau:

Ta tính cho rôbốt thực hiện mối hàn khi giá robot cố định, vật hàn di động với số

vòng xoắn ốc của mối hàn là: nvg=2,5, vận tốc hàn: v h = 10mm/s.

Thời gian cần thiết để thực hiện là:

2 _ cos

vg ds

h

t v

Xét hệ phương trình động học :

1 2 3

4 11 11

5 22 22

4 33 33

( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )

Trang 8

Để giải phương trình động học ngược chúng ta sử dụng giải thuật Newton- Raphson

để giải hệ 6 phương trình 6 ẩn trên tại thời điểm 0

Phương pháp N-R là một phương pháp lặp, trong đó ta sẽ xây dựng chuỗi vector{qk} Biểu thức hồi quy của nó là:

qk+1 = qk - F−1x (q k)∗f (qk , t0 ) (2)Trong đó :

Thuật giải như sau:

B1: Đặt k=0

B2: Chọn xấp xỉ ban đầu q0

B3: Tính h(qk , t0)

Nếu | h(qk , t0)| <ε ( Với ε là hằng số dương bé cho trước ) với mọi i=1,…,6 thì

dừng, nếu không thì tiếp tục bước 4

B4: Tính ma trận Jacobi tại qktức là F−1x (q k)

B5: Thay vào phương trình (2) để tìm qk+1

Trang 9

Ở đây chúng ta sử dụng phần mềm tính toán Maple:

3. Thiết kế 2D , 3D các khâu của Robot

Sử dụng phần mềm Solidwork để thiết kế chi tiết đúng với yêu cầu đặt ra về kích thước, kết cấu,…

Robot được thiết kế gồm các khâu bao gồm cả khâu đế:

Trang 12

Khâu 5

Trang 13

Tiến hành lắp ghép các chi tiết với nhau ta được robot hoàn chỉnh :

Trang 14

B CÁC CÔNG CỤ ĐỂ XÂY DỰNG BÀI TOÁN MÔ PHỎNG HOẠT

ĐỘNG CỦA ROBOT

1- Giới thiệu về phần mền OpenGL :

Để hiểu một cách cụ thể về công cụ đồ họa như OpenGL thì một câu hỏi được đặt ra

là : OpenGL là gì ? và tại sao lại sử dụng OpenGL cho bài toán mô phỏng

Hình 1.1 Logo OpenGL

OpenGL là chữ viết tắt của Open Graphic Library là 1 thư viện đồ họa tốc độ cao và

Trang 15

hãng Silicon Graphic Library Inc phát triển cho các WorkStation đồ họa tốc độ cao từnăm 1982.Sau đó từ năm 1992 thì OpenGL đã trở thành một chuẩn công nghiệp và đắctính kỹ thuật của OpenGL do ủy ban kỹ thuật ARB (Architectural Review Board ) phêchuẩn.

Trong công nghệ đồ họa động đang ngày càng được ứng dụng trong cuộc sống vàngày nay nó đã được phát triển tương đối mạnh mẽ ở Việt Nam.Trong kỹ thuật thì việc

sử dụng các ứng dụng của OpenGL cũng như DirectX vào việc mô phỏng các cơ cấumáy móc, các họat động của Rôbốt công nghiệp trước khi đem thử nghiệm bằng môhình thực là giải pháp mà rất nhiều kĩ sư cơ khí cũng như cũng như các viện nghiên cứulựa chọn do tính ưu việt của nó trong việc thể hiện các mô hình đồ họa động trongkhông gian 3 chiều (3D) Vì vậy trong phạm vi của đồ án này em chọn cách sử dụngOpenGL để xây dựng bài toán mô phỏng

2- Đặc điểm của OpenGL:

Các khả năng của thư viện OpenGL cung cấp.OpenGL là một thư viện đồ họa rất

lớn gồm khoảng 150 hàm hỗ trợ một số tính năng cơ bản sau:

2.1.Khả năng thể hiện các đối tượng đồ hoạ cơ bản.

OpenGL cũng có cách xây dựng các đối tượng theo cách riêng Trong OpenGL, mọiđối tượng hình học đều được mô tả cơ bản từ các vertex Vertex cũng có thể hiểu là mộtđiểm Cấu trúc này bao gồm bộ 4 số thực chỉ tọa độ trong không gian Để chỉ định mộtvertex, ta dùng:

glVertex{234}{sifd}[v](TYPEcoords);

Từ hình vẽ trên ta có thể thấy các trường khai báo có nội dung như sau:

[v] - véctơ chứa các phần tử là tọa độ của Vertex.

{sifd}- kiểu tham số của vector: Interger, float…

Trang 16

{234}- số phần tử của véctơ

Các đối tượng đồ hoạ cơ bản như điểm,đoạn thẳng,đa giác,các đường cong hay mặt cong bậc hai

GL_POINT Hàm này cung cấp các chức năng vẽ điểm (tức là từng

Vertex được vẽ riêng)GL_LINE Vẽ đường thẳng nối giữa 2 điểm ( Mỗi cặp vertex

được coi như 2 đầu một đoạn thẳng)

GL_LINE_STRIP Tập hợp của những đoạn thẳng nối với nhau ( Bộ 4

vertex xem như các đỉnh tứ giác (có lặp))GL_LINE_LOOP Đường gấp khúc khép kín(Như trên nhưng vertex đầu

và cuối được nối với nhau (lặp vòng))GL_TRIANGLES Vẽ hình tam giác.( Bộ 3 vertex được xem các đỉnh một

tam giác (không lặp))GL_QUADS Vẽ tứ giác.( Bộ 4 vertex được xem như 4 đỉnh 1 đa

giác (không lặp))GL_TRIANGLES_STRI

P

Vẽ tập hợp các tứ giác liền nhau chung một cạnh.( Bộ

3 vertex xem như các đỉnh tam giác (có lặp))GL_TRIANGLE_FAN Vẽ hình quạt.( Vertex 0 là đỉnh chung kết hợp cặp đỉnh

bất kỳ tạo tam giác)

2.2 Khả năng quan sát đối tượng.

Các đối tượng có thể quan sát từ nhiều góc độ khác nhau thông qua các phép biến đổi

vị trí mắt nhìn hay phép biến đổi vị trí vật cũng như các phép chiếu

2.3 Khả năng định màu sắc vật liệu đối tượng.

Có thể thể hiện màu sắc đối tượng một cách đa dạng và đặc biệt là khả năng thể hiệnthuộc tính vật liệu

Trang 17

2.4 Khả năng tạo hiệu ứng ánh sáng OpenGL trong chương trình mô phỏng.

Cho phép tạo ra hiệu ứng ánh sáng như trong thực tế tạo nên cảm giác thật cho các

mô hình và khung cảnh 3 chiều

2.5 Khả năng tạo khung cảnh mô phỏng thực tế OpenGL

Hỗ trợ các kỹ thuật tạo các khung cảnh giống với thực tế như kỹ thuật dán ảnh

(texture mapping ) để tạo các khung cảnh thực tế, kỹ thuật sương mù (fog) cho phép tạo

hiệu ứng hình ảnh mờ dần khi đối tượng chuyển động xa khỏi mắt nhìn

Kỹ thuật trộn màu (Blending) cho phép tạo các vật thể trong mờ có thể nhìn xuyên

qua được Kỹ thuật loại bỏ răng cưa (Antialiasing).Để tạo thành các Texture Mappingthì các lệnh như sau sẽ thực thi trong OpenGL

2.6 Khả năng cải thiện tốc độ OpenGL.

Cho phép cải thiện tốc độ hiển thị bằng kỹ thuật danh sách hiển thị (display list)

2.7 Khả năng chọn các đối tượng đồ hoạ (selection and hitting derect).

Kỹ thuật này cho phép chọn các đối tượng đồ hoạ 3 chiều và ứng dụng trong kỹ thuật

mô phỏng va chạm của các vật thể

3- Giới thiệu về ngôn ngữ lập trình Visual C ++ và các ứng dụng của MFC

Visual C++ là một trong các ngôn ngữ lập trình thuộc dòng Visual Studio của hãngMicrosoft, phát triển dựa trên nền tảng là ngôn ngữ lập trình hướng đối tượng C++.Visual C++ ra đời khoảng những năm 1990 và càng ngày càng được sử dụng rộng rãinhất là các ứng dụng trong kỹ thuật như là lập trình nhúng,lập trình điều khiển và lậptrình mô phỏng Việc tạo ra các giao diện phức tạp và trình bày đẹp đối với Visual C++

khá là đơn giản, và đây chính là thế mạnh của Visual C++ trong việc trợ giúp đắc lực chongười lập trình khi xây dựng những dự án lớn hoặc trong kỹ thuật lập trình hệ thống.MFC là lớp nền tảng của Microsoft (Microsoft Foundation Classes), là một công cụmạnh trong lập trình ứng dụng cho hầu hết các lĩnh vực vì nó có giao diện đáp ứng mọinhu cầu của người sử dụng trong việc thiết kế các giao diện của chương trình mô phỏng

Trang 18

C XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG

Các bước xây dựng bài toán mô phỏng gồm có:

- Cách tạo ra project MFC để thực hiện quá trình mô phỏng

- Khởi tạo các gói thư viện của OpenGL

- Thiết kế mô hình trên Solidworks

- Chuyển mô hình sang tệp tin *.STL

- Xây dựng Module đọc File *.STL

- Xây dựng chương trình hiển thị robot

- Mô phỏng trên OpenGL

1 Cách tạo ra project MFC để thực hiện quá trình mô phỏng :

Từ Giao diện của chương trình Visual Studio 2008 ta chọn File/New/Project

Trang 19

Lựa chọn như hình vẽ rồi chọn OK Xuất hiện box MFC Application Wizard Ở đây ta sẽ lựa chọn các tham số Sau khi ấn Next thì lựa chọn như hình vẽ Chú ý chọn Sigle document ở phần Application type

Trang 20

Một số lựa chọn đáng chú ý như hình vẽ dưới.

Trang 21

Tick bỏ phần Printing and print preview Ấn Next và chọn Finish

Có thể thấy rõ MFC đã làm gì cho ta Mặc dù chưa xây dựng code chương trìnhnhưng MFC đã cung cấp sẵn giao diện của một ứng dụng chuẩn trong môi trườngWindows.Mà Visual C++ là một ngôn ngữ lập trình hướng đối tượng, cho nên mọi ứngdụng đều được xây dựng trên cơ sở của các lớp

Chức năng của các lớp cơ sở của ứng dụng MFC như sau :

- CApp : là lớp ứng dụng (Applicatiton Class) có nhiệm vụ là khởi tạo và chạy ứngdụng

Trang 22

- CDoc : là lớp tài liệu (Document Class) của ứng dụng, có nhiệm vụ nạp và duy trì 1 tàiliệu Một tài liệu có thể là bất cứ cái gì,từ một bản thảo cho đến các việc cài đặt của mộtthiết bị mạng…Tuy nhiên, mục đích sử dụng của chương trình là mô phỏng nên khôngcần quan tâm nhiều đến lớp này.

- CView: là lớp hiển thị của ứng dụng (View Class),có nhiệm vụ cung cấp một haynhiều View (khung) cho tài liệu.Trong chương trình mô phỏng ta sẽ cần sử dụng rấtnhiều trong lớp này để khởi tạo cho OpenGL và các thao tác vẽ lại trên lớp này

- CmainFrame: là lớp khung (Frame Class) của ứng dụng và có nhiệm vụ hiển thị vàtruyền lệnh của người dùng

2 Khởi tạo và Thiết lập các gói thư viện của OpenGL

- Trong chương trình mô phỏng robot của báo cáo , chúng tôi có sử dụng 1 số hàm thư viện

có sẵn của những người đi trước giúp việc mô phỏng được giảm bớt đi phần nào đó

STL.H, STLdll.dll,stldll.lib - Header files : Chúng ta đặt các file này cùng với thư mục

void translate( const vector3f &trans);

void translate_x( const float &dist);

void translate_y( const float &dist);

Trang 23

void rotate( const float &angle, vector3f &axis);

void rotate_x( const float &angle);

void rotate_y( const float &angle);

void rotate_z( const float &angle);

void scale( const vector3f &scale);

void transformPoint( vector3f *vec );

void transformVector( vector3f *vec );

OpenGL.cpp , OpenGl.h - Hàm thư viện Open Gl Nó chứa 1 số hàm quan trọng như

OnTimer, hay DisplayFunction() ( hiện thị robot), Ondestroy , … Ở đây chúng ta sẽ chú ý những hàm như OnTimer hay DisplayFunction().

Trang 24

Như vậy chúng ta đã khởi tạo những thư viện hay các file liên quan để lập trình mô phỏng robot.

3 Thiết kế mô hình Robot trên SolidWorks 2007.

Khi thiết kế mô hình của Robot trên Solidwork thì một điều rất quan trọng là việcthiết lập các hệ tọa độ cho mô hình ban đầu để khi vẽ lại các chi tiết trên OpenGL thìcác chi tiết không bị nhảy lung tung Ở đây em chọn hệ tọa độ khi vẽ trên Solidworktrùng với các gốc tọa độ khi tính toán động học

4 Xây dựng Module đọc File *STL

4.1 Chuyển sang File *STL

+ Sau khi ta thiết kế mô hình của Robốt trên Solidworks thì công việc tiếp theo là ta sẽchuyển nó sang file có đuôi là *STL và xây dựng 1 chương trình để đọc cấu trúc củaFile *.STL và vẽ lại nó trên OpenGL

Trang 25

+ Cách chuyển sang file STL theo các bước như sau :

Bước 1 : Ta mở mô hình đã được thiết kế bằng Solidworks sau đó từ mục File -> Save

As

Sau đó sẽ hiện ra các lựa chọn như sau :

- Save in : là tên của Folder để chứa file *STL sau khi đã chuyển từ Solidwork sang.File name : là tên của File

Save type : ở đây ta chọn save lại là file dạng *STL 1 điều đáng chú ý ở đây là ta chọnnút Options để ta định dạng file *STL có dạng là mã ASCII như hình ở dưới

Bước 2 : Lựa chọn thư mục và kiểu file mà ta muốn chuyển

Bước 3 : Chọn file STL sau khi đã chuyển sang có dạng mã ASCII

Trang 26

Khi thực hiện bước này thì một điều rất quan trong là ta phải chọn vào : “Do not

translate STL output data to positive space ” để cho hệ tọa độ khi vẽ trong Solidworks

và khi chuyển sang file *STL không bị dịch chuyển

Bước 4 : Hoàn tất việc chuyển sang file *STL.

Ngày đăng: 10/03/2014, 07:20

Xem thêm

HÌNH ẢNH LIÊN QUAN

Hình 1.1     Logo  OpenGL - Do an CDT docx
Hình 1.1 Logo OpenGL (Trang 14)
w