摘 要:該文設計了基于單片機和GPRS的智能家電的手機控制系統,使用用戶能通過手機短消息遠程控制家庭內的各種家居設備的開關等操作。
關鍵詞:智能家居 遠程控制 GPRS MCU
中圖分類號:TP273 文獻標識碼:A 文章編號:1007-9416(2010)11-0067-02
智能家居是利用先進的計算機技術、網絡通訊技術、綜合布線技術、將與家居生活有關的各種子系統,有機地結合在一起,通過統籌管理,讓家居生活更加舒適、安全、有效的系統。其中具備無線通信功能的遠程控制系統設計很關鍵,它既接收遠端用戶的控制信號,同時又通過識別用戶的控制信息控制家中多個家居設備,是智能家居這個系統中的核心系統。以下是基于單片機和GPRS通信模塊的智能家居遠程控制系統設計,和基于ARM的設計相比操作更簡單,成本更低廉。
1 系統框圖
智能家居遠程控制系統主要包括兩大模塊:控制板A和控制板B。如下面系統框圖。
其中控制面板A的主要作用是接收并識別用戶手機短信、控制紅外發射以及接受PC機的設置控制?刂瓢錋自動對接收到的短信指令進行鑒權,如果短信來自允許的用戶,則按照指令進行操作;如果短信來自允許用戶以外的人,則對短信進行丟棄。控制板A允許接收的用戶數量最多4個,用戶的手機號碼可以通過和個人電腦相連進行修改?刂瓢錋的這種工作方式使得用戶控制家居設備不受時間和空間的限制。
控制面板B的作用是接收到來自控制板A的紅外序列后,通過CPU解析,判斷紅外指令(推及短信指令)希望進行何種操作,據此對電器A/B/C進行相應的開關機等操作。
A和B板之間無線的紅外方式控制,對智能家居的布線方式進行了一定簡化。
如圖1所示。
2 系統硬件及原理說明
2.1 控制板A的硬件設計
(1)CPU: 由單片機 SST89E564RD擔任控制器,外接儲器ROM和RAM,通過串口和PC機通信。采用中斷的方式從P0數據口獲得無線MODEM數據。紅外發射由P1.6腳控制。
(2)串并轉換芯片XR16L2551由于作為控制板A中CPU的單片機SST89E516只有一個串口,而控制板A和PC機進行通信需占用一個串口,所以無線MODEM的串口只能通過串并轉換成并口與單片機SST89E516進行通信。該設計采用串并轉換芯片XR16L2551完成這一功能,它具有雙向雙通道的串并轉換功能,目前雖只使用了其中一個通道的串并雙向轉換,但是為該設計在將來的擴展應用提供了可發展的空間。從無線MODEM端過來的串行數據MTP_DATA、PTM_DATA通過XR16L2551轉換成并行數據由單片機D0~D7讀取。
(3)串口電平轉換芯片MAX202E:PC和單片機之間、無線MODEM和單片機之間的電平轉換都由MAX202E完成。
(4)外部存儲器RAM 62256和ROM X5045&看門狗:RAM 62256空間是32K字節,考慮到與無線MODEM通信的指令占用空間較大,故外加RAM用于存儲程序運行中間數據。ROM X5045&看門狗其作用一是設定狀態寄存器值以此設定看門狗時間,防止單片機程序跑飛;作用二是掉電后保存用戶手機號碼和家電控制指令數據。
(5)無線MODEM:采用的是基于西門子GPRS模塊的無線MODEM負責空中接收用戶的短信。單片機通過AT指令控制無線MODEM。
2.2 控制板B的硬件設計
控制板B主要由單片機SST89E516和紅外接收器IRM3638組成。紅外接收器3683的DETECT作為單片機的INT0的中斷響應信號。單片機SST89E516進行紅外波形解析后,識別命令并控制某個電器設備。
3 軟件設計
智能控制系統包括三個軟件:PC機軟件,遠程短消息接收與紅外發射軟件和紅外接收和控制電器開關軟件。
3.1 PC機軟件
完成對使用者電話號碼設置,與使用者對電器進行操作的具體指令的設置。
該軟件使用borland C++Builder6開發平臺,軟件包括如下幾個功能塊:
如圖2所示。
3.2 遠程短消息接收與紅外發射軟件
完成接收使用者發來的短消息指令,并鑒權是否是使用者事先設置好的合法的電話號碼,然后判斷是否是合法的電器指令,定位是讓控制那個電器,然后根據指令中的開關來發送控制紅外波形。
該軟件使用Keil C開發平臺,軟件包括如下幾個功能模塊:
如圖3所示。
3.3 紅外接收和控制電器開關軟件
完成接收發射端送來的紅外波形,根據預定義的協議解析該波形,來確定控制那個電器開關狀態并控制該開關狀態。
該軟件使用Keil C開發平臺,軟件包括如下幾個功能模塊:初始化、紅外波形解析、定時保護、紅外接收、電器控制。
4 系統測試
4.1 測試及安裝所需設備
PC機安裝keil C uvison4編譯環境;TKS仿真器;SIM卡;
4.2 測試步驟
4.2.1 設置用戶電話號碼和短信指令
如下圖所示,在左邊欄目可以輸入五個用戶的電話號碼,如:13900000000,右邊欄目對三個電器設備分別設置三個指令識別碼。如“111”、“222”和“333”。
如圖4所示。
4.2.2 發送短信指令
在無線MODEM上安裝上一個手機SIM卡,任何一個手機用戶可以發送短信控制三個電器設備的開關,發送指令格式為“X1電器設備識別碼X”
4.3 測試性能
發送短信后15秒就能可靠控制遠端電器設備關閉或開啟操作。
參考文獻
[1] 宋彩利.編著.《單片機原理與C51編程》.西安:西安交通大學出版社,2008.
[2] 周計文,王輝.基于ARM的智能家居控制器的設計.微計算機信息,2007,23,149-151.
[3] 黃濤,褚淑杰.基于紅外通信的智能家居系統[J].微計算機信息,2005,21(01),140-142.
[4] Siemens Inc.MC35 GPRS Module Datasheet. http://www.siemens.com.
關鍵詞:智能家居 遠程控制 GPRS MCU
中圖分類號:TP273 文獻標識碼:A 文章編號:1007-9416(2010)11-0067-02
智能家居是利用先進的計算機技術、網絡通訊技術、綜合布線技術、將與家居生活有關的各種子系統,有機地結合在一起,通過統籌管理,讓家居生活更加舒適、安全、有效的系統。其中具備無線通信功能的遠程控制系統設計很關鍵,它既接收遠端用戶的控制信號,同時又通過識別用戶的控制信息控制家中多個家居設備,是智能家居這個系統中的核心系統。以下是基于單片機和GPRS通信模塊的智能家居遠程控制系統設計,和基于ARM的設計相比操作更簡單,成本更低廉。
1 系統框圖
智能家居遠程控制系統主要包括兩大模塊:控制板A和控制板B。如下面系統框圖。
其中控制面板A的主要作用是接收并識別用戶手機短信、控制紅外發射以及接受PC機的設置控制?刂瓢錋自動對接收到的短信指令進行鑒權,如果短信來自允許的用戶,則按照指令進行操作;如果短信來自允許用戶以外的人,則對短信進行丟棄。控制板A允許接收的用戶數量最多4個,用戶的手機號碼可以通過和個人電腦相連進行修改?刂瓢錋的這種工作方式使得用戶控制家居設備不受時間和空間的限制。
控制面板B的作用是接收到來自控制板A的紅外序列后,通過CPU解析,判斷紅外指令(推及短信指令)希望進行何種操作,據此對電器A/B/C進行相應的開關機等操作。
A和B板之間無線的紅外方式控制,對智能家居的布線方式進行了一定簡化。
如圖1所示。
2 系統硬件及原理說明
2.1 控制板A的硬件設計
(1)CPU: 由單片機 SST89E564RD擔任控制器,外接儲器ROM和RAM,通過串口和PC機通信。采用中斷的方式從P0數據口獲得無線MODEM數據。紅外發射由P1.6腳控制。
(2)串并轉換芯片XR16L2551由于作為控制板A中CPU的單片機SST89E516只有一個串口,而控制板A和PC機進行通信需占用一個串口,所以無線MODEM的串口只能通過串并轉換成并口與單片機SST89E516進行通信。該設計采用串并轉換芯片XR16L2551完成這一功能,它具有雙向雙通道的串并轉換功能,目前雖只使用了其中一個通道的串并雙向轉換,但是為該設計在將來的擴展應用提供了可發展的空間。從無線MODEM端過來的串行數據MTP_DATA、PTM_DATA通過XR16L2551轉換成并行數據由單片機D0~D7讀取。
(3)串口電平轉換芯片MAX202E:PC和單片機之間、無線MODEM和單片機之間的電平轉換都由MAX202E完成。
(4)外部存儲器RAM 62256和ROM X5045&看門狗:RAM 62256空間是32K字節,考慮到與無線MODEM通信的指令占用空間較大,故外加RAM用于存儲程序運行中間數據。ROM X5045&看門狗其作用一是設定狀態寄存器值以此設定看門狗時間,防止單片機程序跑飛;作用二是掉電后保存用戶手機號碼和家電控制指令數據。
(5)無線MODEM:采用的是基于西門子GPRS模塊的無線MODEM負責空中接收用戶的短信。單片機通過AT指令控制無線MODEM。
2.2 控制板B的硬件設計
控制板B主要由單片機SST89E516和紅外接收器IRM3638組成。紅外接收器3683的DETECT作為單片機的INT0的中斷響應信號。單片機SST89E516進行紅外波形解析后,識別命令并控制某個電器設備。
3 軟件設計
智能控制系統包括三個軟件:PC機軟件,遠程短消息接收與紅外發射軟件和紅外接收和控制電器開關軟件。
3.1 PC機軟件
完成對使用者電話號碼設置,與使用者對電器進行操作的具體指令的設置。
該軟件使用borland C++Builder6開發平臺,軟件包括如下幾個功能塊:
如圖2所示。
3.2 遠程短消息接收與紅外發射軟件
完成接收使用者發來的短消息指令,并鑒權是否是使用者事先設置好的合法的電話號碼,然后判斷是否是合法的電器指令,定位是讓控制那個電器,然后根據指令中的開關來發送控制紅外波形。
該軟件使用Keil C開發平臺,軟件包括如下幾個功能模塊:
如圖3所示。
3.3 紅外接收和控制電器開關軟件
完成接收發射端送來的紅外波形,根據預定義的協議解析該波形,來確定控制那個電器開關狀態并控制該開關狀態。
該軟件使用Keil C開發平臺,軟件包括如下幾個功能模塊:初始化、紅外波形解析、定時保護、紅外接收、電器控制。
4 系統測試
4.1 測試及安裝所需設備
PC機安裝keil C uvison4編譯環境;TKS仿真器;SIM卡;
4.2 測試步驟
4.2.1 設置用戶電話號碼和短信指令
如下圖所示,在左邊欄目可以輸入五個用戶的電話號碼,如:13900000000,右邊欄目對三個電器設備分別設置三個指令識別碼。如“111”、“222”和“333”。
如圖4所示。
4.2.2 發送短信指令
在無線MODEM上安裝上一個手機SIM卡,任何一個手機用戶可以發送短信控制三個電器設備的開關,發送指令格式為“X1電器設備識別碼X”
4.3 測試性能
發送短信后15秒就能可靠控制遠端電器設備關閉或開啟操作。
參考文獻
[1] 宋彩利.編著.《單片機原理與C51編程》.西安:西安交通大學出版社,2008.
[2] 周計文,王輝.基于ARM的智能家居控制器的設計.微計算機信息,2007,23,149-151.
[3] 黃濤,褚淑杰.基于紅外通信的智能家居系統[J].微計算機信息,2005,21(01),140-142.
[4] Siemens Inc.MC35 GPRS Module Datasheet. http://www.siemens.com.