基于S5PV210的智能家居系統(tǒng)設(shè)計(jì)
提出了一種基于S5PV210芯片的智能家居系統(tǒng)的設(shè)計(jì)方法。在基于S5PV210處理器和linux2.6.30內(nèi)核的嵌入式系統(tǒng)平臺上使用QT開發(fā)了軟件系統(tǒng)和人機(jī)交互界面,控制各種傳感器采集信息以及TC35i等模塊,并配置實(shí)現(xiàn)了Boa服務(wù)器;利用CGI實(shí)現(xiàn)了客戶端瀏覽器和嵌入式Web服務(wù)器之間的交互;設(shè)計(jì)了基于STC89C52的門禁系統(tǒng)。
本文引用地址:http://2s4d.com/article/271873.htm智能家居(Smart Home)是融合了計(jì)算機(jī)、通信、控制技術(shù)于一體的現(xiàn)代智慧家居解決方案,目前,國內(nèi)外各種類型的智能家居產(chǎn)品越來越多。但一部分采用低性能的CPU作為主控芯片,無法在智能家居系統(tǒng)中集成更復(fù)雜的任務(wù)。還有一部分在控制系統(tǒng)上沒有開發(fā)出更友好的人機(jī)界面(GUI),使用戶無法完成便捷的操作。在對智能家居進(jìn)行充分的研究之后,結(jié)合當(dāng)前較先進(jìn)的CPU芯片提出了一種方便、快捷、高效的智能家居系統(tǒng),以基于S5PV210處理器和linux2.6.30內(nèi)核的嵌入式系統(tǒng)平臺,采用溫度傳感器DS18B20、人體熱釋電紅外傳感器、氣體傳感器、攝像頭等各類傳感器全方位監(jiān)控家庭信息;使用GSM模塊使用戶可通過短信進(jìn)行控制并且將傳感器信息反饋給用戶;并搭建BOA服務(wù)器結(jié)合CGI技術(shù)實(shí)現(xiàn)客戶端和嵌入式服務(wù)器的數(shù)據(jù)交互,用戶可以通過internet遠(yuǎn)程監(jiān)視和控制家電的運(yùn)行狀態(tài);系統(tǒng)控制界面采用QT技術(shù)開發(fā),并開發(fā)出了基于主從機(jī)式的門禁系統(tǒng)。
1智能家居系統(tǒng)組成
系統(tǒng)組成如圖1所示,系統(tǒng)采用三星公司的高端ARMCortex—A8 S5PV210處理器作為主控芯片,并由多種傳感器、LCD顯示、GSM通信、以太網(wǎng)通信以及門禁系統(tǒng)等部分構(gòu)成。人機(jī)交互采用3種方式;主控制系統(tǒng)將各種信息集成顯示到LCD顯示屏上并通過觸摸屏控制并設(shè)置;系統(tǒng)建立Web服務(wù)器,用戶可通過internet遠(yuǎn)程訪問系統(tǒng);用戶可通過GSM方式與系統(tǒng)交互;門禁系統(tǒng)采用主從機(jī)方式設(shè)計(jì),主控芯片采用STC89C 52.
圖1 系統(tǒng)結(jié)構(gòu)圖
系統(tǒng)軟件開發(fā)首先在系統(tǒng)移植linux2.6.30內(nèi)核,在此平臺下開發(fā)相應(yīng)硬件的驅(qū)動(dòng)程序;使用QT-creator編寫人機(jī)交互界面;在linux2.6.30下配置Boa服務(wù)器;CGI程序主要實(shí)現(xiàn)遠(yuǎn)程客戶端瀏覽器與服務(wù)器之間控制的數(shù)據(jù)交互;使用AT指令控制GSM模塊與用戶手機(jī)通信。
2系統(tǒng)硬件設(shè)計(jì)
硬件設(shè)計(jì)主要介紹各種傳感器電路,門禁系統(tǒng)以及GSM電路3部分。
2.1傳感器電路
各傳感器有相應(yīng)的驅(qū)動(dòng)電路,將其數(shù)據(jù)輸出口與S5PV210處理器的GPIO口相連,各傳感器電路的連接遵循相應(yīng)的電路連接規(guī)范。
2.2門禁系統(tǒng)電路設(shè)計(jì)
門禁系統(tǒng)采用單片機(jī)STC89C52芯片作為主控芯片,由單片機(jī)、矩陣鍵盤、報(bào)警電路、LED指示燈顯示組成,電路設(shè)計(jì)如圖2所示。系統(tǒng)能完成開鎖、修改密碼、當(dāng)操作錯(cuò)誤的次數(shù)大于系統(tǒng)設(shè)置的極限時(shí),系統(tǒng)在報(bào)警的同時(shí)還會(huì)鎖定系統(tǒng)以加強(qiáng)密碼鎖的安全性,系統(tǒng)還具有節(jié)電和掉電保護(hù)等功能。密碼設(shè)置在主控系統(tǒng)上LCD觸摸屏上設(shè)置,系統(tǒng)初始化密碼為012345,利用93c46芯片掉電保護(hù)功能,對修改后的密碼自動(dòng)存儲。根據(jù)單片機(jī)的返回值,在主控系統(tǒng)QT編寫的界面上可以控制門的打開以及顯示門的狀態(tài)信息。
圖2 門禁系統(tǒng)電路圖
2.3 GSM模塊電路設(shè)計(jì)
TC35i模塊有40個(gè)引腳,通過一個(gè)ZIF(Zero Insertion Force,零阻力插座)連接器引出。這40個(gè)引腳可以劃分為5類,即電源、數(shù)據(jù)輸入/輸出、SIM卡、音頻接口和控制。S5PV210通過擴(kuò)展的MAX232芯片實(shí)現(xiàn)串口通信,TC35i模塊連接到9針的D型插座上,其連接電路如圖3所示。用戶可通過GSM短信功能完成與智能家居控制系統(tǒng)的通信,并獲取家庭內(nèi)各傳感器以及門禁系統(tǒng)的狀態(tài)。
圖3 GSM模塊電路圖
3系統(tǒng)軟件設(shè)計(jì)
3.1 QT編程
本系統(tǒng)使用Qt creator中的Qt設(shè)計(jì)器設(shè)計(jì)主控系統(tǒng)程序的人機(jī)交互界面,遵循QT/embedded編程一般規(guī)則編寫代碼,首先實(shí)現(xiàn)了各種電氣設(shè)備、傳感器系統(tǒng)、門禁系統(tǒng)、GSM通信的相關(guān)功能控制和設(shè)置以及家庭娛樂功能,然后在主程序中添加國際化和中文支持,最后編譯并通過NFS進(jìn)行系統(tǒng)測試。
主界面類名為SmartHome,繼承自QWidget類。在其頭文件內(nèi)聲明了6個(gè)功能界面對象,應(yīng)用到QListWidgetItem和QListWidget兩個(gè)類以及mouseMoveEvent方法管理這六個(gè)行為,使其具有顯示隱藏功能。
主界面程序?qū)崿F(xiàn)
3.2 BOA服務(wù)器的配置與移植
BOA服務(wù)器是一個(gè)小巧高效的、特別適合嵌入式系統(tǒng)的單任務(wù)的web服務(wù)器,它可以運(yùn)行在linux下并支持CGI.本系統(tǒng)中,首先完成在linux下Boa源代碼的下載、修改和交叉編譯,在etc目錄下面新建boa文件夾,將可執(zhí)行文件boa及boa.conf放置到該目錄下,并將mini.typ es復(fù)制到etc目錄下,在對boa.conf和mini.types兩個(gè)文件完成配置,最后在終端運(yùn)行。/boa
3.3客戶端網(wǎng)頁
JavaScript是一種廣泛用于客戶端Web開發(fā)的腳本語言,它基于對象和事件驅(qū)動(dòng)并具有相對安全性,常用來給HTML網(wǎng)頁添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。CSS(Cascading Style Sheet)可譯為“層疊樣式表”或“級聯(lián)樣式表”,它定義如何顯示HTML元素,用于控制Web頁面的外觀。通過使用CSS實(shí)現(xiàn)頁面的內(nèi)容與表現(xiàn)形式分離,極大提高了工作效率。樣式存儲在樣式表中,通常放在部分或存儲在外部CSS文件中。利用CSS和JavaScript編寫客戶端網(wǎng)頁界面如圖4所示。
圖4 客戶端智能家居控制界面
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
linux相關(guān)文章:linux教程
評論