王洋 許鵬



【摘 要】本文設計的簡易智能家居控制系統以STC12C5A60S2為控制核心,以CC2530型ZigBee模塊實現指令及數據的無線傳輸,分為控制終端和功能平臺兩個部分。用戶從控制終端的上位機軟件發送指定指令,經無線網絡控制功能平臺各節點的硬件,執行預定的各項操作。該系統適應性強、硬件結構簡單,適用于各種室內外場所;其性價比高、功能多樣,可實現多種智能家居控制功能。
【關鍵詞】智能家居;STC12;ZigBee;無線控制
0 引言
隨著國民經濟和科學技術水平的提高,特別是計算機技術、通信技術、網絡技術、控制技術的迅猛發展與提高,促使了家庭實現了生活現代化,居住環境舒適化、安全化。這些高科技已經影響到人們生活的方方面面,改變了人們生活習慣,提高了人們生活質量,智能家居便是在這種形勢下應運而生的。
智能家居是以住宅為平臺,利用綜合布線技術、網絡通信技術、安全防范技術、自動控制技術、音視頻技術將家居生活有關的設施集成,構建高效的住宅設施與家庭日程事務的管理系統,提升家居安全性、便利性、舒適性、藝術性,并實現環保節能的居住環境[1]。
1 系統總體結構
智能家居是在互聯網影響之下物聯化的體現。智能家居可以通過物聯網技術將家中的各種設備連接到一起,提供家電控制、照明控制、電話遠程控制、環境監測、室內外遙控、防盜報警、暖通控制、紅外轉發以及可編程定時控制等多種功能和手段,可提供全方位的信息交互功能,甚至可以節約能源和資金。
本系統實現了一個基于ZigBee的簡易智能家居控制系統。具體而言,用戶可以通過控制終端的上位機軟件實現對功能平臺各節點的硬件的無線控制,包括:
(1)通過上位機發送相應指令,無線控制溫濕度傳感器采集節點溫濕度數據,并隨即將數據送回給上位機,實現環境監測功能;
(2)通過上位機發送相應指令,無線控制繼電器開關狀態,以實現對大電壓或大電流工作的電器的無線啟動或關閉,即家電控制、照明控制等功能;
(3)通過上位機發送相應指令,無線控制步進電機進行高精度的各種形式的轉動,從而實現房門的自動開關、電動窗簾控制等功能。
2 系統硬件設計
本簡易智能家居控制系統以基于51內核的STC12C5A60S2微控制器為核心,在不同節點的ZigBee自動組網后,即可實現指令或數據的無線傳輸;使用AM2320溫濕度傳感器采集環境節點溫濕度數據;使用Nokia5110液晶顯示屏實時顯示當前的環境溫濕度數據;使用SRD-05VDC-SL-C繼電器間接實現家電或照明等控制;使用24BYJ-48步進電機產生各種高精度的轉動狀態以實現房門或窗簾等的開合。簡易智能家居控制系統的硬件整體設計如圖1所示。
2.1 通用I/O口功能設計
(1)ZigBee模塊接單片機的UART(P3^0和P3^1);
(2)AM2320溫濕度傳感器接單片機的P1^0和P1^1口模擬的IIC總線;
(3)Nokia5110液晶顯示屏接單片機的P2口;
(4)24BYJ-48步進電機接單片機的P0口的低四位;
(5)SRD-05VDC-SL-C繼電器接單片機的P3^6口。
2.2 主要部件的選擇
(1)ZigBee模塊以TI 公司的CC2530為核心處理器,作為本系統的傳輸核心,模塊型號為ZB502。采用第三方提供的協調器和路由器的固件,可非常方便地實現多個模塊之間組網,從而實現控制終端和功能平臺之間指令和數據的雙向透明轉發。
(2)STC12C5A60S2單片機是宏晶科技公司基于51內核的8位微控制器,存儲方式為哈佛結構。該芯片是單時鐘/機器周期(1T)的單片機,是高速/低功耗/超強抗干擾的新一代8051單片機,指令代碼完全兼容傳統的8051,但速度快8-12倍。內部集成MAX810專用復位電路,2路PWM,8路高速10位A/D轉換(250K/S,即25萬次/秒)。工作頻率0~35MHz,相當于普通8051的0~420MHz,片上集成1280字節 RAM,共4個16位定時器,通用全雙工異步串行口(UART),有EEPROM功能和看門狗功能[2]。
(3)AM2320數字溫濕度傳感器是一款含有己校準數字信號輸出的溫濕度復合型傳感器,通信方式采用單總線、標準IIC兩種通信方式。兩種通信方式都采用直接輸出經溫度補償后的濕度、溫度及校驗CRC等數字信息,可得到準確的溫濕度信息[3]。
(4)Nokia5110液晶顯示屏是84*48的點陣LCD,可顯示4行漢字,8位接口控制,傳輸速率高達4Mbps,可全速寫入顯示數據,無等待時間[4]。
(5)24BYJ-48步進電機是一種高精度的電機,減速比為1/64,步距角則為5.625°/64 = 0.087890625°,可編程控制其實現各種高精度的轉動狀態[5]。
(6)SRD-05VDC-SL-C繼電器相當于一個單刀雙擲開關,通過單個引腳的高低電平控制即可實現開或關的功能。
3 系統軟件設計
系統上電后,等待所有硬件(尤其是ZigBee模塊需要一定的開機時間)都啟動成功之后,用戶便可通過上位機軟件發送指定指令對系統進行無線控制。
3.1 系統軟件運行流程
用戶通過電腦發送的指令通過USB轉串口線發送給ZigBee模塊(協調器),再由此ZigBee模塊(協調器)將指令無線轉發至節點處的ZigBee模塊(路由器),指令數據再由串口發送至單片機,單片機對指令做出分析判斷,如果接收到的指令在上表所列的指令之內,則執行上表中所指的功能操作;否則不予響應。系統軟件運行流程圖如下圖2。
2.2 無線通信指令定義
預先通過專用的配置軟件或串口調試助手,使用AT指令將ZigBee模塊的UART串口配置為串口0,波特率設置為38400 bps,無流控制;PANID局域網標志符和自身短地址使用系統默認隨機分配的即可;配置CHANNEL通信信道和頻率為11/2405MHz。
用戶通過上位機發送的指令必須為規定的指令,否則系統對用戶所發送的指令將不予響應。如表1所示,自定義的指令共5條,指定內容中“P2P”表示“點對點數據傳輸”[6],“143E”表示“節點處ZigBee的短地址”,指令中的數字代表指令序號。
4 系統運行測試
將系統硬件組裝完成后上電啟動,當所有硬件模塊正常工作時,部分硬件有工作指示燈長亮或閃爍。當控制終端的ZigBee模塊由LED1和LED2交替閃爍的狀態變為LED3長亮時,則說明新建網絡成功;當功能平臺的ZigBee模塊由LED1和LED2交替閃爍的狀態變為LED3長亮時,則說明此模塊加入新建網絡成功;當功能平臺的Nokia5110液晶顯示“Temperat:26.4C”和“Humidity:71.7%”時,則說明溫濕度傳感器和液晶顯示屏工作正常。系統組裝運行效果如圖3所示。
用戶通過上位機發送預先定義的指令,即可對系統進行相應的控制。例如,通過上位機軟件發送讀取溫濕度數據的指令(P2P 143E 1),約1秒鐘左右,在上位機軟件的接收框內即可顯示功能平臺無線傳送回來的溫濕度數據,測試結果如圖4所示。
由此可見,用戶通過上位機軟件發送相應指令,即可無線控制溫濕度傳感器獲取節點處實時、精確的溫濕度數據,實現環境監測功能;繼電器間接控制電器的開關狀態,實現家電控制、照明控制功能;步進電機可以任意轉動形式高精度轉動,實現房門的自動開關、電動窗簾控制等功能。
5 結束語
本系統較好地實現了智能家居的控制功能,具有較好的適應性和移植性等,但本身也存在一些如功能還不夠完善等不足。后期對系統進行升級,可按用戶需求增添節點處的各種硬件,以增加系統更加豐富的實際功能,且整套系統的結構簡單、性價比極高,可很方便地對整套硬件的進行復制。因此本套系統雖仍有一定的進步空間,卻也有著極大的發展前景。
【參考文獻】
[1]婁亞楠. 中國智能家居應用前景與挑戰[J]. 中國公共安全(綜合版),2013.
[2]南通宏晶科技有限公司. STC12C5A60S2系列單片機器件手冊[S].2015.
[3]廣州奧松電子有限公司. 數字溫濕度傳感器AM2320產品手冊[S].2014.
[4]Philips 半導體. 驅動芯片PCD8544中文數據手冊[S].1999.
[5]佛山市勝安制冷配件有限公司[Z]. 24BYJ-48(5V),2011.
[6]深圳微雪電子有限公司. CC2530模塊使用手冊 V1.0,2014[S].
[責任編輯:曹明明]