Turinys:

„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis: 7 žingsniai (su nuotraukomis)
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis: 7 žingsniai (su nuotraukomis)

Video: „IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis: 7 žingsniai (su nuotraukomis)

Video: „IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis: 7 žingsniai (su nuotraukomis)
Video: Высокая плотность 2022 2024, Lapkritis
Anonim
Image
Image
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis
„IoT Cat Feeder“naudojant dalelių fotoną, integruotą su „Alexa“, „SmartThings“, IFTTT, „Google“skaičiuoklėmis

Automatinio kačių šėrimo poreikis yra savaime suprantamas. Katės (mūsų katės vardas yra Bella) gali būti nemalonios, kai alkanos, ir jei jūsų katė yra tokia kaip mano, dubenį valgys kiekvieną kartą sausai. Man reikėjo būdo automatiškai išduoti kontroliuojamą maisto kiekį trimis būdais - 1. „Alexa“balso komanda, 2. pagal tvarkaraštį ir 3. „SmartThings“mygtuku. Taip pat norėjau, kaip būtų galima sekti, kaip ir kada katė maitinama, kad mes nemaitintume du kartus (kartais kai žmona maitina katę, o po 15 minučių vėl maitinu katę).

Šis projektas nėra pernelyg sunkus, nesu nei kūrėjas, nei inžinierius, tačiau internete buvo daug išteklių, kurie man padėjo. Aš renku viską, ką naudojau, ir visus veiksmus, būtinus jums, kad užbaigtumėte šį projektą. Mėgaukitės ir laimingas pastatas!

1 žingsnis: Gaukite visas reikalingas medžiagas - maždaug 100 USD

Gaukite visas reikalingas medžiagas - maždaug 100 USD
Gaukite visas reikalingas medžiagas - maždaug 100 USD

Štai viskas, ką aš nusipirkau, kad galėčiau pagaminti šį kačių lesyklėlę. Tai buvo apie 100 USD, tai yra šiek tiek daugiau nei mano planuoti 75 USD, tačiau buvo skirta geresnės kokybės dalims užtikrinti, kad jie tarnaus. Kai kurios medžiagos, kurias jau turėjau pagaminti dėžutėje, pavyzdžiui, medžio klijai, karšto klijų pistoletas, 18ga vinys, švitrinis popierius, medienos užpildas ir tt Mano nuomone, jos patenka į „įrankius“ir ne visos būtinos. Aš tiesiog kartais peržengiu aukščiau ir toliau, kad viskas būtų gražu.

Jei nukrypstate nuo šių tikslių produktų, tiesiog įsitikinkite, kad jūsų servovariklis turi metalinę pavarą ir pažymėkite dantų skaičių, nes jūsų servo ranka/ragas turės turėti tokį patį dantų skaičių. Žemiau išvardytos servo ir rankos yra 25T, o tai reiškia 25 dantis. Be to, aš pirmą kartą naudoju plastikinę ranką, o dantys nuplėšti per savaitę nuo naudojimo, todėl nesirinkite plastiko, įsigykite metalo.

1. Dalelių fotonas 19,99 USD

2. Duonos lentos ir trumpiklio laidai $ 7.69

3. Servo 19,99 USD

4. Metalinė servo rankena/ragas $ 8.98

5. „Piezo Buzzer“5,05 USD

6. Javų dozatorius 14,95 USD

7. Pluošto plokštė iš aparatūros parduotuvės dėžutei, 2 vnt. Tik tuo atveju, jei sugadinsite 20 USD

8. „Rustoleum Hammered Spray Paint“5,97 USD

8. Įvairūs tokius daiktus kaip varžtai, medienos klijai, vinys, švitrinis popierius, medienos užpildas ir kt.

2 žingsnis: nustatykite dalelių fotoną

Pirmasis žingsnis yra prijungti dalelių fotoną prie interneto. Tai labai paprasta, ypač naudojant „Particle“pateiktus vadovus. Atsisiųskite „Particle“programą į savo telefoną, sukurkite dalelių paskyrą ir sekite vadovą, kaip ją prijungti prie „Wi -Fi“. Žiūrėkite vaizdo įrašą ir vykdykite šias instrukcijas!

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

3 veiksmas: prijunkite daleles prie „Servo“, „Breadboard“ir „Buzzer“

Prijunkite daleles prie „Servo“, „Breadboard“ir „Buzzer“
Prijunkite daleles prie „Servo“, „Breadboard“ir „Buzzer“
Prijunkite daleles prie „Servo“, „Breadboard“ir „Buzzer“
Prijunkite daleles prie „Servo“, „Breadboard“ir „Buzzer“

Gerai, dabar mes turime prijungti dalelę prie servo ir garsinio signalo, naudodami duonos lentą. Pritvirtinkite daleles prie duonos lentos, palikdami 2 kaiščius kiekvienoje pusėje, nesvarbu, kur dalelė yra už jos ribų. Lituodavau savo laidus prie garsinio signalo, o tada pritvirtinau karštais klijais. Paprastesnis metodas būtų naudoti gnybtų jungtis arba užpakalines jungtis ir suspausti jas replėmis. Priklauso nuo tavęs.

Prijunkite servo laidus:

VIN Raudona servo viela

A5 Geltona servo viela

GND Juodas servo laidas

Prijunkite garsinio signalo laidus (nesvarbu, kuris):

D0 garsinio signalo laidas

GND garsinio signalo laidas

4 žingsnis: mirksi kodas prie fotono

Fotonui mirksi kodas
Fotonui mirksi kodas

Dabar, kai esate prijungę, leiskite programinei įrangai programuoti kodą prie fotono ir patikrinkite, ar garsinis signalas groja melodiją, o servo sukasi.

Prisijunkite prie dalelių kūrimo konsolės naudodami savo paskyrą

Spustelėkite kodo mygtuką kairėje įrankių juostoje. Nukopijuokite ir įklijuokite pateiktą programinės įrangos kodą (cat_feeder.c) į kūrimo konsolę, pagal numatytuosius nustatymus pakeiskite esamą kodą.

Mažas paaiškinimas apie pašarų funkciją. Kadangi šėrimą galima iškviesti 3 skirtingais būdais (mygtuku, balsu, tvarkaraščiu), mums reikia 3 skirtingų komandų, kad paskelbtume kiekvieną įvykį, kad žinotume, kaip katė buvo šeriama. Šios komandos yra „bfeed“, kai jas maitina mygtukas, „sfeed“, kai jos pateikiamos pagal tvarkaraštį, ir „vfeed“, kai jos pateikiamos balso komanda.

Norėdami išsaugoti kodą, spustelėkite mygtuką „Aplanko išvaizda“ir suteikite jam pasirinktą pavadinimą.

Spustelėkite patvirtinimo mygtuką (jis atrodo kaip varnelė su apskritimu aplink jį). Po kelių akimirkų apatinėje būsenos juostoje turėtumėte pamatyti:

Rengiamas kodas… Kodas patvirtintas. Puikus darbas! Paruošta.

Dabar kairėje įrankių juostoje spustelėkite mygtuką „Flash“(atrodo kaip žaibas). Po kelių akimirkų apatinėje būsenos juostoje turėtumėte pamatyti:

Mirksi kodas… Blykstė sėkmingai! Jūsų įrenginys atnaujinamas. Paruošta.

Tada prisijunkite prie dalelių konsolės

Spustelėkite savo dalelių fotoną. Tai yra jūsų įrenginio būsenos puslapis, kurį galite matyti įvykių žurnaluose, kai atliekami veiksmai, pvz., Mirksi kodas arba kai skelbiami įvykiai, iškviečiant sklaidos kanalo komandas. Norėdami inicijuoti sklaidos kanalo komandą, naudokite plytelę Funkcija dešinėje šios konsolės pusėje. Kadangi funkcija kode vadinama „pašaru“, turėtumėte pamatyti ją ir argumentų įvesties laukelį.

Argumentų įvesties laukelyje įveskite „bfeed“ir spustelėkite Skambinti.

Tai turėtų paleisti melodiją ir pasukti servo. Jei norite, bandymo tikslais, pakeiskite kodo atidėjimo laiką nuo 330 MS iki kažko ilgesnio, pavyzdžiui, 5000, jei norite patikrinti servo sukimąsi. Kiekvieną kartą keisdami kodą turite spustelėti „Flash“mygtuką. Tikriausiai vėliau turėsite koreguoti atidėjimą, kad gautumėte norimą posūkio kiekį (pvz., Šerti šunį, galbūt norėsite išleisti daugiau maisto).

5 žingsnis: sukurkite dėžutę, kurioje bus viskas

Sukurkite dėžę, kurioje bus viskas
Sukurkite dėžę, kurioje bus viskas
Sukurkite dėžutę, kurioje bus viskas
Sukurkite dėžutę, kurioje bus viskas
Sukurkite dėžutę, kurioje bus viskas
Sukurkite dėžutę, kurioje bus viskas

Šis žingsnis susideda iš jūsų puikių dailidės įgūdžių. Aš nusipirkau 2 -2x4ft pluošto plokštes, kad padarytų dėžutę, nes ji tvirta, lygi liesti, palyginti pigi ir lengvai pjaunama/dirbama. Galite pasirinkti bet kokią medžiagą. Šis žingsnis tikrai yra jūsų nuožiūra, kaip jis sukurtas, nes kiekvienas turi skirtingus poreikius. Aš neturėsiu išsamių žingsnių po žingsnio, kaip padaryti dėžutę, bet galiu pasidalinti mintimis ir mano naudojamais metodais.

Kurdamas dėžutę, atsižvelgiau į daugybę veiksnių. Norėjau, kad šis daiktas būtų kuo kompaktiškesnis. Norėjau, kad jį būtų galima lengvai valyti ir (arba) pataisyti, jei jis kada nors veiktų netinkamai. Galiausiai norėjau, kad dozatoriaus vamzdelis būtų atviras, kad galėčiau aiškiai matyti, kada maistas baigiasi. Turėdamas tai omenyje, aš pirmiausia padariau dėžutę, o paskui išmatavau vidinius matmenis, kad gaučiau kvadratinį rėmą, prie kurio pritvirtintas dozatorius, servo ir plokštė. Tokiu būdu visą įrenginį galima pakelti tiesiai iš dėžutės techninei priežiūrai. Žiūrėkite paveikslėlius.

6 veiksmas: „SmartThings“įrenginių tvarkytojai

„SmartThings“įrenginių tvarkytojai
„SmartThings“įrenginių tvarkytojai
„SmartThings“įrenginių tvarkytojai
„SmartThings“įrenginių tvarkytojai
„SmartThings“įrenginių tvarkytojai
„SmartThings“įrenginių tvarkytojai

Šiame žingsnyje paaiškinama, kaip įdiegti sklaidos kanalo funkciją naudojant „SmartThings“ir „Alexa“. Norėdami tai padaryti, turėjau parašyti 2 „groovy“įrenginių tvarkytojus. Vienas iš tvarkytojų yra skirtas „bfeed“, kai paspaudžiu mygtuką „SmartThings“, o kitas tvarkytojas skirtas „vfeed“, kai paprašau Alexa pamaitinti Bella balso komanda. Kita priežastis turėti 2 skirtingus tvarkytojus yra ta, kad „Alexa“atpažįsta tik įrenginius, kurie yra jungikliai, o ne mygtukai. Taigi turėjau apgauti Alexa, kad ji atpažintų jungiklį, kad iškviesčiau funkciją (išjungus ir įjungus tą patį veiksmą). Gerai, pradėkime.

Prisijunkite (arba susikurkite paskyrą) prie IDE „SmartThings“portalo adresu https://ide.smartthings.com naudodami „Samsung“arba „SmartThings“paskyrą.

Įsitikinkite, kad „SmartThings“centras rodomas skiltyse „Mano vietos“ir „Mano šakotuvai“. Jei jis nerodomas, prieš tęsdami pašalinkite trikčių šalinimo problemą.

Pirmiausia sukursime mygtukų tvarkyklę

Viršutinėje naršymo juostoje spustelėkite „Mano įrenginių tvarkytojai“.

Spustelėkite mėlyną mygtuką „Sukurti naują įrenginio tvarkyklę“

Pasirinkite skirtuką „Iš kodo“ir įklijuokite kodą iš pridėto failo button_handler.groovy. Tada spustelėkite Sukurti.

Spustelėkite „Išsaugoti“ir „Paskelbti“„Man“. Turėtumėte pamatyti žalią pranešimą, kuriame sakoma: „Įrenginio tipas sėkmingai paskelbtas“.

Dabar pereikite prie savo telefono ir atidarykite „SmartThings“programą. Turėtumėte matyti tvarkyklę kaip naują įrenginį. Turėsite sukonfigūruoti tvarkyklę, kad ji paskelbtų jūsų dalelių įrenginį. Pasirinkite naujai sukurtą įrenginį ir atidarykite nustatymus (atrodo kaip krumpliaračio piktograma).

Įveskite įrenginio pavadinimą - pavadinkite įrenginį, ką pasirinksite, esu tikras, kad jūsų katė taip pat nėra pavadinta Bella.

Įveskite prieigos raktą - prieigos raktą rasite dalelių kūrimo konsolėje https://build.particle.io/, esantį nustatymuose (krumpliaračio piktograma apačioje kairėje). Prieigos raktas bus 40 simbolių eilutė.

Įveskite įrenginio ID - įrenginio ID yra „Dalelių konsolės“puslapyje kaip 24 simbolių eilutė ir taip pat matomas visuose dalelių URL adresuose, kai esate prisijungę prie savo paskyros dirbdami su dalelių įrenginiu. Įrenginio ID buvo paryškintas URL:

Spustelėkite Išsaugoti.

Spustelėkite „Feed“mygtuką!

Spustelėję tiekimo mygtuką, turėtumėte išgirsti melodiją ir įjungti servo. Taip pat turėtumėte matyti įvykius, paskelbtus dalelių konsolės įvykių žurnale.

Toliau sukursime „Alexa“įrenginių tvarkyklę

Atlikite tą pačią procedūrą, kaip aprašyta aukščiau. Eikite į „IDE SmartThings“portalą ir viršutinėje naršymo juostoje spustelėkite „Mano įrenginių tvarkytojai“. Spustelėkite mėlyną mygtuką „Sukurti naują įrenginių tvarkyklę“

Pasirinkite skirtuką „Iš kodo“ir įklijuokite kodą iš pridėto failo alexa_handler.groovy. Tada spustelėkite Sukurti.

Spustelėkite „Išsaugoti“ir „Paskelbti“„Man“. Turėtumėte pamatyti žalią pranešimą, kuriame sakoma: „Įrenginio tipas sėkmingai paskelbtas“.

Dabar grįžkite į savo telefoną ir atidarykite „SmartThings“programą. Turėtumėte matyti tvarkyklę kaip naują įrenginį, bet šį kartą be jokio mygtuko. Turėsite sukonfigūruoti tvarkyklę naudodami prieigos raktą ir įrenginio ID, kaip ir anksčiau.

„SmartThings“pasirinkite naujai sukurtą įrenginį ir atidarykite nustatymus (atrodo kaip krumpliaračio piktograma).

Įveskite įrenginio pavadinimą - pavadinkite įrenginį, kokį tik pasirinksite, aš jį pavadinau „Alexa Cat Feeder Handler“, todėl mano žmona žino, kad tai ne „Cat Feeder“mygtukas.

Įveskite prieigos raktą ir įveskite įrenginio ID, tada spustelėkite Išsaugoti.

Dabar telefone atidarykite „Alexa“programą. Jei to dar nepadarėte, įgalinkite „SmartThings Alexa Skill“ir susiekite savo „SmartThings“paskyrą su „Alexa“programa. Tada eikite į „Smart Home“ekraną ir spustelėkite „Pridėti įrenginį“. Tai taip pat galima padaryti sakant „Alexa, atrask įrenginius“. Įrenginys turėtų būti rodomas su jungiklio piktograma, jis bus pavadintas taip, kaip pavadinote tvarkyklę „SmartThings“. Jei norite, galite pakeisti jo pavadinimą „Alexa“programoje, tačiau atminkite, kad tai yra jungiklio tipas, todėl reikės pasakyti „Alexa, įjunkite“arba „Alexa, išjunkite“. Žinau, kad nėra malonu sakyti „Įjunkite kačių lesyklėlę“, todėl alternatyva yra sukurti naują rutiną „Alexa“programoje ir pavadinti ją tiksliai norima fraze. Aš padariau rutiną „Feed Bella“, kuri įjungia kačių maitinimo jungiklį.

Spustelėję jungiklį „Alexa“programoje, dabar turėtumėte sėkmingai iškviesti sklaidos kanalo funkciją. Dalelių konsolės įvykių žurnalas taip pat turėtų paskelbti įvykius, nurodančius tai.

Kai viskas bus pavadinta taip, kaip norite, pirmyn ir pabandykite!

7 žingsnis: surinkite viską kartu

Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti

Paskutinis kūrinys, kurio neaptariau, yra tai, kaip suplanuoti sklaidos kanalus ir įrašyti paskelbtus įvykius į „Google“lapą. Tikriausiai manote, kad „Alexa“programa gali būti naudojama tvarkaraščiui sudaryti, tačiau tai neleidžia mums registruoti tvarkaraščio ir balso komandos ar mygtuko. Taigi vietoj to jau yra IFTTT programėlė dalelėms, kurią mes naudosime.

Sukurkime IFTTT programėlę sklaidos kanalų planavimui

Eikite į https://ifttt.com arba atsisiųskite „IFTTT“išmaniojo telefono programą ir prisijunkite (jei reikia, susikurkite paskyrą)

Jei esate naujokas IFTTT, tai labai paprasta. Kiekvieną programėlę sudaro IF (sąlyga arba aktyviklis) ir THAT (tam tikras veiksmas).

Taigi prisijungę prie IFTTT sukurkite naują programėlę, pasirinkite IF ir ieškokite arba pasirinkite „Data ir laikas“. Jūs sukonfigūruosite tai pagal pageidaujamą tvarkaraštį. Tada atlikite veiksmus ir, pasiekę TĄ, ieškosite „Dalelė“ir pasirinkite „Skambinti funkcijai“. Užpildykite laukus, kaip parodyta aukščiau esančioje ekrano kopijoje, būtinai naudokite „sfeed“kaip įvestį, nes tai yra komanda, reikalinga norint paskelbti įvykį „Maitinimas pagal tvarkaraštį“. Nustatydami šią programėlę, gali tekti prisijungti arba prisijungti prie savo dalelių paskyros. Išsaugokite programėlę ir jums bus gerai eiti. Jei norite išbandyti, tiesiog pakeiskite datą ir laiką į artimiausią ir pažiūrėkite, ar jis tinkamai suveikia.

Dabar sukurkite IFTTT programėles, skirtas 3 tipų įvykiams tvarkyti

Veikiant kačių tiektuvui, turime atsižvelgti į 3 komandas. Jie yra sunkiai užkoduoti dalelių programinėje įrangoje:

Bella maitina pagal tvarkaraštį Bella maitinama mygtuku Bella maitinama balso komanda

Jei jūsų augintinis nėra pavadintas „Bella“, tikriausiai norite tai pakeisti programinėje įrangoje ir iš naujo paleisti. Pakeiskite dalelių kodo eilutės „Particle.publish“tekstą.

Sukurkite naują IFTTT programėlę. (reikia tai padaryti 3 kartus, kiekvienam įvykio tipui)

Pradėdami nuo IF, ieškokite dalelių ir pasirinkite „Paskelbtas naujas įvykis“. Įvykio pavadinimas turi būti tikslus paskelbto įvykio pavadinimas, kurį turite savo programinėje įrangoje. Pavyzdžiui, „Bella maitinama pagal tvarkaraštį“yra tikslus įvykio pavadinimas jūsų pateiktame kode. Peržiūrėkite ekrano kopiją, kai užpildžiau ją nuorodai. Norėdami valdyti kitus įvykius, turėsite sukurti dar 2 IFTTT. Ši programėlė sukurs naują lapą jūsų „Google“diske, jei jo dar nėra, ir įrašys naujus įvykius į kitą tuščią eilutę.

Rekomenduojamas: