Differences

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

Link to this comparison view

pm:prj2023:iotelea:happy_plants [2023/05/23 00:20]
stefania.popa0401
pm:prj2023:iotelea:happy_plants [2023/05/30 04:02] (current)
stefania.popa0401
Line 68: Line 68:
  
 {{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​whatsapp_image_2023-05-22_at_15.53.52.jpeg?​770x550}} {{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​whatsapp_image_2023-05-22_at_15.53.52.jpeg?​770x550}}
 +
 +{{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​whatsapp_image_2023-05-23_at_00.59.17.jpeg?​770x550}}
 +
 +{{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​whatsapp_image_2023-05-23_at_01.02.42.jpeg?​430x500}}
 +
 +{{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​whatsapp_image_2023-05-23_at_01.02.43.jpeg?​430x500}}
 +
 +
 +Dupa cum se poate observa, pentru LED am folosit 3 rezistori, unul pentru fiecare dintre pinii de culoare, pentru a ne asigura ca acesta nu se arde. De asemenea, pentru buton am folosit o rezistenta, pentru a fi siguri ca atunci cand butonul nu este apasat, inputul este conectat ori la 0 ori la 1, deci nu va citi un alt semnal random.
 +
 +
 +Deoarece pompa de apa nu avea pinii iesiti in afara pentru a putea fi conectata la breadboard, au fost necesare niste operatiuni de lipire.
 +
 +
 +
 +
 +===== Software Design =====
 +
 +In sectiunea de **setup** avem functiile ce pregatesc LCD-ul, LED-ul, pompa si butonul pentru a putea lucra cu ele. Mai exact, pornesc interfața serială pentru comunicarea cu ecranul LCD si setez pinii ca fiind de INPUT sau OUTPUT in concordanta cu functionalitatea lor.(daca trebuie sa citeasca vreun semnal, sau sa afiseze unul)
 +
 +Urmeaza sectiunea **helper functions**:​
 +
 +  * **read_soil_humidity**:​ citeste valoarea senzorului de umiditate a solului, aceasta aflandu-se in intervalul [0, 1023] si o converteste in procente, adica in intervalul [0, 100]. Totodata, stabileste daca solul are o umiditate propice ( > 50% ) sau nu.
 +  * **check_soil_hum_led**:​ aceasta este functia cu ajutorul careia controlez LED-ul RGB. Daca pompa va fi actionata (manual sau automat), LED-ul va lumina albastru, indicand ca planta este udata. Daca planta va avea umiditate propice si nu va fi udata, atunci LED-ul va lumina verde, sugerand faptul ca planta este verde si vesela.
 +  * **button_check**:​ cu aceasta functie citim semnalul transmis de buton, adica verificam daca acesta este apasat sau nu.
 +  * **operate_pump**:​ aceasta este functia care porneste pompa daca umiditatea solului este < 50% sau daca butonul este apasat.
 +  * **print_lcd**:​ aici doar afisez umiditatea curenta a solului
 +
 +
 +
 +===== Rezultate Obtinute =====
 +
 +Prin toate cele prezentate, am reusit implementarea unui sistem de udare al plantelor atat automat, cat si manual, care ne permite sa plecam in vacanta fara griji si care ne face plantele fericite. ​
 +
 +Va invit sa priviti demo-ul proiectului:​
 +
 +{{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​demo_video_happy_plants.zip?​}}
 +
 +
 +===== Concluzii =====
 +
 +Fiind cam singurul proiect practic din acesti ani de facultate, a fost o experienta foarte interesanta si o ocazie perfecta de a implementa ideea pe care o aveam in minte de mult timp.
 +
 + ​Acesta rezolva o problema de care eu personal m-am lovit de nenumarate ori, si anume udarea automata a plantelor, simuland ideea unui ghiveci inteligent, care furnizeaza apa plantei atunci cand umiditatea este prea scazuta sau cand utilizatorul doreste sa porneasca pompa prin apasarea butonului. Singurul lucru de care utilizatorul trebuie sa se ocupe este umplerea recipientului cu apa.
 +
 +
 +===== Download =====
 +
 +Puteti accesa codul sursa pentru implementarea proiectului aici: 
 +
 +{{https://​ocw.cs.pub.ro/​courses/​_media/​pm/​prj2023/​iotelea/​popa_stefania_336cb.zip?​Cod_sursa}}
 +
 +===== Jurnal =====
 +
 +  *25 aprilie 2023: Am ales tema proiectului & am creat pagina wiki a acestuia
 +  *2 mai 2023: Am inceput documentatia cu descrierea proiectului si a design-ului hardware
 +  *5 mai 2023: Am comandat piesele necesare implementarii proiectului
 +  *9 mai 2023: Am lipit pinii pompei de apa la laborator, pentru a putea fi conectata la Arduino
 +  *14 mai 2023: Am asamblat componentele si am testat functionalitatea de baza a lor
 +  *29 mai 2023: Am implementat partea software a proiectului
 +  *30 mai 2023: Gata pentru PM fair
 +
 +===== Bibliografie/​Resurse =====
 +
 +  *[[https://​create.arduino.cc/​projecthub/​MisterBotBreak/​how-to-use-a-soil-moisture-sensor-ce769b]]
 +
 +  *[[https://​www.youtube.com/​watch?​v=pthbOYvhHCE&​ab_channel=WouterPieper]]
 +
 +  *[[https://​lastminuteengineers.com/​i2c-lcd-arduino-tutorial/​]]
 +
 +  *{{https://​www.optimusdigital.ro/​ro/​optoelectronice-lcd-uri/​2894-lcd-cu-interfata-i2c-si-backlight-albastru.html?​search_query=LCD+1602+interfata+I2C&​results=4}}
 +
 +  *{{https://​www.optimusdigital.ro/​ro/​optoelectronice-led-uri/​483-led-rgb-catod-comun.html?​search_query=led+rgb&​results=105
 +}}
 +
 +  *{{https://​www.optimusdigital.ro/​ro/​senzori-senzori-de-umiditate/​73-senzor-de-umiditate-a-solului.html?​search_query=SENZOR+DE+UMIDITATE+sol&​results=13
 +}}
 +
 +  *{{https://​www.optimusdigital.ro/​ro/​componente-electronice-tranzistoare/​935-tranzistor-s9013-npn-50-pcs-set.html?​search_query=tranzistor+npn&​results=23}}
 +
  
  
pm/prj2023/iotelea/happy_plants.1684790435.txt.gz · Last modified: 2023/05/23 00:20 by stefania.popa0401
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