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

Arduino UNO-Based Smart Monitoring System with GSM and LCD Display

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

Circuit Documentation

Summary

This circuit is designed to monitor temperature, voltage, current, and oil level, and to control a relay and a buzzer based on threshold values. It uses an Arduino UNO as the main microcontroller, interfacing with various sensors and actuators. The system also includes a GSM module for sending SMS alerts in case of faults.

Component List

  1. HC-SR04 Ultrasonic Sensor

    • Pins: VCC, TRIG, ECHO, GND
    • Description: Measures distance using ultrasonic waves.
    • Purpose: Used to measure oil level.
  2. ACS712 Current Sensor 5A 20A 30A

    • Pins: 1, 2, GND, OUT, VCC
    • Description: Measures current.
    • Purpose: Used to measure current in the circuit.
  3. Sim800l

    • Pins: NET, RST, VCC, RXD, TXD, GND
    • Description: GSM module for sending SMS.
    • Purpose: Sends SMS alerts in case of faults.
  4. 5v Relay

    • Pins: Normally Open, Common terminal, Normally Closed, In, GND, VCC
    • Description: Electromechanical switch.
    • Purpose: Controls the power to the transformer.
  5. 16x2 I2C LCD

    • Pins: GND, VCC, SDA, SCL
    • Description: LCD display with I2C interface.
    • Purpose: Displays sensor readings and system status.
  6. Battery 12v

    • Pins: +, -
    • Description: Power source.
    • Purpose: Provides power to the Arduino UNO.
  7. Temperature Sensor (LM35)

    • Pins: +Vs, Vout, GND
    • Description: Measures temperature.
    • Purpose: Used to measure temperature.
  8. Arduino UNO

    • 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
    • Description: Microcontroller board.
    • Purpose: Main controller for the circuit.
  9. Power 220v

    • Pins: hot wire, neutral wire
    • Description: AC power source.
    • Purpose: Provides AC power to the transformer.
  10. Power Transformer (220V to 24V)

    • Pins: 2 - Primary, 1 - Primary, 3 - Secondary, 4 - Secondary
    • Description: Steps down 220V AC to 24V AC.
    • Purpose: Provides 24V AC for the circuit.
  11. Bulb

    • Pins: GND, power
    • Description: Light bulb.
    • Purpose: Visual indicator.
  12. Bridge Rectifier

    • Pins: Source_in-, source_out-, source_out+, source_in+
    • Description: Converts AC to DC.
    • Purpose: Provides DC power from AC source.
  13. Wire Connector

    • Pins: +, -
    • Description: Connects wires.
    • Purpose: Facilitates connections in the circuit.
  14. ZMPT101B

    • Pins: OUT, GND, VCC, NEUTRO, FASE
    • Description: Voltage sensor.
    • Purpose: Measures voltage in the circuit.
  15. Buzzer

    • Pins: PIN, GND
    • Description: Sound indicator.
    • Purpose: Alerts in case of faults.

Wiring Details

HC-SR04 Ultrasonic Sensor

ACS712 Current Sensor 5A 20A 30A

Sim800l

5v Relay

16x2 I2C LCD

Battery 12v

Temperature Sensor (LM35)

Arduino UNO

Power 220v

Power Transformer (220V to 24V)

Bulb

Bridge Rectifier

Wire Connector

ZMPT101B

Buzzer

Code Documentation

#include <LiquidCrystal_I2C.h>
#include <SoftwareSerial.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); // LCD address, columns, rows
SoftwareSerial gsm(10, 11); // TX, RX for GSM

// Sensor pins
const int tempPin = A0;
const int voltagePin = A1;
const int currentPin = A2;
const int trigPin = 2;
const int echoPin = 3;

// Actuator pins
const int relayPin = 4;
const int buzzerPin = 5;

// Thresholds
const float tempThreshold = 50.0; // Celsius
const float voltageThreshold = 230.0; // Volts

void setup() {
  pinMode(relayPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  digitalWrite(relayPin, HIGH); // Default: Relay