#include <DHTesp.h>
#define DHTPIN 32
DHTesp dht;
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
int pir =33;
int IP;
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 19
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
int potentiometer =35;
int val1 = 0 ;
int val2 =0;
#define TRIG_PIN 17
#define ECHO_PIN 16
void setup() {
dht.setup(DHTPIN, DHTesp::DHT22);
lcd.init();
lcd.clear();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print(" HELLO Teacher");
delay(1000);
lcd.clear();
Serial.begin(115200);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(potentiometer, INPUT);
pinMode(pir,INPUT);
pinMode(13, INPUT);
sensors.begin();
}
void loop() {
//Ultrasonic
int data, cm;
// Trigger the ultrasonic sensor
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
data = pulseIn(ECHO_PIN, HIGH);
cm = data * 0.034 / 2; // คำนวณระยะทาง
lcd.setCursor(8, 1);
lcd.print(" D:=");
lcd.print(cm);
lcd.print("CM");
delay(1000);
//DHT22
float h = dht.getHumidity();
float t = dht.getTemperature();
lcd.setCursor(0, 0);
lcd.print("T:=");
lcd.print(t);
lcd.setCursor(8, 0);
lcd.print(" H:=");
lcd.print(h);
//potentiometer
val1 = analogRead(potentiometer);
val2 = map(val1,0,4095,0,5);
lcd.setCursor(0,3);
lcd.print("volt=");
lcd.print(val2);
lcd.print("V");
delay(1000);
//Motion-Sensor
IP=digitalRead(pir);
delay(100);
if(IP==1){
lcd.setCursor(11,3);
lcd.print("Detected! ");
delay(1000);
}
else{
lcd.setCursor(8,3);
lcd.print("Notfound!");
delay(1000);
}
//DS18B20
lcd.setCursor(0,1);
sensors.requestTemperatures(); //อ่านข้อมูลจาก library
lcd.print("T:=");
lcd.print(sensors.getTempCByIndex(0)); // แสดงค่า อูณหภูมิ
delay(1000);
//Photoresister
Serial.println(analogRead(13));
if(analogRead(13) <= 1000)
{
lcd.setCursor(0,2);
lcd.print("close");
delay(1000);
}
else{
lcd.setCursor(0,2);
lcd.print("distant");
delay(1000);
}
}
Loading
ds18b20
ds18b20