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
Trang 1Quả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
Trang 21.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
Trang 3gầ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)
Trang 4Hì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
Trang 5 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
Trang 6Hì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
Trang 7CHƯƠ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
Trang 8Mô 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
Trang 9Hì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
Trang 10Hì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
Trang 11 Service Manager: Service độc lập của chương trình, được khởi động ngay khi chương trình
khởi động, hay hệ điều hành khởi động, chịu trách nhiệm hứng tất cả cả sự kiện sms input của các thiết bị được kiểm soát và cung cấp dịch vụ gửi tin nhắn đi khi chương trình có yêu cầu
SMS Receiver: Module nhận sự kiện SMS từ hệ thống
File System to store data: Hệ thống các file dữ liệu được lưu trên thẻ nhớ của điện thoại
Android
4.2.3 Giao diện chương trình
Hình Error! No text of specified style in document.-11: Giao diện quản lý và thêm thiết bị
Hình Error! No text of specified style in document.-12: Màn hình ContextMenu và cập nhật mô tả
thiết bị
Trang 12Hình Error! No text of specified style in document.-13: Giao diện của DeviceCommand và thêm một
Command
Hình Error! No text of specified style in document.-14: Giao diện ContextMenu, cập nhật một
Command và xác nhận truyền Command
Hình Error! No text of specified style in document.-15: Giao diện báo cáo và các dạng biểu đồ thống
kê
4.3 Thiết kế phần cứng thiết bị
Yêu cầu phần cứng
Trang 13Phần cứng sử dụng trong mô hình điều khiển này cần phải đáp ứng được các khối chức năng chính như sau:
Khối nguồn
MCU - Vi xử lý điều khiển trung tâm
Khối giao tiếp:
SIM900 – Module kết nối GSM, GPRS (hỗ trợ SMS và IP)
USB – Chuẩn kết nối phổ biến
RS-232 – Chuẩn kết nối phổ biến trong công nghiệp
Khối điều khiển:
Module cảm biến thiết bị
Module điều khiển thiết bị
Khối cấu hình, trạng thái:
Các nút nhập dữ liệu vào
Hiển thị (LED or LCD)
Lưu trữ (SD card)
Dưới đây là biểu đồ mô hình hóa thiết bị điều khiển:
Khối Nguồn
MCU
Khối giao tiếp
Cảm biến
Điều khiển
Key input
Hiển thị
Lưu trữ
Hình Error! No text of specified style in document.-16: Biểu đồ mô hình hóa thiết bị điều khiển tiêu
chuẩn
4.4 Thiết kế phần mềm nhúng trên thiết bị
Các module phần mềm điều khiển các khối chức năng phần cứng cơ bản: LCD, Keyboard, RS-232, USB, giao tiếp với thẻ nhớ ngoài SD card không nói tới ở phần mô tả trong đề tài này
Thiết bị này có thể coi như một thiết bị trung tâm, điều phối các thiết bị điện khác được kết nối tới nó như các thiết bị kiểu ON-OFF, các thiết bị cảm biến, hay các thiết bị cần truyền dữ liệu lớn như camera, audio,