Trang 17
2.5.1.1. Giới thiệu giao thức Bluetooth
Bluetooth là một đặc tả công nghiệp cho truyền thông không dây tầm gần giữa các thiết bị điện tử. Công nghệ này hỗ trợ việc truyền dữ liệu qua các khoảng cách ngắn giữa các thiết bị di động và cố định, tạo nên các mạng cá nhân không dây (Wireless Personal Area Network-PANs).
Bluetooth có thể đạt được tốc độ truyền dữ liệu 1Mb/s. Bluetooth hỗ trợ tốc độ truyền tải dữ liệu lên tới 720 Kbps trong phạm vi 10 m–100 m. Khác với kết nối hồng ngoại (IrDA), kết nối Bluetooth là vô hướng và sử dụng giải tần 2,4 GHz.
Đặc tả Bluetooth được phát triển đầu tiên bởi Ericsson (hiện nay là Sony Ericsson và Ericsson Mobile Platforms), và sau đó được chuẩn hoá bởi Bluetooth Special Interest Group (SIG).
2.5.1.2. Giao thức nền OBEX
OBEX (OBject EXchange) là giao thức trao đổi dữ liệu giữa các thiết bị dùng cổng hồng ngoại được hiệp hội IrDA (Infrared Data Association) đưa ra lần đầu tiên năm 1997.
Ban đầu, giao thức này chỉ giới hạn cho các thiết bị sử dụng môi trường ánh sáng hồng ngoại, nhưng rất nhanh sau đó nó được tổ chức Bluetooth SIG (Bluetooth Special Interest Group) đưa vào hầu hết các thiết bị Bluetooth của mình.
Cũng giống như các giao thức khác, giao thức OBEX được xây dựng trên nền mô hình OSI (Open Systems Interconnection) bao gồm hai thành phần chính:
OBEX session protocol (giao thức phiên OBEX): mô tả cấu trúc gói tin trong phiên làm việc giữa hai thiết bị.
OBEX application framework: tập các dịch vụ OBEX cung cấp cho các ứng dụng đầu cuối như truyền file, in ảnh...
Trang 18
Hình 2-11. Giao thức OBEX 2.5.2. Giao thức Wirless B/G
2.5.2.1. Giới thiệu giao thức Wirless B/G
WLAN là một loại mạng máy tính nhưng việc kết nối giữa các thành phần trong mạng không sử dụng các loại cáp như một mạng thông thường, môi trường truyền thông của các thành phần trong mạng là không khí. Các thành phần trong mạng sử dụng sóng điện từ để truyền thông với nhau.
Công nghệ WLAN lần đầu tiên xuất hiện vào cuối năm 1990, khi những nhà sản
xuất giới thiệu những sản phẩm hoạt động trong băng tần 900Mhz. Những giải pháp
này (không được thống nhất giữa các nhà sản xuất) cung cấp tốc độ truyền dữ liệu 1Mbps, thấp hơn nhiều so với tốc độ 10Mbps của hầu hết các mạng sử dụng cáp hiện thời.
Năm 2003, IEEE công bố thêm một sự cải tiến là chuẩn 802.11G mà có thể truyền nhận thông tin ở cả hai dãy tần 2.4Ghz và 5Ghz và có thể nâng tốc độ truyền dữ liệu lên đến 54Mbps. Thêm vào đó, những sản phẩm áp dụng 802.11G cũng có thể tương thích ngược với các thiết bị chuẩn 802.11B. Hiện nay chuẩn 802.11G đã đạt
đến tốc độ 108Mbps-300Mbps.
2.5.2.2. Mô hình kết nối cơ sở (Basic service sets (BSSs))
Mô hình kết nối cơ sở bao gồm các điểm truy nhập AP (Access Point) gắn với mạng đường trục hữu tuyến và giao tiếp với các thiết bị di động trong vùng phủ sóng của một cell. AP đóng vai trò điều khiển cell và điều khiển lưu lượng tới mạng. Các
Trang 19
thiết bị di động không giao tiếp trực tiếp với nhau mà giao tiếp với các AP. Các cell có thể chồng lấn lên nhau khoảng 10-15 % cho phép các trạm di động có thể di chuyển mà không bị mất kết nối vô tuyến và cung cấp vùng phủ sóng với chi phí thấp nhất. Các trạm di động sẽ chọn AP tốt nhất để kết nối. Một điểm truy nhập nằm ở trung tâm có thể điều khiển và phân phối truy nhập cho các nút tranh chấp, cung cấp truy nhập phù hợp với mạng đường trục, ấn định các địa chỉ và các mức ưu tiên, giám sát lưu lượng mạng, quản lý chuyển đi các gói và duy trì theo dõi cấu hình mạng. Tuy nhiên giao thức đa truy nhập tập trung không cho phép các nút di động truyền trực tiếp tới nút khác nằm trong cùng vùng với điểm truy nhập như trong cấu hình mạng WLAN độc lập. Trong trường hợp này, mỗi gói sẽ phải được phát đi 2 lần (từ nút phát gốc và sau đó là điểm truy nhập) trước khi nó tới nút đích, quá trình này sẽ làm giảm hiệu quả truyền dẫn và tăng trễ truyền dẫn.
Hình 2-12. Mô hình mạng cơ sở
2.5.2.3. Mô hình kết nối Ad-hoc (Independent Basic Service sets (BSSs))
Trong mô hình kết nối ad-hoc, các nút di động(máy tính có hỗ trợ card mạng không dây) tập trung lại trong một không gian nhỏ để hình thành nên kết nối ngang cấp (peer-to-peer) giữa chúng. Các nút di động có card mạng wireless là chúng có thể trao đổi thông tin trực tiếp với nhau, không cần phải quản trị mạng. Vì các mạng ad- hoc này có thể thực hiện nhanh và dễ dàng nên chúng thường được thiết lập mà không cần một công cụ hay kỹ năng đặc biệt nào vì vậy nó rất thích hợp để sử dụng trong các hội nghị thương mại hoặc trong các nhóm làm việc tạm thời. Tuy nhiên chúng có thể có những nhược điểm về vùng phủ sóng bị giới hạn, mọi người sử dụng đều phải nghe được lẫn nhau.
Trang 20
Trang 21
Chương 3 XÂY DỰNG HỆ THỐNG GIÁM SÁT VÀ ĐIỀU
KHIÊN NHÀ THÔNG MINH – MÔ PHỎNG 3D 3.1. Mô tả bài toán
Như chương 2: Cơ sở lý thuyết và công nghệđã đề cập, một hệ thống nhà thông minh bao gồm nhiều thành phần, tổng hợp lại, hệ thống nhà thông minh có hai thành phần chính:
Thành phần hữu hình: Những đồ vật có thể tương tác được như: điều hòa, tủ lạnh, tivi…
Thành phần vô hình: Những thành phần nhận biết được như: nhiệt độ, độ ẩm… môi trường.
Trong phạm vi đề tài này, chúng tôi nghiên cứu việc xây dựng một hệ thống giám sát và điều khiển nhà thông minh – mô phỏng 3Dnhư một môi trường giả lập việc tương tác với hệ thống nhà thông minh. Như vậy, phạm vi đề tài nhỏ là: Xây dựng hệ thống mô phỏng nhà thông minh bao với những tính năng:
Thể hiện, mô phỏng ngôi nhà thông minh và những đồ vật.
Cho phép người dùng tương tác, điều khiển qua PPC.
Cho phép người dùng điều khiển các thành phần trong nhà với những đặc trưng riêng của từng vật dụng.
Kết quả của đề tài phải đưa ra giải pháp và xây dựng được chương trình với những tính năng trên.
3.2. Giải quyết các vấn đề kỹ thuật
Với đặc trưng hệ thống, xây dựng mô hình mô phỏng nhà thông minh trên tư tưởng hệ thống tính toán khắp nơi, hệ thống phải giải quyết những vấn đề kỹ thuật sau:
Xây dựng, hiển thị tốt mô hình 3D nhà thông minh.
Có khả năng kết nối với PPC, cho phép người dùng kết nối, theo dõi và điều khiển mô hình thông qua PPC.
Nhận dạng được hành động người dùng trên PPC, từ đó đưa ra những lệnh điều khiển tương ứng.
Trang 22
Do thời gian xây dựng hệ thống không nhiều, tư tưởng chung để giải quyết những vấn đề kỹ thuật là sử dụng những thư viện có sẵn, kết hợp những thư viện này với nhau một cách hợp lý và phù hợp với mô hình đề ra.
3.2.1. Hiển thị mô hình 3D
Trong đề tài này, tôi sử dụng thành phần hiển thị mô hình 3D của thư viện
TrueVision3D, được phát triển bởi công ty TrueVision3D, LLC. TrueVision3D là một thư viện mạnh, cung cấp cho người dùng khả năng đọc những định dạng file lưu trữ mô hình 3D một cách thuận tiện, cũng như quản lý những mô hình, ánh sáng… của cả hệ thống.
Hình 3-1. Hiển thị mô hình 3D sử dụng TrueVision3D 3.2.2. Định nghĩa và nhận dạng hành động người dùng
Với một hệ thống tương tác với người dùng, việc định nghĩa những hành động người dùng là một điều quan trọng. Một hệ thống tương tác với người dùng qua PPC lại có đặc trưng riêng vì PPC có ưu điểm với màn hình cảm ứng lớn nhưng lại không có bàn phím tiện lợi. Vì thế, trong đề tài này, tôi sử dụng việc định nghĩa những hành động người dùng bằng các nét vẽ trên màn hình cảm ứng. Vấn đề cần giải quyết là:
Định nghĩa được hành động của người dùng thực hiện trên màn hình PPC.
Trang 23
Từ nét vẽ của người dùng, hệ thống cần nhận dạng nét vẽ đó, chuyển thành những lệnh tương ứng.
3.2.2.1. Định nghĩa hành động người dùng
Vấn đề định nghĩa hành động người dùng được thực hiện khá đơn giản, bảng sau
mô tả hành động người dùng tương ứng với những lệnh được thực hiện:
Bảng 3-1. Định nghĩa hành động người dùng
STT Tính năng Hành động
1
Di chuyển khung nhìn sang trái.
Vẽ một nét thẳng từ trái sang phải trên màn hình PPC.
2 Di chuyển khung nhìn sang phải.
Vẽ một nét thẳng từ phải sang trái trên màn hình PPC.
3 Di chuyển khung nhìn lên trên. Vẽ một nét thẳng từ dưới lên trên trên màn hình PPC. 4 Di chuyển khung nhìn xuống dưới. Vẽ một nét thẳng từ trên xuống dưới trên màn hình PPC.
Với những hành động này, người dùng cảm thấy thân thiện với hệ thống. Hiện tại, 100% phần mềm viết cho PPC có màn hình cảm ứng đều định nghĩa các lệnh tương ứng với hành động này.
3.2.2.2. Nhận dạng hành động người dùng
Để giải quyết vấn đề nhận dạng hành động, tôi sử dụng thư viện Zinnia tích hợp với hệ thống. Zinna là một thư viện mã nguồn mở sử dụng thuật toán SVM trong việc nhận dạng tiếng Nhật. Với một vài sửa đổi trong mã nguồn chương trình, thư viện cho phép chúng ta nhận dạng những hành động được định nghĩa. Do sử dụng thuật toán SVM, thư viện Zinnia cho phép thực hiện:
Trích chọn đặc trưng: Dựa vào tín hiệu đầu vào cũng như đặc điểm của các lớp cần phân loại ta lựa chọn những yếu tố mang tính đặc trưng cho từng lớp. Các yếu tố này sẽ được lưu dưới dạng một vecto đặc trưng cho
Trang 24
Xây dựng bộ huấn luyện: Từ các mẫu và đặc trưng của từng lớp, ta xây
dựng một bộ phân loại sử dụng SVM.
Xây dựng bộ kiểm thử: Sau khi đã có được bộ phân loại ta xây dựng một hàm cho phép nhận vào vectơđặc trưng của một mẫu mới bất kỳ và đưa ra lớp của nó.
3.2.3. Tương tác với PPC
Để giải quyết vấn đề kết nối và truyền dữ liệu giữa PC và PPC, nhóm có hai lựa chọn là sử dụng giao thức Bluetooth hoặc Wirless B/G. Sau khi nghiên cứu trên các tính chất của Wireless B/G và Bluetooth, chúng tôi có so sánh:
Bảng 3-2. Bảng so sánh Wireless B/G và Bluetooth
STT Tiêu chí Wireless Bluetooth
1
Sử dụng điển
hình (Typical usage)
Phiên bản không dây của chuẩn Ethernet
(wirelessEthernet), chỉ thay thế cáp cho truy cập mạng LAN. Truy cập mạng không dây với khoảng cách dài.
Thay thế cáp cá nhân (wireless USB) cho nhiều ứng dụng khác nhau. Truy cập mạng không dây với khoảng cách trung bình.
2
Băng thông 11 Mbps, chia sẻ.
2 đến 3 Mbps với WEP. 1 Mbps, chia sẻ. Version 1.1 và 1.2 là 723.1 Kbps, version 2.0 là 2.1 Mbps, thấp hơn khi bị nhiễu. 3
Nhiễu Các thiết bị sử dụng sóng radio khác, các vật liệu xây dựng, trang thiết bị.
Các thiết bị sử dụng sóng radio khác, các vật liệu xây dựng, trang thiết bị.
4
Bảo mật Không an toàn nếu không bảo vệ tốt. Cần giải quyết những trục trặc của mạng, truy cập bất hợp pháp, hi-jacking, "Đánh hơi mạng" (hay còn gọi là dò tìm lỗ hổng mạng thông Bảo mật thấp. Liên kết được thiết lập ở mức độ sự thẩm định quyền (authentication). Khó khăn hơn cho traffic sniffing. Vẫn còn phụ thuộc vào sự thẩm định
Trang 25
qua việc dò tuần tự các gói tin ở cổng mạng khác nhau), đánh cắp phiên làm việc và truy cập trái phép. Liên kết mức độ WEP dễ bị bẻ gãy. Tin cậy vào những truy cập ở cấp độứng dụng và sự mật hoá. quyền ở cấp độứng dụng và sự mật hoá. 5 Tiêu thụ năng lượng Khá cao. Thời gian sử dụng pin rất ngắn do tiêu thụ nhiều năng lượng và duy trì kết nối. Thấp. 6 Khoảng cách (ngoài trời) 200 m - 11 Mbps. 500 m - 1 Mbps. 30 m-100 m 7 Khoảng cách (trong nhà) 40 m - 11 Mbps. 100 m - 1 Mbps. 10 m-30 m. 8 Số kênh 11 DSSS. 79—FHSS. 79 9 Năng lượng truyền tối đa 20 dBm—FHSS. 30 dBm—DSSS. 20 dBm 10 Tần số 2.4GHz -b/g 5.8GHz – a 2.4GHz 11 Giá thành Cao Thấp 12 Thiết bị hỗ trợ Hỗ trợ trong một số laptop hiện đại, PDA: đòi external H/W card, Notebook computer, desktop computer, server.
Hỗ trợ trong laptop hiện đại, nhiều điện thoại di động, PDA, thiết bịđiện tử, thiết bị tựđộng trong công nghiệp và văn phòng
Vị trí sử dụng Ở trong tầm hoạt động của các thiết bị WLAN, thường là trong các toà
Bất cứnơi nào có ít nhất 2 thiết bị Bluetooth.
Trang 26 nhà. 13 Số thiết bị có thể truy cập đồng thời Nhiều, chia sẻ. IP&P2P.
Tối đa 8, chia sẻ. P2P.
Do các thành phần hệ thống trên PC và PPC phải thường xuyên trao đổi dữ liệu với nhau, nên yếu tố tốc độ và kết nối với khoảng cách xa là tiêu chí đầu tiên. Sau khi đánh giá lựa chọn, trong thời điểm hiện tại, tôi sử dụng giao thức kết nối và truyền tín hiệu là Wirless B/G.
Hơn nữa, do giao thức Wirless B/G được hỗ trợ rất nhiều trong thư viện .NET trên hệ điều hành Windows Mobile, việc cài đặt chương trình trở nên đơn giản hơn rất nhiều.
3.3. Các thành phần hệ thống 3.3.1. Mô hình hệ thống
Hệ thống được xây dựng bao gồm nhiều thành phần, có tương tác với nhau; hơn nữa, lại do nhiều sinh viên cùng thực hiện, nên việc tách biệt các thành phần là điều rất quan trọng. Hiện tại, hệ thống được phân thành hai thành phần lớn:
Thành phần điều khiển trên PPC.
Trang 27
Trang 28
Hình 3-3. Luồng dữ liệu hệ thống 3.3.2. Các thành phần
Thành phần mô phỏng trên PC nắm vai trò quan trọng trong hệ thống. Để hệ thống dễ dàng cài đặt và có thể mở rộng các tính năng sau này, cần có sự phân tách tốt. Dựa trên mô hình hệ thống trên, chương trình trên PC được chia thành nhiều thành phần riêng biệt, mỗi thành phần thực hiện một chức năng chính, đảm bảo các tiêu chí:
Độc lập cao. Các thành phần phải được kết nối lỏng lẻo, dễ dàng thay thế bằng những thành phần khác khi chương trình phát triển sau này.
Có khả năng sử dụng lại. Mỗi thành phần chỉ thực hiện một vài chức năng cơ bản và kết nối lỏng lẻo với nhau nên có thể sử dụng lại khi chương trình phát triển sau này, cũng như sử dụng cho một ứng dụng tương tự.
Trang 29
Hình 3-4. Mô hình thành phần hệ thống
3.3.2.1. Thành phần thông điệp (Message)
a. Mô tả thành phần
Trang 30
b. Các thuộc tính chính
c. Các hàm chính
3.3.2.2. Thành phần giao thức (Protocol)
a. Mô tả thành phần
Thành phần giao thức (Protocol) là một giao diện (interface), mô tả cách thức truyền dữ liệu qua mạng với một giao thức kết nối. Hiện tại, hệ thống sử dụng hai loại giao thức kết nối là Bluetooth và Wireless nên có hai thành phần là cài đặt trực tiếp của thành phần Protocol cho từng loại giao thức cụ thể:
BluetoothProtocol
WirelessProtocol
b. Các thuộc tính chính
PPCAddress: Địa chỉ của PC mà PC giữ kết nối.
Message: Thông điệp trao đổi với PPC.
c. Các hàm chính
SetMessage(Message): Thiết lập thông điệp.
GetMessage(): Lấy thông điệp.
Send(): Gửi thông điệp tới PPC.
Recive(): Nhận thông điệp từ PPC.
Connect(): Kết nối tới PPC.
Disconnect(): Ngắt kết nối tới PPC.
3.3.2.3. Thành phần kết nối (Connection)
a. Mô tả thành phần
Thành phần Connection quản lý việc kết nối, trao đổi dữ liệu giữa PC và PPC. Trong quá trình chương trình được thực hiện, thành phần Connection thực hiện việc: