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

222BAO CAO DO AN TN

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 (2.99 MB, 75 trang )

Đồ án tốt nghiệp

NHẬN XÉT, ĐÁNH GIÁ CỦA GIÁO VIÊN HƯỚNG DẪN
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
ĐIỂM: ………………………………………………… (bằng chữ …………)
Hà Nội, ngày

tháng

năm 2017

GIÁO VIÊN HƯỚNG DẪN

Th.S VŨ VIỆT HƯNG

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8



Đồ án tốt nghiệp

NHẬN XÉT, ĐÁNH GIÁ CỦA GIÁO VIÊN PHẢN BIỆN
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
ĐIỂM: ………………………………………………… (bằng chữ …………)
Hà Nội, ngày

tháng

năm 2017

GIÁO VIÊN PHẢN BIỆN

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8



Đồ án tốt nghiệp

LỜI CẢM ƠN
Để hoàn thành Đề tài, lời đầu tiên em xin gửi lời cảm ơn chân thành tới
Thầy Vũ Việt Hưng đã tận tình hướng dẫn em trong th ời gian th ực hi ện Đ ồ
án này! Đây sẽ là vốn kiến thức, hành trang quý báu cho t ương lai s ự nghi ệp
của em.
Em cũng xin chân thành cảm ơn quý Thầy, Cô tr ường Đại học Công
Nghiệp Hà Nội, đặc biệt là các Thầy, Cô trong khoa Điện T ử đã nhiệt tình
giúp đỡ, truyền đạt kiến thức trong suốt quá trình học tập c ủa em t ại đây.
Vốn kiến thức thu được trong quá trình học tập không chỉ là n ền t ảng cho
quá trình thực hiện Đồ án tốt nghiệp mà còn là hành trang quý báu cho s ự
nghiệp của em sau này.
Em cũng xin chân thành cảm ơn sự ủng hộ và giúp đ ỡ nhi ệt tình của gia
đình, bạn bè – những người đã động viên, giúp đỡ em trong suốt quá trình
học tập và thực hiện cuốn Đồ án này.
Dù đã cố gắng hết sức, song chắc chắn cuốn báo cáo Đ ồ án này không
tránh khỏi những thiếu sót; em rất mong nhận được sự thông cảm và chỉ bảo
của Thầy, Cô và các bạn.
Cuối cùng, chúng em kính chúc Thầy, Cô và bạn bè dồi dào s ức kh ỏe và
thành công trong sự nghiệp!

Hà Nội, ngày

tháng

năm 2017

Sinh viên thực hiện:


SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8


Đồ án tốt nghiệp

Nguyễn Văn Quỳnh

MUC LUC
DANH MỤC TỪ VIẾT TẮT........................................................................................................ 7
DANH MỤC HÌNH VẼ................................................................................................................... 8
LỜI NÓI ĐẦU.................................................................................................................................. 9
TỔNG QUAN ĐỒ ÁN................................................................................................................. 11
1. Ý TƯỞNG THIẾT KẾ....................................................................................................... 11
2. MÔ HÌNH HỆ THỐNG...................................................................................................... 11
3. NỘI DUNG BÁO CÁO ĐỀ TÀI......................................................................................... 12
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT........................................................................................ 13
1.1. TÌM HIỂU CÔNG NGHỆ BLUETOOTH[1].................................................................13
1.1.1. Khái niệm Bluetooth............................................................................................. 13
1.1.2. Các đặc điểm Bluetooth...................................................................................... 13
1.1.2.1. Ưu điểm............................................................................................................. 13
1.1.2.2. Nhược điểm...................................................................................................... 14
1.1.3. Các khái niệm dùng trong công nghệ Bluetooth.......................................14
1.1.3.1. Master Unit........................................................................................................ 14
1.1.3.2. Slaver Unit.......................................................................................................... 14
1.1.3.3. Piconet................................................................................................................. 15
1.1.3.4. Scatternet........................................................................................................... 16
1.1.4. Định nghĩa các liên kết vật lý trong Bluetooth..........................................17
1.1.5. Trạng thái của thiết bị Bluetooth....................................................................18
1.1.6. Các chế độ kết nối................................................................................................. 18

1.1.7. Cách thức hoạt động của Bluetooth...............................................................18
1.1.8. Module Bluetooth HC 05[2]..................................................................................20
1.1.8.1. Đặc điểm kỹ thuật......................................................................................... 20
1.1.8.2. Hardware............................................................................................................ 21
1.2. TÌM HIỂU MÔI TRƯỜNG LÂP TRÌNH ANDROID.............................................23
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8


Đồ án tốt nghiệp

1.2.1. Khái niệm HĐH Android..................................................................................... 23
1.2.2. Lịch sử phát triển của Android[3].....................................................................23
1.2.3. Ngôn ngữ lập trình................................................................................................ 24
1.2.4. Một số vấn đề của HĐH Android....................................................................25
1.2.4.1. Sự phân mảnh – không đồng nhất của HĐH Android....................25
1.2.4.2. Kích thước màn hình.....................................................................................25
1.2.5. Android Emulator.................................................................................................. 25
1.2.6. Android Studio:....................................................................................................... 26
1.2.7. Các phiên bản của HĐH Android đã ra mắt [4]............................................27
1.3. TÌM HIỂU DÒNG VI ĐIỀU KHIỂN STM32[5].........................................................32
1.3.1. Dòng ARM Cortex là gì?........................................................................................ 32
1.3.2. Đặc điểm nổi bật của STM32...........................................................................32
1.3.2.1. Tính bảo mật.................................................................................................... 32
1.3.2.2. Dòng Performance và dòng Access của STM32..................................33
1.3.3. Các phiên bản cấu trúc ARM.............................................................................33
1.3.4. Bộ xử lí và đơn vị xử lí trung tâm Cortex.....................................................33
1.3.4.1. Đơn vị xử lí trung tâm Cortex (Cortex CPU)........................................33
1.3.4.2. Bộ xử lí Cortex.................................................................................................. 34
1.3.5. Các chế độ năng lượng........................................................................................ 34
1.3.6. Kiểu đóng gói chip và kiểu chân linh kiện..................................................35

1.3.7. Nguồn cung cấp điện........................................................................................... 35
1.3.8. Mạch Reset................................................................................................................ 35
1.3.9. Kiến trúc hệ thống................................................................................................ 35
1.3.10. Các ngoại vi............................................................................................................ 36
1.3.10.1. Ngoại vi đa dụng.......................................................................................... 36
1.3.10.2. Kết nối với các giao tiếp khác................................................................38
1.3.11. Giới thiệu VĐK STM32F103RBT6[6].............................................................39
1.4. KẾT LUÂN CHƯƠNG................................................................................................... 40
CHƯƠNG 2: THIẾT KẾ XE MÔ HÌNH VÀ LÂP TRÌNH CHO MẠCH ĐI ỀU KHI ỂN
XE...................................................................................................................................................... 41
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8


Đồ án tốt nghiệp

2.1. PHÂN TÍCH VÀ XÁC ĐỊNH YÊU CẦU.......................................................................41
2.2. XÂY DỰNG HỆ THỐNG................................................................................................ 42
2.2.1. Thực hiện tạo ứng dụng trên điện thoại Android..................................42
2.2.1.1. Giới thiệu SONY XPERIA M4 Aqua Dual – điện thoại s ử d ụng đ ể
chạy và kiểm tra ứng dụng tạo ra..........................................................................42
2.2.1.2. Ứng dụng trên điện thoại..........................................................................43
2.2.1.2.1. Xử lí giao diện ứng dụng......................................................................45
2.2.1.2.2. Mã lệnh xử lí của ứng dụng...................................................................3
2.2.2. Thiết kế xe mô hình................................................................................................. 6
2.2.3. Chức năng các Module trong xe mô hình........................................................6
2.2.3.1. Kit STM32F103RBT6....................................................................................... 6
2.2.3.2. Module HC – 05.................................................................................................. 9
2.2.3.3. Module L298[7].................................................................................................... 9
2.2.3.4. Module hạ áp DC – DC 5A[8]........................................................................11
2.2.3.5. Servo Futaba MG995 và Servo Futaba SG90........................................12

2.2.4. Thuật toán điều khiển và ngôn ngữ lập trình...........................................14
2.2.5. Thiết kế xe mô hình.............................................................................................. 24
2.3. THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUA.............................................................26
2.4. KẾT LUÂN CHƯƠNG................................................................................................... 27
KẾT LUÂN..................................................................................................................................... 28
TÀI LIỆU THAM KHAO............................................................................................................. 29

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8


Đồ án tốt nghiệp

DANH MỤC TỪ VIẾT TẮT
Cụm từ viết tắt
HĐH
VĐK
App
ARM
IDE
MAC
AMA
PMA
SCO
SDK
WLAN

Chi tiết thông tin
Hệ điều hành
Vi điều khiển
Application: ứng dụng

Advanced RISC Machine: cấu trúc vi xử lí kiểu RISC
Intergrated Development Environment: môi trường
phát triển tích hợp
Media Access Control: điều khiển truy nhập môi
trường
Active Member Address: địa chỉ thành viên hoạt động
Parked Member Address: địa chỉ thành viên dừng hoạt
động
Synchronous Connection Oriented: định hướng kết nối
đồng bộ
Software Development Kit: bộ công cụ phát triển phần
mềm
Wireless Local Area Networks: mạng cục bộ không dây

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

7


Đồ án tốt nghiệp

DANH MỤC HÌNH VẼ

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

8


Đồ án tốt nghiệp
LỜI NÓI ĐẦU


Hiện nay, việc điều khiển các hệ thống từ đơn giản tới ph ức tạp sử
dụng đường truyền vô tuyến ngày càng gia tăng. Những hệ thống dây cáp
phức tạp lại không thể đáp ứng tốt nhu cầu này, nhất là khu v ực ch ật h ẹp,
nơi xa xôi, trên các thiết bị không cố định,… Vì vậy, công ngh ệ vô tuy ến đã
ra đời, đang phát triển mạnh mẽ, tạo sự thuận tiện cho đ ời s ống con ng ười
trong cuộc sống thường ngày.
Kỹ thuật không dây (vô tuyến) phục vụ rất nhiều nhu cầu khác nhau
của con người, từ nhu cầu làm việc, học tập cho đến các nhu c ầu gi ải trí:
xem phim, chơi game, nghe nhạc,… Để đáp ứng các nhu cầu khác nhau đó,
nhiều kỹ thuật không dây đã được ra đời như: Bluetooth, OpenAir, chu ẩn
802.11, WLAN, IrDA,…
Mỗi chuẩn kỹ thuật đều có những ưu, khuyết điểm riêng và chu ẩn
kết nối Bluetooth đang dần nổi lên là kỹ thuật không dây tầm ng ắn có
nhiều ưu điểm, thuận lợi cho các thiết bị di động. Bluetooth đang d ần lan
rộng khắp thế giới, xâm nhập vào mọi lĩnh vực thiết bị điện tử.
Trong số các thiết bị điện tử đó, Smartphone đã và đang phát tri ển
với tốc độ vượt bậc, chúng có nhiều tính năng nổi trội nh ư: nh ỏ g ọn, linh
hoạt, nghe nhạc, xem phim, soạn email, quay phim chất l ượng cao, tham
gia mạng xã hội,… tất cả mọi điều đó đã đưa điện thoại thông minh ngày
càng trở nên gần gũi với con người và là thiết bị không th ể thiếu trong
cuộc sống.
Nhắc tới điện thoại thông minh không thể không nh ắc tới s ự tr ỗi
dậy mạnh mẽ của HĐH Android; với khả năng tương thích với nhiều ph ần
cứng của các hãng sản xuất khác nhau, do đó th ị ph ần đi ện tho ại s ử d ụng
Android ngày một nhiều. Thêm vào đó, Android còn là m ột HĐH m ở, cho
phép người dùng thỏa sức tùy biến theo ý thích cá nhân.
Có thể thấy, sự phát triển của vi điều khiển gắn liền với s ự tiến bộ,
cải tiến không ngừng của ngành điện tử. Hiện nay, tạo sản phẩm đi ện t ử
sử dụng vi điều khiển khả trình là điều tất yếu và không th ể thiếu; đã có

rất nhiều các dòng vi điều khiển được tạo ra nh ư: AVR, PIC, ARM,… v ới
những ưu điểm, đặc tính riêng phù hợp cho từng nhu c ầu c ụ th ể. Hi ện t ại,
với nhu cầu ngày càng cao, các dòng vi điều khiển 8 bit th ực s ự không th ể
thực hiện các công việc đòi hỏi tốc độ xử lí cao, do đó dòng chip x ử lí lõi
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

9


Đồ án tốt nghiệp

ARM đã được tạo ra và ngày càng được ứng dụng rộng rãi trong các h ệ
thống nhúng mà đơn cử là các thiết bị di động do ưu th ế tuy ệt v ời v ề tiết
kiệm năng lượng, tốc độ xử lí cao và luôn sẵn có các công c ụ h ỗ tr ợ ph ần
cứng, phần mềm. Hãng sản xuất chip ST Microelectronic đã nhanh chóng
đưa ra dòng STM 32 – một dòng vi điều khiển d ựa trên n ền t ảng lõi ARM
Cortex – M3 thế hệ mới do hãng ARM thiết kế. Sự kết h ợp chip ARM vào
điều khiển Robot ở Việt Nam còn khá mới mẻ, do đó việc tìm hi ểu và
nghiên cứu lĩnh vực này là một vệc cần thiết.
Từ những lý do nêu trên, em đã chọn đề tài: “Nghiên cứu và thiết
kế xe mô hình điều khiển bằng Android” . Trong đề tài này, em tìm hiểu
kỹ thuật không dây Bluetooth, thiết kế xe mô hình và xây d ựng ứng d ụng
truyền dữ liệu qua Bluetooth từ Smartphone Android tới xe mô hình s ử
dụng vi điều khiển – STM32.

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

10



Đồ án tốt nghiệp

TỔNG QUAN ĐỒ ÁN
1. Ý TƯỞNG THIẾT KẾ
Thiết bị điều khiển:
Android là một HĐH mở và việc xây dựng ứng dụng trên HĐH
Android tương đối thuận lợi, dễ dàng; bởi Android có một cộng đồng
người dùng, nhà phát triển đông đảo, giúp mọi người có thể học hỏi và
trao đổi kinh nghiệm với nhau.
Thêm một ưu điểm nữa là khi sử dụng phần mềm trên điện thoại
chạy HĐH Android, người dùng có thể dễ dàng chia sẻ ứng dụng đó v ới
người khác qua Bluetooth; từ đó việc điều khiển thiết bị khác thông qua
ứng dụng trên điện thoại Android rất thuận tiện, tiết kiệm chi phí h ơn r ất
nhiều so với việc tạo bộ điều khiển. Ngoài ra, việc phát triển ứng dụng
được thực hiện bất cứ khi nào có thể mà không bị gò bó bởi bộ điều khiển
riêng biệt.
Từ những thuận lợi đó, em đã thực hiện tạo một ứng dụng Android –
có chức năng chính là truyền dữ liệu qua truy ền thông Bluetooth đ ể đi ều
khiển thiết bị ngoại vi.
Thiết bị ngoại vi:
Sử dụng một Module Bluetooth để truyền dữ liệu từ điện thoại tới
robot – sử dụng vi điều khiển. Vi điều khiển này có nhiệm v ụ nh ận tín
hiệu từ điện thoại, xử lí chúng và đưa lệnh điều khiển phần c ứng – robot.
2. MÔ HÌNH HỆ THỐNG
Dưới đây là hình ảnh mô tả tổng quát hệ thống:

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

11



Đồ án tốt nghiệp

Hình 1: Mô hình hệ thống
3. NỘI DUNG BÁO CÁO ĐỀ TÀI
Đề tài được chia ra làm 2 phần chương chính:
Chương 1: Cơ sở lý thuyết.
Chương 2: Thiết kế xe mô hình và lập trình cho mạch điều khiển xe.

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

12


