Kamis, 16 Maret 2023

Hari Ke-26 PKL di ISTN

  PKL HARI KEDUAPULUH ENAM


Nama               :   Helena Margaretha M.
NISN               :   0064331270
Hari, Tanggal   :  Kamis, 16 Maret 2023
Asal Sekolah    :  SMKN 2 Depok
Tempat PKL     :  ISTN FSTI
Hobi                 :  Bermain game dan membaca novel.



   Kegiatan pada hari keduapuluh enam PKL :

08:30 s/d 09:30 :  Kurvey (lap meja, menyapu, dan mengepel.)


09:30 s/d 12:00 : Materi wokwi arduino.
12:00 s/d 13:00 :  ISOMA (Istirahat, sholat, makan.)
13:00 s/d 15:30 : Praktek Wokwi.


 15:30 s/d Pulang : Membuat blog.


  • MATERI :
  1. DHT22 merupakan sensor yang dapat mengukur suhu dan juga kelembaban, sensor berikut ini mempunyai keluaran berwujud sinyal digital.


  2. Kodingan DHT22 + LED 

#define LRED 5
#define LYELLOW 4
#define LGREEN 3
#define LRED2 A0
#define LYELLOW2 A1
#define LGREEN2 A2
#define DHT_PIN A3
#define LBLUE 2  
#define TOMBOL1 6

#include "DHTesp.h"
#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
DHTesp dhtSensor;


void setup() {
   Serial.begin(115200);
   dhtSensor.setup(DHT_PIN, DHTesp::DHT22);

  lcd.begin(16, 2);
  pinMode(LRED, OUTPUT);
  pinMode(LYELLOW, OUTPUT);
  pinMode(LGREEN, OUTPUT);
  pinMode(LRED2, OUTPUT);
  pinMode(LYELLOW2, OUTPUT);
  pinMode(LGREEN2, OUTPUT);

  pinMode(LBLUE, OUTPUT);
  pinMode(TOMBOL1, INPUT_PULLUP);
}

void loop() { 
 TempAndHumidity  data = dhtSensor.getTempAndHumidity();
 float  T=data.temperature;
  float H=data.humidity;
if(T<=25){//HIJAU1
    digitalWrite(LGREEN,HIGH);
      digitalWrite(LRED,LOW);
        digitalWrite(LYELLOW,LOW);
}
else if(T<=45){//KUNING1
   digitalWrite(LGREEN, LOW);
      digitalWrite(LRED,LOW);
        digitalWrite(LYELLOW,HIGH);
}
else if(T<=60){//MERAH1
digitalWrite(LGREEN,LOW);
      digitalWrite(LRED,HIGH);
        digitalWrite(LYELLOW,LOW);
}

if(H<=50){//HIJAU2
   digitalWrite(LGREEN2, HIGH);
      digitalWrite(LRED2,LOW);
        digitalWrite(LYELLOW2,LOW);
}
else if(H<=85){//KUNING2
  digitalWrite(LGREEN2, LOW);
      digitalWrite(LRED2,LOW);
        digitalWrite(LYELLOW2,HIGH);
}
else if(H<=100){//MERAH2
 digitalWrite(LGREEN2, LOW);
      digitalWrite(LRED2,HIGH);
        digitalWrite(LYELLOW2,LOW);

}
  lcd.setCursor(0, 0);
  lcd.print("Temp: " + String(T, 2) + "°C");
   lcd.setCursor(0, 1);
  lcd.print("Humidity: " + String(H, 1) + "%");
   Serial.println("Temp: " + String(T, 2) + "°C");
  Serial.println("Humidity: " + String(H, 1) + "%");
  Serial.println("---");
  delay(1000);
}


void standby(int waktu){
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("SELAMAT DATANG !");
  lcd.setCursor(1, 1);
  lcd.print("ALL BY HELENA!");
      digitalWrite(LRED,LOW);
      digitalWrite(LYELLOW,LOW);
      digitalWrite(LGREEN,LOW);
      digitalWrite(LRED2,LOW);
      digitalWrite(LYELLOW2,LOW);
      digitalWrite(LGREEN2,LOW);
      digitalWrite(LBLUE,HIGH);
      delay(waktu);
}


* Penjelasan :
Disini saya menggunakan LCD 16x2 tetapi bukan yang i2c, saya menghubungkan pin LCD pada pin digital yang berada arduino, yaitu :

  • K, RW, dan VSS pada pin GND,
  • VDD & A pada pin 5V,
  • RS pada pin digital 12,
  • E pada pin digital 11,
  • D4 pada pin digital 10,
  • D5 pada pin digital 9,
  • D6 pada pin digital 8, dan
  • D7 pada pin digital 7.


Untuk LED dan Button saya menghubungkan pada pin :

  • LED 1 pada pin digital 5 dan GND,
  • LED 2 pada pin digital 4 dan GND,
  • LED 3 pada pin digital 3 dan GND,
  • LED 4 pada pin digital A0 dan GND,
  • LED 5 pada pin digital A1 dan GND,
  • LED 6 pada pin digital A2 dan GND,
  • LED 7 pada pin digital 2 dan GND, dan
  • Button pada pin digital 6 dan GND.


Dan untuk DHT22 saya menghubungkannya pada pin :

  • GND pada pin GND,
  • NC artinya Not Connected jadi tidak dihubungkan pada pin manapun,
  • SDA pada A3, dan
  • VCC pada 3.3V.


0 comments:

Posting Komentar