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

Arduino-Based Alcohol Detection and GPS Tracking System with GSM Alerts

View and Edit Project In Cirkit DesignerImage of Arduino-Based Alcohol Detection and GPS Tracking System with GSM Alerts

Circuit Documentation

Summary

This document provides a detailed overview of a circuit designed to detect alcohol levels, alert the driver, and send the GPS location via SMS. The circuit utilizes an Arduino UNO microcontroller, various sensors, a GSM module, a GPS module, a motor driver, and other components to achieve its functionality.

Component List

  1. Arduino UNO

    • Description: 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
  2. MQ-3 Breakout

    • Description: Alcohol sensor module.
    • Pins: VCC, GND, DO, AO
  3. MPU-6050

    • Description: 6-axis motion tracking device.
    • Pins: VCC, GND, SCL, SDA, XDA, XCL, AD0, INT
  4. Sim800l

    • Description: GSM/GPRS module.
    • Pins: NET, RST, VCC, RXD, TXD, GND
  5. Polymer Lithium Ion Battery - 850mAh

    • Description: Rechargeable battery.
    • Pins: GND, VCC
  6. Resistor (10 Ohms)

    • Description: Resistor with 10 Ohms resistance.
    • Pins: pin1, pin2
  7. Resistor (20 Ohms)

    • Description: Resistor with 20 Ohms resistance.
    • Pins: pin1, pin2
  8. GPS NEO 6M

    • Description: GPS module.
    • Pins: VCC, RX, TX, GND
  9. L298N DC motor driver

    • Description: Dual H-Bridge motor driver.
    • Pins: OUT1, OUT2, 12V, GND, 5V, OUT3, OUT4, 5V-ENA-JMP-I, 5V-ENA-JMP-O, +5V-J1, +5V-J2, ENA, IN1, IN2, IN3, IN4, ENB
  10. 12v Battery

    • Description: 12V power source.
    • Pins: -, +
  11. DC Motor

    • Description: DC motor.
    • Pins: pin 1, pin 2
  12. Buzzer

    • Description: Sound alert device.
    • Pins: PIN, GND
  13. LED: Two Pin (yellow)

    • Description: Yellow LED.
    • Pins: cathode, anode
  14. Resistor (200 Ohms)

    • Description: Resistor with 200 Ohms resistance.
    • Pins: pin1, pin2
  15. Electrolytic Capacitor

    • Description: Capacitor with 0.000001 Farads capacitance.
    • Pins: -, +

Wiring Details

Arduino UNO

MQ-3 Breakout

MPU-6050

Sim800l

Polymer Lithium Ion Battery

Resistor (10 Ohms)

Resistor (20 Ohms)

GPS NEO 6M

L298N DC motor driver

12v Battery

DC Motor

Buzzer

LED: Two Pin (yellow)

Resistor (200 Ohms)

Electrolytic Capacitor

Documented Code

#include <SoftwareSerial.h> // Include for GSM communication
#include <Wire.h>           // Include for I2C communication (if needed)

// Define hardware pins
#define ALCOHOL_PIN      A0  // Analog pin for alcohol sensor
#define BUZZER_PIN       8   // Digital pin for buzzer
#define LED_PIN          9   // Digital pin for LED
#define MOTOR_IN1_PIN    10  // Digital pin for motor driver IN1
#define MOTOR_IN2_PIN    11  // Digital pin for motor driver IN2
#define MOTOR_ENA_PIN    12  // Digital pin for motor driver ENA

// SoftwareSerial for GSM module
SoftwareSerial gsmSerial(7, 6); // RX, TX for GSM module

// Function prototypes
void stopMotor();
void alertDriver();
void sendLocation();
void sendSMS(const char* text);
bool getGPSLocation(double* latitude, double* longitude);

// Setup function
void setup() {
    Serial.begin(9600);         // Initialize serial communication for debugging
    gsmSerial.begin(9600);      // Initialize GSM communication
    
    // Configure pin modes
    pinMode(ALCOHOL_PIN, INPUT);
    pinMode(BUZZER_PIN, OUTPUT