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