Turinys:
- Prekės
- 1 žingsnis: istorija
- 2 žingsnis: teorija ir metodika
- 3 žingsnis: Aparatūros sąranka
- 4 žingsnis: programinės įrangos sąranka
- 5 žingsnis: „Arduino“kodas
Video: Išmanioji šiukšliadėžė iš „Magicbit“: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Šioje pamokoje sužinosime, kaip pasigaminti išmaniąją šiukšliadėžę naudojant „Magicbit dev“. lenta su „Arduino IDE“. Pradėkime.
Prekės
- „Magicbit“
- Kabelis nuo USB-A iki mikro-USB
- Ultragarsinis jutiklis - HC -SR04 (bendras)
- SG90 mikro servo variklis
1 žingsnis: istorija
Prieš pereidami prie projekto, pažvelkime, kas yra išmanioji šiukšliadėžė. Kiekvienuose namuose yra viena ar kelios šiukšliadėžės. Daugybę kartų jūs jį uždengėte. Nes tai suteiks kvapą jūsų namuose. Taigi, kai norite išmesti šiukšles į šiukšliadėžę, turite jas atidaryti. Bet jei eidami prie šiukšliadėžės sudėti šiukšles ir automatiškai atsidaro jų dangtis, tada kaip jos atrodo. Beprotis aaa…. taigi tai yra protinga šiukšliadėžė.
2 žingsnis: teorija ir metodika
Teorija labai paprasta. Kai eisite prie šiukšliadėžės, jis jus aptiks. Jei atstumas tarp jūsų ir šiukšliadėžės yra mažesnis už nustatytą atstumą, šiukšliadėžės dangtis atsidarys automatiškai. Abiems šiems objektams užbaigti naudojame ultragarsinį jutiklį HC-SRO4 ir mažus servo variklius. Galite įsigyti bet kokio tipo skaitmeninį servo variklį.
3 žingsnis: Aparatūros sąranka
Šiam projektui mes daugiausia naudojome tris aparatūros komponentus. Tai „Magicbit“, servo variklis ir ultragarsinis jutiklis. Visų šių dalių jungtis parodyta aukščiau esančiame paveikslėlyje.
Ultragarsinis jutiklis įjungimui naudojo 3,3 v. Todėl mes naudojome dešinįjį apatinį „Magicbit“plokštės prievadą, kad prijungtume ultragarsinį jutiklį prie „Magicbit“. Tačiau servo variklis naudojamas 5 V, kad tinkamai veiktų, todėl mes naudojome apatinį kairįjį prievadą, kad prijungtume servo variklį prie „Magicbit“. Šiuo atveju mes naudojame „Magic bit“servo jungties modulį. Bet jei neturite to modulio, galite naudoti tris trumpiklius laidus, kad prijungtumėte 5V prie 5V, Gnd - Gnd ir signalų kaištį prie 26 kontaktų „Magicbit“.
Dabar pažvelkime į mechaninę mūsų projekto pusę. Norėdami atidaryti dangtį, naudojame labai paprastą svirties mechanizmą. Mes prijungėme vieną šoninį servo rankinį spaustuką prie servo. Tada mes sujungėme kampinę skylę spaustuke ir šiukšliadėžės dangtelį, naudodami stiprią metalinę vielą. Metalinė viela gali suktis servo spaustuko ir šiukšliadėžės dangčio atžvilgiu. Studijuodami viršutinį vaizdą ir vaizdo įrašą, galite tai sukurti labai lengvai.
4 žingsnis: programinės įrangos sąranka
Programinės įrangos dalis taip pat yra labai paprasta. Pažvelkime į „Arduino IDE“kodą ir kaip šis kodas veikia.
Vairuoti servo mes naudojame ESP32 servo biblioteką. Ši biblioteka beveik įtraukta į stebuklingą bitų plokštės tvarkyklę „Arduino IDE“. Norėdami susidoroti su ultragarso jutikliu, naudojame „newPing“biblioteką. Tai galima atsisiųsti iš šios nuorodos.
bitbucket.org/teckel12/arduino-new-ping/d…
Atsisiųskite ZIP failą ir eikite į įrankius> įtraukite biblioteką> pridėkite „Zip“biblioteką „Arduino“. dabar pasirinkite atsisiųstą naujos PIN bibliotekos ZIP failą. kode pirmiausia deklaruojame servo ir ultragarso jutiklių bibliotekas. Naudodami kilpos funkciją, mes visada tikriname atstumą nuo šiukšliadėžės iki artimiausio priekinio objekto. Jei ši trintukas yra didesnis nei 200, tada bibliotekos išvesties atstumas yra 0. Kai atstumas yra mažesnis nei 60 cm, tada ji vykdoma kilpai, kad dangtelis būtų atidarytas sukant servo sistemą. Jei atstumas didesnis nei 60 cm, dangtelis nukris. Naudodami loginį kintamąjį, visada tikriname dangtelio būseną. Jei dangtelis nuleistas, tik jis atsidarys. Taip pat ir atvirkščiai. Dabar pasirinkite teisingą COM prievadą ir plokštę kaip magcibitą, tada įkelkite kodą. Dabar jūsų išmanioji šiukšliadėžė paruošta naudoti.
5 žingsnis: „Arduino“kodas
#įtraukti
#define TRIGGER_PIN 21 #define ECHO_PIN 22 #define MAX_DISTANCE 200 NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); #include // include servo library int distance; Servo radarasServo; void setup () {Serial.begin (115200); RadarServo.attach (26); // Apibrėžia, ant kurio kaiščio yra prijungtas servo variklio uždelsimas (3000); } void loop () {// pasuka servo variklį nuo 15 iki 165 laipsnių (int i = 0; i <= 180; i ++) {RadarServo.write (i); vėlavimas (50); distance = sonar.ping_cm (); // Iškviečia funkciją, skirtą apskaičiuoti atstumą, išmatuotą ultragarso jutikliu kiekvienam laipsniui (int j = 0; j0) {break; } Serijinis atspaudas (i); // Siunčia dabartinį laipsnį į serijinį prievadą Serial.print (","); // Siunčia papildymo simbolį prie pat ankstesnės vertės, reikalingos vėliau apdorojimo IDE, kad būtų galima indeksuoti Serial.print (j); // Siunčia dabartinį laipsnį į serijinį prievadą Serial.print ("*"); Serijinis atspaudas (1); // Siunčia atstumo reikšmę į nuoseklųjį prievadą Serial.print ("/"); // Siunčia papildymo simbolį prie pat ankstesnės vertės, reikalingos vėliau apdorojimo IDE, kad būtų galima indeksuoti Serial.print (atstumas); // Siunčia atstumo reikšmę į nuoseklųjį prievadą Serial.print ("."); // Siunčia papildymo simbolį prie ankstesnės vertės, reikalingos vėliau apdorojant IDE indeksavimui}} // // Pakartoja ankstesnes eilutes nuo 165 iki 15 laipsnių (int i = 180; i> = 0; i-) {RadarServo.rašyti (i); vėlavimas (50); atstumas = sonar.ping_cm (); už (int j = 75; j> = 0; j- = 25) {jei (i == 180 && (j == 75 || j == 50 || j == 25)) {tęsti; } Serijinis atspaudas (i); // Siunčia dabartinį laipsnį į serijinį prievadą Serial.print (","); // Siunčia papildymo simbolį prie pat ankstesnės vertės, reikalingos vėliau apdorojimo IDE, kad būtų galima indeksuoti Serial.print (j); // Siunčia dabartinį laipsnį į serijinį prievadą Serial.print ("*"); Serijinis atspaudas (-1); // Siunčia atstumo reikšmę į nuoseklųjį prievadą Serial.print ("/"); // Siunčia papildymo simbolį prie pat ankstesnės vertės, reikalingos vėliau apdorojimo IDE, kad būtų galima indeksuoti Serial.print (atstumas); // Siunčia atstumo reikšmę į nuoseklųjį prievadą Serial.print ("."); // Siunčia papildomą simbolį šalia ankstesnės vertės, kurios vėliau prireiks apdorojant IDE indeksuojant}}}
Rekomenduojamas:
Išmanioji šiukšliadėžė naudojant „Arduino“, ultragarso jutiklį ir servo variklį: 3 žingsniai
Išmanioji šiukšliadėžė naudojant „Arduino“, ultragarsinį jutiklį ir servo variklį: Šiame projekte parodysiu, kaip padaryti išmaniąją šiukšliadėžę naudojant „Arduino“, kur šiukšliadėžės dangtis automatiškai atsidarys, kai artėsite prie šiukšlių. Kiti svarbūs komponentai, naudojami gaminant šią išmaniąją šiukšliadėžę, yra ultragarsinis jutiklis HC-04
Išmanioji šiukšliadėžė: 6 žingsniai
Protingas šiukšliadėžė: Sveiki, vaikinai !!! Aš esu Vedaanshas Verdhanas. Ir šiandien aš jums parodysiu, kaip pasidaryti savo išmaniąją šiukšliadėžę. Sekite mane „Instragram“, kad gautumėte informacijos apie kitą mano projektą. Pradėkime !!!! Instragramos sąskaita: --- robotika_08
Išmanioji šiukšliadėžė su automobiliu: 5 žingsniai
Išmanioji šiukšliadėžė su automobiliu: Tai protinga šiukšliadėžė su ultragarso jutikliu, automobiliu ir mygtuku, todėl paspaudus juda į priekį. Šį projektą įkvėpė https://www.instructables.com/id/DIY-Smart-Dustbin-With-Arduino/ Štai keletas dalių, kurias padariau: 4 ratai
Išmanioji šiukšliadėžė: 9 žingsniai
„Smart Bin“: kodėl „Smart Bin“? Kiekvienas turi šiukšlių. Ir greičiausiai visi patyrė skaudų ginčą, kas ir kada turėtų išvežti šiukšles. Neseniai turėjome tokį ginčą savo namuose ir nusprendėme, kad atėjo laikas nutraukti šią beprotybę
„IoT“pagrįsta išmanioji šiukšliadėžė: 8 žingsniai
„IoT“pagrįsta išmanioji šiukšliadėžė: Šioje pamokoje mes sukursime „IoT“pagrįstą išmaniąją šiukšliadėžės stebėjimo sistemą. Mes stebėsime, ar šiukšliadėžė pilna, ar ne, o jei pilna, pranešime savininkui per savo telefono tiesioginį pranešimą. Programinės įrangos reikalavimai: „Blynk“