?
隨著人們對居住環境的舒適度、便捷性和安全性需求的日益提高,智能家居系統應運而生。智能家居系統的核心功能是實現家用設備運行狀況的實時監測和傳輸,主要包括:安全防盜報警;火警、水電、煤氣泄漏等實時監測和自動報警;室內溫度、濕度、燈光自動調節和遙控等[1]。因此采集和傳輸各種設備的運行信息是保證智能家居系統正常運行的關鍵。MB90F462是Fujitsu公司生產的一款通用16位單片機,最小指令周期僅為62.5ns,適用于工業控制和高速實時數據處理等場合;同時,該芯片具有多功能定時器和多脈沖發生器,適用于交流感應電機和直流無刷電機的控制。本文利用MB90F462豐富的片內資源設計了一款智能家居系統的低速數據采集卡。
1 系統結構及功能概述
根據智能家居系統在線設備比較多的特點和方便控制的需求,數據采集卡應具有足夠的輸入、輸出接口和遠程通信功能。基于MB90F462的數據采集卡的系統結構如圖1所示。系統按功能可分為以下幾個模塊:8路模擬量輸入;8路數字量輸入;GSM短信數據傳輸;RS-232、RS-485通信;GPRS數據傳輸;實時時鐘;狀態指示;EEPROM數據存儲。
?
2 主要功能模塊的設計
2.1 信號輸入模塊
在智能家居系統中,需要采集的數據信息包括空氣溫度、濕度、燈光的調節和水、電、煤氣、煙、火等報警信息,按照信號的性質可分為模擬量數據和數字量數據兩類。該數據采集卡可支持的輸入電平有5V、3.3V、RS-232和RS-485接口。
MB90F462帶有8路8/10位精度可選的A/D通道,可供輸入8路傳感器的模擬量信號。對于溫度、濕度、燈光、水流量等信息,可通過相應的傳感器將設備的實時數據通過A/D通道采集到管理中心。由于該系統數據量不大,軟件設計采用查詢的方式來檢查各路A/D的采樣完成標志,并讀入數據至管理中心的計算機中。A/D采樣需要設置的寄存器包括:ADER、ADCS1、ADCS0、ADCR1和ADCR0。A/D轉換共有四種可選模式:單步轉換模式1(運行時允許重復激活)、單步轉換模式2(運行時不允許重復激活)、連續轉換模式(運行時不允許重復激活)、停止轉換模式(運行時不允許重復激活)。
對于設備的報警信息和一些特殊的開關量,利用MB90F462的8路外部中斷對數字量輸入信號進行觸發或脈沖計數。由于外部中斷和GPIO管腳是復用的,所以使用外部中斷時必須設置相應的管腳為輸入。每兩個外部中斷共用一個中斷控制寄存器,使用外部中斷時需要設置的寄存器有ICRXX、ENIR、ELVR和EIRR。中斷信號的觸發信號電平可以為高電平、低電平、上升沿或下降沿。使用外部中斷之前和中斷處理完成后要清除標志位。
2.2 短消息通信模塊
為了更方便地服務于用戶,智能家居系統采用GSM短消息(SMS)服務來實現遠程報警和遙控功能,用戶通過個人移動電話即可監測家用設備的實時狀態和報警信息,同時還可通過發送短消息遠程控制某個設備的開關。SIEMENS公司的GSM無線模塊TC35具有可靠的數據、語音、短消息服務和傳真四種數據傳輸功能。該模塊的工作電壓為3.3~5.5V,可以工作在900MHz和1800MHz兩個頻段,所在頻段功耗分別為2W(900MHz)和1W(1800MHz)。TC35的數據接口采用串行異步收發,符合ITU-T RS-232接口電路標準,工作在CMOS電平。數據接口配置:8位數據位、1位停止位、無校驗位,可以在300bps~115Kbps的波特率下運行,支持的自動波特率為4.8~115Kbps(14.4Kbps和28.8Kbps除外)[2]。
在進行短信通信之前,通過在/IGT管腳輸出一電壓下降沿激活GSM模塊,待模塊穩定之后,設置短信服務中心號碼和數據格式,并進行短信收發、刪除、查詢等操作。
2.3 GPRS通信模塊
與傳統的GSM相比,GPRS通信的特點是終端可移動、接入時間短、傳輸速度快、按流量計費、可接入Internet網、時時在線[2]等。GPRS網絡使用TCP/IP協議棧進行組網,可以實現與Internet網絡的無縫連接,但是在傳輸時數據格式應該符合TCP/IP協議棧的數據包格式。GPRS網絡為實現點對點通訊,在數據鏈路層上使用PPP協議,物理層上使用串口通信。因此,實現基于GPRS的數據傳輸系統時需要對數據進行打包,并需要在數據鏈路層上實現PPP協議[3]。基于TCP/IP專用模塊的GPRS遠程數據傳輸的流程如圖3所示。
基于TCP/IP專用模塊的移動終端主要由數據獲取模塊(數據采集卡)、數據打包模塊和數據發送模塊組成。數據打包模塊采用ConnectOne公司生產的Iconnector模塊,數據發送模塊采用SIEMENS公司生產的具有GPRS功能的GSM手機模塊MC35。在Iconnector內部的Flash中存儲有Internet協議棧,支持PPP、IP、UDP、TCP、DNS、SMTP、POP3、HTTP、FTP、Telnet等幾乎所有的網絡協議。通過AT+i指令設置并控制Iconnector,以實現數據的打包。Iconnector有兩個標準的RS-232串行接口,在標有Modem字樣的一端與MC35相連接,在另外標有Device字樣的一端與數據采集卡相連接。用于GPRS數據傳輸的AT+i指令如表2所示。
評論
查看更多