一種短信控制的水浸報警系統(tǒng)設(shè)計
2.4 接收短信并解碼
TC35初始化完成后,用戶可以發(fā)送手機短信到報警系統(tǒng)的SIM卡號碼。配置系統(tǒng)的狀態(tài)以控制報警器處于啟動和停止;配置軟件濾波模式以調(diào)節(jié)報警靈敏度;更新用戶列表將報警短信發(fā)送給不同用戶;自定義報警短信內(nèi)容,用戶可以根據(jù)實際情況定義報警提示短信。用戶通過手機發(fā)送短信改變報警系統(tǒng)相關(guān)配置,當(dāng)GSM模塊接收到短信后,向單片機發(fā)送“+CMTI:“SM”,1”,單片機接收后向GSM模塊發(fā)送讀短信指令“AT+CMGR=1”,1為GSM模塊存放短信的地址。GSM隨后將接收到的用戶短信發(fā)送給單片機解碼,接收格式為:
“C>LF>+CMGR:”REC UNREAD“,”+86138xKXXXXXX“,,”11/11/14,08:46:41+32“CR>LF>F1CR>LF>OK”。
單片機程序通過查找“OK”判斷短信已經(jīng)接收完畢,接下來可以通過檢索引號的個數(shù)確定短信內(nèi)容的位置并將短信息“F1”讀到寄存器read_sm中,F(xiàn)后面的16進制數(shù)值作為相應(yīng)的濾波模式使能。
本文中報警系統(tǒng)與用戶的協(xié)議規(guī)定:所有發(fā)送短信要確保只有大寫英文字母A~Z,阿拉伯?dāng)?shù)字0~9,及空格組成。用戶可以通過手機發(fā)送短信改變報警系統(tǒng)的濾波模式,添加新用戶手機號碼以及自定義報警短信內(nèi)容。如發(fā)送“1M138xxxxxxxx”到報警系統(tǒng)的SIM卡號碼中,即可設(shè)置一個新用戶手機號碼。要添加第二條用戶手機號碼可以發(fā)送“2M132xxxxxxxx”。GSM模塊接收到短信后,通過單片機向GSM模塊發(fā)送相應(yīng)的AT指令,即可將短信讀入到單片機的寄存器中,通過短信解碼,判斷用戶想實現(xiàn)哪種功能后,如果判斷是“1M”,將號碼存儲到發(fā)送短信的目標號碼表中,當(dāng)下一次發(fā)生水浸時,則發(fā)送報警短信到全部目標用戶手機號碼中,實現(xiàn)短信群發(fā)報警;如果判斷是“C”,則將其后的
字符作為自定義報警短信的內(nèi)容;如果判斷是“S”,則將其后的字符做為系統(tǒng)狀態(tài)的啟動或停止使能,解碼流程如圖4所示。本文引用地址:http://2s4d.com/article/159667.htm
2.5 濾波檢測
ADC模塊集成在MSP430單片機中,按一定的周期采集導(dǎo)線兩端的電壓值,轉(zhuǎn)換后的數(shù)字信號經(jīng)過軟件濾波后判斷是否達到觸發(fā)電壓下限,系統(tǒng)采用算術(shù)平均值濾波,將N次的采樣值求和后除以采樣次數(shù),得到的結(jié)果與系統(tǒng)設(shè)定的觸發(fā)電壓下限進行比較,如果濾波后達到觸發(fā)電壓下限則觸發(fā)報警,否則繼續(xù)采集電壓并濾波。用戶可根據(jù)實際的情況通過發(fā)送手機短信改變?yōu)V波參數(shù),如觸發(fā)電壓下限值,采樣周期和采樣次數(shù)。為了便于用戶操作,將濾波參數(shù)定義為16中不同的模式,見表2。
評論