Cum se face un coș de gunoi inteligent folosind Arduino?

Lumea se mișcă rapid, iar tehnologia se mișcă odată cu ea și în domeniul electronicii. Totul în această eră modernă devine inteligent. De ce nu facem coșurile de gunoi inteligente? Este o problemă comună care se vede în împrejurimile noastre că majoritatea coșurilor de gunoi sunt acoperite de sus. Oamenii se simt incomod să atingă capacul și să-l deschidă pentru a-și arunca erupția în el. Putem rezolva această problemă a unor persoane prin automatizarea capacului coșului de gunoi.



Coș de gunoi inteligent

Un Arduino și un senzor cu ultrasunete împreună cu servomotorul pot fi integrate pentru a face un coș de gunoi inteligent. Dacă coșul detectează niște coșuri de gunoi în fața sa, acesta își va deschide capacul automat și acesta va fi închis după o întârziere de câteva secunde.



Cum se deschide și se închide automat capacul coșului de gunoi folosind Arduino?

Acum, pe măsură ce cunoaștem rezumatul proiectului, să mergem mai departe și să începem să colectăm mai multe informații despre componente, funcționare și schema circuitului pentru a începe imediat să lucrăm la proiect.



Pasul 1: Colectarea componentelor

Dacă doriți să evitați orice inconvenient în mijlocul oricărui proiect, cea mai bună abordare este să faceți o listă completă a tuturor componentelor pe care le vom folosi. Al doilea pas, înainte de a începe să faci circuitul, este să parcurgi un scurt studiu al tuturor acestor componente. O listă cu toate componentele de care avem nevoie în acest proiect este prezentată mai jos.



  • [Amazon Link = ”B07QTQ72GJ” title = ”Arduino Nano” /]
  • [Amazon Link = ”B07JJSGL5S” title = ”Senzor cu ultrasunete” /]
  • [Amazon Link = ”B07D3L25H3 ″ title =” Servo Motor ”/]
  • [Amazon Link = ”B07PPP185M” title = ”Breadboard” /]
  • [Amazon Link = ”B01D9ZM6LS” title = ”Breadboard Jumper Wires” /]
  • [Amazon Link = ”B07QNTF9G8 ″ title =” Adaptor de alimentare 5V pentru Arduino ”/]

Pasul 2: Studierea componentelor

Acum, deoarece avem o listă completă a tuturor componentelor, să mergem cu un pas înainte și să parcurgem un scurt studiu al funcționării fiecărei componente.

Arduino Nano este o placă de microcontroler compatibilă cu panourile care este utilizată pentru a controla sau a efectua diferite sarcini într-un circuit. Ardem un Codul C pe Arduino Nano pentru a spune plăcii microcontrolerului cum și ce operațiuni să efectueze. Arduino Nano are exact aceeași funcționalitate ca Arduino Uno, dar într-o dimensiune destul de mică. Microcontrolerul de pe placa Arduino Nano este ATmega328p. dacă nu aveți un Arduino Nano, puteți utiliza și Arduino Uno sau Arduino Maga.

Arduino Nano



Placa HC-SR04 este un senzor cu ultrasunete care este utilizat pentru a determina distanța dintre două obiecte. Se compune dintr-un emițător și un receptor. Transmițătorul convertește semnalul electric într-un semnal ultrasonic, iar receptorul convertește semnalul ultrasonic înapoi în semnal electric. Când emițătorul trimite o undă cu ultrasunete, acesta se reflectă după ce se ciocnește cu un anumit obiect. Distanța este calculată utilizând timpul, pe care semnalul ultrasonic îl ia pentru a trece de la transmițător și a reveni la receptor.

Senzor cu ultrasunete.

LA Servo motor este un actuator rotativ sau liniar care poate fi controlat și deplasat în increment exact. Aceste motoare sunt diferite de motoarele de curent continuu. Aceste motoare permit controlul precis al mișcării unghiulare sau rotative. Acest motor este cuplat la un senzor care trimite feedback despre mișcarea sa.

Servo motor

Pasul 3: Înțelegerea funcționării

Realizăm un coș de gunoi al cărui capac se va deschide și închide automat și nu va mai fi nevoie să-l atingem fizic. Va trebui doar să luăm coșul de gunoi în fața coșului de gunoi. Senzorul cu ultrasunete va detecta automat coșul de gunoi și va deschide capacul cu ajutorul unui servomotor. Când capacul este deschis, vom arunca coșul de gunoi în coș și, după ce am terminat, capacul va fi închis automat după o întârziere de câteva secunde. Acesta este principiul simplu de lucru din spatele acestui proiect.

Pasul 4: Asamblarea componentelor

  1. Atașați o placă de prindere pe partea laterală a coșului de gunoi. Introduceți o placă Arduino Nano în ea.
  2. Atașați un senzor cu ultrasunete în fața coșului. senzorul ar trebui să fie orientat ușor în sus, cu un mic unghi de înălțime.
  3. Luați servomotorul și fixați un braț servo în el. Atașați servomotorul pe îmbinarea coșului și a capacului cu ajutorul lipiciului fierbinte.
  4. Acum faceți toate conexiunile prin cabluri de conectare. Conectați Vin și pământul motorului și senzorul cu ultrasunete la 5V și la pământul Arduino. Conectați pinul de declanșare al senzorului la pinul 2 și pinul de ecou la pinul 3 al Arduino. Conectați pinul PWM al servomotorului la pinul 5 al Arduino.
  5. Acum, deoarece toate conexiunile circuitului sunt realizate, ar trebui să arate astfel:

    Diagrama circuitului

