Sadržaj:

IoT hranilica za mačke koja koristi foton čestica integriran s Alexa, SmartThings, IFTTT, Google tablicama: 7 koraka (sa slikama)
IoT hranilica za mačke koja koristi foton čestica integriran s Alexa, SmartThings, IFTTT, Google tablicama: 7 koraka (sa slikama)

Video: IoT hranilica za mačke koja koristi foton čestica integriran s Alexa, SmartThings, IFTTT, Google tablicama: 7 koraka (sa slikama)

Video: IoT hranilica za mačke koja koristi foton čestica integriran s Alexa, SmartThings, IFTTT, Google tablicama: 7 koraka (sa slikama)
Video: Automatski dozator suve hrane za mačke i pse 2024, Studeni
Anonim
Image
Image
IoT hranilica za mačke pomoću fotona čestica integriranih s Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke pomoću fotona čestica integriranih s Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke pomoću fotona čestica integriranih s Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke pomoću fotona čestica integriranih s Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke pomoću fotona čestica integriranih s Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke pomoću fotona čestica integriranih s Alexa, SmartThings, IFTTT, Google tablicama

Potreba za automatskim hranilice za mačke sama po sebi nije jasna. Mačke (naša mačka se zove Bella) mogu biti odvratne kad su gladne, a ako je vaša mačka poput moje, svaki će put pojesti zdjelu na suho. Trebao mi je način da automatski dodijelim kontroliranu količinu hrane pomoću 3 metode - 1. Alexa glasovna naredba, 2. prema rasporedu i 3. pomoću gumba u SmartThings. Također sam želio način da pratim kako i kada se mačka hrani, tako da se ne hranimo dva puta (ponekad kad moja žena hrani mačku, a zatim ja ponovno nahranim mačku 15 minuta kasnije).

Ovaj projekt nije pretjerano težak, nisam programer niti inženjer, ali bilo je mnogo resursa na internetu koji su mi pomogli. Sastavljam sve što sam upotrijebio i sve korake potrebne da i vi dovršite ovaj projekt. Uživajte i sretna gradnja!

Korak 1: Nabavite sve potrebne materijale - otprilike 100 USD

Nabavite sav potreban materijal - otprilike 100 USD
Nabavite sav potreban materijal - otprilike 100 USD

Evo svega što sam kupio za izradu ove hranilice za mačke. Bilo je to oko 100 USD, što je malo više od mojih planiranih 75 USD, ali išao sam po neke kvalitetnije dijelove kako bih osigurao da će trajati. Neki od materijala koje sam već morao napraviti za izradu kutije, poput ljepila za drvo, pištolja za vruće ljepilo, čavlića od 18 grama, brusnog papira, punila za drvo itd. Po mom mišljenju spadaju pod "alate" i nisu svi potrebni. Ponekad idem iznad i izvan toga da učinim stvari ljepšima.

Ako odstupite od ovih proizvoda, samo provjerite ima li vaš servo metalni zupčanik i zabilježite broj zuba jer će vaša servo ruka/truba morati imati isti broj zuba. Servo i ruka dolje navedeni su 25T, što znači 25 zuba. Također, koristila sam plastičnu ruku pri prvom obilasku i zubi su mi se ogolili u roku od tjedan dana korištenja pa nemojte ići plastičnim putem, nabavite metal.

1. Foton čestica 19,99 USD

2. Oglasna ploča i žice za preskakanje 7,69 USD

3. Servo 19,99 USD

4. Metalna servo ruka/truba 8,98 USD

5. Piezo zujalica 5,05 USD

6. Dozator za žitarice 14,95 USD

7. Vlaknasta ploča iz željezne trgovine za kutiju, 2 komada za svaki slučaj da zabrljate 20 USD

8. Boja u spreju s čekićem Rustoleum 5,97 USD

8. Ostalo predmeti poput vijaka, ljepila za drvo, čavala, brusnog papira, punila za drvo itd.

Korak 2: Postavite foton čestica

Prvi korak je povezivanje vašeg čestica fotona s internetom. To je vrlo jednostavno, osobito s vodičima koje pruža Particle. Preuzmite aplikaciju Particle na svoj telefon, stvorite račun za čestice i slijedite vodič za povezivanje s vašim WiFi -jem. Pogledajte video i slijedite ove upute!

docs.particle.io/guide/getting-started/start/photon/

Korak 3: Spojite čestice na servo, Breadboard i zujalicu

Spojite čestice na servo, Breadboard i zujalicu
Spojite čestice na servo, Breadboard i zujalicu
Spojite čestice na servo, Breadboard i zujalicu
Spojite čestice na servo, Breadboard i zujalicu

