Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2025:avaduva:radu.tulumb [2025/05/15 17:24]
radu.tulumb
pm:prj2025:avaduva:radu.tulumb [2025/05/28 18:59] (current)
radu.tulumb [Bibliografie/Resurse]
Line 1: Line 1:
 ====== Lie Detector ====== ====== Lie Detector ======
 ===== Introducere ===== ===== Introducere =====
 +Proiectul „Arduino Lie Detector” folosește un Arduino Uno R3 pentru a integra și demonstra măsurători multiprotocol (OneWire, I2C, ADC) și interfațare hardware (LED, buzzer, LCD) într-un sistem care detectează modificările electrodermice (EDA), ritmul cardiac și temperatura. La apăsarea butonului sau automat la pornire, dispozitivul realizează o fază de stabilizare,​ apoi măsoară răspunsul la întrebări și afișează verdictul („FALS”/​„ADEVĂRAT”) pe un display LCD I2C, cu semnal sonor și feedback luminos.
  
-<note tip> 
-Proiectul meu constă în realizarea unui detector de minciuni portabil, care măsoară răspunsurile fiziologice ale unei persoane pentru a determina probabilitatea ca aceasta să mintă. Dispozitivul analizează modificările in umiditatea pielii, ritmul cardiac și temperatura pielii, parametri care se schimbă involuntar când o persoană nu spune adevărul. Ideea a pornit din dorința de a aplica practic cunoștințele despre senzori și microcontrolere într-un proiect interactiv. 
-</​note>​ 
 ===== Descriere generală ===== ===== Descriere generală =====
  
-Proiectul utilizează o placă ​Arduino Uno R3 ca unitate ​centrală ​de procesare. Trei senzori diferiți - un senzor GSR adaptat ​(măsoară conductivitatea pielii), un senzor ​de puls KY-039 și un senzor de temperatură DS18B20 ​colectează date fiziologice ​de la persoana testată. Valorile sunt procesate ​de Arduinocare calculează probabilitatea unei minciuni bazată pe deviațiile acestor parametri față de valorile normale ale persoanei. +Dispozitivul include: 
-Feedback-ul este oferit prin patru LED-uri colorate ​(verde pentru adevăr, verde deschis pentru parțial adevărgalben pentru parțial fals și roșu pentru fals)un buzzer pentru ​semnale sonore și un display LCD care afișează valorile măsurate ​și procentul de probabilitate. Un buton permite marcarea momentului în care se pune o întrebare, ​pentru ​o analiză mai precisă a răspunsului. + 
-Sistemul este alimentat fie prin USB de la calculator ​(pentru vizualizarea datelor ​în timp real pe laptop), fie cu o baterie de 9V, permițând portabilitatea dispozitivului.+Arduino Uno R3 (ATmega328P) ​ca unitate de control 
 + 
 +Senzor EDA (fybrid foilpe pin A1cu rezistor ​de pull-down 2 kΩ către GND 
 + 
 +Modul puls KY-039 ​pe pin A3, calibrare 5 s pentru prag hardware 
 + 
 +Senzor DS18B20 pe magistrala OneWire (pin D2) 
 + 
 +Display LCD I2C (address 0x27) pe SDA (A4) și SCL (A5) 
 + 
 +LED-uri roșu/verde pe D8/D9 cu rezistențe 220 Ω 
 + 
 +Buzzer pasiv pe D6 
 + 
 +Dispozitivul rulează o mașină de stări: calibrare puls, stabilizare EDA, așteptare răspuns, verdictÎn paralel, transmite date de temperatură (°C)BPM și EDA raw spre Serial Plotter. 
 + 
 + 
 + 
 +===== Functionalitati cheie ===== 
 + 
 +Măsurarea EDA (Electrodermal Activity) prin doi electrozi ​pe degete (analog A1) 
 + 
 +Măsurarea pulsului cu modul KY-039 (analog A3 + calibrare automată
 + 
 +Măsurarea temperaturii cu DS18B20 (OneWirepin D2) 
 + 
 +Afișaj verdict ​și interfață pe LCD I2C 16×2 (pini A4=SDA, A5=SCL) 
 + 
 +Feedback vizual prin LED roșu și verde (pini D8D9) 
 + 
 +Feedback audio prin buzzer ​pasiv (pin D6), ton lung pentru ​„FALS” ​și trei bipe pentru ​„ADEVĂRAT” 
 + 
 +Vizualizare grafică a temperaturii,​ pulsului ​(BPM) și EDA în Serial Plotter la 500 ms interval 
  
 ===== Hardware Design ===== ===== Hardware Design =====
  
-Componente proiect: 
  
-1x - Placă Arduino UNO R3 
-1x - Senzor de umiditate (adaptat pentru GSR) 
-1x - Senzor de puls KY-039 
-1x - Senzor de temperatură DS18B20 
-1x - Display LCD 16x2 cu modul I2C 
-4x - LED-uri (verde, verde deschis, galben, roșu) 
-1x - Buzzer activ 
-1x - Buton tactil 
-4x - Rezistențe 220Ω (pentru LED-uri) 
-1x - Rezistență 10kΩ (pentru buton) 
-1x - Rezistență 4.7kΩ (pentru DS18B20) 
-1x - Mini breadboard 
-1x - Baterie 9V cu adaptor 
-Fire de legătură 
-Bandă elastică pentru fixarea senzorilor 
  
 +Componente și legături
 +
 +EDA electrode (2× folie aluminiu)
 +
 +A1
 +
 +Măsurare electrodermală (include 2 kΩ la GND)
 +
 += KY-039 AO =
 +
 +A3
 +
 +Semnal analogic pentru puls
 +
 +KY-039 DO (opțional)
 +
 +D2
 +
 +Semnal digital prag (calibrare externă)
 +
 += DS18B20 =
 +
 +D2
 +
 +OneWire temperatură
 +
 +LCD I2C
 +
 +A4 (SDA), A5(SCL)
 +
 +Afișaj verdict
 +
 +LED roșu
 +
 +D8
 +
 +Feedback minciună (digital)
 +
 +LED verde
 +
 +D9
 +
 +Feedback adevărat (digital)
 +
 +Buzzer pasiv
 +
 +D6
 +
 +Feedback audio
 +
 +GND, 5 V
 +
 +GND, 5 V
 +
 +Alimentare și referință
 +
 +Protocoale utilizate
 +
 +ADC: EDA și puls (A1, A3), conversie 10 biți
 +
 +OneWire: DS18B20 pe D2
 +
 +I2C: LCD pe A4/A5
 +
 +GPIO: LED-uri și buzzer
 +
 +Bill of Materials (BOM)
 +
 +Componentă
 +
 +Tip
 +
 +Pin Arduino
 +
 +Cantitate
 +
 +Arduino Uno R3
 +
 +MCU
 +
 +-
 +
 +1
 +
 +EDA electrodes (folie)
 +
 +Electrod analogic
 +
 +A1
 +
 +2
 +
 +KY-039
 +
 +Senzor puls analog
 +
 +A3
 +
 +1
 +
 +DS18B20
 +
 +Senzor temperatură
 +
 +D2
 +
 +1
 +
 +LCD I2C 16×2
 +
 +Display
 +
 +A4/A5 (I2C)
 +
 +1
 +
 +LED 5 mm roșu/verde
 +
 +Indicator vizual
 +
 +D8, D9
 +
 +1/1
 +
 +Rezistențe 220 Ω
 +
 +Limitator LED
 +
 +-
 +
 +2
 +
 +Rezistor 2 kΩ
 +
 +Pull-down EDA
 +
 +-
 +
 +1
 +
 +Buzzer pasiv
 +
 +Audio
 +
 +D6
 +
 +1
 +
 +Fire Dupont jumper
 +
 +Conexiuni
 +
 +-
 +
 +câte 1
 +
 +{{:​pm:​prj2025:​avaduva:​schemablocradutulumb.drawio.png?​200|}}
 +
 +
 +=====Protocoale utilizate =====
 +
 +ADC: EDA și puls (A1, A3), conversie 10 biți
 +
 +OneWire: DS18B20 pe D2
 +
 +I2C: LCD pe A4/A5
 +
 +GPIO: LED-uri și buzzer
 ===== Software Design ===== ===== Software Design =====
  
 +Mașina de stări
  
-<note tip> +PULSE_CALcalibrare 5 senzor puls (min/max→ prag = media
-Descrierea codului aplicaţiei (firmware): +
-  * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) +
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +
-  * algoritmi şi structuri pe care plănuiţi ​să le implementaţi +
-  * (etapa 3surse şi funcţii implementate +
-</​note>​+
  
 +EDA_STAB: stabilizare 10 s măsurare EDA base
 +
 +EDA_RESP: așteptare 10 s răspuns, calcul Δ EDA și verdict
 +
 +DONE: verdict afișat pe LCD, LED, buzzer
 +
 +
 +Bucla principală
 +
 +Serial Plotter la 500 ms: Serial.println(tempC,​ "​\t",​ lastBPM, "​\t",​ edaRaw)
 +
 +Detecție puls: eșantionare 100 Hz, rising edge peste prag și now - lastBeat >= 300 ms → beatCount++
 +
 +Calcule BPM la fiecare 15 s: BPM = beatCount * 60000 / 15000
 +
 +Funcții și variabile cheie
 +
 +minVal, maxVal, threshold pentru senzor puls
 +
 +edaBase pentru EDA
 +
 +lastState, lastBeatTime,​ beatCount pentru puls
 +
 +
 +
 +===== Imagini =====
 +Senzor gsr improvizat
 +{{:​pm:​prj2025:​avaduva:​senzor_gsr.jpeg?​200|}}
 +Display LDC i2c + Arduino
 +{{:​pm:​prj2025:​avaduva:​lcdi2carduino.jpeg?​200|}}
 +Senzor puls
 +{{:​pm:​prj2025:​avaduva:​senzor_puls.jpeg?​200|}}
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +Calibrare automată a senzorului puls 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. + 
-</​note>​+Măsurători EDA și BPM integrate 
 + 
 +Verdict analogic: „FALS” sau „ADEVĂRAT” cu LED și sunet 
 + 
 +Afișare verdict pe LCD I2C 
 + 
 +Vizualizare grafică în Serial Plotter
  
 ===== Concluzii ===== ===== Concluzii =====
 +
 +Proiectul demonstrează integrarea senzorilor electrodermal,​ puls, temperatură și a interfețelor I2C, OneWire și ADC pe Arduino Uno R3, oferind un sistem funțional de detecție a stărilor emoționale. Poate fi extins cu salvare de date pe card SD sau transmitere wireless.
 +
  
 ===== Download ===== ===== Download =====
Line 64: Line 283:
 </​note>​ </​note>​
  
-===== Bibliografie/​Resurse =====+==== Bibliografie/​Resurse =====
  
-<​note>​ +Resurse Hardware 
-Listă cu documente, datasheet-uriresurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. + 
-</​note>​+Arduino Uno R3 (ATmega328P) – pagina oficială Arduino 
 + 
 +KY-039 Heart Rate Sensor Module 
 + 
 +DS18B20 Digital Temperature Sensor 
 + 
 +Modul LCD I²C (HD44780/​PCD8544) 
 + 
 +Rezistor 2 kΩrezistențe 220 Ω 
 + 
 +Resurse Software 
 + 
 +Arduino IDE – mediu de dezvoltare oficial Arduino 
 + 
 +LiquidCrystal_I2C – librărie pentru LCD I²C 
 + 
 +OneWire & DallasTemperature – librării pentru DS18B20 
 + 
 +Tone, noTone, Serial – funcții din Arduino Core 
 + 
 +Exemple Serial Plotter – documentație Arduino pentru afișare grafică 
 + 
 +Alte referințe 
 + 
 +Electrodermal Activity (GSR) – Wikipedia 
 + 
 +Polygraph – Wikipedia 
 + 
 +Piezo Buzzer Connection – tutoriale online
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
  
pm/prj2025/avaduva/radu.tulumb.1747319056.txt.gz · Last modified: 2025/05/15 17:24 by radu.tulumb
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