In nhựa 3D các chi tiết chính

Một phần của tài liệu đồ án tốt nghiệp đề tàithiết kế và điều khiển robot linh hoạt 7 bậc tự do (Trang 49)

Toàn bộ phần thân mô hình Robot của nhóm sử dụng công nghệ in 3D để hoàn thiện mô hình. Các chi tiết của mô hình sau khi sử dụng Solidworks để thiết kế được xuất file để in 3D theo các bước sau:

Bước 1: Thiết kế 3D cho chi tiết với số liệu thật cần cho hệ thống

Hình 4.3:Chi tiết cần được thi công.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

Hình 4.4:Lưu chi tiết với định dạng STL

Bước 3: Gửi file tới các tiệm in 3D để gia công các chi tiết đó.

Sau khi công việc chuẩn bị các nguyên vật liệu cần thiết đã hoàn tất, nhóm bắt đầu test thử thành phẩm một số chi tiết và tiến hành lắp đặt mô hình. Quá trình lắp ráp Robot bắt đầu từ lần lượt từ các khớp ở dưới lên:

Hình 4.5:Lắp đặt hoàn thiện khớp 1 và khớp 2

Song song với việc thi công từng khớp là công đoạn test thử tải và chỉnh sửa bản thiết kế các khớp tiếp theo cho phù hợp với một số chi tiết phát sinh ở phần cứng các khớp trước đó.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

BỘ MÔN ĐIỆN TỰ ĐỘNG ĐIỀU KHIỂN

Hình 4.6:Lắp đặt hoàn thiện khớp 3 và khớp 4

Hình 4.7:Hoàn thiện mô hình cánh tay Robot 7 bậc

Tuy mô hình của nhóm có sự thiết kế khá phức tạp và đòi hỏi sự khéo léo trong thi công, nhưng đã tạo nên được độ độc đáo về tính nhỏ gọn, tính chắn chắn và thẩm mỹ, và đặc biệt là tối thiểu độ rơ khi chuyển động.

4.2. Xây dựng hệ hai camera.

Camera sẽ được lắp trên cao nhìn xuống không gian làm việc để có thể có được góc nhìn rộng và độ chắc chắc. Lấy gốc tọa độ Robot làm chuẩn, hai camera sẽ có các thông số lắp đặt như sau:

Cam1 Cam2 Đơn vị

Vị trí

x 0.2 0.39 m

y 0 0 m

CHƯƠNG 4. THI CÔNG HỆ THỐNG Góc xoay so với

hệ trục gốc  -180 -180 Độ  13.65 -7.66 Độ  0 0 Độ Hình 4.8:Mô hình camera 4.3. Xây dựng phần mềm.

4.3.1. Giao diện điều khiển và giám sát

Giao diện giám sát và điều khiển trên máy tính được thiết kế bằng phần mềm Qt Creator để giúp người điều khiển dễ dàng tiếp cận, tương tác với Robot. Trong giao diện sẽ được chia thành hai khu vực chính bao gồm:

• Khu vực điều khiển với các chức năng chuyên biệt.

• Khu vực giám sát hành vi của Robot sẽ hiển thị cụ thể mô hình Robot trong không gian 3 chiều và các thông số về vị trí, góc của từng khớp Robot, các thông số này luôn được cập nhật theo thời gian thực.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

BỘ MÔN ĐIỆN TỰ ĐỘNG ĐIỀU KHIỂN

Hình 4.9:Tổng quan giao diện.

Trong phần điều khiển, người điều hành sẽ được lựa chọn các chế độ điều khiển các chế độ điều khiển khác nhau trong menu chính, có thể bật tắt các camera, thiết lập kết nối tới Arduino (vi xử lý dùng cho Robot), tùy chỉnh thay đổi các thông số nội trong giải thuật điều khiển và xem lại các cảnh báo trong quá trình cài đặt.

Cụ thể từng phần được mô tả như sau:

- Phần “Forward kinematics”: Phần này cho phép người điều khiển nhập các góc mong muốn cho từng khớp, theo đơn vị là độ và nhập vào thời gian để Robot hoàn tất thao tác trên. Người dùng có thể nhấn nút “Preview” để xem trước hình dáng Robot trong mô hình và nhấn nút “Run” để bắt đầu chạy.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

- Phần “Inverse kinematics”: Phần này cho phép người dùng nhập vị trí mong muốn trong không gian 3 chiều để đưa Robot tới vị trí đó, tính theo đơn vị mét, theo hệ trục tọa độ gốc đặt cho Robot và nhập vào thời gian hoàn tất thao tác di chuyển. Sau khi nhập xong các thông số vị trí và thời gian, người dùng nhấn vào nút “Find the Angles” thể hệ thống tính toán các góc và hiển thị lên bảng giá trị bên phải. Người dùng có thể nhấn nút “Preview” để xem trước tư thế trong mô hình bên phải và nhấn nút “Run” để bắt đầu quá trình chạy.

