Cuprins:
- Pasul 1: obțineți toate materialele necesare - aproximativ 100 USD
- Pasul 2: Configurați fotonul de particule
- Pasul 3: Conectați particula la Servo, Breadboard și Buzzer
- Pasul 4: Cod intermitent pe foton
- Pasul 5: Faceți o cutie pentru a adăuga totul
- Pasul 6: SmartThings Device Handlers
- Pasul 7: Puneți totul împreună
Video: Alimentator pentru pisici IoT utilizând fotonul de particule integrat cu Alexa, SmartThings, IFTTT, Foi de calcul Google: 7 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Nevoia unui alimentator automat pentru pisici se explică de la sine. Pisicile (pisica noastră se numește Bella) pot fi dezgustătoare când îi este foame și dacă pisica ta este ca a mea, va mânca bolul uscat de fiecare dată. Aveam nevoie de o modalitate de a distribui automat o cantitate controlată de alimente prin 3 metode - 1. Comandă vocală Alexa, 2. printr-un program și 3. printr-un buton în SmartThings. De asemenea, am vrut o modalitate de a urmări cum și când pisica se hrănește, astfel încât să nu ne hrănim de două ori (uneori când soția mea hrănește pisica și apoi hrănesc pisica din nou 15 minute mai târziu).
Acest proiect nu este prea dificil, nu sunt dezvoltator și nici inginer, dar au existat multe resurse online care m-au ajutat. Compilez tot ce am folosit și toți pașii necesari pentru ca tu să finalizezi și tu acest proiect. Bucurați-vă și clădire fericită!
Pasul 1: obțineți toate materialele necesare - aproximativ 100 USD
Iată tot ce am cumpărat pentru a face acest hrănitor pentru pisici. Au fost aproximativ 100 de dolari, ceea ce este puțin mai mult decât planificați 75 de dolari, dar am ales câteva piese de calitate mai bună pentru a vă asigura că va dura. Unele dintre materialele pe care le-am avut deja pentru a face cutia, cum ar fi lipici pentru lemn, pistol de lipit fierbinte, cuie 18ga, hârtie de nisip, material de umplutură etc. Acestea se încadrează în „instrumente” în opinia mea și nu sunt toate necesare. Pur și simplu merg dincolo și dincolo de a face lucrurile frumoase.
Dacă vă abateți de la aceste produse exacte, asigurați-vă că servo-ul dvs. are un angrenaj metalic și notați numărul de dinți, deoarece brațul / claxonul dvs. servo va trebui să aibă același număr de dinți. Servo și brațul enumerate mai jos sunt 25T, adică 25 de dinți. De asemenea, am folosit un braț de plastic la prima mișcare și dinții dezlipiți în decurs de o săptămână de utilizare, așa că nu mergeți pe ruta de plastic, luați metal.
1. Foton cu particule 19,99 USD
2. Firele de pană și jumper 7,69 USD
3. Servo 19,99 USD
4. Braț / claxon servo metalic 8,98 USD
5. Piezo Buzzer 5,05 USD
6. Dispenser de cereale 14,95 USD
7. Placă de fibră din magazinul de hardware pentru cutie, 2 bucăți doar în cazul în care aruncați 20 USD
8. Vopsea cu pulverizare ciocănită Rustoleum 5,97 USD
8. Diverse articole precum șuruburi, lipici pentru lemn, cuie, hârtie de nisip, umplutură pentru lemn etc.
Pasul 2: Configurați fotonul de particule
Primul pas este conectarea fotonului dvs. de particule la internet. Acest lucru este foarte ușor, mai ales cu ghidurile furnizate de Particle. Descărcați aplicația Particle pe telefon, creați un cont de particule și urmați ghidul pentru conectarea la wifi. Urmăriți videoclipul și urmați aceste instrucțiuni!
docs.particle.io/guide/getting-started/start/photon/
Pasul 3: Conectați particula la Servo, Breadboard și Buzzer
Bine, acum trebuie să conectăm particula la servo și buzzer folosind o panou. Atașați particula la panoul de lăsat lăsând 2 găuri de pin pe fiecare parte, nu contează cu adevărat unde este plasată particula în afara acesteia. Mi-am lipit firele de buzzer și apoi am folosit lipici fierbinte pentru a-l asigura. O metodă mai simplă ar fi utilizarea conectorilor terminali sau a conectorilor de cap și sertizarea lor cu clești. Depinde de tine.
Conectați firele servo:
Sârmă servo roșie VIN
A5 Sârmă servo galbenă
Sârmă servo GND neagră
Conectați firele soneriei (nu contează care este):
D0 Sârmă sonoră
Sârmă sonoră GND
Pasul 4: Cod intermitent pe foton
Acum, când îl aveți conectat, permiteți să blocați codul firmware-ului pe foton și să testați dacă buzzerul redă o melodie și servo-ul se rotește.
Conectați-vă la consola de construire a particulelor utilizând contul dvs.
Faceți clic pe butonul de cod din bara de instrumente din partea stângă. Copiați și lipiți codul de firmware furnizat (cat_feeder.c) în consola de construire, înlocuiți în mod implicit orice cod existent acolo.
O mică explicație despre funcția de alimentare. Deoarece hrănirea poate fi invocată prin 3 metode diferite (buton, voce, programare) avem nevoie de 3 comenzi diferite pentru a publica fiecare eveniment, astfel încât să știm cum a fost hrănită pisica. Aceste comenzi sunt „bfeed” când sunt alimentate de buton, „sfeed” când sunt alimentate conform programării și „vfeed” când sunt alimentate prin comandă vocală.
Faceți clic pe butonul Căutare dosar pentru a vă salva codul, pentru a-i da numele dorit.
Faceți clic pe butonul de verificare (arată ca o bifă cu un cerc în jurul său). După câteva momente, ar trebui să vedeți în bara de stare de jos:
Cod de compilare … Cod verificat. Buna treaba! Gata.
Acum, faceți clic pe butonul Flash din bara de instrumente din stânga (arată ca un fulger). După câteva momente, ar trebui să vedeți în bara de stare de jos:
Cod intermitent … Flash reușit! Dispozitivul dvs. este în curs de actualizare. Gata.
Apoi, conectați-vă la consola de particule
Faceți clic pe fotonul dvs. de particule. Aceasta este o pagină de stare pentru dispozitivul dvs., puteți vedea în jurnalele de evenimente când sunt întreprinse acțiuni, cum ar fi codul intermitent sau când evenimentele sunt publicate din invocarea comenzilor de alimentare. Pentru a iniția o comandă de alimentare, veți utiliza dala Funcție din partea dreaptă a acestei console. Deoarece funcția este numită „feed” în cod, ar trebui să o vedeți și o casetă de introducere a argumentului.
Tastați „bfeed” în caseta de introducere a argumentului și faceți clic pe Apelare.
Aceasta ar trebui să redea melodia și apoi să rotească servo-ul. Dacă doriți, în scopuri de testare, schimbați timpul de întârziere din cod de la 330 MS la ceva mai lung de 5000, dacă doriți să verificați rotirea servo. Trebuie să faceți clic pe butonul Flash de fiecare dată când modificați codul. Probabil va trebui să reglați întârzierea mai târziu pentru a obține cantitatea dorită de viraj (cum ar fi hrănirea unui câine, poate doriți să distribuiți mai multe alimente).
Pasul 5: Faceți o cutie pentru a adăuga totul
Acest pas constă în abilitățile tale bune de tâmplărie. Am cumpărat 2 plăci din fibră de 2x4ft pentru a face cutia, deoarece este puternică, netedă la atingere, relativ ieftină și ușor de tăiat / de lucrat. Puteți alege orice material. Acest pas este într-adevăr la discreția dvs. în modul în care este construit, deoarece toată lumea are nevoi diferite. Nu voi avea un pas cu pas detaliat pentru realizarea cutiei, dar pot împărtăși procesul de gândire și metodele pe care le-am folosit.
Au fost o serie de factori pe care i-am luat în considerare pentru proiectarea cutiei. Am vrut acest lucru cât mai compact posibil. Am vrut să fie ușor de întreținut pentru curățare și / sau reparare, dacă a funcționat vreodată defectuos. În cele din urmă, am vrut ca tubul dozator să fie expus, astfel încât să văd vizibil când alimentele se epuizează. Având în vedere acest lucru, am făcut cutia mai întâi și apoi am măsurat dimensiunile interioare pentru a face un cadru pătrat pe care sunt atașate unitatea distribuitoare, servo și placă. În acest fel, întreaga unitate poate fi ridicată chiar din cutie pentru service. Vezi imaginile.
Pasul 6: SmartThings Device Handlers
Acest pas explică cum să implementați apelarea funcției de alimentare folosind SmartThings și Alexa. Pentru a face acest lucru, a trebuit să scriu 2 manipulatoare de dispozitive groovy. Unul dintre handler este pentru „bfeed” când apăs butonul din SmartThings și celălalt handler este pentru „vfeed” când îi cer lui Alexa să o hrănească pe Bella prin comandă vocală. Un alt motiv pentru a avea 2 manageri diferiți este că Alexa recunoaște numai dispozitivele care sunt comutatoare, nu butoane. Așa că a trebuit să-l păcălesc pe Alexa să recunoască un comutator pentru a invoca funcția (oprit și activat, efectuează aceeași acțiune). Ok, să începem.
Conectați-vă (sau creați un cont) la portalul IDE SmartThings la https://ide.smartthings.com utilizând fie contul dvs. Samsung, fie contul SmartThings.
Confirmați că hub-ul dvs. SmartThings apare în „Locațiile mele” și „Huburile mele”. Dacă nu apare, depanați acest lucru înainte de a continua.
Mai întâi vom crea butonul Handler
Faceți clic pe „Dispozitivele mele de gestionare” din bara de navigare de sus.
Faceți clic pe butonul albastru „Create New Device Handler”
Selectați fila „Din cod” și lipiți codul din fișierul atașat button_handler.groovy. Apoi faceți clic pe Creați.
Faceți clic pe „Salvați” și „Publicați” „Pentru mine”. Ar trebui să apară o notificare verde care să spună „Tip de dispozitiv publicat cu succes”.
Acum, treceți la telefon și deschideți aplicația SmartThings. Ar trebui să vedeți că dispozitivul de gestionare apare ca un dispozitiv nou. Va trebui să configurați handlerul astfel încât să fie postat pe dispozitivul dvs. cu particule. Selectați dispozitivul nou creat și deschideți Setările (arată ca o pictogramă roată).
Introduceți numele dispozitivului - Denumiți dispozitivul indiferent de alegerea dvs., sunt sigur că pisica dvs. nu este numită și Bella.
Introduceți jetonul de acces - Jetonul de acces va fi găsit în consola Particle Build https://build.particle.io/ sub Setări (pictograma roată din stânga jos). Jetonul de acces va fi un șir de 40 de caractere.
Introduceți ID-ul dispozitivului - ID-ul dispozitivului se găsește pe pagina Particle Console ca un șir de 24 de caractere și este, de asemenea, văzut în toate adresele URL ale particulelor atunci când sunteți conectat la contul dvs. care lucrează pe dispozitivul dvs. cu particule. ID-ul dispozitivului văzut BOLD în adresa URL:
Faceți clic pe Salvare.
Faceți clic pe butonul Feed!
Dând clic pe butonul de alimentare, ar trebui să auziți melodia și să faceți ca servo-ul să se întoarcă. De asemenea, ar trebui să vedeți evenimente publicate în jurnalul de evenimente al consolei de particule.
Apoi, vom crea Device Handler pentru Alexa
Urmați aceeași procedură ca mai sus. Accesați portalul IDE SmartThings și faceți clic pe „Dispozitivele mele de gestionare” din bara de navigare de sus. Faceți clic pe butonul albastru „Creați un dispozitiv de gestionare nou”
Selectați fila „Din cod” și lipiți codul din fișierul atașat alexa_handler.groovy. Apoi faceți clic pe Creați.
Faceți clic pe „Salvați” și „Publicați” „Pentru mine”. Ar trebui să apară o notificare verde care să spună „Tip de dispozitiv publicat cu succes”.
Acum, săriți înapoi la telefon și deschideți aplicația SmartThings. Ar trebui să vedeți că dispozitivul de manipulare apare ca un dispozitiv nou, dar de această dată fără niciun buton. Va trebui să configurați gestionarul cu jetonul de acces și ID-ul dispozitivului, așa cum ați făcut anterior.
Selectați dispozitivul nou creat în SmartThings și deschideți Setările (arată ca o pictogramă roată).
Introduceți numele dispozitivului - Denumiți dispozitivul indiferent de ce ați ales, l-am numit „Cat Feeder Handler for Alexa”, astfel încât soția mea să știe că nu este butonul Cat Feeder.
Introduceți jetonul de acces și introduceți ID-ul dispozitivului, apoi faceți clic pe Salvare.
Acum, deschideți aplicația Alexa pe telefon. Dacă nu ați făcut-o deja, activați SmartThings Alexa Skill și conectați-vă contul SmartThings la aplicația Alexa. Apoi accesați ecranul Smart Home și faceți clic pe „Adăugați dispozitiv”. Acest lucru se poate face și spunând „Alexa, descoperă dispozitive”. Un dispozitiv ar trebui să apară cu o pictogramă de comutare, acesta va fi numit oricum l-ați numit handler în SmartThings. Puteți schimba numele acesteia în aplicația Alexa, dacă doriți, dar nu uitați că acesta este un tip de comutator, astfel încât va fi necesar să spuneți „Alexa, activați” sau „Alexa, opriți”. Știu că nu este frumos să spui „Porniți alimentatorul pentru pisici”, așa că o alternativă este să creați o nouă rutină în aplicația Alexa și să o apelați exact cu expresia pe care o doriți. Am făcut o rutină numită „Feed Bella” care pornește comutatorul de alimentare pentru pisici.
Făcând clic pe comutatorul din aplicația Alexa, acum ar trebui să apelați cu succes funcția de alimentare. Jurnalul de evenimente Particle Console ar trebui să posteze și evenimentele care indică acest lucru.
Odată ce ați numit totul așa cum doriți, continuați și încercați!
Pasul 7: Puneți totul împreună
Ultima piesă pe care nu am acoperit-o este cum să programez fluxurile și să înregistrați evenimentele publicate într-o foaie Google. Probabil că vă gândiți că aplicația Alexa poate fi utilizată pentru a face o rutină pentru program, dar acest lucru nu ne-ar permite să înregistrăm programul vs comanda vocală sau butonul. Deci, în schimb, există deja un applet IFTTT pentru particule pe care îl vom folosi.
Să creăm applet-ul IFTTT pentru programarea fluxurilor
Accesați https://ifttt.com sau descărcați aplicația pentru smartphone IFTTT și conectați-vă (creați un cont dacă este necesar)
Dacă sunteți nou în IFTTT, este foarte simplu. Fiecare applet constă dintr-un IF (o condiție sau un declanșator) și un THAT (o acțiune de făcut).
Așadar, odată conectat la IFTTT, creați un nou applet, selectați IF și căutați sau selectați „Data și ora”. Configurați acest lucru în funcție de orarul pe care îl preferați. Apoi continuați pașii și odată ce ajungeți la THAT, veți căuta „Particulă” și selectați „Apelați o funcție”. Completați câmpurile ca în captura de ecran de mai sus, asigurați-vă că utilizați „sfeed” ca intrare deoarece aceasta este comanda necesară pentru a publica un eveniment „Alimentat după program”. Este posibil să fie necesar să vă conectați sau să vă conectați la contul dvs. de particule în timp ce configurați acest applet. Salvați applet-ul și ar trebui să fiți bine să mergeți. Dacă doriți să testați, schimbați data și ora pentru a se apropia în viitor și vedeți dacă se declanșează corect.
Acum, pentru a crea applet-urile IFTTT pentru gestionarea celor 3 tipuri de evenimente
Există 3 comenzi pe care trebuie să le luăm în considerare atunci când alimentatorul pentru pisici rulează. Acestea sunt codate greu în firmware-ul particulei:
Bella hrănită prin programare Bella hrănită prin buton Bella hrănită prin comandă vocală
Dacă animalul dvs. de companie nu este numit „Bella”, probabil că doriți să schimbați acest lucru în firmware și să reluați intermitent. Schimbați textul în linia Particle.publish a codului particulei.
Creați un nou applet IFTTT. (trebuie să faceți acest lucru de 3 ori, pentru fiecare tip de eveniment)
Începând cu IF, căutați Particle și selectați „Eveniment nou publicat”. Numele evenimentului va trebui să fie exact numele evenimentului publicat pe care îl aveți în firmware. De exemplu, „Bella alimentată după program” este numele exact al evenimentului din codul pe care vi l-am furnizat. Verificați captura de ecran în timp ce am completat-o pentru referință. Va trebui să creați încă 2 IFTTT pentru a gestiona și celelalte evenimente. Acest applet va crea o foaie nouă în unitatea Google dacă nu există deja și va înregistra evenimente noi la următorul rând gol.
Recomandat:
Urmărirea mișcării utilizând MPU-6000 și fotonul cu particule: 4 pași
Urmărirea mișcării folosind MPU-6000 și fotonul de particule: MPU-6000 este un senzor de urmărire a mișcării pe 6 axe care are încorporat accelerometru pe 3 axe și giroscop pe 3 axe. Acest senzor este capabil să urmărească eficient poziția și locația exactă a unui obiect în planul tridimensional. Poate fi folosit în
Măsurarea câmpului magnetic utilizând HMC5883 și fotonul de particule: 4 pași
Măsurarea câmpului magnetic utilizând HMC5883 și fotonul cu particule: HMC5883 este o busolă digitală proiectată pentru detectarea magnetică a câmpului redus. Acest dispozitiv are o gamă largă de câmp magnetic de +/- 8 Oe și o rată de ieșire de 160 Hz. Senzorul HMC5883 include drivere automate pentru curele de degausare, anulare de compensare și
Calculul intensității luminii utilizând BH1715 și fotonul de particule: 5 pași
Calculul intensității luminii folosind BH1715 și fotonul cu particule: Ieri am lucrat la afișaje LCD și, în timp ce lucram peste ele, am realizat importanța calculului intensității luminii. Intensitatea luminii nu este importantă doar în domeniul fizic al acestei lumi, ci are rolul său bine spus în biologie
Monitorizarea calității aerului utilizând fotonul de particule: 11 pași (cu imagini)
Monitorizarea calității aerului utilizând fotonul de particule: în acest proiect, senzorul de particule PPD42NJ este utilizat pentru a măsura calitatea aerului (PM 2.5) prezentă în aer cu fotonul de particule. Nu numai că afișează datele de pe consola Particle și dweet.io, ci indică și calitatea aerului folosind LED-ul RGB, schimbându-l
Monitorizarea sălii de conferințe utilizând fotonul de particule: 8 pași (cu imagini)
Monitorizarea sălii de conferințe folosind Particle Photon: Introducere În acest tutorial vom realiza monitorizarea sălii de conferințe folosind Particle Photon. În acest Particle este integrat cu Slack folosind Webhooks pentru a obține actualizări în timp real, dacă o cameră este disponibilă sau nu. Senzorii PIR sunt folosiți pentru a