1. Trang chủ
  2. » Giáo Dục - Đào Tạo

ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ, THI CÔNG VÀ LẬP TRÌNH ROBOT 4 CHÂN ĐIỀU KHIỂN QUA ỨNG DỤNG TRÊN ĐIỆN THOẠI KẾT HỢP NẠP FIRMWARE TỪ XA BẰNG WIFI

79 54 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 79
Dung lượng 4,26 MB

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

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (16)
    • 1.1. Đặt vấn đề (16)
    • 1.2. Mục tiêu đề tài (16)
    • 1.3. Giới hạn đề tài (17)
    • 1.4. Nội dung đề tài (17)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (18)
    • 2.1. Động học robot (18)
      • 2.1.1. Giới thiệu chung (18)
      • 2.1.2. Bộ thông số Denavit – Hartenberg (DH) (19)
      • 2.1.3. Bài toán động học thuận robot (0)
      • 2.1.4. Bài toán động học nghịch robot (0)
    • 2.2. Phương pháp điều khiển thân giữa của robot (28)
  • CHƯƠNG 3: THIẾT KẾ PHẦN CỨNG (31)
    • 3.1. Thiết kế cơ khí robot 4 chân (31)
      • 3.1.1. Giới thiệu phần mềm Solidworks (31)
      • 3.1.2. Vật liệu thiết kế và ý tưởng mô hình (0)
    • 3.2. Thiết kế mạch điện tử (38)
      • 3.2.1. Giới thiệu (38)
      • 3.2.2. Sơ đồ khối phần cứng (38)
      • 3.2.3. Nguyên lý làm việc (39)
      • 3.2.4. Thông số kỹ thuật của các linh kiện (39)
      • 3.2.5. Sơ đồ nguyên lý (44)
      • 3.2.6. Sơ đồ mạch in (46)
  • CHƯƠNG 4: THIẾT KẾ APP ĐIỀU KHIỂN ROBOT (48)
    • 4.1. Thiết kế giao diện điều khiển trên Android Studio (48)
      • 4.1.1. Sơ lược về Android Studio (48)
      • 4.1.2. Cấu trúc dự án Android Studio (0)
      • 4.1.3. Giao diện người dùng (49)
    • 4.2. Thiết kế app điều khiển trên MIT App Inventor (64)
      • 4.2.1. Giao diện người dùng của app (64)
      • 4.2.2. Giao diện lập trình (65)
  • CHƯƠNG 5: NẠP FIRMWARE CHO ROBOT 4 CHÂN TỪ XA BẰNG WIFI (69)
    • 5.1. Giới thiệu về FOTA (Firmware Over The Air) (69)
    • 5.2. Thiết lập trên OTA Drive và nạp Firmware từ cho robot 4 chân (70)
    • 5.3. Lưu đồ điều khiển robot 4 chân (75)
  • CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (77)
    • 6.1. Kết luận (77)
      • 6.1.1. Những công việc đã thực hiện (0)
      • 6.1.2. Những mặt hạn chế (77)
    • 6.2. Hướng phát triển (78)
  • TÀI LIỆU THAM KHẢO (79)

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM KHOA ĐIỆN ĐIỆN TỬ BỘ MÔN ĐIỆN CÔNG NGHIỆP  ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ, THI CÔNG VÀ LẬP TRÌNH ROBOT 4 CHÂN ĐIỀU KHIỂN QUA ỨNG DỤNG TRÊN.

TỔNG QUAN

Đặt vấn đề

Trong thời kỳ công nghiệp hóa và hiện đại hóa đất nước, cùng với xu hướng hội nhập và phát triển toàn diện của con người trên mọi lĩnh vực, robot ngày càng đóng vai trò then chốt Lịch sử khoa học và công nghệ ghi nhận những bước phát triển quan trọng và các phát minh công nghệ tạo ra những đột phá, trong đó khái niệm và ứng dụng của robot chiếm vị trí ngày càng cao Nhờ sự tiến bộ của tự động hóa và tốc độ xử lý nhanh, robot mang lại lợi thế kinh tế vượt trội trong đời sống hàng ngày và các ứng dụng công nghiệp, làm gia tăng năng suất, tối ưu chi phí và nâng cao chất lượng sản phẩm, từ đó thúc đẩy sự tăng trưởng bền vững của nền kinh tế.

Giáo dục STEM đã trở thành khái niệm quen thuộc với học sinh, sinh viên và việc ứng dụng robot giáo dục vào STEM ngày càng phổ biến, phục vụ truyền tải các môn khoa học, kỹ thuật, toán học và một chút nghệ thuật một cách sinh động Phương pháp này áp dụng cách tiếp cận liên môn và có thể giúp giải quyết các vấn đề trong cuộc sống hàng ngày Bên cạnh đó, robot giáo dục đã và đang khơi dậy niềm đam mê lập trình cùng khả năng sáng tạo của học sinh, sinh viên Vì vậy nhóm đã nghiên cứu và chọn đề tài: “Thiết kế, thi công và lập trình robot 4 chân điều khiển qua ứng dụng trên điện thoại kết hợp nạp Firmware từ xa bằng WiFi”.

Mục tiêu đề tài

Robot 4 chân là 1 hệ thống cần có sự phối hợp hài hòa và hợp lý giữa 3 phần: cơ khí, mạch điện và điều khiển, do đó đề tài gồm có các nội dung chính sau:

• Thiết kế mô hình robot 4 chân trên phần mềm Solidworks

• Thiết kế mạch điện điều khiển 12 Servo của robot 4 chân trên phần mềm Eagle

• Nghiên cứu phương pháp tính động học thuận, động học nghịch của robot 4 chân

• Xây dựng các vị trí đặt chân, dáng di chuyển của robot 4 chân

• Thiết kế app điện thoại điều khiển robot 4 chân qua Bluetooth

• Lập trình nạp Firmware qua WiFi cho mạch điều khiển của robot 4 chân mà không cần dây kết nối

Giới hạn đề tài

Đề tài có những giới hạn như sau:

• Robot 4 chân với mỗi chân sử dụng 3 động cơ RC servo Vì động cơ chỉ quay được

180 ○ nên ta chỉ xét các dáng đi mà robot bốn chân có khả năng di chuyển được

• Robot chỉ di chuyển không ràng buộc với mặt phẳng nằm ngang

• Robot không sử dụng cảm biến gia tốc đặt tại thân và các cảm biến lực ở mỗi bàn chân của robot

• Điều khiển robot 4 chân qua app trên điện thoại khi có kết nối Bluetooth

• Chỉ nạp được Fimware không dây khi có Wifi.

Nội dung đề tài

Đề tài “Thiết kế, thi công và lập trình robot 4 chân điều khiển qua ứng dụng trên điện thoại kết hợp nạp Firmware từ xa bằng WiFi” được trình bày từ lý thuyết đến ứng dụng nhằm cung cấp một khung khảo sát đầy đủ cho quá trình thiết kế và triển khai; bài viết đi từ các khía cạnh lý thuyết về cấu trúc, động học và hệ thống điện – điện tử của robot 4 chân sang phần thiết kế cơ khí, tích hợp điều khiển và lập trình để phục vụ việc điều khiển qua ứng dụng trên điện thoại thông minh; mỗi vấn đề trong bài sẽ được trình bày qua từng chương, từ phân tích yêu cầu, lựa chọn phần cứng và xây dựng sơ đồ hệ thống đến cách kết nối và tương tác với ứng dụng di động, cùng với cơ chế nạp Firmware từ xa bằng WiFi nhằm cập nhật phần mềm an toàn và hiệu quả.

Chương 1: Tổng quan: Trình bày tổng quan sơ bộ về các yêu cầu của cuốn báo cáo như đặt vấn đề, mục tiêu, giới hạn và nội dung đề tài

Chương 2: Cơ sở lý thuyết: Trình bày phương pháp tính động học thuận, động học nghịch, điều khiển thân giữa robot

Chương 3: Thiết kế phần cứng: Trình bày về thiết kế cơ khí robot 4 chân trên

SolidWorks và thiết kế mạch điện điều khiển 12 Servo của robot 4 chân trên Eagle

Chương 4: Thiết kế app điều khiển robot: Trình bày thiết kế app điều khiển robot

4 chân qua Bluetooth trên Android Studio và Mit App Inventor

Chương 5: Nạp Firmware cho robot 4 chân từ xa bằng WiFi: Trình bày quá trình setup và tiến hành nạp Firmware cho robot 4 chân từ bằng WiFi

Chương 6: Kết luận và hướng phát triển: Trình bày kết quả mà nhóm đã đạt được trong quá trình nghiên cứu, những hạn chế và đưa ra hướng phát triển cho đề tài

CƠ SỞ LÝ THUYẾT

Động học robot

2.1.1 Giới thiệu chung Động học của robot rất cần thiết để mô tả vị trí, hướng cũng như chuyển động của tất cả khớp nối, cùng với mô hình động lực học là yếu tố quan trọng để phân tích và tổng hợp các hành động của robot Nghiên cứu về động học của robot là bước quan trọng để điều khiển sự chuyển động của robot Bất kỳ một robot nào cũng có thể coi là một tập hợp các khâu (links) gắn liền với các khớp (joints)

Hình 2.1 Mô hình một chân của Robot

Ta gắn mỗi khâu của robot với một hệ tọa độ riêng và dùng các phép biến đổi thuần nhất để mô tả vị trí tương đối và hướng giữa các hệ tọa độ này một cách nhất quán thông qua các bài toán động học Động học nghiên cứu chuyển động của các khớp robot ở khía cạnh hình học, không xem xét đến lực và moment gây ra chuyển động Động học thuận và động học nghịch là hai nội dung cốt lõi trong bài toán động học: động học thuận cho biết vị trí của robot từ các góc quay của các khâu, còn động học nghịch ngược lại, từ vị trí cuối cùng của robot ta suy ra các góc quay của các khớp tương ứng.

Hình 2.2 Bài toán động học thuận, động học nghịch

2.1.2 Bộ thông số Denavit – Hartenberg (DH)

Nhóm em lựa chọn và áp dụng thuật toán Denavit–Hartenberg để phân tích động học của robot 4 chân Cấu trúc đối xứng của hệ cho thấy mỗi chân có ba bậc tự do (DOF), giúp mô hình hóa chuyển động một cách chính xác và nhất quán Bằng cách sử dụng ma trận biến đổi Denavit–Hartenberg, chúng em xây dựng hệ tham số liên kết và mô hình hóa vị trí, hướng cùng vận tốc của các khớp theo chuỗi liên kết, từ đó giải bài toán động học phía trước Mục tiêu là xác định đầy đủ tham số DH cho từng liên kết để phục vụ cho tối ưu hóa điều khiển và phân tích động học của robot bốn chân.

Một robot gồm nhiều khâu liên kết với nhau thông qua các khớp động, tạo thành một chuỗi khâu nối tiếp nhau Gốc chuẩn (Base) của robot được định nghĩa là khâu số 0 và không tính vào tổng số khâu của hệ thống Mỗi khâu từ 1 trở đi được đánh số theo trình tự để dễ dàng mô tả trạng thái, vị trí và hướng của từng phần so với gốc, phục vụ cho việc mô hình hóa động học và điều khiển robot một cách hiệu quả.

1 nối với khâu chuẩn bởi khớp 1 và không có khớp ở đầu mút của khâu cuối cùng Bộ thông số D-H gồm có 4 thông số:

• Độ dài pháp tuyến chung: an – là chiều dài đường vuông góc chung của 2 trục z

• Góc xoắn hay góc giữa các trục trong mặt phẳng vuông góc với an : αn

Hình 2.3 Góc xoắn và chiều dài của một khâu

• Khoảng cách giữa các pháp tuyến đo dọc theo trục khớp n: dn

• Góc giữa các pháp tuyến đo trong mặt phẳng vuông góc với trục: θn

Hình 2.4 Các thông số của khâu: θ, d, a và α

Hệ tọa độ của các khâu được gắn lên dựa theo nguyên tắc sau:

Ở khâu thứ n, gốc của hệ tọa độ được gắn tại giao điểm giữa khớp thứ n+1 và pháp tuyến của khớp ấy Nếu hai trục cắt nhau, điểm giao giữa hai trục sẽ là vị trí gốc tọa độ Trường hợp hai trục song song, gốc tọa độ sẽ được đặt tại một điểm thích hợp trên trục khớp của khâu kế tiếp.

• Trục zn của hệ tọa độ sẽ được gắn lên khâu thứ n đặt dọc theo trục khớp thứ n+1

• Trục xn thường được đặt hướng từ trục khớp n đến trục khớp n+1 và dọc theo pháp tuyến chung (đường vuông góc chung)

2.1.3 Bài toán động học thuận robot

Hình 2.5 Một chân của robot

Nhóm em gọi tên độ dài giữa các servo của một chân robot là:

 a1: độ dài từ servo 1 đến servo 2

 a2: độ dài từ servo 2 đến servo 3

 a3: độ dài từ servo 3 đến điểm đặt chân của robot

Thành phần Kích thước (mm)

Bảng 2.1 Bảng thông số robot 4 chân

Tiến hành đặt hệ tọa độ vào mô hình robot 4 chân như trong hình:

Hình 2.6 Hệ tọa độ cho 4 chân robot

Hình 2.7 Hệ tọa độ cho 1 chân robot

Một chân của robot lúc này được xem như một cánh tay có 3 bậc tự do, cho phép mô phỏng và điều khiển chuyển động một cách hiệu quả Các chân của robot có cấu tạo giống nhau, nên việc thiết lập bảng tham số D-H cho một chân có thể áp dụng cho các chân còn lại mà không cần chỉnh sửa từ đầu Việc xác định và chuẩn hóa bảng thông số D-H cho một chân là nền tảng để phân tích động học và điều khiển đồng bộ toàn bộ hệ thống chân của robot.

Bảng 2.2 Bảng thông số D-H cho từng chân robot

Sau khi có được bảng thông số D-H, nhóm sử dụng ma trận An theo giáo trình

“Introduction to Robotics” của John J.Craig