Pasul 5: Noțiuni introductive despre Arduino

Dacă nu sunteți deja familiarizați cu Arduino IDE, nu vă faceți griji, deoarece o procedură pas cu pas pentru a configura și utiliza Arduino IDE cu o placă de microcontroler este explicată mai jos.

  1. Descărcați cea mai recentă versiune a Arduino IDE de la Arduino.
  2. Conectați placa Arduino Nano la laptop și deschideți panoul de control. în panoul de control, faceți clic pe Hardware și sunet . Acum faceți clic pe Dispozitive și imprimante. Aici găsiți portul la care este conectată placa de microcontroler. În cazul meu este COM14 dar este diferit pe diferite computere.

    Găsirea portului

  3. Faceți clic pe meniul Instrument. și setați tabla la Arduino Nano din meniul derulant.

    Placă de setare

  4. În același meniu Tool, setați portul la numărul de port pe care l-ați observat anterior în Dispozitive și imprimante .

    Setarea portului

  5. În același meniu Instrument, setați procesorul la ATmega328P (Bootloader vechi).

    Procesor

  6. Pentru a scrie cod pentru a acționa servomotorele, avem nevoie de o bibliotecă specială care să ne ajute să scriem mai multe funcții pentru servomotoare. Această bibliotecă este atașată împreună cu codul, în linkul de mai jos. Pentru a include biblioteca, faceți clic pe Sketch> Include Library> Add ZIP. Bibliotecă.

    Includeți biblioteca

  7. Descărcați codul atașat mai jos și lipiți-l în ID-ul dvs. Arduino. Faceți clic pe încărcați butonul pentru a arde codul de pe placa de microcontroler.

    Încărcare

Pentru a descărca codul, Click aici.

Pasul 6: Înțelegerea codului

Codul este destul de bine comentat, dar este explicat pe scurt mai jos.

1. La început, este inclusă o bibliotecă, astfel încât să putem folosi funcții încorporate pentru a acționa servomotorul. De asemenea, sunt inițializați doi pini ai plăcii Arduino Nano, astfel încât să poată fi folosiți pentru declanșatorul și pinul de ecou al senzorului cu ultrasunete. Un obiect este, de asemenea, realizat astfel încât să poată fi folosit pentru a seta valori pentru servomotoare. De asemenea, sunt declarate două variabile, astfel încât valoarea distanței și a timpului semnalului ultrasonic să poată fi salvată și apoi utilizată în formulă.

#include // Include Library for Servo Motor Servo servo; // Declarați un obiect pentru servomotor int const trigPin = 2; // Conectați pin2 de arduino cu trig de senzor cu ultrasunete int const echoPin = 3; // Conectați pinul 3 al arduino cu ecoul senzorului ultrasonic durată, distanță; // Declarați variabilele pentru a stoca distanța și tipul semnalului ultrasonic

2. configurare nulă () este o funcție în care inițializăm pinii plăcii Arduino pentru a fi folosiți ca INPUT sau OUTPUT. Pinul de declanșare va fi utilizat ca ieșire și un pin de ecou va fi folosit ca intrare. Am folosit obiectul servo , pentru a conecta motorul la pinul 5 al Arduino nano. Pin5 poate fi utilizat pentru a trimite semnalul PWM. Rata de transmisie este, de asemenea, setată în această funcție. Rata de transmisie este viteza de biți pe secundă prin care microcontrolerul comunică cu dispozitivele externe.

void setup () {Serial.begin (9600); // setarea ratei de transmisie a microcontrolerului pinMode (trigPin, OUTPUT); // trig pin va fi folosit ca pin pin Mode (echoPin, INPUT); // echo pin va fi folosit ca intrare servo.attach (5); // Conectați servomotorul la pin5 de arduino}

3. bucla nulă () este o funcție care rulează din nou și din nou în buclă. În această buclă, o undă ultrasonică este trimisă în jurul și primită înapoi. Distanța parcursă este măsurată folosind timpul luat de semnal pentru a părăsi senzorul și a reveni la acesta. Apoi, condiția este aplicată la distanță în consecință.

bucla void () {digitalWrite (trigPin, HIGH); // trimiterea unui semnal ultrasonic în întârzierea înconjurătoare (1); digitalWrite (trigPin, LOW); // Măsurați impulsul de intrare în durata pinului de ecou = pulseIn (echoPin, HIGH); // Distanța este jumătate din durata divizată cu 29,1 (din foaia de date) distanță = (durata / 2) / 29,1; // dacă distanța mai mică de 0,5 metri și mai mare de 0 (0 sau mai puțin înseamnă peste interval) dacă (distanță = 0) {servo.write (50); întârziere (3000); } else {servo.write (160); }}

Acum, după cum știm toți pașii care trebuie parcurși pentru a face acest proiect uimitor, grăbește-te și bucură-te de a-ți face gunoiul inteligent.