Differences

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

Link to this comparison view

pm:prj2023:dene:smartgreenhouse [2023/05/28 13:39]
daria.ciobanu [Hardware Design]
pm:prj2023:dene:smartgreenhouse [2023/05/29 16:31] (current)
daria.ciobanu [Schema electrică:]
Line 29: Line 29:
 ====Schema electrică:​==== ====Schema electrică:​====
 {{:​pm:​prj2023:​dene:​hardware_prj_daria.png?​750|}} {{:​pm:​prj2023:​dene:​hardware_prj_daria.png?​750|}}
-{{:​pm:​prj2023:​dene:​poza_d.jpeg?​600|}} 
  
  
Line 67: Line 66:
  
   * Temperatura determinata de senzorul DHT pornește sau oprește ventilatorul   * Temperatura determinata de senzorul DHT pornește sau oprește ventilatorul
 +
 +  if(DHT.temperature > 20) {
 +    digitalWrite(FAN_PIN,​ HIGH);
 +  } else {
 +    digitalWrite(FAN_PIN,​ LOW);
 +  }
 +
 +
   * Valorile citite de la senzorul de umiditate determină pornirea pompei de apă și schimbarea mesajului de pe diplay   * Valorile citite de la senzorul de umiditate determină pornirea pompei de apă și schimbarea mesajului de pe diplay
   * Am delimitat 4 stări: ​   * Am delimitat 4 stări: ​
Line 107: Line 114:
   ​   ​
   ​   ​
-  ​ 
-- Butonul care declanșeaza muzica atunci când posesorul serei dorește este activat prin folosirea unei întreruperi 
  
-Am implementat funcția **playMusic()** pentru a structura mai bine codul+  * Butonul care declanșeaza muzica atunci când posesorul serei dorește este activat prin folosirea unei întreruperi 
 +  * Am implementat funcția **playMusic()** pentru a structura mai bine codul, folosind laboratorul 3 pentru redarea notelor melodiei
            
    if (interruptCount > 0) {    if (interruptCount > 0) {
Line 121: Line 127:
     interruptCount = 0;      interruptCount = 0; 
   }   }
 +
 +
 +  * Pentru ca plantele să se bucure de muzică și în absența unei persoane, difuzorul va porni o data pe zi
 +  * Am implementat un timer care apelează funcția playMusic() când funcția millis() va ajunge la intervalul cerut (86400s), ​
 +și am afișat pe LCD timpul trecut de la pornirea sistemului serei
 +
 +  const unsigned long interval = 86400000;
 +  unsigned long currentMillis = millis();
 +  if (currentMillis - previousMillis >= interval) {
 +    previousMillis = currentMillis; ​
 +    digitalClockDisplay();​
 +    delay(1000);​
 +    lcd.setCursor(0,​ 1);
 +    lcd.print("​Music o'​clock ​  "​);​
 +    playMusic();​
 +  }
 +  void digitalClockDisplay() {
 +    lcd.clear();​
 +    lcd.setCursor(0,​ 0);
 +    printDigits(hour());​
 +    lcd.print(":"​);​
 +    printDigits(minute());​
 +    lcd.print(":"​);​
 +    printDigits(second());​
 +  }
 +
  
  
Line 126: Line 158:
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
 +{{:​pm:​prj2023:​dene:​img_6758.jpg?​600|}}
 <note tip> <note tip>
-Care au fost rezultatele obţinute în urma realizării proiectului vostru.+Demo:​[[https://​drive.google.com/​drive/​folders/​1kLPGlZ-ddIWddBkMJQOYuobudT4AaleN?​usp=sharing]]
 </​note>​ </​note>​
  
 ===== Concluzii ===== ===== Concluzii =====
 +
 +Realizarea acestui proiect mi-a oferit o înțelegere mai profundă a materiei și a aspectelor practice ale acesteia, în special cele legate de interconectarea și utilizarea componentelor hardware. Astfel, am reușit să creez un produs funcțional și util, îmbinând ideea proiectului cu pasiunea mea pentru plante. În timpul procesului, am întâmpinat mici probleme, cum ar fi sincronizarea LCD-ului cu informațiile primite de la senzor, dar și implementarea întreruperilor,​ unde am fost nevoită să adaug un delay pentru a elimina efectul de debouncing. Am depasit provocarile intampinate si am obținut o implementare eficientă și un produs fizic pe care îl voi utiliza cu bucurie pe viitor.
  
 ===== Download ===== ===== Download =====
  
-<​note ​warning+<​note ​tip>  
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etcUn fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).+Drive:[[https://​drive.google.com/​drive/​folders/​1kLPGlZ-ddIWddBkMJQOYuobudT4AaleN?​usp=sharing]]
  
-Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:​pm:​prj20??:​c?​** sau **:​pm:​prj20??:​c?:​nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**+Zip:{{:pm:prj2023:dene:smart_green.zip|}} 
-</​note>​+ </​note>​
  
 ===== Jurnal ===== ===== Jurnal =====
  
-<note tip> +  * 05.05.2023 - Milestone proiect - documentație: alegerea temei proiectului ​și a funcționalităților ​de bază 
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul ​de proiect progresul proiectului+  * 18.05.2023 - Milestone - hardware: conectarea elementelor hardware și realizarea schemei electrice 
-</​note>​+  * 26.05.2023 - Milestone - software: implementarea codului și finalizarea proiectului
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +=== Resurse Software ​=== 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** ​şi **Resurse Hardware**. +  ​https://​github.com/​robsoncouto/​arduino-songs 
-</note>+  ​https://​projecthub.arduino.cc/​plouc68000/​simplest-uno-digital-clock-ever-03c185 
 +  ​https://​www.youtube.com/​watch?​v=7KdhL_gAqHQ&​list=LL&​index=4&​ab_channel=PassionTechKLM 
 + 
 +=== Resurse Hardware ​=== 
 +  ​https://​mytectutor.com/​soil-moisture-sensor-with-arduino-automatic-plant-irrigation-system/
  
 <​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/prj2023/dene/smartgreenhouse.1685270393.txt.gz · Last modified: 2023/05/28 13:39 by daria.ciobanu
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