摘 要: 提出了一種基于SIM300的車載無線防盜報(bào)警裝置。該方案主要由單片機(jī)和SIM300模塊兩部分組成,借助成熟的GSM移動(dòng)網(wǎng)絡(luò),以直觀的中文短消息或電話形式進(jìn)行無線控制,將控制與監(jiān)測實(shí)現(xiàn)了智能化、便捷化及遠(yuǎn)程化。
關(guān)鍵詞: 單片機(jī);SIM300;AT指令;PDU解碼
隨著監(jiān)控范圍的不斷擴(kuò)大,傳統(tǒng)的有線監(jiān)控報(bào)警已不能滿足用戶的需求。然而,伴隨著GSM網(wǎng)絡(luò)的發(fā)展,遠(yuǎn)程網(wǎng)絡(luò)監(jiān)控報(bào)警系統(tǒng)的硬件實(shí)現(xiàn)已成為可能,有望取代傳統(tǒng)的僅由單機(jī)控制的監(jiān)控報(bào)警系統(tǒng)。本文針對目前的需求設(shè)計(jì)了一套基于GSM網(wǎng)絡(luò)的遠(yuǎn)程無線報(bào)警監(jiān)控系統(tǒng)。其基本思路是:將單片機(jī)與SIM300通信模塊通過串口連接,實(shí)現(xiàn)單片機(jī)與SIM300之間的相互通信。SIM300模塊設(shè)有SIM卡插槽,可以實(shí)現(xiàn)與各種用戶相互通信的功能。系統(tǒng)接有震動(dòng)、紅外、聲音等類型傳感器,當(dāng)汽車發(fā)生警情時(shí),傳感器將警情信號傳送給單片機(jī),經(jīng)過單片機(jī)判斷處理后,向用戶發(fā)送報(bào)警短信,或者是直接撥打報(bào)警電話。如果情況緊急,用戶可以直接發(fā)送短信密碼,由單片機(jī)控制繼電器切斷線路或者油路,使汽車停止運(yùn)行,從而實(shí)現(xiàn)了遠(yuǎn)程控制,有效保證汽車的安全。
1 硬件電路設(shè)計(jì)
本設(shè)計(jì)的硬件部分包括單片機(jī)主控模塊、LCD顯示、按鍵電路、電源電路、信號采集電路和控制電路,系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
1.1 單片機(jī)控制電路
系統(tǒng)采用STC89C52單片機(jī),STC89C52是一種低功耗、高性能CMOS 8 bit微控制器,具有8 KB系統(tǒng)可編程 Flash存儲器。該型單片機(jī)具有很高的性價(jià)比,廣泛應(yīng)用于工業(yè)控制、儀器儀表、通信設(shè)備、家用電器等各個(gè)領(lǐng)域[1]。
1.2 GSM模塊電路
本系統(tǒng)采用SIM300模塊,其中SIM300的16管腳接網(wǎng)絡(luò)指示燈(LED),用于指示SIM300信號的強(qiáng)弱,17管腳與單片機(jī)的P3.3相連,其工作時(shí)首先由單片機(jī)發(fā)送低電平信號,使該模塊處于工作狀態(tài),43、41、49為串行通信接口,分別與單片機(jī)的P3.0、P3.1、P3.2相連。1、3、5、7、9管腳接4.2 V電源。SIM300與單片機(jī)是通過串口連接,單片機(jī)控制系統(tǒng)可以發(fā)給SIM300模塊AT命令,從而控制其工作狀態(tài)[2-3]。
1.3 鍵盤、顯示及外部存儲電路
本系統(tǒng)采用4行3列矩陣鍵盤,其中行線與P1.0~P1.3相連,列線與P1.4~P1.6相連,列線經(jīng)10 k?贅電阻接+5 V電源拉高。共12個(gè)按鍵,分別設(shè)定為0~9、*、#等按鍵號碼。
本系統(tǒng)采用LCD12864液晶顯示模塊,該顯示模塊每屏可以顯示4行漢子或者字符,用于顯示提示信息和手機(jī)號碼等內(nèi)容。
本系統(tǒng)要求在使用過程中儲存用戶預(yù)設(shè)的手機(jī)號碼,因此必須有外部存儲器。在存儲信息不大的情況下采用AT24C02即可。
1.4 傳感器及繼電器電路
本系統(tǒng)采用振動(dòng)傳感器、紅外傳感器、聲音傳感器相互配合使用,有效避免了系統(tǒng)誤報(bào)、錯(cuò)報(bào)等情況。
繼電器電路用于切斷油路或者電路,控制汽車運(yùn)行狀態(tài),當(dāng)用戶用手機(jī)發(fā)送控制命令時(shí),單片機(jī)某一端口輸出為高電平信號,即可控制繼電器。當(dāng)警情解除時(shí),只需發(fā)送解除命令即可恢復(fù)汽車的正常工作。
2 軟件設(shè)計(jì)
主程序流程圖如圖2所示。
3 監(jiān)測報(bào)警流程
3.1 設(shè)置流程
用戶第一次使用時(shí)要設(shè)置手機(jī)號碼和短信中心號碼。開啟電源,按照液晶顯示的提示,通過鍵盤進(jìn)行號碼預(yù)設(shè),需要設(shè)置本地短信中心號碼和個(gè)人控制號碼,所設(shè)號碼存在外部存儲器中。預(yù)設(shè)程序結(jié)束后,單片機(jī)向SIM300發(fā)送AT命令控制其向預(yù)設(shè)號碼發(fā)送驗(yàn)證短信“設(shè)置成功”。若不是第一次使用,在提示輸入密碼后10 s內(nèi)不進(jìn)行號碼的重新設(shè)置,則自動(dòng)跳過設(shè)置號碼階段,開始正常監(jiān)測工作。設(shè)置流程如圖3所示[4]。
3.2 監(jiān)測流程
在SIM300工作狀態(tài)下,若汽車有異常情況,如車門被打開、車窗被砸破,產(chǎn)生的強(qiáng)烈震動(dòng)或聲音等只要觸發(fā)其中的一個(gè)傳感器,使與傳感器相連的單片機(jī)管腳的電平發(fā)生變化(由低電平變成高電平),此變化作為信號,經(jīng)單片機(jī)判斷后確認(rèn)是警情信號,單片機(jī)將控制SIM300發(fā)送短信給預(yù)設(shè)的個(gè)人監(jiān)控號碼,例如:“您的汽車出現(xiàn)緊急情況,請及時(shí)查看”。監(jiān)測流程如圖4所示。
3.3 控制流程
確定SIM300處于工作狀態(tài)時(shí),若遇到緊急情況,如汽車被盜,需要緊急關(guān)閉油箱閥門,使汽車停下。編輯短信“關(guān)閉”,發(fā)送到與SIM300連接的SIM卡,SIM300接收到短信后將信息存儲在SIM卡中,單片機(jī)發(fā)送命令讀取剛才收到的信息,包括來信號碼、短信長度、短信內(nèi)容等。單片機(jī)將其解析為PDU碼,判斷來信號碼是否是預(yù)設(shè)的用戶控制號碼。若不是,則停止后續(xù)工作,命令視為無效,單片機(jī)向SIM300發(fā)送命令刪除短信;若是預(yù)設(shè)號碼,則查看短信是否符合預(yù)設(shè)命令。若不符合,停止后續(xù)工作并刪除短信;若符合,則執(zhí)行相應(yīng)命令,即與繼電器相連的單片機(jī)管腳電平發(fā)生變化(由低電平變?yōu)楦唠娖?,同時(shí)刪除短信(使SIM卡中每次收到的短信都儲存在首條的位置,方便下次讀取)。輸出信號再經(jīng)信號放大器發(fā)大,達(dá)到使繼電器正常工作的電壓,切斷油箱供油開關(guān),使汽車停止運(yùn)行??刂屏鞒倘鐖D5所示[5]。
經(jīng)過軟硬件的調(diào)試,本系統(tǒng)的各項(xiàng)功能都能很好地實(shí)現(xiàn),有效保證了汽車的安全。該系統(tǒng)將單片機(jī)與SIM300功能模塊相結(jié)合,充分利用了技術(shù)成熟的GSM移動(dòng)通信網(wǎng)絡(luò),克服了普通監(jiān)控系統(tǒng)中的諸多局限性。該思想還可以用于家用電器、農(nóng)業(yè)規(guī)?;a(chǎn)等領(lǐng)域。本方案具有節(jié)約布線資源、控制范圍廣、通用性強(qiáng)、性價(jià)比高等諸多優(yōu)點(diǎn)。
參考文獻(xiàn)
[1] 張毅剛.MCS-51單片機(jī)應(yīng)用設(shè)計(jì)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990.
[2] 馬玉春,孫冰,王建明.GSM模塊的綜合應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用與軟件,2008,25(2).
[3] 王騏,何嘉斌.單片機(jī)控制GSM模塊實(shí)現(xiàn)短信收發(fā)的軟件設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2005(1):61-64.
[4] 張浩.SIM300編程介紹[DB/OL].http://wenku.baidu.com/view/97906628915f804d2b16c157.html.
[5] 高明軒.常用AT命令解釋[DB/OL].http://blog.ednchina.com/yihongmeilang/1478791/message.aspx.