Phương pháp mã hóa trong điều khiển từ xa Trong hệ thống truyền thông tin rời rạc hoặc truyền thông tin liên tục nhưng đã được rời rạc hóa tin tức thường phải được biến đổi thông qua mộ
Trang 11
TRƯỜNG ĐẠI HỌC VINH KHOA ĐIỆN TỬ VIỄN THÔNG
-
ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI:
NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MÔ HÌNH
ROBOT ĐIỀU KHIỂN TỪ XA BẰNG GIỌNG NÓI
Giáo viên hướng dẫn: ThS Lê Văn Chương Sinh viên thực hiện: Phan Hữu Lâm
Nghệ An, 2016
Trang 2LỜI CẢM ƠN
Em xin gửi lời cảm ơn sâu sắc tới thầy giáo ThS Lê Văn Chương đã tận tình hướng dẫn và định hướng cho em trong thời gian nghiên cứu và hoàn thành đề tài này một cách tốt nhất
Em xin chân thành cảm ơn các thầy cô giáo trong khoa Điện Tử Viễn Thông
đã nhiệt tình, tận tụy dạy dỗ, cung cấp cho em những kiến thức nền vững chắc trong suốt 5 năm học qua
Thời gian thực hiện đồ án có hạn nên mặc dù em đã cố gắng để hoàn thành đồ
án một cách tốt nhất nhưng vẫn không tránh khỏi những thiếu sót Kính mong các thầy cô trong khoa tận tình chỉ bảo và góp ý kiến để đồ án này được hoàn thiện hơn Cuối cùng, em xin kính chúc quý thầy, cô sức khỏe và thành công nhiều hơn nữa trong sự nghiệp giáo dục cao quý
Em xin chân thành cảm ơn!
Trang 3MỤC LỤC
TÓM TẮT ĐỀ TÀI 5
MỞ ĐẦU 6
DANH SÁCH HÌNH VẼ 7
DANH SÁCH CÁC BẢNG BIỂU 9
DANH SÁCH CÁC TỪ VIẾT TẮT 10
CHƯƠNG 1 TỔNG QUAN VỀ CÁC HỆ THỐNG ĐIỀU KHIỂN TỪ XA 11
1.1 GIỚI THIỆU VỀ HỆ THỐNG ĐIỀU KHIỂN TỪ XA 11
1.1.1 Một số vấn đề cơ bản trong hệ thống điều khiển từ xa 11
1.1.2 Phương pháp mã hóa trong điều khiển từ xa 12
1.2 MỘT SỐ PHƯƠNG PHÁP ĐIỀU KHIỂN TỪ XA 12
1.2.1 Điều khiển từ xa bằng tia hồng ngoại 12
1.2.2 Điều khiển từ xa bằng Bluetooth 14
1.2.3 Điều khiển từ xa bằng wifi 15
1.2.4 Điều khiển từ xa bằng sóng vô tuyến 16
1.3 ĐIỀU KHIỂN TỪ XA BẰNG BLUETOOTH 17
1.3.1 Công nghệ truyền thông không dây Bluetooth 17
1.3.2 Các vấn đề bảo mật trong công nghệ Bluetooth 19
1.3.3 Các khái niệm trong công nghệ Bluetooth 20
1.3.4 Định nghĩa các liên kết vật lý trong bluetooth 22
1.3.5 Trạng thái của thiết bị Bluetooth 23
1.3.6 Các trạng thái kết nối 23
1.3.7 Kỹ thuật trải phổ nhảy tần số trong công nghệ bluetooth 24
1.3.8 Cách thức hoạt động của Bluetooth 27
CHƯƠNG 2 HỆ ĐIỀU HÀNH ANDROID VÀ DỊCH VỤ GOOGLE VOICE 31
2.1 HỆ ĐIỀU HÀNH ANDROID 31
2.1.1 Giới thiệu về android 31
2.1.2 Lịch sử hình thành 31
2.1.3 Tính năng android 33
2.1.4 Kiến trúc hệ điều hành android 34
2.1.5 Chu kỳ ứng dụng trên android 37
Trang 42.2 DỊCH VỤ GOOGLE VOICE 41
2.2.1 Giới thiệu 41
2.2.2 Một số ví dụ trong thế giới công nghệ 43
2.2.3 Cách thức xây dựng dịch vụ và nhận dạng, điều khiển giọng nói 44
2.2.4 Mô hình triển khai công nghệ giọng nói 45
CHƯƠNG 3 THIẾT KẾ, CHẾ TẠO MÔ HÌNH ROBOT ĐIỀU KHIỂN TỪ XA BẰNG GIỌNG NÓI 47
3.1 PHÂN TÍCH VÀ XÁC ĐỊNH YÊU CẦU THIẾT KẾ 47
3.2 THIẾT KẾ MÔ HÌNH ROBOT 47
3.2.1 Thiết kế phần cứng 48
3.2.2 Thiết kế phần mềm trên android 54
3.3 CHẾ TẠO THỬ NGHIỆM 56
TÀI LIỆU THAM KHẢO 58
PHỤ LỤC 59
Trang 5TÓM TẮT ĐỀ TÀI
Đồ án nghiên cứu về hệ thống điều khiển từ xa bằng Bluetooth, các kiến thức
cơ bản về board mạch Arduino để thiết kế, chế tạo mô hình Robot Nghiên cứu về
hệ điều hành android để từ đó thiết kế phần mềm điều khiển bằng giọng nói trên smartphone ứng dụng vào điều khiển mô hình Robot từ xa bằng giọng nói thông qua kết nối Bluetooth
ABSTRACT
The thesis research about the Bluetooth remote control system, the basics knowledge of Arduino circuit for designing and manufacturing the Robot model Researching about the android operating system in order to design remote control software by voice on smartphone applying to Robot model remote controll by voice via Bluetooth
Trang 6MỞ ĐẦU
Ngày nay, các hệ thống Robot đóng một vai trò quan trọng trong việc phát triển và sự tiến bộ của khoa học kỹ thuật công nghệ Robot đã được ứng dụng rộng rãi trong quân sự, công nghiệp và nông nghiệp để thay thế con người làm việc trong những môi trường độc hại, nguy hiểm
Bên cạnh đó, hiện nay các công nghệ nhận dạng giọng nói đang phát triển mạnh mẽ và ứng dụng rộng rãi như Google voice, Via voice,… thì việc điều khiển
từ xa bằng giọng nói sẽ được ứng dụng nhiều trong cuộc sống Xuất phát từ những
nhận định trên nên em đã chọn đề tài “Nghiên cứu, thiết kế, chế tạo mô hình Robot điều khiển từ xa bằng giọng nói” làm đồ án tốt nghiệp
Nội dung đồ án được trình bày trong 3 chương:
Chương 1: Tổng quan về các hệ thống điều khiển từ xa
Chương 2: Hệ điều hành Android và dịch vụ Google voice
Chương 3: Thiết kế, chế tạo mô hình Robot điều khiển từ xa bằng giọng nói Mặc dù có nhiều cố gắng, tuy nhiên do thời gian và điều kiện thực hiện còn nhiều hạn chế nên đồ án không tránh khỏi những sai sót trong cách trình bày cũng như phần thể hiện rất mong thầy, cô và các bạn góp ý và bổ sung thêm để đồ án hoàn thiện hơn nữa
Em xin chân thành cảm ơn!
Nghệ an, ngày 23 tháng 05 năm 2016
Sinh viên thực hiện
Phan Hữu Lâm
Trang 7DANH SÁCH HÌNH VẼ
Hình 1.1 Sơ đồ kết cấu hệ thống điều khiển từ xa 9
Hình 1.2 Tv sử dụng điều khiển bằng hồng ngoại 11
Hình 1.3 Module thu phát hồng ngoại 11
Hình 1.4 Chụp ảnh từ xa trên điện thoại bằng điều khiển qua bluetooth 12
Hình 1.5 Điều khiển Robot bằng điện thoại qua Bluetooth 13
Hình 1.6 Các thiết bị trong gia đình điều khiển qua wifi 14
Hình 1.7 Bộ điều khiển sóng RF một thiết bị 14
Hình 1.8 Kiến trúc piconet trong Bluetooth 19
Hình 1.9 Một Scatternet gồm 2 Piconet 20
Hình 1.10 Kỹ thuật trải phổ nhảy tần số 22
Hình 1.11 Các packet truyền trên các tần số khác nhau 23
Hình 1.12 Các packet truyền trên khe thời gian 23
Hình 1.13 Cấu trúc gói tin Bluetooth 24
Hình 1.14 Cấu tạo một packet 24
Hình 1.15 Mô hình Piconet 26
Hình 1.16 Quá trình truy vấn tạo kết nối 27
Hình 1.17 Quá trình truy vấn tạo kết nối 27
Hình 1.18 Truy vấn tạo kết nối giữa các thiết bị trong thực tế 27
Hình 1.19 Ví dụ về mô hình satternet 28
Hình 2.1 Logo android 29
Hình 2.2 Android timeline 29
Hình 2.3 Mô hình kiến trúc nền tảng hệ điều hành Android 32
Hình 2.4 Mô hình hợp tác giữa máy ảo Dalvik và Navite code 34
Hình 2.5 Activity Stack 36
Hình 2.6 Chu kỳ sống của Activity 36
Hình 2.7 Hình ảnh về điện thoại sử dụng dịch vụ Google voice 40
Hình 3.1 Sơ đồ chức năng của hệ thống 45
Hình 3.2 Sơ đồ khối của robot 46
Hình 3.3 Board mạch Arduino Uno R3 46
Hình 3.4 Hình ảnh và sơ đồ chân ATMEGA328 48
Trang 8Hình 3.5 Sơ đồ khối của ATMEGA328 49
Hình 3.6 Sơ đồ chân của IC L298 50
Hình 3.7 Sơ đồ nguyên lý của IC L298 50
Hình 3.8 Module Bluetooth HC05 51
Hình 3.9 Sơ đồ thuật toán phần mềm trên android 52
Hình 3.10 Icon ứng dụng 53
Hình 3.11 Dò tìm thiết bị 53
Hình 3.12 Giao diện điều khiển 53
Hình 3.13 Sơ đồ thuật toán cho phần cứng 54
Hình 3.14 Mô hình Robot 54
Trang 9Bảng 3.3 Giá trị các motor tương ứng với các chức năng 49 Hình 3.4 Đặc điểm kỹ thuật của module Bluetooth HC05 51
Trang 10DANH SÁCH CÁC TỪ VIẾT TẮT
ERD Enhanced data rate Tốc độ dữ liệu nâng cao
IOT Internet of things
PIN Persional identification Number Số nhận dạng cá nhân
MAC Media Access Control Kiểm soát truy cập phương tiện
truyền thông
AMA Active Member Address Thành viên địa chỉ
PMA Packed Member Address Đóng gói thành viên địa chỉ
ACL Asynchronous connectionless Kết nối không đồng bộ
SCO Synchronous connection-oriented Kết nối đồng bộ có hướng FHSS Frequency Hopping Spectrum Kỹ thuật trải phổ nhảy tần số
FEC Forward Error Correction Sửa lỗi chuyển tiếp
BEC Backward Error Control Kiểm soát lỗi ngược
LMP Link Manament Protocol Giao thức quản lý liên kết NLP Natural Language Processing Xử lý ngôn ngữ tựnhiên
PWM Pulse width modulation Điều chế độ rộng xung
Trang 11CHƯƠNG 1
TỔNG QUAN VỀ CÁC HỆ THỐNG ĐIỀU KHIỂN TỪ XA
1.1 GIỚI THIỆU VỀ HỆ THỐNG ĐIỀU KHIỂN TỪ XA
Hệ thống điều khiển từ xa là một hệ thống cho phép ta điều khiển các thiết bị
từ một khoảng cách xa Ví dụ hệ thống điều khiển bằng vô tuyến, hệ thống điều khiển bằng tia hồng ngoại, hệ thống điều khiển từ xa bằng Bluetooth, hệ thống điều khiển từ xa bằng cáp quang, dây dẫn
Sơ đồ kết cấu hệ thống điều khiển từ xa nói chung bao gồm:
- Thiết bị phát: Biến đổi lệnh điều khiển thành tin tức và phát đi, ở trong thiết
kế này em sử dụng thiết bị phát thiết bị phát là điện thoại Android
- Đường truyền: Đưa tín hiệu điều khiển từ thiết bị phát đến thiết bị thu Trong thiết kế em sử dụng Bluetooth
- Thiết bị thu: Nhận tín hiệu điều khiển từ đường truyền, qua quá trình biến đồi, biến dịch để tái hiện lại lệnh điều khiển rồi đưa đến các thiết bị thi hành Trong thiết kế của em thì thiết bị thu là module Bluetooth HC05
Thiết bị phát Đường truyền Thiết bị thu
Hình 1.1 Sơ đồ kết cấu hệ thống điều khiển từ xa
Nhiệm vụ cơ bản của các hệ thống điều khiển từ xa:
- Phát tín hiệu điều khiển
- Sản sinh ra xung hoặc hình thành các xung cần thiết
- Tổ hợp xung thành mã
- Tổ hợp xung thành mã
- Ở điểm chấp hành (thiết bị thu) sau khi nhận được mã phải biến đổi các mã nhận được thành các lệnh điều khiển và đưa đến các thiết bị đồng thời kiểm tra sự chính xác của mã mới nhận
1.1.1 Một số vấn đề cơ bản trong hệ thống điều khiển từ xa
Do hệ thống điều khiển từ xa có những đường truyền dẫn xa nên ta phải
Trang 12nghiên cứu về kết cấu hệ thống để đảm bảo tín hiệu được truyền đi chính xác và
nhanh chóng theo những yêu cầu sau:
1.1.1.1 Kết cấu tin tức
Trong hệ thống điều khiển từ xa độ tin cậy truyền dẫn tin tức có quan hệ nhiều đến đến kết cấu tin tức Nội dung về kết cấu tin tức có hai phần: Về lượng và về chất Về lượng là cách biến lượng điều khiển và lượng điều khiển thành loại xung gì cho phù hợp, và những xung đó cần áp dụng những phương pháp gì cho phù hợp, và những xung đó cần áp dụng những phương pháp nào để hợp thành tin tức, để có dung lượng lớn nhất và tốc độ truyền nhanh nhất
1.1.1.2 Về kết cấu hệ thống
Để đảm bảo các yêu cầu về kết cấu tin tức, hệ thống điều khiển từ xa có các yêu cầu sau:
- Tốc độ làm việc nhanh
- Kết cấu phải đơn giản
- Thiết bị phải an toàn, tin cậy
Hệ thống điều khiển từ xa có hiệu quả cao là hệ thống đạt tốc độ điều khiển cực đại, đồng thời đảm bảo độ chính xác trong phạm vi cho phép
1.1.2 Phương pháp mã hóa trong điều khiển từ xa
Trong hệ thống truyền thông tin rời rạc hoặc truyền thông tin liên tục nhưng
đã được rời rạc hóa tin tức thường phải được biến đổi thông qua một phép biến đổi thành số (thường là nhị phân) rồi mã hóa và được phát đi từ thiết bị phát Ở thiết bị thu, các tín hiệu phải thông qua các phép biến đổi ngược lại với các phép biến đổi trên: giải mã, liên tục hóa,…
1.2 MỘT SỐ PHƯƠNG PHÁP ĐIỀU KHIỂN TỪ XA
1.2.1 Điều khiển từ xa bằng tia hồng ngoại
Hầu hết các thiết bị trong gia đình đều sử dụng loại điều khiển từ xa bằng hồng ngoại như tivi, điều hòa, quạt,…
- Tia hồng ngoại: Là ánh sáng không thể nhìn thấy được bằng mắt thường, tia
hồng ngoại có vận tốc truyền bằng vận tốc ánh sáng Tia hồng ngoại có thể truyền
đi được nhiều kênh tín hiệu Nó ứng dụng rộng rãi trong công nghiệp Lượng thông tin có thể đạt được tới 3Mbit/s
Trang 13Hình 1.2 Tv sử dụng điều khiển bằng hồng ngoại
Nguồn phát hồng ngoại: Các nguồn sáng nhân tạo như Diode, laser, đèn huỳnh quang, photodiode Linh kiện thu sóng hồng ngoại: Quang điện trở, phototransistor, photodiode
Hình 1.3 Module thu phát hồng ngoại
- Nguyên lý cơ bản của loại điều khiển từ xa này là sử dụng ánh sáng hồng ngoại của quang phổ điện từ mà mắt thường không thấy được để chuyển tín hiệu đến thiết bị cần điều khiển Nó đóng vai trò như một bộ phát tín hiệu, sẽ phát ra các xung ánh sáng hồng ngoại mang một mã số nhị phân cụ thể Khi ta ấn một nút phía bên ngoài thì sẽ vận hành một chuỗi các hoạt động khiến các thiết bị cần điều khiển
sẽ thực hiện lệnh của nút bấm đó
Trang 14- Ưu điểm và nhược điểm của phương pháp điều khiển từ xa bằng tia hồng ngoại:
- Ưu điểm:
+ Không dây dẫn
+ Led phát và thu nhỏ gọn, dễ thiết kế lắp đặt và có độ tin cậy cao
+ Áp cung cấp thấp, công suất tiêu tán nhỏ
+ Điều khiển được nhiều thiết bị
+ Tính khả thi cao, linh kiện dễ tìm thấy và thi công dễ
- Nhược điểm:
+ Tầm xa bị hạn chế
+ Dòng điện cao tức thời
+ Nhiều hồng ngoại do các nguồn nhiệt xung quanh ta phát ra, nên có ảnh hưởng và hạn chế tầm phát Do đó chỉ dùng trong phòng, kho và nơi ít bị ảnh hưởng của nhiệt độ môi trường
+ Hạn chế khi bị vật cản nên không thể truyền được xa
1.2.2 Điều khiển từ xa bằng Bluetooth
Công nghệ Bluetooth đã được ứng dụng vào điều khiển các thiết bị và đang phổ biến rộng rãi Hầu hết các thiết bị thông minh đều tích hợp công nghệ Bluetooth vào để có thể trao đổi dữ liệu, điều khiển từ xa,…
Hình 1.4 Chụp ảnh từ xa trên điện thoại bằng điều khiển qua bluetooth
Trang 15Hình 1.5 Điều khiển Robot bằng điện thoại qua Bluetooth
Một số ưu điểm và nhược điểm của điều khiển từ xa bằng bluetooth:
+ Tính tương thích cao và được nhiều nhà sản xuất phần cứng cũng như phần mềm hỗ trợ
- Nhược điểm
+ Khoảng cách kết nối còn ngắn so với công nghệ mạng không dây khác + Chỉ kết nối được 2 thiết bị với nhau, không kết nối được thành mạng
1.2.3 Điều khiển từ xa bằng wifi
Trong những năm gần đây công nghệ truyền nhận dữ liệu không dây đang có những bước phát triển mạnh mẽ, góp công lớn trong việc phát triển các hệ thống điều khiển, giám sát từ xa, đặc biệt là các hệ thống thông minh Hiện nay, có khá nhiều công nghệ không truyền nhận dữ liệu không dây như RF, Wifi, Bluetooth, NFC,…Trong đó, Wifi là một trong những công nghệ được phát triển rất nhanh chóng và mạnh mẽ trong các hệ thống thông minh
Trang 16Vì vậy việc điều khiển từ xa bằng wifi sẽ được phát triển nhanh chóng và được
sử dụng rộng rãi trong tương lai
Hình 1.6 Các thiết bị trong gia đình điều khiển qua wifi
Một số ưu điểm của điều khiển từ xa bằng wifi:
- Ưu điểm
+ Điều khiển khoảng cách xa
+ Có thể điều khiển được nhiều thiết bị một lúc
+ Cho phép ứng dụng được nhiều loại thiết bị cầm tay và điện thoại di động + Giá thành rẻ
+ Tính tương thích cao và được nhiều nhà sản xuất phần cứng cũng như phần mềm hỗ trợ
1.2.4 Điều khiển từ xa bằng sóng vô tuyến
Hình 1.7 Bộ điều khiển sóng RF một thiết bị
Trang 17- Hệ thống điều khiển từ xa dùng sóng vô tuyến bao gồm máy phát và máy thu Máy phát có nhiệm vụ phát ra lệnh điều khiển truyền ra môi trường dưới dạng sóng điện từ mang theo tin tức điều khiển Máy thu thu tín hiệu từ môi trường, xử lý
và đưa ra lệnh điều khiển đến mạch chấp hành Đặc điểm của hệ thống này là phải dùng Anten để bức xạ tín hiệu đối với máy phát và thu tín hiệu đối với máy thu
- Ưu điểm và nhược điểm của phương pháp điều khiển từ xa bằng sóng vô tuyến:
+ Hệ thống phức tạp khi có thêm anten
+ Hay bị ảnh hưởng nhiễu gây méo hoặc sai tín hiệu
+ Mã hóa phức tạp hơn
1.3 ĐIỀU KHIỂN TỪ XA BẰNG BLUETOOTH
1.3.1 Công nghệ truyền thông không dây Bluetooth
1.3.1.1 Sự ra đời Bluetooth
Bluetooth hiện tại là công nghệ giao tiếp không dây phổ biến nhất trên các thiết bị di động và có lẽ bạn cũng đã ít nhất một lần truyền nhận dữ liệu hay nghe nhạc qua Bluetooth Gần một nghìn năm sau cái chết của vua Harald Bluetooth, vị vua người Thụy Điển đã thống nhất được các vùng đất tại bán đảo Scandinavia để quy về một mối dưới triều đại Viking vào thế kỷ thứ 10, năm 1994 hãng công nghệ Thụy Điển, Ericsson, đã nảy ra cái tên Bluetooth cho công nghệ không dây mà họ
Trang 18đang phát triển với mong muốn rằng công nghệ này có thể thực hiện được sứ mệnh
“chuẩn hóa” và thống nhất các kết nối không dây giữa những nhà sản xuất thiết bị cầm tay Logo Bluetooth là sự kết hợp của 2 ký tự Rune cổ: (Hagall) và (Bjarkan) tương đương với 2 ký tự H và B trong chữ Latin là viết tắt của Harald Bluetooth Sau đó, Bluetooth được liên minh Bluetooth SIG với các thành viên chính là những hãng sản xuất phần cứng lớn nhất thời bấy giờ như Nokia, Ericsson, Intel, IBM, Toshiba… và công bố phiên bản đầu tiên vào năm 1998
Bluetooth
2.0+ERD
Là phiên bản nâng cấp sau Bluetooth 1.0 được nâng cấp tốc độ truyền tải lên 2.1 Mbs cùng với chế độ truyền tải mới ERD (enhanced data rate) Phiên bản 2.1 được nâng cấp về tốc độ truyền tải nhưng lại hạn chế trên thiết bị sử dụng do ERD chỉ là chế độ tùy chọn, một số nhà sản xuất
đã không đưa chế độ này vào sản phẩm của mình để giảm chi phí sản xuất
Bluetooth
2.1+ERD
Được nâng cấp từ Bluetooth 2.0 vào năm 2007 với thay đổi quan trọng như hiệu năng cao hơn, giảm điện năng tiêu thụ Phiên bản này được sử dụng trên các thiết bị như điện thoại di động, laptop, tai nghe … Tuy nhiên, Bluetooth 2.1 vẫn chưa cho người dùng truyền tải các tập tin có dung lượng lớn
Bluetooth
3.0+HS
Năm 2009 buetooth 3.0 ra đời với thay đổi lớn về tốc độ truyền tải, đạt 24Mbps ở phiên bản này các thiết bị có thể tương tác dễ dàng với nhau hơn, có thể tự dò tìm các thiết
bị ở gần
Bluetooth 4.0 Là sự kết hợp của các đời Bluetooth trước đó với nhau
Trang 19Phiên bản Chi tiết
Bluetooth 4.0 đạt tốc độ truyền tải lên đến 25Mbps, dễ dàng ghép đôi các thiết bị với nhau, hiệu năng tiêu thụ thấp Đây là chuẩn Bluetooth được sử dụng trên hầu hết các thiết bị hiện nay
Bluetooth 4.1 Là phiên bản mới nhất ra đời đầu năm 2014 với nhiều cải
tiến vượt bậc so với Bluetooth 4.0
Bluetooth 4.2
Bluetooth v4.2 được phát hành vào 02 tháng 12, năm
2014 Nó giới thiệu một số tính năng quan trọng cho IOT (internet of things) Một số tính năng, chẳng hạn như dữ liệu chiều dài mở rộng, yêu cầu cập nhật phần cứng.Tuy nhiên, một số phần cứng Bluetooth cũ có thể nhận được một số tính năng Bluetooth v4.2, chẳng hạn như cập nhật bảo mật thông qua firmware
1.3.2 Các vấn đề bảo mật trong công nghệ Bluetooth
1.3.2.1 Bảo mật
Khi sử dụng công nghệ Bluetooth, chắc hẳn mọi người ai cũng quan tâm đến vấn đề bảo mật của nó Tùy thuộc vào cách nó được cấu hình mà công nghệ Bluetooth có thể khá an toàn, tuy nhiên nhiều thiết bị Bluetooth có số lượng ngắn các chữ số sử dụng trong mã PIN có thể gây nguy hiểm cho các thiết bị này Nếu ai
đó có thể phát hiện ra thiết bị Bluetooth của bạn, thì người này hoàn toàn có khả năng gửi các tin nhắn không yêu cầu và lạm dụng dịch vụ Bluetooth hoặc xâm nhập hay sửa đổi dữ liệu của bạn Các virut hoặc các mã nguy hiểm khác cũng có thể lợi dụng công nghệ này để làm hại thiết bị Nếu đã bị xâm nhập, dữ liệu của bạn có thể
sẽ bị sửa đổi, làm tổn hại hay bị đánh cắp hoặc mất
1.3.2.2 Phương pháp bảo vệ
Vô hiệu hóa Bluetooth khi không sử dụng chúng Trừ khi bạn kích hoạt việc truyền tải thông tin từ thiết bị này đến một thiết bị khác, nếu không bạn nên vô hiệu hóa công nghệ này để tránh những người không hợp lệ có thể xâm nhập
Sử dụng Bluetooth trong chế độ ẩn, khi kích hoạt Bluetooth hãy đặt nó trong trạng thái “ không thể phát hiện “ Chế độ ẩn nhằm ngăn chặn các thiết bị khác nhận
Trang 20ra thiết bị của bạn Điều này không ngăn cản bạn kết nối đến các thiết bị Bluetooth khác Thậm chí cả hai cũng có thể nhận ra nhau để kết nối nếu chúng cùng trong chế độ ẩn
Các thiết bị như điện thoại di động và tai nghe không dây cần phải đặt trong chế độ “ không phát hiện “ kết nối ban đầu thì chúng luôn nhận ra thiết bị kia mà không cần tìm kiếm lại kết nối nữa cho lần tiếp theo
Cẩn thận với những nơi sử dụng Bluetooth Cần phải quan tâm đến môi trường khi ghép đôi thiết bị của bạn hoặc hoạt động trong chế độ có thể phát hiện
Đánh giá các thiết lập bảo mật hầu hết các thiết bị đều có nhiều đặc tính giúp trang bị cần thiết cho bản thân, vô hiệu hóa bất kỳ tính năng hoặc các kết nối không cần thiết có thể Kiểm tra các thiết lập, thiết lập bảo mật đặc biệt và lựa chọn các tùy chọn cần thiết đối với bạn mà không gây ra mức rủi ro cao
Khai thác triệt để các tùy chọn bảo mật Tìm hiểu kỹ các tùy chọn bảo mật mà thiết bị Bluetooth của bạn có thể cung cấp, từ đó khai thác triệt để những tính năng tác dụng của chúng như sự mã hóa và thẩm định
1.3.3 Các khái niệm trong công nghệ Bluetooth
1.3.3.1 Master Unit
Là thiết bị duy nhất trong 1 Piconet, Master thiết lập đồng hồ đếm xung và kiểu bước nhảy (hopping) để đồng bộ tất cả các thiết bị trong cùng 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.3.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à Slave Tối đa 7 Slave dạng Active và 255 Slave dạng Parked (Inactive) trong
1 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 1 địa chỉ MAC (Media Access Control) hay AMA (Active Member Address ) -
đó là con số gồm 3 bit Nên trong 1 Piconet có tối đa 8 thiết bị ở trang thái này (1 cho Master và 7 cho Slave)
- Standby: Standby là một dạng inactive, thiết bị trong trạng thái này không
Trang 21trao đổ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 là những thiết bị trong nằm ngoài vùng kiểm soát của Master
- Parked: Là một dạng inactive, chỉ 1 thiết bị trong 1 Piconet thường xuyên được đồng bộ với Piconet, nhưng không có 1 địa chỉ MAC Chúng như ở trạng thái
"ngủ" và sẽ đượ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 Packed được đánh địa chỉ thông qua địa chỉ PMA (Packed Member Address) Đây là con số 8 bits để phân biệt các packed Slave với nhau và
có tối đa 255 thiết bị ở trạng thái này trong 1 Piconet
1.3.3.3 Piconet
Picotnet là 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à 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 huỷ sau khi truyền xong) Trong 1 Piconet thì chỉ có 1 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 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 đến Master Lưu ý rằng, 2 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 được với nhau, Master sẽ đồng bộ các Slave
về thời gian và tần số Trong 1 Piconet có tối đa 7 Slave đang hoạt động tại 1 thời điểm
Minh hoạ một Piconet gồm nhiều Slave:
Hình 1.8 Kiến trúc piconet trong Bluetooth
Trang 22nó sẽ chuyển quyền cho 1 Slave khác giàu tài nguyên hơn, mạnh hơn, bởi vì trong 1 piconet thì Clock và kiểu Hopping đã được đồng bộ nhau sẵn
Ví dụ một Scatternet:
Hình 1.9 Một Scatternet gồm 2 Piconet
1.3.4 Định nghĩa các liên kết vật lý trong bluetooth
- Asynchronous connectionless (ACL): Đượ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ầng của ACL link và sẽ quyết định xem trong một piconet một slave có thể dùng băng tầng rộng bao nhiêu Những gói tin broadcast truyền bằng ACL link, từ master đến tất cả các slave Hầu hết các gói tin ACL đều có thể truyền lại
Trang 23- Synchronous connectionoriented (SCO): Hỗ trợ kết nối đối xứng, chuyển mạch (circuit-switched), point to point giữa một Master và một Slave trong 1 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 độ 64kbps 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 1 liên kết ACL đầu tiên được thiết lập
1.3.5 Trạng thái của thiết bị Bluetooth
Có 4 trạng thái chính của 1 thiết bị Bluetooth trong 1 piconet:
- Inquiring device (inquiry mode): Thiết bị đang phát tín hiệu tìm thiết bị Bluetooth khác
- Inquiry 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ị
- Sniff mode: Là 1 chế độ tiết kiệm năng lượng của thiết bị đang ở trạng thái
active Ở 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 3 chế độ tiết kiệm năng lượng
- Hold mode: Là 1 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 3 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
Trang 24nhưng không tham gia vào quá trình trao đổi dữ liệu (inactive) Thiết bị ở chế độ Park mode 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 3 chế độ tiết kiệm năng lượng
1.3.7 Kỹ thuật trải phổ nhảy tần số trong công nghệ bluetooth
1.3.7.1 Khái niệm
Bluetooth sử dụng kỹ thuật vô tuyến được gọi là trải phổ nhảy tần số (Frequency Hopping Spectrum-FHSS), chia nhỏ dữ liệu được gửi đi và truyền từng khúc dữ liệu lên 79 tần số Trong dạng cơ bản của nó, sự điều chế là sự đánh tín hiệu dịch tần số Gausse (GFSK) Nó đạt được tốc độ truy cập là 1Mbs, tốc độ truy cập tối đa của nó có thể lên đến 3Mbs Bluetooth hoạt động ở dải tần 2.4GHz Truyền trải phổ là kỹ thuật truyền tín hiệu sử dụng nhiều tần số cùng 1 lúc (DSSS -Direct Sequence Spead Spectrum) hoặc luân phiên FHSS để tăng khả năng chống nhiễu, bảo mật và tốc độ truyền dữ liệu Trải phổ nhảy tần số là kỹ thuật phân chia giải băng tần thành một tập hợp các kênh hẹp và thực hiện việc truyền tín hiệu trên các kênh đó bằng việc nhảy tuần tự qua các kênh theo một thứ tự nào đó
Hình 1.10 Kỹ thuật trải phổ nhảy tần số
1.3.7.2 Kỹ thuật nhảy tần số trong công nghệ Bluetooth
Dải băng tần ISM 2.4GHz được chia thành 79 kênh, với tốc độ nhảy là 1600 lần trong một giây, điều đó có thể tránh được nhiễu tốt và chiều dài của các packet ngắn lại, tăng tốc độ truyền thông Hầu hết các nước dùng 79 bước nhảy, mỗi bước
Trang 25nhảy cách nhau 1MHz, bắt đầu ở 2.402GHz và kết thúc ở 2.480GHz Ở một vài nước, chẳng hạn như Pháp, Nhật phạm vi của dải băng tần này được giảm còn 23 bước nhảy
Hình 1.11 Các packet truyền trên các tần số khác nhau
Hình 1.12 Các packet truyền trên khe thời gian
Việc truyền nhận sử dụng các khe thời gian Chiều dài 1 khe thời gian thông thường là 625µs Một packet thường nằm trong khe đơn, nhưng cũng có thể mở rộng ra 3 hay 5 khe, yêu cầu tần số phải không đổi cho đến khi toàn bộ packet gửi xong
Trang 26Sử dụng packet đa khe, tốc độ truyền dữ liệu cao hơn nhờ phần header của mỗi packet chỉ đòi hỏi 1 lần 220µs Có thể hiểu ngắn gọn là thời gian truyền 3 packets đơn khe sẽ lớn hơn thời gian truyền 1 packet 3 khe Bù lại, trong môi trường có nhiều tín hiệu truyền, các packet dài chiếm nhiều timeslot dễ bị nhiều hơn
do đó dễ bị mất hơn
Mỗi packet chứa 3 phần: Access Code, Header, Payload
Hình 1.13 Cấu trúc gói tin Bluetooth
Kích thước của access code và header là cố định
- Access Code: Gồm 72bits, dùng trong việc đồng bộ dữ liệu, định danh, báo
hiệu
- Header:
Hình 1.14 Cấu tạo một packet
Trong header có 54 bits: 3 bits được dùng trong việc định địa chỉ, do đó có tối
đa 7 Active Slave 4 bits tiếp theo cho biết loại packet, 1 bits điều khiển luồng, 1 bits ARQ: Cho biết packet là Broadcast không có ACK 1 bits Sequencing: Lọc bỏ những packet trùng do truyền lại, 8 bits HEC: Kiểm tra tính toàn vẹn của header Tổng cộng có 18 bits, các bit đó được mã hóa với 1/3 FEC ( Forward Error Correction ) để có được 54 bits
PayLoad: Phần chứa dữ liệu truyền đi, có thể thay đổi từ 0 tới 2744 bit/packet
Payload có thể là dữ liệu data hoặc voice
Trang 271.3.8 Cách thức hoạt động của Bluetooth
1.3.8.1 Cơ chế truyền và sửa lỗi
Kỹ thuật Bluetooth thực sự là rất phức tạp Nó dùng kỹ thuật nhảy tần số 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 chiến lược 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 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 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 sẽ 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ó
3 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:
- Forwad Error Corrrection: Thêm 1 số bit kiểm tra vào phần Header hay Payload của packet
- Automatic Repeat Request: Dữ liệu sẽ được truyền lại cho tới khi bên nhận gửi thông báo là đã 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
Bluetooth 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 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, yêu cầu truyền lại) Giao thức băng tần cơ sở (Baseband) 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 1 timeslot, nhưng nó có thể mở rộng chiếm đến 3 hay 5 timeslot Bluetooth hỗ trợ 1 kênh dữ liệu bất đồng bộ, hay 3 kênh tín hiệu thoại đồng bộ nhau cùng một lúc, hay 1 kênh
Trang 28- Một Unit (Master hay Slave) lắng nghe tín hiệu (code) mà thiết bị của nó truy cập được
- Khi có sự chuyển đổi vai trò giữa Master và Slave
- Khi có một Unit chuyển sang trang thái Active
Hình 1.15 Mô hình Piconet
Để thiết lập một kết nối mới, tiến trình INQUIRY hay PAGE sẽ bắt đầu Tiến trình Inquiry cho phép 1 Unit phát hiện các Unit khác trong tầm hoạt động cùng với địa chỉ và đồng hồ của chúng Tiến trình Paging mới thực sự là tạo kết nối Kết nối chỉ thực hiện giữa những thiết bị mang địa chỉ Bluetooth Unit nào thiết lập kết nối
sẽ phải thực hiện tiến trình paging và tự động trở thành Master của kết nối Trong tiến trình paging, có thể áp dụng vài chiến lược paging Có một chiến lược paging bắt buộc tất cả các thiết bị Bluetooth đều phải hỗ trợ, chiến lược dùng khi các Unit gặp trong lần đầu tiên, và trong trường hợp tiến trình paging theo ngay sau tiến trình inquiry Hai Unit sau khi kết nối nhờ dung chiến lược bắt buộc này, sau đó có thể chọn chiến lược paging khác
Sau thủ tục Paging (PAGE), Master thăm dò Slave bằng cách gửi packet POLL thăm dò hay packet NULL rỗng theo như Slave yêu cầu Chỉ có Master gửi tín hiệu POLL cho Slave, ngược lại không có
Các vai trò của thiết bị trong Piconet là:
- Stand by: Không làm gì cả
- Inquiry: Tìm thiết bị trong vùng lân cận
- Paging: Kết nối với 1 thiết bị cụ thể
- Connecting: Nhận nhiệm vụ
Trang 29INQUIRY PAGE CONNECTION
Hình 1.16 Quá trình truy vấn tạo kết nối
Hình 1.17 Quá trình truy vấn tạo kết nối
Mô hình truy vấn các thiết bị trong thực tế:
Hình 1.18 Truy vấn tạo kết nối giữa các thiết bị trong thực tế
Khi thiết bị tạo paging muốn tạo các kết nối ở các tầng trên, nó sẽ gửi yêu cầu kết nối host theo nghi thức LMP (Link Manament Protocol) Khi Unit quản lý host này nhận đƣợc thông điệp, nó thông báo cho host biết về kết nối mới Thiết bị từ xa
có thể chấp nhận (gửi thông điệp chấp nhận theo nghi thức LMP) hoặc không chấp nhận kết nối (gửi thông điệp không chấp nhận theo nghi thức LMP)
Khi thiết bị không yêu cầu bất kỳ thủ tục thiết lập liên kết từ xa nào cả, nó sẽ
Trang 30gửi thông điệp "thiết lập hoàn thành" Thiết bị này vẫn nhận đƣợc yêu cầu từ các thiết bị khác Khi một thiết bị khác đã sẵn sàng tạo liên kết, nó cũng gửi thông điệp
"thiết lập hoàn thành" Sau đó 2 thiết bị có thể trao đổi packet trên kênh logic khác với LMP
1.3.8.3 Quá trình hình thành Scatternet
Hình 1.19 Ví dụ về mô hình scatternet
Một Master hay Slave của Piconet có thể trở thành Slave của Piconnet khác nếu bị Master nếu bị Master của Piconet khác thực hiện tiến trình paging với nó Hay nói cách khác là bất kỳ Unit nào cũng có thể tạo 1 Piconet mới bằng cách paging một Unit đã là thành viên của một Piconet nào đó Ngƣợc lại, bất kỳ Unit nào tham gia trong một Piconet, đều có thể thực hiện paging lên Master hay Slave của piconet khác Điều này chính là nguyên nhân dẫn tới việc có thể chuyển đồi vai trò giữa Master và Slave trong một kết nối