Nahranite svoje ribje kosmiče od koder koli!: 7 korakov (s slikami)
Nahranite svoje ribje kosmiče od koder koli!: 7 korakov (s slikami)
Anonim
Image
Image
Deli in orodja
Deli in orodja

Nahranite svoje ribe z vsega sveta. Združljivo z kosmiči! Na internetu je veliko hranilnikov za ribe, vendar ni veliko tistih, ki hranijo ribje kosmiče. Glavna prehrana moje zlate ribice. Uživam v hranjenju rib in ko potujem, želim uživati v tem. To je tudi super, če pozabite nahraniti ribe. Nič več obračanja na poti v službo! Aplikacija ima tudi zaslon, ki prikazuje čas zadnjega hranjenja. To vam bo pomagalo, da svojih rib ne boste prehranjevali ali podhranili, za manj kot 20 dolarjev pa je cenejše od številnih komercialnih rešitev.

Moj prvi projekt z Arduinom je bil avtomatski podajalnik rib. Zaradi pomanjkanja znanja o Arduinu in 3D tiskanju ta projekt ni bil odličen. Cilj tega projekta je bil izdelati boljšo različico. Rad sem opazoval svojo rast in videl, kako boljša je ta različica. Ta podajalnik temelji na NodeMCU in aplikaciji Blynk.

Posodobitev: V vlažnem podnebju, kot je tropsko ali obalno, se hrana namoči v vlago in postane zmečkana in precej groba. Ljudem, ki živijo v teh podnebjih, bi priporočil zasnovo, ki ohranja hrano zaprto, ko je ne uporabljate.

Korak: Deli in orodja

Deli in orodja
Deli in orodja
Deli in orodja
Deli in orodja

Deli

NodeMCU

$8

Servo Micro SG90

$1.70

Ogledna plošča

$4

Mostične žice

21¢

Kabel mikro USB

$2

3D tiskani deli

Pametni telefon - Prenesti morate aplikacijo Blynk. Na voljo v napravah iPhone in Android.

Vroče lepilo - Za pritrditev servo na mesto in pritrditev servo roga na kos stresalnika.

Posoda za ribje kosmiče - podajalnik rib sem oblikoval tako, da ustreza tej steklenici. Steklenico lahko natisnete tudi v 3D obliki. Jaz sem svojega kupil v trgovini PetSmart.

Orodja

3D tiskalnik

Pištola za vroče lepilo

Brusni papir - uporabil sem 100 peskov. To bo morda potrebno za namestitev servo v režo.

Programi in knjižnice

Arduino IDE

Blynk aplikacija

Knjižnica Blynk

2. korak: 3D tiskanje

3D tiskanje
3D tiskanje
3D tiskanje
3D tiskanje
3D tiskanje
3D tiskanje

Hranilnik rib sem oblikoval na Tinkercadu. Učim se Fusion360, vendar sem trenutno bolj samozavesten pri Tinkercadu. Napajalnik natisne v dveh kosih, skupaj z izbirno steklenico. Večji kos vsebuje steklenico, servo in NodeMCU. Drugi del je pritrjen na servo rog. S tega kosa hrano stresemo v vodo. Oba dela je mogoče natisniti brez nosilcev. Uporabil sem 25% polnilo. Steklenička je priporočljiva, lahko pa uporabite steklenico za ribjo hrano s strani z deli. Večji kos mi je vzel približno pet ur za tiskanje, servo nastavka pa približno eno uro in pol. Datoteke najdete tukaj: Datoteke tiskalnika na Thingiverse

Trenutno tiskam na MOD-t. Zaradi nizke cene in preproste programske opreme je bil zame odličen prvi tiskalnik. Vendar bi bil rad nov tiskalnik, saj odraščam kot oblikovalec in izumitelj CAD.

3. korak: Shema

Shematično
Shematično
Shematično
Shematično

NodeMCU je mikrokrmilnik, podoben Arduinu. Razlika je v tem, da ima vgrajen esp čip. To pomeni, da se brez zunanjih komponent lahko poveže z wifi.

Edine povezave so med servo in NodeMCU. Povežite Gnd z Gnd. 5v servo, priključen na Vin NodeMCU. Signalna žica servo se nato priključi na D1 NodeMCU. NodeMCU ima drugačen pinout kot vaš tipični Arduino. D1 NodeMCU ustreza pin D5 Arduina. Preverite tudi pinout. V kodi, kjer definiramo svoj pin, imamo dve možnosti. Zataknite pin kot "D1" ali pa "5". Obe možnosti delujeta.

4. korak: Ustvarjanje aplikacije - Blynk

Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk
Ustvarjanje aplikacije - Blynk

Blynk je aplikacija za iOS in Android, ki omogoča povezavo z mikrokrmilniki prek wifi, bluetooth, etherneta itd. V tem projektu se z aplikacijo povežemo prek wifi. Blynk je aplikacija povleci in spusti, ki omogoča enostavno in prilagojeno zaslone za nadzor projektov.

Če želite nastaviti aplikacijo Blynk:

Prenesite aplikacijo Blynk.

Nastavite račun. Uporabite pravi e -poštni naslov. Vaše kode za avtentikacijo bodo poslane na to e -pošto.

Kliknite "Ustvari nov projekt".

Poimenujte svoj projekt.

Izberite napravo "NodeMCU".

Prepričajte se, da je vrsta povezave "Wifi".

Kliknite "Ustvari projekt".

Kliknite na zaslon in prikazala se bo stranska vrstica.

Izberite gumb.

Poimenujte gumb.

Izberite izhod kot "Virtual 1".

Prepričajte se, da je v načinu "Push".

Ime pri "Krmljenje" in izklopljeno "Krma".

Kliknite "V redu" Znova kliknite zaslon.

Izberite "Prikaz vrednosti z oznako M".

Poimenujte ga "Zadnje hranjenje".

Izberite vhod kot V5.

Kliknite "V redu".

Znova kliknite zaslon.

Pomaknite se navzdol na stranski vrstici do »Ura v realnem času«.

Izberite to.

Časovni pas nastavite na svojega in kliknite »V redu«.

Vaša aplikacija je pripravljena za uporabo

5. korak: Koda

Če želite uporabiti kodo, morate prenesti knjižnico Blynk.

Če želite programirati NodeMCU z Arduino IDE, boste morali opraviti tudi nekaj korakov. Sledite tem korakom: Program NodeMCU

Koda deluje tako, da zazna visok signal z navideznega zatiča 5. To sproži gumb v aplikaciji Blynk. Ko zazna visok signal, koda zažene funkcijo. Ta funkcija kliče servo, da se premakne za 30 stopinj v korakih po 1 stopinjo. Uporaba stopnic zagotavlja čisto gibanje.

Prav tako telefon pošilja podatke ure v realnem času, tako imenovani čas, NodeMcu. Telefon vsako sekundo pošlje čas. Ko pritisnete gumb, da premaknete servo, se spremenljivka i pripelje na 1. To povzroči, da je stavek if (i == 1) resničen in pošlje čas za prikaz v aplikaciji. Čas se pošlje vsakič, ko pritisnete gumb. To pomeni, da je prikazani čas čas zadnjega hranjenja.

Vnesti morate svoj ssid in geslo. Če vaša povezava wifi ne zahteva gesla, pustite to polje kot »«. Prav tako boste morali vključiti svoj žeton za preverjanje pristnosti, poslan po pošti, ko je vaša aplikacija ustvarjena. Morda boste morali spremeniti stopnjo servo, da ustreza količini hrane, ki jo želite nahraniti.

/ * Brezžični napajalnik rib * Aaron Price * V1.2 * * Ta skica omogoča krmljenje rib od koder koli po svetu * je na voljo wifi. Skica temelji na NodeMCU *, ki upravlja servo na zatiču D1 (GPIO5). Aplikacija Blynk * upravlja NodeMCU s pametnega telefona. * Aplikacija pošilja podatke rtc iz pametnega telefona v NodeMCU. * Gumb v aplikaciji povežite z navideznim zatičem 1. * Nalepko povežite z navideznim zatičem 5. */

#define BLYNK_PRINT Serijska številka

#vključi

#vključi

#vključi

#vključi

#vključi

// V aplikaciji Blynk bi morali dobiti žeton za preverjanje pristnosti. // Pojdite na Nastavitve projekta (ikona matice). char auth = "AuthToken";

// Vaše poverilnice WiFi. // Za odprta omrežja nastavite geslo na "". char ssid = "ssid"; char pass = "geslo"; int pos; int i; Servo myservo;

Časovnik BlynkTimer;

WidgetRTC rtc;

void clockDisplay () {// Kadar koli lahko pokličete uro (), minuto (),… // Za podrobnosti glejte primere časovne knjižnice

Niz currentTime = String (ura ()) + ":" + minuta () + ":" + sekunda (); Niz currentDate = String (dan ()) + "" + mesec () + "" + leto (); // Serial.print ("Trenutni čas:"); // Serial.print (currentTime); // Serial.print (""); // Serial.print (currentDate); // Serial.println ();

if (i == 1) {// Pošlji čas aplikaciji Blynk.virtualWrite (V5, currentTime); i = 0; Serial.print (i); }

}

void setup () {// Konzola za odpravljanje napak Serial.begin (9600);

myservo.attach (5); myservo.write (75); Blynk.begin (auth, ssid, pass); rtc.begin ();

timer.setInterval (1000L, uraDisplay); Serial.print (i); }

void loop () {Blynk.run (); timer.run (); }

BLYNK_WRITE (V1) {if (param.asInt () == 1) {

i ++; Serial.print (i); Serial.print ("stisnjen"); // Premakni servo v položaj podajanja

for (pos = 50; pos = 140; pos- = 1) // gre od 180 stopinj do 0 stopinj // {// myservo.write (pos); // povem servo, da gre v položaj v spremenljivki 'pos' // zakasnitev (15); // čaka 15 ms, da servo doseže položaj //}} else {Serial.print ("Depressed"); // vrnitev na dom myservo.write (75);}}

Korak 6: Združite vse skupaj

Vse skupaj
Vse skupaj
Vse skupaj
Vse skupaj
Vse skupaj
Vse skupaj

Servo pritrdite na 3D natisnjeni kos, kot je prikazano zgoraj. Stresalnik je treba položiti na rog tako, da pokriva režo, kjer sedi hrana, nato pa ga prilepiti na rog. Steklenica bo z malo sile zdrsnila v luknjo. Okvir prilepite na ploski del in dno ploskega dela prilepite na rezervoar. Oblikoval sem kos tako, da sedi v kotu pod pravim kotom. Vklopite NodeMCU in kliknite gumb za predvajanje v zgornjem desnem kotu aplikacije. Vaš podajalnik je zdaj pripravljen!

7. korak: Zaključek

Image
Image
Natečaj za internet stvari 2017
Natečaj za internet stvari 2017

Če vse deluje, ko pritisnete gumb za krmo, se ribe nahranijo. Posodobiti je treba tudi zadnji čas hranjenja. To je eden izmed najbolj uporabnih projektov, ki sem jih naredil. Uživam v hranjenju rib in ribe dobijo hrano. Sliši se kot zmaga! Ob vsem tem hranjenju bom imel nekaj velikih rib. Ali kdo ve, kako zgraditi ribnik?

Ta Instructable je v nekaj tekmovanjih. Prosim za priljubljene, komentarje, glasovanje in deljenje. Z veseljem odgovarjam tudi na vprašanja. Uživajte

Natečaj za internet stvari 2017
Natečaj za internet stvari 2017

Podprvak na natečaju Internet of Things 2017