Sadržaj:

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

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

Video: IoT hranilica za mačke koja koristi foton čestica integriran sa Alexa, SmartThings, IFTTT, Google tablice: 7 koraka (sa slikama)
Video: Automatski dozator suve hrane za mačke i pse 2024, Novembar
Anonim
Image
Image
IoT hranilica za mačke koja koristi foton čestica integriran sa Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke koja koristi foton čestica integriran sa Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke koja koristi foton čestica integriran sa Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke koja koristi foton čestica integriran sa Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke koja koristi foton čestica integriran s Alexa, SmartThings, IFTTT, Google tablicama
IoT hranilica za mačke koja koristi foton čestica integriran 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 kada su gladne, a ako je vaša mačka kao moja, svaki put će pojesti zdjelu na suho. Trebao mi je način da automatski dodijelim kontroliranu količinu hrane pomoću 3 metode - 1. Alexa glasovna komanda, 2. prema rasporedu i 3. pomoću dugmeta u SmartThings. Takođe sam želeo način da pratim kako i kada se mačka hrani, tako da se ne hranimo dva puta (ponekad kada moja žena hrani mačku, a zatim ja ponovo hranim mačku 15 minuta kasnije).

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

Korak 1: Nabavite sav potreban materijal - otprilike 100 USD

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

Evo svega što sam kupio za izradu hranilice za mačke. Bilo je to oko 100 dolara, što je malo više od mojih planiranih 75 dolara, ali su mi bili potrebni kvalitetniji dijelovi kako bi se osiguralo 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 lijepima.

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, koristio sam plastičnu ruku pri prvom obilasku i zubi su mi se svukli u roku od jedne sedmice 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. Rustoleum čekićana sprej boja 5,97 USD

8. Ostalo predmeti poput vijaka, ljepila za drvo, eksera, 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, posebno s vodičima koje pruža Particle. Preuzmite aplikaciju Particle na svoj telefon, stvorite račun za čestice i slijedite vodič za njeno povezivanje s wifi -jem. Pogledajte video i slijedite ove upute!

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

Korak 3: Povežite č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 spojiti česticu na servo i zujalicu pomoću matične 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 nje. Lemio sam svoje žice na zujalicu, a zatim sam je pričvrstio vrućim ljepilom. Jednostavnija metoda bila bi upotreba terminalnih konektora ili kundaka i njihovo uvijanje kliještima. Na vama je.

Spojite servo žice:

VIN Crvena servo žica

A5 Žuta servo žica

GND Crna servo žica

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

D0 Zvučna žica

GND Zvučna žica

Korak 4: Treptanje koda na fotonu

Trepereći kod na fotonu
Trepereći kod na fotonu

Sada kada ste ga ožičili, dopustite da prebacite kod 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 lijevoj bočnoj traci s alatima. Kopirajte i zalijepite ponuđeni kod firmvera (cat_feeder.c) u konzolu za izgradnju, prema zadanim postavkama zamijenite postojeći kôd.

Malo objašnjenje o funkciji uvlačenja. Budući da se hranjenje može pozvati na 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 napajaju putem gumba, "sfeed" kada se dostavljaju prema rasporedu i "vfeed" kada se napajaju glasovnom naredbom.

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

Pritisnite dugme za potvrdu (izgleda kao kvačica sa krugom oko njega). Nakon nekoliko trenutaka na donjoj statusnoj traci trebali biste vidjeti:

Sastavljanje koda… Kôd provjeren. Veliki posao! Ready.

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

Kôd treperi … Flash je uspeo! Vaš uređaj se ažurira. Ready.

Zatim se prijavite na konzolu za čestice

Kliknite na foton čestica. Ovo je stranica statusa za vaš uređaj, možete vidjeti u evidenciji događaja kada se poduzmu radnje, poput treptanja 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 Pozovi.

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 dugme Flash svaki put kada unesete bilo kakve izmjene u kôd. Vjerojatno ćete kasnije morati prilagoditi odgodu da biste dobili željenu količinu okreta (poput hranjenja psa, možda ćete htjeti dati više hrane).

Korak 5: Napravite kutiju za smještaj svega

Napravite kutiju za sve
Napravite kutiju za sve
Napravite kutiju za sve
Napravite kutiju za sve
Napravite kutiju za sve
Napravite kutiju za sve

Ovaj korak se sastoji od vaših dobrih vještina u modnoj stolarstvu. Kupio sam 2 -2x4ft vlaknaste ploče 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 zaista prema vašem nahođenju u načinu na koji je izgrađen jer svi imaju različite potrebe. Neću imati detaljan korak po korak izradu kutije, ali mogu podijeliti proces razmišljanja i metode koje sam koristio.

Prilikom dizajniranja kutije uzeo sam u obzir nekoliko 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 kvara. Na kraju, htio sam da se cijev dozatora otkrije kako bih mogao vidljivo vidjeti kada hrane ponestaje. Imajući to na umu, prvo sam napravio kutiju, a zatim izmjerio unutrašnje 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 je za "bfeed" kada pritisnem dugme u SmartThings -u, a drugi za "vfeed" kada tražim od Alexa da nahrani Bellu glasovnom naredbom. Još jedan razlog da imate 2 različita rukovaoca je to što Alexa prepoznaje samo uređaje koji su prekidači, a ne tipke. Zato 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 SmartThings račun.

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.

Kliknite na plavo dugme "Create New Device Handler"

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

Kliknite "Spremi" i "Objavi" "Za mene". Trebali biste vidjeti zeleno obavještenje koje kaže: "Vrsta uređaja je uspješno objavljena."

Sada skočite na telefon i otvorite aplikaciju SmartThings. Trebali biste vidjeti da se rukovatelj pojavljuje kao novi uređaj. Morat ćete konfigurirati rukovatelj tako da se objavljuje na vašem uređaju za čestice. Odaberite novonastali 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 će biti niz od 40 znakova.

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

Pritisnite Spremi.

Pritisnite dugme Feed!

Klikom na dugme feed možete č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 istu proceduru kao gore. Idite na IDE SmartThings portal i kliknite na "My Device Handlers" na gornjoj navigacijskoj traci. Kliknite na plavo dugme "Create New Device Handler"

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

Kliknite "Spremi" i "Objavi" "Za mene". Trebali biste vidjeti zeleno obavještenje koje kaže: "Vrsta uređaja je 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 dugmeta. Morat ćete konfigurirati rukovatelj s vašim pristupnim tokenom i ID -om uređaja kao što ste to učinili ranije.

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 pristupni 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 SmartThings račun s aplikacijom Alexa. Zatim idite na zaslon Smart Home i kliknite "Dodaj uređaj". To se može učiniti i 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 naziv u aplikaciji Alexa ako želite, ali imajte na umu da je ovo tip prekidača pa će biti potrebno reći "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 također treba objaviti događaje koji na to ukazuju.

Kad sve bude imenovano kako želite, isprobajte!

Korak 7: Sastavite 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
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 Alexa aplikacija može koristiti za izradu rutine po rasporedu, ali to nam ne dopušta evidentiranje rasporeda u odnosu na glasovnu naredbu ili dugme. Umjesto toga, već postoji IFTTT aplet za čestice koji ćemo koristiti.

Napravimo IFTTT applet za zakazivanje feedova

Idite na https://ifttt.com ili preuzmite aplikaciju za pametni telefon IFTTT i prijavite se (kreirajte račun ako je potrebno)

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

Stoga, nakon što ste prijavljeni na IFTTT, kreirajte novi aplet, 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". Popunite polja kao na gornjoj slici, obavezno koristite "sfeed" kao ulaz jer je ovo naredba potrebna za objavljivanje događaja "Fed by schedule". Možda ćete se prilikom postavljanja ovog apleta morati povezati ili prijaviti na svoj račun čestica. Sačuvajte aplet 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 kreiranje 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 za čestice:

Bella se hrani prema rasporeduBella se hrani putem dugmetaBella 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.

Kreirajte 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 tačan objavljeni naziv događaja koji imate u svom firmveru. Na primjer, "Bella se hrani prema rasporedu" je tačan naziv događaja u kodu koji sam vam dao. Za referencu pogledajte snimak zaslona koji sam ispunio. Morat ćete stvoriti još 2 IFTTT za rukovanje i drugim događajima. Ovaj će applet stvoriti novi list na vašem google pogonu ako već ne postoji i zapisati nove događaje u sljedeći prazan red.

Preporučuje se: