Code 021810
Code 021810
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
#include <SoftwareSerial.h>
ESP8266 wifi(&Serial);
BlynkTimer timer;
////////////////////////////////////////
#include <DHT.h>
#define DHTPIN 3
#define DHTTYPE DHT11 // DHT11 TEMP
DHT dht(DHTPIN, DHTTYPE);
float Fahrenheit = 0.00;
#include <CapacitiveSensor.h>
CapacitiveSensor cs_6_9 = CapacitiveSensor(6,9); //9 pin sensor
//////////////////////////////////////////
void respsensor()
{
delay(1000);
detachInterrupt(0);
time=millis()-oldtime; //finding total time for one rev
rpm=(rev/time)*60; //calculating the rpm
oldtime=millis();
rev=0;
Blynk.virtualWrite(V0, rpm);
attachInterrupt(0,isr,RISING);
}
/////////////////////////////////////////////
void gas()
{
int gas = analogRead(A0); //air
int g= gas*0.09775;//0.15
Blynk.virtualWrite(V1, g);
}
////////////////////////////////////////////////////////
void vibsensor()
{
int vibsensor = analogRead(A2);
int v = vibsensor*0.09775;
Blynk.virtualWrite(V2, v);
///////////////////////////////////////////
void tempsensor()
{
float h = dht.readHumidity();
float t = dht.readTemperature();
Fahrenheit = ( t * 1.8 ) + 32; //T(°F) = T(°C) × 9/5 + 32
Blynk.virtualWrite(V3, t);
Blynk.virtualWrite(V4, h);
}
/////////////////////////////////////////////
////////////////////////////////////////
void touchchecking()
{
long sensor = cs_6_9.capacitiveSensor(50);
int p = digitalRead(11);
Blynk.virtualWrite(V7, sensor);
//////////////////////////
if (p == LOW)
{
Blynk.virtualWrite(V5, " No shock");
digitalWrite(7, LOW);
}
else
{
Blynk.virtualWrite(V5, " shock");
Blynk.logEvent("shock_event");
digitalWrite(7, HIGH);
}
}
//////////////////////////////////////////
void setup()
{
pinMode(7, OUTPUT);
pinMode(12, OUTPUT);
digitalWrite(12, LOW);
digitalWrite(7, LOW);
pinMode(11, INPUT);
pinMode(3, INPUT);
dht.begin();
cs_6_9.set_CS_AutocaL_Millis(0xFFFFFFFF);
Serial.begin(9600);
delay(10);
Blynk.begin(auth, wifi, ssid, pass);
timer.setInterval(1000L, respsensor);
timer.setInterval(1000L, gas);
timer.setInterval(1000L, vibsensor);
timer.setInterval(1000L, tempsensor);
//timer.setInterval(1000L, shock);
timer.setInterval(1000L, touchchecking);
attachInterrupt(0,isr,RISING);
}
void loop()
{
Blynk.run();
timer.run();
respsensor();
gas();
vibsensor();
tempsensor();
// shock();
touchchecking();
}