Professional Documents
Culture Documents
Arduino Controlled Pin Using GSM
Arduino Controlled Pin Using GSM
h>
byte incomingByte;
long previousWH = 0;
int L1 = A2;
int L2 = A3;
int L3 = A4;
float average = 0;
float KWH = 0;
float I = 0;
float UNIT = 0;
void setup()
{
callib(A1);
long timerSec= 0;
Serial.begin(9600);
lcd.begin (20,4);
void loop()
Serial.println(getVoltage(A1,1000));
Serial.println(getACcurrent(A0,1000));
previousMillis = millis();
float I = getACcurrent(A0,1000);
float V = (getVoltage(A1,1000));
float P = (V*I*1);
Serial.print("ENERGY = ");
Serial.print(KWH);
lcd.setCursor(0 , 0);
lcd.print("VOLTAGE = ");
lcd.print(V);
lcd.print("V");
lcd.setCursor(0 , 1);
lcd.print("CURRENT = " );
lcd.print(I);
lcd.print("A");
lcd.setCursor(0 , 2);
lcd.print("ENERGY = " );
lcd.print(KWH);
lcd.print("KWH");
lcd.setCursor(0 , 3);
lcd.print("UNIT = ");
lcd.print(UNIT);
if (UNIT<1)
else if (UNIT>=1)
lcd.setCursor(0 , 2);
analogWrite(A2,225); //LOAD 1
analogWrite(A4,LOW); //LOAD 3
while(flagme)
if (UNIT>1)
Serial.println("AT+CMGF=1");
delay(2000);
Serial.print("AT+CMGS=\"");
Serial.print(phone_no);
Serial.write(0x22);
Serial.write(0x0D);
Serial.write(0x0A);
delay(2000);
delay(500);
Serial.println(char(26));
flagme = false;
while (Serial.available())
Serial.write(incomingByte);
}
if (readBuffer=="0")
if (readBuffer=="1")
if (readBuffer=="2")
if (readBuffer=="3")
if (readBuffer=="4")
}
if (readBuffer=="5")
readBuffer = "";
while(Serial.available())
Serial.write(Serial.read());
//CURRENT SENSOR
long acc = 0;
acc +=(adc*adc);
delay(1);
//VOLTAGE SENSOR
long acc=0;
acc += (adc*adc);
delay(1);
return (sqrt(acc/navg)*8.7185);
}
float tcal=0;
for(int i=0;i<1000;i++)
tcal +=analogRead(pin);
refVal=tcal/1000;
Serial.println(refVal);