- Components necessaris:
- Sensor d'ultrasons HC-SR04:
- Mòdul Wi-Fi ESP8266:
- Diagrama del circuit i explicació:
- Explicació del codi:
- "; if (distància <5) {webpage + =" Paperera està plena ";} else {webpage + =" Paperera està buida ";} pàgina web + ="
- Proves i sortida del projecte:
En aquest bricolatge, farem un sistema de control de deixalles / escombraries basat en IOT, que ens dirà que si la paperera està buida o plena a través del servidor web i podeu conèixer l’estat de la vostra "paperera" o "contenidors d'escombraries" a a qualsevol lloc del món a través d'Internet. Serà molt útil i es pot instal·lar a les papereres a llocs públics i a casa.
En aquest projecte IOT, s’utilitza un sensor d’ultrasons per detectar si la paperera està plena d’escombraries o no. Aquí el sensor d’ultrasons s’instal·la a la part superior de la paperera i mesurarà la distància de la brossa des de la part superior de la paperera i podem establir un valor llindar d’acord amb la mida de la paperera. Si la distància serà inferior a aquest valor llindar, significa que la paperera està plena d'escombraries i imprimirem el missatge "La cistella està plena" a la pàgina web i si la distància serà superior a aquest valor llindar, imprimirem el missatge "La cistella està buida". Aquí hem establert el valor Umbral de 5 cm al codi del programa. Utilitzarem el mòdul Wi-Fi ESP8266per connectar l'Arduino al servidor web. Aquí hem utilitzat el servidor web local per demostrar el funcionament d’aquest sistema de control de deixalles.
Components necessaris:
- Arduino Uno (es pot utilitzar qualsevol altre)
- Mòdul Wi-Fi ESP8266
- HC-SR04 Sensor d'ultrasons
- Resistències 1K
- Taula de pa
- Connexió de cables
Sensor d'ultrasons HC-SR04:
El sensor d'ultrasons s'utilitza per mesurar la distància amb alta precisió i lectures estables. Pot mesurar la distància de 2cm a 400cm o d’1 polzada a 13 peus. Emet una ona d’ultrasò a la freqüència de 40 KHz a l’aire i, si l’objecte s’interposarà, tornarà al sensor. Utilitzant el temps que triga a copejar l’objecte i torna, podeu calcular la distància.

El sensor d'ultrasons té quatre pins. Dos són VCC i GND, que es connectaran al 5V i al GND de l'Arduino, mentre que els altres dos pins són pins Trig i Echo, que es connectaran a qualsevol pin digital de l'Arduino. El pin trigular enviarà el senyal i el pin Echo s’utilitzarà per rebre el senyal. Per generar un senyal d'ultrasò, haureu d'elevar el pin Trig durant uns 10us, que enviarà una explosió sonora de 8 cicles a la velocitat del so i, després de colpejar l'objecte, el rebrà el pin Echo.
A continuació, consulteu els projectes següents per comprendre correctament el funcionament del sensor d'ultrasons i per mesurar la distància de qualsevol objecte que l'utilitzi:
- Mesura de distància basada en Arduino mitjançant sensor d'ultrasons
- Mesura de distància mitjançant microcontrolador HC-SR04 i AVR
Mòdul Wi-Fi ESP8266:
ESP8266 és un mòdul Wi-Fi que donarà accés als vostres projectes a Wi-Fi o Internet. És un dispositiu molt econòmic, però farà que els vostres projectes siguin molt potents. Pot comunicar-se amb qualsevol microcontrolador i fer que els projectes siguin sense fils. Es troba a la llista de dispositius més importants de la plataforma IOT. Funciona amb 3,3 V i, si li doneu 5 V, obtindrà danys.

L'ESP8266 té 8 pins; el VCC i el CH-PD es connectaran al 3,3V per habilitar el wifi. Els pins TX i RX seran els responsables de la comunicació de l’ESP8266 amb l’Arduino. El pin RX funciona a 3,3 V, de manera que haurà de fer un divisor de tensió per a ell, tal com hem fet al nostre projecte.
Diagrama del circuit i explicació:
Primer de tot connectarem l’ESP8266 amb l’Arduino. L'ESP8266 funciona amb 3,3 V i, si li doneu 5 V des de l'Arduino, no funcionarà correctament i pot causar danys. Connecteu el VCC i el CH_PD al pin d'Arduino de 3,3 V. El pin RX de l'ESP8266 funciona en 3,3 V i no es comunicarà amb l'Arduino quan el connectem directament a l'Arduino. Per tant, haurem de fer-ne un divisor de tensió. Tres resistències 1k connectades en sèrie faran la feina per nosaltres. Connecteu el RX al pin 11 de l'Arduino a través de les resistències tal com es mostra a la figura següent i també el TX de l'Arduino al pin 10 de l'Arduino.
Ara toca connectar el sensor d’ultrasons HC-SR04 amb l’Arduino. Les connexions del sensor d'ultrasons amb l'Arduino són molt senzilles. Connecteu el VCC i la terra del sensor d'ultrasons al 5V i la terra de l'Arduino. A continuació, connecteu el pin TRIG i ECHO del sensor d'ultrasons al pin 8 i 9 de l'Arduino respectivament.

Explicació del codi:
Abans de penjar el codi, assegureu-vos que esteu connectat a la Wi-Fi del vostre dispositiu ESP8266. Podeu consultar el codi complet a la secció Codi següent, el codi ha estat ben explicat pels comentaris, a més, també hem explicat algunes funcions importants a continuació.
L'Arduino primer llegirà el sensor d'ultrasons. Enviarà un senyal d'ultrasons a la velocitat del so quan farem que el pin TRIG sigui alt durant 10us. El senyal tornarà a aparèixer després de copejar l'objecte i emmagatzemarem la durada del temps de viatge a la variable anomenada durada . Després calcularem la distància de l’objecte (escombraries en el nostre cas) aplicant una fórmula i l’emmagatzemarem a la variable anomenada distància .
digitalWrite (trigPin, LOW); delayMicroseconds (2); digitalWrite (trigPin, HIGH); delayMicroseconds (10); digitalWrite (trigPin, LOW); durada = pulseIn (echoPin, HIGH); distància = durada * 0,034 / 2;
Per imprimir la sortida a la pàgina web al navegador web, haurem d’utilitzar la programació HTML. Per tant, hem creat una cadena anomenada pàgina web i hi hem emmagatzemat la sortida. Per saber si la paperera està buida o no, hi hem aplicat una condició. Si la distància serà inferior a 5 cm, es mostrarà "La cistella està plena" a la pàgina web i si la distància serà superior a 5 cm, es mostrarà el missatge "La cistella està buida" a la pàgina web.
if (esp8266.available ()) {if (esp8266.find ("+ IPD")) {delay (1000); int connectionId = esp8266.read () - 48; Pàgina web de cadena = "
Sistema de control de deixalles IOT
"; pàgina web + =""; if (distància <5) {webpage + =" Paperera està plena ";} else {webpage + =" Paperera està buida ";} pàgina web + ="
";El següent codi enviarà i mostrarà les dades a la pàgina web. Les dades, emmagatzemades en una cadena anomenada "pàgina web", es desaran en una cadena anomenada "ordre" . A continuació, l'ESP8266 llegirà el caràcter un a un des de l' ordre i l'imprimirà a la pàgina web.
Cadena sendData (ordre de cadena, temps d'espera de const int, depuració booleana) {Resposta de cadena = ""; esp8266.print (ordre); long int time = millis (); while ((temps + temps d'espera)> millis ()) {while (esp8266.available ()) {char c = esp8266.read (); resposta + = c; }} if (depuració) {Serial.print (resposta); } resposta de retorn; }
Proves i sortida del projecte:
Després de penjar el codi, obriu el monitor sèrie i us mostrarà una adreça IP com es mostra a continuació.

Escriviu aquesta adreça IP al navegador, us mostrarà la sortida tal com es mostra a continuació. Haureu d’actualitzar la pàgina de nou si voleu veure de nou que la paperera està buida o no.

Així, doncs, com funciona aquest sistema de vigilància de les escombraries, aquest projecte es pot millorar encara més afegint-hi poques funcions més, com si poguem configurar un missatge més quan la paperera estigui mig omplerta o puguem activar un correu electrònic / SMS per avisar l’usuari de la paperera. La cistella està plena.
