Coding Arduino
Coding Arduino
Coding Arduino
#include <RTClib.h>
//DS3231 rtc;
RTC_DS3231 rtc;
#include <SPI.h> #include <SD.h> #include <Wire.h>
#include <LiquidCrystal_I2C.h>
void setup()
{
pinMode(analogPin, INPUT); Serial.begin(9600);
// rtc.setDate(18, 7, 2021);
// rtc.setTime(13, 12, 00);
// rtc.setDOW(4);
Serial.println("Energy Meter Panel Surya"); Serial.println(" ");
// while(!Serial)
//{
// ;
// }
Serial.println("Initializing SD card"); if (!SD.begin(4))
{
Serial.println(" SD card Gagal! ");
//while(1);
}
Serial.println("SD card Berhasil ");
if (rtc.lostPower()) {
Serial.println("RTC lost power, lets set the time!"); rtc.adjust(DateTime(F( DATE
), F( TIME ))); // following line
sets the RTC to the date & time this sketch was compiled
// Set the current date, and time in the following format:
// rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0)); // This line sets the RTC with an
explicit date & time, for example to set
}
lcd.init();
}
void arus1()
{
nilaiadc1=analogRead(pinADC1); tegangan1=(nilaiadc1/1024.0)*5000;
nilaiarus1=((tegangan1-teganganoffset1)/sensitivitas1);
nilaiarus1=nilaiarus1+5.027;
}
void arus2()
{
nilaiadc2=analogRead(pinADC2); tegangan2=(nilaiadc2/1024.0)*5000;
nilaiarus2=((tegangan2-teganganoffset2)/sensitivitas2); nilaiarus2=nilaiarus2+5.1;
}
void teg()
{
value=analogRead(analogPin); Vmodul=(value*5.0)/1024.0; hasil=Vmodul/(R2/(R1+R2));
hasil=hasil-0.55;
}
void daya1()
{
nilaidaya1=hasil*nilaiarus1;
}
void daya2()
{
nilaidaya2=hasil*nilaiarus2;
}
void loop()
{
arus1(); Serial.print("Arus 1 = "); Serial.print(nilaiarus1,3); Serial.println("
A");
myFile.print("Nilai Arus 1 : "); myFile.println(nilaiarus1,3);
//lcd.setCursor(0,0);
//lcd.print("Nilai Arus : "); lcd.setCursor(0,0); lcd.print(nilaiarus1);
//lcd.print(nilaidaya2);
// Serial.print(" ");
Serial.print('/'); Serial.print(now.month(), DEC); Serial.print('/');
Serial.print(now.year(), DEC); Serial.print('\t');
Serial.println();
//Serial.print(rtc.getDOWStr());
//Serial.print(" ");
//Serial.print(rtc.getDateStr());
//Serial.print(" ");
//Serial.println(rtc.getTimeStr());
//Serial.println(" ");
//Serial.println(" ");
//myFile.print("Waktu = ");
//myFile.print(rtc.getDOWStr());
/*myFile.print(" "); myFile.print(rtc.getDateStr()); myFile.print(" ");
myFile.println(rtc.getTimeStr()); myFile.println(" "); myFile.println(" ");*/
delay(2000);