從零開發智能家居系統(二)——硬件部分

智能家居 通信 鵝卵石愛編程 鵝卵石愛編程 2017-10-15

從零開發智能家居系統(二)——硬件部分

從上一篇開始,進入到了智能家居系統的教程,這次從硬件部分開始講起,主要說說硬件的組成。

硬件電路部分

  • 主控電路

  • 傳感器電路

  • 通訊電路

主控電路設計

控電路採用的是STM32F103C8T6單片機,關於為什麼選擇這個型號的,主要有兩個原因,一是稍微便宜一些,淘寶上便宜一點的6塊多大洋就可以了;二是因為綜合考慮了下我能使用到的資源,選擇這個型號的已經夠用了。如下圖所示:

從零開發智能家居系統(二)——硬件部分

STM32F103

主控電路實際上就是一個單片機的最小系統的設計,而最小系統的設計主要包括:電源部分、晶振部分、程序下載部分、芯片電路部分。其中下載電路可以根據自己的需要進行設計,可以選擇USB下載或者JTAG下載,兩種方式根據自己的實際情況進行選擇。

以下就是本次主控電路原理圖:

從零開發智能家居系統(二)——硬件部分

STM32電路原理圖

從圖中可以看出,我的硬件中同時有USB下載和JTAG下載,方便後期根據自己情況進行選擇,在程序調試過程中,不得否認JTAG的作用還是挺大的,調試非常的方便。

傳感器電路設計

本次使用到的傳感器主要有:DS18B20(溫度傳感器),MQ_2(煙霧傳感器).DHT11(溫溼度傳感器),TELESKY(光敏傳感器),HC-SR501(人體紅外感應模塊)、BEEP(蜂鳴器)。這幾個傳感器很普通,也就是常見的模塊,以下是主要的電路圖。

溫度傳感器

從零開發智能家居系統(二)——硬件部分

DS18B20

DS18B20 是由 DALLAS 半導體公司推出的一種的“一線總線”接口的溫度傳感器。具有體積小,硬件開銷低,抗干擾能力強、精度高的特點,測量溫度範圍為-55~+125℃,精度為±0.5℃。現場溫度直接以“一總線“的數字方式傳輸,打打提高了系統的抗干擾性。為了方便,設定分辨率及報警溫度存儲在EEPROM中,掉電後任然保存。

DS18B20測溫原理下圖示。圖中低溫度係數晶振的振盪頻率受溫度影響很小,用於產生固定頻率的脈衝信號送給計數器1。高溫度係數晶振隨溫度變化其振盪率明顯改變,所產生的信號作為計數器2的脈衝輸入。計數器1和溫度寄存器被預置在-55℃所對應的一個基數值。計數器1對低溫度係數晶振產生的脈衝信號進行減法計數,當計數器1的預置值減到0時,溫度寄存器的值將加1,計數器1的預置將重新被裝入,計數器1重新開始對低溫度係數晶振產生的脈衝信號進行計數,如此循環直到計數器2計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。斜率累加器用於補償和修正測溫過程中的非線性,其輸出用於修正計數器1的預置值。

DS18B20通訊方式為單總線結構!

所有的單總線器件要求採用嚴格的信號時序,以保證數據的完整性。 DS18B20 共有 6 種信號類型:復位脈衝、應答脈衝、寫 0、寫 1、讀 0 和讀 1。所有這些信號,除了應答脈衝以外,都由主機發出同步信號。並且發送所有的命令和數據都是字節的低位在前。

其他詳細介紹可以查看芯片手冊。或者從我後期資料包中尋找。


溫溼度傳感器

從零開發智能家居系統(二)——硬件部分

DHT11數字溫溼度傳感器是一款含有已校準數字信號輸出的溫溼度複合傳感器。它應用專用的數字模塊採集技術和溫溼度傳感技術,確保產品具有極高的可靠性與卓越的長期穩定性。傳感器包括一個電阻式感溼元件和一個NTC測溫元件,並與一個高性能8位單片機相連接。因此該產品具有品質卓越、超快響應、抗干擾能力強、性價比極高等優點。每個DHT11傳感器都在極為精確的溼度校驗室中進行校準。校準係數以程序的形式儲存在OTP內存中,傳感器內部在檢測信號的處理過程中要調用這些校準係數。單線制串行接口,使系統集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達20米以上,使其成為各類應用甚至最為苛刻的應用場合的最佳選則。產品為4針單排引腳封裝。連接方便,特殊封裝形式可根據用戶需求而提供。

DATA用於微處理器與DHT11之間的通訊和同步,採用單總線數據格式,一次通訊時間4ms左右,數據分小數部分和整數部分,具體格式在下面說明,當前小數部分用於以後擴展,現讀出為零.操作流程如下:一次完整的數據傳輸為40bit,高位先出。數據格式:8bit溼度整數數據+8bit溼度小數數據+8bi溫度整數數據+8bit溫度小數數據+8bit校驗和數據傳送正確時校驗和數據等於“8bit溼度整數數據+8bit溼度小數數據+8bi溫度整數數據+8bit溫度小數數據”所得結果的末8位。

主要參數

  • 工作電壓範圍:3.3V-5.5V

  • 工作電流 :平均0.5mA

  • 輸出:單總線數字信號

  • 測量範圍:溼度20~90%RH,溫度0~50℃

  • 精度 :溼度±5%,溫度±2℃

  • 分辨率 :溼度1%,溫度1℃

DHT11通信方式也是屬於單總線,和DS18B20類似。

煙霧傳感器

從零開發智能家居系統(二)——硬件部分

MQ_2

該模塊有兩種方式進行數據採集,模擬和數字。這裡我選擇的是模擬量的,因為我的上位機需要歷史數據,數字式的只有0和1。具體介紹可以從代碼中看出。

人體紅外感應模塊

從零開發智能家居系統(二)——硬件部分

當有人進入其感應範圍則輸入高電平,人離開感應範圍則自動延時關閉高電平。輸出低電平。因此這個模塊很容易編寫代碼進行驅動。

光敏傳感器

從零開發智能家居系統(二)——硬件部分

TELESKY

光敏傳感器和煙霧傳感器驅動方式很類似,都可以利用STM32內部的ADC進行驅動轉化,進而可以得到更加準確的數據。


演示視頻


今天的講解就到這裡了,有知識後如何,請點贊、關注、繼續期待下一篇。

相關推薦

推薦中...