- 相關(guān)推薦
家庭智能技防報警系統的設計和實(shí)現
摘 要:本文旨在設計一套基于服務(wù)器-客戶(hù)端模型的智能技防報警系統,整套系統分為報警器硬件,移動(dòng)客戶(hù)端應用和服務(wù)端軟件三部分。接入網(wǎng)絡(luò )的報警器將檢測到的異常情況通知客戶(hù),并且客戶(hù)可以在智能手機上獲取現場(chǎng)圖像。
【關(guān)鍵詞】技防 物聯(lián)網(wǎng) 單片機 安卓 TCP/IP
現在市場(chǎng)上面向家庭的報警系統主要包括對入侵、火災等情況的報警。在環(huán)境數據的采集上各種報警器實(shí)現的方法基本相同,區別主要在報警網(wǎng)絡(luò )的搭建上,一般分為兩種:一種是利用電話(huà)網(wǎng)絡(luò )通過(guò)雙音雙頻信號搭建個(gè)人報警系統,另一種利用局域網(wǎng)搭建的物業(yè)報警系統等。本文研究的技防系統基于服務(wù)器-客戶(hù)端模型,移動(dòng)客戶(hù)端安裝在智能手機上通過(guò)3G或其他方式接入網(wǎng)絡(luò ),報警器終端通過(guò)用戶(hù)家中的無(wú)線(xiàn)路由器接入網(wǎng)絡(luò )。
1 系統設計和實(shí)現
如圖1所示,在系統中,每個(gè)報警器都有自己的ID并通過(guò)互聯(lián)網(wǎng)連接服務(wù)器,用戶(hù)在移動(dòng)客戶(hù)端上登錄后通過(guò)報警器ID將手機和報警器綁定,從而接收已綁定的報警器發(fā)出的報警信息。
1.1 報警器終端的設計和實(shí)現
報警器終端設計為以單片機為主控,搭載幾個(gè)傳感器和數據通信模塊的系統。傳感器完成環(huán)境信息的采集,數據通信模塊實(shí)現和服務(wù)器的連接,單片機完成對傳感器、模塊的控制、實(shí)時(shí)數據的分析和通過(guò)數據通信模塊與服務(wù)器的通信。
1.1.1 硬件模塊的具體設計
主控單片機STC12C5A60S2的IO腳與熱紅外傳感器HC-SR501、氣體傳感器MQ-2相連,獲取傳感器數據;單片機的雙串口分別和無(wú)線(xiàn)通信模塊USR-WIFI232-T、攝像頭模塊PTC08相連,從而完成與服務(wù)器的通信和實(shí)時(shí)圖像的獲取。USR-WIFI232-T模塊配置成TCP Client自動(dòng)連接TCP服務(wù)器,將服務(wù)器傳和單片機串口之間的數據相互轉發(fā)。
1.1.2 系統流程圖
系統上電后首先完成各模塊初始化,并向服務(wù)器發(fā)送包含自身ID的登錄信息。然后系統并發(fā)進(jìn)行實(shí)時(shí)數據的采集和響應服務(wù)器的請求:檢測到異常情況將其上傳至服務(wù)器;接收到服務(wù)器的拍照請求后,拍照并上傳圖像。
1.2 移動(dòng)客戶(hù)端的設計和實(shí)現
該應用設計為一款安卓應用,用戶(hù)在運行應用并登錄后,應用即在后臺運行,和手機綁定報警器一旦發(fā)現異常,手機將提醒用戶(hù)。
1.2.1 主要應用功能分析
應用的主要功能包括登錄、注銷(xiāo)、綁定、解綁、報警、查看警報等。用戶(hù)進(jìn)行登錄操作后,手機即在遠端服務(wù)器對一些信息進(jìn)行注冊,此后應用即在后臺運行,用戶(hù)通過(guò)掃描二維碼或鍵入某個(gè)報警器的ID和key完成和報警器的綁定,對于已綁定的報警器,報警器一旦發(fā)現異常情況,手機會(huì )以震動(dòng)、鈴聲的方式提醒用戶(hù),并根據本地信息描述異常情況,比如“廚房出現易燃氣體”等,提醒顯示在手機的通知面板,用戶(hù)點(diǎn)擊后即可獲取該報警器拍攝的現場(chǎng)圖片。
1.2.2 程序關(guān)鍵部分設計
作為一個(gè)報警系統的一部分,它必須具有較高的可靠信和穩定性,它和服務(wù)器之間的通信由安卓后臺服務(wù)維護。服務(wù)類(lèi)AlarmService繼承自Service,以Started類(lèi)型啟動(dòng),在后臺運行維護ServiceThread類(lèi),更新Activity。它重寫(xiě)onCreate()和onDestroy()方法,在服務(wù)的啟動(dòng)和銷(xiāo)毀時(shí)開(kāi)啟、關(guān)閉線(xiàn)程ServiceThread和讀取、保存用戶(hù)數據。在重寫(xiě)onStartCommand()方法接收Activity傳遞的Intent,并以廣播反饋。Handler對象handler用于線(xiàn)程ServiceThread和服務(wù)AlarmService之間的通信。
線(xiàn)程類(lèi)ServiceThread是AlarmService的內部類(lèi),在服務(wù)開(kāi)啟后運行,負責和服務(wù)器通信,它實(shí)現ManageThread接口,由AlarmService調用對其管理。套接字socket和服務(wù)器建立TCP連接,輸入流in用于和服務(wù)器的基本通信,數據流dataInput在傳輸圖片時(shí)打開(kāi),完成傳輸后關(guān)閉。
1.3 服務(wù)端的設計和實(shí)現
報警器終端和手機客戶(hù)端分別連上服務(wù)器的兩個(gè)端口,在完成登錄操作后,服務(wù)器為客戶(hù)端提供服務(wù):為報警器終端向與其綁定的手機客戶(hù)端轉發(fā)報警信息和實(shí)時(shí)圖片、接受手機客戶(hù)端綁定、解綁報警器的請求等。服務(wù)器采取WSAAsyncSelect異步選擇模型,被動(dòng)接收客戶(hù)端的請求,異步處理予以響應。
1.3.1 程序關(guān)鍵部分設計
服務(wù)端應用程序采用異步選擇模型。在客戶(hù)端數據的存儲和客戶(hù)端的管理上,對于單個(gè)客戶(hù)端,ID和SOCKET是兩種客戶(hù)端基本的信息,它們存儲在各自CClientInf對象中,所有客戶(hù)端信息全部存儲在客戶(hù)端管理類(lèi)CClients中的成員容器里,CClients對于兩種客戶(hù)端相同的請求(如登錄請求)的響應直接操作對應的CClientInf對象。對于報警器終端和手機客戶(hù)端各自獨有的信息(如報警器終端中與它綁定的手機客戶(hù)端的ID信息等)保存在各自的CAlaInf、CMobInf對象中,并記錄在CClientInf中泛型T中,以CClients為父類(lèi)的報警器終端管理類(lèi)CAlas、手機客戶(hù)端管理類(lèi)CMobs在響應報警器客戶(hù)端、手機客戶(hù)端請求時(shí),操作各自父類(lèi)對象中對應的客戶(hù)端信息CClientInf、ClientInf。
客戶(hù)端管理類(lèi)CClients作為CMobs和CAlas的父類(lèi),除了完成兩種客戶(hù)端基本的請求,還解析客戶(hù)端傳來(lái)的數據請求類(lèi)型,通過(guò)多態(tài)傳給對應的子類(lèi),子管理類(lèi)CMob、CAla根據請求類(lèi)型完成不同的響應。
2 結束語(yǔ)
本系統的設計將報警器接入物聯(lián)網(wǎng),并搭建了服務(wù)器客戶(hù)端平臺傳遞數據,報警信息的傳遞作為初步目標。下一步,系統作為平臺可以為智能家電提供接口;服務(wù)器通過(guò)整合一塊區域內報警器上傳的數據可以預估該地區的整體水平;豐富移動(dòng)端的應用程序可以提供更智能更準確的用戶(hù)服務(wù)。
參考文獻
[1]魏小龍.MSP430系列單片機接口技術(shù)及實(shí)用設計實(shí)例 [M].北京:北京航空航天大學(xué)出版社,2002.
[2]邁耶.Android4高級編程 [M]北京:清華大學(xué)出版社,2013.
[3]lvor Horton.Visual C++ 2012入門(mén)經(jīng)典 [M]北京:清華大學(xué)出版社,2013.
【家庭智能技防報警系統的設計和實(shí)現】相關(guān)文章:
智能家居控制系統的設計與實(shí)現09-16
多網(wǎng)絡(luò )智能遠程遙控系統的設計與實(shí)現08-19
嵌入式現場(chǎng)智能顯示系統的設計與實(shí)現10-03
旅游云講解系統的設計和實(shí)現09-23
智能照明控制系統的設計和應用09-21
某工廠(chǎng)智能安防系統設計方案09-27
智能家庭藥品管理系統的交互設計08-12
基于C和串口通信的紅外防盜報警系統設計08-03