一種基于S5PV210芯片的智能家居系統設計
摘要:提出了一種基于S5PV210芯片的智能家居系統的設計方法。在基于S5PV210處理器和linux2.6.30內核的嵌入式系統平臺上使用QT開發了軟件系統和人機交互界面,控制各種傳感器采集信息以及TC35i等模塊,并配置實現了Boa服務器;利用CGI實現了客戶端瀏覽器和嵌入式Web服務器之間的交互;設計了基于STC89C52的門禁系統。
本文引用地址:http://www.j9360.com/article/249380.htm智能家居(Smart Home)是融合了計算機、通信、控制技術于一體的現代智慧家居解決方案,目前,國內外各種類型的智能家居產品越來越多。但一部分采用低性能的CPU作為主控芯片,無法在智能家居系統中集成更復雜的任務。還有一部分在控制系統上沒有開發出更友好的人機界面(GUI),使用戶無法完成便捷的操作。在對智能家居進行充分的研究之后,結合當前較先進的CPU芯片提出了一種方便、快捷、高效的智能家居系統,以基于S5PV210處理器和linux2.6.30內核的嵌入式系統平臺,采用溫度傳感器DS18B20、人體熱釋電紅外傳感器、氣體傳感器、攝像頭等各類傳感器全方位監控家庭信息;使用GSM模塊使用戶可通過短信進行控制并且將傳感器信息反饋給用戶;并搭建BOA服務器結合CGI技術實現客戶端和嵌入式服務器的數據交互,用戶可以通過internet遠程監視和控制家電的運行狀態;系統控制界面采用QT技術開發,并開發出了基于主從機式的門禁系統。
1 智能家居系統組成
系統組成如圖1所示,系統采用三星公司的高端ARMCortex—A8 S5PV210處理器作為主控芯片,并由多種傳感器、LCD顯示、GSM通信、以太網通信以及門禁系統等部分構成。人機交互采用3種方式;主控制系統將各種信息集成顯示到LCD顯示屏上并通過觸摸屏控制并設置;系統建立Web服務器,用戶可通過internet遠程訪問系統;用戶可通過GSM方式與系統交互;門禁系統采用主從機方式設計,主控芯片采用STC89C 52。

系統軟件開發首先在系統移植linux2.6.30內核,在此平臺下開發相應硬件的驅動程序;使用QT-creator編寫人機交互界面;在linux2.6.30下配置Boa服務器;CGI程序主要實現遠程客戶端瀏覽器與服務器之間控制的數據交互;使用AT指令控制GSM模塊與用戶手機通信。
2 系統硬件設計
硬件設計主要介紹各種傳感器電路,門禁系統以及GSM電路3部分。
2.1 傳感器電路
各傳感器有相應的驅動電路,將其數據輸出口與S5PV210處理器的GPIO口相連,各傳感器電路的連接遵循相應的電路連接規范。
2.2 門禁系統電路設計
門禁系統采用單片機STC89C52芯片作為主控芯片,由單片機、矩陣鍵盤、報警電路、LED指示燈顯示組成,電路設計如圖2所示。系統能完成開鎖、修改密碼、當操作錯誤的次數大于系統設置的極限時,系統在報警的同時還會鎖定系統以加強密碼鎖的安全性,系統還具有節電和掉電保護等功能。密碼設置在主控系統上LCD觸摸屏上設置,系統初始化密碼為012345,利用93c46芯片掉電保護功能,對修改后的密碼自動存儲。根據單片機的返回值,在主控系統QT編寫的界面上可以控制門的打開以及顯示門的狀態信息。

2.3 GSM模塊電路設計
TC35i模塊有40個引腳,通過一個ZIF(Zero Insertion Force,零阻力插座)連接器引出。這40個引腳可以劃分為5類,即電源、數據輸入/輸出、SIM卡、音頻接口和控制。S5PV210通過擴展的MAX232芯片實現串口通信,TC35i模塊連接到9針的D型插座上,其連接電路如圖3所示。用戶可通過GSM短信功能完成與智能家居控制系統的通信,并獲取家庭內各傳感器以及門禁系統的狀態。

3 系統軟件設計
3.1 QT編程
本系統使用Qt creator中的Qt設計器設計主控系統程序的人機交互界面,遵循QT/embedded編程一般規則編寫代碼,首先實現了各種電氣設備、傳感器系統、門禁系統、GSM通信的相關功能控制和設置以及家庭娛樂功能,然后在主程序中添加國際化和中文支持,最后編譯并通過NFS進行系統測試。
主界面類名為SmartHome,繼承自QWidget類。在其頭文件內聲明了6個功能界面對象,應用到QListWidgetItem和QListWidget兩個類以及mouseMoveEvent方法管理這六個行為,使其具有顯示隱藏功能。
主界面程序實現


3.2 BOA服務器的配置與移植
BOA服務器是一個小巧高效的、特別適合嵌入式系統的單任務的web服務器,它可以運行在linux下并支持CGI。本系統中,首先完成在linux下Boa源代碼的下載、修改和交叉編譯,在etc目錄下面新建boa文件夾,將可執行文件boa及boa.conf放置到該目錄下,并將mini.typ es復制到etc目錄下,在對boa.conf和mini.types兩個文件完成配置,最后在終端運行./boa&。
3.3 客戶端網頁
JavaScript是一種廣泛用于客戶端Web開發的腳本語言,它基于對象和事件驅動并具有相對安全性,常用來給HTML網頁添加動態功能,比如響應用戶的各種操作。CSS(Cascading Style Sheet)可譯為“層疊樣式表”或“級聯樣式表”,它定義如何顯示HTML元素,用于控制Web頁面的外觀。通過使用CSS實現頁面的內容與表現形式分離,極大提高了工作效率。樣式存儲在樣式表中,通常放在部分或存儲在外部CSS文件中。利用CSS和JavaScript編寫客戶端網頁界面如圖4所示。

4 結論
經測試,本系統安全可靠,性能穩定,可以使用主控系統界面便捷的對家居系統的各個功能完成設置與控制,本地客戶還可通過一臺上網的計算機或一部手機即可以靈活方便實現對家居系統完成監控。此系統工作穩定,擴展性強,配置靈活,功能豐富,具有良好的移植性、通用性,具有廣闊的應用前景。
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
linux相關文章:linux教程
評論