Description
- HIGH QUALITTY FR4 DOUBLE SIDE PCB
- All components through hole type. SMD COMPONENTS ARE NOT INCLUDED IN PCB
- OPTO COUPLER – EL817
- RELAY DRIVER – ULN2003/ILN2003
- RESISTOR -NETWORK TYPE 1K 5PIN (MODEL NO – A05-102JP)
- LED SIZE -3MM
- CAPACITOR -1000UF 10V OR 16V AND 1UF MLCC
- FUSE – RGEF300 16V 3A PPTC Resettable Fuse
- OUTPUT CONEECTOR -XY128V 3 PIN 5MM PITCH
- DIODE – 1N5822 40V 3A SCHOTTKY DIODE
SAMPLE PROGRAM
// SELECT ESP32 Dev Module
#include “DHT.h”
//// relay pins
#define relay1 23
#define relay2 22
#define relay3 21
#define relay4 19
#define relay5 32
#define relay6 33
#define relay7 25
#define relay8 26
//DHT11 OR DHT22
#define DHTPIN 4
// Uncomment whatever type you’re using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
DHT dht(DHTPIN, DHTTYPE);
void setup()
{
Serial.begin(9600);
Serial.println(F(“DHTxx test!”));
dht.begin();
// initialize RELAY pins as an output.
pinMode(relay1, OUTPUT);
pinMode(relay2, OUTPUT);
pinMode(relay3, OUTPUT);
pinMode(relay4, OUTPUT);
pinMode(relay5, OUTPUT);
pinMode(relay6, OUTPUT);
pinMode(relay7, OUTPUT);
pinMode(relay8, OUTPUT);
digitalWrite(relay1, HIGH);
digitalWrite(relay2, HIGH);
digitalWrite(relay3, HIGH);
digitalWrite(relay4, HIGH);
digitalWrite(relay5, HIGH);
digitalWrite(relay6, HIGH);
digitalWrite(relay7, HIGH);
digitalWrite(relay8, HIGH);
timer();
digitalWrite(relay1, LOW);
digitalWrite(relay2, LOW);
digitalWrite(relay3, LOW);
digitalWrite(relay4, LOW);
digitalWrite(relay5, LOW);
digitalWrite(relay6, LOW);
digitalWrite(relay7, LOW);
digitalWrite(relay8, LOW);
timer();
}
// the loop function runs over and over again forever
void loop()
{
digitalWrite(relay1, HIGH);
timer();
digitalWrite(relay1, LOW);
digitalWrite(relay2, HIGH);
timer();
digitalWrite(relay2, LOW);
digitalWrite(relay3, HIGH);
timer();
digitalWrite(relay3, LOW);
digitalWrite(relay4, HIGH);
timer();
digitalWrite(relay4, LOW);
digitalWrite(relay5, HIGH);
timer();
digitalWrite(relay5, LOW);
digitalWrite(relay6, HIGH);
timer();
digitalWrite(relay6, LOW);
digitalWrite(relay7, HIGH);
timer();
digitalWrite(relay7, LOW);
digitalWrite(relay8, HIGH);
timer();
digitalWrite(relay8, LOW);
DHT_READ();
}
void DHT_READ(void)
{
// 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 (the default)
float t = dht.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
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(F(“Failed to read from DHT sensor!”));
return;
}
// Compute heat index in Fahrenheit (the default)
float hif = dht.computeHeatIndex(f, h);
// Compute heat index in Celsius (isFahreheit = false)
float hic = dht.computeHeatIndex(t, h, false);
Serial.print(F(“Humidity: “));
Serial.print(h);
Serial.print(F(“% Temperature: “));
Serial.print(t);
Serial.print(F(“°C “));
Serial.print(f);
Serial.print(F(“°F Heat index: “));
Serial.print(hic);
Serial.print(F(“°C “));
Serial.print(hif);
Serial.println(F(“°F”));
}
void timer(void)
{
delay(500);
}