《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于GSM的家用電器及家居環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)
基于GSM的家用電器及家居環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)
摘要: 利用GSM 網(wǎng)絡(luò)來實(shí)現(xiàn)家居安防,、溫室,、路燈、自動(dòng)售貨機(jī)等監(jiān)控的研究已很多,,這些研究大都是通過使用GSM 網(wǎng)絡(luò)遠(yuǎn)程控制繼電器而實(shí)現(xiàn)的,。而本文設(shè)計(jì)的基于GSM 的家用電器及家居環(huán)境監(jiān)控系統(tǒng)主要是針對(duì)目前許多帶有紅外遙控器的家用電器( 如熱水器,、空調(diào)、電視,、機(jī)頂盒等) , 通過GSM 網(wǎng)絡(luò)和對(duì)家用電器遙控器的復(fù)制來實(shí)現(xiàn)家用電器的控制,。
Abstract:
Key words :

引 言

  目前的家用電器遠(yuǎn)程控制系統(tǒng)一般是通過互聯(lián)網(wǎng)或公共交換電話網(wǎng)來實(shí)現(xiàn)遠(yuǎn)程控制的。然而,, 隨著手機(jī)日益普及,, 使得利用GSM 短信息實(shí)現(xiàn)家居環(huán)境和家電的遠(yuǎn)程監(jiān)控成為可能。它相對(duì)于電話遠(yuǎn)程控制方式而言,, 擺脫了電話線對(duì)設(shè)備的束縛,; 相對(duì)于電腦遠(yuǎn)程控制而言, 降低了設(shè)備和使用成本,。

  利用GSM 網(wǎng)絡(luò)來實(shí)現(xiàn)家居安防,、溫室、路燈,、自動(dòng)售貨機(jī)等監(jiān)控的研究已很多,,這些研究大都是通過使用GSM 網(wǎng)絡(luò)遠(yuǎn)程控制繼電器而實(shí)現(xiàn)的。而本文設(shè)計(jì)的基于GSM 的家用電器及家居環(huán)境監(jiān)控系統(tǒng)主要是針對(duì)目前許多帶有紅外遙控器的家用電器( 如熱水器,、空調(diào),、電視、機(jī)頂盒等) , 通過GSM 網(wǎng)絡(luò)和對(duì)家用電器遙控器的復(fù)制來實(shí)現(xiàn)家用電器的控制,。

  1 系統(tǒng)工作原理

  基于GSM 的家用電器及家居環(huán)境監(jiān)控系統(tǒng),, 由作為上位機(jī)的能收發(fā)短信的GSM 短信模塊、智能控制器( 單片機(jī)) ,、溫度傳感器和作為下位機(jī)的具有紅外遙控器的家用電器( 如熱水器,、空調(diào),、電視、機(jī)頂盒等)組成,。

  首先系統(tǒng)進(jìn)行初始化,, 單片機(jī)從鍵盤讀入用戶所設(shè)定的溫度上限值和發(fā)送報(bào)警短信的目標(biāo)號(hào)碼, 并通過LCD 顯示器顯示出來,。當(dāng)單片機(jī)檢測(cè)到用戶按下紅外學(xué)習(xí)鍵,, 則進(jìn)入紅外線學(xué)習(xí)中斷服務(wù)程序, 讀取外部家電遙控器發(fā)射的紅外信號(hào),, 并將該紅外信號(hào)解碼,, 重定義碼長(zhǎng), 分組,, 保存,, 從而學(xué)習(xí)該遙控器[ 728] .

  初始化工作完成后, 單片機(jī)循環(huán)讀取溫度傳感器DS1820 數(shù)值,, 并將用戶事先設(shè)定的溫度上限值與之比較,, 一旦發(fā)現(xiàn)當(dāng)前溫度超過溫度上限, 則控制GSM 模塊TC35i 通過GSM 網(wǎng)絡(luò)向用戶手機(jī)發(fā)送報(bào)警短信,。

  同時(shí),, 單片機(jī)循環(huán)查詢串口是否收到信息, 如果收到就將信息讀入單片機(jī),, 解析出短信中的內(nèi)容是要求單片機(jī)向家用電器發(fā)送何種指令,, 并將代表該指令的紅外信號(hào)通過紅外發(fā)射管發(fā)射出去, 從而控制家用電器,。該系統(tǒng)框圖見圖1,。

 

圖1 系統(tǒng)方框圖

  2 系統(tǒng)硬件設(shè)計(jì)

  基于GSM 的家用電器及家居環(huán)境監(jiān)控系統(tǒng)主要以AT 89S52 單片機(jī)為智能控制中心, 4 @4 鍵盤和1602LCD 顯示器作為人機(jī)交互設(shè)備,, GSM 通信模塊選用TC35i, DS1820 溫度傳感器用于溫度采集,; 通過HS0038B 紅外接收頭接收紅外信號(hào), 完成紅外信號(hào)的解調(diào)與放大,; 同時(shí),, 利用AT89S52 單片機(jī)P1. 0 口的方波發(fā)生器功能構(gòu)成了紅外信號(hào)的調(diào)制裝置, 并使用紅外LED 作為紅外發(fā)射裝置,。

  2. 1 GSM 模塊與單片機(jī)的連接

  GSM 模塊TC35i 是3. 3 V CMOS 元器件,, 要求對(duì)電源的啟動(dòng)電流超過2 A, 啟動(dòng)電壓達(dá)到4. 2 V.因此, 采用最大能提供3 A 電流的電源芯片LM2596.TC35i 的1~ 5 腳接LM2596 的電源輸出管腳,, 6~ 10 腳接地,, 25~ 27 腳與SIM 卡相連接。為了能顯示TC35i 的工作狀態(tài),, 在32 腳接一個(gè)LED 指示燈到地,。

  TC35i 啟動(dòng)之后就可以通過單片機(jī)由串口發(fā)送數(shù)據(jù)和命令到TC35i, TC35i 的波特率是自適應(yīng)的,, 這里采用9600 的波特率, 只要將TC35i 的RXD 和TXD 分別和單片機(jī)的TXD 和RXD 相連接就可以了,。電路圖見圖2.

 

圖2 TC35i 與單片機(jī)的連接

2. 2 紅外接收頭與單片機(jī)的連接

  紅外接收頭HS0038B 是一個(gè)集成解調(diào)、濾波,、放大等功能的紅外接收芯片,, 它將調(diào)制在38 kHz 方波上的紅外信號(hào)解調(diào)出來, 并通過OUT 管腳將方波輸出,。HS0038B平時(shí)輸出高電平,, 當(dāng)有遙控信號(hào)輸入時(shí), 其輸出為高低電平脈沖,, 故接收時(shí)一個(gè)碼由一個(gè)低電平后跟一個(gè)高電平構(gòu)成,。利用不同長(zhǎng)短高低電平的組合, 可構(gòu)成不同的碼,。在本系統(tǒng)中將使用中斷的方式讀取紅外信號(hào),, 因此將HS0038B 的OUT 管腳與單片機(jī)的外中斷0 相連接。HS0038B與單片機(jī)的連接見圖3,。

 

圖3 紅外接收頭H S0038B 與單片機(jī)的連接3 系統(tǒng)軟件設(shè)計(jì)

  TC35i 可以發(fā)送中文短信或英文短信,, 本系統(tǒng)使用中文短信格式即PDU 格式。先將短信的相關(guān)信息做到一個(gè)PDU 數(shù)據(jù)包里,, 該包的開頭是短信中心號(hào)碼,。其后的是目標(biāo)手機(jī)號(hào)碼, 該號(hào)碼是將實(shí)際電話號(hào)碼相鄰的奇數(shù)位與偶數(shù)位對(duì)調(diào)最后加F 得到,。如原手機(jī)號(hào)碼為12345678901, 按上述方法得到2143658709F1,。

  然后是該號(hào)碼的長(zhǎng)度0D, 中國(guó)國(guó)家接入碼91, 譯碼方式00, 編碼方式08, 再往后是短信在信息中心保留時(shí)間, 一般選擇保存10 天,, 即A0.最后分別是短信內(nèi)容長(zhǎng)度和短信內(nèi)容,。如要發(fā)送/ 火警0, 則短信長(zhǎng)度為4 個(gè)16 進(jìn)制為04, / 火警0經(jīng)過unicode 碼轉(zhuǎn)換程序轉(zhuǎn)換得到16 進(jìn)制數(shù)據(jù)為706B 8B66.

  這樣整個(gè)PDU 數(shù)據(jù)包的內(nèi)容就是:0011000D91682143658709F130008A004706B8B66.

  單片機(jī)對(duì)TC35i 所有的控制都是通過串口發(fā)送AT 指令進(jìn)行的, TC35i 的每一個(gè)動(dòng)作都對(duì)應(yīng)了一個(gè)AT 指令,, 而且每一個(gè)指令之后都要有一個(gè)回車符以告訴TC35i 該條命令已經(jīng)發(fā)完,。一些常用的AT 指令如表1。

表1 常用AT 指令表

 

當(dāng)UDP 數(shù)據(jù)包打好后,, 要對(duì)TC35i 進(jìn)行聯(lián)機(jī)并通過TC35i 發(fā)送短信,。首先通過串口發(fā)送代表聯(lián)機(jī)的指令A(yù)T , 然后設(shè)定TC35i 發(fā)送UDP 格式的短信, 其次將該P(yáng)DU 數(shù)據(jù)包的長(zhǎng)度發(fā)給TC35i, 接著將做好的PDU 發(fā)送給TC35i, 最后在后面加上ctrl+ z 的ASC 碼0x1A 和回車的ASC 碼0x0D.這樣一條中文短信就發(fā)送出去了,, 發(fā)送短信程序流程見圖4,。

 

