1. Trang chủ
  2. » Luận Văn - Báo Cáo

thiết kế và thi công hệ thống điều khiển xe lăn điện bằng cử chỉ tay sử dụng thông minh nhân tạo

78 2 0
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

Nội dung

Tên đề tài: Thiết kế và thi công hệ thống điều khiển xe lăn điện bằng cử chỉ tay sử dụng thông minh nhân tạo.. Áp dụng được mô hình nhận dạng đối tượng YOLOv8 để nhận diện các cử chỉ của

Trang 1

THÀNH PHỐ HỒ CHÍ MINH

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT

KHÓA LUẬN TỐT NGHIỆP

NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG

THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN XE LĂN ĐIỆN BẰNG CỬ CHỈ TAY SỬ DỤNG

THÔNG MINH NHÂN TẠO

SVTH: MAI THÀNH GIÓ TRƯƠNG TẤN KIỆT

GVHD: PGS.TS NGUYỄN THANH HẢI

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ

Ngành:CNKT Điện tử - Viễn thông (CLC) GVHD:PGS.TS Nguyễn Thanh Hải

Trang 3

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

Họ và tên sinh viên: Trương Tấn Kiệt MSSV: 19161126Mai Thành Gió MSSV: 19161097 Ngành: Công nghệ kỹ thuật Điện tử - Viễn thông (CLC)

Giáo viên hướng dẫn: PGS.TS Nguyễn Thanh Hải

Ngày nhận đề tài: 11/09/2023 Ngày nộp đề tài: 05/01/2024

1 Tên đề tài: Thiết kế và thi công hệ thống điều khiển xe lăn điện bằng cử chỉ tay sử dụng thông minh nhân tạo

2 Các số liệu, tài liệu ban đầu:

- Võ Ngọc Tiến, Lâm Minh Cảnh, “ Nghiên cứu, thiết kế và thi công bộ điều

khiển xe lăn điện sử dụng cảm biến gia tốc ”, Đồ án tốt nghiệp - Đại học Sư

Phạm Kỹ Thuật TPHCM, 2019

- Lê Trung Nghĩa, Nguyễn Lữ Phụng Đình, “ Thiết kế và thi công xe lăn trong

nhà tự định vị và đến đích dựa vào bản đồ 2D ”, Đồ án tốt nghiệp - Đại học

Sư Phạm Kỹ Thuật TPHCM, 2020

- Vũ Hoàng Thiên, Đoàn Lâm, “ Thiết kế và thi công hệ thống điều khiển xe lăn

điện cho người khuyết tật sử dụng tín hiệu điện não và camera ”, Đồ án tốt

nghiệp - Đại học Sư Phạm Kỹ Thuật TPHCM, 2020

- Huỳnh Tấn Cường, “ Thiết kế và thi công mô hình xe lăn tự hành trong nhà

dùng camera 3D ”, Đồ án tốt nghiệp - Đại học Sư Phạm Kỹ Thuật TPHCM,

2019

- Nguyễn Đoàn Vĩnh Thái, Bùi Đức Hiếu, “ Thiết kế và thi công mô hình kính

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH

KHOA ĐIỆN - ĐIỆN TỬ

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc

Tp Hồ Chí Minh, ngày 04 tháng 01 năm 2024

Trang 4

- Ngô Xuân Thịnh, Nguyễn Phạm Hoài Ân, “ Xây dựng mô hình thùng rác di

chuyển tự động và theo cử chỉ tay ”, Đồ án tốt nghiệp - Đại học Sư Phạm Kỹ

Thuật TPHCM, 2019

- Nguyễn Hữu Sáng, Từ Thị Kim Chi, “ Điều khiển thiết bị bằng cử chỉ tay

thông qua xử lý ảnh ”, Đồ án tốt nghiệp - Đại học Sư Phạm Kỹ Thuật TPHCM,

2019

- Lê Minh Thành, Lê Minh, Phan Văn Ca, Đặng Phước Hải Trang, Đỗ Duy Tân,

Trương Ngọc Sơn, “ Nhận diện cử chỉ bàn tay dùng mạng nơron tích chập ”,

ISSN 1859-1531- Tạp chí khoa học và công nghệ - Đại học Đà Nẵng, Vol.19, No.4.1, 2021

- Elmezain, Al-Hamadi J, Michaelis “ A hiddenmarkov model-based isolated

and meaningful hand gesture recognition ”, 2009

- Nguyễn Thành Long, “ Mô hình mạng học sâu cho nhận biết cử chỉ nhũng

ngón tay cho người khiếm thính ” Luận văn Thạc sĩ – Đại học Sư Phạm Kỹ

Thuật TPHCM, 2023

- Arsheldy Alvin, Nabita Husan Shabrina, Aurelius Ryo, & Edgar Christian, “

Hand Gesture Detection for Sign Language using Neural Network with Mediapipe ”, Ultima Computing: Jurnal Sistem Komputer, 13(2), 57-62, 2021

3 Nội dụng thực hiện đề tài:

- Tham khảo tài liệu, đọc và tóm tắt tài liệu đưa ra các hướng đề tài - Thiết kế sơ đồ khối, sơ đồ nguyên lý

- Thiết kế mô hình nhận diện cử chỉ tay - Viết chương trình điều khiển

- Hoàn thiện kết nối phần cứng - Thiết kế giao diện điều khiển

- Chạy thử, kiểm tra, đánh giá, hiệu chỉnh - Viết báo cáo thực hiện

- Bảo vệ luận văn

Trang 5

4 Sản phẩm: Hệ thống điều khiển xe lăn điện bằng cử chỉ tay Có chức năng nhận diện cử chỉ tay thời gian thực từ webcam sau đó gửi sang Jetson Nano Developer Kit xử lý và trả kết quả để gửi lệnh điều khiển tương ứng với 6 cử chỉ sang Arduino Due điều khiển xe di chuyển theo các hướng: tiến chậm, tiến nhanh, lùi, rẽ trái, rẽ phải và dừng

TRƯỞNG NGÀNH GIÁO VIÊN HƯỚNG DẪN

Th.S Nguyễn Ngô Lâm PGS.TS Nguyễn Thanh Hải

Trang 6

LỜI CẢM ƠN

Lời đầu tiên, nhóm thực hiện đề tài xin gửi lời tri ân chân thành nhất tới Thầy PGS.TS Nguyễn Thanh Hải đã hướng dẫn tận tình, luôn giải đáp mọi thắc mắc và chỉ ra những sai sót trong quá trình thực hiện đề tài Điều này đã góp phần không nhỏ giúp nhóm hoàn thành đề tài

Nhóm gửi lời cảm ơn chân thành đến các Thầy Cô trong phòng Lab C306 nói riêng và các Thầy Cô trong khoa Điện – Điện tử nói chung, những người đã nhiệt tình trong việc truyền đạt kiến thức, giải đáp thắc mắc và tạo điều kiện về trang thiết bị trong quá trình nhóm thực hiện đề tài

Nhóm xin gửi lời cảm ơn đến gia đình, bạn bè và các anh chị khoá trên, vì sự giúp đỡ, động viên và tạo điều kiện thuận lợi để nhóm hoàn thành đề tài

Một lần nữa nhóm xin cảm ơn chân thành đến quý Thầy Cô đã tận tình giúp đỡ và hỗ trợ nhiệt tình trong quá trình thực hiện đề tài Do những kiến thức còn hạn chế nên không tránh khỏi những thiếu sót về nội dung và hình thức trong đồ án tốt nghiệp này Nhóm mong nhận được sự thông cảm và những ý kiến đóng góp từ quý Thầy Cô để nhóm có thể hoàn thiện đề tài hơn nữa

Xin chân thành cảm ơn !

Người thực hiện đề tài

Trương Tấn Kiệt Mai Thành Gió

Trang 7

LỜI CAM ĐOAN

Nhóm xin cam kết rằng đề tài này nhóm thực hiện hoàn toàn dựa trên những kiến thức đã được học và một số nghiên cứu, tài liệu và báo cáo trước đó dưới sự hướng dẫn của Thầy PGS.TS Nguyễn Thanh Hải Không sao chép bất kỳ tài liệu hoặc công trình nào đã có trước đó

Người thực hiện đề tài

Trương Tấn Kiệt Mai Thành Gió

Trang 8

TÓM TẮT

Tạo hóa ban tặng cho con người chúng ta khi sinh ra đều có đủ hình hài Thật tiếc thay, trong nhịp sống tấp nập và nền công nghiệp đang phát triển vượt bậc, vẫn

tồn tại những con người có số phận bị khuyết tật các chi Vì thế nhu cầu di chuyển

của họ là một vấn đề cần đặc biệt được quan tâm, để có thể dễ dàng di chuyển thì phương tiện luôn đi liền với cuộc sống của họ chính là xe lăn Với sự phát triển của khoa học công nghệ, xe lăn điện đã được tạo ra, được ví như là đôi chân nhân tạo cho những người bị bại liệt - hỗ trợ khả năng di chuyển cần thiết để họ có thể đi lại và

thực hiện các công việc hằng ngày Vì vậy nhóm đã đưa ra lựa chọn đề tài “Thiết kế

và thi công hệ thống điều khiển xe lăn điện bằng cử chỉ tay sử dụng thông minh nhân tạo” Công nghệ này mở ra một tương lai tươi sáng cho người khuyết tật, giúp

họ có thể tận hưởng cuộc sống hằng ngày một cách thoải mái và độc lập hơn

Hệ thống sử dụng webcam để thu dữ liệu hình ảnh thời gian thực, dữ liệu sẽ được gửi đến Jetson Nano Developer Kit Sử dụng mô hình nhận diện đối tượng YOLOv8 để nhận diện cử chỉ của tay từ dữ liệu hình ảnh thu được thời gian thực, qua đó đưa ra tín hiệu để điều khiển xe Người dùng có thể xem kết quả và thao tác trên màn hình 7inch HD cảm ứng Khi cần di chuyển, người dùng đơn giản chỉ cần sử dụng các cử chỉ của tay để đưa ra các lệnh điều khiển, xe lăn sẽ di chuyển theo ý muốn của họ

Kết quả thực hiện đã hoàn thành được các mục tiêu đã đề ra ban đầu của đề tài Áp dụng được mô hình nhận dạng đối tượng YOLOv8 để nhận diện các cử chỉ của tay thông qua máy tính nhúng Jetson Nano Developer Kit sau đó trả kết quả phân loại để gửi lệnh điều khiển tương ứng với cử chỉ đó sang Arduino Due để điều khiển xe lăn.

Trang 9

Chương 2: CƠ SỞ LÍ THUYẾT 5

2.1 Các mô hình, hệ thống điều khiển 5

2.1.1 Hệ thống điều khiển xe lăn điện sử dụng cảm biến gia tốc 5

2.1.2 Hệ thống xe lăn tự định vị và đến đích dựa vào bản đồ 2D 5

2.1.3 Hệ thống điều khiển xe lăn điện thông qua tín hiệu điện não và camera 6

2.1.4 Hệ thống xe lăn tự hành dùng camera 3D 6

2.1.5 Hệ thống điều khiển xe lăn điện và giao tiếp theo hướng nhìn của mắt 7

2.1.6 Mô hình thùng rác di chuyển theo cử chỉ tay 7

Trang 10

2.2.4 Nhận dạng cử chỉ tay cho ngôn ngữ kí hiệu bằng mạng nơron 10

2.4 Ứng dụng mô hình nhận dạng đối tượng với giải pháp suy luận vào nhận dạng cử chỉ tay 10

2.4.1 Giải pháp suy luận 11

2.4.2 Mô hình nhận dạng đối tượng 11

Chương 3: TÍNH TOÁN VÀ THIẾT KẾ 14

3.1 Giới thiệu 14

3.2 Tính toán và thiết kế hệ thống 14

3.2.1 Thiết kế sơ đồ khối hệ thống 14

3.2.2 Tính toán và thiết kế sơ đồ mạch 15

3.2.3 Thiết kế mô hình nhận diện cử chỉ tay dùng mô hình mạng YOLO 28

3.2.4 Thiết kế giao diện ứng dụng 35

3.3 Thiết kế phần mềm 36

3.3.1 Lưu đồ giải thuật chương trình chính 36

3.3.2 Lưu đồ chương trình con nhận dạng cử chỉ tay 37

3.3.3 Lưu đồ chương trình điều khiển xe 38

Chương 4: THI CÔNG HỆ THỐNG 40

4.1 Giới thiệu 40

4.2 Hoàn thiện kết nối phần cứng hệ thống 40

4.3 Thi công phần mềm 42

Trang 11

4.3.1 Huấn luyện mô hình trên Google Colab 42

4.3.2 Thiết kế giao diện 43

4.4 Hướng dẫn sử dụng thiết bị 44

Chương 5: KẾT QUẢ – NHẬN XÉT- ĐÁNH GIÁ 48

5.1 Kết quả thực hiện 48

5.1.1 Kết quả thi công phần cứng hệ thống 48

5.1.2 Kết quả thiết kế giao diện 49

5.1.3 Kết quả mô hình nhận diện cử chỉ tay 49

5.1.4 Kết quả điều khiển xe lăn 52

Trang 12

DANH MỤC HÌNH ẢNH

Hình 2.1 Các đặc trưng bàn tay được trích xuất bởi thuật toán Mediapipe 11

Hình 2.2 Cách thức hoạt động của mô hình nhận dạng đối tượng YOLO 12

Hình 3.1 Sơ đồ khối của hệ thống 14

Hình 3.2 Jetson Nano Developer Kit 15

Hình 3.3 Sơ đồ kết nối Jetson Nano với các thiết bị ngoại vi 16

Hình 3.4 Webcam W2 Full HD 17

Hình 3.5 Sơ đồ kết nối khối thu thập dữ liệu với khối xử lý trung tâm 17

Hình 3.6 (a) ảnh mặt trước màn hình 7inch HD cảm ứng , (b) ảnh mặt sau màn hình 7inch HD cảm ứng 18

Hình 3.7 Sơ đồ kết nối khối hiển thị với khối xử lý trung tâm 19

Hình 3.8 Module Bluetooth HC-05 20

Hình 3.9 Sơ đồ kết nối Arduino Due với Module Bluetooth HC-05 21

Hình 3.10 Module BTS7960 22

Hình 3.11 Sơ đồ kết nối Arduino Due với Module BTS7960 22

Hình 3.12 Sơ đồ kết nối khối điều khiển 23

Hình 3.13 Acquy 24V 12AH 26

Hình 3.14 Sơ đồ kết nối khối nguồn 26

Hình 3.15 Sơ đồ nguyên lý toàn hệ thống 27

Hình 3.16 Kiến trúc mạng YOLOv8 29

Hình 3.17 Quy trình thu thập dữ liệu 30

Hình 3.18 Ảnh minh hoạ 6 cử chỉ thu thập thực tế 31

Hình 3.19 Ảnh 6 cử chỉ sau khi áp dụng mediapipe 31

Hình 3.20 Giao diện gắn nhãn ảnh trên roboflow 33

Hình 3.21 Thiết kế giao diện ứng dụng 35

Hình 3.22 Lưu đồ giải thuật chương trình chính 36

Hình 3.23 Lưu đồ chương trình con nhận dạng cử chỉ tay 37

Hình 3.24 Lưu đồ chương trình điều khiển xe 38

Hình 4.1 Hoàn chỉnh lặp đặt các khối trong hệ thống 41

Trang 13

Hình 4.2 Cấu tạo bên trong của khối điều khiển 42

Hình 4.3 Quy trình huấn luyện mô hình YOLOv8 43

