Autor: MIHAILESCU Alexandru
Grupa: 334CA

Alcooltest

Introducere

Proiectul pe care l-am ales consta in realizarea unui aparat ce masoara cantitatea de alcool din aerul expirat.

Descriere generală

Pentru realizarea proiectului, voi folosi un senzor MQ-3 de masurare a alcoolului din aerul expirat, un display LED si un modul Bluetooth. Dupa ce aerul patrunde in senzor, acesta va transmite datele atat catre display-ul LCD cat si catre modulul Bluetooth care va transmite date catre dispozitive mobile cu capacitati Bluetooth.

Hardware Design

Componentele necesare:

  • Arduino UNO
  • Breadboard
  • Senzor MQ-3
  • Modul Bluetooth
  • Display LCD
  • Modul I2C pentru display

Pentru a putea realiza partea hardware am urmat urmatorii pasi:
- Am conectat placuta Arduino la Laptop prin USB
- Modulul I2C pentru display a venit separat, asa ca a trebuit sa il lipesc de display
- Dupa lipire, l-am conectat la Arduino conform cu un tutorial de pe internet
- Am conectat senzorul MQ-3

Software Design

Pentru a putea realiza partea de software am utilizat Arduino IDE.
- Am descarcat biblioteca LiquidCrystal_I2C pentru a interfata cu display-ul LCD
- Am implemetat codul pentru display-ul LCD(pentru a putea afisa pe ecran daca utilizatorul a consumat sau nu alcool)
- Am initializat senzorul pentru masurarea alcoolului
- Se fac 3 citiri consecutive de la senzorul de alcool si apoi se face media pentru a returna valoarea

COD PROIECT

COD PROIECT

#include <LiquidCrystal_I2C.h>
// Create lcd object of class LiquidCrystal_I2C:
LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x27, 16, 2);
const int analogPin = 0; //the AOUT pin of the alcohol sensor goes into analog pin A0 of the arduino

int value;

void setup() {
  Serial.begin(9600);//sets the baud rate
  pinMode(DOUTpin, INPUT);//sets the pin as an input to the arduino
  lcd.init();
  lcd.backlight();
}

int readAlcohol() {
  int val = 0;
  int val1;
  int val2;
  int val3;

  val1 = analogRead(analogPin); 
  delay(10);
  val2 = analogRead(analogPin); 
  delay(10);
  val3 = analogRead(analogPin);
  
  val = (val1+val2+val3)/3;
  return val;
}

void loop() {
  value = readAlcohol(); //reads the analaog value from the alcohol sensor's AOUT pin
  if (value > 400) {
    lcd.setCursor(0, 0);
    lcd.clear();
    lcd.print("Exista alcool");
  } else {
    lcd.setCursor(0, 1);
    lcd.clear();
    lcd.print("Nu exista alcool");
  }
}

Rezultate obtinute

Utilizatorul care sufla in senzorul MQ-3 va afla imediat daca are sau nu alcool in aerul expirat prin intermediul display-ului LCD
Video Demo

Concluzii

Proiectul a fost o provocare pentru mine intrucat partea hardware nu este neaparat o parte preferata de mine. Totusi, trebuie sa recunosc ca lucrul cu hardware s-a dovedit a fi destul de interesant.

Jurnal

* 25.04.2021 –> Alegerea temei proiectului si completarea paginii de wiki cu schema bloc si componentele necesare realizarii proiectului
* 17.05.2021 –> Comandare pieselor
* 19.05.2021 –> Sosirea pieselor
* 29.05.2021 –> Inceperea realizarii proiectului
* 31.05.2021 –> Finalizarea proiectului
* 01.06.2021 –> Finalizarea paginii de wiki

Bibliografie/Resurse

pm/prj2021/cghenea/alcooltest.txt · Last modified: 2021/06/02 20:07 by amihailescu1507
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0