大家好,創(chuàng)客e工坊今天來教教大家制作一個簡單好玩的自動加濕器。
至于為什么要做一個加濕器,還是自動的呢,看看下面就知道了
接通加濕器一分鐘這么多的水汽,如果養(yǎng)的不是烏龜換個寵物估計已經(jīng)悶涼了,沒有人看著給植物加濕估計也是差不多了的。
所以,自動加濕器的制作還是有那么一點點實際作用。其實就是想折騰折騰,閑不來。那么我們就開始吧!
制作東西,元器件是少不了的
控制器選擇arduino UNO 的單片機板子,主要原因是使用方便,內置了許多庫函數(shù)直接調用實現(xiàn)簡單;
感受環(huán)境濕度,這里使用DHT11溫濕度傳感器,非常低價的器件卻能夠同時采集到溫度和濕度兩個數(shù)據(jù),引腳也少;
顯示器選擇OLED屏的原因也是引腳少只有四根,像LCD1602,LCD12864十多二十根引腳使用起來比較麻煩;
繼電器控制加濕器電源,它的輸出端有三個接口,一個是公共端,一個是常閉接口(也就是一直閉合連接的接口),一個是常開接口(就是一直斷開連接的接口),若是給繼電器的輸入端加上5V信號,常開接口和常閉接口的狀態(tài)就會對換。
接線部分
傳感器連接
arduino UNO控制器與DHT11溫濕度傳感器的連接只需要三根線,由于我們寫的程序從8號引腳讀取數(shù)據(jù),所以傳感器的數(shù)據(jù)連接控制器8腳,電源與控制器共用。連線如下
arduino -- DHT11
3.3v ---連接--- VCC
8腳 ---連接--- DAT
GND ---連接--- GND
OLED屏的數(shù)據(jù)傳輸使用的是IIC接口,5V電源供電。電源與控制器共用,數(shù)據(jù)線SDA連接控制器的SDA,時鐘線的SCL連接控制器的SCL,如下所寫:
arduino -- OLED屏
GND ---連接--- GND
5v ---連接--- VCC
SCL ---連接--- SCL
SDA ---連接--- SDA
繼電器主要還是起一個開關作用,以它來決定加濕器的電源通斷,使用簡單:
arduino -- 繼電器
5V ---連接--- DC
GND ---連接--- DC-
7腳 ---連接--- IN1
將加濕器的電源線剪斷,得到一紅一黃兩根漆包線,漆包線外表絕緣不導電,需要用銼刀將它們的絕緣層給搓掉。搓掉后用萬用表測量得知紅線為電源正極,黃線為電源負極,與繼電器相連接所有連線就完畢了:
最后是給arduino UNO控制器編寫程序,讀取環(huán)境數(shù)據(jù)之后控制加濕器。
程序部分
首先編寫濕度讀取程序,讀取溫濕度傳感器DHT11的數(shù)據(jù)
包含頭文件dht11.h里面有需要用到的函數(shù),根據(jù)連線定義傳感器數(shù)據(jù)腳為8,并且初始化一個DHT11對象變量。
濕度讀取1
使用DHT11.read語句從8號腳將數(shù)據(jù)讀取并存到DHT11對象變量中,再將其中溫度和濕度分別提取到WD和SIDU中
濕度讀取2
判斷程序編寫,決定什么時候給加濕器供電工作。
思路是當濕度小于80%,空氣不夠濕潤則開啟加濕器;如果大于或者等于80%,空氣太濕潤了就關閉加濕器。
判斷過程
使用的是if...else...語句,小于80%就執(zhí)行上面的句子,否則運行下面的句子。
最后進行自動加濕器的工作狀態(tài)顯示即可,整體主要程序如下,十分簡單。
將它們下載到arduino UNO控制器中,接上電源就可以看到效果了
聯(lián)系客服