U redu, sada moramo žicu spojiti na servo i zujalicu pomoću ploče. Pričvrstite svoju česticu na matičnu ploču ostavljajući po 2 rupe sa svake strane, nije važno gdje se čestica nalazi izvan toga. Lemio sam svoje žice na zujalicu, a zatim ih vrućim ljepilom učvrstio. Jednostavnija metoda bila bi upotreba terminalnih konektora ili kundaka i njihovo uvijanje kliještima. Ovisi o tebi.

Spojite servo žice:

VIN Crvena servo žica

A5 Žuta servo žica

GND Crna servo žica

Spojite žice zujalice (nije važno koja je koja):

D0 Zvučna žica

GND žica zujalice

Korak 4: Treptanje koda na fotonu

Trepereći kod fotona
Trepereći kod fotona

Sada kad ste ga ožičili, dopustite blic koda firmvera na foton i provjerite da li zujalica svira melodiju i servo se okreće.

Prijavite se na konzolu za sastavljanje čestica koristeći svoj račun

Kliknite gumb koda na alatnoj traci s lijeve strane. Kopirajte i zalijepite navedeni kod firmvera (cat_feeder.c) u konzolu za izgradnju, prema zadanim postavkama zamijenite postojeći kôd.

Malo objašnjenja o funkciji hranjenja. Budući da se hranjenje može dozvati putem 3 različite metode (gumb, glas, raspored), potrebne su nam 3 različite naredbe kako bismo objavili svaki događaj kako bismo znali kako se mačka hranila. Ove naredbe su "bfeed" kada se unose putem gumba, "sfeed" kada se unose prema rasporedu i "vfeed" kada se unose glasovnom naredbom.

Pritisnite gumb Traženje mape da biste spremili kôd i dajte mu ime po svom izboru.

Pritisnite gumb za potvrdu (izgleda kao kvačica s kružićem oko njega). Nakon nekoliko trenutaka na donjoj statusnoj traci trebali biste vidjeti:

Sastavljanje koda … Kôd je provjeren. Dobar posao! Spreman.

Sada kliknite gumb Flash na lijevoj alatnoj traci (izgleda kao munja). Nakon nekoliko trenutaka na donjoj statusnoj traci trebali biste vidjeti:

Bljeskajući kôd … Bljesak uspješan! Uređaj se ažurira. Spreman.

Zatim se prijavite na konzolu za čestice

Kliknite na svoj foton čestica. Ovo je stranica statusa za vaš uređaj, možete vidjeti u zapisnicima događaja kada se poduzmu radnje, poput trepćućeg koda, ili kada se događaji objavljuju pozivanjem naredbi feeda. Za pokretanje naredbe za feed upotrijebit ćete pločicu Funkcija s desne strane ove konzole. Budući da se funkcija u kodu naziva "feed", trebali biste je vidjeti i okvir za unos argumenta.

Upišite "bfeed" u okvir za unos argumenta i kliknite Poziv.

Ovo bi trebalo reproducirati melodiju, a zatim okrenuti servo. Ako želite, radi testiranja, promijenite vrijeme kašnjenja u kodu sa 330 MS na nešto duže poput 5000 ako želite provjeriti okretanje servo -a. Morate pritisnuti gumb Flash svaki put kada unesete bilo kakve izmjene u kôd. Vjerojatno ćete kasnije morati prilagoditi odgodu da biste dobili željenu količinu okreta (kao što je hranjenje psa, možda ćete htjeti dati više hrane).

Korak 5: Napravite kutiju za smještaj svega

Napravite kutiju za smještaj svega
Napravite kutiju za smještaj svega
Napravite kutiju za smještaj svega
Napravite kutiju za smještaj svega
Napravite kutiju za smještaj svega
Napravite kutiju za smještaj svega

Ovaj korak sastoji se od vaših dobrih vještina stare stolarije. Kupio sam 2 vlaknaste ploče -2x4ft za izradu kutije jer je jaka, glatka na dodir, relativno jeftina i laka za rezanje/rad. Možete odabrati bilo koji materijal. Ovaj korak je doista prema vašem nahođenju u načinu na koji je izgrađen jer svatko ima različite potrebe. Neću imati detaljan korak po korak izradu kutije, ali mogu podijeliti proces razmišljanja i metode koje sam koristio.

Prilikom projektiranja kutije uzeo sam u obzir niz faktora. Htio sam da ova stvar bude što kompaktnija. Htio sam da se može lako servisirati za čišćenje i/ili popravljanje u slučaju neispravnosti. Naposljetku, htio sam izložiti cijev dozatora kako bih vidljivo vidio kad hrane ponestaje. Imajući to na umu, prvo sam napravio kutiju, a zatim izmjerio unutarnje dimenzije kako bih napravio kvadratni okvir na koji su pričvršćeni jedinica dozatora, servo i ploča. Na ovaj način cijela jedinica može se izvaditi iz kutije radi servisiranja. Pogledajte slike.

Korak 6: Rukovatelji uređajima SmartThings

Rukovatelji uređajima SmartThings
Rukovatelji uređajima SmartThings
Rukovatelji uređajima SmartThings
Rukovatelji uređajima SmartThings
Rukovatelji uređajima SmartThings
Rukovatelji uređajima SmartThings

Ovaj korak objašnjava kako implementirati pozivanje funkcije feed pomoću SmartThings i Alexa. Da bih to učinio, morao sam napisati 2 groovy uređaja za rukovanje. Jedan od rukovatelja služi za "bfeed" kada pritisnem gumb u SmartThings -u, a drugi za "vfeed" kada tražim Alexa da nahrani Bellu glasovnom naredbom. Drugi razlog za dva različita rukovatelja je to što Alexa prepoznaje samo uređaje koji su prekidači, a ne gumbi. Stoga sam morao prevariti Alexa da prepozna prekidač kako bi pozvao funkciju (isključeno i uključeno izvršava istu radnju). U redu, počnimo.

Prijavite se (ili stvorite račun) na IDE SmartThings portal na https://ide.smartthings.com koristeći svoj Samsung račun ili račun SmartThings.

Potvrdite da se vaše čvorište SmartThings prikazuje pod "Moje lokacije" i "Moja čvorišta". Ako se ne prikaže, riješite problem prije nego nastavite.

Prvo ćemo stvoriti Rukovatelj gumbima

Kliknite na "My Device Handlers" na gornjoj navigacijskoj traci.

Pritisnite plavi gumb "Create New Device Handler"

Odaberite karticu "Iz koda" i zalijepite kôd iz priložene datoteke button_handler.groovy. Zatim kliknite Stvori.

Kliknite "Spremi" i "Objavi" "Za mene". Trebali biste se pojaviti zelena obavijest koja kaže: "Vrsta uređaja uspješno objavljena."

Sada skočite na telefon i otvorite aplikaciju SmartThings. Rukovatelj bi se trebao pojaviti kao novi uređaj. Morat ćete konfigurirati rukovatelj tako da se objavljuje na vašem uređaju s česticama. Odaberite novostvoreni uređaj i otvorite Postavke (izgleda kao ikona zupčanika).

Unesite naziv uređaja - imenujte uređaj kako god odaberete, siguran sam da se i vaša mačka ne zove Bella.

Unesite pristupni token - pristupni token će se naći u konzoli za sastavljanje čestica https://build.particle.io/ ispod postavki (ikona zupčanika u donjem lijevom kutu). Access Token bit će niz od 40 znakova.

Unesite ID uređaja - ID uređaja nalazi se na stranici Konzole za čestice kao niz od 24 znaka, a također se vidi u svim URL -ovima čestica kada ste prijavljeni na svoj račun radeći na uređaju s česticama. ID uređaja prikazan je BOLD na URL -u:

Pritisnite Spremi.

Pritisnite gumb Feed!

Klikom na gumb za unos trebali biste čuti melodiju i pokrenuti servo. Također biste trebali vidjeti događaje objavljene u dnevniku događaja konzole.

Zatim ćemo stvoriti Rukovatelj uređajima za Alexa

Slijedite isti postupak kao gore. Idite na IDE SmartThings portal i kliknite na "My Device Handlers" na gornjoj navigacijskoj traci. Kliknite na plavi gumb "Create New Device Handler"

Odaberite karticu "Iz koda" i zalijepite kôd iz priložene datoteke alexa_handler.groovy. Zatim kliknite Stvori.

Kliknite "Spremi" i "Objavi" "Za mene". Trebali biste se pojaviti zelena obavijest koja kaže: "Vrsta uređaja uspješno objavljena."

Sada se vratite na telefon i otvorite aplikaciju SmartThings. Trebali biste vidjeti da se rukovatelj pojavljuje kao novi uređaj, ali ovaj put bez ikakvog gumba. Morat ćete konfigurirati rukovatelj s vašim pristupnim tokenom i ID -om uređaja kao i prije.

Odaberite novostvoreni uređaj u SmartThings i otvorite Postavke (izgleda kao ikona zupčanika).

Unesite naziv uređaja - imenujte uređaj kako god odaberete, nazvao sam ga "Cat Feeder Handler for Alexa" tako da moja žena zna da to nije tipka Cat Feeder.

