3.1.1 Connection Manager
Tầng quản lý kết nối làm nhiệm vụ cung cấp kết nối tin cậy và truyền dữ liệu với thời gian phù hợp cho các ứng dụng nhà thông minh.
17
Hình 3-2: Mô hình tầng quản lý kết nối
3.1.1.1 Yêu cầu và chức năng
-Quản lý các kết nối, đảm bảo dữ liệu được truyền đi bảo mật và toàn vẹn.
-Tốc độ truyền dữ liệu được đảm bảo chạy ổn định và không bị nghẽn lệnh với các ứng dụng trên PPC.
-Độc lập và ẩn với các tầng khác.
-Module mở giúp khả năng phát triển với các loại kết nối dữ liệu khác phù hợp
hơn và cho phép người dùng phát triển về sau.
3.1.1.2 Thiết kế
Tầng này bao gồm hai thành phần chính :
-Lõi các kết nối chương trình: bao gồm nhiều thành phần kết nối.
18
3.1.1.3 Thành phần kết nối
Là mức độ thấp nhất của tầng quản lý kết nối. Thành phần kết nối định nghĩa ra
loại kết nối và hình thức kết nối. Ví dụ: wireless, Bluetooth, hồng ngoại…Với những khuôn khổ truyền dữ liệu, mỗi thành phần kết nối phải đảm bảo tối thiểu các chức
năng mà hệ thống yêu cầu. Ví dụ có thể gửi hình ảnh với một độ trễ cho phép.
Hiện tại trong khuôn khổđề tài nghiên cứu khóa luận và giới hạn về thời gian,
chương trình chỉ sử dụng kết nối wireless.
3.1.1.4 Thành phần quản lý kết nối
Thành phần quản lý định nghĩa ra cách dữ liệu trao đổi giữa hai hệ thống và độc lập hoàn toàn với thành phần kết nối. Nghĩa là thành phần này chỉ yêu cầu thành phần kết nối phải được cả hai thiết bị hỗ trợ và tốc độ truyền dữ liệu cũng như các tiêu chí
truyền dữ liệu khác phải được đảm bảo trên mức tối thiểu.
Tầng quản lý hỗ trợngười dùng tối đa trong việc cấu hình kết nối.
3.1.1.5 Hoạt động
Trên PPC
-Khi có yêu cầu gửi dữ liệu từ các tầng trên, tầng quản lý kết nối nhận biết kết nối hiện thời đang sử dụng và gọi kết nối đó tùy thuộc mục đích sử dụng.
-Khi được tầng quản lý gọi, tầng kết nối phải cung cấp các dữ liệu cho việc mở
kết nối và gửi dữ liệu.
-Tầng quản lý sẽ hủy các loại kết nối không được sử dụng và chỉ giữ duy nhất một loại kết nối mà người dùng đã chọn.
Trên PC
-Thành phần quản lý trên PC duy trì các thành phần kết nối hiện có. Các thành phần kết nối này luôn trong tình trạng chờ dữ liệu từ PPC gửi sang. Với mô hình quản
lý đa người dùng, tại một thời gian cụ thể luôn tồn tại những thành phần kết nối khác nhau. Các thành phần kết nối được sử dụng tùy vào vị trí và tính chất của người dùng.
Ví dụ: nếu người dùng đang trong phòng thì có thể không cần sử dụng các kết nối tốc độ cao hơn như wireless… mà chỉ cần sử dụng Bluetooth để tiết kiệm nguồn
19 Hình 3-3: Data Manager 3.1.2 Data Manager 3.1.2.1 Yêu cầu và chức năng Trên PC -Quản lý dữ liệu của tầng kết nối: trạng thái kết nối, loại kết nối, biến truy cập… -Quản lý dữ liệu của người dùng: tài khoản sử dụng, phân cấp người dùng, csdl về tài khoản sử dụng…
-Quản lý tài nguyên và trạng thái các ứng dụng của những người dùng đang truy
cập.
-Quản lý dữ liệu nhà thông minh và các đối tượng trong nhà thông minh.
-Quản lý dữ liệu hình ảnh trong nhà thông minh. Khi người dùng muốn xem các
đối tượng trong nhà thông minh đểđiều chỉnh, tầng ứng dụng sẽ lấy dữ liệu này để gửi sang PPC.
20 -Quản lý dữ liệu của tầng kết nối.
-Quản lý tài nguyên và trạng thái ứng dụng người dùng đang sử dụng. -Quản lý dữ liệu nhà thông minh và các đối tượng trong nhà thông minh.
3.1.2.2 Thiết kế
Trên PC
Tồn tại hai CSDL: Người dùng và đối tượng.
-CSDL người dùng bao gồm: thông tin về tài khoản, phân cấp người dùng. Mật khẩu của người dùng sẽ được mã hóa một chiều MD5. Sở hữu đối tượng với người dùng - tức là sẽ có giới hạn một nhóm người dùng trong toàn bộ người dùng được quyền điều khiển một đối tượng.
-CSDL đối tượng bao gồm: thông tin trạng thái, thuộc tính và các tính chất của
đối tượng.
-Người dùng cao nhất có quyền điều khiển các thông số về người dùng và đối
tượng bằng một công cụ hỗ trợ trên Server.
-Đối với người dùng, dữ liệu đồ vật là một cấu trúc bao gồm các thuộc tính, tính chất, tên, nhóm người dùng quản lý…- mang tính chất quản lý về mặt số lượng và không bao hàm nhiều đến các vấn đề kỹ thuật.
- Đối với chương trình, dữ liệu đối tượng cần được thể hiện trên PPC theo hình
ảnh và được nhận diện thông qua một hình chữ nhật, người dùng có thể sử dụng hình chữ nhật này đểđiều khiển đối tượng, vì vậy dữ liệu đồ vật là một cấu trúc đơn giản bao gồm 3 thành phần: ID của đối tượng, tọa độ góc dưới cùng bên trái và tọa độ góc trên cùng bên phải của đồ vật.
-Vùng dữ liệu đồ vật - là dữ liệu quản lý trong một phạm vi cụ thểmà do người dùng có yêu cầu và được camera giám sát khoanh vùng, được tầng quản lý dữ liệu lưu
trữ theo dữ liệu đối tượng.
-Các dữ liệu khác được lưu trữkhi chương trình gọi ứng dụng tương ứng.
Trên PPC
-Trên PPC tồn tại duy nhất một CSDL đối tượng.
21
3.1.2.3 Hoạt động
Trên PC
-CSDL người dùng: khi người dùng đăng nhập bằng PPC, tầng dữ liệu sẽ sử
kiểm tra tính hợp lệ của người dùng, từ đó phân quyền và tổ chức dữ liệu người dùng theo phiên làm việc.
-CSDL đối tượng: khi dữ liệu đối tượng bị thay đổi, chương trình sẽ yêu cầu client cập nhập lại CSDL. Thực chất, CSDL đối tượng trên PC chỉ là nơi để quản lý tập trung CSDL và không mang tính quản lý về mặt kỹ thuật.
-Vùng dữ liệu đối tượng: khi client (PPC) có yêu cầu tới một vùng đối tượng cần
điều khiển, PC kiểm tra dữ liệu đã được nhận diện hoặc có bịthay đổi không, nếu dữ
liệu chưa được nhận diện hoặc bị thay đổi, PC sẽ yêu cầu Camera giám sát chụp và
định vịđồ vật, PC sẽ lấy dữ liệu này để tổ chức thành vùng dữ liệu đối tượng.
Trên PPC
- Khi người dùng yêu cầu quan sát và điều khiển một vùng đối tượng, PC gửi dữ
liệu vùng đối tượng sang PPC. Từ dữ liệu này, kết hợp với CSDL đối tượng đã lưu trữ, PPC có thể khoanh vùng và hiển thịđối tượng.
22
Hình 3-4: Dữ liệu đối tượng
23
Hình 3-6: Mô hình quản lý Session và Aplication 3.1.3 Session & Application Manager
-Dữ liệu được xử lý tập trung với đa người dùng, đa ứng dụng. Vì vậy việc phân hóa dữ liệu và quản lý ứng dụng là vô cùng quan trọng. Tầng này quản lý các ứng dụng, các trao đổi giữa PPC và PC.
- Tầng quản lý Session và Application chỉ có trên PC.
3.1.3.1 Yêu cầu và chức năng
-Phân luồng dữ liệu và ứng dụng theo từng người dùng. -Quản lý dữ liệu của từng phiên làm việc.
24
3.1.3.2 Thiết kế
Trên PC tồn tại những phiên làm việc khác nhau của người dùng (PPC). Mỗi phiên làm việc bao gồm nhiều ứng dụng, mỗi ứng dụng gồm nhiều loại dữ liệu khác nhau. Cơ bản là sự phức tạp để phân luồng dữ liệu và quản lý ứng dụng nằm ở hai vấn đềtrên. Để giải quyết điều đó, chúng tôi xinđề cập đến một đối
tượng đặc biệt là Session để quản lý phiên làm việc của người dùng. Và sử
dụng đối tượng Application để quản lý ứng dụng. Như vậy Application là tầng dữ liệu dưới của Session. Sự thuận lợi trong việc phân chia Session và
Application thể hiện ởtính linh động trong việc quản lý ứng dụng.
3.1.3.3 Session
-Vì dữ liệu được xử lý tập trung với đa ứng dụng, đa người dùng nên PC cần quản lý người dùng theo từng phiên làm việc - được định nghĩa bằng đối tượng Session.
-Sử dụng Session ID để quản lý sốlượng người dùng và tính hợp pháp của truy cập. Mỗi người dùng chỉ có duy nhất một Session ID.
3.1.3.4 Application
-Sựtương tác giữa PPC và PC được quản lý thông qua lớp Application.
-Sựtương tác này được nhận biết bằng byte đầu tiên trong luồng dữ liệu - gọi là byte ngữ cảnh. Như vậy, dựa vào Session ID và byte ngữ cảnh, PC có thể phân luồng dữ liệu theo từng phiên làm việc của người dùng.
-PC tổ chức đối tượng để phân tích các byte ngữ cảnh và làm nhiệm vụ phân luồng dữ liệu được gọi là Bộ phân tích ngữ cảnh (ContextAnalyzer). Về mặt dữ liệu, bộ phân tích ngữ cảnh là sự kết hợp của cả Session và Application.
-Trên PC tồn tại một scanner (bộ quét). Scanner tìm tới các session đang được kích hoạt, nếu session có ứng dụng được người dùng điều khiển và việc kiểm tra tính hợp lệ là đúng, thì scanner có nhiệm vụ thực thi lệnh này của người dùng. Ví dụ :
người dùng muốn điều khiển một đối tượng, dữ liệu sẽ được gửi và lưu trữ trong Session. Việc thực thi lệnh này không nằm trong session mà sẽ do bộ scanner đảm nhiệm.
25
Hình 3-7: Context Analyzer
3.1.3.5 Hoạt động
Mỗi người dùng khi đăng nhập thành công sẽ được PC cấp cho một giá trị ngẫu nhiên và duy nhất là Session ID. PC sau lần đăng nhập này sẽ quản lý người dùng thông qua giá trị Session ID này. Ý nghĩa của Session ID ngoài việc quản lý truy cập hợp pháp của người dùng còn dùng để quản lý sốlượng người dùng truy cập trong cùng một thời gian. Khi người dùng xảy ra tình trạng ngắt kết nối (vượt ngoài vùng phủ song, treo máy…), trong lần đăng nhập tiếp Theo, PC sẽ nhận diện người dùng bằng địa chỉ Ethernet và cấp mới lại Session ID cho người dùng. Việc trao đổi Session ID này hoàn toàn ẩn đối với người dùng.
3.2 Biểu đồ tuần tự 3.2.1 Quản lý kết nối
Luồng dữ liệu được tạo ra khi có một yêu cầu kết nối được đến từ tầng quảng lý Session. Yêu cầu này có thể là yêu cầu tạo mới một kết nối hoặc yêu cầu cung cấp một kết nối cho việc truyền dữ liệu.
26
Hình 3-8: Quản lý kết nối 3.2.2 Gửi dữ liệu
Luồng dữ liệu gửi dữ liệu được tạo ra khi cần gửi một luồng byte. Dữ liệu cần gửi đi thông thường từ tầng quản lý ứng dụng và lấy từ tầng quản lý cơ sở dữ liêu. Tại
27
Hình 3-9: Gửi dữ liệu 3.2.3 Phân luồng ứng dụng
Luồng dữ liệu được tạo ra khi có luồng byte được gửi từ PPC, tại đây sẽ xảy ra quá trình phân tích byte ngữ cảnh và phân luồng ứng dụng theo từng người dùng tới từng ứng dụng.
28
Hình 3-10: Phân luồng ứng dụng 3.2.4 Luồng dữ liệu hệ thống
Luồng dữ liệu hệ thống là bản thểđầy đủ của một hệ thống nhà thông minh sau
khi được ghép nối giữa các module. Luồng dữ liệu mô tả dữ liệu của hệ thống một
cách đơn giản và hình tượng với dữ liệu chỉ bao gồm yêu cầu giám sát và dữ liệu điều khiển.
29
30
Chương 4 THỰC NGHIỆM
4.1 Ghép nối module
Module quan sát và điều khiển trên PPC là module trung gian giữa module nhận diện điều khiển trạng thái vật thể qua IP Camera và module mô phỏng nhà thông minh. Thực hiện công việc truyền dữ liệu đã được phân tích của camera giám sát trên PC tới thiết bị cầm tay. Module quan sát và điều khiển trên PPC còn làm nhiệm vụ kết nối giữa người dùng và thiết bị trung gian (PC).
Sơ đồ luồng dữ liệu đi trong hệ thống được mô tảnhư trong biểu đồ luồng dữ
liệu (Hình 3-10)
4.2 Thực nghiệm
4.2.1 Yêu cầu cấu hình
4.2.1.1 PPC
-Hệđiều hành Windows Mobile version 5.x (hoặc lớn hơn). -Hỗ trợ wireless.
-Cài đặt Compact .NET -ROM 2G.
-Màn hình cảm ứng.
4.2.1.2 PC
-Hệđiều hình Windows XP (hoặc lớn hơn). -Hỗ trợ wireless (hoặc sử dụng modem hỗ trợ). -Cài đặt .Net Framework.
-Ổ cứng 2G. -RAM 256.
31
4.2.2 Số liệu thực nghiệm
4.2.2.1 Thực nghiệm truyền dữ liệu
Bảng 4-1: Thực nghiệm truyền dữ liệu
STT Loại dữ liệu Dung lượng Thời gian đóng gói Thời gian truyền 1 DL đăng nhập 15K 5ms 800 ms 2 DL ping server 1B 0ms 20ms 3 DL chuyển ứng dụng 1B 0ms 30ms 4 DL chuyển đối tượng 5K 5ms 300ms 5 DL chuyển kết nối 1B 0ms 50ms 6 DL chuyển trạng
thái đối tượng 15K 10ms 1000ms
7 DL đối tượng 300K 50ms 2000ms 8 DL nhận diện (hình ảnh và tọa độ) 250K 50ms 1500ms
4.2.2.2 Số liệu thực nghiệm sau khi ghép với các module khác
Dữ liệu di chuyển giữa các module bao gồm:
- Lệnh điều khiển: PPC – PC – Devices: khi người dung muốn điều khiển một thiết bị trong nhà thông minh.
32
- Nhận diện: Camera – PC – PPC: thong thường dữ liệu này sẽ được camera tự động sinh và lưu trữ trên PC.
- Yêu cầu nhận diện: PPC – PC – Camera : Khi người dung muốn quan sát một phạm vi, giả thiết phạm vi này chưa được camera giám sát nhận biết thì PPC sẽ gửi một yêu cầu tới PC, tới camera giám sát và sinh ra dữ liệu giám sát có được từ quá trình nhận diện.
Bảng 4-2: Dữ liệu tương tác
STT Lệnh Dữ liệu Module Độ trễ
1 Lệnh điều khiển Text Nhà thông minh 1000 ms
2 Nhận diện Byte Camera 2000ms
3 Yêu cầu nhận diện Byte Tương tác 50ms
33
Chương 5 KẾT LUẬN
Trong bài nghiên cứu khóa luận, tác giả đã đi sâu và giải quyết về vấn đề định danh thiết bị, truyền dữ liệu và bảo mật người dùng – là một vấn đề trong bài toán chung về hệ thống giám sát và điều khiển nhà thông minh.
Bằng cách sử dụng công nghệ mạng không dây wireless và định dạng chuẩn lưu
trữ dữ liệu xml, phần lớn đã giải quyết được vấn đềđịnh dạng và truyền các đối tượng
trong môi trường tính toán khắp nơi. Dữ liệu thông suốt và phân cấp dữ liệu, phân cấp
người dùng là nền tảng cơ bản cho việc triển khai các ứng dụng bảo mật về sau.
Tuy nhiên, môi trường wireless vẫn bị hạn chế về tốc độ truyền dữ liệu, vì thế ứng dụng chưa thểđạt tới trạng thái thời gian thực. Trong điều kiện thực nghiệm còn ít PPC nhưng wireless đã thể hiện những hạn chế về mặt tốc độ truyền.Bên cạnh đó,
wireless là mạng không an toàn với những chuẩn kém ngặt nghèo, dễ bịđột nhập và ăn
cắp dữ liệu. Điều đó là vô cùng nguy hiểm cho ứng dụng.
Hướng phát triển sắp tới cần tập trung giải quyết về tốc độ truyền dữ liệu và bảo mật thông tin. Việc bảo mật thông tin không những đạt yêu cầu không làm dữ liệu trở
nên nặng nềhơn mà các gói dữ liệu truyền đi cần được mã hóa và nén, đảm bảo tính bảo mật cao.
Tổng quát bài nghiên cứu khóa luận của nhóm sinh viên đạt được là hết sức quan trọng trong việc xây dựng nền tảng cơ bản của nhà thông minh, dựa trên ba nguyên tắc chuẩn: thiết bị giao tiếp thong suốt, linh động và thông minh. Kiến trúc nhà thông minh gọn gang, thuận tiện và khoa học. Camera giám sát chính xác và nhanh.