Differences

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

Link to this comparison view

pm:prj2025:fstancu:viky_andreea.ilie [2025/05/28 08:30]
viky_andreea.ilie [Bibliografie/Resurse]
pm:prj2025:fstancu:viky_andreea.ilie [2025/05/30 19:16] (current)
viky_andreea.ilie [Software Design]
Line 109: Line 109:
 Gestionarea paginilor negăsite (handleNotFound). Gestionarea paginilor negăsite (handleNotFound).
 Pornește serverul web. Pornește serverul web.
 +
 Bucla Principală (loop()): Bucla Principală (loop()):
 Apelează continuu server.handleClient() pentru a procesa cererile HTTP primite, doar dacă ESP32 este conectat la Wi-Fi. Apelează continuu server.handleClient() pentru a procesa cererile HTTP primite, doar dacă ESP32 este conectat la Wi-Fi.
 +
 Managementul Autentificării:​ Managementul Autentificării:​
 Variabila isAuthenticated urmărește starea autentificării. Variabila isAuthenticated urmărește starea autentificării.
Line 123: Line 125:
 processToggleRequest(pin,​ stateVariable,​ ledName): Funcție centralizată pentru comutarea stării unui LED. Include logică de debounce (toggleDebounceDelay) pentru a preveni comutări multiple la cereri rapide. Actualizează pinul GPIO și variabila de stare. Trimite noua stare ("​ON"​ sau "​OFF"​) ca răspuns. processToggleRequest(pin,​ stateVariable,​ ledName): Funcție centralizată pentru comutarea stării unui LED. Include logică de debounce (toggleDebounceDelay) pentru a preveni comutări multiple la cereri rapide. Actualizează pinul GPIO și variabila de stare. Trimite noua stare ("​ON"​ sau "​OFF"​) ca răspuns.
 Handler-e specifice (ex: handleToggleBedroom1,​ handleStateBedroom1):​ Apelează processToggleRequest sau returnează starea curentă. Handler-e specifice (ex: handleToggleBedroom1,​ handleStateBedroom1):​ Apelează processToggleRequest sau returnează starea curentă.
 +
 Ușa Garajului: Ușa Garajului:
 garageServo:​ Obiect Servo pentru controlul motorului. garageServo:​ Obiect Servo pentru controlul motorului.
 isGarageDoorOpen:​ Variabilă booleană pentru starea ușii. isGarageDoorOpen:​ Variabilă booleană pentru starea ușii.
-handleOpenGarageDoor(),​ handleCloseGarageDoor():​ Apelează garageServo.write() cu poziția corespunzătoare. Implementează debounce (garageDoorDebounceDelay). La deschidere, aprinde automat lumina din garaj dacă era stinsă. Returnează un obiect JSON cu doorStatus și garageLightStatus. +handleOpenGarageDoor(),​ handleCloseGarageDoor():​ Apelează garageServo.write() cu poziția corespunzătoare. Implementează debounce (garageDoorDebounceDelay). La deschidere, aprinde automat lumina din garaj dacă era stinsă. Returnează un obiect JSON cu doorStatus și garageLightStatus. handleGarageDoorState():​ Returnează starea curentă a ușii și a luminii din garaj în format JSON. 
-handleGarageDoorState():​ Returnează starea curentă a ușii și a luminii din garaj în format JSON.+
 Citirea Senzorilor (handleDHTData()):​ Citirea Senzorilor (handleDHTData()):​
 Citește temperatura și umiditatea de la senzorul DHT22. Citește temperatura și umiditatea de la senzorul DHT22.
 Returnează datele într-un obiect JSON. Include gestionarea erorilor (returnează null pentru valori dacă citirea eșuează). Returnează datele într-un obiect JSON. Include gestionarea erorilor (returnează null pentru valori dacă citirea eșuează).
-Servirea Fișierelor Statice (readFile(),​ handleCSS(),​ handleJS(), handleRoot(),​ handleLoginHTML()):​ 
-Funcția readFile() este utilizată pentru a citi conținutul fișierelor (index.html,​ login.html, style.css, script.js) din LittleFS. 
-Handler-ele corespunzătoare trimit conținutul fișierelor cu tipul MIME corect. 
  
 **Interfața Web (Frontend)** **Interfața Web (Frontend)**
Line 187: Line 187:
  
 **Concluzii și Puncte Cheie** **Concluzii și Puncte Cheie**
 +
 Modularitate:​ Codul este împărțit logic în backend (ESP32) și frontend (HTML/​CSS/​JS). În cadrul backend-ului,​ funcțiile handler sunt dedicate pentru fiecare rută/​acțiune. Modularitate:​ Codul este împărțit logic în backend (ESP32) și frontend (HTML/​CSS/​JS). În cadrul backend-ului,​ funcțiile handler sunt dedicate pentru fiecare rută/​acțiune.
  
Line 195: Line 196:
 Debounce: Mecanismele de debounce previn acționări multiple nedorite și protejează componentele hardware. Debounce: Mecanismele de debounce previn acționări multiple nedorite și protejează componentele hardware.
  
 +https://​github.com/​Vikyyz/​ProiectPM/​tree/​main
  
 ===== Jurnal ===== ===== Jurnal =====
Line 210: Line 211:
  
 https://​www.amazon.com/​Development-Bluetooth-Microcontroller-ESP-WROOM-32-Consumption/​dp/​B0BM5RNMZM https://​www.amazon.com/​Development-Bluetooth-Microcontroller-ESP-WROOM-32-Consumption/​dp/​B0BM5RNMZM
 +
 +https://​daumemo.com/​lm317-voltage-regulator-calculator-voltage-source/​
pm/prj2025/fstancu/viky_andreea.ilie.1748410234.txt.gz · Last modified: 2025/05/28 08:30 by viky_andreea.ilie
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