Skip to content

Latest commit

 

History

History
118 lines (95 loc) · 2.33 KB

README.md

File metadata and controls

118 lines (95 loc) · 2.33 KB

☢️Pengaduk-Nutrisi☢️

Run Website -> not available

Schematic🗺️

Wiring

Documentation📒

LCD 20x4 with I2C Pin Use to WeMos D1 R2

PIN LCD Type Pin WeMos D1 R2
SDA Communication Serial SDA
SCL Communication Serial SCL
GND Ground GND
5V VCC 5V

pH Sensor pH-4502C Pin Use to WeMos D1 R2

PIN pH-4502C Type Pin WeMos D1 R2
DATA Communication A0
GND Ground GND
5V VCC 5V

Water Level Sensor XKC-Y25-V Pin Use to WeMos D1 R2

PIN XKC-Y25-V Type Pin WeMos D1 R2
DATA Communication D7
GND Ground GND
5V VCC 5V

LED Pin Use to WeMos D1 R2

PIN LED Type Pin WeMos D1 R2
DATA Communication D8
GND Ground GND
5V VCC 5V

Relay Pin Use to WeMos D1 R2

PIN RELAY Type Pin WeMos D1 R2
IN1 Communication D6
IN2 Communication D5
IN3 Communication D4
IN4 Communication D3
GND Ground GND
5V VCC 5V

Pin Use to WeMos D1 R2

PIN WeMos D1 R2 Type Pin WeMos D1 R2
Pin LED DATA D8
D2 DATA D7
D1 DATA *
D0 DATA D3
* DATA D4
A0 DATA D5
* DATA D6

Rumus pH Sensor pH-4502C

// pH sensor
float calibration = 30.00; //21.42 - change this value to calibrate
const int analogInPin = A0; 
int sensorValue = 0; 
unsigned long int avgValue; 
float b;
int buf[10],temp;
float phValueFinal;

void pHsensor() {
  for(int i=0;i<10;i++) 
 { 
 buf[i]=analogRead(analogInPin);
 delay(30);
 }
 for(int i=0;i<9;i++)
 {
 for(int j=i+1;j<10;j++)
 {
 if(buf[i]>buf[j])
 {
 temp=buf[i];
 buf[i]=buf[j];
 buf[j]=temp;
 }
 }
   }
 avgValue=0;
 for(int i=2;i<8;i++)
 avgValue+=buf[i];
 float pHVol=(float)avgValue*5.0/1024/6;
 float phValue = -5.70 * pHVol + calibration;
 phValueFinal = phValue;
 Serial.print("pH: ");
 Serial.println(phValue);
}