Thiết Kế và Điều Khiển Robot Di Động Chuyển Hàng Lên Kệ

Tài liệu nghiên cứu Thiết kế và điều khiển robot di động chuyển hàng lên kệ, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về .

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2024

146
2
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: TỔNG QUAN

1.1. Mục tiêu nghiên cứu

1.2. Nội dung nghiên cứu

1.3. Giới hạn đề tài

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Mô hình toán học hệ hai bánh vi sai

2.1.1. Động học thuận hệ robot di động hai bánh vi sai

2.1.2. Động học nghịch hệ robot di động hai bánh vi sai

2.2. Giới thiệu về hệ điều hành dành cho robot

2.2.1. Tổng quan về hệ điều hành ROS

2.2.2. Các gói hỗ trợ trên ROS

2.3. Giới thiệu về SLAM

2.3.1. Cấu hình cosmap

2.3.2. Giới thiệu về lidar

2.3.3. Lập kế hoạch đường đi

2.3.3.1. Tìm hiểu về thuật toán Dijkstra
2.3.3.2. Tìm hiểu về thuật toán DWA

2.4. Các hình thức giao tiếp

2.4.1. Giao tiếp Ros Master

2.4.2. Giao tiếp UART

2.4.3. Giao thức RDP

2.4.4. Giao thức websocket

2.5. Tìm hiểu về Rosserial

2.6. Thuật toán PID

2.7. Phần mềm hỗ trợ mô phỏng trong ROS

3. CHƯƠNG 3: THIẾT KẾ HỆ THỐNG

3.1. Mô hình thiết kế trên Solidwork

3.1.1. Vi điều khiển

3.1.2. Máy tính nhúng

3.1.3. Webcam rapoo WX180 1080P

3.1.4. Cảm biến gia tốc IMU 6050

3.1.5. Mạch điều khiển L298N

3.1.6. Động cơ bước-Step motor

3.1.7. Cảm biến encoder

3.1.8. Các linh kiện khác

3.2. Sơ đồ kết nối hệ thống

3.3. Mô hình robot thực tế

3.4. Mô hình kệ hàng

4. CHƯƠNG 4: THỰC NGHIỆM VÀ THIẾT KẾ CHƯƠNG TRÌNH ĐIỀU KHIỂN

4.1. Lưu đồ giải thuật điều khiển

4.2. Xuất mô hình từ solidwork sang urdf

4.3. Kết nối Raspberry pi với laptop bằng Remote Desktop

4.4. Xây dựng bản đồ

4.5. Điều hướng cho robot

4.6. Thiết kế giao diện điều khiển robot bằng Internet

4.7. Ứng dụng xử lý ảnh

4.7.1. Hiệu chỉnh camera (Camera calibration)

4.7.2. Nhận diện mã đánh dấu

5. CHƯƠNG 5: KẾT QUẢ VÀ ĐÁNH GIÁ

5.1. Mô phỏng động học cho hệ robot hai bánh vi sai

5.2. Khảo sát độ ổn định PID

5.3. Kết quả chạy mô hình thực nghiệm từng bước

5.3.1. Điều hướng đến các vị trí trên bản đồ

5.3.2. Chạy điều hướng khi có vật cản cố định

5.3.3. Chạy điều hướng khi có vật cản bất ngờ

5.3.4. Kết quả xử lý ảnh

5.4. Kết quả chạy mô hình hoàn chỉnh

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

6.1. Kết luận

6.2. Hướng phát triển đề tài

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Thiết Kế Robot Di Động Chuyển Hàng Lên Kệ

Robot di động đã trở thành một phần quan trọng trong ngành công nghiệp hiện đại. Đặc biệt, việc thiết kế robot di động chuyển hàng lên kệ không chỉ giúp tối ưu hóa quy trình làm việc mà còn nâng cao hiệu suất lao động. Đồ án tốt nghiệp này sẽ trình bày chi tiết về quy trình thiết kế và ứng dụng của robot trong việc chuyển hàng lên kệ, từ đó giải quyết các vấn đề trong logistics.

1.1. Lịch Sử Phát Triển Robot Di Động

Robot di động đã trải qua nhiều giai đoạn phát triển từ những năm 1950. Các công nghệ mới như cảm biến lidar và hệ thống điều khiển ROS đã giúp cải thiện khả năng hoạt động của robot trong môi trường thực tế.

1.2. Ứng Dụng Của Robot Trong Ngành Logistics

Robot di động được ứng dụng rộng rãi trong ngành logistics, từ việc vận chuyển hàng hóa đến việc sắp xếp hàng hóa trên kệ. Điều này giúp giảm thiểu thời gian và chi phí lao động.

II. Vấn Đề Và Thách Thức Trong Thiết Kế Robot Di Động

Mặc dù có nhiều lợi ích, việc thiết kế robot di động chuyển hàng lên kệ cũng gặp phải nhiều thách thức. Các vấn đề như độ chính xác trong điều hướng, khả năng né vật cản và tính ổn định của robot là những yếu tố cần được xem xét kỹ lưỡng.

2.1. Độ Chính Xác Trong Điều Hướng

Độ chính xác trong điều hướng là yếu tố quan trọng để robot có thể thực hiện nhiệm vụ một cách hiệu quả. Việc sử dụng cảm biến lidar và thuật toán SLAM giúp cải thiện độ chính xác này.

2.2. Khả Năng Né Vật Cản

Robot cần có khả năng né vật cản một cách linh hoạt để đảm bảo an toàn trong quá trình di chuyển. Các thuật toán điều khiển và cảm biến là những yếu tố quyết định trong việc này.

III. Phương Pháp Thiết Kế Robot Di Động Chuyển Hàng

Để thiết kế một robot di động chuyển hàng lên kệ, cần áp dụng các phương pháp khoa học và công nghệ hiện đại. Việc sử dụng hệ thống điều khiển ROS và các cảm biến tiên tiến là rất cần thiết.

3.1. Sử Dụng Hệ Thống ROS

Hệ thống ROS cung cấp một nền tảng mạnh mẽ cho việc phát triển và điều khiển robot. Nó cho phép tích hợp nhiều cảm biến và thiết bị khác nhau, giúp robot hoạt động hiệu quả hơn.

3.2. Thiết Kế Cảm Biến Và Động Cơ

Việc lựa chọn cảm biến và động cơ phù hợp là rất quan trọng. Cảm biến lidar và động cơ bước là những lựa chọn phổ biến trong thiết kế robot di động.

IV. Kết Quả Nghiên Cứu Và Ứng Dụng Thực Tiễn

Kết quả nghiên cứu cho thấy robot di động có khả năng thực hiện nhiệm vụ chuyển hàng lên kệ một cách hiệu quả. Các thử nghiệm thực tế đã chứng minh tính khả thi của mô hình thiết kế.

4.1. Thử Nghiệm Thực Tế

Các thử nghiệm thực tế cho thấy robot có thể di chuyển và chuyển hàng lên kệ một cách chính xác. Điều này chứng tỏ rằng thiết kế đã đáp ứng được yêu cầu đề ra.

4.2. Đánh Giá Hiệu Quả Hoạt Động

Đánh giá hiệu quả hoạt động của robot cho thấy sự cải thiện rõ rệt trong quy trình logistics, giúp tiết kiệm thời gian và chi phí.

V. Kết Luận Và Hướng Phát Triển Tương Lai

Đồ án tốt nghiệp đã thành công trong việc thiết kế và điều khiển robot di động chuyển hàng lên kệ. Tuy nhiên, vẫn còn nhiều hướng phát triển tiềm năng cho tương lai, bao gồm việc cải thiện khả năng tự động hóa và tích hợp trí tuệ nhân tạo.

5.1. Hướng Phát Triển Công Nghệ Mới

Việc áp dụng công nghệ mới như trí tuệ nhân tạo và học máy có thể giúp robot hoạt động hiệu quả hơn trong tương lai.

5.2. Tích Hợp Hệ Thống Thông Minh

Tích hợp hệ thống thông minh vào robot sẽ giúp nâng cao khả năng tự động hóa và giảm thiểu sự can thiệp của con người trong quá trình vận hành.

10/07/2025
Thiết kế và điều khiển robot di động chuyển hàng lên kệ

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TỔNG QUAN - Nghiên cứu về nền tảng ROS, ứng dụng để mô phỏng Rviz, Gazebo và các thuật toán của robot di động. - Nghiên cứu về mô hình động học và PID cho động cơ. - Dùng phần mềm Solidword để thiết khiết kế mô hình robot. - Thiết kế giao diện điều khiển cho robot.

- Sử dụng máy tính nhúng Raspberry pi 4 để điều khiển từ xa cho robot. - Xây dựng bản đồ cho mobile robot. - Điều hướng robot đến mục tiêu có khả năng tìm đường đi và né vật cản.4 Giới hạn đề tài - Với hạn chế về mặt chi phí nên nhóm chỉ thiết kế mô hình nhỏ, phù hợp với các loại hàng nhẹ. - Do mô hình robot không có cảm biến tiệm cận phía sau nên khi robot đi lùi sẽ không phát hiện được vật cản, vì vậy khi chạy mô hình không có vật cản phía sau robot.

- Do thiết kế mô hình robot phù hợp với chức năng đề tài nên cảm biến lidar chỉ quét được 220 độ ( từ 110 độ đến -110 độ) ĐỒ ÁN TỐT NGHIỆP 4 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Chương 2 : CƠ SỞ LÝ THUYẾT 2.1 Mô hình toán học hệ hai bánh vi sai Vl Y X Vr Hình 2-1 Mô tả robot di động Differential Drive hệ non-holonomic Bằng cách thay đổi vận tốc của hai bánh xe, chúng ta có thể thay đổi quỹ đạo mà robot di chuyển. Khi quay quanh điểm ICC ta phải cấp vận tốc tương đương nhau cho cả hai động cơ. Tốc độ của bánh xe là v = 2 r / T , với T là thời gian để xe hoàn thành xoay quanh một vòng đối với điểm ICC,  là là vận tốc góc của robot được định nghĩa là 2 / T rad s. Kết hợp các phương trình cho v và  , ta có được phương trình sau: v = r (2.1) Với các đại lượng có trong hình 2.1 ta có các phương trình sau:  ( R + l / 2) = Vr (2.3) Với l là khoảng cách giữa hai trục bánh xe, Vr, Vl là vận tốc bánh phải và bánh trái được tính dựa trên xung đọc được từ encoder.

R là khoảng cách từ điểm ICC đến điểm chính giữa của trục hai bánh xe. Trong bất cứ thời điểm nào khi điều hướng, ta có thể tính được giá trị của R và  như sau: l V + Vr V − Vl R= .4) 2 Vr − Vl l ĐỒ ÁN TỐT NGHIỆP 5 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Động học thuận hệ robot di động hai bánh vi sai Trong Hình 2-1, giả sử rằng robot đang ở vị trí (x ,y ), hướng của robot là góc  tạo với trục X của hệ toạ độ, với trục X nằm dọc theo chiều dài robot. Khi có Vl và Vr được tính từ số xung encoder, kết hợp với công thức (2.4) ta có thể xác định được vị trí ICC như sau: ICCC =  x − R sin  , y + R cos   (2.5) Tại thời điểm t + t vị trí và hướng của robot là:  x  cos(t ) − sin(t ) 0  x − ICCx   ICCx   y  =  sin(t ) cos(t ) 0  y − ICC  +  ICC  (2.6)     y  y    0 0 1      t  Phương trình (2.6) mô tả chuyển động của robot quay quanh một khoảng R với tâm là ICC cùng với vận tốc góc góc . Để biễu diễn đơn giản động học thuận của hệ Differential Drive Robots, bài báo số [1] đã đưa ra phương trình sau:  x  v cos   cos  0 v q =  y  =  v sin   =  sin  0   (2.7)        0 1   Với q =  x y   , (x, y ) là vị trí của robot,  vẫn là góc quay quanh trục Z của robot, T tương ứng với góc lệch so với trục X của robot.

Giá trị v là vận tốc trung bình của robot được tính dựa trên công thức sau: Vr + Vl v= (2.8) 2 Giá trị của vận tốc góc  được tính dựa trên công thức: Vr − Vl = (2.9) l Tại thời điểm t + t vị trí và hướng của robot là: ĐỒ ÁN TỐT NGHIỆP 6 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT  x   x(t )   x   y  =  y (t )  +  y  t (2.2 Động học nghịch hệ robot di động hai bánh vi sai Ta có thể mô tả vị trí của robot theo một hướng cụ thể  (t ) với vận tốc v(t) là: x(t ) =  v(t ) cos  (t ) dt t (2.13) 0 Kết hợp với công thức (2.9) ta viết lại như sau: 1 t Vr (t ) + Vl (t ) cos  (t ) dt 2 0 x(t ) = (2.16) Bài toán động học nghịch là khi muốn robot tiến đến vị trí mục tiêu ( x,y,  ) và chúng ta cần cung cấp vận tốc cho từng bánh như thế nào để đạt được vị trí ấy. Tuy nhiên đối với robot Differential Drive Robots được gọi là hệ non-holonomic thì robot chỉ di chuyển theo phương X của robot mà không thể di chuyển theo phương Y. Và để robot dịch sang bên phải một đoạn thì sẽ không dễ dàng để di chuyển, điều đó tương tự như việc đỗ xe đòi hỏi một loạt các thao tác lái phức tạp. Vì vậy không hề đơn giản chỉ định một vị trí ( x,y,  ) cụ thể và tìm ra vận tốc đưa robot đến đó.

Đối với các trường hợp đặc biệt Vr = Vl = v (robot đi thẳng và hướng robot là 00 ) thì phương trình (2.6) được viết lại như sau:  x   x + v cos( )t   y  =  y + v sin( )t  (2.17)          ĐỒ ÁN TỐT NGHIỆP 7 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Nếu Vr = −Vl = v thì robot sẽ quay tại chỗ với tâm là điểm chính giữa trục nối hai bánh xe, phương trình (2.6) được viết lại như sau:    x  x   y =      y  (2.18)    2vt   +   l  Tóm lại, đối với hệ này, ta có các trường hợp đặc biệt đối với vận tốc từng bánh: 1. Nếu Vl = Vr ( Vl , Vr > 0) thì robot sẽ chuyển động tuyến tính theo đường thẳng về phía trước và ngược lại Vl = Vr ( Vl , Vr < 0) thì robot sẽ chuyển động về phía sau. Nếu Vl = −Vr thì robot sẽ xoay quanh điểm chính giữa trục của hai bánh xe, lúc này robot coi như xoay quanh tại chỗ. Nếu Vl  Vr thì robot sẽ di chuyển phía trước về hướng bên trái.Ngược lại, Vl  Vr robot sẽ di chuyển phía trước về hướng bên phải.

Nếu Vl = 0 và Vr  0 thì robot sẽ quanh quanh tâm tại bánh trái với bán kính là l / 2 , tương tự với trường hợp ngược lại.2 Giới thiệu về hệ điều hành dành cho robot 2.1 Tổng quan về hệ điều hành ROS ➢ ROS (Robot Operating System) là một bộ phần mềm trung gian mã nguồn mở (open– resoured) được phát triển nhằm hỗ trợ việc xây dựng và phát triển các ứng dụng robot. Được duy trì và phát triển bởi Open Robotics, ROS cung cấp một tập hợp các thư viện và công cụ để giúp các nhà phát triển tạo ra các ứng dụng robot phức tạp một cách dễ dàng và hiệu quả.[2] ➢ Các phiên bản của ros: • ROS1: Phiên bản gốc của ROS, được sử dụng rộng rãi trong nhiều ứng dụng robot. • ROS2: Phiên bản mới hơn của ROS, được thiết kế với mục tiêu cải thiện hiệu suất, tính bảo mật, và khả năng mở rộng, đồng thời hỗ trợ thời gian thực tốt hơn. ➢ Ứng dụng ros trong thực tiễn • Robot di động: ROS được sử dụng rộng rãi trong các dự án robot di động như robot tự hành, robot dịch vụ, và robot tìm kiếm cứu nạn.

ĐỒ ÁN TỐT NGHIỆP 8 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT • Cánh tay robot: Điều khiển và lập trình cánh tay robot trong các ứng dụng công nghiệp và nghiên cứu. • Drone: ROS cũng được sử dụng trong điều khiển và phát triển các ứng dụng drone. • Ứng dụng công nghiệp: ROS được áp dụng trong nhiều quy trình tự động hóa công nghiệp, từ sản xuất đến kiểm tra chất lượng. ➢ Ưu điểm để chọn ros làm nền tảng lập trình [3] High-end capabilities: ROS đi kèm với các gói như Simultaneous Localization and Mapping (SLAM) và Adaptive Monte Carlo Localization (AMCL), khả năng này của ROS giúp phát triển các ứng dụng robot hiện đại như xe tự hành, tự động hóa công nghiệp, và các lĩnh vực khác.

Tone of tools: Hệ sinh thái ROS có rất nhiều công cụ để gỡ lỗi, giám sát và mô phỏng. Các công cụ chẳng hạn như rqt_gui, Rviz và Gazebo sẽ được nhóm sử dụng trong quá trình thực đề tài. Support for high-end sensors and actuators: ROS có đa dạng các gói hỗ trợ nhiều loại cảm biến như 2D LIDAR, laser scanners, depth sensor,… cho phép các nhà phát triển robot tận dụng tối đa các cảm biến và cơ cấu chấp hành cao cấp, từ đó tạo ra các hệ thống robot thông minh và hiệu quả hơn. Inter-platform operability: Trong ROS có một thành phần trung gian giao tiếp giữa các gói, các chương trình với nhau gọi là nodes.

Các nodes này có thể được lập trình với nhiều ngôn ngữ như C++, Python, Java,… Modulary: Một trong những vấn đề có thể xảy ra trong hầu hết các robot độc lập là nếu bất kỳ luồng nào của code chính gặp sự cố thì toàn bộ robot có thể dừng lại. Trong ROS thì khác, mỗi quy trình sẽ được đại diện dưới mỗi nodes và các nodes này liên kết với nhau thông qua các topic và nếu một trong số node này bị dừng thì hệ thống vẫn có thể hoạt động và trong lúc đó vẫn có thể tiến hành khắc phục sự cố node đó. ROS chủ yếu được chia thành 3 cấp độ ROS Filesystem Level.[4] ĐỒ ÁN TỐT NGHIỆP 9 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Hình 2-2 ROS filesystem level Filesystem chủ yếu là các nguồn tài nguyên của ROS được thực thi trên bộ nhớ lưu trữ hệ thống,bao gồm: Packages: Một package là một thư mục chứa các chương trình (executable files) và tệp hỗ trợ phục vụ cho một mục đích cụ thể ví dụ như các nodes, các thư viện, các file hoặc bất cứ file nào cho việc tổ chức.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Thiết Kế Robot Di Động Chuyển Hàng Lên Kệ: Đồ Án Tốt Nghiệp Ngành Công Nghệ Kỹ Thuật Điều Khiển" trình bày một dự án tốt nghiệp thú vị, tập trung vào việc phát triển một robot di động có khả năng tự động chuyển hàng lên kệ. Dự án không chỉ cung cấp cái nhìn sâu sắc về các công nghệ điều khiển hiện đại mà còn nhấn mạnh tầm quan trọng của tự động hóa trong ngành logistics. Độc giả sẽ được khám phá các phương pháp thiết kế, lập trình và tối ưu hóa robot, từ đó hiểu rõ hơn về cách mà công nghệ có thể cải thiện hiệu suất làm việc trong kho bãi.

Để mở rộng kiến thức của bạn về lĩnh vực này, bạn có thể tham khảo thêm tài liệu Luận văn thạc sĩ hcmute nghiên cứu ứng dụng công nghệ quét laser 2d trong định vị robot tiếp tân, nơi bạn sẽ tìm hiểu về công nghệ quét laser và ứng dụng của nó trong việc định vị robot. Bên cạnh đó, tài liệu Luận văn thạc sĩ tự động hóa điều khiển hệ thống camera ổn định hai trục sẽ giúp bạn nắm bắt cách thức điều khiển camera trong các hệ thống tự động. Cuối cùng, tài liệu Điều khiển động cơ servo chạy theo vị trí sẽ cung cấp cho bạn kiến thức về điều khiển động cơ, một phần quan trọng trong việc phát triển robot.

Những tài liệu này không chỉ bổ sung cho kiến thức của bạn mà còn mở ra nhiều hướng nghiên cứu và ứng dụng mới trong lĩnh vực công nghệ robot.