Hình 4.9 Nút thoát giao diện điều khiển 46

Hình 5.1 Mặt trước của xe 48

Hình 5.2 Mặt sau của xe 48

Hình 5.3 Mặt bên trái của xe 48

Hình 5.4 Mặt bên phải của xe 48

Hình 5.5 Giao diện khi chạy chương trình 49

Hình 5.6 Kết quả các tham số độ lỗi trên tập huấn luyện 50

Hình 5.7 Kết quả các tham số độ lỗi trên tập đánh giá 50

Hình 5.8 Kết quả về độ chính xác và độ bao phủ của mô hình 51

Hình 5.9 Ma trận nhầm lẫn của hệ thống 52

Hình 5.10 Kết quả nhận diện 6 cử chi tay 52

Hình 5.11 Không gian thực tế bên ngoài phòng Lab C306 53

Hình 5.12 Một số hình ảnh thử nghiệm điều khiển xe ngoài thực tế 53

Hình 5.13 Bản đồ đường đi thực tế của xe so với đường chuẩn 54

Trang 14

DANH MỤC BẢNG

Bảng 3.1 Thông số kỹ thuật Jetson Nano Developer Kit 16

Bảng 3.2 Thông số kỹ thuật Webcam W2 Full HD 17

Bảng 3.3 Thông số kỹ thuật của Màn hình Cảm ứng 7 inch 18

Bảng 3.4 Thông số kỹ thuật Arduino Due 19

Bảng 3.5 Thông số kỹ thuật Module Bluetooth HC-05 20

Bảng 3.6 Thông số kĩ thuật Module BTS7960 22

Bảng 3.7 Thông số các thiết bị sử dụng 24

Bảng 3.8 Thống kê số lượng ảnh của tập dữ liệu 32

Bảng 3.9 Các tham số cấu hình mô hình YOLOv8 34

Bảng 3.10 Ma trận nhầm lẫn 34

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

Bảng 5.1 Thời gian và khoảng cách xe di chuyển với bản đồ hình 5.5 55

Bảng 5.2 Thông kê kết quả điều khiển bằng cử chỉ 56

Bảng 5.3 Thời gian xử lý điều khiển của xe lăn điện 56

Bảng 5.4 Chi phí các linh kiện sử dụng trong đề tài 57

Trang 15

DANH TỪ VIẾT TẮT

UNICEF United Nations Children's FundYOLO You Only Look Once

LCD Liquid-crystal Display HMM Hidden Markov Model

CNN Convolutional Neural Network CUDA Compute Unified Device Architecture

GPIO General Purpose Input/Output I2C Inter Integrated Circuit

UART Universal Asynchronous Receiver Transmitter SPI Serial Peripheral Interface

PWM Pulse Width Modulation TP True Positive TN True Negative

FP False Positive FN False Negative

Trang 16

Chương 1: TỔNG QUAN

1.1 Giới thiệu

Tạo hóa ban tặng cho con người chúng ta khi sinh ra đều có đủ hình hài Thật tiếc thay, trong nhịp sống tấp nập và nền công nghiệp đang phát triển vượt bậc, vẫn tồn tại những con người có số phận bị khuyết tật các chi Theo công bố của Tổng cục thống kê và UNICEF ngày 11-1-2019, hơn 7% dân số Việt Nam từ 2 tuổi trở lên khoảng 6,2 triệu người là người khuyết tật [1] Từ con số thực tế trên có thể nhận thấy số lượng người khuyết tật chiếm một phần không nhỏ trong dân số Việt Nam Vì thế nhu cầu di chuyển của họ là một vấn đề cần đặc biệt được quan tâm, để có thể dễ dàng di chuyển thì phương tiện luôn đi liền với cuộc sống của họ chính là xe lăn.

Với sự phát triển của khoa học công nghệ, xe lăn điện đã được tạo ra, được ví như là đôi chân nhân tạo cho những người bị bại liệt - hỗ trợ khả năng di chuyển cần thiết để họ có thể đi lại và thực hiện các công việc hằng ngày Hiện nay, các loại xe lăn điện có thể được điều khiển bằng nhiều phương thức điều khiển khác nhau Ngoài các phương thức điều khiển truyền thống bằng nút điều khiển thì trong đề tài [2] của Võ Ngọc Tiến và Lâm Minh Cảnh sử dụng tín hiệu thu được từ cảm biến gia tốc MPU-6050 để đo và phát hiện các chuyển động nhằm mục đích ứng dụng vào điều khiển xe lăn điện Công nghệ tự định vị và đến vị trị mong muốn dựa vào bản đồ 2D cũng được ứng dụng vào điều khiển xe lăn như đề tài [3] của Lê Trung Nghĩa và Nguyễn Lữ Phụng Đình.

Trong thời gian gần đây, với sự phát triển không ngừng của xử lý ảnh và trí tuệ nhân tạo nó góp phần cho sự phát triển của khoa học công nghệ ở nhiều lĩnh vực Trí tuệ nhân tạo đã mang lại nhiều cơ hội mới cho việc thiết kế hệ thống điều khiển xe lăn điện Có khá nhiều đề tài nghiên cứu về ứng dụng của xử lý ảnh trong điều khiển xe lăn điện như đề tài [4] của Vũ Hoàng Thiên và Đoàn Lâm kết hợp việc điều khiển xe thông qua tín hiệu điện não và camera tránh vật cản giúp người sử dụng tránh những va chạm không cần thiết xảy ra Đề tài [5] của Huỳnh Tấn Cường sử dụng ảnh

thu được từ camera Intel RealSense D435 3D để xử lý tính toán dựa trên độ sâu của

ảnh và vị tí vật mốc để xác định khoảng cách để xe tránh vật cản Ngoài ra một số đề

Trang 17

tài ứng dụng của lĩnh vực trí tuệ nhân tạo trong việc điều khiển như [6] của Nguyễn Đoàn Vĩnh Thái và Bùi Đình Hiếu nhận dạng và phân loại hướng của mắt để điều khiển xe Đề tài [7] của Ngô Xuân Thịnh và Nguyễn Phạm Hoài Ân sử dụng cử chỉ tay để xây dựng mô hình thùng rác di chuyển tự động Hay đề tài [8] của Nguyễn Hữu Sáng và Từ Thị Kim Chi điều khiển các thiết bị bằng cử chỉ tay thông qua giao tiếp UART giữa máy tính và vi điều khiển PIC16F887

Qua những tóm tắt trên, nhóm đã đưa ra lựa chọn đề tài “Thiết kế và thi công

hệ thống điều khiển xe lăn điện bằng cử chỉ tay sử dụng thông minh nhân tạo”

Công nghệ này mở ra một tương lai tươi sáng cho người khuyết tật, giúp họ có thể tận hưởng cuộc sống hằng ngày một cách thoải mái và độc lập hơn Việc kết hợp trí tuệ nhân tạo với thiết kế xe lăn điện mang lại nhiều ưu điểm lớn Hệ thống có khả năng nhận diện cử chỉ tay của người sử dụng, từ đó điều khiển xe lăn điện theo hướng và tốc độ mong muốn Điều này mang lại sự linh hoạt và tiện ích cao, giúp người sử dụng có thể di chuyển một cách dễ dàng trong môi trường xung quanh Ngoài ra, việc áp dụng trí tuệ nhân tạo cũng giúp tối ưu hóa hiệu suất và độ chính xác của hệ thống điều khiển Nhờ vào khả năng học máy, hệ thống có thể học và thích nghi với cử chỉ tay của mỗi người sử dụng, tạo ra trải nghiệm cá nhân hóa và tối ưu nhất Tuy nhiên, việc thiết kế hệ thống điều khiển xe lăn điện bằng cử chỉ tay cũng đặt ra một số thách thức Cần phải đảm bảo rằng hệ thống nhận diện cử chỉ tay một cách chính xác và đáng tin cậy, đồng thời phải cung cấp các phương tiện dự phòng để tránh những tình huống không mong muốn Tóm lại, việc kết hợp trí tuệ nhân tạo vào thiết kế hệ thống điều khiển xe lăn điện bằng cử chỉ tay mang lại nhiều lợi ích lớn cho người khuyết tật Điều này không chỉ giúp cải thiện chất lượng cuộc sống của họ mà còn mở ra những triển vọng mới và tiềm năng cho công nghiệp hỗ trợ người khuyết tật.

1.2 Mục tiêu để tài

Mục tiêu nhóm đề ra trong đề tài là Thiết kế và thi công hệ thống điều khiển xe lăn điện bằng cử chỉ tay sử dụng thông minh nhân tạo Sử dụng thuật toán phát hiện

Trang 18

Jetson Nano Developer Kit từ hình ảnh thu được bằng camera sau đó trả kết quả phân loại và gửi tín hiệu điều khiển qua Arduino Due để điều khiển xe lăn

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

Các thông số giới hạn của đề tài bao gồm:

- Mô hình huấn chỉ được huấn luyện để nhận dạng 6 cử chỉ tay: tiến chậm, tiến nhanh, lùi, trái, phải, dừng

- Vị trí bàn tay đặt đối diện so với camera và cách khoảng 40cm - 50cm - Hoạt động ổn định trong môi trường có ánh sáng vừa đủ và cử chỉ của

người dùng không quá nhanh

1.4 Nội dung nghiên cứu

Trong quá trình thực hiện Khóa luận tốt nghiệp với đề tài “Thiết kế và thi công hệ thống điều khiển xe lăn điện điều khiển bằng cử chỉ tay sử dụng thông minh nhân tạo”, nhóm chúng em đã tập trung giải quyết và hoàn thành được những nội dung sau:

- Nội dung 1: Tham khảo tài liệu và tóm tắt tài liệu để đưa ra ý tưởng của đề tài

- Nội dung 2: Thu thập dữ liệu hình ảnh cử chỉ tay và gán nhãn

- Nội dung 3: Huấn luyện mô hình nhận dạng, phân loại cử chỉ tay sử dụng mô hình Yolov8 trên Google Colab

- Nội dung 4: Viết chương trình nhận dạng, phân loại cử chỉ từ mô hình đã huấn luyện

- Nội dung 5: Thiết kế sơ đồ khối, sơ đồ mô hình hệ thống

- Nội dung 6: Thiết kế, tính toán, kết nối Jetson Nano Developer Kit với Arduino Due, màn hình, camera

- Nội dung 7: Thiết kế phần cứng

- Nội dung 8: Thiết kế giao diện kết quả trên Jetson Nano Developer Kit - Nội dung 9: Thử nghiệm, kiểm tra, đánh giá, hiệu chỉnh

- Nội dung 10: Viết báo cáo thực hiện - Nội dung 11: Bảo vệ luận văn

Trang 19

1.5 Bố cục

Chương 1: Tổng quan

Chương này tập trung đặt vấn đề, trình bày lý do chọn đề tài, mục tiêu, giới hạn, nội dung nghiên cứu và bố cục của đề tài

Chương 2: Cơ sở lý thuyết

Chương này trình bày cơ sở lý thuyết và tham khảo các đề tài đã nghiên cứu trước đó để làm tiền đề thực hiện đồ án

Chương 3: Tính toán và thiết kế hệ thống

Chương này trình bày sơ đồ khối, đưa ra tính toán thiết kế phần cứng phù hợp với đề tài Trình bày về thiết kế hệ thống nhận đạng phân loại cử chỉ tay (chuẩn bị dữ liệu, huấn luyện, đánh giá mô hình)

Chương 4: Thi công hệ thống

Chương này trình bày quá trình thiết kế và thi công phần cứng và thiết kế phần mềm

Chương 5: Kết quả - nhận xét - đánh giá

Chương này trình bày kết quả thi công của đề tài, các nhận xét và đánh giá về sản phẩm sau khi hoàn thành

Chương 6: Kết luận và hướng phát triển

Chương này trình bày kết luận chung của nhóm về nội dung, quá trình tìm hiểu và thực hiện và kết quả của đề tài Đưa ra một số hướng phát triển, cải thiện khả thi trong tương lai

Trang 20

Chương 2: CƠ SỞ LÍ THUYẾT

2.1 Các mô hình, hệ thống điều khiển

2.1.1 Hệ thống điều khiển xe lăn điện sử dụng cảm biến gia tốc

Bộ điều khiển xe lăn điện sử dụng cảm biến gia tốc là sản phẩm nghiên cứu tạo ra một bộ điều khiển không dây sử dụng các cử chỉ bằng đầu để điều khiển hoạt động của xe lăn điện Hệ thống hoạt động dựa trên các cử chỉ thu thập được bằng đầu từ cảm biến gia tốc MPU6050 và xử lý dữ liệu thu được bằng Arduino Pro Mini sau đó gửi tín hiệu điều khiển về bộ xử lý tín hiệu điều khiển của xe thông qua module Bluetooth HC-05 để điều khiển xe hoạt động Hệ thống còn sử dụng cảm biến khoảng cách VL53L0X để phát hiện vật cản phía trước và sau xe giúp tránh khỏi những va chạm xảy ra Việc thiết kế và thi công bộ điều khiển với tiêu chí an toàn, dễ sử dụng cho người khuyết tật Hệ thống tương đối hoàn thiện về mặt thẩm mỹ và an toàn Về độ ổn định thì xe lăn sử dụng nguồn acquy an toàn và tai nghe điều khiển sử dụng bluetooth ổn định trong quá trình kết nối và truyền dữ liệu Ngoài một số ưu điểm thì hệ thống vẫn còn một số lỗi do khối cảm biến phát hiện vật cản lazer nên khi xe ra ngoài ánh sáng cường độ cao thì khoảng cách phát hiện vật cản của lazer bị thu hẹp vì ảnh hưởng của môi trường bên ngoài, ảnh hưởng của bề mặt vật vản phức tạp [2]

2.1.2 Hệ thống xe lăn tự định vị và đến đích dựa vào bản đồ 2D

Xe lăn là thiết bị hỗ trợ rất cần thiết cho người khuyết tật, người già di chuyển khó khăn Do đó đề tài được chọn giúp cho người khuyết tật và người già có thể dễ dàng trong quá trình di chuyển bẳng việc áp dụng công nghệ hiện nay vào xe để giúp cho xe có thể tự di chuyển và tìm đường đi đến vị trí đã chỉ định trước đó

Hệ thống sử dụng board Arduino Due để làm khối xử lý trung tâm và 2 encoder để bám theo chuyển động quay của bánh xe và xuất ra tín hiệu dưới dạng xung điện Màn hình LCD Nextion để nhập toạ đọ đích đến Bộ điều khiển động cơ gồm 2 module điều khiển động cơ BTS7960 43A để điều khiển 2 động cơ của xe lăn Mô hình xe có thể tự động tìm đường về đích và có thể né tránh những chướng ngại mà mô hình phát hiện trên đường đi.Hệ thống định vị được vị trí với sai số nhỏ Bên cạnh những ưu điểm thì hệ thống còn có nhưng khuyết điểm cần khắc phục như dễ bị ảnh

Trang 21

hưởng bởi môi trường vận hành như địa hình gồ ghề , mặt sàn trơn, xử lý chưa được tối ưu hoàn toàn gây ra hiện tượng giật, rung lắc [3]

2.1.3 Hệ thống điều khiển xe lăn điện thông qua tín hiệu điện não và camera

Nhận thấy nhu cầu đi lại của người khuyết tật là vấn đề cần được quan tâm, để họ có thể dễ dàng di chuyển thì phương tiện gắn liền với cuộc sống của họ chính là xe lăn Đề tài này nhằm mục đích đáp ứng nhu cầu di chuyển nhưng không tốn nhiều công sức và tiện lợi trong việc sử dụng

Hệ thống sử dụng board Arduino Nano làm bộ xử lý trung tâm kết hợp với việc điều khiển xe thông qua tín hiệu điện não và camera tránh vật cản giúp người sử dụng tránh được những va chạm không cần thiết xảy ra Hệ thống có cấu trúc bên ngoài đơn giản, bộ điều khiển gọn nhẹ phụ hợp nhiều loại xe lăn điện, camera đặt phía trước xe lăn, bộ Emotiv Epoc được đội lên đầu người dùng để điều khiển

Trải qua quá trình thực nghiệm, kết quả hệ thống xe lăn điện có khả năng xác định được vật cản nhoè vào camera, điều khiển được xe theo tín hiệu điện não, điều hướng xe lăn tránh vật cản, tối ưu được quãng đường đi khi kết hợp camera với tín hiệu điện não [4]

2.1.4 Hệ thống xe lăn tự hành dùng camera 3D

Trong cuộc sống, xe lăn là thiết bị hỗ trợ cần thiết cho những người khuyết tật, nó đã và đang ứng dụng trong các hộ gia đình có người khuyết tật, di chuyển khó khăn Đề tài nhằm mục đích giúp người khuyết tật có khả năng di chuyển một cách tự động, linh hoạt

Hệ thống sử dụng Arduino Nano làm bộ xử lý trung tâm, module bluetooth 06 và Camera Intel RealSense D435 3D Xe lăn đạt được những mục tiêu nhận diện vật cản phía trước, xác định được vật mốc và cho xe ngừng di chuyển tại vật mốc Ngoài những kết quả đạt được thì hệ thống vẫn còn những hạn chế như khả năng nhận dạng bị ảnh hưởng bởi các yếu tố môi trường ánh sáng nhiễu, chỉ nhận dạng được vật có nhiều đặc trưng và nằm trong khoảng cách gần [5]

Trang 22

HC-2.1.5 Hệ thống điều khiển xe lăn điện và giao tiếp theo hướng nhìn của mắt

Những bệnh nhân mắc chứng liệt luôn là những người cần được quan tâm và giúp đỡ trong cuộc sống Việc di chuyển của bệnh nhân hết sức khó khăn, một số bệnh nhân mắc chứng liệt còn không thể giao tiếp Vì thế, đề tài này đưa ra giải pháp để giúp những bệnh nhân ấy có thể giao tiếp với mọi người xung quanh và điều khiển xe lăn điện thông qua cử động mắt của họ

Hệ thống sử dụng camera thu thập dữ liệu thời gian thực, dữ liệu sẽ được gửi tới Jetson Nano Developer Kit Mô hình nhận dạng Yolov4 sử dụng để nhận diện hướng nhìn của mắt từ dữ liệu thu được để đưa ra các tín hiệu điều khiển xe Bệnh nhân giao tiếp với giao diện ứng dụng hiển thị thông qua màn hình Waveshare 10.1 inch, ngoài ra còn sử dụng loa để phát âm thanh giao tiếp cho những lựa chọn giao tiếp cơ bản Khi cần di chuyển , họ chỉ cần sử dụng các hướng nhìn của mắt, đưa ra các lệnh đièu khiển để xe di chuyển theo ý muốn Tuy nhiên, vấn đề về độ chính xác, tốc độ xử lý chưa cao và bất tiện về phần cứng là hạn chế của đề tài [6]

2.1.6 Mô hình thùng rác di chuyển theo cử chỉ tay

Vấn đề rác thải vẫn đang là một điểm nhấn nguy hiểm cho môi trường sống của con người trên toàn thế giới Sự ô nhiễm cho đến hiện tạo thì không chỉ dừng lại ở môi trường sống nào mà có thể nói là tất cả Vì vậy bảo vệ môi trường không chỉ là mọi người tự ý thức mà cụ thể là những giải pháp Cho nên đề tài này ngoài việc ý tưởng và mong muốn góp phần cải tạo môi trường ô nhiễm

Mô hình sử dụng camera thu thập dữ liệu cử chỉ sau đó sẽ được gửi tới Jetson Nano Developer Kit Mô hình nhân dạng cử chỉ dùng mạng Nơron tích chập để nhận diện cử chỉ tay từ ảnh thu được từ camera để đưa tín hiệu điều khiển ra ESP32 điều khiển robot thùng rác di động Mô hình có khả năng di chuyển tự động thông qua các cảm biến tránh vật cản hoặc có thể điều khiển bằng cử chỉ tay thông qua app Hiển thị dung lượng rác và thông báo rác đầy qua app.Sau khi thực nghiệm mô hình hoạt động ổn định, độ chính xác khá cao Tuy nhiên thời gian xử lý nhận diện cử chỉ bàn tay còn chậm, nhận diện sai trong điều kiện ánh sáng kém [7]

Trang 23

2.1.7 Mô hình điều khiển thiết bị bằng cử chỉ tay

Đề tài thực hiện điều khiển sáng và tắt 5 Led đơn thông qua 5 cử chỉ tay của con người thông qua xử lý ảnh Hệ thống gồm có 1 webcam để thu nhận ảnh có chứa tay được kết nối với một máy tính chạy chương trình xử lý Chương trình có nhiệm vụ tìm, xác định nơi chứa bàn tay có trong ảnh bằng phương pháp lọc màu da Sau đó thực hiện khoanh vùng và chọn vùng thực sự chứa bàn tay Tiếp theo lần lượt thực hiện các phương pháp co ảnh, giãn ảnh, trừ ảnh để tìm và gắn nhãn cho các vùng ngón tay Thông qua việc đếm số vùng đã gắn nhãn chương trình sẽ đưa ra kết luận số ngón tay có trong ảnh Kết quả được hiển thị lên màn hình máy tính dạng hình ảnh thông qua giao diện người dùng và xuất ra tín hiệu điều khiển ra PIC16F887 thông qua cổng COM để bật/tắt 5 đèn LED trên phần cứng bên ngoài được kết nối với chương trình [8]

2.2 Một số mô hình nhận dạng cử chỉ tay

2.2.1 Nhận dạng cử chỉ tay dùng mô hình mạng nơron tích chập

Giao diện người và máy sẽ trực quan nếu con người có thể điều khiển thiết bị bằng cử chỉ hay giọng nói mà không cần đùng các thiết bị điêu khiển khác Hệ thống thị giác máy tính sẽ thích hợp hơn trong môi trường ồn ào hay âm thanh bị nhiễu Mạng nơron tích chập được áp dụng khá nhiều trong các bài toán nhận dạng với độ chính xác cao như nhận dạng gương mặt, nhận dạng chữ số viết tay, xử lý ngôn ngữ tự nhiện Bài nghiên cứu [9] này thiết lập một mạng nơron tích chập với 14 lớp và ứng dụng vào hệ thống nhận dạng 6 cử chỉ bàn tay, với đầu vào là các ãnh tĩnh thu được từ camera Tập dữ liệu huấn luyện được tạo ra từ các cử chỉ tay của 7 người Kết quả mô phỏng cho thấy hệ thống có độ chính xác cao 98,6% đối với các ảnh bàn tay chụp chính diện, có độ sáng và độ mở của các ngón tay thích hợp

Mô hình mạng nơron tích chập đề xuất cho ứng dụng nhận dạng cử chỉ bàn tay có thể ứng dụng trong các hệ thống điều khiển không tiếp xúc, ứng dụng chuyển đổi ngôn ngữ cử chỉ sang văn bản hoặc trong các ứng dụng điều khiển khác

Trang 24

2.2.2 Nhận dạng cử chỉ tay dùng phương pháp HMM

Phương pháp nhận biết cử chỉ bằng Mô hình Markov ẩn (Hidden Markov Model - HMM) là một trong những phương pháp phổ biến và mạnh mẽ được sử dụng trong lĩnh vực nhận diện cử chỉ HMM được ứng dụng trong việc mô hình hóa chuỗi dữ liệu, trong đó mỗi trạng thái của mô hình được gán với một cử chỉ cụ thể HMM có khả năng học và nhận biết các chuỗi cử chỉ dựa trên quá trình học từ dữ liệu huấn luyện Khi được huấn luyện đúng cách, HMM có thể nhận diện và phân loại các cử chỉ mới mà không cần phải biết trước về chúng [10]

Phương pháp HMM cho phép nhận biết cử chỉ một cách linh hoạt và có thể được áp dụng trong nhiều lĩnh vực, từ nhận diện ngôn ngữ cử chỉ đến điều khiển các ứng dụng công nghiệp và y tế

2.2.3 Nhận dạng cử chỉ tay cho người khiếm thính dùng mô hình mạng học sâu YOLO

Ngôn ngữ cử chỉ là một trong những thách thức để có thể hiểu và cũng như luyện tập thì mới có thể thành thạo được Với sự phát triển của cồng đồng người khiếm thính, thì các nhà nghiên cứu đã và đang timd hiểu nhũng phương pháp khác nhau để có thể tiếp cận và đơn giản hoá các ngôn ngữ cử chỉ Đề tài [11] này tận dụng các bàn tay vật mốc để phát hiện 10 chữ cái trong hệ thống chữ ASL Thuật toán suy luận Mediapipe dùng để phát hiện các đặng trưng của bàn tay, các đặc trưng này sẽ được đưa vào huấn luyện bằng mạng YOLOv7 để đem lại kết quả dò tìm đúng hơn Trong đề tài sử dụng 2000 bức ảnh được thu thập thủ công tùe 5 người có độ tuổi và giới tính khác nhau Các hình ảnh sau khi thu thập sẽ được lọc nhiễu bằng phương pháp tích chập và định lại kích thước trước khi đưa vào mô hình mạng YOLOv7 cải tiến để thực hiện huấn luyện Kết quả huấn luyện chỉ số trung bình của độ chính xác mAP đạt 0.995, độ chính xác đạt 99.4% tham số thu hồi đạt 99,2% Độ chính xác của các kí tự “a”, “c”, “e”, “g”, “h”, “i”, “j” có độ chính xác 100%, “b” đạt 98% “c” đạt 97% và “f” có độ chính xác thấp nhất là 84%

Trang 25

2.2.4 Nhận dạng cử chỉ tay cho ngôn ngữ kí hiệu bằng mạng nơron

Giao tiếp phổ biến nhất với hầu hết các hệ thống máy tính hiện nay thường sử dụng chuột và bàn phím Mặc dù cử chỉ tay, một phương pháp tương tác không cần chạm, được coi là hiệu quả và trực quan để tương tác với máy tính, nhưng nó hiện vẫn ít được người dùng chấp nhận Nguyên nhân chính là do việc phát hiện chính xác các cử chỉ trong không gian không khí đang gặp nhiều thách thức kỹ thuật

Đề tài này [12] giới thiệu về tính năng phát hiện cử chỉ tay trong Ngôn ngữ ký hiệu của Mỹ, sử dụng phương pháp K-Nearest Neighbor thông qua Mediapipe - một framework được thiết kế để giảm thiểu những rắc rối kỹ thuật trong việc nhận diện chính xác cử chỉ Khung này học từ các bản trình diễn và cho phép người dùng tương tác trực tiếp với máy tính chỉ qua camera RGB mà không cần sử dụng các thiết bị chạm Điều này tạo ra một trải nghiệm tương tác linh hoạt và thú vị, nơi người dùng có thể tùy chỉnh và thực hiện các cử chỉ trong thời gian thực

Nghiên cứu này tận dụng kỹ thuật theo dõi ngón tay với độ chính xác cao, sử dụng Bàn tay Mediapipe để trích xuất các điểm mốc từ hình ảnh 2D Quá trình này giúp phát hiện và trích xuất đặc điểm quan trọng của bàn tay từ mỗi hình ảnh Hệ thống có khả năng nhận diện 21 điểm chính trên mỗi bàn tay và hỗ trợ việc đồng thời phát hiện nhiều bàn tay Các điểm mốc bàn tay được trích xuất từ hình ảnh bàn tay có thể được sử dụng như một đặc trưng quan trọng để huấn luyện và kiểm tra mô hình

2.4 Ứng dụng mô hình nhận dạng đối tượng với giải pháp suy luận vào nhận dạng cử chỉ tay

Mô hình nhận dạng đối tượng ( YOLOv7) và giải pháp suy luận (Mediapipe) được dùng ở đề tài [11] và [12] để thực hiện nhận dạng phân loại cử chỉ tay cho ra kết quả phân loại tốt và ổn định Dựa trên những cơ sở đó, nhóm lựa chọn sử dụng mô hình mạng YOLO kết hợp với Mediapipe để thực hiện bài toán nhận dạng cử chỉ tay để điều khiển xe lăn điện

Trang 26

2.4.1 Giải pháp suy luận

Giải pháp suy luận - Mediapipe được thiết kế để xử lý suy luận dựa trên đa dạng dữ liệu [13], đã được phát triển bởi Google và mang đến một giao diện chương trình ứng dụng mã nguồn mở với nhiều tính năng hữu ích cho nghiên cứu trong lĩnh vực trí tuệ nhân tạo và máy học Điều đặc biệt là, Mediapipe không chỉ mạnh mẽ về chức năng mà còn tiêu thụ rất ít tài nguyên, một điểm đặc biệt trái ngược với nhiều mô hình máy học khác, thường yêu cầu tài nguyên phần cứng đáng kể Với kích cỡ nhỏ và hiệu suất năng lượng cao, Mediapipe trở thành lựa chọn linh hoạt có thể tích hợp vào hệ thống vạn vật kết nối Internet mà không làm suy giảm hiệu suất

Mediapipe hỗ trợ suy luận 3D, giúp chuyển đổi thông tin từ không gian 2D sang không gian 3D, có ứng dụng trong việc theo dõi chuyển động và định vị Nổi trội hơn cả Mediapipe được ứng dụng nhiều trong các nghiên cứu phát hiện cử chỉ tay, bàn tay Mediapipe được trích xuất các điểm mốc từ 1 hình ảnh 2D cho việc phát hiện và trích xuất bàn tay vật mốc Hệ thống có thể trích xuất 21 điểm chính trên mỗi bàn tay và hổ trợ cho việc phát hiện nhiều bàn tay đồng thời Vật mốc bàn tay được trích xuất từ hình ảnh bàn tay có thể được sử dụng như một đặc trưng cho việc huấn luyện và kiểm tra một mô hình

Hình 2.1 Các đặc trưng bàn tay được trích xuất bởi thuật toán Mediapipe

2.4.2 Mô hình nhận dạng đối tượng

Mô hình mạng YOLO (You Only Look Once) là một kiến trúc mạng neural convolutional (CNN) được phát triển để thực hiện tác vụ nhận diện vật thể trong ảnh và video Khác với các mô hình chỉ có khả năng phân loại đối tượng bằng cách đưa ra dự đoán về nhãn, YOLO tập trung vào việc phát hiện đối tượng [14] Nó không chỉ có khả năng phát hiện nhiều đối tượng với nhiều nhãn khác nhau, mà còn có khả năng

Trang 27

xác định vị trí chính xác của các đối tượng trong một hình ảnh thông qua việc đặt khung bao quanh đối tượng dưới dạng hình chữ nhật.

