馬良川,張道信,朱 軍,丁海松
(安徽大學(xué) 電子科學(xué)與技術(shù)學(xué)院,安徽 合肥 230039)
隨著人們生活水平的提高和網(wǎng)絡(luò)的普及,尤其是近幾年全球移動(dòng)通信系統(tǒng)GSM[1]短信技術(shù)的發(fā)展和居住環(huán)境的改善,促使人們對(duì)家庭安全防范的意識(shí)得到空前的強(qiáng)化。在此領(lǐng)域中,針對(duì)傳統(tǒng)家庭報(bào)警系統(tǒng)具有布線復(fù)雜、范圍受局限等諸多缺點(diǎn),使用無(wú)線通信設(shè)備并將其安裝于室內(nèi),不但不會(huì)破壞房間原有布局,而且具有安裝過(guò)程便捷、投入少、組網(wǎng)快速等優(yōu)點(diǎn)。本文所設(shè)計(jì)的系統(tǒng)是基于CC1110[2]的無(wú)線傳輸,利用GSM網(wǎng)絡(luò)對(duì)控制信息和報(bào)警信息進(jìn)行發(fā)送和接收,用戶(hù)只要使用手機(jī)就可以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。系統(tǒng)主要由多個(gè)終端板和一個(gè)控制板組成。終端板可以安裝在門(mén)、窗、電氣設(shè)備上,通過(guò)終端板上的傳感器和執(zhí)行機(jī)構(gòu)對(duì)監(jiān)控設(shè)備進(jìn)行監(jiān)控。當(dāng)監(jiān)控設(shè)備發(fā)生異常情況時(shí),就會(huì)以短信的形式將特定的狀態(tài)信息和報(bào)警信息發(fā)送給用戶(hù),實(shí)現(xiàn)對(duì)家庭的遠(yuǎn)程控制。
系統(tǒng)由終端板(數(shù)據(jù)采集端)、控制板(數(shù)據(jù)接收端)、GSM模塊組成,如圖1所示。終端板將采集到的數(shù)據(jù)進(jìn)行初步處理后發(fā)送給控制板,控制板將接收到的數(shù)據(jù)經(jīng)過(guò)分析處理后發(fā)到用戶(hù)手機(jī)上,用戶(hù)可以通過(guò)手機(jī)實(shí)時(shí)了解家庭情況。控制板接收并分析用戶(hù)的指令,把指令解析后發(fā)給指定的終端板,指定的終端板根據(jù)接收到的控制信息去控制執(zhí)行機(jī)構(gòu),實(shí)現(xiàn)遠(yuǎn)程控制。
圖1 系統(tǒng)組成
終端板和控制板都采用CC1110芯片。終端板在無(wú)線通信模塊的基礎(chǔ)上增加了各種傳感器或執(zhí)行機(jī)構(gòu)。而控制板則在無(wú)線通信模塊的基礎(chǔ)上添加GSM模塊控制電路。
CC1110芯片是美國(guó)TI公司的一款1 GHz以下頻帶的低功耗射頻(RF)片上系統(tǒng)解決方案。芯片內(nèi)嵌多達(dá)32 KB的在系統(tǒng)可編程Flash存儲(chǔ)器、4 KB的SRAM存儲(chǔ)器、8通道8~14 bit A/D轉(zhuǎn)換器、1個(gè)16 bit定時(shí)器和 3個(gè) 8 bit定時(shí)器、2個(gè) UART/SPI、21 個(gè)通用 I/O?;?CC1110的高性能無(wú)線收發(fā)器工作于433 MHz頻段,頻率穩(wěn)定性好、靈敏度高、無(wú)線數(shù)據(jù)傳輸最大速度可達(dá)500 Kb/s,同時(shí)采用低供電電壓(2.3 V~3.6 V),從而降低了整個(gè)系統(tǒng)的使用功耗。
CC1110芯片只要極少數(shù)外圍元件就能夠搭建穩(wěn)定可靠且功耗低的片上系統(tǒng),大大簡(jiǎn)化了RF電路的設(shè)計(jì)過(guò)程。設(shè)計(jì)的傳感器節(jié)點(diǎn)工作在433 MHz頻段。圖2是CC1110的外圍電路設(shè)計(jì),主要由CC1110芯片、射頻匹配電路和其他外圍元件組成。
圖2 無(wú)線收發(fā)模塊
本系統(tǒng)GSM模塊設(shè)計(jì)選用西門(mén)子公司的TC35i[3]。該模塊集射頻電路和基帶于一體,向用戶(hù)提供標(biāo)準(zhǔn)的AT命令接口,為數(shù)據(jù)、語(yǔ)音、短消息和傳真提供快速、可靠、安全的傳輸,方便用戶(hù)的應(yīng)用開(kāi)發(fā)及設(shè)計(jì)。TC35i在休眠狀態(tài)時(shí)的電流消耗為3.5 mA,空閑狀態(tài)時(shí)為25 mA。TC35i有40個(gè)引腳,通過(guò)一個(gè)ZIF(Zero Insertion Force)連接器引出。這40個(gè)引腳可以劃分為五類(lèi):電源、數(shù)據(jù)輸入/輸出、SIM卡、音頻接口和控制。TC35i的數(shù)據(jù)輸入/輸出接口是一個(gè)串行異步收發(fā)器,固定的參數(shù)有:8 bit數(shù)據(jù)位和 1 bit停止位,無(wú)校驗(yàn)位,波特率在 300 b/s~115 200 b/s之間可選。GSM與控制板的連接電路圖如圖3所示。
圖3 GSM與控制板的連接電路圖
系統(tǒng)軟件由終端板程序和控制板程序組成。終端板程序通過(guò)傳感器對(duì)家用電器、門(mén)、窗等的當(dāng)前狀態(tài)進(jìn)行實(shí)時(shí)采集,根據(jù)命令把監(jiān)控設(shè)備狀態(tài)數(shù)據(jù)發(fā)送給控制板或控制執(zhí)行機(jī)構(gòu)對(duì)監(jiān)控設(shè)備進(jìn)行準(zhǔn)確的控制??刂瓢宄绦蜇?fù)責(zé)對(duì)終端板發(fā)送的數(shù)據(jù)進(jìn)行讀取、分析,并利用GSM網(wǎng)絡(luò)將結(jié)果實(shí)時(shí)地發(fā)送給用戶(hù),讓用戶(hù)及時(shí)了解家居狀況;同時(shí)控制板接收用戶(hù)的控制命令,并將控制命令解析后及時(shí)地發(fā)送給指定的終端板,終端板通過(guò)執(zhí)行機(jī)構(gòu)對(duì)監(jiān)控設(shè)備進(jìn)行準(zhǔn)確的控制。
終端板的程序流程圖如圖4示。首先CC1110進(jìn)行I/O、無(wú)線模塊等系統(tǒng)的初始化。為了減少終端板的損耗,終端板每隔100 ms進(jìn)行一次數(shù)據(jù)采樣,并在控制板查詢(xún)的時(shí)候把信息發(fā)送給控制板。
終端板采集事務(wù)時(shí)序如圖5所示。終端板每隔100ms進(jìn)行一次數(shù)據(jù)采集,為了減少功耗,數(shù)據(jù)采集完成后,傳感器關(guān)閉。當(dāng)需要采集數(shù)據(jù)時(shí),傳感器再次打開(kāi)。如圖 5所示,第一個(gè)100ms傳感器工作5ms后關(guān)閉,第二個(gè)100ms時(shí),傳感器再次打開(kāi),工作5 ms后關(guān)閉。
圖4 終端板的程序流程圖
圖5 終端板采集事務(wù)時(shí)序
終端板發(fā)送的數(shù)據(jù)包格式如表1所示。
表1 終端板數(shù)據(jù)包
導(dǎo)言表示數(shù)據(jù)包開(kāi)始,終端板的標(biāo)識(shí)符包含終端板的識(shí)別碼,用于控制板區(qū)分哪個(gè)終端板發(fā)送的數(shù)據(jù)。終端板接收正確的數(shù)據(jù)包后,解析數(shù)據(jù)包,如果是查詢(xún)命令,終端板將設(shè)備的狀態(tài)信息發(fā)送給控制板;如果是控制命令,終端板控制執(zhí)行機(jī)構(gòu),對(duì)設(shè)備進(jìn)行控制,并將控制結(jié)果反饋給終端板??刂瓢灏呀K端板返回的結(jié)果發(fā)送給用戶(hù)。
控制板的主程序流程圖如圖6所示,串口中斷程序流程如圖7所示。首先CC1110進(jìn)行I/O、無(wú)線模塊、串口、GSM模塊的初始化。終端板每隔200 ms查詢(xún)一次終端板的數(shù)據(jù),當(dāng)監(jiān)控設(shè)備異?;蛴脩?hù)查詢(xún)監(jiān)控設(shè)備當(dāng)前狀態(tài)時(shí),控制板將終端板的狀態(tài)信息或報(bào)警信息通過(guò)GSM網(wǎng)絡(luò)發(fā)送給用戶(hù)。當(dāng)用戶(hù)需要控制監(jiān)控設(shè)備時(shí),將控制信息以短信形式通過(guò)GSM網(wǎng)絡(luò)發(fā)送給控制板,控制板分析處理命令信息后將控制指令發(fā)送給指定的終端,指定的終端通過(guò)控制執(zhí)行機(jī)構(gòu)實(shí)現(xiàn)對(duì)設(shè)備的控制。
圖6 控制板主程序流程圖
圖7 控制板串口中斷程序流程圖
控制板發(fā)送的數(shù)據(jù)包格式如表2所示。
表2 控制板發(fā)送數(shù)據(jù)格式
導(dǎo)言表示數(shù)據(jù)包的開(kāi)始。時(shí)間信息用于終端板和控制板的時(shí)間同步。命令包含控制板對(duì)終端板發(fā)送的指令,其中還包括終端板的識(shí)別碼。結(jié)束標(biāo)志表示一個(gè)數(shù)據(jù)包的結(jié)束。每個(gè)終端板的識(shí)別碼不相同,當(dāng)終端板接收到數(shù)據(jù)包后,首先進(jìn)行時(shí)間同步,然后解析數(shù)據(jù)包中的數(shù)據(jù),判斷命令中的識(shí)別碼是否與自身的識(shí)別碼相同,如果相同則進(jìn)行命令響應(yīng);不相同則在時(shí)間同步后放棄此數(shù)據(jù)包。
GSM模塊的啟動(dòng):在GSM模塊上電后,必須給IGT一個(gè)大于100 ms低電平,模塊才啟動(dòng)。本系統(tǒng)在不降低系統(tǒng)可靠性的前提下,使用軟件方法啟動(dòng),通過(guò)CC1110內(nèi)部定時(shí)器給出大于100 ms的低電平,以降低硬件成本。GSM正常啟動(dòng)后通過(guò)AT[4]命令進(jìn)行操作。常用的AT命令如表3所示。
表3 短信發(fā)送常用指令
為了節(jié)省GSM的控制和短信發(fā)送的時(shí)間,ATE0命令表示在系統(tǒng)初始化后關(guān)閉回顯。AT+CMGF用來(lái)選擇發(fā)送短信的格式,當(dāng)AT+CMGF=0時(shí),用來(lái)發(fā)送中文短信,AT+CMGF=1時(shí),用來(lái)發(fā)送英文短信。本文主要介紹發(fā)送中文短信如:
其中,AT+CMGS用來(lái)發(fā)送短信,AT+CMGS=23表示要發(fā)送23位十六進(jìn)制數(shù),發(fā)送的短信是用ASCII表示的十六進(jìn)制,不包括初始的 2個(gè)0。等待 GSM模塊返回“>”后,將短信輸出給GSM模塊,GSM將短信發(fā)出。短信發(fā)送格式如表4所示。
經(jīng)過(guò)試驗(yàn)驗(yàn)證,本系統(tǒng)可以很好地實(shí)現(xiàn)家庭設(shè)施的控制和報(bào)警。終端板可以與各種傳感器和動(dòng)作機(jī)構(gòu)連接,具有很好的通用性。當(dāng)要添加新設(shè)備時(shí),只要加一個(gè)終端板就可以,整個(gè)系統(tǒng)有非常好的可擴(kuò)展性。而且本系統(tǒng)不局限于家庭應(yīng)用,針對(duì)移動(dòng)設(shè)備,在控制板上外接一個(gè)GPS模塊,可將衛(wèi)星定位信息實(shí)時(shí)地發(fā)給用戶(hù),可以實(shí)現(xiàn)移動(dòng)設(shè)備的控制和報(bào)警。此外,由于有覆蓋廣、性能穩(wěn)定的GSM網(wǎng)絡(luò)的支持,可以確??刂菩畔⒌目焖傩院蜏?zhǔn)確性。
表4 短信發(fā)送格式
[1]GSM 03.40.Technical realization of the short message service point-to-point[S].European Telecommunications Standards Institute(www.etsi.org).1994.
[2]Texas Instruments Incorporated.CC1110 datasheer[EB/OL].http://focus.ti.com/docs/prod/folders/print/cc1110f32.html,2010-01-16.
[3]Siemens Corporation.TC35i hardware interface description[EB/OL].http://www.siemens.com,2003-11-12.
[4]SiemensCorporation.TC35iATcommandset[EB/OL].http://www.siemens.com,2005-09-09.
[5]GSM03.38.Alphabetsanslanguage-specificinformation[S].European Telecommunications Standards Instiute(www.etsi.org).1999.