Hình 4.11:Chức năng điều khiển theo động học nghịch

- Phần “Control picking and Dropping objects”: Phần cho phép điều khiển gắp và thả vật ở các vị trí mong muốn được nhập trong 2 bảng tương ứng “Pick objects” và “Drop objects” (nếu có bật tính năng “Camera” để nhận diện vị trí của vật thì hệ thống sẽ tự động cập nhật vị trí của vật vào bảng “Pick objects”). Người dùng có thể nhấn nút “Run” để bắt đầu quá trình chạy và nhấn nút “Stop” để kết thúc quá trình.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

BỘ MÔN ĐIỆN TỰ ĐỘNG ĐIỀU KHIỂN

Hình 4.12:Chức năng điều khiển gắp vật cơ bản

- Phần “Pick and Drop objects & avoiding obstacles”: Phần này cũng tương tự như phần gắp thả vật như trên nhưng có bổ sung thêm tính năng tránh vật cản đường nhờ có nhận diện bằng camera. Quá trình hoạt động này của Robot sẽ được đều khiển theo thuật toán thông minh đã đề cập ở cơ sở lý thuyết, tự động phát hiện và tránh các vật cản do hai camera nhận biết được.

Hình 4.13:Chức năng điều khiển gắp vật nâng cao

- Phần “Camera Calibration”: Phần này cho phép người dùng khởi động camera thông qua nút “Start”. Thông số về tọa độ vật sẽ được hiển trong bảng “Object position” và thông số về tọa độ vật cản sẽ được hiển trong bảng “Obstacle location” và vị trí của chúng cũng sẽ được hiển trị trong mô hình không gian 3 chiều bên phải với các màu sắc tương ứng. Nếu

CHƯƠNG 4. THI CÔNG HỆ THỐNG

nhấn vào nút “Cam view” thì cửa sổ sẽ được mở rộng thêm về bên phải và hiển thị hình ảnh thu được từ 2 cam, nếu không cần thiết có thể đóng phần hiển thị này lại.

Hình 4.14:a. Chức năng nhận diện vật b. Phần hiển thị hình ảnh

- Phần “Connect with Arduino”: Phần này kết nối giao diện với Arduino (vi điều khiển của Robot). Người dùng có thể tùy chọn tốc độ kết nối và cổng kết nối trong qua 2 mục hiển thị “Baud Rate” and “COM port”. Tiến hành kết nối và ngắt kết nối với 2 nút “Connect” và “Disconnect”.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

BỘ MÔN ĐIỆN TỰ ĐỘNG ĐIỀU KHIỂN

Hình 4.15:Chức năng kết nối tới vi điều khiển

- Phần “System Parameter”: Phần này cho phép người dung quản lý các thông số nội trong quá trình điều khiển. Trong đó, người dùng có thể thay đổi các giới hạn về các khớp của Robot, cho phép thay đổi thông số về hướng hoạt động của điểm đầu cuối, điều chỉnh vị trí, kích thước của điểm đầu cuối nếu có thay đổi kẹp gắp và điều chỉnh giới hạn về sai số trong quá trình tính toán giúp cải thiện độ chính xác hoặc tăng tốc thời gian xử lý các thuật toán.

Hình 4.16:Chức năng thiết lập chỉnh sửa các thông số hệ thống

- Phần “System history”: Phần này sẽ lưu lại các cảnh báo hoặc lỗi trong quá trình hoạt động. Trong bảng cũng sẽ có các chú thích rõ rõ ràng về

CHƯƠNG 4. THI CÔNG HỆ THỐNG

ngày tháng, thời gian và tên của các sự kiện, cảnh báo diễn ra giúp người điều khiển dễ dàng quản lý.

Hình 4.17:Chức năng lưu lại lịch sử thông báo của hệ thống

- Phần “Model Robot”: Phần này sẽ hiển thị mô hình hoạt động của Robot trong không gian 3 chiều. Các điểm màu vàng thể hiện vị trí của vật cần gắp, điểm màu đỏ thể hiện vị trí của vật cản và điểm màu xanh là thể hiện vị trí nơi thả vật. Ngoài ra có thể mở rộng góc nhìn ra bằng các nhấn vào nút “More” bên góc trên bên trái để hiển thị các hình chiếu 3 mặt của mô hình giúp người dùng tiện quan sát.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

BỘ MÔN ĐIỆN TỰ ĐỘNG ĐIỀU KHIỂN

Hình 4.18: Phần hiển thị Robot

Hình 4.19: Phần mở rộng quan sát 3 chiều

- Phần khung ở bên dưới cùng giao diện dùng để hiển thị các thông số về vị trí điểm đầu cuối và giá trị các góc khớp trong quá trình hoạt động.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

Hình 4.20:Phần hiển thị thông số thực của Robot

Trong quá trình làm việc nếu có bất gì sự cố gì xảy ra, giao diện sẽ xuất ra một cửa sổ Pop-up để thông báo. Các thông báo này sẽ có các dạng như “Warning”, “Error”, “Questions”, …nhằm cảnh báo lỗi khi động cơ quá tải hoặc là cảnh báo khi nhập sai dữ kiệu điều khiển. Tất cả các cảnh báo Pop-up đều sẽ được lưu lại trong Mục “History” với ngày, giờ và tên cụ thể của các sự kiện.

Hình 4.21:Các hộp thoại trong quá trình sử dụng.

4.3.2. Nhận diện vị trí vật từ camera

Sau khi đã hiệu chỉnh dựa theo thuật toán đã nêu ở cơ sở lý thuyết, hai camera sẽ trả về tọa độ vị trí của vật cần nhận diện (vật cần gắp hoặc vật cản) trong không gian hoạt động của Robot. Tọa độ này sẽ được gửi đến máy tính và hiển thị lên giao diện trong khu vực hiển thị mô hình Robot để có thể tương tác trực tiếp. Vị trí của các vật sẽ được đánh đấu hiển thị bằng các dấu chấm màu trong không gian Oxyz.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

BỘ MÔN ĐIỆN TỰ ĐỘNG ĐIỀU KHIỂN

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

Chương 5. KẾT QUẢ THỰC HIỆN

5.1. Mô phỏng kiểm chứng bằng Matlab. 5.1.1. Động học thuận.

Để mô phỏng động học thuận ta lấy các thông số về phần cứng sẵn có như mô hình thực về chiều dài đề cập trong Bảng 2.2 và các vị trí góc đầu vào như sau:

Bảng 5.1: Thông số đặt các khớp

Khớp Giá trị Đơn vị

1 0 Độ 2 45 Độ 3 0 Độ 4 90 Độ 5 0 Độ 6 45 Độ 7 90 Độ

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN

Với kết quả mô phỏng trên matlab ta có thể biết được tọa độ vị trí đầu cuối của Robot là x = 0.305 m, y = 0 và z = -0.046 m. Tư thế Robot và góc đo trả về cho biết kết quả mô phỏng là chính xác.

5.1.2. Động học nghịch.

Các thông số về Robot được dùng để giải động học nghịch vẫn giống như phần động học thuận sử dụng ở trên, tiếp theo ta cung cấp cho bộ giải nghịch vị trí và hướng của điểm đầu cuối như sau:

Bảng 5.2: Nhập các giá trị vị trí ban đầu

Thông số Giá trị Đơn vị

Vị trí

x 0.2 m

y 0.3 m

z -0.1 m

Góc xoay so với hệ trục gốc  180 Độ  0 Độ  0 Độ Kết quả mô phỏng: Hình 5.2:Mô phỏng kiểm chứng động học nghịch.

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

Hình 5.3:Giá trị các góc sau khi giải động học nghịch.

Để kiểm tra tính chính xác của kết quả các góc tính ra như trong hình 5.3, ta thay ngược giá trị góc tính ra lên bộ giải động học thuận ở phía trên, kết quả tính ra như sau:

Hình 5.4:Kiểm tra kết quả giải động học nghịch.

Như vậy vị trí điểm đầu cuối tính ra là x = 0.2 m, y = 0.3 m và z = -0.1 m, trùng với đầu vào mong muốn ở trên nên kết quả mô phỏng giải nghịch là chính xác.

Có thể thấy, với một điểm làm việc mong muốn, bộ giải động học nghịch có thể tính ra một bộ nghiệm bất kỳ trong vô số các bộ nghiệm, và tư thế bộ nghiệm này có thể tùy chỉnh nhờ vào việc chỉnh các thông số cập nhật hoặc thêm điều kiện cập nhật, tạo điều kiện thuận lợi cho việc cung cấp tín hiệu chạy online kết hợp với bộ điều khiển.

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN

5.2. Chạy thực nghiệm động học nghịch Robot

Sau khi đã giải quyết chính xác bài toán động học nghịch, nhóm sẽ tiến hành nạp chương trình Arduino để điều khiển mô hình Robot chạy thực nghiệm, chương trình điều khiển được thể hiện trong phần phụ lục. Các góc sau khi tính ra sẽ đem làm đầu vào của bộ quy hoạch quỹ đạo cho Robot, đầu ra của quy hoạch qũy đạo sẽ là tín hiệu điều khiển chuyển động cho Robot.