Đồ án tốt nghiệp

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1. TÌM HIỂU CÔNG NGHỆ BLUETOOTH[1]
1.1.1. Khái niệm Bluetooth

Bluetooth là công nghệ không dây cho phép các thiết bị điện, đi ện t ử
giao tiếp với nhau trong khoảng cách ngắn, bằng sóng vô tuy ến qua băng
tần chung ISM (Industrial, Scientific, Medical) trong dải tần 2.4 – 2.48 GHz.
Đây là băng tần không cần đăng ký, được dành riêng cho các thiết b ị không
dây trong công nghiệp, khoa học và y tế.
Khi được kích hoạt, Bluetooth có thể tự động định vị nh ững thiết bị
khác có chung công nghệ trong vùng phủ sóng và bắt đầu k ết n ối v ới
chúng. Nó được định hướng sử dụng trong việc truyền dữ liệu và tiếng nói.
Bluetooth được thiết kế hoạt động ở mức năng lượng rất thấp.
1.1.2. Các đặc điểm Bluetooth


1.1.2.1. Ưu điểm
Tiêu thụ năng lượng thấp, cho phép ứng dụng trong nhiều thiết b ị,
bao gồm các thiết bị cầm tay và điện thoại di động.
Giá thành thấp.
Khoảng cách giao tiếp cho phép:
 Khoảng cách giữa 2 thiết bị đầu cuối có thể lên đến 10m ngoài
trời, 5m trong nhà.
 Khoảng cách thiết bị đầu cuối và Access Point có th ể lên đến
100m ngài trời và 30m trong nhà.
Bluetooth sử dụng băng tần không đăng ký 2.4GHz trên dải băng t ần
ISM. Tốc độ truyền dữ liệu có thể đạt tới mức tối đa 1Mbps.
Dễ dàng trong việc phát triển ứng dụng: Bluetooth kết n ối m ộ ứng
dụng này với một ứng dụng khác thông qua các chuẩn “Bluetooth profiles”,
do đó có thể độc lập về phần cứng và HĐH sử dụng.
Bluetooth được sử dụng trong giao tiếp dữ liệu tiếng nói: có 3 kênh
truyền tiếng nói, 7 kênh truyền dữ liệu trong một mạng cá nhân.
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

13


Đồ án tốt nghiệp

An toàn và bảo mật: được tích hợp với sự xác thực và mã hóa (Build
in authentication and encryption).
Tính tương thích cao, được nhiều nhà sản xuất ph ần c ứng và ph ần
mềm hỗ trợ.
Sử dụng “frequency hopping” giúp giảm va chạm sóng tối đa.
Có khả năng bảo mật từ 8 -> 128 bit.

1.1.2.2. Nhược điểm
 Không thể thiết lập các ứng dụng thời gian thực.
 Khoảng cách kết nối còn ngắn so với các công nghệ kết n ối không
dây khác.
 Số thiết bị active, pack cùng lúc trong một Piconet còn hạn chế.
 Tốc độ truyền của Bluetooth không cao.
 Bị nhiễu bởi một số thiết bị sử dụng sóng radio khác, các trang thi ết
bị khác.
 Bảo mật còn thấp.
1.1.3. Các khái niệm dùng trong công nghệ Bluetooth

1.1.3.1. Master Unit
Là thiết bị duy nhất trong một Piconet, Master thiết lập đồng h ồ
đếm xung và đồng hồ bước nhảy (hopping) để đồng bộ tất cả thi ết bị
trong cùng một Piconet mà nó đang quản lí, th ường là thiết b ị đ ầu tiên
chuyển đổi dữ liệu. Master cũng quyết định số kênh truyền thông. M ỗi
Piconet có một kiểu hopping duy nhất.
1.1.3.2. Slaver Unit
Là tất cả các thiết bị còn lại trong Piconet, m ột thiết bị không là
Master thì phải là Slaver. Có tối đa 7 Slave d ạng Active và 255 Slave d ạng
Parked (Inactive) trong một Piconet. Có 3 dạng Slave trong một Piconet:
Active:
Slave hoạt động, có khả năng trao đổi thông tin v ới Master và các
Slave Active khác trong Piconet. Các thiết bị ở trạng thái này đ ược phân
biệt thông qua một địa chỉ MAC hay AMA – đó là con số gồm 3 bit. Nên
trong một Piconet có tối đa 8 thiết bị ở trạng thái này (1 cho Master và 7
cho Slave).
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

14



Đồ án tốt nghiệp

Standby:
Là một dạng Inactive, thiết bị trong trạng thái này không trao đổi d ữ
liệu, sóng radio không có tác động lên, công suất giảm đến tối thiểu đ ể ti ết
kiệm năng lượng, thiết bị không có khả năng dò được bất c ứ mã truy c ập
nào; có thể coi những thiết bị đó nằm ngoài vùng kiểm soát của Master.
Parked:
Là một dạng Inactive, chỉ một thiết bị trong một Piconet th ường
xuyên được đồng bộ với Piconet, nhưng không có một đ ịa chỉ MAC nào.
Chúng như đang ở trạng thái ngủ và chờ được Master gọi dạy bằng tín
hiệu “beacon” – tín hiệu báo hiệu. Các thiết bị trạng thái Parked đ ược đánh
địa chỉ thông qua địa chỉ PMA. Đây là con số 8 bit đ ể phân bi ệt các Parked
Slave với nhau và có tối đa 255 thiết bị ở trạng thái này trong m ột Piconet.
1.1.3.3. Piconet
Piconet là một tập hợp các thiết bị được kết nối thông qua kỹ thu ật
Bluetooth theo mô hình Ad-hoc – đây là một kiểu mạng đ ược thiết l ập cho
nhu cầu truyền dữ liệu hiện hành và tức thời, tốc độ nhanh và kết nối sẽ
tự động hủy sau khi truyền xong. Trong một Piconet thì chỉ có một thi ết b ị
là Master; đây thường là thiết bị đầu tiên tạo kết n ối, nó có vai trò quy ết
định đến số kênh truyền thông và thực hiện đồng bộ giữa các thành phần
trong Piconet; các thiết bị còn lại là Slave – đó là các thiết bị g ửi yêu c ầu t ới
Master.
Lưu ý rằng, hai Slave muốn thực hiện liên lạc phải thông qua Master
bởi chúng không bao giờ kết nối trực tiếp với nhau, Master sẽ đồng bộ các
Slave về thời gian và tần số. Trong một Piconet có tối đa 7 Slave đang ho ạt
động tại một thời điểm.
Các mô hình Piconet:


SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

15


Đồ án tốt nghiệp

Hình 1.1: Một Piconet trong thực tế
1.1.3.4. Scatternet
Là hai hay nhiều Piconet độc lập và không đồng bộ; các Piconet này
kết hợp lại truyền thông với nhau.
Lưu ý:
Một thiết bị vừa là Master của Piconet này, vừa có thể là Slave của
Piconet khác.
Vai trò của một thiết bị trong Piconet là không c ố định, có nghĩa nó có
thể thay đổi từ Master thành Slave và ngược lại t ừ Slave thành Master. Ví
dụ nếu Master không đủ khả năng cấp tài nguyên phục vụ cho Piconet c ủa
mình, thì nó sẽ chuyển quyền cho một Slave khác giàu tài nguyên h ơn,
mạnh hơn; bởi vì trong một Piconet thì Clock và ki ểu Hopping đã đ ược
đồng bộ sẵn.

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

16


Đồ án tốt nghiệp

Hình 1.2: Một Scatternet gồm 2 Piconet

1.1.4. Định nghĩa các liên kết vật lý trong Bluetooth

ACL – Asynchronous Connectionless:
Được thiết lập cho việc truyền dữ liệu, những gói dữ liệu cơ bản
(primarily packet data). Là một kết nối point – to – multipoint gi ữa Master
và tất cả các Slave tham gia trong Piconet; chỉ tồn tại duy nh ất một kết n ối
ACL. Chúng hỗ trợ những kết nối chuy ển mạch gói (packet – switched
connection) đối xứng và không đối xứng. Những gói tin đa khe dùng ACL
link và có thể đạt tới khả năng truyền tối đa 723 kbps ở một h ướng và 57.6
kbps ở hướng khác. Master điều khiển độ rộng băng tần của ACL link và sẽ
quyết định xem trong một Piconet thì một Slave có thể dùng băng tần rộng
bao nhiêu. Những gói tin Broadcast sẽ được truyền bằng ACL link, t ừ
Master tới tất cả các Slave. Hầu hết các gói tin ACL đều có th ể truy ền l ại.
Synchronous Connection – Oriented (SCO):
Hỗ trợ kết nối đối xứng, chuyển mạch (circuit – switched), point – to
– point giữa một Slave và một Master trong một Piconet. K ết n ối SCO ch ủ
yếu dùng để truyền dữ liệu tiếng nói. Hai khe th ời gian liên tiếp đã đ ược
chỉ định trước sẽ được dành riêng cho SCO link. Dữ liệu truy ền theo SCO
link có tốc độ 64 kbps. Master có thể hỗ trợ tối đa 3 kết nối SCO đ ồng th ời.
SCO packet không chứa CRC (Cyclic Redundancy Check) và không bao gi ờ
truyền lại. Liên kết SCO được thiết lập chỉ sau khi m ột liên k ết ACL đ ầu
tiên được thiết lập.
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

17


Đồ án tốt nghiệp
1.1.5. Trạng thái của thiết bị Bluetooth


Có bốn trạng thái chính của một thiết bị Bluetooth trong một Piconet:
 Inquiring device (Inquiry mode): thiết bị đang phát tín hiệu tìm thi ết
bị Bluetooth khác.
 Inquiring scanning device (Inquiry scan mode): thiết bị nhận tín hiệu
inquiry của thiết bị đang thực hiện inquiring và trả lời.
 Paging device (page mode): thiết bị phát tín hiệu yêu cầu kết n ối v ới
thiết bị đã inquiry từ trước.
 Paging scanning device (page scan device): thiết bị nhận yêu c ầu k ết
nối từ paging device và trả lời.
1.1.6. Các chế độ kết nối

 Active mode: trong chế độ này, thiết bị Bluetooth tham gia vào ho ạt
động của mạng. Thiết bị Master sẽ điều phối l ưu lượng và đ ồng bộ
hóa cho các thiết bị Slave.
 Sniff mode: là một chế độ tiết kiệm năng lượng của thiết bị đang ở
trạng thái active. Ở trạng thái Sniff mode, thiết bị Slave lắng nghe tín
hiệu từ mạng với tần số giảm hay nói cách khác là giảm công su ất.
Tần số này phụ thuộc vào tham số của ứng dụng. Đây là chế độ ít
tiết kiệm năng lượng nhất trong ba chế độ tiết kiệm năng lượng.
 Hold mode: là một chế độ tiết kiệm năng lượng của thiết bị đang ở
trạng thái active. Master có thể đặt chế độ Hold mode cho Slave của
mình. Các thiết bị có thể trao đổi dữ liệu ngay lập tức ngay khi thoát
khỏi chế độ Hold mode. Đây là chế độ tiết kiệm năng lượng trung
bình trong ba chế độ tiết kiệm năng lượng.
 Park mode: là chế độ tiết kiệm năng lượng của thiết bị vẫn còn trong
mạng nhưng không tham gia vào quá trình trao đổi dữ liệu (inactive).
Thiết bị ở trạng thái Park mode sẽ bỏ địa chỉ MAC, chỉ lắng nghe tín
hiệu đồng bộ hóa và thông điệp broadcast của Master. Đây là ch ế đ ộ
tiết kiệm năng lượng nhất trong ba chế độ tiết kiệm năng lượng.
1.1.7. Cách thức hoạt động của Bluetooth


Kỹ thuật Bluetooth thực sự rất phức tạp; nó dùng kỹ thuật nhảy tần
trong các Timeslot (TS), được thiết kế để làm việc trong môi trường nhiễu
tần số radio, Bluetooth dùng nhảy tần để tạo nên sức mạnh liên kết
truyền thông và truyền thông thông minh. Cứ mỗi lần gửi hay nh ận m ột
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

18


Đồ án tốt nghiệp

packet xong, Bluetooth lại nhảy sang một tần số mới, nh ư thế sẽ tránh
được nhiễu từ các tín hiệu khác.
So sánh với các hệ thống khác làm việc trong cùng một d ải băng tần,
sóng radio của Bluetooth nhảy tần nhanh và dùng packet ngắn h ơn. Vì
nhảy nhanh và packet ngắn nên làm giảm va chạm v ới sóng t ừ lò vi sóng và
các phương tiện gây nhiễu khác trong khí quy ển.
Có ba phương pháp được sử dụng trong việc kiểm tra tính đúng đ ắn
của dữ liệu truyền đi:
 Forward Error Correction: thêm một số bit kiểm tra vào phần Header
hay Payload của packet.
 Automatic Repeat Request: dữ liệu sẽ truyền cho tới khi bên nhận
gửi thông báo đã nhận đúng.
 Cyclic Redundancy Check: mã CRC thêm vào các packet để kiểm
chứng liệu Payload có đúng không.
Blueooth dùng kỹ thuật sửa lỗi tiến FEC (Forward Error Correction)
để sửa sai do nhiễu tự nhiên khi truyền trong khoảng cách xa. FEC cho
phép phát hiện lỗi, biết sửa sai và truy ền đi tiếp (khác v ới kỹ thu ật BEC –
Backward Error Control: chỉ phát hiện, không biết sửa hay yêu c ầu truy ền

lại).
Giao thức băng tần cơ sở (Base band) của Bluetooth là s ự kết h ợp
giữa chuyển mạch và chuyển đổi packet. Các khe thời gian có th ể đ ược
dành riêng cho các packet phục vụ đồng bộ. Th ực hiện bước nh ảy t ần cho
mỗi packet được truyền đi. Một packet trên danh nghĩa sẽ chiếm một TS;
trên thực tế, nó có thể mở rộng chiếm 3 đến 5 TS.
Bluetooth hỗ trợ một kênh dữ liệu bất động bộ, hay ba kênh tín hiệu
thoại đồng bộ nhau cùng một lúc hay một kênh hỗ trợ cùng lúc d ữ liệu bất
đồng bộ và dữ liệu đồng bộ.
1.1.8. Module Bluetooth HC 05[2]

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

19


Đồ án tốt nghiệp

Hình 1.3: Module Bluetooth
 Module Bluetooth HC 05 là một cách dễ dàng để có thể s ử dụng giao
tiếp Bluetooth qua Serial Port, được thiết kế để truyền d ữ liệu n ối
tiếp qua wireless.
 Sử dụng chuẩn Bluetooth 2.0 và EDR 3 Mbps.
 Điều chế thu phát ở tần số 2.4 GHz, sử dụng chip Bluecore Bluetooth
04 – là chip duy nhất với hệ thống Cmos và AFH t ương thích v ới
nhiều tính năng nhảy tần.
1.1.8.1. Đặc điểm kỹ thuật
Tính năng phần cứng:









Độ nhạy: -80 dBm.
Công suất truyền lên đến +4 dBm.
Công suất thấp 1.8 V, hoạt động từ 1.8 V đến 3.6 V.
Điều khiển PIO.
Giao tiếp UART với tốc độ paud lập trình được.
Tích hợp antena.
Kết nối ở biên mạch.

Tính năng phần mềm:
 Tốc độ baud mặc định là 38400, databit: 8, Stopbit: 1, Parity: No.

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

20


Đồ án tốt nghiệp

 Tốc độ buad hỗ trợ: 9600, 19200, 38400, 57600, 115200, 230400,
460800.
 Khi có một xung ở PIO0, thiết bị sẽ bị ngắt kết nối.
 Trạng thái chỉ thị port PIO1: low = ngắt kết nối; high = đã k ết nối.
 PIO10 và PIO11 có thể được kết nối với led đỏ và led xanh riêng.
Khi Master và Slave được kết nối với nhau, led đỏ và ld xanh sẽ

nháy 1 lần/2s, khi ngắt kết nối chỉ led xanh nháy 2 lần/s.
 Tự động kết nối với thiết bị cuối cùng khi nguồn được cấp.
 Cho phép kết nối thiết bị mặc định.
 Tự động kết nối với pincode mặc định “0000” hoặc “1234”.
 Tự động reconnect trong 30 phút nếu bị đứt kết nối như khi v ượt
ra ngoài phạm vi kết nối.
1.1.8.2. Hardware

Hình 1.4: Mô hình phần cứng Module HC 05
Bảng mô tả chức năng các chân trong Module:
Tên chân
GND
3.3 VCC
AIO0
AIO1
PIO0

STT chân
13, 21, 22
12
9
10
23

Loại chân
VSS
Chân 3.3 V
2 hướng
2 hướng
2 hướng RX EN


SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

Mô tả chân
Chân đất
Chân nguồn
Lập trình I/O
Lập trình I/O
Lập trình I/O, điều
21


Đồ án tốt nghiệp

PIO1

24

2 hướng TX EN

PIO2
PIO3
PIO4
PIO5
PIO6
PIO7
PIO8
PIO9
PIO10
PIO11


25
26
27
28
29
30
31
32
33
34

RESET B

11

UART_RST

4

UART_CTS

3

UART_RX

2

UART_TX


1

SPI_MOSI

17

2 hướng
2 hướng
2 hướng
2 hướng
2 hướng
2 hướng
2 hướng
2 hướng
2 hướng
2 hướng
Cmos input with weak
internal pull - up
Cmos output, tri –
stale with weak
internal pull - up
Cmos input with weak
internal pull – down
Cmos input with weak
internal pull – down
Cmos output, tri –
stale with weak
internal pull - up
Cmos input with weak
internal pull – down


SPI_CSB

16

SPI_CLK

19

SPI_MISO

18

USBUSB+
NC

15
20
14

Cmos input with weak
internal pull - up
Cmos input with weak
internal pull – down
Cmos input with weak
internal pull – down
2 hướng
2 hướng

SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8


khiển output cho LNA
nếu được trang bị
Lập trình I/O, điều
khiển LA nếu được
trang bị
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Lập trình I/O
Reset nếu LOW
UART yêu cầu khi gửi,
hoạt động LOW
UART xóa khi gửi, hoạt
động LOW
Dữ liệu vào UART
Dữ liệu ra UART
Serial peripheral
interface data input
Chip select for serial
peripheral interface,
active low
Serial peripheral
interface data output


22


Đồ án tốt nghiệp

PCM_CLK

5

2 hướng

PCM_OUT

6

Cmos output

PCM_IN

7

Cmos input

PCM_SYNC

8

2 hướng


Synchoronous PCM
data clock
Synchoronous PCM
data output
Synchoronous PCM
data input
Synchoronous PCM
data strobe

1.2. TÌM HIỂU MÔI TRƯỜNG LẬP TRÌNH ANDROID
1.2.1. Khái niệm HĐH Android

Android là HĐH di động mã nguồn mở miễn phí do Google phát tri ển
dựa trên nền tảng Linux. Bất kì một hãng sản xuất phần cứng nào cũng
đều có thể tự do sử dụng HĐH Android cho thiết bị của mình; mi ễn sao các
thiết bị đó đáp ứng các tiêu chuẩn cơ bản do công ty Google đ ưa ra (có c ảm
ứng, GPS, 3G,…).
1.2.2. Lịch sử phát triển của Android[3]

Ban đầu, Android là các thiết bị cầm tay dựa trên lõi Linux do công ty
Android Inc. (Canifornia – Mỹ) thiết kế. Công ty này sau đó đ ược Google
mua lại vào năm 2005 và bắt đầu xây dựng Android Platform. Các thành
viên chủ chốt tại Android Inc. gồm có: Andy Rubin, Rich Miner, Nick Sears
và Chris White.
Cuối năm 2007, thuộc về liên minh thiết bị cầm tay mã nguồn m ở
(Open Handset Alliance) gồm các thành viên nổi bật trong ngành vi ễn
thông và các thiết bị cầm tay như: Texas Instruments, Broadcom
Corporation, Google, HTC, Intel, LG, Marvell Technology Group, Motorola,
Nvidia, Qualcomm, Samsung Electronics, T – Mobile, Sprint Nextel, ARM
Holdings, Altheros Communication, Asustek Computer Inc, Garmin Ltd,

Sofbank, Sony Ericssion, Tosiba Corp, …
Mục tiêu của liên minh này là nhanh chóng đổi m ới để đáp ứng t ốt
hơn cho nhu cầu người tiêu dùng và kết quả đầu tiên của nó chính là n ền
tảng Android. Android được thiết kế để phục vụ nhu cầu của các nhà s ản
xuất thiết bị, các nhà khai thác, các lập trình viên thiết bị cầm tay.
Phiên bản SDK lần đầu tiên phát hành vào tháng 11 năm 2007, hãng
T – Mobile cũng công bố chiếc điện thoại Android đầu tiên là chi ếc T –
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

23


Đồ án tốt nghiệp

Mobile G1, chiếc Smartphone đầu tiên dựa trên nền tảng Android. M ột vài
ngày sau đó, Google lại tiếp tục công bố sự ra mắt của phiên bản Android
SDK release Candidate 1.0. Trong tháng 10 năm 2008, Google đ ược cấp gi ấy
phép mã nguồn mở cho Android platform.
Khi Android phát hành thì một trong số các mục tiêu trong kiến trúc
của nó là cho phép các ứng dụng có thể tương tác được v ới nhau và có th ể
sử dụng lại các thành phần từ những ứng dụng khác. Việc tái s ử dụng
không chỉ áp dụng cho các dịch vụ mà nó còn đ ược áp dụng cho các thành
phần dữ liệu và giao diện người dùng.
Vào cuối năm 2008, Google cho phát hành một thiết bị cầm tay đ ược
gọi là Google Dev Phone 1, có thể chạy các ứng dụng Android mà không b ị
ràng buộc bởi các nhà cung cấp mạng điện thoại di động, m ục tiêu của
thiết bị này là cho phép các nhà phát triển th ực hiện các công cu ộc thí
nghiệm trên một thiết bị thực có thể chạy HĐH Android mà không phải ký
một bản hợp đồng nào. Cũng vào cùng khoảng thời gian đó, Google cũng
cho phát hành một phiên bản vá lỗi 1.1 của HĐH này. Ở hai phiên b ản 1.0

và 1.1 Android chưa hỗ trợ Soft Keyboard mà đòi hỏi các thiết bị ph ải s ử
dụng bàn phím vật lý. Android cố định vấn đề này bằng cách phát hành
SDK 1.5 vào tháng 4 năm 2009, cũng với một số tính năng khác; ch ẳng h ạn
như nâng cao khả năng ghi âm truyền thông, các Live Folder,…
*, SDK: Software Development Kit – một bộ công cụ phát triển phần
mềm; SDK bao gồm một hoặc nhiều programming tools, documentation và
một số công cụ cần thiết khác để tọ ra các ứng dụng cho các gói phần m ềm
hoặc các nền tảng thông qua ngôn ngữ lập trình nào đó (Java, C++, C#,
Objective – C,… ).
Android SDK là bộ công cụ phát triển ứng dụng trên n ền tảng
Android, nó là một máy ảo Android dùng trên PC, h ỗ tr ợ l ập trình viên t ạo
các ứng dụng trên máy tính cá nhân và một số chức năng khác không khác gì
với máy thật.
1.2.3. Ngôn ngư lập trinh

Ngôn ngữ lập trình chính thức của Android là Java. Mặc dù các ứng
dụng trên Android được phát triển dựa trên nền tảng Java, nh ưng Android
không hỗ J2ME và J2SE, là hai ngôn ngữ lập trình ph ổ dụng cho các thiết b ị
di động. Dựa trên máy ảo Java của Sun, Google đã tinh ch ỉnh và phát tri ển
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

24


Đồ án tốt nghiệp

nên máy ảo Dalvik để biên dịch mã Java với tốc độ biên dịch nhanh h ơn và
nhẹ hơn. Đến phiên bản Froyo 2.2, Android đã hỗ tr ợ Just-in-time Compiler
(JIT) làm tăng tốc độ biên dịch Java lên gấp 2-5 lần so v ới các phiên b ản
trước.

1.2.4. Một số vân đê của HĐH Android

1.2.4.1. Sự phân mảnh – không đông nhât cua HĐH Android
Do Android là hệ điều hành mã nguồn mở và miễn phí, bất kỳ m ột
nhà sản xuất phần cứng nào cũng có thể s ử dụng và tùy bi ến Android đ ể
cài đặt trên các thiết bị của mình. Điều này dẫn đến vấn đ ể phân m ảnh
(fragmentation) khi trên thị trường tồn tại nhiều mẫu điện thoại Android,
mỗi mẫu chạy một phiên bản Android khác nhau. Đôi khi các phiên bản
Android này còn khác nhau về giao diện hay chức năng, do các nhà s ản
xuất tự chế thêm vào mã nguồn của Android.
Mặt khác, do việc cập nhật hệ điều hành phụ thuộc hoàn toàn vào
các nhà sản xuất, thế nên sau khi Google công bố phiên bản Android m ới ,
người sẽ buộc phải chờ khá lâu mới được cập nhật. Do vấn đề phân mảnh
này, trên thị trường một lúc tốn tại nhiều phiên bản Android khác nhau, và
người phát triển ứng dụng Android buộc phải xem xét đến kh ả năng ứng
dụng do mình viết ra có thể sẽ không chạy đu ợc hay thi ếu di m ột s ố ch ức
năng quan trọng khi chaỵ trên các máy chạy phiên bản Android cũ.
1.2.4.2. Kích thươc màn hình
Một lần nữa, do trên thị trường có rất nhiều nhà sản xuất điện thoại
Android, và mặc dù Google yêu cầu tất cả mọi điện thoại Android ph ải đáp
ứng 1 số tiêu chí chung về phần cứng (màn hình cảm ứng, GPS, 3G,...), các
nhà sản xuất hoàn toàn tự do quyết định kích cỡ và độ phân gi ải đi ện
thoại. Như vậy, các nhà phát triển ứng dụng Android ph ải chuẩn bị tr ước
khả năng ứng dụng của mình sẽ chạy trên một loạt các kích c ỡ màn hình
lớn nhỏ khácnhau. Tuy nhiên, có một điều chắc chắn: 100% các đi ện tho ại
Android đều sử dụng màn hình cảm ứng đa điểm, còn bàn phím v ật lý hay
cảm ứng quang thì tùy máy.
1.2.5. Android Emulator

Android SDK và Plugin Eclipse được gọi là Android Developer Tool

(ADT). Các Android Coder sẽ phải sử dụng công cụ IDE (Integrated
Development Environment) này để phát triển, debugging và testing cho
SVTH: Nguyễn Văn Quỳnh – ĐTCLC1-K8

25


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×