圖4 發(fā)送短信流程圖

  紅外線遙控器所發(fā)射的紅外信號(hào)的信息是以不同時(shí)長(zhǎng)的高低電平來表示的。以NEC 編碼為例,, 從9 ms 高電平開始,, 以4. 5 ms低電平結(jié)束的是前導(dǎo)碼,; 從0. 56 ms 高電平開始, 以0. 56 ms 低電平結(jié)束的是0 碼,;從0. 56 ms 高電平開始,, 以1. 69 ms 低電平結(jié)束的是1 碼。而由于HS0038 紅外接收頭接收紅外信號(hào)之后將把紅外信號(hào)取反,, 因此高低電平延遲時(shí)間正好相反,。所以一旦紅外接收頭的輸出信號(hào)引發(fā)外中斷, 延時(shí)9 ms 之后如果單片機(jī)從輸入腳讀到低電平則說明這是引導(dǎo)碼,, 系統(tǒng)需要啟動(dòng)紅外碼采集程序: 先延時(shí)4. 5 ms 放掉引導(dǎo)碼的低電平,, 再延時(shí)0. 56 ms, 放掉第一個(gè)碼的低電平部分, 最后延時(shí)0. 8 ms, 讀輸入管腳的電壓,, 如果為低,, 則說明該信號(hào)為0 碼, 將其保存,, 并使累加器加一,, 如果為高, 則說明該信號(hào)為1 碼,, 將其保存,, 并把累加器加一。依次類推循環(huán)32 次后就是整個(gè)紅外信號(hào)的編碼,。

  根據(jù)上述思路,, 開啟1 中斷, 并設(shè)置其為下降沿觸發(fā),, 同時(shí)開啟T0 定時(shí)計(jì)數(shù)器,, 并設(shè)置其為16 位重裝計(jì)時(shí)器。一旦紅外接收頭收到紅外信號(hào)就會(huì)引起單片機(jī)的1 號(hào)中斷,, 隨即進(jìn)入中斷服務(wù)子程序,,在中斷服務(wù)子程序中關(guān)閉計(jì)數(shù)器并將計(jì)數(shù)器中的數(shù)值記錄下來; 然后,, 判斷該數(shù)值是否在0 碼,、1 碼或前導(dǎo)碼的時(shí)間范圍內(nèi), 如果是,, 則將該數(shù)值記入存儲(chǔ)區(qū),。以此類推, 當(dāng)記錄完32 個(gè)碼后,, 所有紅外信息已經(jīng)記錄完畢,。程序流程圖見圖5。

 

圖5 紅外解碼流程圖

  紅外遙控信號(hào)的發(fā)射需要將代表紅外信號(hào)的高低電平調(diào)制在一個(gè)38 kHz 的方波上通過紅外LED 發(fā)射出去, 因此一方面通過編程單片機(jī)T2 定時(shí)器的T2MOD 和T 2CON 兩個(gè)寄存器,, 使T 2 工作在可編程方波發(fā)生器模式下,, 在P1. 0 口輸出38 kHz 的方波, 另一方面依據(jù)NEC 編碼的格式通過延時(shí)程序在P1. 4 口產(chǎn)生代表紅外信號(hào)的不同時(shí)長(zhǎng)的高低電平,。兩個(gè)IO 口輸出的信號(hào)在與門上相與就將紅外遙控信號(hào)調(diào)制在了38 kH z 的方波上,。

  4 結(jié) 語(yǔ)

  GSM 作為公用陸地移動(dòng)通信網(wǎng), 具有其他通信方式所不可比擬的優(yōu)越性,, 它通信范圍廣,、傳輸數(shù)據(jù)可靠性高、短消息業(yè)務(wù)經(jīng)濟(jì)實(shí)惠,, 是遠(yuǎn)程無線數(shù)據(jù)傳輸系統(tǒng)比較好的一種數(shù)據(jù)傳輸方式?;贕SM 的家用電器及家居環(huán)境監(jiān)控系統(tǒng),, 充分利用了現(xiàn)有的GSM 網(wǎng)和相關(guān)的成熟技術(shù), 由單片機(jī),、GSM 模塊TC35i,、紅外接收裝置和溫度傳感器等構(gòu)成的移動(dòng)終端, 可以很好地完成短信息的收發(fā),, 適合遠(yuǎn)程控制帶有紅外遙控器的家用電器,, 并可及時(shí)報(bào)告家中的火警信息。實(shí)驗(yàn)證明,, 本系統(tǒng)可以成功地對(duì)華為C3100 機(jī)頂盒,、科龍KFR226GW/ ND1 空調(diào)、及長(zhǎng)虹CHD29300 電視機(jī)進(jìn)行遠(yuǎn)程控制,。隨著手機(jī)的普及,, 本系統(tǒng)具有較好的推廣前景和實(shí)用價(jià)值。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。