Hình 5.5:Home của Robot.

Bảng 5.3: Nhập các giá trị điểm làm viêc mong muốn

Thông số Giá trị Đơn vị

Vị trí

x 0.43 m

y 0 m

z -0.16 m

Góc xoay so với hệ trục gốc

 180 Độ

 0 Độ

 0 Độ

Sau khi đã kiểm tra đầy đủ mọi yêu cầu về điện, ta tiến hành nạp code chạy phát xung mô hình Robot lần 1:

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

Hình 5.6:Góc nhìn cạnh sau khi chạy nghịch lần 1.

Chạy lần 2: thử với một hướng khác của vị trí điểm đầu cuối đó

90 ,o 0, 0

 =  =  = cho ra kết quả như sau:

Hình 5.7:Góc nhìn mặt và cạnh sau khi chạy nghịch lần 2.

Nhận xét: Cả hai lần chạy thời gian đáp ứng vào khoảng 15 s, tuy đáp ứng của hệ thống không được nhanh nhưng với giá trị các góc phản hồi về tính ra cho thấy hai trường hợp chạy đều đến cùng 1 vị trí với hai hướng đúng như mong muốn đặt ra.

5.3. Chạy mô phỏng Robot né vật cản.

Do đại dịch Covid19 ập đến quá bất ngờ, nên nhóm không thể tiếp cận với mô hình thực nghiệm và nhóm đã quyết định mô phỏng thực tế ảo khả năng né vật của Robot lên giao diện, vị trí vật cản và vật gắp chính là tín hiệu thực đọc từ camera trả về.

Ta quy ước điểm màu vàng là vật gắp, điểm màu đỏ là vật cản và được nhóm điều chỉnh tiến tới Robot bằng tay phía bên ngoài. Điểm làm việc mong muốn là: x = 0.3 m,

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN

Hình 5.8:Mô hình làm việc với vật cản nằm ngoài phạm vi ảnh hưởng.

Hình 5.9:Mô hình làm việc đồng thời né vật cản ở phần thân Robot.

Qua kết quả mô phỏng có thể thấy Robot vẫn có khả năng làm việc trong khi có vật cản tác dụng lên phần thân trên, giá trị vị trí và hướng điểm đầu cuối trả về trong hình 5.9 cho thấy sự sai lệch là không đáng kể cả khi bị tác động. Đây chính là minh chứng cho tính linh hoạt khi làm việc, là đặc điểm làm rõ nhất ứng dụng của mô hình Robot 7 bậc tự do này so với những Robot ít bậc tự do khác.

Trong trường hợp tiếp theo, nhóm sẽ đưa vật cản màu đỏ lại gần điểm làm việc màu vàng để tiếp tục thử nghiệm khả năng tránh né của Robot.

CHƯƠNG 5. KẾT QUẢ THỰC HIỆN

Hình 5.10:Mô hình làm việc với vật cản nằm ngoài phạm vi ảnh hưởng.

Hình 5.11:Mô hình né vật cản tại điểm đầu cuối Robot.

Kết quả chạy trong hình 5.11 cho thấy khi vật cản tiến lại gần điểm làm việc của Robot thì điểm đầu cuối sẽ di chuyển ra xa điểm làm việc. Điều này cho thấy thuật toán sẽ ưu tiên việc tránh vật cản hơn đáp ứng yêu cầu điều khiển giúp bảo vệ Robot tốt hơn trong các điều kiện làm việc phức tạp, nhiều chướng ngại vật di động trong không gian làm việc.

CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN

Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

6.1. Kết luận.

Nhìn chung các mục tiêu đã đề ra từ đầu đã được giải quyết:

• Tính toán, mô phỏng động học nghịch của Robot trên phần mềm Matlab.

• Thiết kế, chế tạo và lắp ráp hoàn thiện mô hình thực nghiệm Robot 7 bậc tự do.

• Điều khiển được các khớp Robot 7-DOF chính xác vị trí cho trước với tính linh hoạt khi làm việc.

• Nhận diện vị trí vật bằng camera.

• Thực hiện thiết kế giao diện giám sát và điều khiển trên Qt creator

• Nghiên cứu và sử dụng Board vi điều khiển Arduino Due kết hợp với các ngoại vi.

• Nghiên cứu và sử dụng bộ động cơ AC servo Mitsubishi J3

Một phần của tài liệu đồ án tốt nghiệp đề tàithiết kế và điều khiển robot linh hoạt 7 bậc tự do (Trang 49)

Tải bản đầy đủ (PDF)

(80 trang)