電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用Arduino的溫控風(fēng)扇

使用Arduino的溫控風(fēng)扇

2022-10-21 | zip | 0.13 MB | 次下載 | 2積分

資料介紹

描述

在本文中,您將了解使用 DHT22 傳感器和繼電器的 Arduino 溫控風(fēng)扇。我們將使用 DHT22 傳感器獲取溫度值,并將此溫度值打印在 LCD 上。然后我們將檢查溫度值是否大于35,如果溫度大于35,則繼電器將激活,風(fēng)扇將開(kāi)始旋轉(zhuǎn)。

介紹

許多地方都需要溫度控制,例如服務(wù)器機(jī)房、房屋、工業(yè)等。所以這個(gè)項(xiàng)目對(duì)于了解基礎(chǔ)知識(shí)以及如何控制家中的溫度非常有用。你可以把它當(dāng)作一個(gè)可以在任何地方使用的 DIY 項(xiàng)目。在這里,溫控風(fēng)扇將對(duì)溫度變化起作用。

該項(xiàng)目由NextPCB贊助

NextPCB 是全球最有經(jīng)驗(yàn)的 PCB 制造商之一,專(zhuān)注于 PCB 和組裝行業(yè)超過(guò) 15 年。NextPCB 不僅可以以最高質(zhì)量標(biāo)準(zhǔn)提供最具創(chuàng)新性的印刷電路板和組裝技術(shù),最快的交貨周轉(zhuǎn)時(shí)間為 24 小時(shí)。

伙計(jì)們,如果您有 PCB 項(xiàng)目,請(qǐng)?jiān)L問(wèn)他們的網(wǎng)站并獲得令人興奮的折扣和優(yōu)惠券

5–10 件 PCB 原型只需 0 美元:-點(diǎn)擊這里

注冊(cè)并從 NextPCB 獲得 100 美元:-點(diǎn)擊這里

查看有關(guān) PCB 組裝功能的更多信息:單擊此處

它是如何工作的?

該項(xiàng)目分為三個(gè)部分 -

第一步,傳感器通過(guò)溫濕度傳感器DHT11感應(yīng)溫度。

第二步,獲取傳感器的輸出并將溫度值轉(zhuǎn)換為合適的攝氏溫度值。風(fēng)扇速度由 PWM 信號(hào)控制。系統(tǒng)的最后一部分在 LCD 和風(fēng)扇運(yùn)行上顯示濕度和溫度。

然后我們根據(jù)要求對(duì)我們的 Arduino 進(jìn)行了編程。處理這個(gè)非常簡(jiǎn)單。我們從 Arduino 生成 PWM 并將其放在晶體管的基極端子。然后晶體管相對(duì)于 PWM 輸入產(chǎn)生電壓。

連接

以下是我們執(zhí)行此項(xiàng)目所需的組件。大多數(shù)組件都可以在我們的網(wǎng)站上輕松獲得。

第 1 步:收集所有這些組件

pYYBAGNPQrWATv9sAACtXr4PXh8076.png
?

1.1 所需組件

  • Arduino UNO
  • USB A 轉(zhuǎn) B
  • 面包板
  • DHT11傳感器
  • 直流風(fēng)扇
  • 2n2222晶體管
  • 16x2 液晶
  • 連接線(xiàn)

這個(gè)連接很容易做到,這里連接了一個(gè) LCD 用于顯示溫度和風(fēng)扇速度狀態(tài)。

第 2 步:與 Arduino 的 LCD 連接

?

pYYBAGNPQreAeLDdAAEG2Eh-Vq4663.png
?

LCD直接連接到Arduino:

將 LCD-RS、EN、D4、D5、D6 和 D7 的引腳連接到 Arduino 的數(shù)字引腳編號(hào) 7、6、5、4、3 和 2。

第三步:DHT 11溫濕度傳感器連接

并且 DHT11 傳感器模塊也連接到 Arduino 的數(shù)字引腳 12。數(shù)字引腳 9 用于通過(guò)晶體管控制風(fēng)扇速度。

poYBAGNPQrqAAsSmAAI1atEgQA4882.png
?

第四步:上傳代碼

下面的部分是代碼。在這里,第一個(gè)表格讓您了解 PWM 值將是風(fēng)扇的速度。您可以根據(jù)需要更改值。

代碼

poYBAGNPQryAXJ-MAAA7XmYjjgM203.png
?

?

在編寫(xiě)代碼之前,請(qǐng)參考下表。

我們包含了 DHT22 傳感器和 LCD 的庫(kù)。

這些庫(kù)將有助于使代碼更容易。由于我們正在使用庫(kù),因此我們必須確保我們正在使用的庫(kù)已安裝在我們的 Arduino IDE 中。要在 Arduino IDE 中安裝,請(qǐng)轉(zhuǎn)到 Sketch 選項(xiàng)卡,下拉到 Include Library,然后單擊 Manage Library。在 Library Manager 中搜索 DHT 和 LiquidCrystal,然后安裝。

#include "DHT.h"
#include "LiquidCrystal.h"

PWM 值與速度

//NextPCB
#include "DHT.h"
#include
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
#define DHTPIN 12     // what pin we're connected to


#define DHTTYPE DHT11   // DHT 11 

#define pwm 9

byte degree[8] = 
              {
                0b00011,
                0b00011,
                0b00000,
                0b00000,
                0b00000,
                0b00000,
                0b00000,
                0b00000
              };
// Initialize DHT sensor for normal 16mhz Arduino
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  lcd.begin(16, 2);
 lcd.createChar(1, degree);
 lcd.clear();
 lcd.print("   Fan Speed  ");
 lcd.setCursor(0,1);
 lcd.print("  Controlling ");
 delay(2000);
 analogWrite(pwm, 255);
 lcd.clear();
 lcd.print("Robu ");
 delay(2000);
  Serial.begin(9600); 
  dht.begin();
}

void loop() {
  // Wait a few seconds between measurements.
  delay(2000);

  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float h = dht.readHumidity();
  // Read temperature as Celsius
  float t = dht.readTemperature();
  // Read temperature as Fahrenheit
  float f = dht.readTemperature(true);
  
  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  // Compute heat index
  // Must send in t in Fahrenheit!
  float hi = dht.computeHeatIndex(f, h);

  Serial.print("Humidity: "); 
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("temperature: "); 
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.print(" *F\t");
  Serial.print("Heat index: ");
  Serial.print(hi);
  Serial.println(" *F");

    lcd.setCursor(0,0);
  lcd.print("temp: ");
  lcd.print(t);   // Printing terature on LCD
  lcd.print(" C");
  lcd.setCursor(0,1);
   if(t <20 )
    { 
      analogWrite(9,0);
      lcd.print("Fan OFF            ");
      delay(100);
    }
    
    else if(t==26)
    {             
      analogWrite(pwm, 51);
      lcd.print("Fan Speed: 20%   ");
      delay(100);
    }
    
     else if(t==20)
    {
      analogWrite(pwm, 102);
      lcd.print("Fan Speed: 40%   ");
      delay(100);
    }
    
     else if(t==28)
    {
      analogWrite(pwm, 153);
      lcd.print("Fan Speed: 60%   ");
      delay(100);
    }
    
    else if(t==29)
    {
      analogWrite(pwm, 204);
      
      lcd.print("Fan Speed: 80%    ");
      delay(100);
    }
     else if(t>29)
    {
      analogWrite(pwm, 255);
      lcd.print("Fan Speed: 100%   ");
      delay(100);
    } 
  delay(3000);
}

通過(guò)庫(kù)管理器將這兩個(gè)庫(kù)添加到您的 Arduino IDE。

然后我們初始化連接 LCD 和 DHT22 傳感器的引腳。之后,我們定義了我們使用的 DHT 傳感器的類(lèi)型。有許多其他類(lèi)型的 DHT 傳感器可用,例如 DHT11,因此在此處定義類(lèi)型很重要。

?

最后的話(huà)

在本文中,我們了解了如何制作溫控風(fēng)扇電路。使用 Arduino、DHT11 和其他一些組件。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)