9331_4.3.31. Xây dựng hệ thống điều khiển máy tính từ xa nhờ công nghệ Bluetooth

luận văn tốt nghiệp

KHOA CNTT – ĐH KHTN

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM

ĐẶNG MINH THẮNG – CHU NGUYÊN TÚ

XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN
MÁY TÍNH TỪ XA SỬ DỤNG
CÔNG NGHỆ BLUETOOTH

LUẬN VĂN CỬ NHÂN TIN HỌC

TP.HCM, NĂM 2004

KHOA CNTT – ĐH KHTN

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM

ĐẶNG MINH THẮNG – 0012091
CHU NGUYÊN TÚ – 0012120

XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN
MÁY TÍNH TỪ XA SỬ DỤNG
CÔNG NGHỆ BLUETOOTH

LUẬN VĂN CỬ NHÂN TIN HỌC

GIÁO VIÊN HƯỚNG DẪN
Th.S ĐỖ HOÀNG CƯỜNG

NIÊN KHÓA 2000 – 2004

KHOA CNTT – ĐH KHTN

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….

KHOA CNTT – ĐH KHTN

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….
………………………………………………………………………………………………………………….

KHOA CNTT – ĐH KHTN

LỜI CÁM ƠN

Chúng em xin bày tỏ lòng biết ơn chân thành nhất đến Thầy Đỗ Hoàng
Cường, người Thầy đã tận tâm hướng dẫn, giúp đỡ chúng em trong suốt thời gian
thực hiện luận văn này.
Chúng con xin gửi tất cả lòng biết ơn sâu sắc và sự kính trọng đến ông bà,
cha mẹ, cùng toàn thể gia đình, những người đã nuôi dạy chúng con trưởng thành
đến ngày hôm nay.
Chúng em cũng xin chân thành cám ơn quý Thầy cô trong Khoa Công nghệ
thông tin, trường Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh đã tận tình giảng
dạy, hướng dẫn, giúp đỡ và tạo điều kiện cho chúng em thực hiện tốt luận văn này.
Xin chân thành cám ơn sự giúp đỡ, động viên và chỉ bảo rất nhiệt tình của
các anh chị và tất cả các bạn, những người đã giúp chúng tôi có đủ nghị lực và ý
chí để hoàn thành luận văn này.
Mặc dù đã cố gắng hết sức, song chắc chắn luận văn không khỏi những thiếu
sót. Chúng em rất mong nhận được sự thông cảm và chỉ bảo tận tình của quý Thầy
Cô và các bạn.

TP.HCM, 7/2004
Nhóm sinh viên thực hiện
Đặng Minh Thắng – Chu Nguyên Tú

KHOA CNTT – ĐH KHTN

LỜI NÓI ĐẦU

Hiện nay, công nghệ thông tin đang phát triển mạnh mẽ và trở thành một
ngành công nghiệp mũi nhọn ở nhiều quốc gia. Máy tính ngày càng trở nên phổ
biến, xuất hiện rất nhiều trong các gia đình và trở thành một công cụ không thể
thiếu của nhiều người. Máy tính 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 đến các nhu cầu giải trí như chơi game, xem
phim, nghe nhạc, v.v…
Với sự có mặt rộng rãi của máy tính trong đời sống, con người có nhu cầu
điều khiển máy tính từ xa giống như điều khiển các thiết bị gia dụng khác (tivi, đầu
máy, máy nghe nhạc, v.v…). Công cụ điều khiển máy tính từ xa là một trợ giúp đắc
lực cho con người, giúp ta có thể biến máy tính của mình thành một trung tâm giải
trí, đồng thời là một công cụ hỗ trợ tích cực cho những buổi thuyết trình có sử dụng
PowerPoint và các thao tác điều khiển máy tính từ xa khác.
Có nhiều giải pháp để thực hiện vấn đề trên: Microsoft phát triển Windows
XP thành hệ điều hành multimedia với một bộ điều khiển từ xa tích hợp, hoặc dạo
gần đây là phong trào gắn thêm “mắt” hồng ngoại vào máy tính kết hợp với chương
trình download tại http://www.girder.nl để có thể điều khiển máy tính thông qua bộ
điều khiển từ xa của tivi.
Bên cạnh sự phát triển mạnh mẽ của máy tính cá nhân, các công nghệ không
dây và thiết bị di động cũng không ngừng tự nâng cao khả năng của mình. Từ đó
xuất hiện thêm các giải pháp khác, trong đó sử dụng các công nghệ không dây trên
các thiết bị di động để điều khiển máy tính là giải pháp được nhiều người quan tâm.
Hiện nay đã có nhiều giải pháp điều khiển máy tính từ xa chạy trên các thiết bị di
động như Pocket PC, Palm Tungsten, Smartphone với sự hỗ trợ của nhiều công
nghệ không dây khác nhau và cả internet. Các công nghệ không dây có thể kể đến là
IrDA (hồng ngoại), Bluetooth, Wi-Fi, còn các thiết bị di động thì chạy trên các hệ
điều hành phổ biến như Symbian, WinCE, Palm OS. Mỗi công nghệ, mỗi hệ điều
hành đều có những ưu, khuyết điểm riêng của nó, trong đó nổi bật lên là cặp bài

KHOA CNTT – ĐH KHTN

trùng Bluetooth – Symbian. Symbian gần như chiếm lĩnh thị trường hệ điều hành
trên điện thoại di động thông minh và hầu hết các điện thoại chạy hệ điều hành
Symbian đều tích hợp sẵn Bluetooth.
Xuất phát từ các lý do trên, chúng em đã thực hiện đề tài “XÂY DỰNG
MỘT HỆ THỐNG ĐIỀU KHIỂN MÁY TÍNH TỪ XA SỬ DỤNG CÔNG
NGHỆ BLUETOOTH”. Trong đề tài này, chúng em xây dựng một chương trình
điều khiển máy tính từ xa trên các điện thoại Series 60 của hãng Nokia vốn hỗ trợ
cả Bluetooth lẫn Symbian.
Mục tiêu của đề tài là xây dựng một hệ thống điều khiển máy tính từ xa
thông qua các điện thoại Series 60 của hãng Nokia giúp người dùng có thể điều
khiển một số chương trình trên máy tính phục vụ mục đích giải trí, công việc, v.v…
Các nội dung chính của đề tài bao gồm:
• Tìm hiểu công nghệ Bluetooth
• Tìm hiểu hệ điều hành Symbian
• Tìm hiểu một số vấn đề về lập trình trên hệ điều hành Symbian
• Tìm hiểu lập trình giao tiếp với Bluetooth trên Symbian
• Xây dựng một ứng dụng chạy trên các điện thoại Series 60 của hãng
Nokia để điều khiển một số chương trình trên máy tính như: Chuột,
Powerpoint, Winamp, Windows Media Player; thực hiện các thao tác hệ
thống như shutdown, restart, logout, standby, hibernate, hẹn giờ tắt máy.

Nội dung của luận văn được chia làm 3 phần và 10 chương:
PHẦN I: BLUETOOTH
Chương 1. Tổng quan về công nghệ Bluetooth: Giới thiệu tổng quan về
công nghệ Bluetooth như khái niệm và lịch sử phát triển của Bluetooth.
Chương 2. Các tầng giao thức của Bluetooth: Mô tả chi tiết các tầng giao
thức, đặc điểm kĩ thuật và cách thức hoạt động của Bluetooth.

KHOA CNTT – ĐH KHTN

Chương 3. Ưu điểm và khuyết điểm của Bluetooth: Phân tích các ưu và
khuyết điểm của Bluetooth, so sánh Bluetooth với một số công nghệ không dây phổ
biến khác.
Chương 4. Tầm ứng dụng và tương lai của Bluetooth: Trình bày về khả
năng ứng dụng của Bluetooth trong thực tế và tương lai của công nghệ này.
PHẦN II: SYMBIAN
Chương 5. Tổng quan về hệ điều hành Symbian và Series 60: Giới thiệu
tổng quan về hệ điều hành Symbian cũng như kiến trúc hệ thống của nó. Giới thiệu
Series 60, một platform trên các điện thoại di động thông minh của hãng Nokia
dùng Symbian, môi trường của ứng dụng PC Remote Control
Chương 6. Một số vấn đề khi xây dựng ứng dụng trên Symbian: Trình
bày các điểm khác biệt, các vấn đề quan trọng cần lưu ý khi lập trình trên môi
trường Symbian.
Chương 7. Lập trình giao tiếp Bluetooth trên Symbian: Trình bày vấn đề
liên quan trực tiếp đến ứng dụng PC Remote Control: Lập trình giao tiếp với
Bluetooth trên Symbian.
PHẦN III: ỨNG DỤNG MINH HỌA
Chương 8. Phân tích và thiết kế ứng dụng điều khiển máy tính từ xa:
Phân tích, thiết kế các chức năng của chương trình, thiết kế lớp, thiết kế màn hình,
thiết kế lưu đồ hoạt động và trình bày một số vấn đề quan trọng khác liên quan đến
việc xây dựng ứng dụng.
Chương 9. Cài đặt và thử nghiệm: Giới thiệu môi trường phát triển và cài
đặt ứng dụng, thử nghiệm ứng dụng vào thực tế.
Chương 10. Tổng kết: Trình bày những kết quả đạt được, hạn chế, những
vấn đề tồn tại, hướng phát triển trong tương lai.

KHOA CNTT – ĐH KHTN

MỤC LỤC
Danh sách hình…………………………………………………………………………………………..12
Danh sách bảng ………………………………………………………………………………………….16
PHẦN I. BLUETOOTH ……………………………………………………………………………..18
Chương 1 :
Tổng quan về công nghệ Bluetooth ………………………………………19
1.1 Bluetooth là gì? …………………………………………………………………………………..19
1.2 Tại sao có tên Bluetooth?……………………………………………………………………..19
1.3 Lịch sử phát triển của Bluetooth……………………………………………………………19
Chương 2 :
Các tầng giao thức của Bluetooth…………………………………………21
2.1 Bluetooth Radio ………………………………………………………………………………….22
2.2 Baseband ……………………………………………………………………………………………23
2.2.1 Network topology………………………………………………………………………….23
2.2.2 Liên kết SCO và ACL……………………………………………………………………25
2.2.3 Địa chỉ thiết bị………………………………………………………………………………25
2.2.4 Định dạng gói tin…………………………………………………………………………..26
2.2.5 Quản lý trạng thái………………………………………………………………………….26
2.2.6 Thiết lập kết nối ……………………………………………………………………………27
2.2.7 Các chế độ kết nối:………………………………………………………………………..28
2.2.8 Những chức năng khác của Baseband ……………………………………………..28
2.3 Link Manager Protocol ………………………………………………………………………..29
2.4 Host Controller Interface ……………………………………………………………………..29
2.4.1 Những thành phần chức năng của HCI…………………………………………….29
2.4.2 Các lệnh HCI………………………………………………………………………………..31
2.4.3 Các sự kiện, mã lỗi, luồng dữ liệu HCI…………………………………………….31
2.4.4 Host Controller Transport Layer……………………………………………………..32
2.5 Logical link control and adaption protocol (L2CAP)……………………………….32
2.5.1 Những yêu cầu chức năng của L2CAP…………………………………………….33
2.5.2 Những đặc điểm khác của L2CAP…………………………………………………..33

KHOA CNTT – ĐH KHTN

2.6 RFCOMM Protocol……………………………………………………………………………..34
2.7 Service Discovery Protocol…………………………………………………………………..34
2.7.1 Thiết lập giao thức SDP…………………………………………………………………35
2.7.2 Các dịch vụ SDP …………………………………………………………………………..36
2.7.3 Tìm kiếm dịch vụ………………………………………………………………………….36
2.7.4 Data element…………………………………………………………………………………37
Chương 3 :
Ưu điểm và khuyết điểm của Bluetooth………………………………..38
3.1 Ưu điểm……………………………………………………………………………………………..38
3.2 Khuyết điểm……………………………………………………………………………………….38
3.3 So sánh Bluetooth với một số công nghệ không dây khác ………………………..39
3.3.1 Bluetooth và WiFi…………………………………………………………………………39
3.3.2 Bluetooth và Hồng ngoại ……………………………………………………………….42
Chương 4 :
Tầm ứng dụng và tương lai của Bluetooth ……………………………45
4.1 Tầm ứng dụng …………………………………………………………………………………….45
4.1.1 Thiết bị thông minh……………………………………………………………………….45
4.1.2 Thiết bị truyền thanh:…………………………………………………………………….46
4.1.3 Thiết bị truyền dữ liệu……………………………………………………………………47
4.1.4 Các ứng dụng nhúng ……………………………………………………………………..49
4.1.5 Một số ứng dụng khác……………………………………………………………………50
4.2 Tương lai của Bluetooth……………………………………………………………………….51
4.2.1 Bluetooth sẽ thay thế cái gì? …………………………………………………………..51
4.2.2 Chính phủ bảo trợ Bluetooth ?………………………………………………………..52
4.2.3 Bluetooth là một công nghệ mở hay độc quyền…………………………………52
4.2.4 Ai sẽ hưởng lợi từ Bluetooth ?………………………………………………………..53
4.2.5 Tương lai của Bluetooth…………………………………………………………………54
PHẦN II. SYMBIAN ………………………………………………………………………………….56
Chương 5 :
Tổng quan về hệ điều hành Symbian và Series 60…………………57
5.1 Khái niệm về Symbian…………………………………………………………………………57
5.2 Lịch sử phát triển của Symbian……………………………………………………………..57

KHOA CNTT – ĐH KHTN

5.3 Kiến trúc của hệ điều hành Symbian ……………………………………………………..59
5.3.1 Symbian OS kernel ……………………………………………………………………….60
5.3.2 Middleware ………………………………………………………………………………….60
5.3.3 Application Engine………………………………………………………………………..60
5.3.4 User Interface framework ……………………………………………………………..61
5.3.5 Synchronization technology……………………………………………………………61
5.3.6 Java vitual machine implementation………………………………………………..61
5.4 Giới thiệu Series 60……………………………………………………………………………..61
Chương 6 :
Một số vấn đề khi xây dựng ứng dụng trên Symbian…………….65
6.1 C++ trên Symbian……………………………………………………………………………….65
6.1.1 Các kiểu dữ liệu ……………………………………………………………………………65
6.1.2 Các qui ước đặt tên………………………………………………………………………..67
6.2 Quản lý bộ nhớ……………………………………………………………………………………71
6.2.1 Các vấn đề về bộ nhớ cần biết khi lập trình trên các thiết bị di động……72
6.2.2 Cách quản lý, hạn chế lỗi “out of memory”………………………………………73
6.2.3 Bài học cần nhớ…………………………………………………………………………….80
Chương 7 :
Lập trình giao tiếp Bluetooth trên Symbian………………………….82
7.1 Tổng quan về Bluetooth API ………………………………………………………………..82
7.1.1 Phân nhóm các hàm Bluetooth API…………………………………………………84
7.1.2 Quan hệ giữa các nhóm Bluetooth API ……………………………………………84
7.2 Bluetooth socket………………………………………………………………………………….85
7.2.1 Mở và cấu hình Bluetooth socket…………………………………………………….86
7.2.2 Xây dựng Bluetooth server socket…………………………………………………..89
7.2.3 Xây dựng Bluetooth client socket……………………………………………………93
7.2.4 Trao đổi dữ liệu thông qua Bluetooth socket…………………………………….95
7.3 Một số định nghĩa thông dụng liên quan đến Service Discovery Protocol
(SDP)………………………………………………………………………………………………………97
7.4 Bluetooth Service Discovery Database…………………………………………………..98
7.5 Bluetooth Service Discovery Agent……………………………………………………..105

KHOA CNTT – ĐH KHTN

7.6 Bluetooth Security Manager ……………………………………………………………….108
7.7 Bluetooth Device Selection UI ……………………………………………………………111
7.8 Cấu hình phần cứng Bluetooth cho máy ảo:………………………………………….115
7.8.1 Sự khác nhau giữa Bluetooth của máy ảo và thiết bị thật………………….116
7.8.2 Cài đặt và cấu hình thiết bị Bluetooth…………………………………………….117
PHẦN III. ỨNG DỤNG MINH HỌA ………………………………………………………..119
Chương 8 :
Phân tích và thiết kế ứng dụng điều khiển máy tính từ xa …..120
8.1 Khảo sát hiện trạng…………………………………………………………………………….120
8.2 Phân tích và xác định yêu cầu……………………………………………………………..121
8.3 Xây dựng mô hình Use-case ……………………………………………………………….122
8.3.1 Xác định Actor và Use case ………………………………………………………….122
8.3.2 Mô hình Use-case………………………………………………………………………..125
8.4 Đặc tả Use case …………………………………………………………………………………129
8.4.1 Connect ……………………………………………………………………………………..129
8.4.2 Turn off ……………………………………………………………………………………..130
8.4.3 Control Mouse…………………………………………………………………………….130
8.4.4 Control Media Player…………………………………………………………………..133
8.4.5 Control Power point…………………………………………………………………….140
8.4.6 Sleep, Wakeup…………………………………………………………………………….142
8.4.7 Shortcut Key……………………………………………………………………………….143
8.5 Thiết kế lớp ………………………………………………………………………………………145
8.5.1 Thiết kế lớp trên client …………………………………………………………………145
8.5.2 Thiết kế lớp trên server ………………………………………………………………..147
8.6 Xây dựng client, server và thiết kế truyền, nhận dữ liệu …………………………148
8.6.1 Server side………………………………………………………………………………….150
8.6.2 Client side…………………………………………………………………………………..151
8.6.3 Gởi và nhận dữ liệu……………………………………………………………………..154
8.7 Lưu đồ hoạt động ………………………………………………………………………………155
8.7.1 Connect ……………………………………………………………………………………..155

KHOA CNTT – ĐH KHTN

8.7.2 Turn off ……………………………………………………………………………………..156
8.7.3 Control Mouse…………………………………………………………………………….157
8.7.4 Control Media Player…………………………………………………………………..163
8.7.5 Control Powerpoint……………………………………………………………………..179
8.7.6 Sleep, Wakeup…………………………………………………………………………….183
8.7.7 Shortcutkey ………………………………………………………………………………..183
8.8 Thiết kế màn hình………………………………………………………………………………185
8.8.1 Thiết kế màn hình trên client ………………………………………………………..185
8.8.2 Thiết kế màn hình trên server ……………………………………………………….196
Chương 9 :
Cài đặt và thử nghiệm………………………………………………………..200
9.1 Cài đặt ……………………………………………………………………………………………..200
9.2 Thử nghiệm ………………………………………………………………………………………200
Chương 10 :
Tổng kết…………………………………………………………………………….203
10.1 Kết luận………………………………………………………………………………………….203
10.1.1 Kết quả đạt được ……………………………………………………………………….203
10.1.2 Hạn chế…………………………………………………………………………………….203
10.2 Hướng phát triển ……………………………………………………………………………..204
Phụ lục A: Hướng dẫn sử dụng chương trình…………………………………………….205
Phụ lục B: Hướng dẫn sử dụng emulator cho Series 60………………………………214
Tài liệu tham khảo ……………………………………………………………………………………221

KHOA CNTT – ĐH KHTN

0Danh sách hình

Danh sách hình
Hình 2-1 Chồng giao thức của Bluetooth ………………………………………………… 21
Hình 2-2 Frequency hopping …………………………………………………………………. 22
Hình 2-3 Piconet ………………………………………………………………………………….. 24
Hình 2-4 Scatternet ………………………………………………………………………………. 25
Hình 2-5 Định dạng gói tin Bluetooth …………………………………………………….. 26
Hình 2-6 Host Controller Interface…………………………………………………………. 30
Hình 2-7 Host controller transport layer………………………………………………….. 31
Hình 4-3 Các thiết bị truyền thanh………………………………………………………….. 46
Hình 4-5 Thiết bị truyền dữ liệu …………………………………………………………….. 47
Hình 4-6 Adsl Router……………………………………………………………………………. 48
Hình 4-8 Các ứng dụng nhúng……………………………………………………………….. 50
Hình 4-9 Quản lý phòng ban………………………………………………………………….. 51
Hình 5-1 Kiến trúc hệ điều hành Symbian……………………………………………….. 59
Hình 5-2 Một số công nghệ được hỗ trợ trên Series 60……………………………… 63
Hình 5-3 Màn hình của Series 60 …………………………………………………………… 63
Hình 5-4 Bàn phím của Series 60 …………………………………………………………… 64
Hình 7-1 Bluetooth protocol………………………………………………………………….. 83
Hình 7-2 Quan hệ giữa các nhóm Bluetooth API……………………………………… 85
Hình 7-3 Bluetooth socket …………………………………………………………………….. 87
Hình 7-4 Thiết lập server socket…………………………………………………………….. 89
Hình 7-6 Sequence diagram xây dựng server socket…………………………………. 91
Hình 7-7 Sequence diagram xây dựng client socket………………………………….. 94
Hình 7-8 Sequence diagram quảng bá dịch vụ……………………………………….. 103
Hình 7-9 Sự khác biệt giữa chồng giao thức Bluetooth trên thiết bị thật và trên
máy ảo ………………………………………………………………………………………. 116
Hình 7-10 Bluetooth virtual COM port trên máy tính……………………………… 117
Hình 7-11 Cấu hình Bluetooth COM port cho máy ảo…………………………….. 118
Hình 8-1 Mô hình Use-case tổng quát…………………………………………………… 125
Hình 8-2 Mô hình Use-case Control Mouse…………………………………………… 126
12

KHOA CNTT – ĐH KHTN

0Danh sách hình

Hình 8-3 Mô hình Use-case Control Media player………………………………….. 127
Hình 8-4 Mô hình Use-case Control PowerPoint ……………………………………. 127
Hình 8-5 Mô hình Use-case SleepWakeUpShortcutKey………………………….. 128
Hình 8-6 Sơ đồ lớp của Client ……………………………………………………………… 145
Hình 8-7 Sơ đồ lớp của Server……………………………………………………………… 147
Hình 8-8 Sequence diagram Qui trình kết nối ………………………………………… 149
Hình 8-9 Sequence diagram Tìm thiết bị……………………………………………….. 151
Hình 8-10 Sequence diagram Truy vấn dịch vụ……………………………………… 152
Hình 8-11 Sequence diagram Gởi và nhận dữ liệu………………………………….. 154
Hình 8-12 Sequence diagram Connect ………………………………………………….. 155
Hình 8-13 Collaboration diagram Connect…………………………………………….. 156
Hình 8-14 Sequence diagram Use case Restart ………………………………………. 156
Hình 8-15 Collaboration diagram Restart………………………………………………. 157
Hình 8-16 Sequence diagram Mouse on………………………………………………… 157
Hình 8-17 Collaboration diagram Mouse on ………………………………………….. 158
Hình 8-18 Sequence diagram Mouse speed……………………………………………. 159
Hình 8-19 Collaboration diagram SetMouseSpeed …………………………………. 160
Hình 8-20 Sequence diagram Move left………………………………………………… 161
Hình 8-21 Collaboration diagram Move left ………………………………………….. 161
Hình 8-22 Sequence diagram Left click ………………………………………………… 162
Hình 8-23 Collaboration diagram Left click…………………………………………… 162
Hình 8-24 Sequence diagram ControlWinamp……………………………………….. 164
Hình 8-25 Collaboration diagram ControlWinamp…………………………………. 165
Hình 8-26 Sequence diagram Browse……………………………………………………. 166
Hình 8-27 Collaboration diagram Browse……………………………………………… 167
Hình 8-28 Sequence diagram AddToPlayList………………………………………… 168
Hình 8-29 Collaboration diagram AddToPlayList ………………………………….. 169
Hình 8-30 Sequence diagram RefreshFileList………………………………………… 170
Hình 8-31 Collaboration diagram RefreshFileList ………………………………….. 171
Hình 8-32 Sequence diagram Open ………………………………………………………. 172
Hình 8-33 Collaboration diagram Open ………………………………………………… 173
13

KHOA CNTT – ĐH KHTN

0Danh sách hình

Hình 8-34 Sequence diagram PlayList ………………………………………………….. 174
Hình 8-35 Collaboration diagram PlayList…………………………………………….. 175
Hình 8-36 Sequence diagram Play………………………………………………………… 177
Hình 8-37 Collaboration diagram Play………………………………………………….. 178
Hình 8-38 Sequence diagram Next……………………………………………………….. 179
Hình 8-39 Collaboration diagram Next …………………………………………………. 180
Hình 8-40 Sequence diagram GotoSlide………………………………………………… 181
Hình 8-41 Collaboration diagram GotoSlide………………………………………….. 182
Hình 8-42 Sequence diagram ShortcutKey…………………………………………….. 183
Hình 8-43 Collaboration diagram SettingShortcutKey ……………………………. 184
Hình 8-44 Màn hình chính trên client……………………………………………………. 185
Hình 8-45 Màn hình Powerpoint ………………………………………………………….. 189
Hình 8-46 Hệ thống màn hình Player ……………………………………………………. 190
Hình 8-47 Màn hình Browse………………………………………………………………… 191
Hình 8-48 Màn hình Control………………………………………………………………… 192
Hình 8-49 Màn hình Playlist………………………………………………………………… 193
Hình 8-50 Màn hình thiết lập tốc độ chuột…………………………………………….. 195
Hình 8-51 Màn hình Server …………………………………………………………………. 196
Hình A-1 Connect vào PC …………………………………………………………………… 205
Hình A-2 Chọn thiết bị muốn kết nối ……………………………………………………. 205
Hình A-3 Sử dụng menu chính …………………………………………………………….. 206
Hình A-4 Khởi chạy Powerpoint lần đầu……………………………………………….. 207
Hình A-5 Chức năng refresh list…………………………………………………………… 207
Hình A-6 Browse tập tin của Winamp / Windows Media Player………………. 208
Hình A-7 Điểu khiển Winamp……………………………………………………………… 209
Hình A-8 Thao tác với playlist …………………………………………………………….. 210
Hình A-9 Hướng dẫn sử dụng màn hình chính của server ……………………….. 211
Hình A-10 Hướng dẫn sử dụng “Files to browse”…………………………………… 211
Hình A-11 Hướng dẫn sử dụng COM port…………………………………………….. 212
Hình A-12 Thiết lập đường dẫn cho chương trình cần điều khiển…………….. 212
Hình A-13 Hướng dẫn sử dụng Options………………………………………………… 213
14

KHOA CNTT – ĐH KHTN

0Danh sách hình

Hình A-14 Màn hình “log” ………………………………………………………………….. 213
Hình A-15 Một số phím chức năng khác của server ……………………………….. 213
Hình B-1 Application Wizard………………………………………………………………. 215
Hình B-2 New project…………………………………………………………………………. 216
Hình B-3 Cấu trúc thư mục một project ………………………………………………… 217
Hình B-4 Tạo VC Workspace cho project……………………………………………… 217
Hình B-5 Mở VC Workspace cho project ……………………………………………… 218
Hình B-6 Thực thi một project……………………………………………………………… 218
Hình B-7 Chọn ứng dụng…………………………………………………………………….. 219
Hình B-8 Thực thi ứng dụng………………………………………………………………… 220

15

KHOA CNTT – ĐH KHTN

0Danh sách bảng

Danh sách bảng
Bảng 3-1 So sánh giữa Wi-fi và Bluetooth………………………………………………. 42
Bảng 3-2 So sánh giữa Hồng ngoại và Bluetooth……………………………………… 44
Bảng 6-1 Các kiểu dữ liệu cơ bản trên Symbian ………………………………………. 66
Bảng 6-2 Qui ước đặt tên lớp…………………………………………………………………. 69
Bảng 6-3 Qui ước đặt tên dữ liệu……………………………………………………………. 70
Bảng 6-4 Qui ước đặt tên hàm……………………………………………………………….. 71
Bảng 7-1 Tham số hàm Open ………………………………………………………………… 88
Bảng 7-2 Tham số hàm Bind …………………………………………………………………. 89
Bảng 7-3 Tham số hàm Listen……………………………………………………………….. 90
Bảng 7-4 Tham số hàm Accept………………………………………………………………. 90
Bảng 7-5 Bảng mô tả các hàm xây dựng server soket……………………………….. 91
Bảng 7-6 Mô tả tham số hàm Connect…………………………………………………….. 93
Bảng 7-7 Mô tả các hàm xây dựng client socket………………………………………. 94
Bảng 7-8 Tham số hàm Read…………………………………………………………………. 95
Bảng 7-9 Tham số hàm write…………………………………………………………………. 95
Bảng 7-10 Tham số hàm Recv……………………………………………………………….. 96
Bảng 7-11 Tham số hàm Send……………………………………………………………….. 96
Bảng 7-12 Mô tả các hàm quảng bá dịch vụ…………………………………………… 104
Bảng 7-13 Mô tả hàm xây dựng protocol descriptor list ………………………….. 105
Bảng 8-1 Xác định yêu cầu………………………………………………………………….. 121
Bảng 8-2 Mô tả chức năng những lớp của Client……………………………………. 147
Bảng 8-3 Mô tả chức năng những lớp của Server …………………………………… 148
Bảng 8-4 Mô tả các hàm tìm thiết bị……………………………………………………… 151
Bảng 8-5 Mô tả các hàm truy vấn dịch vụ……………………………………………… 153
Bảng 8-6 Mô tả các hàm gởi và nhận dữ liệu …………………………………………. 154
Bảng 8-7: Menu màn hình chính ………………………………………………………….. 185
Bảng 8-8 Menu màn hình chính sau khi connect…………………………………….. 186
Bảng 8-9 Menu Programs ……………………………………………………………………. 186
Bảng 8-10 Menu Mouse………………………………………………………………………. 187
16

KHOA CNTT – ĐH KHTN

0Danh sách bảng

Bảng 8-11 Menu Turn off……………………………………………………………………. 187
Bảng 8-12 Menu Timer……………………………………………………………………….. 187
Bảng 8-13 Menu chính của các chương trình Powerpoint, Winamp, WMP.. 188
Bảng 8-14 Menu Switch ……………………………………………………………………… 188
Bảng 8-15 Menu màn hình Powerpoint…………………………………………………. 189
Bảng 8-16 Menu màn hình Browse ………………………………………………………. 192
Bảng 8-17 Menu màn hình Control ………………………………………………………. 193
Bảng 8-18 Menu màn hình Playlist ………………………………………………………. 194
Bảng 8-19 Mô tả màn hình Server………………………………………………………… 199
Bảng A-1 Chức năng Menu của màn hình Browse …………………………………. 208
Bảng A-2 Chức năng Menu của màn hình Control …………………………………. 209
Bảng A-3 Chức năng menu của màn hình Playlist………………………………….. 210

17

KHOA CNTT – ĐH KHTN

0PHẦN I. BLUETOOTH

PHẦN I. BLUETOOTH

Chương 1: Tổng quan về công nghệ Bluetooth
Chương 2: Các tầng giao thức của Bluetooth
Chương 3: Ưu điểm và khuyết điểm của Bluetooth
Chương 4: Tầm ứng dụng và tương lai của Bluetooth
18

KHOA CNTT – ĐH KHTN

Chương 1 :Tổng quan về công nghệ Bluetooth

Chương 1 :
Tổng quan về công nghệ
Bluetooth
1.1 Bluetooth là gì?
Bluetooth là một 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 bằng sóng vô tuyến qua băng tần chung ISM (Industrial,
Scientific, Medical) .
1.2 Tại sao có tên Bluetooth?
Bluetooth là tên của một nhà vua Đan Mạch – Vua Harald Bluetooth,
người đã thống nhất Đan Mạch và Na Uy ở thế kỷ thứ 10. Harald Bluetooth trở
thành nhà vua Đan Mạch vào thời kỳ 940-981. Một trong những tài nghệ của
ông là làm cho mọi người có thể ngồi lại nói chuyện với nhau; có lẽ vì thế công
nghệ không dây này mang tên ông, điều này thể hiện mơ ước Bluetooth sẽ là
một chuẩn giao tiếp không dây chung cho các thiết bị di động.
1.3 Lịch sử phát triển của Bluetooth
• Năm 1994, lần đầu tiên Ericsson đề xướng việc nghiên cứu phát triển
một giao diện vô tuyến công suất nhỏ, rẻ tiền, sử dụng sóng radio
nhằm kết nối không dây giữa máy di động cầm tay và các bộ phận
thông tin, điện tử khác.
• Năm 1997, Ericsson tiếp xúc và thảo luận với một số nhà sản xuất
thiết bị điện tử cầm tay về việc nghiên cứu phát triển và thúc đẩy các
sản phẩm không dây cự ly ngắn.
• Năm 1998, 5 công ty nổi tiếng thế giới là Ericsson, IBM, Intel, Nokia
và Toshiba đã cùng nhau thành lập nhóm đặc biệt quan tâm đến
Bluetooth (gọi là SIG – Special Interest Group).
• Tháng 7/1999, các chuyên gia của SIG cho ra đời các chỉ tiêu và tính
năng kỹ thuật đầu tiên của Bluetooth – kỹ thuật Bluetooth 1.0.

Năm 2000: SIG bổ sung thêm 4 thành viên mới là: 3Com, Lucent
Technologies, Microsoft và Motorola. Sản phẩm Bluetooth đầu tiên
19

KHOA CNTT – ĐH KHTN

Chương 1 :Tổng quan về công nghệ Bluetooth

được tung ra thị trường, từ đó các thế hệ sản phẩm Bluetooth liên tục
ra đời. Công nghệ không dây Bluetooth đã trở thành một trong những
công nghệ phát triển nhanh nhất của thời đại.

Năm 2001: Bluetooth 1.1 ra đời cùng với bộ Bluetooth software
development kit-XTNDAccess Blue SDK, đánh dấu bước phát triển
chưa từng có của công nghệ Bluetooth trên nhiều lĩnh vực khác nhau
với sự quan tâm của nhiều nhà sản xuất mới. Bluetooth được bình
chọn là công nghệ vô tuyến hay nhất của năm.

Tháng 7/2002, Bluetooth SIG thiết lập cơ quan đầu não toàn cầu tại
Overland Park, Kansas, USA. Năm 2002 đánh dấu sự đời các thế hệ
máy tính Apple hỗ trợ Bluetooth. Sau đó không lâu Bluetooth cũng
được thiết lập trên máy Macintosh với hệ điều hành Mac OS X.
Bluetooth cho phép chia sẻ tập tin giữa các máy Mac, đồng bộ hoá và
chia sẻ thông tin liên lạc giữa các máy Palm, truy cập internet thông
qua điện thoại di động có hỗ trợ Bluetooth (Nokia, Ericsson,
Motorola…).

Tháng 5/2003, CSR (Cambridge Silicon Radio) cho ra đời 1 chip
Bluetooth mới với khả năng tích hợp dễ dàng và giá cả hợp lý hơn.
Điều này góp phần cho sự ra đời thế hệ Motherboard tích hợp
Bluetooth, giảm sự chênh lệch giá cả giữa các mainboard, cellphone
có và không có Bluetooth.. Tháng 11/2003 dòng sản phẩm Bluetooth
1.2 ra đời.
• Năm 2004, các công ty điện thoại di động tiếp tục khai thác thị trường
sôi nổi này bằng cách cho ra đời các thế hệ điện thoại di động đời mới
hỗ trợ Bluetooth (N7610, N6820, N6230). Motorola cho ra sản phẩm
Bluetooth đầu tay của mình. Các sản phẩm Bluetooth tiếp tục ra đời và
được xúc tiến mạnh mẽ qua chương trình “Operation Blueshock”
International Consumer Electronics Show (CES) tại Las Vegas ngày
9/1/2004
20

KHOA CNTT – ĐH KHTN

Chương 2 :Các tầng giao thức của Bluetooth

Chương 2 :
Các tầng giao thức của
Bluetooth
Các tầng giao thức của Bluetooth mô tả công nghệ Bluetooth làm việc
thế nào và những đặc điểm kĩ thuật của Bluetooth. Nó cung cấp những thông
tin cần thiết để tạo ra những sản phẩm dùng công nghệ bluetooth. Tuy nhiên
đặc tả không chỉ rõ những phần cứng, phần mềm cụ thể cũng như không mô tả
một phương pháp chính xác để xây dựng được sản phẩm.
Đặc tả Bluetooth do SIG phát triển và nội dung của nó lên đến hàng
ngàn trang (có thể coi thêm tại https://www.bluetooth.org/spec/ ) . Ở đây chúng
em xin giới thiệu một cách khái quát đặc tả của Bluetooth bao gồm chồng giao
thức (protocol stack) và mối quan hệ giữa các tầng của nó.
Chồng giao thức của Bluetooth:

Hình 2-1 Chồng giao thức của Bluetooth
Sau đây là từng thành phần của chồng giao thức
21

KHOA CNTT – ĐH KHTN

Chương 2 :Các tầng giao thức của Bluetooth

2.1 Bluetooth Radio
Tầng Bluetooth radio là tầng thấp nhất được định nghĩa trong đặc tả
Bluetooth. Nó định nghĩa những yêu cầu cho bộ phận thu phát sóng hoạt động
ở tần số 2.4GHz ISM (Industrial, Scientific, and Medical). Băng tần ISM là
băng tần không cần đăng kí được dành riêng để dùng cho các thiết bị không
dây trong công nghiệp, khoa học và y tế.
Nhờ giao tiếp bằng sóng radio mà dữ liệu Bluetooth có thể xuyên qua
các vật thể rắn và phi kim.
Sóng radio của Bluetooth được truyền đi bằng cách nhảy tần số
(frequency hopping), có nghĩa là mọi packet được truyền trên những tần số
khác nhau. Tốc độ nhảy nhanh giúp tránh nhiễu tốt. Hầu hết các nước dùng 79
bước nhảy, mỗi bước nhả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 đi còn 23 bước nhảy.

Hình 2-2 Frequency hopping
Bluetooth được thiết kế để hoạt động ở mức năng lượng rất thấp. Đặc tả
đưa ra 3 mức năng lượng từ 1mW tới 100 mW
• Mức năng lượng 1 (100mW): Được thiết kế cho những thiết bị có
phạm vi hoạt động rộng (~100m)
22

KHOA CNTT – ĐH KHTN

Chương 2 :Các tầng giao thức của Bluetooth

• Mức năng lượng 2 (2.5mW): Cho những thiết bị có phạm vi hoạt
động thông thường (~10m)
• Mức năng lượng 3 (1mW): Cho những thiết bị có phạm vi hoạt động
ngắn (~10cm)
Những thiết bị có khả năng điều khiển mức năng lượng có thể tối ưu hóa
năng lượng bằng cách dùng những lệnh LMP (Link Manager Protocol).
2.2 Baseband
Baseband protocol nằm ở tầng vật lý của Bluetooth. Nó quản lý những
kênh truyền và liên kết vật lý tách biệt khỏi những dịch vụ khác như sửa lỗi,
chọn bước nhảy và bảo mật. Tầng Baseband nằm bên trên tầng radio trong
chồng giao thức của Bluetooth. Baseband protocol được cài đặt như là một
Link Controller. Nó cùng với Link Manager thực hiện những công việc ở mức
thấp như kết nối, quản lý năng lượng. Tầng Baseband cũng quản lý những kết
nối đồng bộ và không đồng bộ, quản lý các gói tin, thực hiện tìm kiếm và yêu
cầu kết nối đến các thiết bị Bluetooth khác.
2.2.1 Network topology
Hai hoặc nhiều thiết bị kết nối với nhau tạo thành một piconet. Các thiết
bị kết nối theo kiểu ad-hoc nghĩa là kiểu mạng được thiết lập chỉ cho nhu cầu
truyền dữ liệu hiện hành và tức thời, sau khi dữ liệu truyền xong, mạng sẽ tự
hủy. Trong một piconet, một thiết bị đóng vai trò là Master (thường là thiết bị
đầu tiên tạo kết nối), các thiết bị sau đó đóng vai trò là Slave. Một piconet chỉ
có duy nhất 1 Master, Master thiết lập đồng hồ đếm xung để đồng bộ các thiết
bị trong cùng piconet mà nó đóng vai trò là Master. Master cũng quyết định số
kênh truyền thông. Tất cả các thiết bị còn lại trong piconet, nếu không là
Master thì phải là Slave. Chú ý: không cho phép truyền thông trực tiếp giữa
Slave – Slave.
Vai trò Master trong 1 piconet không cố định, ví dụ khi Master không
đủ tài nguyên phục vụ cho piconet, nó sẽ giao quyền lại cho một Slave “giàu
có” hơn làm Master, còn nó làm Slave.
23

Đánh giá post

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *