Quản lý, giám sát và đi ều khiển thiết b ị bằng phần mềm trên Android thông qua mạng điện thoại di động Bùi Thị Linh Trường Đại học Công nghệ Chuyên ngành: Kỹ thuật Điện tử; Mã số: 60 52 70 Cán bộ hướng dẫn khoa học: PGS.TS Ngô Diên Tập Năm bảo vệ: 2012
Quản lý, giám sát và điều khiển thiết bị bằng phần mềm trên Android thông qua mạng điện thoại di động Bùi Thị Linh Trường Đại học Công nghệ Chuyên ngành: Kỹ thuật Điện tử; Mã số: 60 52 70 Cán bộ hướng dẫn khoa học: PGS.TS Ngô Diên Tập Năm bảo vệ: 2012 Abstract. Tổng quan về hệ điều hành Android. Nghiên cứu các giao thức sử dụng: giao thức TCP/IP; bản tin nhắn ngắn SMS. Tổng quan về mạng thông tin di động (Vinaphone): cấu trúc, các thành phần chức năng hệ thống GSM; cấu trúc, các thành phần chức năng hệ thống GPRS/EDGE. cấu trúc, các thành phần chức năng hệ thống 3G. Mô hình giải pháp và thiết kế phần mềm trên Android. Đưa ra kết quả và hướng phát triển tiếp theo. Keywords: Kỹ thuật điện tử; Phần mềm; Android; Điện thoại di động; Mạng thông tin di động Content. CHƢƠNG 1: TỔNG QUAN HỆ ĐIỀU HÀNH ANDROID 1.1. Giới thiệu Android Hệ điều hành Android là hệ điều hành mở, hoàn thiện, cho phép người dùng tùy biến trên nó. Tương thích với hầu hết các nhà sản xuất phần cứng. 1.2. Tính năng Android Lưu trữ - Sử dụng SQLite, một cơ sở dữ liệu quan hệ, trọng lượng nhẹ cho dữ liệu lưu trữ. Kết nối - Hỗ trợ GSM / EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth (bao gồm A2DP và AVRCP), WiFi, LTE và WiMAX. Tin nhắn - Hỗ trợ cả SMS và MMS. Trình duyệt web - Dựa trên WebKit mã nguồn mở, cùng với V8 JavaScript của Chrome. Truyền thông hỗ trợ - Bao gồm hỗ trợ cho các phương tiện truyền thông sau đây: H.263, H.264 (trong 3GP hoặc MP4 container), MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF và BMP. Hỗ trợ phần cứng - Accelerometer cảm biến, máy ảnh, kỹ thuật số Compass, Cảm biến tiệm cận và GPS. Multi-touch - Hỗ trợ màn hình cảm ứng đa điểm. Đa chức năng - Hỗ trợ các ứng dụng đa tác vụ. Hỗ trợ Flash - Android 2.3 hỗ trợ Flash 10.1. Tethering - Hỗ trợ chia sẻ kết nối Internet là một điểm nóng không dây/có dây 1.3. Kiến trúc Android Kiến trúc Android gồm 4 lớp cơ bản, như hình 1-1: Nền ứng dụng (Application Framework) Thư viện (Libraries) Android Runtime Linux Kernel Hình Error! No text of specified style in document.-1:Kiến trúc Android 1.4. Ứng dụng Android Một ứng dụng Android là tập hợp của các thành phần. Có 4 loại thành phần: Activity: Một Activity là một thành phần giao diện người dùng tương ứng với mỗi màn hình mà người dùng tương tác để làm gì đó. Service: Một Service là một thành phần ứng dụng không có giao diện người sử dụng để thực hiện các hoạt động lâu chạy ở chế độ nền (background). Broadcast Receiver: Một broadcast receiver là một thành phần để phản ứng với những thông tin quảng bá trong toàn hệ thống. (ví dụ: tắt màn hình, pin hết…) Content Provider: Một content provider là một thành phần dùng để lưu trữ và truy xuất dữ liệu và làm cho nó có sẵn với tất cả ứng dụng. Có nhiều loại khác nhau của content provider: audio, video, danh bạ… và bạn có thể cũng tạo ra provider cho riêng mình. CHƢƠNG 2: CÁC GIAO THỨC SỬ DỤNG 2.1.Giao thức TCP/IP 2.1.1. Khái niệm Giao thức TCP/IP có thể được coi là một tập hợp các tầng, mỗi tầng giải quyết một tập các vấn đề có liên quan đến việc truyền dữ liệu và cung cấp cho các giao thức tầng cấp trên một dịch vụ được định nghĩa rõ ràng dựa trên việc sử dụng các dịch vụ của các tầng thấp hơn. Về mặt lôgic, các tầng trên gần với người dùng hơn và làm việc với dữ liệu trừu tượng hơn, chúng dựa vào các giao thức tầng cấp dưới để biến đổi dữ liệu thành các dạng mà cuối cùng có thể được truyền đi một cách vật lý. 2.1.2. Cấu trúc phân tầng của TCP/IP Tầng ứng Dụng (Application Layer). Tầng Giao Vận (Transport Layer). Tầng Liên Mạng (Internet Layer). Tầng Liên Kết (Link Layer). Hình Error! No text of specified style in document.-2: Mô Hình TCP/IP 2.2. Bản tin nhắn ngắn SMS SMS (Short Message Service) là dịch vụ tin nhắn ngắn, cung cấp một phương tiện để chuyển tin nhắn ngắn giữa các trạm di động MS (Mobile Station) và thực thể tin nhắn ngắn SME (Short Message Entity) thông qua một trung tâm dịch vụ SC (Service Centrel). Sau đây là mô tả sơ lược về dịch vụ này, chi tiết hơn sẽ được trình bày trong tài liệu tham khảo [8]. SC phục vụ như là một chức năng chuyển tiếp của truyền thông tin giữa các trạm di động MS và SME. Hai dịch vụ điểm - điểm khác nhau được định nghĩa: Bản tin ngắn MT (Mobile Terminated): Bản tin ngắn được gửi từ SC tới MS. Hoạt động này được gọi là SM cung cấp (delivery). Bản tin ngắn MO (Mobile Originated): Bản tin ngắn được gửi từ MS tới SME thông qua SC. Hoạt động này được gọi là SM đệ trình (submitting). Hình Error! No text of specified style in document.-3:Quan hệ giữa MS và SC CHƢƠNG 3: TỔNG QUAN VỀ MẠNG THÔNG TIN DI ĐỘNG 3.1. Cấu trúc, các thành phần chức năng hệ thống GSM Hình Error! No text of specified style in document.-4: Cấu trúc hệ thống thông tin di động trong hệ thống GSM MSC (Mobile Switching Center): Trung tâm chuyển mạch dịch vụ di động. Trung tâm chuyển mạch di động có chức năng xử lý các cuộc gọi đi và đến, đồng thời cung cấp các chức năng điều khiển hoạt động cho tất cả các trạm cơ sở trong cùng một hệ thống. Chính vì vậy MSC là một bộ phận quan trọng nhất trong hệ thống thông tin di động. HLR (Home Location Register): Bộ ghi định vị thưởng trú. Bộ ghi định vị thường trú có chức năng quản lý toàn bộ dữ liệu thuê bao. Nó là cơ sở dữ liệu thuê bao để quản lý nhận thực, cấp phát, hủy, quản lý các dịch vụ người dùng. VLR (Visitor Location Register): Bộ ghi định vị tạm trú. Bộ ghi định vị tạm trú thường nằm kết hợp trong MSC. Trong thời gian máy di động cập nhật vị trí, dữ liệu thuê bao được chuyển từ HLR tới VLR hiện tại. Dữ liệu này được lưu trữ trong VLR trong suốt thời gian mà MS di chuyển trong vùng này. VLR sẽ cung cấp dữ liệu cho thuê bao bất kỳ lúc bào nó cần cho việc xử lý một cuộc gọi. AUC (Authencation Centre): Trung tâm nhận thực. Khi một thuê bao muốn truy nhập mạng, VLR đang quản lý sẽ kiểm tra thông tin yêu cầu của thuê bao có được chấp nhận hay không, nghĩa là nó thực hiện một sự nhận thực. EIR (Equipment Identification Register): Bộ ghi nhận dạng thiết bị. EIR kiểm tra tính hợp lệ của thuê bao dựa trên yêu cầu đặc tính thiết bị di động quốc tế theo số IMEI từ MS sau đó gửi nó tới bộ ghi nhận dạng thiết bị EIR. BSC (Base Station Controller): Bộ điều khiển trạm gốc. Bộ điều khiển trạm gốc BSC cung cấp những chức năng thông minh điều khiển mọi hoạt động của hệ thống con vô tuyến. Một BSC có thể điều khiển nhiều BTS. BTS (Base Transceiver Station): Trạm thu phát gốc. Trạm thu phát gốc BTS bao gồm các thiết bị thu phát, anten và xử lý tín hiệu đặc thù cho giao diện vô tuyến. OSS (Operation Support System): Hệ thống hỗ trợ giám sát. Tất cả mọi sự hoạt động, sự kiểm tra và sự bảo trì cho tất cả những thành phần mạng SS, BSS (BSC, BTS, TRAU) có thể được thực hiện ở trung tâm OMC, gọi là trung tâm vận hành và bảo dưỡng. 3.2. Cấu trúc, các thành phần chức năng hệ thống GPRS/EDGE Về cơ bản hệ thống GPRS và EDGE được nâng cấp, bổ sung hệ thống chuyển mạch gói vào hệ thống GSM trước đây chủ yếu dành cho dịch vụ thoại. Điều này sẽ làm cho mạng PLMN tồn tại 2 hệ thống song song là chuyển mạch kênh cho thoại và chuyển mạch gói cho dữ liệu. Để nâng cấp từ hệ thống GSM lên hệ thống GPRS/EDGE cần bổ sung vào lõi thiết bị phần cứng mới là các thành phần quản lý chuyển mạch gói: nút hỗ trợ dịch vụ GPRS phục vụ (SGSN) và nút hỗ trợ dịch vụ GPRS cổng (GGSN). Hai nút này được gọi chung là các nút hỗ trợ GPRS (GSN) và thường là các Router có dung lượng lớn. Trong các GGSN có thêm cổng BG (Border Gateway) để chia sẻ các giao diện vật lý đến các mạng ngoài và đến mạng trục khi liên kết với hệ thống GPRS/EDGE của mạng khác, hãng thiết bị khác. Hình Error! No text of specified style in document.-5:Sơ đồ các khối chức năng hệ thống GPRS/EDGE kết hợp với GSM 3.3. Cấu trúc, các thành phần chức năng hệ thống 3G Trong kiến trúc mạng 3G này, các phần tử mạng được phân thành 3 thành phần: thiết bị người dùng (UE), mạng vô tuyến UMTS (UTRAN) và mạng lõi (CN). Trong đó, UE và UTRAN đều bao gồm các giao thức hoàn toàn mới, việc thiết kế chúng dựa trên nhu cầu của công nghệ vô tuyến WCDMA mới. Còn mạng lõi thì ngược lại, có các thành phần được kế thừa từ mạng lõi GSM, GPRS/EDGE trước đó. Hình Error! No text of specified style in document.-6: Sơ đồ kết nối mạng lõi 3G theo 3GPP Release 4 CHƢƠNG 4: GIẢI PHÁP 4.1. Mô hình giải pháp Giải pháp điều khiển thiết bị qua mạng IP đến thời điểm này không còn là điều mới mẻ. Trong những mô hình này, việc sử dụng 1 server trung gian làm nhiệm vụ điều phối, cầu nối giữa các điểm với nhau là điều cần thiết. Giải pháp này có nhiều ưu điểm: tốc độ và thời gian đáp ứng tốt, tin cậy,… Giá thành sẽ lớn với những mô hình điều khiển nhỏ, tỉ trọng giá của server có IP tĩnh sẽ cao. Bên cạnh đó, dịch vụ tin nhắn ngắn cũng đã được mô hình và thực nghiệm tương đối nhiều trong việc điều khiển thiết bị, nhưng còn nhiều hạn chế: về độ tin cậy, bảo mật, thời gian đáp ứng, … Từ những đặc tính của hai mô hình, nếu chúng ta thực hiện việc kết hợp một cách linh hoạt giữa các giao thức, lúc đó sẽ có một mô hình điều khiển không cần sử dụng server IP tĩnh, việc điều phối, hay bắt tay giữa các thiết bị với nhau thực hiện qua dịch vụ tin nhắn. Dưới đây là cấu trúc hai mô hình điều khiển này. Mô hình điều khiển có sử dụng Server Hình Error! No text of specified style in document.-7: Mô hình điều khiển có sử dụng Server Với mô hình này, cả thiết bị điều khiển (Android phone) và thiết bị chấp hành (Device) đều phải kết nối tới Server có địa chỉ IP tĩnh. Server với IP tĩnh này thường được đặt trên mạng Internet, nếu đặt trong location của nhà cung cấp dịch vụ di động thì cần phải làm việc với nhà cung cấp. Mô hình kết nối: Thiết bị điều khiển kết nối với server để gửi lệnh điều khiển cũng như lấy thông tin trang thái của thiết bị chấp hành và lưu thông tin lên Server. Thiết bị chấp hành thường xuyên kết nối tới server để lấy lệnh điều khiển, cũng như gửi lên trạng thái của mình. Nhược điểm: Các thiết bị đều phải nghe ngóng từ server. Không chủ động được thời gian truyền, -> tạo độ trễ thông tin. Mô hình điều khiển có sử dụng Server Hình Error! No text of specified style in document.-8:Mô hình điều khiển không sử dụng Server Mô hình này không có máy chủ, các thiết bị tham gia với tư cách là MS (Mobile Station) đối với nhà cung cấp dịch vụ di động. Mô hình kết nối: Thiết bị điều khiển và thiết bị chấp hành đều có thể khởi tạo kết nối qua phương thức SMS. Khi cả hai có thể kết nối qua IP thì kênh IP được thiết lập. Lựa chọn mô hình giải pháp Đề tài này hướng tới mô hình không sử dụng máy chủ, nhưng vẫn mong muốn sử dụng đường truyền dữ liệu tốc độ cao. Với ưu điểm: Luôn kết nối khi có tín hiệu sóng của nhà mạng di động. Tận dụng đường truyền dữ liệu tốc độ cao ngay khi sẵn sàng. Trong mô hình điều khiển này, có điểm lợi và khác biệt lớn so với mô hình điều khiển thiết bị qua mạng IP: Không cần server máy chủ có địa chỉ IP tĩnh Không giới hạn phạm vi nội bộ như hệ thống điều khiển trong mạng nội bộ Phạm vi điều khiển lớn theo phạm vi DNS của nhà mạng di động. Có sự kết hợp linh hoạt giữa giao thức nhận tin nhắn SMS và giao thức IP. Riêng với giao thức SMS là không giới hạn bởi phạm vi của nhà mạng, mà thực hiện được trên mô hình toàn cầu. 4.2. Thiết kế phần mềm trên Android 4.2.1. Mô hình Usecase Mô hình Usecase là mô hình chức năng người dùng yêu cầu trên hệ thống. Được mô tả ở hình 4-3. Hình Error! No text of specified style in document.-9: Mô hình Usecase của phần mềm điều khiển Trong đó: Actor: Người dùng sử dụng phần mềm điều khiển trên thiết bị Android. Add Device: Chức năng thêm mới 1 thiết bị có thể được quản lý và điều khiển bởi phần mềm. Update Device: Chức năng thay đổi các thông số của thiết bị điều khiển. Manage Device: Chức năng quản lý thiết bị, có thể xem báo cáo, gửi các lệnh điều khiển, xem các thông số, trạng thái mà thiết bị gửi lên. Message Content: Xem dữ liệu mà thiết bị gửi lên. Report: Xem các kiểu báo cáo, các loại thống kê, có thể theo thời gian, theo 1 tham số nào đấy, với nhiều lựa chọn. Ví dụ: Với thiết bị kiểm soát công suất, có thể xem được mức công suất theo thời gian. Command Control: Thiết lập cấu hình các tập lệnh điều khiển cho thiết bị, có thể có 2 lựa chọn: theo dạng command, theo dạng chat window, 4.2.2. Mô hình Package Mô hình Package thể hiện các chức năng của hệ thống. Hình Error! No text of specified style in document.-10: Mô hình Package của phần mềm điều khiển Trong đó: Main Package: Là phần xử lý các giao diện chính, các liên kết tới các chức năng khác của chương trình. Device Manager: Phần này chứa thêm các phần như: Device Command, Device Content, Device Report. Có chức năng quản lý, thiết lập các thông số, tổ chức lưu trữ dữ liệu, tạo báo cáo cho quá trình hoạt động của các thiết bị. Connection: Thiết lập kết nối giữa phần mềm trên Android và thiết bị, được xây dựng linh hoạt, bao hàm cả SMS Connection và IP Connection. SMS Connection: Xây dựng chức năng gửi và nhận tin nhắn, chuyển sang mode SMS. IP Connection: Xây dựng chức năng thiết lập kết nối, gửi và nhận dữ liệu, chuyển sang mode IP