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

Arduino and ESP8266 Wi-Fi Controlled Vibration Detection System with OLED Display and Relay Output

Image of Arduino and ESP8266 Wi-Fi Controlled Vibration Detection System with OLED Display and Relay Output

Circuit Documentation

Summary

The circuit in question is designed to interface various components with an Arduino UNO microcontroller. It includes a power supply section, sensors, a display module, a relay module for controlling high-power devices, and a WiFi module for connectivity. The circuit is powered by a 12V battery, which is stepped down to 5V using a DC Buck Step-down converter to power the 5V components. The 3.3V components are powered directly from the Arduino UNO's onboard regulator.

Component List

Arduino UNO

  • Microcontroller board based on the ATmega328P
  • It has 14 digital input/output pins, 6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack, an ICSP header, and a reset button.

SW-420 Vibration Sensor

  • A digital vibration sensor module that outputs a signal when vibration is detected.

6 Relays Module

  • A module with 6 individual relays that can be controlled independently to switch high voltage/current loads.

XL4015 5A DC Buck Step-down Converter

  • A DC-to-DC step-down (buck) converter capable of driving a 5A load with high efficiency.

12V Battery

  • A power source for the circuit, providing 12V.

AITrip ADXL335 GY-61

  • An analog accelerometer that provides output voltages proportional to acceleration on the X, Y, and Z axes.

0.96" OLED Display

  • A small display that can show text, graphics, and animations.

ESP8266 ESP-12E WiFi Module

  • A WiFi module that enables the microcontroller to connect to the internet or a local network.

Red Light 220VAC

  • An indicator light that operates at 220VAC.

Wiring Details

Arduino UNO

  • 3.3V connected to OLED VDD, ADXL335 VCC, ESP8266 CH_PD, VCC, and REST
  • 5V connected to SW-420 Vibration Sensor VCC, XL4015 Output +, and 6 Relays Module VCC
  • GND connected to OLED GND, SW-420 Ground, XL4015 Output -, and 6 Relays Module GND
  • A0 connected to ADXL335 X-Out
  • A1 connected to ADXL335 Y-Out
  • A2 connected to ADXL335 Z-Out
  • A4 (SDA) connected to OLED SDA
  • A5 (SCL) connected to OLED SCK
  • D10 connected to SW-420 Digital output
  • D2 to D7 connected to 6 Relays Module IN1 to IN6 respectively
  • D0 (RX) connected to ESP8266 TXD
  • D1 (TX) connected to ESP8266 RXD

SW-420 Vibration Sensor

  • vcc connected to Arduino UNO 5V
  • Ground connected to Arduino UNO GND
  • Digital output connected to Arduino UNO D10

6 Relays Module

  • VCC connected to Arduino UNO 5V
  • GND connected to Arduino UNO GND
  • IN1 to IN6 connected to Arduino UNO D2 to D7 respectively
  • NC_6 connected to Red Light 220VAC +
  • NO_6 connected to 12V Battery +

XL4015 5A DC Buck Step-down Converter

  • Output + connected to Arduino UNO 5V
  • Output - connected to Arduino UNO GND
  • Input + connected to 12V Battery +
  • Input - connected to 12V Battery -

12V Battery

  • + connected to XL4015 Input + and 6 Relays Module NO_6
  • - connected to XL4015 Input - and Red Light 220VAC -

AITrip ADXL335 GY-61

  • GND connected to Arduino UNO GND
  • VCC connected to Arduino UNO 3.3V
  • X-Out connected to Arduino UNO A0
  • Y-Out connected to Arduino UNO A1
  • Z-Out connected to Arduino UNO A2

0.96" OLED

  • GND connected to Arduino UNO GND
  • VDD connected to Arduino UNO 3.3V
  • SCK connected to Arduino UNO A5
  • SDA connected to Arduino UNO A4

ESP8266 ESP-12E WiFi Module

  • GND connected to Arduino UNO GND
  • CH_PD, VCC, and REST connected to Arduino UNO 3.3V
  • RXD connected to Arduino UNO D1
  • TXD connected to Arduino UNO D0

Red Light 220VAC

  • + connected to 6 Relays Module NC_6
  • - connected to 12V Battery -

Documented Code

Arduino UNO 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 contain any functional code. It needs to be populated with the logic to control the components as per the requirements of the circuit's application.