Differences

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

Link to this comparison view

pm:prj2022:amocanu:nuparcati [2022/05/27 20:06]
sabina.stan [Download]
pm:prj2022:amocanu:nuparcati [2022/05/27 20:31] (current)
sabina.stan [Concluzii]
Line 24: Line 24:
 Listă de piese: Listă de piese:
   * Arduino UNO   * Arduino UNO
-  * Modul Wifi - Wemos D1 mini+  * Modul WiFi - Wemos D1 mini
   * Senzori de distanta cu ultrasunete x2   * Senzori de distanta cu ultrasunete x2
   * Breadboard   * Breadboard
Line 38: Line 38:
  
 Este utilizat Arduino IDE ca mediu de dezvoltare. \\ \\ Este utilizat Arduino IDE ca mediu de dezvoltare. \\ \\
-Biblioteci ​folosite in implementare sunt urmatoarele:​\\ ​+Bibliotecile ​folosite in implementare sunt urmatoarele:​\\ ​
   * ESP8266WiFi.h   * ESP8266WiFi.h
   * ESP8266HTTPClient.h   * ESP8266HTTPClient.h
   * WiFiClient.h. \\   * WiFiClient.h. \\
-Proiectul consta in doua coduri: unul pentru Arduino UNO si unul pentru modului de wifi Wemos D1 mini. +Proiectul consta in doua coduri: unul pentru Arduino UNO si unul pentru modului de WiFi Wemos D1 mini. 
-Modulul Wemos D1 mini se conecteaza la Acces Point-ul de WiFi local prin intermediul ​ssid-ului (Service Set Identifier) si a parolei. In variabila INPUT_state se retin starea primita de la Arduino si se verifica daca aceasta s-a modificat folosind o variabila last_INPUT_state ce retine fosta stare a sistemului. Astfel, daca starea sistemului se schimba (din liber in blocat sau invers) atunci se trimite catre google ​o cerere de tip HTTP request catre serverul de IFTTT. Astfel serviciul de IFTTT va trimite notificarea corespunzatoare cererii pe telefonul proprietarului. Cererile au fost realizate cu ajutorul ​ aplicatiei IFTTT prin creerea ​a doua evenimente denumite astfel: “Iot_Event_01” pentru garaj blocat si “Iot_Event_02” pentru garaj liber. Evenimentele folosesc serviciul Webhook.\\ \\+Modulul Wemos D1 mini se conecteaza la Acces Point-ul de WiFi local prin intermediul ​SSID-ului (Service Set Identifier) si a parolei. In variabila INPUT_state se retine ​starea primita de la Arduino si se verifica daca aceasta s-a modificatfolosind o variabila last_INPUT_state ce retine fosta stare a sistemului. Astfel, daca starea sistemului se schimba (din liber in blocat sau invers) atunci se trimite catre Google ​o cerere de tip HTTP request catre serverul de IFTTT. Astfel serviciul de IFTTT va trimite notificarea corespunzatoare cererii pe telefonul proprietarului. Cererile au fost realizate cu ajutorul ​ aplicatiei IFTTT prin crearea ​a doua evenimente denumite astfel: “Iot_Event_01” pentru garaj blocat si “Iot_Event_02” pentru garaj liber. Evenimentele folosesc serviciul Webhook.\\ \\
 Modulul Arduino UNO seteaza pinii de trigger pentru cei doi senzori de distanta pe HIGH timp de 10 microsecunde si masoara cu pulseIn durata de timp a impulsului Echo. Distanta se calculeaza cu ajutorul urmatoarei formule: distanta = durata * 0.034 / 2.\\ \\ Modulul Arduino UNO seteaza pinii de trigger pentru cei doi senzori de distanta pe HIGH timp de 10 microsecunde si masoara cu pulseIn durata de timp a impulsului Echo. Distanta se calculeaza cu ajutorul urmatoarei formule: distanta = durata * 0.034 / 2.\\ \\
-Avand amandoua distante calculate, se delimiteaza o zona de interes (zona din fata garajului ce exclude trotuarul si strada pe care circula masini). Astfel, daca senzorii detecteaza ceva in zona de interes, se afiseaza la seriala distanta calculata (in scop de debugging) si se modifica contorii asociati acestora astfel: incrementeaza contorii daca au detectat ceva in zona de interes sau ii decrementeaza in caz contrar. ​ Contorii nu pot fi incrementati sau decrementati in afara intervalului [-lim_cnt, lim_cnt] (care in cazul implementarii curente este 3, caz in care timpul permis realizarii unei manevre este de 7 secunde). Astfel, daca cel putin un contor a atins valoarea lim_cnt se va seta pinul de output pe HIGH (de unde rezulta o notificare de tipul “Garaj blocat!”) iar daca amandoi contorii au ajuns la valoarea –lim_cnt se va seta OutPin pe LOW (de unde rezulta o notificare de tipul “Garaj liber!”).+Avand amandoua distante calculate, se delimiteaza o zona de interes (zona din fata garajului ce exclude trotuarul si strada pe care circula masini). Astfel, daca senzorii detecteaza ceva in zona de interes, se afiseaza la seriala distanta calculata (in scop de debugging) si se modifica contorii asociati acestora astfel: incrementeaza contorii daca au detectat ceva in zona de interes sau ii decrementeaza in caz contrar. ​ Contorii nu pot fi incrementati sau decrementati in afara intervalului [-lim_cnt, lim_cnt] (care in cazul implementarii curente este 3, caz in care timpul permis realizarii unei manevre este de 7 secunde). Astfel, daca cel putin un contor a atins valoarea lim_cnt se va seta pinul de output pe HIGH (de unde rezulta o notificare de tipul “Garaj blocat!”) iar daca amandoi contorii au ajuns la valoarea –lim_cntse va seta OutPin pe LOW (de unde rezulta o notificare de tipul “Garaj liber!”).
 \\ \\
- 
-[[https://​github.com/​rosewood28/​PM_Project|Cod sursa]] 
- 
- 
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
 <note tip> <note tip>
-Sistemul trimite o notificare pe telefon de fiecare data cand grarajul devine blocat sau liber dupa cum se poate observa si in urmatorul videoclip: [[https://​www.youtube.com/​watch?​v=Dmx6t7G-4vU| link youtube]].+Sistemul trimite o notificare pe telefon de fiecare data cand grarajul devine blocat sau liber dupa cum se poate observa si in urmatorul videoclip:\\ [[https://​www.youtube.com/​watch?​v=Dmx6t7G-4vU| link youtube]].
 </​note>​ </​note>​
  
 ===== Concluzii ===== ===== Concluzii =====
-Proiectul ​realizat mi-a stimulat imaginatia si a reprezentat o metoda interactiva si placuta de a recapitula ceea ce am invatat la PM dar si de a invata ceva nou, anume IFTTT. Am observat o satisfactie mai mare in realizare proiectului fizic in comparatie cu alte proiecte realizate in simulatoare online. Planuiesc sa completez si continui proiectul pentru a putea fi utilizat pe un garaj de marimi reale.+Proiectul a reprezentat o metoda interactiva si placuta de a recapitula ceea ce am invatat la PM dar si de a invata ceva nou, anume IFTTT. Am observat o satisfactie mai mare in realizare proiectului fizic in comparatie cu alte proiecte realizate in simulatoare online. Planuiesc sa completez si sa continui proiectul pentru a putea fi utilizat pe un garaj de marimi reale.
  
 ===== Download ===== ===== Download =====
 {{:​pm:​prj2022:​amocanu:​cod_sursa.zip|}} {{:​pm:​prj2022:​amocanu:​cod_sursa.zip|}}
  
- 
-===== Jurnal ===== 
- 
-<note tip> 
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. 
-</​note>​ 
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +  * https://​www.youtube.com/​watch?​v=pYa8IHUZJkw&​list=WL&​index=5&​t=569s&​ab_channel=bitsNblobsElectronics 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +  https://​www.youtube.com/​watch?​v=duoTV5rM7Zc&​list=WL&​index=5&​t=277s 
-</note>+  ​https://​diyusthad.com/​2020/​05/​iot-motion-sensor-nodemcu-esp8266-pir.html 
 +  ​https://​support.arduino.cc/​hc/​en-us/​articles/​360013896199-How-to-integrate-the-Arduino-IoT-with-IFTTT 
 +  ​https://​arduinogetstarted.com/​tutorials/​arduino-ifttt 
 +  * https://​howtomechatronics.com/​tutorials/​arduino/​ultrasonic-sensor-hc-sr04/
  
 <​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/amocanu/nuparcati.1653671196.txt.gz · Last modified: 2022/05/27 20:06 by sabina.stan
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