Tải bản đầy đủ (.docx) (49 trang)

Điều khiển nhận bằng cử chỉ và giọng nói (có code)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.55 MB, 49 trang )

ĐỒ ÁN TỐT NGHIỆP

ĐIỀU KHIỂN NHỆN BẰNG CỬ CHỈ VÀ
GIỌNG NÓI

1


MỤC LỤC

DANH MỤC CÁC HÌNH VẼ

2


3


DANH MỤC CÁC BẢNG BIỂU

4


DANH MỤC CÁC TỪ VIẾT TẮT

DC

Direct Current

I2C


Inter-Intergrated-Circuit

IC

Integrated Circuit.

LCD

Liquid Crystal Display

Rx

Receiver

Tx

Transmitter

UART

Universal Asynchronous Receiver/Transmitter

SPI
Serial Peripheral Bus

5


ĐỒ ÁN TỐT NGHIỆP
Trang 6/44


CHƯƠNG 1.

-

GIỚI THIỆU ĐỀ TÀI

1.1 Giới thiệu
Trong những năm trở lại đây, việc nghiên cứu các chuyển động của các robot
di chuyển bằng chân thu hút được nhiều người quan tâm bởi vì khả năng di
chuyển của nó linh hoạt hơn trên các địa hình phức tạp như địa hình lồi lỡm,
sỏi, đá,…
VOICE
GESTURE

RF

BUTTON

Hình 1-1: Bộ điều khiển và nhện 4 chân

-

Robot nhện có 4 chân và mỗi chân gồm 3 bậc tự do. Do đó việc di chuyển
trở nên linh hoạt, tuy nhiên quá trình tính toán chuyển động giữa các khớp có
chút phức tạp.

-

Bộ điều khiển có thể điều khiển nhện bằng nhiều lệnh như: giọng nói, cử chỉ

và nút nhấn.

-

Robot nhện có thể đi tiến, đi lùi, qua trái, qua phải, đứng, ngồi.

-

Đề tài sử dụng vi điều khiển ATmega328p, module nhận diện giọng nói,
module nhận dạng cử chỉ APDS-9960, điều khiển truyền lệnh qua sóng RF.

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

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 7/44

-

Thiết kế mạch vi điều khiển, hiểu được cảm biến nhận dạng cử chỉ APDS
-9960, cảm biến nhận dạng giọng nói.

-

Biết được cách di chuyển của nhện.

-


Hoàn thành phần cứng nhện.

-

1.3 Hướng nghiên cứu
Hiểu được cách hoạt động của các module nhận dạng cử chỉ, nhận dạng
giọng nói.

-

Tìm hiểu thuật toán di chuyển của nhện 4 chân

CHƯƠNG 2.

THIẾT KẾ HỆ THỐNG

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 8/44

1.4 Sơ đồ khối

BỘ ĐIỀU KHIỂN
RF
- Voice
Nhện 4 chân

- Gesture

- Button
- LCD

Hình 2-2: Sơ đồ tổng quan hệ thống

1.1.1 Khối phát
I2C

I2CNguồn
(Pin)
Voice

T
AR
USPI

Gesture

MCU

Button
NRF24L01

Hình 2-2: Sơ đồ khối phát

Chức năng của các khối phát:
-

Nguồn: dùng để cấp nguồn chỉ vi điều khiển và các module khác.


-

Voice, Gesture, Button: là các tín hiệu đầu vào để điều khiển nhện.

Điều khiển nhện bằng cử chỉ và giọng nói

LCD


ĐỒ ÁN TỐT NGHIỆP
Trang 9/44

-

MCU: là vi điều khiển ATmega328p.

-

Màn hình hiển thị: là LCD16x2.

-

NRF24L01: để truyền tín hiệu điều khiển tới khối thu.
1.1.2 Khối thu
Nguồn
(Pin)

SPI
MCU


NRF24L01

Servo

Hình 2-3: Sơ đồ khối thu

Chức năng của các khối thu:
-

Nguồn: là pin dùng để cấp nguồn cho vi điều khiển và servo và các module
khác.

-

NRF24L01: là module nhận tín hiệu từ phía phát

-

MCU: là vi điều khiển ATmega328p.

-

Servo: là dùng để điều khiển các chân của robot nhện.

1.5 Các linh kiện module

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP

Trang 10/44

1.1.3 Voice Recognition RV3 [1]

Hình 2-4: Module Voice Recognition RV3 [2]

Sơ đồ chân module Voice Recognition RV3
- VCC: Chân cấp nguồn 5V.
- GND: Chân GND.
- TX, RX: transmitter/receiver
Đặc tính module Voice Recognition RV3
- Module hỗ trợ tối đa 80 lệnh, mỗi lệnh tối đa 1.5s.
- Điều khiển dễ dàng qua UART/GPIO.
-

Hỗ trợ thư viện arduino.
1.1.4 APDS-9960 [3]

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 11/44

Hình 2-5: APDS-9960 [3]

Sơ đồ chân module APDS-9960
-

VL: nguồn cho led hồng ngoại.


-

GND: chân đất.

-

VCC: nguồn cung cấp 3.3V.

-

SDA: I2C data.

-

SCL: I2C clock.

-

INT: chân ngắt

Thông số kỹ thuật
-

Điện áp 3.3V.

-

Khoảng cách phát hiện 10- 20 Cm.


-

Giao tiếp I2C.
1.1.5 LCD 16x2

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 12/44

Hình 2-6: LCD 16x2 [4]

-

Tổng quan: Màn hình LCD 16x2 sử dụng driver HD44780, có thể hiển thị 2
dòng với mỗi dòng 16 kí tự, LCD16x2 có độ phổ biến cao, bền, giá thành rẻ.
Sơ đồ chân:
• VSS: Chân đất.
• VO:Chân tùy biến độ tương phản của LCD.
• VDD: Chân cấp nguồn 5V DC.
• R/W: Chân chọn chế độ đọc/ghi (Read/Write) của LCD.
• D0 - D7: tám đường của bus dữ liệu của LCD.
• Enable pin: Cho phép ghi vào LCD.
• Backlight: Tắt bật đèn nền LCD.
• RS: Chân chọn thanh ghi (Register select).

1.1.6 Vi điều khiển ATmega328p [7]

Điều khiển nhện bằng cử chỉ và giọng nói



ĐỒ ÁN TỐT NGHIỆP
Trang 13/44

Hình 2-7: ATmega328p [8]

ATmega328p là một chíp vi điều khiển được sản xuất bới hãng Atmel. ATmega328p
là vi điều khiển 8 bit, được sử dụng rộng rãi trong những dự án nhỏ của sinh viên.
Thông số kỹ thuật của ATmega328p:
- Điện áp hoạt động 5V DC.
- Vi điều khiển có 14 chân I/O.
- Dòng tối đa trên mỗi chân I/O của vi điều khiển là 30mA.
- Vi điều khiển hoạt động ở tần số 16Mhz.
- Vi điều khiển có 6 chân analog.
- Dòng ra tối đa 5V là 500mA.
- Bộ nhớ Flash của vi điều khiển là 32Kb.
1.1.7 Servo S9G
Hình 2-8: Servo [5]

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 14/44

Hình 2-9: Bên trong động cơ servo [5]

Servo là một loại động cơ đặc biệt, nó chỉ quay khi được điều khiển bằng PPM với
góc quay từ 0->1800. Mỗi servo có kích thước và khối lượng khác nhau.

Động cơ servo là một hệ thống hồi tiếp, khi servo quay nó sẽ hồi tiếp tín hiệu về
cho vi điều khiển để biết vị trí góc đã đạt được hay chưa, nếu chưa nó sẽ tiếp tục
quay tiếp.

1.1.8 NRF24L01

Hình 2-10: Module NRF24L01 [6]

Giới thiệu: Module nRF24l01 hoạt động ở tần số ngắn 2.4GHz nên có tốc độ truyền
nhận dữ liệu cao. Module có 126 kênh truyền giúp ta có thể giao tiếp với nhiều
module nRF khác. Có thể điều chỉnh được công suất phát để tiết kiệm năng lượng.
Sử dụng giao tiếp SPI.
Sơ đồ chân của module nRF24l01:
-

VCC: chân cấp nguồn 3.6V.

-

GND: chân đất.

-

CE: chọn chế độ nhận hoặc truyền của module.

-

SCK: chân serial clock.

-


MISO: Master Input Slave Output.

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 15/44

-

MOSI: Master Ouput Slave Input.

CHƯƠNG 3.

LẬP TRÌNH VÀ THIẾT KẾ MẠCH

1.6 Lưu đồ thuật toán
1.1.9 Bên phát
Start

Y
Xử lý

Phát

Xử lý

Phát


Xử lý

Phát

Voice
N
Y
Gesture
N
Y
Button
N

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 16/44

Hình 3-1: Lưu đồ thuật toán bên phát

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 17/44

1.1.10 Bên thu
Start


RF

Lệnh đi tiến

Y

Đi tiến

N
Lệnh đi lùi

Y
lùi

N
Lệnh qua trái

Y
Qua trái

N
Lệnh qua phải

Y
Qua phải

N

Hình 3-2: Lưu đồ thuật toán bên thu


1.7 Nguyên lý hoạt động của mạch
Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 18/44

-

Mạch gồm có 2 phần chính: Bên phát và bên thu, những thành phần linh kiện
đã được trình bày ở trên.
RF

Bộ điều

Nhện

khiển

Hình 3-3: tổng quát bên phát và bên thu

 Bộ điều khiển (bên phát): gồm có 3 chức năng điều khiển nhện, nhận dạng
giọng nói, cử chỉ và nút nhấn.
o Khi ta nói thì module voice recognition sẽ nhận dạng giọng nói, xử lý
coi đúng câu lệnh không, sau đó gửi tín hiệu cho vi điều khiển, sau đó
vi điều khiển sẽ truyền lệnh qua RF để điều khiển nhện.
o Module nhận dạng cử chỉ cũng vậy, khi ta đưa tay lên xuống, qua trái,
qua phải thì module sẽ nhận dạng và xử lí để đưa tín hiệu cho vi điều
khiển.
o Ngoài ra chúng ta còn có thể điều khiển nhện qua nút nhấn.

 Nhện (bên thu): module RF thu sẽ nhận tín hiệu từ RF phát và đưa tín hiệu
tới vi điều khiển để điều khiển nhện đi tiến, lùi, qua trái , qua phải…
-

Sau đây là bảng tổng hợp các lệnh để điều khiển nhện:
Voice recognition
Tiến
Lùi
Trái
Phải

Gesture

Nút nhấn

Bảng 3-1: Tổng hợp các lệnh điều khiển nhện.

1.8 Sơ đồ nguyên lý vi điều khiển và mạch in
1.1.11 Bên thu

Điều khiển nhện bằng cử chỉ và giọng nói

Nhện thực hiện
Đi Tiến
Đi Lùi
Qua Trái
Qua Phải


ĐỒ ÁN TỐT NGHIỆP

Trang 19/44

Hình 3-4: Sơ đồ nguyên lý bên thu

Hình 3-5: Mạch in bên thu

Hình 3-6: Mạch in bên thu

1.1.12 Bên phát

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 20/44

Hình 3-7: Sơ đồ nguyên lý bên phát

Hình 3-8: Mạch in bên phát

Hình 3-9: Mạch in bên phát

1.1.13 Hoàn thành nhện và tay điều khiển

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 21/44


Hình 3-10: Hoàn thành nhện

Hình 3-11:Hoàn thành tay điều khiển

1.9 Sơ đồ di chuyển của nhện 4 chân

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 22/44

1.1.14 Di chuyển tiến

1
0

3
2

1
0

3
2

1
0

3

2

1
0

3
2

1
0

3
2

1
0

3
2

Hình 3-12: Sơ đồ di chuyển tiến

1.1.15 Qua phải

1
0

3
2


1
0

3
2

1
0

1
0

Hình 3-13: Sơ đồ di chuyển qua phải

Điều khiển nhện bằng cử chỉ và giọng nói

3
2

3
2


ĐỒ ÁN TỐT NGHIỆP
Trang 23/44

1.1.16 Di chuyển lùi

2
3


2
3

0
1

0
1

2
3

0
1

2
3

0
1

2
3

0
1

2
3


0
1

Hình 3-14: Sơ đồ di chuyển lùi

1.1.17 Qua trái

1
0

3
2

1
0

3
2

1
0

1
0

Hình 3-15: Sơ đồ di chuyển qua trái

CHƯƠNG 4.


Điều khiển nhện bằng cử chỉ và giọng nói

NHẬN XÉT

3
2

3
2


ĐỒ ÁN TỐT NGHIỆP
Trang 24/44

1.10 Nhận xét
Đây là các bảng tổng hợp các kết quả thử nghiệm hoạt động của mạch:
Voice Recognition (lệnh)
Đi tiến
Đi lùi
Qua trái
Qua phải
Đứng
Ngồi

Số lần thử
10
10
10
10
10

10

Số lần nhận đúng
8
8
7
6
7
5

Bảng 3-2: Bảng kết quả thử nghiệm của Voice

Gesture (lệnh)
Đi tiến
Đi lùi
Qua trái
Qua phải
Đứng
Ngồi

Số lần thử
10
10
10
10
10
10

Số lần đúng
9

9
9
9
9
9

Bảng 3-3: Bảng kết quả thử nghiệm của Gesture.

Button (lệnh)
Đi tiến
Đi lùi
Qua trái
Qua phải
Đứng
Ngồi

Số lần thử
10
10
10
10
10
10

Số lần đúng
10
10
10
10
10

10

Bảng 3-4: Bảng kết quả thử nghiệm của Button.

Dựa vào bảng số liệu trên thì ta có thể rút ra được các ưu điểm và nhược điểm của
mạch:
Ưu điểm
-

Robot nhện có thể kết hợp với 12 động cơ servo để di chuyển các tác vụ đơn
giản như qua trái, qua phải, tiến lùi, đứng, ngồi.

-

Robot nhện có thể di chuyển được trên các địa hình phức tạp như sỏi nhỏ, đá
nhỏ, các bậc thang với chiều cao khoảng 1 cm…

Nhược điểm

Điều khiển nhện bằng cử chỉ và giọng nói


ĐỒ ÁN TỐT NGHIỆP
Trang 25/44

-

Giọng nói chỉ hoạt động được trong môi trường yên tĩnh, khó nhận dạng
trong môi trường hơi ồn ào, nói sai giọng đôi lúc nhận sai lệnh vì giọng nói
không chuẩn.


-

Cử chỉ cũng đôi lúc nhận nhầm.

-

Nút nhấn hoạt động tốt.

1.11 Hướng phát triển
Hướng phát triển thêm sau này:
-

Lắp thêm camera quan sát, việc truyền tín hiệu hình ảnh xuống cho người
dùng thì sẽ dễ dàng điều khiển từ xa những nơi con người không nhìn thấy.

-

Thêm cảm biến tránh vật cản để nhện di chuyển tốt hơn,…

TÀI LIỆU THAM KHẢO
Tiếng Việt:
[1]

Phạm Thị Cư – Lý Thuyết Tín Hiệu. Nhà xuất bản giáo dục.

[2]

Arduino.vn/voice-recgnitionRV3.


[3]

Datasheet APDS-9960.

[4]

/>
[5]

/>
[6]

/>
Điều khiển nhện bằng cử chỉ và giọng nói


×