micro:bit hranilica za ribe - Dodatak

micro:bit hranilica za ribe - Dodatak

Hranilice za ribe u današnje su vrijeme potpuno automatizirane, može im se određivati vremenski interval između hranjenja i količina krane koju ispuštaju pri jednom hranjenju.

Micro:bit kao mozak hranilice za ribe s regulacijom vremenske odgode hranjenja

Cijene im se kreću od 100-tinjak do 300-tinjak kuna. Većinom rade sa suhom hranom za ribe i imaju mogućnost ručnog hranjenja. Zašto ne bismo napravili jednu varijantu hranilice pomoću micro:bita? Cijena izrade jedne takve hranilice prava je sitnica. Naravno, ako uzmemo u obzir da već posjedujemo micro:bit. Za izradu će nam trebati servomotor, potenciometar, nekoliko otpornika, ledica, napajanje (može biti baterijsko, a može biti i pomoću adaptera) i micro:bit.

Ako nemate svrdlo možete koristiti i vijak s većim žljebovima ovisno o tome koliko hrane želite dozirati.

fotka 2 svrdlo

Pomoću potenciometra ćemo podešavati vremenske intervale između hranjenja, servomotor će nam služiti za fizičko otvaranje okna hranilice, otpornici i ledice za signalizaciju, a količinu hrane prilagođavat ćemo vremenskim okretanjem servomotora. Konstrukcija hranilice može biti napravljena od proizvoljnog materijala poput pleksiglasa, ali nije preporučljivo koristiti karton jer će zbog vlage omekaniti. Sam kapacitet spremnika hranilice u kojem se nalazi hrana također je proizvoljan.

fotka 3

 


Korak 1: Izrada kućišta hranilice 

S dimenzijama uređaja nećemo pretjerivati, ali uzet ćemo u obzir da hranilica mora imati dovoljan kapacitet hrane za nekoliko dana/tjedana te da se može montirati na manje akvarije. Naše potrebe bit će zadovoljene dimenzijama 10 x 6 x 4 cm.

3D model hranilice napravljen u programu SketchUp.

korak 1

 

Kućište možete izraditi od raznih materijala. Mi ćemo koristiti pleksiglas zbog njegove trajnosti i dostupnosti. Mjere možete markerom crtati po pleksiglasu jer se da lako obrisati, a ucrtavanje nije preporučljivo jer vam poslije može smetati za estetski izgled, tj. urezane crte po materijalu ne izgledaju baš najljepše. Koristili smo bijeli pleksiglas debljine 2 mm koji se lako reže ubodnom pilom s finom oštricom za metal, a isto tako ga možete rezati i ručno pomoću pile za željezo. Malo će dulje trajati, ali je izvedivo. Sastavljanje dijelova možete napraviti pomoću silikonskog, dvokomponentnog ili brzog ljepila. Nisu u pitanju velika naprezanja materijala, pa će bilo koje od ljepila zadovoljiti vaše potrebe.

Za doziranje hrane koristit ćemo staro svrdlo spojeno na rotor servomotora. Vremenom okretanja, tj. stupnjevima regulirat ćemo količinu hrane koja se ispušta u akvarij. Mi ćemo to vrijeme imati zapisano u obliku konstante u kodu, ali može se izvesti pomoću promjenjivog otpornika, kao što smo već i radili s regulacijom vremenskog intervala doziranja. Svrdlo može biti različitih dimenzija i njegov promjer ovisi o količini hrane koja se dozira. Svrdla većih promjera imaju veće žljebove na sebi i logično je da će više hrane stati u njih. 


Korak 2: Spajanje komponenata i ugradnja na kućište hranilice.

Potenciometar, tj. promjenjivi otpornik koji nam služi za regulaciju vremenskog intervala hranjenja spojit ćemo na analogni pin 0 i na pin 3 V pomoću predotpora vrijednosti 300 oma. Radi zaštite, naravno. Servomotor koji koristimo uzet je iz arduino kompleta i namijenjen je radu na naponu 4,5-5 V. Njegovo napajanje izvest ćemo preko 3 AA baterije spojene u seriju pomoću kojih ćemo dobiti dovoljnih 4,5 V za neometan rad motora. Signalnu, odnosno upravljačku žicu spojit ćemo na micro:bitov pin 1. Ledicu koja nam služi za signalizaciju hranjenja spojit ćemo na digitalni pin 2 i GND pomoću predotpora.

Shema spajanja hranilice za ribe.

 

korak 2

Napajanje micro:bita također ćemo dobiti iz već korištenih baterija. Nećemo koristiti sve tri, nego dvije spojene u seriju kako bismo dobili napon od 3 V za koji je micro:bit namijenjen. Budući da se servomotor i ledica uključuju u razmacima od nekoliko sati na svega par sekundi i da micro:bit troši poprilično malo električne energije, te će tri baterije zadovoljiti napajanje našeg sklopa na tjedan dana. Za dulje vremenske periode preporučamo korištenje adaptera poput punjača mobilnih baterija jer imaju radni napon od 5 V koji je potreban za rad servomotora, a napajanje micro:bita može biti izvedeno i preko USB priključka.


Korak 3: Izrada programskog koda uređaja

Programski ćemo kod, kao i obično, raditi pomoću blokovske sheme zbog njegove jednostavnosti i preglednosti.

U petlji start postavit ćemo vrijednost servomotora koji se nalazi na pinu P1 na 180 stupnjeva. Brojač ćemo postaviti na 0 kako bi svaki puta krenuo iz početka.

Pritiskom na tipkalo A mehaničkim ćemo putem odrediti distribuciju hrane u akvarij. Postavit ćemo servomotor u položaj 0 kako bi se dozirala hrana i u tom trenutku ćemo digitalni izlaz P2 postaviti na 1 kako bismo upalili ledicu. Budući da servomotor ima određenu putanju od 270 stupnjeva, svaki će put biti potrebno vraćanje u početni položaj.

Pritiskom na tipkalo B na micro:bitovu 5x5 LED ekranu ispisat će se trenutna vrijednost brojača kako bismo znali kada je sljedeće doziranje.

Simulator programskog koda.

korak 3 1

U beskonačnoj petlji konstantno ćemo ispisivati vrijednost varijable „vrijeme“, odnosno vremenski interval doziranja hrane koji se odabire pomoću potenciometra. Varijablu „vrijeme“ postavit ćemo kao analogno očitanje potenciometra s pina P1. Tu ćemo vrijednost plotati do vrijednosti 43200, što nam predstavlja maksimum. Kako smo dobili tu vrijednost? Ona predstavlja 12 sati pomnoženih sa 60 minuta i 60 sekundi. Pretpostavljamo da je to maksimalan vremenski interval hranjenja. Njega možemo povećati po potrebi ili smanjiti kako bismo dobili veću preciznost pri okretanju potenciometra. Program ćemo pauzirati na 1000 ms, što je ekvivalentno jednoj sekundi. Zašto? Kako bismo svake sekunde mogli povećati bojač za 1 jer želimo dobiti što realnije brojanje sekundi. Uzet ćemo u obzir da je izvođenje prethodnih naredbi instantno. Dodat ćemo uvjet „IF“ kojim ćemo uspoređivati vrijednosti brojača i odabranim vremenskim intervalom doziranja hrane. Kada brojač sekundi dosegne vrijednost vremena, izvest će se naredbeni blok koji je zadužen za doziranje hrane i jednak je onom iz dijela gdje mehanički doziramo hranu pomoću tipkala A. Postavit će se digitalni izlaz 2 na 1 kako bismo upalili ledicu, servomotor priključen na pin P1 postavit će se u položaj od 0 stupnjeva, a nakon toga će se vratiti u početni položaj i ledica će se ugasiti.

Testiranje prolazi li hrana pomoću svrdla kako je zamišljeno.

korak 3 2


Pomoću simulatora (dolje) možete testirati vaš kod i prije prenošenja na micro:bit. Dodavanjem naredbe za servomotor automatski će dodati grafički prikaz motora i njegovo spajanje kako je postavljeno u programskom kodu. Ispisivanje vrijednosti prikazuje se na 5x5 LED zaslonu, a analognu vrijednost koju će micro:bit očitavati pomoću potenciometra može se odabrati na mjestu analognog pina na kojem je postavljen potenciometar u programskom kodu. Također će se u simulatoru crvenom bojom označiti pin 3 na koji je spojena ledica kada se ona aktivira, tj. kada se vrijednost digitalnog pina 3 postavi na 1. U simulatoru se također rotor servomotora pokreće na zadanu poziciju kako je određeno u programskom kodu.

Dodatak

Napomena: Programski kod možete preuzeti s Vidijeva Githuba i modificirati ga po želji.

(Stranica 5 od 5)
« Prev All Pages Next » (Stranica 5 od 5)
Ocijeni sadržaj
(0 glasova)

// možda će vas zanimati

Newsletter prijava


Kako izgleda naš posljednji newsletter pogledajte na ovom linku.

Copyright © by: VIDI-TO d.o.o. Sva prava pridržana.