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