Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Project Documentation

Arduino Mega 2560 Based Water Quality Monitoring System with GSM Reporting and Wi-Fi Connectivity

Image of Arduino Mega 2560 Based Water Quality Monitoring System with GSM Reporting and Wi-Fi Connectivity

Circuit Documentation

Summary

This circuit integrates various sensors and modules to interface with an Arduino Mega 2560 microcontroller. The circuit includes a PH Meter, a SIM900A GSM module, a Wifi module ESP8266-01, an I2C LCD display (20x4), a temperature sensor, a turbidity module, a TDS (Total Dissolved Solids) sensor module, an LED with a resistor, a plastic solenoid valve, an MT3608 boost converter, a water pump, and an HC-SR04 ultrasonic sensor. The Arduino Mega 2560 serves as the central processing unit, collecting data from the sensors, controlling the LED, and communicating with the GSM and Wifi modules for external connectivity.

Component List

  • PH Meter: Measures the hydrogen-ion concentration in water.
  • SIM900A: GSM/GPRS module for cellular network communication.
  • Arduino Mega 2560: Microcontroller board based on the ATmega2560.
  • Wifi module ESP8266-01: Wifi module for wireless network communication.
  • Lcd 20x4 i2c: 20x4 character LCD display with an I2C interface.
  • Temperature Sensor: Measures temperature.
  • Turbidity Module: Measures the turbidity of water.
  • TDS Sensor Module: Measures the total dissolved solids in water.
  • LED (green): A green light-emitting diode.
  • Resistor: Limits current to the LED.
  • Plastic Solenoid Valve: Controls the flow of liquid.
  • MT3608: A boost converter module.
  • Water Pump: Pumps water through the system.
  • HC-SR04 Ultrasonic Sensor: Measures distance via ultrasonic waves.

Wiring Details

PH Meter

  • Signal connected to Arduino Mega 2560 A0
  • VCC connected to 5V power net
  • GND connected to GND net

SIM900A

  • GND connected to GND net
  • DB9-3 (RXD) connected to Arduino Mega 2560 D15/RX3
  • DB9-2 (TXD) connected to Arduino Mega 2560 D14/TX3
  • 5V connected to 5V power net

Arduino Mega 2560

  • 5V connected to 5V power net
  • GND connected to GND net
  • 3V3 connected to Wifi module ESP8266-01 +3V3
  • A0-A3 connected to various sensor outputs
  • D20/SDA, D21/SCL connected to I2C LCD display
  • D16 PWM/TX2, D17 PWM/RX2 connected to Wifi module ESP8266-01 TX/RX
  • D14/TX3, D15/RX3 connected to SIM900A TXD/RXD
  • D47, D49, D53 connected to HC-SR04 Ultrasonic Sensor and Turbidity Module

Wifi module ESP8266-01

  • RX connected to Arduino Mega 2560 D17 PWM/RX2
  • TX connected to Arduino Mega 2560 D16 PWM/TX2
  • GND connected to GND net
  • +3V3 connected to Arduino Mega 2560 3V3

Lcd 20x4 i2c

  • GND connected to GND net
  • 5v connected to 5V power net
  • SCA connected to Arduino Mega 2560 D20/SDA
  • SCL connected to Arduino Mega 2560 D21/SCL

Temperature Sensor

  • Temp GND Black connected to GND net
  • Temp VDD Red connected to 5V power net
  • Temp DQ Data Yellow connected to Arduino Mega 2560 A1

Turbidity Module

  • GND connected to GND net
  • AO connected to Arduino Mega 2560 A2
  • DO connected to Arduino Mega 2560 D53
  • VCC connected to 5V power net

TDS Sensor Module

  • TDS Negative connected to 5V power net
  • TDS Positive connected to GND net
  • TDS A connected to Arduino Mega 2560 A3

LED: Two Pin (green)

  • cathode connected to GND net
  • anode connected to one end of the resistor

Resistor

  • pin1 connected to LED anode
  • pin2 connected to 5V power net

Plastic Solenoid Valve

  • pin1 connected to MT3608 VOUT+
  • pin2 connected to MT3608 VOUT-

MT3608

  • VOUT+ connected to Plastic Solenoid Valve pin1
  • VIN+ connected to 5V power net
  • VOUT- connected to Plastic Solenoid Valve pin2
  • VIN- connected to GND net

Water Pump

  • VCC connected to 5V power net
  • GND connected to GND net

HC-SR04 Ultrasonic Sensor

  • VCC connected to 5V power net
  • TRIG connected to Arduino Mega 2560 D47
  • ECHO connected to Arduino Mega 2560 D49
  • GND connected to GND net

Documented Code

Arduino Mega 2560 Code (sketch.ino)

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

Note: The provided code is a template and does not include specific functionality. It should be expanded to initialize the connected components and handle the logic for sensor readings, actuator control, and communication.