Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Blynk.h>
- #define BLYNK_PRINT Serial
- #include <SPI.h>
- #include <Ethernet.h>
- #include <BlynkSimpleEthernet.h>
- #include <DHT.h>
- //#include <SimpleTimer.h>
- char auth[] = "Token: dd86e26...........";
- int sensorPin = 5; // Set up a PIR sensor pin
- int pirState = LOW;
- int val = 0;
- int relayPin = 2;
- bool relayState = false;
- #define DHTPIN 3 // What digital pin we're connected to
- #define DHTTYPE DHT11 // DHT 11
- //#define DHTTYPE DHT22 // DHT 22, AM2302, AM2321
- //#define DHTTYPE DHT21 // DHT 21, AM2301
- DHT dht(DHTPIN, DHTTYPE);
- BlynkTimer timer;
- void sendSensor()
- {
- float h = dht.readHumidity();
- float t = dht.readTemperature(); // or dht.readTemperature(true) for Fahrenheit
- if (isnan(h) || isnan(t)) {
- Serial.println("Failed to read from DHT sensor!");
- return;
- }
- else {
- // You can send any value at any time.
- // Please don't send more that 10 values per second.
- Blynk.virtualWrite(V5, h);
- Blynk.virtualWrite(V6, t);
- }
- }
- void setup()
- {
- pinMode(sensorPin, INPUT);
- pinMode(relayPin, OUTPUT);
- Serial.begin(9600);
- Blynk.begin(auth);
- dht.begin();
- timer.setInterval(1000L, sendSensor);
- timer.setInterval(50L, pirSensor);
- }
- void pirSensor() {
- if (digitalRead(sensorPin) == HIGH && !relayState) {
- // If Motion detected and relay state is off
- relayState = true;
- digitalWrite(relayPin, HIGH); // Turn Relay ON
- Serial.println("Relay is ON");
- }
- else if (digitalRead(sensorPin) == LOW) {
- relayState = false;
- digitalWrite(relayPin, LOW); // Turn Relay OFF
- Serial.println("Relay is OFF");
- }
- }
- void loop() {
- Blynk.run();
- timer.run();
- }
Advertisement
Add Comment
Please, Sign In to add comment