Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

Arduino UNO-Based Environmental Monitoring System with I2C LCD Display

View and Edit Project In Cirkit DesignerImage of Arduino UNO-Based Environmental Monitoring System with I2C LCD Display

Circuit Documentation

Summary

This circuit is designed to interface various sensors and a display with an Arduino UNO microcontroller. The sensors include a soil moisture sensor, a DHT11 temperature and humidity sensor, an MQ-2 gas sensor, and an LDR module. The data from these sensors is processed by the Arduino UNO and displayed on a 16x2 I2C LCD screen.

Component List

  1. I2C LCD 16x2 Screen

    • Description: A 16x2 character LCD display with I2C interface.
    • Pins: SCL, SDA, VCC (5V), GND, VDD, VO, RS, RW, E, D0, D1, D2, D3, D4, D5, D6, D7, BLA, BLK
  2. Arduino UNO

    • Description: A microcontroller board based on the ATmega328P.
    • Pins: UNUSED, IOREF, Reset, 3.3V, 5V, GND, Vin, A0, A1, A2, A3, A4, A5, SCL, SDA, AREF, D13, D12, D11, D10, D9, D8, D7, D6, D5, D4, D3, D2, D1, D0
  3. Soil Moisture Sensor

    • Description: A sensor to measure the moisture level in the soil.
    • Pins: VCC, GND, SIG
  4. Soil Moisture Module

    • Description: A module to interface the soil moisture sensor with the microcontroller.
    • Pins: positive, negative, Analog, Digital, Ground, VCC
  5. DHT11

    • Description: A temperature and humidity sensor.
    • Pins: DATA, GND, VCC
  6. MQ-2

    • Description: A gas sensor for detecting LPG, i-butane, propane, methane, alcohol, Hydrogen, and smoke.
    • Pins: GND, VCC, ANALOG, Digital
  7. Module LDR

    • Description: A light-dependent resistor module for measuring light intensity.
    • Pins: VCC, GND, DO, AO
  8. Voltage Regulator

    • Description: A component to regulate voltage.
    • Pins: IN, GND, OUT
  9. 7.4v Battery

    • Description: A 7.4V battery for powering the circuit.
    • Pins: +, -

Wiring Details

I2C LCD 16x2 Screen

Arduino UNO

Soil Moisture Sensor

Soil Moisture Module

DHT11

MQ-2

Module LDR

Voltage Regulator

7.4v Battery

Code Documentation

/*
 * This Arduino Sketch initializes I2C communication and displays a message
 * on a 16x2 LCD screen connected via I2C.
 */

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  // Initialize I2C communication
  Wire.begin();
  // Initialize the LCD
  lcd.begin();
  // Turn on the backlight
  lcd.backlight();
  // Print a message to the LCD
  lcd.setCursor(0, 0);
  lcd.print("Hello, World!");
}

void loop() {
  // Main loop does nothing
}

This code initializes the I2C communication and displays a "Hello, World!" message on the 16x2 LCD screen. The setup() function sets up the I2C communication and initializes the LCD, while the loop() function remains empty as no continuous operation is required.