衡陽師范學(xué)院物理與電子工程學(xué)院 許岳兵
衡陽師范學(xué)院初等教育學(xué)院 何燁雯
衡陽師范學(xué)院物理與電子工程學(xué)院 譚岳衡
基于ARM和ZigBee的智能家居系統(tǒng)的設(shè)計(jì)
衡陽師范學(xué)院物理與電子工程學(xué)院 許岳兵
衡陽師范學(xué)院初等教育學(xué)院 何燁雯
衡陽師范學(xué)院物理與電子工程學(xué)院 譚岳衡
針對(duì)智能家居系統(tǒng)布線復(fù)雜、擴(kuò)展性差、應(yīng)用成本高等缺點(diǎn),設(shè)計(jì)了一款基于ARM和ZigBee技術(shù)的智能家居系統(tǒng)。系統(tǒng)以三星Exynos4412為控制核心,移植了Linux 操作系統(tǒng)和Boa 服務(wù)器,采用ZigBee無線模塊組建了家庭內(nèi)部網(wǎng),通過4G無線模塊接入Internet,實(shí)現(xiàn)了智能家居系統(tǒng)的遠(yuǎn)程監(jiān)控。
智能家居系統(tǒng);Exynos4412;CC2630;ME3760
智能家居又稱智能住宅,融合了計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通訊技術(shù)和傳感器技術(shù)于一體的智能化家居控制系統(tǒng)。國外的智能家居系統(tǒng)發(fā)展較快,美國的X-10系統(tǒng),德國的EIB系統(tǒng)和新加坡的8x系統(tǒng)等,這些系統(tǒng)在國內(nèi)應(yīng)用較少,系統(tǒng)架構(gòu)、靈活性、價(jià)格等方面難以滿足要求。國內(nèi)的智能家居起步較晚,但一些企業(yè)也推出了不少好產(chǎn)品,如清華同方的e-Home數(shù)字家園,海爾U-Home家電和海信DNet-home數(shù)字家庭等。這些系統(tǒng)基于有線方案,布線麻煩,增減設(shè)備需要重新布線;同時(shí)依靠PC機(jī)進(jìn)行管理,升級(jí)和維護(hù)不方便。因此,本文設(shè)計(jì)了一款低成本、高性能的智能家居系統(tǒng)。
圖1 系統(tǒng)原理框圖
系統(tǒng)原理框圖如圖1所示。系統(tǒng)由Exynos4412 ARM控制平臺(tái)、USB攝像頭、ZigBee通信電路、LCD觸摸屏、4G通信模塊和聲光報(bào)警電路等構(gòu)成。圖中檢測電路由傳感器陣列組成,利用傳感器檢測室內(nèi)溫濕度、亮度、可燃?xì)怏w泄漏、煙霧和盜賊入侵等情況??刂齐娐穼?shí)現(xiàn)對(duì)家用電器的控制,包括對(duì)空調(diào)、電視、熱水器、LED燈、加濕器、門窗等的開啟和關(guān)閉。系統(tǒng)以ARM平臺(tái)為控制中心,利用USB攝像頭采集視頻,ZigBee無線網(wǎng)絡(luò)連接檢測電路和控制電路,通過4G通信模塊接入網(wǎng)絡(luò),當(dāng)家庭內(nèi)部發(fā)生煤氣泄漏或火災(zāi)等危及生命財(cái)產(chǎn)的安全事故時(shí),系統(tǒng)自動(dòng)報(bào)警。用戶也可以使用遠(yuǎn)程終端登錄ARM平臺(tái)上的web服務(wù)器,實(shí)時(shí)查看家庭內(nèi)部的監(jiān)控情況或發(fā)送控制命令,實(shí)現(xiàn)對(duì)家庭內(nèi)部各種家居設(shè)備的監(jiān)控及管理。
系統(tǒng)硬件電路包括ARM平臺(tái)、ZigBee模塊、4G通信模塊和傳感器檢測電路等。系統(tǒng)ARM平臺(tái)由三星Exynos4412主處理器、1G DDR3內(nèi)存、4GB eMMC高速閃存及其他外圍電路構(gòu)成,具有mini PCI-E接口、2路RS232 UART串口、4路TTL UART接口、4路I2C接口和1路USB2.0接口等,支持4G通信模塊。Exynos4412四核處理器基于ARM Cortex-A9內(nèi)核,主頻高達(dá)1.4~1.6GHz,ARMv7指令集,采用128/64位內(nèi)部總線結(jié)構(gòu)。一級(jí)緩存用于數(shù)據(jù)和指令的容量都是32 KB,二級(jí)緩存容量為1024 KB,運(yùn)算性能十分突出。
ZigBee模塊采用TI公司的CC2630,集成符合2.4GHz IEEE 802.15.4的無線收發(fā)器,含有32位ARM Cortex-M3處理器,128KB閃存,8KB RAM,12位ADC,多達(dá)31個(gè)通用I/O接口,具有I2C、UART等外設(shè)接口,具有低MCU電流、有源RF和低功耗模式,可使用紐扣電池供電。ZigBee協(xié)調(diào)器模塊通過UART接口與ARM平臺(tái)連接,通過2.4G無線通信與ZigBee節(jié)點(diǎn)控制器模塊實(shí)現(xiàn)通信。
4G通信模塊采用中興公司的ME3760,是一款Mini PCI-E接口的LTE 模塊,支持4GTDD-LTE/FDD-LTE網(wǎng)絡(luò)、全頻段,理論上支持最大100 Mb/s下行,50 Mb/s上行的數(shù)據(jù)傳輸速率,完全滿足系統(tǒng)的設(shè)計(jì)要求。ME3760模塊通過Mini PCI-E接口與ARM平臺(tái)連接,通過串口AT指令實(shí)現(xiàn)數(shù)據(jù)通信。
溫濕度傳感器采用Sensirion公司SHT31,具有I2C接口,電壓輸出。SHT31通過I2C接口與ZigBee節(jié)點(diǎn)控制器模塊連接。亮度檢測采用光敏電阻,由于室內(nèi)亮度的改變會(huì)引起光敏電阻阻值的變化,從而引起其在電路中電壓值的變化,通過ZigBee節(jié)點(diǎn)控制器模塊的12位A/D采集光敏電阻兩端電壓值,實(shí)現(xiàn)室內(nèi)亮度的采集。煤氣檢測傳感器采用MQ4,對(duì)甲烷的靈敏度較高。煙霧傳感器采用MQ2,其電導(dǎo)率隨空氣中可燃?xì)怏w濃度的增加而增大,將電導(dǎo)率的變化轉(zhuǎn)換為與氣體濃度相對(duì)應(yīng)的輸出信號(hào)。熱釋紅外傳感器采用基于紅外線技術(shù)的HR-SR501,可靠性強(qiáng),靈敏度高,超低電壓工作模式。
系統(tǒng)軟件的設(shè)計(jì)主要包括Linux操作系統(tǒng)的移植,Web服務(wù)器的設(shè)計(jì),ZigBee程序設(shè)計(jì),視頻采集程序設(shè)計(jì)和4G通信程序設(shè)計(jì)等。
Linux操作系統(tǒng)的移植首先需要搭建交叉編譯環(huán)境。PC機(jī)安裝的是Ubuntu16.04操作系統(tǒng),ARM平臺(tái)的Bootloader引導(dǎo)程序和內(nèi)核在PC機(jī)上交叉編譯后,下載到目標(biāo)板上運(yùn)行。本文采用的交叉編譯器為arm-linux-gcc-4.5.1,下載、解壓,把a(bǔ)rm-linux路徑添加到環(huán)境變量PATH中,保存退出即可。然后進(jìn)行Bootloader移植,Bootloader類似于PC機(jī)的BIOS,引導(dǎo)加載程序。本文采用u-boot-2015.10.tar.bz2,下載、解壓,修改Makefile文件,指定交叉編譯工具鏈。修改相似的BOARD配置,使其支持Exynos4412 CPU,編譯運(yùn)行。最后進(jìn)行內(nèi)核移植,系統(tǒng)Linux內(nèi)核版本為3.5.0,在內(nèi)核配置時(shí),完成對(duì)串口、USB攝像頭和4G通信模塊等驅(qū)動(dòng)的配置,并對(duì)YAFF2S根文件系統(tǒng)進(jìn)行配置,保存退出。執(zhí)行命令make uImage,編譯完成后,在arch/arm/boot目錄下生成了內(nèi)核鏡像文件uImage,把這個(gè)文件燒寫到目標(biāo)板上運(yùn)行,就可以看到Linux的啟動(dòng)信息了。
Web 服務(wù)器采用Boa服務(wù)器,利用CGI 技術(shù)可以實(shí)現(xiàn)對(duì)家居設(shè)備的監(jiān)控。Boa服務(wù)器的移植步驟:修改Makefile文件,指定交叉編譯工具鏈;修改boa.conf文件,配置相關(guān)目錄,包括修改Group開放用戶組的限制,配置HTML文件存放目錄,修改ScriptAlias配置CGI腳本的存放目錄,修改mime.type文件的存放目錄;在制作好的根文件系統(tǒng)下創(chuàng)建相應(yīng)的目錄,將上述文件拷貝到對(duì)應(yīng)的目錄。當(dāng)Boa服務(wù)器接收到用戶的請(qǐng)求時(shí),CGI 程序就處理瀏覽器發(fā)過來的參數(shù),生成HTML頁面,為用戶提供瀏覽。
ZigBee程序設(shè)計(jì)包括協(xié)調(diào)器節(jié)點(diǎn)和節(jié)點(diǎn)控制程序。本文采用TI公司的Z-STACK 協(xié)議棧,調(diào)用系統(tǒng)提供的API接口來開發(fā)應(yīng)用程序。ZigBee協(xié)調(diào)器節(jié)點(diǎn)負(fù)責(zé)建立和維護(hù)無線網(wǎng)絡(luò)的運(yùn)行,向節(jié)點(diǎn)控制發(fā)送控制指令和接收傳感器采集的信息,通過串口發(fā)送給ARM平臺(tái)。ZigBee節(jié)點(diǎn)控制將傳感器采集到的數(shù)據(jù)發(fā)送給協(xié)調(diào)器節(jié)點(diǎn),同時(shí)接收協(xié)調(diào)器節(jié)點(diǎn)發(fā)送過來的控制指令。當(dāng)傳感器節(jié)點(diǎn)和ARM平臺(tái)沒有數(shù)據(jù)請(qǐng)求時(shí),節(jié)點(diǎn)控制進(jìn)入休眠模式;當(dāng)有數(shù)據(jù)請(qǐng)求時(shí),實(shí)時(shí)完成數(shù)據(jù)采集并發(fā)送至協(xié)調(diào)節(jié)點(diǎn)。
視頻采集程序的設(shè)計(jì)基于Video for Linux Two(簡稱V4L2)技術(shù),V4L2是Linux操作系統(tǒng)中關(guān)于設(shè)備的內(nèi)核驅(qū)動(dòng),提供了用于采集視頻等數(shù)據(jù)的API接口,加載相應(yīng)的設(shè)備驅(qū)動(dòng),可以實(shí)現(xiàn)視頻的采集。實(shí)現(xiàn)流程:首先打開視頻設(shè)備,獲取設(shè)備信息,使用ioctl()函數(shù)設(shè)置視頻格式;申請(qǐng)幀緩沖區(qū),映射到用戶空間;將申請(qǐng)到的幀緩沖區(qū)在視頻采集輸入隊(duì)列中排隊(duì),保證視頻流的順序;啟動(dòng)視頻采集,使用VIDIOC_DQBUF使視頻幀出隊(duì)列,取出的視頻幀,使用VIDIOC_QBUF使視頻幀入隊(duì)列,循環(huán)往復(fù),可采集連續(xù)的視頻數(shù)據(jù);采集完成后釋放緩沖區(qū),并關(guān)閉攝像頭設(shè)備文件。
4G通信模塊程序設(shè)計(jì)采用基于TCP/IP 協(xié)議的流式Socket 通信,通過Linux下的Sockets套接字編程實(shí)現(xiàn)。服務(wù)器使用socket()函數(shù)創(chuàng)建套接字,用bind()函數(shù)綁定服務(wù)器IP地址和端口號(hào),創(chuàng)建socket對(duì)象??蛻舳苏{(diào)用sendto()函數(shù)向服務(wù)器發(fā)送服務(wù)請(qǐng)求報(bào)文,調(diào)用recvfrom()函數(shù)等待并接收服務(wù)器的應(yīng)答報(bào)文;雙方通過socket套接字進(jìn)行數(shù)據(jù)的發(fā)送與接收,實(shí)現(xiàn)用戶遠(yuǎn)程終端與ARM平臺(tái)之間的通信。
設(shè)計(jì)了一款基于ARM和ZigBee的智能家居系統(tǒng),以三星Exynos4412為控制核心,結(jié)合ZigBee模塊、4G通信模塊和傳感器等完成了系統(tǒng)硬件設(shè)計(jì),通過移植Linux操作系統(tǒng),Web服務(wù)器以及編寫ZigBee程序、視頻采集程序和4G通信程序,實(shí)現(xiàn)了用戶遠(yuǎn)程終端與系統(tǒng)監(jiān)控平臺(tái)之間的互通互聯(lián)。經(jīng)測試,系統(tǒng)運(yùn)行穩(wěn)定,具有實(shí)時(shí)性好、可靠性高、擴(kuò)展性好等特點(diǎn),具有廣闊的市場前景。
[1]尹紀(jì)庭等.基于ARM和ZigBee的智能家居控制系統(tǒng)研究與開發(fā)[J].計(jì)算測量與控制,2011,21(9):2451-2454.
[2]楊新華,王彥龍,薛健.光伏儲(chǔ)能電動(dòng)汽車充電站的監(jiān)控系統(tǒng)研究[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2015(9):65-68.
[3]趙建華,張占華.基于ARM和ZigBee的便攜式智能家居終端系統(tǒng)[J].計(jì)算機(jī)與數(shù)字工程,2013,41(9):1529:1531.
[4]許岳兵等.基于S3C2440的家用視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J].衡陽師范學(xué)院學(xué)報(bào),2011,32(3):52:55.
許岳兵(1980—),男,湖南岳陽人,講師,主要研究方向?yàn)闄C(jī)器學(xué)習(xí),嵌入式及應(yīng)用。
湖南省教育廳高??蒲杏?jì)劃項(xiàng)目(12C0532)。
何燁雯(通信作者)(1980—),女,湖南岳陽人,中教二級(jí),主要研究方向?yàn)槲锢韺W(xué)教育,嵌入式及應(yīng)用。