Differences

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

Link to this comparison view

pm:prj2022:dene:smartpot [2022/05/08 16:41]
andrei.toma1009 [Hardware Design]
pm:prj2022:dene:smartpot [2022/06/01 14:13] (current)
andrei.toma1009 [Rezultate Obtinute]
Line 7: Line 7:
 ===== Introducere ===== ===== Introducere =====
  
-Proiectul consta intr-un ghiveci inteligent care are ca scop automatizarea unei rutine comune, cea de ingrijire a plantelor din casa, asigurand un nivel optim de lumina cat si o umiditate potrivita a solului. Anumite caracterisitici (umiditatea dorita a solului, ​luminozitatea) vor putea fi setate prin intermediul telefonului conectat prin Bluetooth la Arduino.+Proiectul consta intr-un ghiveci inteligent care are ca scop automatizarea unei rutine comune, cea de ingrijire a plantelor din casa, asigurand un nivel optim de lumina cat si o umiditate potrivita a solului. Anumite caracterisitici (umiditatea dorita a solului, ​starea LED-urilor) vor putea fi setate prin intermediul telefonului conectat prin Bluetooth la Arduino.
 ===== Descriere generală ===== ===== Descriere generală =====
  
Line 14: Line 14:
 ===== Hardware Design ===== ===== Hardware Design =====
  
-<note tip> 
-Aici puneţi tot ce ţine de hardware design: 
-  * listă de piese 
-  * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri,​ e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png) 
-  * diagrame de semnal ​ 
-  * rezultatele simulării 
-</​note>​ 
 Lista piese: Lista piese:
   * Arduino UNO   * Arduino UNO
   * Modul Bluetooth   * Modul Bluetooth
-  * Pompa de apa+  * Pompa submersibila ​de apa
   * LED-uri UV   * LED-uri UV
-  * Senzori ​de umiditate+  * Senzor ​de umiditate
   * Breadboard   * Breadboard
-  * Butoane+  * Releu 
 +  * Baterie 
 +  * Suport de baterie 
 +  * Rezistente
  
 +{{pm:​prj2022:​dene:​tomaandrei_schema_electrica.png?​700}}
 ===== Software Design ===== ===== Software Design =====
  
 +Pentru dezvoltarea codului Arduino am folosit Arduino IDE.
 +Aplicatia prin care ne conectam la arduino am facut-o folosind MIT App Inventor 2, un mediu prietenos pentru a crea aplicatii simple rapid.
  
-<note tip> +De asemeneaam folosit biblioteca AltSoftSerial pentru comunicarea intre Arduino si aplicatie prin modulul bluetoothCu biblioteca aceasta se va comunica pe pinii 8 si 9.
-Descrierea codului aplicaţiei (firmware):​ +
-  * mediu de dezvoltare (if any) (e.g. AVR StudioCodeVisionAVR) +
-  * librării şi surse 3rd-party (e.gProcyon AVRlib) +
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +
-  * (etapa 3) surse şi funcţii implementate +
-</​note>​+
  
-===== Rezultate Obţinute =====+Implementarea este una destul de simpla si eficienta si poate fi impartita in mai multi pasi:
  
-<note tip> +1) Ascultarea pe seriala definita pentru bluetooth: 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +De fiecare data cand primeste un byte pe seriala de comunicare cu modulul bluetooth va face ceva in functie de byte-ul primit: 
-</​note>​+  * '​0':​ opreste LED-urile 
 +  * '​1':​ porneste LED-urile 
 +  * '​4':​ mareste procentajul de umiditate dorit in sol cu 5% 
 +  * '​5':​ scade procentajul de umiditate dorit in sol cu 5%
  
-===== Concluzii =====+2) Strategia de irigare automata: 
 +Am configurat timer-ul 2, astfel incat sa se intre pe rutina de intrerupere odata la 16 ms. Asta inseamna ca trebuie sa intre in rutina de intrerupere de aproximativ 63 de ori pentru a numara o secunda. De fiecare data cand 60 de secunde au trecut se seteaza variabila can_irrigate pe true din rutina de intrerupere.
  
-===== Download =====+Mai departe in loop() cand can_irrigate este setat pe true se va citi cu analogRead valoarea de pe pinul A0 si voi mapa aceasta valoare la un procentaj prin intermediul functiei map(moisture,​ 1023, 250, 0, 100) am observat ca si daca este foarte umed valoarea nu se va duce la 0 va ramane in jur de 300 si de aia valoarea minima am considerat-o 250. Daca procentajul citit este mai mic decat cel dorit se va porni o irigare de 3 secunde si can_irrigate va fi din nou setat pe false.
  
-<note warning>​ +3Aplicatia bluetooth: 
-O arhivă (sau mai multe dacă este cazulcu fişierele obţinute în urma realizării proiectuluisurse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna ​impresie bună ;-).+Aplicatia are interfata simpla si intuitivaPasii pentru a face o demonstratie de pornire a ledurilor si de incrementare a umiditatii dorite sunt urmatorii:
  
-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**. +  ​Scanare module bluetooth din apropiere 
-</​note>​+  ​Selectare si conectare la unul dintre cele gasite ​(BT05 este numele modulului meu) 
 +  ​Apasare pe butoanele ON/OFF pentru a controla LED-urile 
 +  ​Apasare pe butoanele INCREMENT/​DECREMENT pentru a controla umiditatea dorita a solului 
 +Ultiemele 2 prezentate trimit mesaje catre Arduino.
  
-===== Jurnal ​=====+===== Rezultate Obtinute ​===== 
 +{{pm:​prj2022:​dene:​tomaandrei_leds_off.jpeg}} 
 +{{pm:​prj2022:​dene:​tomaandrei_leds_on.jpeg}} 
 +{{pm:​prj2022:​dene:​rulare.png}} 
 +{{pm:​prj2022:​dene:​toma_andrei_aplicatie_proiect.jpeg}}
  
-<note tip> +https://​youtube.com/shorts/​TuolkDqongY 
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. +===== Concluzii =====
-</note>+
  
 +Proiectul a fost interesant si pe cat parea de usor au fost intampinate destul de multe probleme:
 +  * Senzorii de umiditate nu erau prea exacti
 +  * Releul nu a functionat exact cum ma asteptam
 +  * Voltajul nu a fost suficient pentru pompa de apa
 +  * Bluetooth-ul nu a fost deloc usor de configurat cum ma asteptam.
 +===== Download =====
 +{{pm:​prj2022:​dene:​toma_andrei_331cb_pmproiect.zip}}
 +===== Jurnal =====
 +  * 25.04.2022: Comanda piese
 +  * 07.05.2022: Creare pagina Wiki (schema bloc + descriere generala)
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +https://​ocw.cs.pub.ro/​courses/​pm 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**+ 
-</note>+https://iot.appinventor.mit.edu/​assets/​tutorials/​MIT_App_Inventor_Basic_Connection.pdf 
 + 
 +https://​create.arduino.cc/​projecthub/​projects/​tags/irrigation
  
 <​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/prj2022/dene/smartpot.1652017263.txt.gz · Last modified: 2022/05/08 16:41 by andrei.toma1009
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