Sadržaj:

Arduino krijesnice: 11 koraka (sa slikama)
Arduino krijesnice: 11 koraka (sa slikama)

Video: Arduino krijesnice: 11 koraka (sa slikama)

Video: Arduino krijesnice: 11 koraka (sa slikama)
Video: Программирование Ардуино с нуля. Arduino для начинающих. 2024, Novembar
Anonim
Image
Image
Šta će vam trebati
Šta će vam trebati

Jedna od stvari kojima se radujem tokom ljeta u Pensilvaniji su krijesnice u mom dvorištu. Nedavno sam naučio Adruino programiranje u svrhu izrade ovog jednostavnog projekta. Odličan je program za početak i dovoljno je jednostavan za svakog programera, od početnika do stručnjaka, da ga izgradi, modificira i zabavi u samo nekoliko minuta. Hajde da počnemo.

Korak 1: Šta će vam trebati

Šta će vam trebati
Šta će vam trebati

Da bi vaše greške treperile, potrebne su vam ove komponente:

  • Arduino. Počeo sam s Nanoom, međutim bilo koji mikrokontroler kompatibilan s Arduinom će uspjeti.
  • Žute LED diode, 5 mm. Možete ih koristiti do 6.
  • Otpornici. Za ograničenje struje trebat će vam jedan otpornik po LED -u. Koristio sam 470-ohm, ali sve iznad 150 ohma bi trebalo biti u redu za zaštitu vašeg mikro-kontrolera.
  • Breadboard.
  • Žica za kratkospojnike.

Da biste dovršili projekat za svoje dvorište, trebat će vam:

  • Kutija za projekte otporna na vremenske uvjete.
  • 9-voltna baterija sa priključkom. (Pogledajte napomene pri dnu ovog odjeljka.)
  • Switch. (Odabrao sam ove vodootporne prekidače. Ako ovo ne koristite vani, bilo koji prekidač će poslužiti.)
  • Nekoliko metara žice za postavljanje LED dioda po vrtu. Koristio sam oko 10 stopa Cat5 Ethernet žice po LED -u.
  • Mala matična ploča ili neka odlična ploča.
  • Kabelska uvodnica otporna na vremenske uvjete kroz koju prolaze LED žice. (Ovo možete izostaviti ako ovo ne koristite i vani.)
  • Termoskupljajuće cijevi za zaštitu vaših LED bubica.
  • Zelene trake s kukom i omčom (tj. Čičak) za pričvršćivanje LED krijesnica na biljke i stupove u vašem vrtu.
  • Muški zaglavlji za uključivanje komponenti u vašu malu ploču.

Alati:

  • Bušilice za projektnu kutiju. (Iskoristite ovu priliku da sebi priuštite dobar korak. Bit će vam drago da ste to učinili).
  • Pištolj za vruće ljepilo.
  • Lemilica.
  • Rotacijski alat (tj. Dremel) za iscrtavanje prostora u kutiji za projekt ako vam zatreba.

Evo nekoliko napomena:

1. Izbor baterije je bio za brzo i jednostavno pokretanje. Trajno korištenje 9-voltne baterije malo je rasipno. Bolje vam je da koristite držač baterije od 4x AA za duži vijek trajanja (međutim, trebat će vam veća kutija u koju ćete ugraditi).

2. Ako odlučite dekonstruirati Cat 5 Ethernet kabel za žice, pobrinite se da su od bakrenog jezgra i uredno ih omotajte oko PVC -a kako biste ih organizirali dok radite. Opet sam koristio oko 10 stopa žice po LED -u. Ako želite raširiti svjetla na sve strane, svakako upotrijebite duže žice!

3. Na kraju, sve veze koje sam naveo su samo prijedlozi. Pročitajte cijeli ovaj Instructable prije nego što izgradite ili kupite bilo šta jer ćete bolje razumjeti kako želite lično nastaviti.

Korak 2: Izgradite krug

Izgradite krug
Izgradite krug
Izgradite krug
Izgradite krug
Izgradite krug
Izgradite krug

Ovaj projekt koristi iglice za modulaciju širine impulsa na vašem Arduinu. Mikrokontroler ima 6 ovih pinova i možete ih koristiti koliko god želite. Krug je prilično ravan. Ožičite svu snagu iz pinova D3, D5, D6, D9, D10 i D11 s impulsnom modulacijom širine (PWM) na pozitivne krajeve vaših LED dioda. Ožičite negativne krajeve na otpornike, a zatim na zajedničko uzemljenje. (Otpornici mogu ići ispred ili iza LED diode. Nema razlike ako ne želite zaštititi od kratkih spojeva pri većim strujama.) Uključio sam nekoliko shema koje će pomoći pri ožičenju. (Dijagrami su napravljeni pomoću softvera za dizajn Fritzing.)

Korak 3: Kôd

Image
Image

Ako ste iskusan programer, ovaj kod će vam biti pojednostavljen. Odličan je kôd za početak učenja jer vas upoznaje s upotrebom varijabli, pinmodova, funkcija, pa čak i slučajnog generatora. Kôd nije tako kompaktan koliko može biti, siguran sam da se isti efekat može postići nizovima itd.

Komentari koda izlažu logiku svakog odjeljka. Cijeli kôd je ugrađen ovdje i skicu možete preuzeti ispod.

/*

Ova skripta treperi 6 LED dioda (naravno žute) nasumičnim redoslijedom u slučajnim intervalima koristeći PWM. Svakom LED diodom upravlja vlastita funkcija. */ int led1 = 3; // LED spojen na PWM pin 3 itd. Koristio sam svih 6 PWM pinova. int led2 = 5; int led3 = 6; int led4 = 9; int led5 = 10; int led6 = 11; dugi randnum; // randnum kontrolira vremenski interval između bljeskova i dugog randbuga; // randbug kontrolira koja greška se pali. void setup () {pinMode (led1, OUTPUT); // Postavljanje svih PWM pinova kao izlaza. pinMode (led2, OUTPUT); pinMode (led3, OUTPUT); pinMode (led4, OUTPUT); pinMode (led5, OUTPUT); pinMode (led6, OUTPUT); } void loop () {randbug = random (3, 12); // randbug nasumično bira funkciju za izvršavanje, // tako nasumično bira grešku koja će se upaliti. if (randbug == 3) {bug1 (); } if (randbug == 5) {bug2 (); } if (randbug == 6) {bug3 (); } if (randbug == 9) {bug4 (); } if (randbug == 10) {bug5 (); } if (randbug == 11) {bug6 (); }} / * * Svaka od ovih funkcija radi na isti način. 'za petlje' povećajte, a zatim smanjite * izlaz tog pina za kontrolu svjetline LED -a. * 'randnum' je nasumični vremenski interval između 10 i 3000 ms * i odabire vremenski interval između bljeskova grešaka. * 'delay 10' služi samo za efekt fade. */ void bug1 () {randnum = random (10, 3000); for (int fadeValue = 0; fadeValue = 0; fadeValue -= 5) {analogWrite (led1, fadeValue); kašnjenje (10); } kašnjenje (randnum); } void bug2 () {randnum = random (10, 3000); for (int fadeValue = 0; fadeValue = 0; fadeValue -= 5) {analogWrite (led2, fadeValue); kašnjenje (10); } kašnjenje (randnum); } void bug3 () {randnum = random (10, 3000); for (int fadeValue = 0; fadeValue = 0; fadeValue -= 5) {analogWrite (led3, fadeValue); kašnjenje (10); } kašnjenje (randnum); } void bug4 () {randnum = random (10, 3000); for (int fadeValue = 0; fadeValue = 0; fadeValue -= 5) {analogWrite (led4, fadeValue); kašnjenje (10); } kašnjenje (randnum); } void bug5 () {randnum = random (10, 3000); for (int fadeValue = 0; fadeValue = 0; fadeValue -= 5) {analogWrite (led5, fadeValue); kašnjenje (10); } kašnjenje (randnum); } void bug6 () {randnum = random (10, 3000); for (int fadeValue = 0; fadeValue = 0; fadeValue -= 5) {analogWrite (led6, fadeValue); kašnjenje (10); } kašnjenje (randnum); }

Korak 4: Izgradite kutiju

Gradite kundake!
Gradite kundake!

Nakon što ste svom Arduinu dodali kôd i natjerali krijesnice da rade kako želite, možda biste ih htjeli staviti u vrt; to znači projektna kutija i malo termoskupljanja kako bi Arduino i LED bili suhi. Napravimo!

Korak 5: Izgradite kundake grešaka

Gradite kundake!
Gradite kundake!
Gradite kundake!
Gradite kundake!
Gradi kundake!
Gradi kundake!
  • Odrežite LED vodiče na otprilike 5 mm.
  • Ogolite i kosite krajeve žica koje koristite, također oko 5 mm.
  • Gurnite 1 mm termoskupljajuću cijev preko svakog kraja žice.
  • Lemite LED na žicu. (U ovom trenutku trebate odabrati koja će žica u vašem paru biti vaša pozitivna, a koja negativna. Ja sam odabrao punu žicu kao pozitivnu, a bijelu kao negativnu. Održavajte tu strategiju kroz cijeli projekt kako biste kasnije izbjegli glavobolje!)
  • Gurnite termoskupljalac do kraja preko gole žice i LED kabela. Pustite ih brzim plamenom da ih skupite do žica.
  • Gurnite još jedan dio termoskupljanja preko LED diode i žica s LED lećom koja strši s kraja i otopite je na mjestu.
  • Gurnite nekoliko komada termoskupljajućeg materijala na žicu kroz cijelu dužinu i otopite je na svakih nekoliko stopa kako bi žica bila uredna.

Korak 6: Pripremite okvir projekta

Pripremite okvir projekta
Pripremite okvir projekta
Pripremite okvir projekta
Pripremite okvir projekta
  • Pomoću rotacijskog alata s bubnjem za brušenje očistite svu nepotrebnu plastiku u kutiji za projekt. (Pazite da ne odrežete sve vijčane nosače koji će vam možda trebati da sastavite kutiju.)
  • Odlučite gdje želite da vaš prekidač bude i da LED žice izlaze. Predlažem strane, ali koristite sve što vam odgovara.
  • Svrdlom odgovarajuće veličine napravite rupe za kabelsku uvodnicu i prekidač.

Napomena: Na gornjoj fotografiji vidjet ćete da sam napravio "lažni kabel". Ovo je snop od 6 pari žica koje sam koristio za LED diode s toplinskim skupljanjem kako bih ih spojio. Koristio sam ga kako bih se uvjerio da se kabelska uvodnica dobro uklapa u stvarni snop kabela, a također i za ispitivanje vodootpornosti kutije nakon što su prekidač, kabelska uvodnica i poklopac bili uključeni. (Nakon što je 24 sata bio potopljen u 6 inča vode, unutra je imao vrlo malo vlage. Bilo bi mi drago nazvati ovu kutiju "otpornom na vremenske uvjete.")

Korak 7: Donesite snagu

Donesite snagu!
Donesite snagu!
Donesite snagu!
Donesite snagu!
  • Odredite koliko će vam baterije i žice za prebacivanje biti potrebno da dođete do svog Arduina tako što ćete grubo staviti sve tri komponente u okvir za projekt. Odrežite žice prekidača i 9V konektora za bateriju. Ogolite i kosite krajeve. Za sljedeći korak umetnite termoskupljanje.
  • Odrežite dvije muške iglice zaglavlja sa svoje trake (ali ih držite zajedno).
  • Lemite crveni provodnik 9V konektora baterije na jedan kraj prekidača. Lemite drugi kraj prekidača na muški pin zaglavlja. Lemite crni provodnik baterije na drugi muški pin zaglavlja.
  • Kao što je prikazano na gornjem dijagramu, pinovi zaglavlja će ići u matičnu ploču za napajanje Nano -a na VIN (pozitivno) i GND (negativno). VIN pin može izdržati 7 do 12 volti. Ako namjeravate napajati svoj Arduino na način koji nije 9V baterija, upotrijebite drugi pin za napajanje.

Korak 8: Izmijenite Nano ako je potrebno

Izmijenite Nano ako je potrebno
Izmijenite Nano ako je potrebno

Kako je moj projektni okvir bio prilično plitak, morao sam ukloniti pinove zaglavlja ICSP -a kako bi odgovarao. Ovi pinovi su sekundarno sučelje s vašim Arduinom. Uklanjanjem istih nećete oštetiti Nano jer uvijek možete učitati skripte kroz USB priključak.

Napomena: Ako je vašem Nano -u potrebno zalemiti igle zaglavlja, jednostavno izostavite ove igle prilikom sastavljanja Arduina.

Korak 9: Ožičite unutrašnjost

Image
Image
Ožičite unutrašnjost
Ožičite unutrašnjost
Ožičite unutrašnjost
Ožičite unutrašnjost
  • Pričvrstite priključak kabelske uvodnice na projektnu kutiju u rupu koju ste za nju izbušili. Ako ste zbunjeni kako koristiti kabelsku uvodnicu, ovaj video koji sam pronašao na YouTubeu prikazuje jedan koji se sastavlja. (premotajte unapred do 0:57.) Možda imate gumenu podlošku. To ide između projektne kutije i vanjske matice uvodnice kabela.
  • Skupite labave krajeve LED žica. Odvojite ovo vrijeme da ih podrežete na jednaku dužinu, ogolite i pokosite krajeve. Provucite krajeve kroz čep kabelske uvodnice i upotrijebite komad toplotnog skupljanja da spojite krajeve, ostavljajući dovoljno duljine da dosegne ploču s unutarnje strane kutije.
  • Provucite žicu žice kroz otvor kabelske uvodnice u kutiju za projekt i okrenite poklopac uvodnice da biste žice zaključali na mjestu, po mogućnosti oko termoskupljanja koje ste koristili za njihovo povezivanje.
  • Odvojite žice za uzemljenje od pozitivnih žica (sjetite se koje ste prethodno odabrali). Spajati sve žice za uzemljenje u jedno zajedničko uzemljenje. Pričvrstite kratku žicu iz te hrpe i dovršite je s 1 muškim zaglavljem. Upotrijebite termoskupljanje kako biste zaštitili gole lemne spojeve.
  • Lemite muške zaglavlje na krajevima svake pozitivne žice. Ponovo upotrijebite termoskupljanje.
  • Umetnite zaglavlja s pozitivnim krajem u matičnu ploču za spajanje na PWM pinove na Arduinu.
  • Umetnite zajedničku masu u ploču tako da prođe kroz otpornik za ograničavanje struje, a zatim do GND -a na Arduinu.
  • Umetnite bateriju i postavite prekidač kroz otvor u kutiji koju ste ranije izbušili. Postavite gumenu podlošku između projektne kutije i zatvarača. Priključite kablove za napajanje u matičnu ploču.
  • Poklopac pričvrstite ili pričvrstite na kutiju. Gotov si!

Napomena: Napomena u shemama i u razvojnim fazama koristio sam jedan otpornik za ograničavanje struje po LED -i. Obično bi svaka LED dioda trebala imati vlastiti otpornik, jer obično svijetli više od jedne LED diode odjednom. Kôd ne dopušta da se više od jedne LED lampice pali odjednom pa je korištenje samo jednog otpornika u redu za zaštitu Arduina. Ovo također štedi prostor na maloj matičnoj ploči ili vrijeme lemljenja svake LED diode s linijskim otpornikom. To je reklo … UPOZORENJE !!! Ako planirate promijeniti kôd tako da istovremeno svijetli više LED dioda, trebat će vam zasebni otpornici za svaku LED diodu.

Korak 10: Iskoristite ga

Use It
Use It

Koristite čičak trake ili mrlje vrućeg ljepila za pričvršćivanje LED dioda na biljke, ograde, ružičaste flaminge ili bilo što drugo u vašem dvorištu. Upotrijebite ih unutra uguravši ih u vinske police, iza zavjesa ili čak objesite žice sa stropa za 3D efekat plutanja u mraku! Ovo bi bio odličan dodir za zabave, vjenčanja, film i fotografiju.

Korak 11: Idite dalje…

Kao što je već rečeno, ovo je rana verzija ovog projekta, ali je puna tolikog potencijala! Pokrenite više LED dioda povezivanjem registra pomaka (Pogledajte ovo uputstvo od JColvin91 da biste saznali kako.) Dodajte svjetlosni senzor, solarni punjač i tajmer za funkciju "postavi i zaboravi"! Petljajte s kodom da biste dodali vlastitu raketu greškama. Podelite ono što napravite i uživajte !!

AŽURIRANJE: U poslednje dve nedelje od objavljivanja ovog Instructable -a, mnogi saradnici su predložili briljantna poboljšanja koda, hardvera i izvođenja ovog projekta. Toplo vam savjetujem da, ako namjeravate ovo izgraditi, pročitajte komentare i odgovore za ideje o tome kako napraviti ove munje na načine na koje ja nisam planirao. U duhu stvaranja otvorenog koda pozdravljam sve ideje koje pomažu da se ovaj projekat razvije u više nego što sam mislio da je moguće … i zahvaljujem se svima koji su to učinili.

Idi. Napravi !!!

Preporučuje se: