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