1. 程式人生 > >基於Linux的智能家居的設計(2)

基於Linux的智能家居的設計(2)

數據交互 mod class 類庫 nbsp man linux系統 單片機 popu

1 系統整體設計方案

智能家居系統的是一個實時查詢家庭的溫濕度、照明控制、自己主動控制的設定。集家庭娛樂、智能安防為一體,大量數據快處理、可靠的系統,因此在硬件和軟件上都有非常大的要求,因此在這裏進行了多方面的考慮有下面兩個實現方案:

方案一:利用STM32單片機作為手持終端的控制器,使用按鍵和12864液晶屏作為人機交互的接口。利用51單片機作為房子內部的電燈、空調、門禁等家電的控制器,利用串口實現STM32單片機和51單片機作為傳輸數據的通道。這個能夠實現。可是。機械按鍵和12864在智能家居中與實際的場景有些不符合。

方案二:利用ARM架構的S3C6410作為手持終端的主控芯片,以Linux系統作為平臺,QT設計友好的人機交互界面。結合多個傳感器進行採集。使用TI的CC2530作為網絡傳感器和房子內部電器的控制器。而且利用串口通信實現數據的交互,利用RFID的門禁鑰匙。通過PC機上的client軟件實現遠程的智能家居系統監控[6]

比較以上兩種方案。另外一種方案更為合理。Linux系統有非常多的優勢:免費開源、內核可裁剪、網絡功能強大且穩定、可靠安全等都方面的優勢[7]

Qt設計支持多國語言、優良的跨平臺特性、面向對象、豐富的API(包含圖形設計器,Makefile制作工具、字體國際化工具、Qt的C++類庫)、模塊化、能夠隨意裁剪、大量的開發文檔、XML支持等多方面的優勢[8]。所以選擇方案二。

本設計的總體系統框圖如圖1-1所看到的:

技術分享

1-1 總體系統框圖

硬件部分的結構框圖如圖1-2所看到的:

技術分享

1-2 硬件結構框圖

這裏的主控芯片是用於數據的處理和系統的控制,TFT液晶屏用於人機交互。協調器和主控芯片用串口通信實現家庭網絡的數據交互。溫濕度傳感器採集室內的溫濕度,光照度傳感器採集光照度,通過終端節點將數據收集打包。發送到協調器,協調器通過串口將數據發送到主控制芯片,主控器進行數據處理在界面TFT屏上給出對應的信息。而且發出對應的指令控制空調和電機。門禁模塊實現控制舵機的轉動從而控制門的開關。

接下來的請看基於Linux的智能家居的設計(3)。

基於Linux的智能家居的設計(2)