THIẾT KẾ XE ROBOT ĐIỀU KHIỂN BẰNG SMARTPHONE, SỬ DỤNG KIT LAUNCHPAD VÀ LẬP TRÌNH TRÊN MÔI TRƯỜNG ENERGIA - Pdf 35

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA TP.HCM
KHOA ĐIỆN TỬ VIỄN THÔNG

ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI:

THIẾT KẾ XE ROBOT ĐIỀU KHIỂN BẰNG
SMARTPHONE, SỬ DỤNG KIT LAUNCHPAD VÀ
LẬP TRÌNH TRÊN MÔI TRƯỜNG ENERGIA

Tp Hồ Chí Minh ,Tháng 7 năm 2015


Lời cam đoan

LỜI CAM ĐOAN

2


Tóm tắt đề tài

TÓM TẮT ĐỀ TÀI
-

-

-

-


LỜI CAM ĐOAN ..................................................................................................... 1
TÓM TẮT ĐỀ TÀI ................................................................................................... 3
MỤC LỤC ................................................................................................................. 4
1.1

Đặt vấn đề: ...................................................................................................... 5

1.2

Hướng giải quyết: ........................................................................................... 5

CHƯƠNG II: CƠ SỞ LÝ THUYẾT........................................................................ 2
2.1Vi điều khiển/vi xử lý Launchpad MSP430G2553: ............................................ 2
2.2 Module bluetooth HC05: ................................................................................... 4
2.4

IC L298: .......................................................................................................... 6

CHƯƠNG III: THIẾT KẾ PHẦN CỨNG .............................................................. 9
3.1 Tổng quan thiết kế hệ thống: ............................................................................. 9
3.2 Quy trình hoạt động của hệ thống: ................................................................. 10
3.3 Một số hình ảnh về cấu trúc, cơ khí của xe: .................................................... 11
3.4 Sơ đồ nguyên lý của mạch: ............................................................................... 15
3.5 Layout của mạch cầu H điều khiển động cơ: .................................................. 15
CHƯƠNG IV: THIẾT KẾ PHẦN MỀM .............................................................. 16
4.1 Giới thiệu về ENERGIA: .................................................................................. 16
4.2 Phần mềm điều khiển xe robot qua Bluetooth trên điện thoại: ...................... 19
4.3 Lưu đồ thuật toán cho hệ thống: ...................................................................... 22
4.4 Nội dung code Energia nạp cho Launchpad: ................................................. 25


Mục tiêu đặt ra cho đề tài là cần thiết kế ra một chiếc xe có khả năng dò đường
như một robot tự động,phát hiện được các vật cản trên đường và có thể điều khiển
chuyển động thông qua smartphone. Các yêu cầu đặt ra là xe phải hoạt động ổn định
lâu dài,tự động hoặc điều khiển bằng smartphone.
Với các yêu cầu đặt ra,nhóm chúng em đã tìm tòi và ứng dụng thành công
module Bluetooth HC-05 để giao tiếp với điện thoại,nhận dữ liệu từ điện thoại,đưa
vào trung tâm xử lý nhằm điều khiển xe robot theo ý muốn. Trong trường hợp địa
hình khuất tầm nhìn, tối tăm, nguy hiểm, cách xa người điều khiển thì vấn đề tự dò
đường, phát hiện vật cản và đảm bảo an toàn là rất quan trọng. Nhóm em khắc phục
điều này bằng cách cho xe robot hoạt động ở chế độ tự động, dùng cảm biến siêu âm
SRF05 có khả năng phát hiện vật cản ở tầm xa khoảng từ 3-4m, từ đó xe sẽ tự đưa ra
quyết
định
di
chuyển
hợp
lý.


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

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Vi điều khiển/vi xử lý Launchpad MSP430G2553:
a) Giới thiệu qua họ vi điều khiển MSP430G2553.
Vi điều khiển (Micro controller unit – MCU ) là đơn vị xử lý nhỏ, nó được
tích hợp toàn bộ các bộ nhớ như ROM , RAM , các port truy xuất , giao tiếp
ngoại vi trực tiếp trên 1 con chip hết sức nhỏ gọn.
MSP430 có một số phiên bản như: MSP430x1xx, MSP430x2xx,
MSP430x3xx, MSP430x4xx, MSP430x5xx.

động ngoại cho chip giống như những dòng khác.
 Port I/O :
 Port 1: có 8 chân từ P1.0 đến P1.7 tương ứng với các chân từ 2-7 và 14 ,
15.
 Port 2: cũng gồm có 8 chân P2.0 – P2.7 ứng với các chân 8 – 13 , 18,19.
Ngoài chức năng I/O thì trên mỗi pin của các port đều là những chân đa
chức năng.

c) Sơ đồ các khối trên kit LaunchPad :

3


Chương 2: Cơ sở lý thuyết
2.2 Module bluetooth HC05:
Tổng quan :
Bluetooth module SLAVE cho phép vi điều khiển kết nối với các thiết bị ngoại vi:
smartphone, laptop, usb bluetooth... thông qua giao tiếp Serial gửi và nhận tín hiệu 2
chiều.
Module bluetooth được tích hợp trên board cho phép ta sử dụng nguồn từ 3.5V
đến 6V cung cấp cho board mà không cần lo lắng về chênh lệch điện áp 3V - 5V gây
hỏng board.
Bluetooth module gồm 6 chân theo thứ tự: KEY, VCC, GND, TX, RX, STATE.
Đây là module bluetooth SLAVE nghĩa là ta không thể chủ động kết nối bằng vi
điều khiển, mà cần sử dụng smartphone, laptop, bluetooth usb... để dò tín hiệu và kết
nối từ smartphone, laptop, bluetooth usb,... Sau khi kết nối thành công, ta có thể gửi và
nhận tín hiệu từ vi điều khiển đến các thiết bị này.

Hình ảnh của module bluetooth:


a) Tổng quan về cảm biến siêu âm SRF05:
Cảm biến SRF05 là một loại cảm biến khoảng cách dựa trên nguyên lý thu
phát siêu âm. Cảm biến gồm một bộ phát và một bộ thu sóng siêu âm. Sóng siêu
âm từ đầu phát truyền đi trong không khí, gặp vật cản (vật cần đo khoảng cách tới)
sẽ phản xạ ngược trở lại và được đầu thu ghi lại. Vận tốc truyền âm thanh trong
không khí là một giá trị xác định trước, ít thay đổi. Do đó nếu xác định được
khoảng thời gian từ lúc phát sóng siêu âm tới lúc nó phản xạ về đầu thu sẽ quy đổi
được khoảng cách từ cảm biến tới vật thể. Cảm biến SRF05 cho khoảng cách đo từ
3cm tới 3m.
SRF05 có thể thiết lập cách hoạt động thông qua các chân điều khiển
MODE. Nối hoặc không nối chân MODE xuống GND cho phép cảm biến được
điều khiển thông qua giao tiếp dùng 1 chân hay 2 chân IO.
Ở đây, ta dùng MODE 1 ( chân MODE để trống )
b) Nguyên lý hoạt động:
Modun cảm biến SRF05 có hai chân TRIGGER và ECHO riêng biệt.
Khi chân MODE để trống (chân MODE có điện trở kéo lên VCC, khi để trống nó
sẽ nhận mức điện áp VCC) SRF05 sẽ sử dụng cả 2 chân chức năng TRIGGER và
ECHO cho việc điều khiển hoạt động của cảm biến.

Hình vẽ biểu diễn sơ đồ chân của SRF05

5


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

Hình vẽ biểu diễn sự điều khiển SRF05
Từ hình vẽ mô tả trên, để điều khiển SRF05 ở MODE1 cần cấp cho chân
TRIGGER một xung điều khiển với độ rộng tối thiểu 10uS. Sau đó một khoảng
thời gian, đầu phát sóng siêu âm sẽ phát ra sóng siêu âm, vi xử lý tích hợp trên

sẽ được nối với động cơ.
+ Hai chân ENA và ENB dung để điều khiển các mạch cầu H trong
L298. Nếu ở mức logic “1” (nối với nguồn 5V) thì cho phép mạch cầu H
hoạt động, nếu ở mức logic “0” thì mạch cầu H không hoạt động.
 Cách điều khiển chiều quay với L298:
+ Khi ENA = 0: Động cơ không quay với mọi đầu vào .
+ Khi ENA = 1:
INT1 = 1; INT2 = 0: động cơ quay thuân.
INT1 = 0; INT2 = 1: động cơ quay nghịch.
INT1 = INT2: động cơ dừng ngay tức thì.
(tương tự với các chân ENB, INT3, INT4).

7


Chương 2: Cơ sở lý thuyết
b.) Sơ đồ mắc IC L298 với động cơ DC:

8


Chương 3: Thiết kế phần cứng

CHƯƠNG 3: THIẾT KẾ PHẦN CỨNG
3.1 Tổng quan thiết kế hệ thống:
a. Sơ đồ khối hệ thống:

b. Chức năng các khối:
 Khối điều khiển bởi Smart Phone: sử dụng phần mềm bluetooth để gửi
đi các tín hiệu điều khiển di chuyển tới/lui, trái/phải; chọn mode điều

chuyển
b) Mode điều khiển tự động:
Ở chế độ này sẽ không sử dụng chức năng điều khiển di chuyển tới/lui,
trái/phải bằng tay nữa. Mà xe sẽ tự đo khoảng cách từ nó đến vật cản gần nhất, rồi
từ đó đưa ra quyết định về hướng di chuyển tiếp theo.
Xe sử dụng sóng siêu âm từ đầu phát của cảm biến siêu âm truyền đi trong
không khí, khi gặp vật cản (vật cần đo khoảng cách tới) sẽ phản xạ ngược trở lại và
được đầu thu ghi lại. Vận tốc truyền âm thanh trong không khí là một giá trị xác
định trước, ít thay đổi. Do đó từ khoảng thời gian xác định được từ lúc phát sóng
siêu âm tới lúc nó phản xạ về đầu thu sẽ quy đổi được khoảng cách từ cảm biến tới
vật thể.
o Nếu ‘khoảng cách’ > 20cm: xe di chuyển tới.
o Nếu 10cm < ‘khoảng cách’ < 20cm xe rẽ trái hoặc rẽ phải.
Nếu ‘khoảng cách’ < 10cm: xe di chuyển lùi.

10


Chương 3: Thiết kế phần cứng
3.3 Một số hình ảnh về cấu trúc, cơ khí của xe:

11


Chương 3: Thiết kế phần cứng

12


Chương 3: Thiết kế phần cứng

dụng. Điều này giúp người dùng có thể tạo ra những ứng dụng dễ dàng hơn trên
Launchpad mà không cần phải hiểu chi tiết về phần cứng.

Giao diện sử dụng của Energia
Thêm một ưu điểm nữa là Energia có môi trường mã nguồn mở liên tục được cập nhật
và phát triển bởi cộng đồng người dùng rất lớn trên thế giới, tạo cơ hội thuận lợi cho
bất kì ai đều có thể tiếp cận được các mã nguồn mở, từ đó phát triển nên ứng dụng cho
riêng mình
4.1.2. Giới thiệu sơ lược các thành phần của một chương trình Energia:

16


Chương 4: Thiết kế phần mềm
Gồm 3 phần chính là: structure, values, và functions.
-

-

-

Structure:
 setup(), loop()
 Control Structures: if, if…else, for, switch case, while, do…while,
break, continue, return, goto.
 Arithmetic Operators: = (assignment operator), + (addition), (subtraction), * (multiplication), / (division), % (modulo)
 Comparison Operators: ==, !=, < , >, <=, >=
 Boolean Operators; && (and), || (or), ! (not)
 Bitwise Operators: &, |, ^, ~,
Hình minh họa như sau:

18


Chương 4: Thiết kế phần mềm
4.2 Phần mềm điều khiển xe robot qua Bluetooth trên điện thoại:

Phần mềm trên có tên Bluetooth SPP
Để kết nối với Module HC 05 thì nhấn CONNECT, nhấp vào “HC-05” và nhấn
CONNECT

Khi kết nối thành công sẽ có thông báo: “Connect with: HC-05”
Khi nhấn các nút:

19


Chương 4: Thiết kế phần mềm









Nút lên: gởi mã ‘1’, xe chạy thẳng.
Nút xuống: gởi mã ‘2’, xe chạy lùi.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status