Kuidas Arduino abil nutikat prügikasti teha?

Maailm liigub kiiresti ja tehnoloogia liigub sellega ka elektroonika valdkonnas. Kõik sellel moodsal ajastul läheb targaks. Miks me ei tee prügikaste nutikaks? See on tavaline probleem, mida meie ümbruses nähakse, et enamik prügikaste on kaetud ülevalt. Inimesed tunnevad ebamugavust kaant puudutada ja seda avada, et lööve sinna sisse visata. Mõne inimese probleemi saame lahendada prügikasti kaane automatiseerimisega.



Nutikas prügikast

Nutika prügikasti valmistamiseks saab integreerida Arduino ja ultrahelianduri koos servomootoriga. Kui prügikast tuvastab enda ees prügikasti, avab see kaane automaatselt ja kaane suletakse mõne sekundi pärast.



Kuidas Arduino abil prügikasti kaant automaatselt avada ja sulgeda?

Nüüd, kui teame projekti kokkuvõtet, liigume edasi ja hakkame koguma lisateavet komponentide, töö ja elektriskeemi kohta, et kohe projektiga tegelema hakata.



1. samm: komponentide kogumine

Kui soovite vältida ebamugavusi mis tahes projekti keskel, on parim viis koostada täielik loetelu kõikidest komponentidest, mida kavatseme kasutada. Teine samm, enne vooluringi alustamist, on kõigi nende komponentide lühike uurimine. Allpool on toodud loetelu kõigist komponentidest, mida me selles projektis vajame.



  • [Amazon Link = 'B07QTQ72GJ' title = 'Arduino Nano' /]
  • [Amazon Link = 'B07JJSGL5S' pealkiri = 'Ultraheliandur' /]
  • [Amazon Link = ”B07D3L25H3” pealkiri = ”Servomootor” /]
  • [Amazon Link = 'B07PPP185M' pealkiri = 'Leibplaat' /]
  • [Amazon Link = 'B01D9ZM6LS' pealkiri = 'Leiblaua hüppaja juhtmed' /]
  • [Amazon Link = ”B07QNTF9G8” pealkiri = ”5 V toiteadapter Arduinole” /]

2. samm: komponentide uurimine

Nüüd, kui meil on kõigi komponentide täielik loetelu, liikugem ühe sammu võrra edasi ja uurime lühidalt iga komponendi tööd.

Arduino Nano on leivalauale sobiv mikrokontrollerplaat, mida kasutatakse vooluringis erinevate ülesannete juhtimiseks või täitmiseks. Me põletame a C kood Arduino nanos, et öelda mikrokontrolleri plaadile, kuidas ja milliseid toiminguid teha. Arduino Nano on täpselt sama funktsionaalsusega kui Arduino Uno, kuid üsna väikeses suuruses. Mikrokontroller Arduino Nano plaadil on ATmega328p. kui teil pole Arduino Nano, võite kasutada ka Arduino Unot või Arduino Maga.

Arduino Nano



HC-SR04 plaat on ultraheliandur, mida kasutatakse kahe objekti vahelise kauguse määramiseks. See koosneb saatjast ja vastuvõtjast. Saatja muundab elektrisignaali ultrahelisignaaliks ja vastuvõtja teisendab ultrahelisignaali tagasi elektrisignaaliks. Kui saatja saadab ultrahelilaine, peegeldub see pärast kokkupõrget kindla objektiga. Vahemaa arvutamiseks kasutatakse aega, mis ultraheli signaalil läheb saatjalt ja jõuab vastuvõtjani tagasi.

Ultraheliandur.

TO Servomootor on pöörlev või lineaarne ajam, mida saab juhtida ja liigutada täpse sammuga. Need mootorid erinevad alalisvoolumootoritest. Need mootorid võimaldavad nurga- või pöördliikumist täpselt juhtida. See mootor on ühendatud anduriga, mis saadab tagasisidet oma liikumise kohta.

Servomootor

3. samm: töö mõistmine

Valmistame prügikasti, mille kaas automaatselt avaneb ja sulgub ning seda pole vaja füüsiliselt puudutada. Me peame lihtsalt prügikasti ette võtma. Ultraheliandur tuvastab prügikasti automaatselt ja avab servomootori abil kaane. Kui kaas on avatud, viskame prügikasti prügikasti ja kui see on valmis, suletakse kaas mõne sekundi viivituse järel automaatselt. See on selle projekti taga lihtne tööpõhimõte.

4. samm: komponentide kokkupanek

  1. Kinnitage leivakast prügikasti küljele. Sisestage Arduino Nano plaat sellesse.
  2. Kinnitage prügikasti ette ultraheliandur. andur peaks olema väikese kõrguse nurga all veidi ülespoole suunatud.
  3. Võtke servomootor ja kinnitage servohoob selle sisse. Kinnitage servomootor kuuma liimi abil prügikasti ja kaane ühenduskohale.
  4. Nüüd tehke kõik ühendused juhtmete kaudu. Ühendage Vin ja mootori maandus ning ultraheliandur Arduino 5 V ja maandusega. Ühendage anduri päästik nööpnõelaga pin2 ja kajalapp Arduino tihvtiga3. Ühendage servomootori PWM-tihvt Arduino pin5-ga.
  5. Nüüd, kui kõik vooluahela ühendused on loodud, peaks see välja nägema järgmine:

    Vooluringi skeem

5. samm: Arduinoga alustamine

Kui te pole Arduino IDE-ga juba tuttav, ärge muretsege, sest allpool on selgitatud samm-sammult protseduuri Arduino IDE seadistamiseks ja kasutamiseks mikrokontrolleriplaadiga.

  1. Laadige alla Arduino IDE uusim versioon saidilt Arduino.
  2. Ühendage oma Arduino Nano plaat sülearvutiga ja avage juhtpaneel. klõpsake juhtpaneelil nuppu Riistvara ja heli . Nüüd klõpsake nuppu Seadmed ja printerid. Siit leiate porti, millega teie mikrokontrolleri plaat on ühendatud. Minu puhul on see nii KOM14 kuid see on erinevates arvutites erinev.

    Sadama leidmine

  3. Klõpsake menüüd Tööriist. ja seadke tahvel asendisse Arduino Nano rippmenüüst.

    Laua määramine

  4. Määrake samas menüüs Tööriist portiks pordinumber, mida olete enne Seadmed ja printerid .

    Pordi seadistamine

  5. Valige samas menüüs Tööriist protsessor ATmega328P (vana alglaadur).

    Protsessor

  6. Servomootorite käitamiseks koodi kirjutamiseks vajame spetsiaalset raamatukogu, mis aitab meil kirjutada mitu servomootorite funktsiooni. See teek on lisatud koos koodiga alloleval lingil. Teegi kaasamiseks klõpsake nuppu Visand> Kaasa teek> Lisa ZIP. Raamatukogu.

    Kaasa teek

  7. Laadige alla allolev kood ja kleepige see oma Arduino IDE-sse. Klõpsake nuppu Laadi üles nupp mikrokontrolleri plaadil oleva koodi kirjutamiseks.

    Laadi üles

Koodi allalaadimiseks kliki siia.

6. samm: koodeksist aru saamine

Kood on üsna hästi kommenteeritud, kuid siiski on seda lühidalt selgitatud allpool.

1. Alguses on kaasas raamatukogu, et saaksime servomootori juhtimiseks kasutada sisseehitatud funktsioone. Samuti initsialiseeritakse Arduino Nano plaadi kaks tihvti, nii et neid saab kasutada ultrahelianduri päästiku ja kajavarda jaoks. Samuti valmistatakse objekt, nii et seda saab kasutada servomootorite väärtuste määramiseks. Samuti deklareeritakse kaks muutujat, nii et ultrahelisignaali kauguse ja aja väärtust saab salvestada ja seejärel valemis kasutada.

#include // Kaasa servomootori kogu Servo servo; // Kuulutage servomootori objekti int const trigPin = 2; // Ühendage arduino pin2 ultrahelianduri trigiga int const echoPin = 3; // Ühendage arduino pin3 ultrahelianduri kajaga int kestus, kaugus; Deklareerige muutujad ultrahelisignaali kauguse ja tüübi salvestamiseks

2. kehtetu seadistamine () on funktsioon, milles lähtestame Arduino plaadi tihvtid, mida kasutatakse sisendina või väljundina. Väljundina kasutatakse päästikut ja sisendina kajavardat. Oleme objekti kasutanud servo , mootori ühendamiseks Arduino nano tihvtiga 5. Pin5-d saab kasutada PWM-signaali saatmiseks. Selles funktsioonis on seatud ka ülekandekiirus. Baudi kiirus on bitti sekundis kiirus, mille abil mikrokontroller suhtleb väliste seadmetega.

void setup () {Seeria.alusta (9600); // mikrokontrolleri pinMode (trigPin, OUTPUT) andmeedastuskiiruse seadmine; // trig pin-i kasutatakse väljundina pinMode (echoPin, INPUT); // sisendina servo.attach (5) kasutatakse kaja tihvti; // Cnnect servomootor arduino pin5-le}

3. void loop () on funktsioon, mis töötab ikka ja jälle silmusena. Selles silmus saadetakse ultraheli laine ümbritsevasse ja võetakse tagasi. Läbitud vahemaad mõõdetakse signaali poolt andurist lahkumiseks ja selle juurde naasmiseks kuluva aja abil. Seejärel rakendatakse tingimus kaugusele vastavalt.

void loop () {digitalWrite (trigPin, HIGH); // ultrahelisignaali saatmine ümbritsevas viivituses (1); digitalWrite (trigPin, LOW); // Mõõtke impulsi sisend kaja tihvti kestus = pulseIn (echoPin, HIGH); // Kaugus on pool kestusest jagatuna 29,1-ga (andmelehelt) kaugus = (kestus / 2) / 29,1; // kui kaugus on väiksem kui 0,5 meetrit ja üle 0 (0 või vähem tähendab vahemikku) if (kaugus = 0) {servo.write (50); viivitus (3000); } else {servo.write (160); }}

Nüüd, kui teame kõiki selle hämmastava projekti läbimiseks vajalikke samme, kiirustage ja nautige oma nutika prügikasti tegemist.