A n = [ cos θ n − sin θ n 0 a n−1 sin θ n cos α n−1 cos θ n cos α n−1 − sin α n−1 −sin α n−1 d n sin θ n sin α n−1 cos θ n sin α n−1 cos α n−1 cos α n−1 d n

Ta kí hiệu ma trận chuyển đổi từ khâu n-1 sang n như sau :

Thay các quy ước vào trong bảng thông số D-H vào ma trận An ta có :

Với các ma trận 1 0 𝑇, 2 1 𝑇, 3 2 𝑇, 4 3 𝑇 ta tính được ma trận chuyển đổi từ gốc tọa độ tới điểm cuối của chân robot 4 0 𝑇 :

Với hệ phương trình động học thuận, vị trí điểm cuối của chân robot sẽ có hệ phương trình như sau:

2.1.4 Bài toán động học nghịch robot

Bài toán động học nghịch nhằm xác định giá trị các biến khớp từ vị trí và hướng của chân robot Để đơn giản hóa bài toán động học nghịch và đảm bảo độ chính xác đối với robot 4 chân 3 bậc tự do, nhóm em đã lựa chọn và áp dụng phương pháp hình học Phương pháp hình học cho phép giải bài toán động học nghịch một cách trực quan và hiệu quả, đồng thời đảm bảo độ chính xác cần thiết cho robot 4 chân 3 bậc tự do.

Hình 2.7 Hệ tọa độ cho 1 chân robot

Thực hiện phép chiếu lên mặt phẳng Oxy , ta thu được góc θ1 bằng định lý Pytago trong tam giác

Hình 2.8 Phép chiếu trên mặt phẳng Oxy

Trên hệ tọa độ, chúng ta tiếp tục thực hiện phép chiếu như Hình 2.9 để tìm góc θ2 và góc θ3

Hình 2.9 Phép chiếu trên hệ tọa độ Áp dụng định lý Pytago ∆O1AP, ta có: ℎ = 𝑃𝑂 1 = √𝑃 𝑧 2 + (𝐿 − 𝑎 1 ) 2

Nhận thấy có hai cách sắp xếp khâu 2 và khâu 3 tại cùng vị trí Px, Py, Pz, nhóm dùng hàm atan2 để xác định chính xác góc phần tư của θ3 Vì vậy, ta có hai giá trị θ3 và do θ2 phụ thuộc vào θ3 nên hai giá trị θ3 sẽ xác định hai giá trị của θ2 theo dấu của sin θ3 Với robot đang xét, ta sẽ chọn dấu dương cho sin θ3 sin θ3 = sqrt(1 − cos^2 θ3).

Xét ∆ O1QP, ta có: θ 21 = atan2(a 3 ∗ sinθ 3 , a 2 + a 3 ∗ cosθ 3 ) θ 22 = atan2(P z , L − a 1 ) θ 2 = θ 22 + θ 21 Các góc xoay tương ứng với các khâu được ký hiệu là các giá trị θ 1 , θ 2 , θ 3

Phương pháp điều khiển thân giữa của robot

Để robot có thể di chuyển hiệu quả trong môi trường thực tế, không chỉ giải bài toán động học thuận và động học nghịch, mà còn cần sự phối hợp nhịp nhàng của toàn bộ thân robot Sự đồng bộ giữa các khớp, các cơ cấu liên kết và khung máy quyết định khả năng di chuyển mượt mà, ổn định và thích ứng với các loại địa hình khác nhau Vì vậy, thiết kế và điều khiển robot phải kết hợp giải bài toán động học với tối ưu hóa sự phối hợp của thân robot nhằm nâng cao hiệu suất, tiết kiệm năng lượng và đảm bảo an toàn khi vận hành ngoài thực địa.

Lần lượt gọi roll, pitch, yaw là 3 hướng xoay theo từng trục x, y, z dựa theo chuyển động xoay:

Hình 2.10 Chuyển động xoay theo trục

 Phương pháp tính đối với góc roll và pitch giống nhau và được trình bày như sau:

Hình 2.11 Phép xoay thân giữa robot Trong mặt phẳng Oxz, nhóm tiến hành áp dụng ma trận xoay như sau:

𝑏 = 𝑧 ′ = 𝑥 ∗ sin (𝑟) + 𝑧 ∗ cos (𝑟) Sau khi thực hiện phép xoay, nhóm thu được tọa độ mới của chân như sau:

Pz ′ = Pz + b Đối với 4 chân còn lại, khi cập nhật được vị trí mới của 4 chân sẽ tạo ra chuyển động xoay

 Xét trường hợp robot xoay theo góc yaw:

Một ma trận xoay theo trục Z của thân giữa sẽ được nhân với cả 4 chân và cập nhật vị trí mới để tạo ra chuyển động xoay

𝑦 ′ = 𝑥 ∗ sin(𝑦𝑎𝑤) + 𝑦 ∗ cos(𝑦𝑎𝑤) Sau khi thực hiện phép xoay, nhóm thu được tọa độ mới của chân như sau:

 Thực hiện phép tịnh tiến đối với thân giữa robot:

Hình 2.12 Phép tịnh tiến cho thân giữa robot

Trường hợp tịnh tiến một đoạn a theo trục Y0:

Nhóm thu được tọa độ mới của các chân như sau:

P x4 ′ = P x4 + aPhép tịnh tiến cũng được thực hiện tương tự đối với trục X0 và Z0

THIẾT KẾ PHẦN CỨNG

Thiết kế cơ khí robot 4 chân

3.1.1 Giới thiệu phần mềm Solidworks

Việc thiết kế cơ khí cho một robot 4 chân đòi hỏi một phần mềm CAD có độ chính xác cao và khả năng dựng mô hình 3D nhanh chóng, dễ sử dụng để thuận tiện cho người thiết kế Các chi tiết 3D sau khi được thiết kế có thể lắp ghép thành một bộ phận hoàn chỉnh, giúp tối ưu hóa quá trình sản xuất và tích hợp trong hệ thống robot Dựa trên các yêu cầu này, nhóm em đã lựa chọn và sử dụng SolidWorks làm công cụ thiết kế, mô phỏng và kiểm tra các thành phần cơ khí của robot 4 chân.

3.1.2 Vật liệu thiết kế và ý tưởng mô hình

So với các robot 4 chân phổ biến trên thị trường hiện nay được thiết kế bằng vật liệu in 3D dạng nhựa, nhóm quyết định chọn vật liệu gỗ ván ép plywood nhằm giảm chi phí thi công, đồng thời nâng cao độ cứng và độ bền của robot và vẫn đảm bảo thẩm mỹ cho sản phẩm.

Hình 3.1 Gỗ ván ép Plywood

Robot 4 chân thiết kế sử dụng gỗ ván ép Plywood cần có một cơ cấu chịu lực cao, khả năng liên kết giữa các khớp robot khi chuyển động được mượt mà nhất có thể nhưng vẫn đảm bảo được tính thẩm mỹ Theo đó, nhóm lên ý tưởng và bắt đầu thiết kế một chân cho robot như sau

Hình 3.2 Thiết kế một chân của robot trên SolidWorks

Document Preview File Name Qty

24 Bảng 3.1 Danh sách các chi tiết thiết kế cho một chân robot trên SolidWorks

MG90s_servo.SLDPRT 3 Flat Washer M3.SLDPRT 6

Sau khi đã thi công được một chân của robot và hoàn thành kiểm tra khả năng chịu lực của các servo ở các khớp chân, nhóm tiến hành thiết kế và thi công tương tự cho các chân còn lại và phần thân của robot, nhằm đảm bảo sự đồng bộ của cấu trúc, tối ưu hiệu suất vận hành và độ bền của toàn hệ thống.

Hình 3.3 Thiết kế bốn chân của robot trên SolidWorks

Hình 3.4 Thiết kế phần thân của robot trên SolidWorks

26 Hình 3.5 Danh sách các chi tiết thiết kế cho thân robot 4 chân

Document Preview File Name Qty

Board.SLDPRT 1 tru dong.SLDPRT 4

Sau khi đã vẽ hoàn chỉnh 4 chân và thân của robot, nhóm tiến hành lắp ráp các chân vào thân của robot bằng tính năng Assembly của Solidworks

Hình 3.6 Thiết kế robot 4 chân trên SolidWorks

Hình 3.7 Mô hình robot 4 chân thực tế

Thiết kế mạch điện tử

Hiện nay, nhờ sự phát triển của khoa học và kỹ thuật, các MCU (Multipoint Control Unit) đa dụng đang được ứng dụng rộng rãi Với hiệu suất cao và mức giá hợp lý, ESP32 là sản phẩm được người dùng ưa chuộng và tin dùng ESP32 được ứng dụng trong các đề tài liên quan đến IoT và robot ngày nay.

ESP32 là phiên bản nâng cấp của ESP8266 và được trang bị vi xử lý dual-core 32-bit cùng với WiFi và Bluetooth tích hợp sẵn cho các ứng dụng IoT Bên cạnh đó, bo mạch ESP32 còn có RAM nhiều hơn, nhiều GPIO, ADC và các cổng kết nối phong phú, giúp mở rộng giao tiếp với các cảm biến và thiết bị khác Với những ưu điểm này, ESP32 thực sự là lựa chọn phù hợp cho các dự án nhúng và thiết bị kết nối không dây.

3.2.2 Sơ đồ khối phần cứng

Hình 3.8 Sơ đồ khối phần cứng Chức năng của từng khối:

Khối hạ áp DC-DC XL4015 là một bộ chuyển đổi Buck DC-DC với đầu vào 8–36 VDC và đầu ra 5VDC Thiết bị cấp nguồn cho servo và đồng thời cung cấp nguồn cho khối hạ áp AMS1117, đảm bảo các module điều khiển và servo hoạt động ổn định Với hiệu suất chuyển đổi cao và khả năng đáp ứng tải tốt, XL4015 là giải pháp nguồn 5V ổn định phù hợp cho các hệ thống sử dụng nguồn 8–36 VDC.

- Khối hạ áp DC-DC AMS1117-3.3V: Sử dụng IC hạ áp AMS1117-3.3V với điện áp ngõ ra 3.3V, cấp nguồn cho khối MCU ESP32

- Khối MCU sử dụng ESP32-WROOM-32E: Sử dụng vi điều khiển ESP32 để điều khiển khối Servo

- Khối Servo: Sử dụng 12 động cơ RC Servo MG90S, mỗi động cơ là 1 khớp của robot

Khi cấp nguồn cho mạch điện áp DC-DC 8-36V và để công tắc ở vị trí ON, đèn LED báo nguồn sáng; mạch XL4015 thứ nhất sẽ hạ áp xuống 5V để cấp nguồn cho 6 servo (1–6), còn mạch XL4015 thứ hai sẽ hạ áp xuống 5V để cung cấp nguồn cho 6 servo (7–12) và khối AMS1117-3.3V.

- IC AMS1117-3.3V hạ áp 5V xuống 3.3V cấp nguồn cho ESP32 ESP32 được lập trình với 12 ngõ ra, xuất tín hiệu cho động cơ

3.2.4 Thông số kỹ thuật của các linh kiện

STT Tên linh kiện Số lượng

Bảng 3.2 Danh sách linh kiện sử dụng

- Kích thước: 18 mm x 20 mm x 3 mm

- CPU: Xtensa Dual-Core 32-bit LX6 với tần số hoạt động lên đến 240 MHz

Bluetooth: BR/EDR phiên bản v4.2 và BLE

Bộ chuyển đổi ADC 12 bit, 16 kênh

Bộ chuyển đổi 8-bits DAC: 2 kênh

10 chân để giao tiếp với cảm biến chạm (touch sensor)

Ngõ ra PWM cho điều khiển Motor

- Nhiệt độ hoạt động ổn định: -40 0 C đến 85 0 C

Hình 3.10 Sơ đồ chân ESP32-WROOM-32E

Hình 3.11 Sơ đồ chân IC XL4015

- Điện áp đầu vào: 8~36VDC

- Điện áp đầu ra: 5VDC

- Dòng đầu ra tối đa: 5A

- Tần số chuyển mạch 180KHz

- Tích hợp chức năng ngắt nhiệt

Hình 3.12 Sơ đồ chân IC AMS1117-3.3V

Hình 3.13 Kích thước Servo MG90S

- Điện áp hoạt động: 4.8 ~ 6VDC

- Stall Torque: 1.8kg/cm(4.8V ), 2.2kg/cm(6V)

- Operating Speed: 0.1sec/60degree(4.8v), 0.08sec/60degree(6v)

- Độ dài dây nối: 175mm

Hình 3.15 Sơ đồ mạch điều khiển của robot 4 chân

- Khối hạ áp DC-DC XL4015:

Hình 3.16 Sơ đồ mạch hạ áp DC-DC XL4015

- Khối hạ áp DC-DC AMS1117-3.3V:

Hình 3.17 Sơ đồ mạch hạ áp DC-DC AMS1117-3.3V

- Khối MCU sử dụng chip ESP32-WROOM-32S:

Hình 3.18 Sơ đồ mạch MCU sử dụng chip ESP32-WROOM-32S

- Khối Servo và Led báo nguồn:

Hình 3.19 Sơ đồ mạch Servo và Led báo nguồn

Hình 3.20 Layout PCB mặt Top

Hình 3.21 Layout PCB mặt Bottom

37 Hình 3.22 Lắp và hàn linh kiện lên mạch và thử nghiệm, kiểm tra mạch

THIẾT KẾ APP ĐIỀU KHIỂN ROBOT

Thiết kế giao diện điều khiển trên Android Studio

4.1.1 Sơ lược về Android Studio

Android Studio là môi trường phát triển tích hợp (IDE) dùng để phát triển ứng dụng Android, dựa trên nền tảng IntelliJ IDEA Nó cung cấp giao diện trực quan để viết mã và xây dựng ứng dụng, đồng thời xử lý các công cụ quản lý file phức tạp ở phía hậu trường, nhằm tối ưu quy trình phát triển và gỡ lỗi Với các tính năng mạnh mẽ cho lập trình Android, Android Studio hỗ trợ thiết kế, biên dịch và kiểm thử ứng dụng trên nhiều thiết bị và phiên bản Android một cách hiệu quả.

4.1.2 Cấu trúc dự án Android Studio

Theo mặc định, Android Studio hiển thị các tệp dự án trong chế độ xem như ở hình 4.1 Chế độ xem này được sắp xếp theo module để hỗ trợ truy cập nhanh vào các tệp nguồn chính của dự án.

Hình 4.1 Giao diện chính của Android Studio

In Android app development, the app directory represents the entire project structure It includes a manifests folder that stores the AndroidManifest.xml file, a java folder containing the Java source code, and a res folder for resources such as layouts, XML files, user interface components, images, and videos.

(2) Thư mục res: Đây là thư mục chứa tài nguyên của Project, thư mục này chứa các file giao diện, hình ảnh,… mà ứng dụng cần đến khi chạy

- Thư mục drawable: Đây là thư mục chứa các file hình ảnh

- Thư mục layout: Đây là thư mục chứa các file layout sử dụng để tạo giao diện người dùng của ứng dụng

- Thư mục menu: Chứa các file giao diện của menu

- Thư mục mipmap: Đây là thư mục chứa các biểu tượng của ứng dụng được sử dụng để hiển thị trên màn hình

- Thư mục values: Đây là nơi chứa các file XLM khác nhau như strings.xlm, colors.xlm

+ strings.xlm: file quản lý các chuỗi

+ colors.xlm: file quản lý các mã màu

(3) Gradle Script: Được xem như một công cụ để build hệ thống Đây là một phần quan trọng của Android Studio và được tích hợp sẵn vào Android Studio

Mô tả ứng dụng: App phục vụ Stem cho phép người dùng điều khiển robot, cũng như có thể xem được hình ảnh trực tiếp thông qua ESP32-Cam

- Đăng nhập để sử dụng

- Yêu cầu bật và kết nối Bluetooth

- Kết nối wifi nếu muốn xem hình ảnh qua ESP32-Cam

- Điều khiển các động tác của robot, có nút FOTA

Hình 4.2 Màn hình giới thiệu thứ 1 Ở màn hình giới thiệu đầu tiên, nhóm đưa ra mục tiêu là nghiên cứu, thiết kế và lập trình cho robot 4 chân

Hình 4.3 mô tả màn hình giới thiệu thứ 2 của ứng dụng, nơi nêu rõ ứng dụng của đồ án trong lĩnh vực STEM và nhấn mạnh mục tiêu phát triển các kỹ năng khoa học, kỹ thuật, sinh học và toán học cho người dùng.

Hình 4.4 Màn hình giới thiệu thứ 3 Ở màn hình giới thiệu thứ 3, app sẽ nêu ra tác giả Sau khi lướt sang trái, chuyển sang màn hình đăng nhập.

Hình 4.5 Màn hình đăng nhập

STT ID Sự kiện Mô tả hoạt động

1 [editTextUserName] Nhập Nhập tài khoản để đăng nhập

2 [editTextPassword] Nhập Nhập mật khẩu để đăng nhập

3 [btnlogin] Nhấn Kiểm tra tài khoản và mật khẩu, nếu đúng sẽ chuyển sang trang chủ Bảng 4.1 Mô tả hoạt động chức năng đăng nhập editTextUserName editTextPassword btnlogin

44 Hình 4.6 Màn hình đăng nhập thành công nếu nhập đúng tài khoản, mật khẩu

Hình 4.7 Màn hình điều hướng Màn hình điều hướng gồm có: Home, Control Quadruped, Control Arm

- Home: màn hình trang chủ, hiển thị logo 3DvisonLab và giáo viên hướng dẫn thầy

- Control Quadruped: gồm các chế độ dùng để điều khiển robot 4 chân

- Control Arm: được xây dựng trong hệ sinh thái Stem, đây là giao diện điều khiển cánh tay robot

Hình 4.9 Màn hình chính Control Quadruped Robot

Màn hình chính Control Quadruped Robot gồm: Bluetooth, Strem và 1 video mô phỏng cơ khí robot trên phần mềm Solidworks

(1): Khi nhấn nút “Bluetooth” app sẽ chuyển sang màn hình kết nối Bluetooth và điều khiển robot 4 chân bằng Bluetooth

Trong ứng dụng, khi nhấn nút Stream, màn hình kết nối Bluetooth sẽ xuất hiện để điều khiển robot 4 chân bằng Bluetooth và đồng thời truyền hình ảnh trực tiếp qua Esp32-Cam Video mô phỏng thiết kế cơ khí của robot 4 chân được thực hiện bằng phần mềm SolidWorks, giúp hình dung rõ cấu trúc và cơ chế hoạt động của hệ thống.

Hình 4.10 Màn hình yêu cầu cấp phép và bật Bluetooth

Sau khi nhấn nút “Bluetooth” ở màn hình chính điều khiển Control Quadruped Robot thì app sẽ chuyển sang màn hình kết nối Bluetooth Nếu điện thoại chưa bật

Bluetooth và nhấn nút “Bluetooth On” thì app sẽ yêu cầu cấp phép và bật Bluetooth như hình 4.10

Hình 4.11 Màn hình sau khi kết nối Bluetooth của Quadruped Robot

Sau khi kết nối Bluetooth app sẽ hiển thị danh sách thiết bị đã ghép đôi Bluetooth ở

“List Paired Devices” như hình 4.11 Nếu điện thoại đã kết nối Bluetooth và nhấn nút

“Bluetooth Off” thì điện thoại sẽ tắt Bluetooth Bên cạnh đó nếu nhấn nút “Back to control” thì app sẽ quay về màn hình “Home” và tắt Bluetooth.

Hình 4.12 Màn hình điều khiển các động tác Quadruped Robot

Màn hình điều khiển động tác của robot quadruped cho phép người dùng điều khiển và theo dõi các động tác như tiến, lùi, trái, phải, đứng dậy, xoay vai và vẫy tay một cách trực quan và chính xác Các thao tác này mang lại sự linh hoạt trong di chuyển và tương tác với robot trên mọi địa hình Đồng thời, nút FOTA được tích hợp trên bảng điều khiển để cập nhật firmware từ xa, giúp cải thiện hiệu suất, bổ sung tính năng mới và tăng cường an ninh cho thiết bị.

Fimware từ xa qua Wifi Nếu nhấn nút “Exit” app sẽ thoát khỏi màn hình điểu khiển và quay trở về màn hình Bluetooth của Quadruped Robot

Hình 4.13 Màn hình yêu cầu cấp phép và bật Bluetooth

Khi người dùng nhấn nút “Strem” trên màn hình chính của ứng dụng điều khiển Control Quadruped Robot, ứng dụng sẽ chuyển sang màn hình kết nối Bluetooth Nếu điện thoại chưa bật Bluetooth và người dùng nhấn nút “Bluetooth On”, ứng dụng sẽ yêu cầu cấp quyền và bật Bluetooth tự động như hình 4.13.

Hình 4.14 Màn hình kết nối Bluetooth của Quadruped Robot, truyền hình ảnh trực tuyến

Sau khi kết nối Bluetooth app sẽ hiển thị danh sách thiết bị đã ghép đôi Bluetooth ở

“List Paired Devices” như hình 4.14 Nếu điện thoại đã kết nối Bluetooth và nhấn nút

“Bluetooth Off” thì điện thoại sẽ tắt Bluetooth Bên cạnh đó nếu nhấn nút “Back to control” thì app sẽ quay về màn hình “Home” và tắt Bluetooth.

Màn hình điều khiển của Quadruped Robot cho phép điều khiển các động tác và truyền hình ảnh trực tuyến từ ESP32-CAM Giao diện điều khiển gồm các chế độ di chuyển tiến, lùi và trái phải, giúp thao tác nhanh và dễ dàng với Robot bốn chân Nửa màn hình bên phải hiển thị hình ảnh trực tiếp từ ESP32-CAM, mang lại trải nghiệm giám sát thời gian thực Khi nhấn nút “Exit”, ứng dụng sẽ thoát khỏi màn hình điều khiển và quay trở về màn hình Bluetooth của Quadruped Robot.

Thiết kế app điều khiển trên MIT App Inventor

Ngoài việc thiết kế ứng dụng điều khiển trên Android Studio, nhóm còn phát triển thêm một ứng dụng điều khiển robot 4 chân trên MIT App Inventor Lý do thiết kế thêm ứng dụng này nhằm lan tỏa cảm hứng và hỗ trợ những người chưa có kiến thức lập trình từ trước có thể tự tay tạo ra các ứng dụng điều khiển trên hệ điều hành Android, theo sức sáng tạo của họ.

4.2.1 Giao diện người dùng của app

Nhóm tiến hành thiết kế phần giao diện dành cho người dùng sử dụng như sau:

Hình 4.16 Giao diện người dùng

Trong hình 4.16, gồm có các khối:

 (1) Nút bật và hiện danh sách các thiết bị Bluetooth

Khi người dùng bấm vào nút này, danh sách các thiết bị Bluetooth có thể kết nối được sẽ hiện ra để người dùng chọn và kết nối

Hình 4.17 Danh sách các thiết bị Bluetooth có thể kết nối

 (2) Nút tắt kết nối Bluetooth

Khi người dùng bấm vào nút này, app sẽ ngắt kết nối với thiết bị Bluetooth đã kết nối

Khi người dùng bấm vào nút này, robot 4 chân sẽ bắt đầu kết nối WiFi và tiến hành cập nhật firmware mới từ OTA Drive

Gồm có các nút điều khiển di chuyển: bước tới, bước về sau, xoay trái, xoay phải và các động tác trình diễn: nhảy, vẫy tay,

Từ phần giao diện người dùng đã được nhóm thiết kế, nhóm tiến hành kéo và thả các khối lệnh

56 Hình 4.18 Khối thiết lập kết nối với thiết bị Bluetooth đã chọn

Hình 4.19 Khối ngắt kết nối với thiết bị Bluetooth đã chọn

57 Hình 4.20 Khối hiển thị trạng thái Bluetooth

58 Hình 4.21 Khối câu lệnh điều khiển robot 4 chân qua Bluetooth

NẠP FIRMWARE CHO ROBOT 4 CHÂN TỪ XA BẰNG WIFI

Giới thiệu về FOTA (Firmware Over The Air)

Firmware Over The Air (FOTA) là một tính năng cho phép nhà sản xuất cập nhật và sửa chữa firmware từ xa mà không cần mạch nạp, chỉ cần có kết nối không dây qua WiFi là có thể sử dụng được Việc triển khai FOTA giúp cập nhật bảo mật, vá lỗi và tối ưu hiệu suất hệ thống một cách nhanh chóng và tiện lợi mà không cần can thiệp vào phần cứng, giảm thiểu thời gian ngưng trệ và chi phí bảo trì cho doanh nghiệp.

❖ Quy trình FOTA của ESP32:

Hình 5.1 Quy trình FOTA của Esp32

 Firmware mới sẽ được upload lên máy chủ

 Người dùng có thể điều khiển ESP32 đi vào quá trình FOTA hoặc ESP32 có khả năng tự đi vào quá trình này tùy thuộc vào người lập trình

 ESP32 sẽ kiểm tra version của Firmware mới và tiến hành tải Firmware mới về qua WiFi

 Khi tải Firmware thành công, ESP32 sẽ nạp chương trình mới vào bộ nhớ Sau đó khởi chạy chương trình mới

Trong bài báo cáo này, nhóm sử dụng server của OTA Drive – một website quản lý Firmware miễn phí.

Thiết lập trên OTA Drive và nạp Firmware từ cho robot 4 chân

❖ Thêm thiết bị trên OTA Drive Đầu tiên, chúng ta truy cập vào website: https://www.otadrive.com/ Tiến hành đăng kí một tài khoản và đăng nhập vào

Hình 5.2 Thêm thiết bị trên OTA Drive

Chọn tab “Product” và chọn vào nút “+” để thêm thiết bị

61 Hình 5.3 Đặt tên, model và mô tả thiết bị

Tại đây, chúng ta đặt tên cho thiết bị kết nối, model và mô tả

Hình 5.4 Truy cập vào Folder thiết bị vừa tạo

Sau khi đã thêm thiết bị, chọn biểu tượng “Folder” (góc phải) để vào bên trong Product

Hình 5.5 API Key để truy cập

Trong Product, chúng tôi cung cấp một API Key dành cho ESP32 để xác thực và bảo mật kết nối Khi nhận được yêu cầu cập nhật firmware, ESP32 sẽ gọi API lên server và kiểm tra xem có bản cập nhật mới hay không.

Để tạo firmware có thể upload lên OTA Drive và nạp từ xa cho robot 4 chân, nhóm biên dịch chương trình cho robot trên Arduino IDE đã biên soạn và xuất ra file có đuôi bin, nhằm cho phép cập nhật firmware từ xa qua OTA Drive và nâng cao hiệu suất vận hành của robot.

Có được file bin, nhóm truy cập vào Folder của Product đã tạo trên OTA Drive, chọn vào tab “Firmwares” và chọn nút “+” để thêm Firmwares mới

Hình 5.6 Thêm Firmware mới vào Folder

Khi đã upload được Firmware lên OTA Drive, chúng ta chuyển sang tab “Device Groups”

Hình 5.7 Chọn và lưu Firmware cần sử dụng

Trên tab “Device Groups”, người dùng có thể chọn phiên bản Firmware cần nạp và nhấp “Save”; khi nhấn nút “FOTA” trong ứng dụng điều khiển robot 4 chân, ESP32 sẽ tiến hành kiểm tra và tải firmware mới về từ OTA Drive, và sau khi quá trình tải Firmware hoàn tất, ESP32 sẽ nạp chương trình mới vào bộ nhớ và khởi động chương trình mới ngay lập tức.

Lưu đồ điều khiển robot 4 chân

Hình 5.8 Lưu đồ điều khiển robot 4 chân

Hoạt động của robot được xác định bởi chuyển động quay của servo; việc đồng bộ nhiều servo cùng lúc cho phép robot di chuyển linh hoạt và thực hiện các chức năng mong muốn Tùy theo nhu cầu điều khiển, nhóm em sẽ truyền dữ liệu không dây tới robot và thực hiện các yêu cầu từ người điều khiển Quy trình kiểm soát được trình bày trong Hình 5.8.

Khi mạch được cấp nguồn, MCU thực hiện khởi tạo ngoại vi phần cứng cần thiết

Sau khi thực hiện khởi tạo, MCU chờ nhận tín hiệu từ Bluetooth, tùy thuộc vào mã lệnh nhận được, MCU sẽ thực hiện các hành động sau:

Trong chế độ Control, khi nhận được mã lệnh do người lập trình quy định, MCU dựa trên mã lệnh đó để tính toán nghịch động (vị trí di chuyển mà người lập trình xác định) cho robot, từ đó suy ra giá trị các góc quay của các servo Sau khi có các giá trị này, MCU phát tín hiệu điều khiển cho các servo để robot di chuyển tới vị trí mong muốn.

Khi nhận được mã lệnh ở chế độ FOTA (Firmware Over-The-Air), MCU sẽ tải chương trình mới từ máy chủ qua WiFi, chèn bản cập nhật vào vùng nhớ dùng để lưu trữ chương trình và kết thúc quá trình cập nhật.

 Nếu mã lệnh nhận được không thuộc các chế độ trên thì chờ lệnh mới

Ngày đăng: 22/08/2022, 19:54

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. John J.Craig (2005), “Introduction to Robotics”, Third. United States of America: Pearson Prentice Hall Sách, tạp chí
Tiêu đề: Introduction to Robotics
Tác giả: John J.Craig
Năm: 2005
2. TS. Nguyễn Văn Thái (2016), “ Động học thuận tay máy ”.https://www.youtube.com/watch?v=Rvod_NM4Vso Sách, tạp chí
Tiêu đề: Động học thuận tay máy
Tác giả: TS. Nguyễn Văn Thái
Năm: 2016
3. TS. Nguyễn Văn Thái ( 2016 ), “ Động học nghịch tay máy ”. https://www.youtube.com/watch?v=0vnku9z3sNY&list=PLn3q6sc1zsV4np-f2wUTYS377lyU8oJ-o&index=17 Sách, tạp chí
Tiêu đề: Động học nghịch tay máy ”
4. Freenove Quadruped Robot Kit (Compatible with Arduino IDE) (2017), https://www.youtube.com/watch?v=ZMXEJfxHKaQ Sách, tạp chí
Tiêu đề: Freenove Quadruped Robot Kit (Compatible with Arduino IDE)
Năm: 2017
5. TS. Nguyễn Trọng Doanh và KS. Nguyễn Ngọc Đạt (2018), “Nghiên cứu động học và mô phỏng robot nhện bốn chân”, Tạp chí cơ khí Việt Nam, ISSN 0866-7056 Sách, tạp chí
Tiêu đề: Nghiên cứu động học và mô phỏng robot nhện bốn chân
Tác giả: TS. Nguyễn Trọng Doanh và KS. Nguyễn Ngọc Đạt
Năm: 2018
6. Report: “The Future of STEM: Closing the Skills Gap with Education Khác

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w