YOLO chuyển đổi bài toán nhận dạng đối tượng thành một bài toán hồi quy trên miền không gian các bounding box Thuật toán chia ảnh đầu vào thành một lưới S x S ô Nếu tâm của đối tượng cần xác định rơi vào một ô nào đó, thì ô đó sẽ đảm nhận việc xác định đối tượng và tạo ra bounding box tương ứng Thuật toán này sử dụng một mạng neural đơn với các đặc trưng được trích xuất từ các lớp convolution để dự đoán bounding box trong mỗi ô và xác suất loại đối tượng cụ thể Cuối cùng sẽ có nhiều bounding box được dự đoán với kích thước và vị trí khác nhau Bằng cách sử dụng thuật toán Non-Maximum Suppression (NMS), từ đó có thể loại bỏ hầu hết các bounding box bị trùng lặp, chỉ giữ lại các bounding box có xác suất dự đoán cao nhất [15].

Hình 2.2 Cách thức hoạt động của mô hình nhận dạng đối tượng YOLO

Đề tài này sử dụng mô hình nhận diện đối tượng YOLOv8, phiên bản nâng cấp của YOLOv7 ở đề tài [11], để phục vụ việc nhận diện đối tượng trên thiết bị YOLOv8 được chọn do có tốc độ nhận diện nhanh hơn và độ chính xác cao hơn so với phiên bản tiền nhiệm YOLOv7.

Kiến trúc của YOLOv8 được xây dựng dựa trên các phiên bản trước của thuật toán YOLO YOLOv8 sử dụng một mạng neural convolutional có thể chia thành hai phần chính: phần gói và phần đầu Một phiên bản điều chỉnh của kiến trúc CSPDarknet53 được sử dụng làm phần gói của YOLOv8 Kiến trúc này bao gồm 53 lớp convolution và sử dụng các kết nối chéo giữa các giai đoạn để cải thiện luồng

Trang 28

trách nhiệm dự đoán các bounding box, điểm đối tượng và xác suất lớp cho các đối tượng được phát hiện trong một hình ảnh Một trong những điểm nổi bật của YOLOv8 là việc sử dụng cơ chế tự chú ý trong phần đầu của mạng Cơ chế này cho phép mô hình tập trung vào các phần khác nhau của hình ảnh và điều chỉnh mức độ quan trọng của các đặc trưng khác nhau dựa trên sự liên quan của chúng đối với tác vụ

Một đặc điểm quan trọng khác của YOLOv8 là khả năng thực hiện việc nhận diện đối tượng với nhiều quy mô khác nhau Mô hình sử dụng một mạng cơ sở của đặc trưng để nhận diện các đối tượng có kích thước và quy mô khác nhau trong một hình ảnh Mạng cơ sở này bao gồm nhiều lớp để nhận diện các đối tượng với các quy mô khác nhau, cho phép mô hình nhận diện các đối tượng lớn và nhỏ trong một hình ảnh [16]

Trang 29

Chương 3: TÍNH TOÁN VÀ THIẾT KẾ

3.1 Giới thiệu

Mục tiêu để hoàn thành đề tài này là thiết kế hệ thống điều khiển xe lăn bằng cử chỉ tay, sử dụng camera để chụp hình ảnh cử chỉ tay Sau khi chụp ảnh có cử chỉ tay Jetson Nano Developer Kit sẽ xử lý hình ảnh đưa vào mô hình nhận dạng đối tượng YOLO để đưa ra các lệnh điều khiển

Trong chương này, nhóm sẽ tiến hành tính toán và thiết kế từng khối trong hệ thống và trình bày quá trình tính toán, xây dựng mô hình nhận diện cử chỉ tay

Quá trình tính toán và thiết kế gồm có 2 phần: tính toán và thiết kế hệ thống và thiết kế mô hình nhận diện cử chỉ tay

3.2 Tính toán và thiết kế hệ thống 3.2.1 Thiết kế sơ đồ khối hệ thống

Theo yêu cầu đặt ra của đề tài, nhóm đã thiết kế sơ đồ khối cho hệ thống bao gồm: khối nguồn, khối thu thập dữ liệu, khối xử lý trung tâm, khối điều khiển, khối động cơ, khối hiển thị Sơ đồ khối được mô tả như hình 3.1

Hình 3.1 Sơ đồ khối của hệ thống

Khối xử lý trung tâm: thu nhận ảnh từ khối thu thập dữ liệu, dùng thuật toán nhận

Trang 30

lên khối hiển thị, tiếp đó sẽ gửi tín hiệu điều khiển tới khối điều khiển qua phương thức truyền dữ liệu không dây bluetooth để điều khiển khối động cơ

Khối thu thập dữ liệu: thu thập ảnh cử chỉ tay của người dùng thông qua camera sau đó truyền dữ liệu đến khối xử lý trung tâm để xử lý dữ liệu ảnh đầu vào

Khối hiển thị: có chức năng hiển thị cử chỉ tay của người dùng và cho biết trạng thái di chuyển của xe

Khối điều khiển: đóng vai trò vận hành khối động cơ từ việc nhận dữ liệu điều khiển từ khối xư lý trung tâm

Khối nguồn: có chức năng cực kì quan trọng đó là cấp nguồn cho các thiết bị thông qua các mạch giảm áp - dòng phù hợp để các khối hoạt động ở mức điện áp ổn định nhất

3.2.2 Tính toán và thiết kế sơ đồ mạch a Thiết kế khối xử lý trung tâm

Khối xử lý trung tâm sẽ đảm bảo xử lý toàn bộ hệ thống thiết bị Nhiệm vụ của đề tài là sử dụng thuật toán nhận diện cử chỉ của tay Vì vậy, khối xử lý trung tâm sẽ là một vi điều khiển hoặc máy tính nhúng có khả năng xử lý mạnh mẽ cho các thuật toán mạng nơron, đồng thời giữ kích thước nhỏ gọn phù hợp để thiết kế trên xe Sau khi nghiên cứu thị trường, Raspberry Pi 4 và Jetson Nano là hai lựa chọn đáp ứng được yêu cầu Tuy Raspberry Pi 4 có ưu điểm về hỗ trợ chuẩn không dây và giá thành trong khi đó Jetson Nano vượt trội với GPU 128 lõi CUDA Dựa vào nhu cầu nhận diện đối tượng để nhận diện cử chỉ tay và tốc độ xử lý nhanh nên nhóm đề tài quyết định chọn máy tính nhúng Jetson Nano làm bộ xử lý trung tâm [17]

Hình 3.2 Jetson Nano Developer Kit

Trang 31

Bảng 3.1 Thông số kỹ thuật Jetson Nano Developer Kit

Model Jetson Nano Developer Kit A02

GPU 128-core Maxwell

CPU Quad-core ARM A57 1.43 GHz

Memory 4 GB 64-bit LPDDR4 25.6 GB/s

Storage MicroSD

Display HDMI 2.0 and eDP 1.4

USB 4x USB 3.0, USB 2.0 Micro-B

Others GPIO, I2C, I2S, SPI, UART

Hình 3.3 Sơ đồ kết nối Jetson Nano với các thiết bị ngoại vi

Sơ đồ kết nối của Jetson Nano với các thiết bị ngoại vi như hình 3.3: - Cổng DC kết nối với ngõ ra của module giảm áp DC-DC 15A - Cổng HDMI kết nối với cổng HDMI trên màn hình

- Cổng USB1 kết nối với cổng micro USB trên màn hình - Cổng USB2 kết nối với đầu USB của Webcam

b Thiết kế khối thu thập dữ liệu

Trang 32

năng thu nhận ảnh màu rõ nét, độ tương phản cao, có khả năng thu nhận hình ảnh trong nhiều điều kiện ánh sáng môi trường và có cổng kết nối thích hợp với khối xử lý trung tâm Với đề tài này, có thể nói việc thu ảnh từ cử chỉ tay là chìa khoá quan trọng dẫn đến sự thành công của đề tài Sau khi tìm hiểu, nhóm đã quyết định chọn Webcam W2 Full HD 1080P Với độ phân giải 1080P 30FPS mang lại hình ảnh sắc nét cho hình ảnh thu được và có thể xoay 360o phù hợp với việc đặt cố định trong quá trình thu dữ liệu ảnh đầu vào

Hình 3.4 Webcam W2 Full HD

Bảng 3.2 Thông số kỹ thuật Webcam W2 Full HD

Độ phân giải tối đa 1080P/30FPS Camera Mega Pixel 2.4MP

Trang 33

c Thiết kế khối hiển thị

Khối hiển thị sử dụng màn hình cảm ứng Raspberry 7 inch HD [18] với độ phân giải 800×480 Có chức năng hiển thị trạng thái hoạt động của xe, cử chỉ tay và giao diện ứng dụng điều khiển giúp người dùng thao tác trực tiếp trên màn hình cảm ứng Màn hình giao tiếp với khối xử lý trung tâm thông qua cổng HDIM và lấy nguồn từ cổng USB 3.0 5V-2A của Jetson như hình 3.7

Hình 3.6 (a) ảnh mặt trước màn hình 7inch HD cảm ứng , (b) ảnh mặt sau màn hình 7inch HD cảm ứng

Bảng 3.3 Thông số kỹ thuật của Màn hình Cảm ứng 7 inch

Module Raspberry 7 inch HDMI LCD

Trang 34

Hình 3.7 Sơ đồ kết nối khối hiển thị với khối xử lý trung tâm

d.Thiết kế khối điều khiển

Khối điều khiển sử dụng Arduino Due R3 [19] có nhiệm vụ nhận tín hiệu điều khiển từ khối xử lý trung tâm gửi quả để điều khiển xe Sơ đồ kết nối Arduino Due với các ngoại vị được trình bày như hình 3.12:

Bảng 3.4 Thông số kỹ thuật Arduino Due

Vi điều khiển AT91SAM3X8E

Đầu nối USB Micro USB

Pin Chân đầu vào/ra digital 54

Chân đầu vào analog 12 Chân đầu ra analog 2

Trang 35

Dòng điện một chiều trên mỗi chân I / O (nhóm 1)

Vì tính tiện lợi của giao tiếp truyền tải dữ liệu không dây của Bluetooth Nhóm đã quyết định lựa chọn module Bluetooth HC-05 để truyền nhận dữ liệu giữa máy tính nhúng Jetson Nano Developer Kit và Aruino Due để điều khiển khối động cơ Module bluetooth HC-05 [20] là một module Bluetooth thường được sử dụng để thiết lập kết nối không dây giữa các thiết bị điện tử Đặc biệt, HC-05 thường được tích hợp vào các dự án Arduino và các dự án IoT

Hình 3.8 Module Bluetooth HC-05

Bảng 3.5 Thông số kỹ thuật Module Bluetooth HC-05

Điện áp hoạt động 3.3-5V

Mức điện áp chân giao tiếp TTL tương thích 3.3-5VDC

Bluetooth protocol Bluetooth specification v2.0 + EDR

Frequency 2.4 GHz ISM band

Synchronous 1 Mbps/1 Mbps

Dòng điện khi hoạt động khi Pairing 30 mA, bình thường 8mA

Trang 36

Module HC- 05 kết nối với Arduino Due theo chuẩn UART như hình 3.9: - Chân RXD module HC-05 kết nối với chân TX3 của Arduino Due - Chân TXD module HC-05 kết nối với chân RX3 của Arduino Due - Chân VCC module HC-05 kết nối với chân 5V của Arduino Due - Chân GND module HC-05 kết nối với chân GND của Arduino Due

Hình 3.9 Sơ đồ kết nối Arduino Due với Module Bluetooth HC-05

Do xe lăn sử dụng động cơ công suất cao lên 60W nên nhóm sử dụng hai mạch điều khiển động cơ BTS7960 với đầu vào điện áp điều khiển động cơ là 24VDC, mạch có khả năng xử lý dòng điện tải lên đến 15A Mạch này nhận tín hiệu từ vi điều khiển Arduino Due để điều khiển hai động cơ, giúp xe có thể di chuyển dễ dàng theo hướng thuận và nghịch với tốc độ được điều khiển

Nguồn điện chính là ắc quy 24VDC, được chia làm hai để cấp điện cho động cơ và thông qua mạch giảm áp để cung cấp nguồn cho cầu H BTS7960, vi điều khiển Arduino, và module Bluetooth Chân L_EN và R_EN được kết nối vào hai chân của vi

Trang 37

điều khiển để đảm bảo hoạt động đồng bộ của cầu H Hai chân RPWM và LPWM được sử dụng làm chân PWM để điều khiển tốc độ của động cơ

Hình 3.10 Module BTS7960

Bảng 3.6 Thông số kĩ thuật Module BTS7960

Điện áp công suất 6-27VDC

Điện áp điều khiển 3.3-5V

Dòng điện Max 43A

Tần số điều khiển Max 25KHz IC Driver BTS7960

Trang 38

Sơ đồ kết nối module BTS7960 với Arduino Due như hình 3.11:

- Chân R_EN, L_EN của moduel BTS7960 trái và phải lần lượt kết nối với

chân 10,11 của Arduino Due

- Chân RPWM của module BTS7960 trái và phải lần lượt kết nối với chân 8, 13 của Arduino Due

- Chân LPWM của module BTS7960 trái và phải lần lượt kết nối với chân 9, 12 của Arduino Due

Lựa chọn điện trở kéo lên nút nhấn reset hệ thống:

Theo thông số của nhà sản xuất vi điều khiển Atmel ATSAM3X8E thì điện trở kéo lên ở chân reset nhỏ hơn 100kΩ để đảm bảo ngõ vào tích cực mức cao khi không nhấn

Nhóm lựa chọn điện trở kéo lên cho nút nhấn reset là 10kΩ đủ lớn để tránh tiêu tốn năng lượng khi nút không nhấn và đủ nhỏ để đảm bảo đủ dòng khi nút được nhấn

Hình 3.12 Sơ đồ kết nối khối điều khiển

Trang 39

e Thiết kế khối nguồn

Khối nguồn có chức năng quan trọng là cung cấp nguồn cho toàn bộ hệ thống, đảm bảo cho hệ thống có thể hoạt động ổn định Để thiết kế khối nguồn, nhóm tiến hành tổng hợp và liệt kê các thông số giá trị dòng điện và điện áp của các linh kiển sử dụng trong hệ thống được trình bày như bảng 3.7

Bảng 3.7 Thông số các thiết bị sử dụng

STT Tên thiết bị Số lượng Điện áp (V) Dòng điện (mA)

1 Jetson Nano 1 5 4000 2 Màn hình 7inch HD 1 5 1000 3 Arduino Due 1 5 500 4 Module cầu H BTS7960 2 5 100 5 Module bluetooth HC-05 1 5 30 6 Webcam W2 HDFull 1 5 900 7 Động cơ PWM xe 2 24 5000

Tổng dòng tiêu thụ (mA) 11.530

Dựa theo bảng thống kê trên, ta có tổng dòng điện trong mạch là 11.530 (mA) ở các mức điện áp sử dụng là 5V, 24V Về khối nguồn của thiết bị, để đảm bảo tính di động vì phải điều khiển xe lăn Acquy sẽ là lựa chọn hợp lý cho việc thiết kế thiết bị Acquy sử dụng có dung lượng 12Ah và điện áp ra là 24V trong đó 5VDC sẽ được cung cấp nguồn từ ắc quy thông qua việc dùng mạch giảm áp LM2596 hạ xuống 5V cấp cho bộ điều khiển Do Jetson Nano Developer Kit tiêu tốn dòng khá cao trong việc chạy mô hình nơron nên nhóm sử dụng module giảm áp XL4016E1 công suất cao để cấp cho Jetson Nano

Thời gian hoạt động của hệ thống khi dùng acquy phụ thuộc vào công suất của tải và dung lượng của acquy và được tính theo công thức:

t = A×V×η

Ngày đăng: 07/06/2024, 16:36

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w