Unesite Access Token i Unesite ID uređaja, a zatim kliknite Spremi.

Sada otvorite aplikaciju Alexa na svom telefonu. Ako to već niste učinili, omogućite AlexaThill SmartThings i povežite svoj račun SmartThings s aplikacijom Alexa. Zatim idite na zaslon Smart Home i kliknite "Dodaj uređaj". To se također može učiniti izgovaranjem "Alexa, otkrij uređaje". Uređaj bi se trebao pojaviti s ikonom prekidača, nazvat će se kako god ste nazvali rukovatelj u SmartThings. Možete promijeniti njegov naziv u aplikaciji Alexa ako želite, ali imajte na umu da je ovo tip prekidača pa će zahtijevati izgovaranje "Alexa, uključi" ili "Alexa, isključi". Znam da nije lijepo reći "Uključi hranilicu za mačke" pa je alternativa stvoriti novu rutinu u aplikaciji Alexa i nazvati je izrazom koji točno želite. Napravio sam rutinu pod nazivom "Feed Bella" koja uključuje prekidač hranilice za mačke.

Klikom na prekidač u aplikaciji Alexa sada biste trebali uspješno pozvati funkciju feeda. Dnevnik događaja Konzole za čestice trebao bi također objaviti događaje koji na to ukazuju.

Kad sve bude imenovano kako želite, isprobajte!

Korak 7: Sve spojite

Spajajući sve zajedno
Spajajući sve zajedno
Spajajući sve zajedno
Spajajući sve zajedno
Spajajući sve zajedno
Spajajući sve zajedno
Spajajući sve zajedno
Spajajući sve zajedno

Zadnji dio koji nisam obuhvatio je kako zakazati feedove i snimiti objavljene događaje u Google Sheet. Vjerojatno mislite da se aplikacija Alexa može koristiti za izradu rutine za raspored, ali to nam ne dopušta da zapišemo raspored u odnosu na glasovnu naredbu ili gumb. Dakle, umjesto toga, već postoji IFTTT applet za čestice koji ćemo koristiti.

Izradimo IFLT applet za zakazivanje feedova

Idite na https://ifttt.com ili preuzmite aplikaciju za pametni telefon IFTTT i prijavite se (po potrebi otvorite račun)

Ako ste tek počeli s IFTTT -om, vrlo je jednostavno. Svaki se applet sastoji od IF -a (uvjeta ili okidača) i THAT -a (neke radnje koje je potrebno učiniti).

Stoga, nakon što ste prijavljeni na IFTTT, izradite novi applet, odaberite IF i potražite ili odaberite "Datum i vrijeme". Ovo konfigurirate prema bilo kojem rasporedu koji želite. Zatim nastavite kroz korake i kada dođete do THAT -a, potražit ćete "Particle" i odabrati "Call a Function". Ispunite polja kao na gornjoj snimci zaslona, obavezno upotrijebite "sfeed" kao unos jer je ovo naredba potrebna za objavljivanje događaja "Fed prema rasporedu". Možda ćete se prilikom postavljanja ovog apleta morati povezati ili prijaviti na svoj račun čestica. Spremite applet i trebali biste biti spremni. Ako želite testirati, samo promijenite datum i vrijeme na blizu u budućnosti i provjerite aktivira li se ispravno.

Sada za stvaranje IFTTT apleta za rukovanje s 3 vrste događaja

Postoje 3 naredbe koje moramo uzeti u obzir pri pokretanju hranilice za mačke. Ovo je teško kodirano u firmveru čestica:

Bella se hrani prema rasporeduBella se hrani putem gumbaBella se hrani glasovnom naredbom

Ako se vaš ljubimac ne zove "Bella", vjerojatno biste to htjeli promijeniti u firmveru i ponovno bljeskati. Promijenite tekst u retku Particle.publish koda čestica.

Izradite novi IFTTT applet. (potrebno je to učiniti 3 puta, za svaku vrstu događaja)

Počevši od IF -a, potražite Particle i odaberite "Novi događaj objavljen". Naziv događaja mora biti točan objavljeni naziv događaja koji imate u svom firmveru. Na primjer, "Bella se hrani prema rasporedu" točan je naziv događaja u kodu koji sam vam dao. Za referencu pogledajte snimak zaslona koji sam ispunio. Morat ćete stvoriti još 2 IFTTT -a za obradu ostalih događaja. Ovaj će applet stvoriti novi list na vašem google pogonu ako već ne postoji i zapisati nove događaje u sljedeći prazan redak.

Preporučeni: