Điện tử vuotlen.com

Bếp thông minh

Bếp thông minh

Link kiện: Arduino Uno, Dht11, Diode, Lm016L, Logic State, Motor, Mq-2 Gas Sensor, Relay, Res, Tip41 (Transitor).

Mô hình:

Proteus:

 

Arduino IDE:

#include <DHT.h>

#include <LiquidCrystal.h>

 

DHT dht(8, DHT11);

LiquidCrystal lcd(7, 6 , 5, 4, 3, 2);

 

int Quatphong = 9;

int Cuathonggio = 10;

int Quatthonggio = 11;

float gas_sensor = 12;

// float gas_sensor = A5;

float nhietdo;

float doam;

float gas;

void setup() {

  // put your setup code here, to run once:

  pinMode(Quatphong, OUTPUT);

  pinMode(Cuathonggio, OUTPUT);

  pinMode(Quatthonggio, OUTPUT);

  lcd.begin(16, 2);

  lcd.print("Bep thong minh");

  lcd.setCursor(0,1);

  lcd.print("DHT11 + MQ2");

  delay(500);

  dht.begin();

}

 

void dieukhienthietbi(){

  if((gas == HIGH) || (doam > 85)){

    digitalWrite(Cuathonggio, HIGH);

    digitalWrite(Quatthonggio, HIGH);

  }else{

    digitalWrite(Cuathonggio, LOW);

    digitalWrite(Quatthonggio, LOW);

  }

  if(nhietdo > 32){

    digitalWrite(Quatphong, HIGH);

  }else{

    digitalWrite(Quatphong, LOW);

  }

}

 

void loop() {

  // put your main code here, to run repeatedly:

  nhietdo = dht.readTemperature();

  doam = dht.readHumidity();

  gas = digitalRead(gas_sensor);

  // gas = map(analogRead(gas_sensor), 0, 1023, 200, 10000);

  lcd.clear();

  lcd.print("T: ");

  lcd.print(nhietdo);

  lcd.print("*C H:");

  lcd.print(doam);

  lcd.print("%");

  lcd.setCursor(0,1);

  lcd.print("Nong do gas: ");

  lcd.print(gas);

  dieukhienthietbi();

  delay(1000);

}