Sadržaj:

LaserKitty !!: 7 koraka (sa slikama)
LaserKitty !!: 7 koraka (sa slikama)

Video: LaserKitty !!: 7 koraka (sa slikama)

Video: LaserKitty !!: 7 koraka (sa slikama)
Video: СУПЕР СМЕШНАЯ КОМЕДИЯ! "Как Извести Любовницу За 7 Дней" РУССКИЕ КОМЕДИИ НОВИНКИ, ФИЛЬМЫ HD, КИНО 2024, Oktobar
Anonim
Image
Image
Nabavite svoje stvari
Nabavite svoje stvari

Istina je koja je općepriznata da jedna mačka koja posjeduje sreću mora biti u nedostatku laserske igračke. Kao i kod slobodne gospode u nedostatku budućih žena, moraju se poštivati neke mjere opreza. No, nije li to istina o bilo čemu što zaista vrijedi imati?

Ako imate nedoumica u vezi kućnih ljubimaca i sigurnosti lasera, prije komentara pređite na kraj ovog uputstva. Ako ste zabrinuti oko buduće supruge, pa čak i sadašnje, vjerovatno ćete morati potražiti negdje drugdje.

Sada biste mogli navratiti u lokalnu trgovinu za kućne ljubimce i kupiti laserski pokazivač, a možda čak i neki uređaj koji dodaje rudimentarnu automatizaciju. Uštedjeli biste nešto novca i mogli biste ga vratiti ako ne uspije. Ili možete sami izgraditi nešto. Već ima dosta primjera, ali evo mog doprinosa kanonu. Sadrži:

  • Potpuna kontrola pametnog telefona
  • Ručni, automatski i zakazani načini
  • Prilagođeno sučelje aplikacije
  • Status sistema sinhroniziran između više web klijenata
  • Status sistema preslikan na LaserKitty !! samog sebe
  • Konfigurabilna ograničenja raspona pomicanja i nagiba
  • Konfigurabilne dužine i frekvencije sesije za vrijeme reprodukcije
  • Prozori za igru koji se mogu konfigurirati
  • Stranica za podešavanje sa trenutnim postavkama na prvi pogled
  • NTP sinhronizacija vremena
  • WiFi upravitelj za jednostavno postavljanje na novim mrežama
  • Generator tonova za reprodukciju teme Nemoguća misija prije svake sesije igre: vaša mačka može i ne mora cijeniti ironiju.
  • Pushbullet obavijesti na sve vaše uređaje kada započne nova sesija reprodukcije
  • Domaća pozicija se može konfigurirati tako da se vrijeme igre završava u zdjeli za hranu ili nepomičnoj igrački
  • Sve postavke pohranjene u EEPROM -u tako da se ne izgube pri nestanku struje
  • I mnogo više! Pa, ne baš, to je sve.

Korak 1: Nabavite svoje stvari

Ovo sam koristio:

  • Mini sklop sa nagibom i nagibom. Ovo svakako nije najjeftiniji koji možete pronaći i za naše potrebe treba neke izmjene. Odabrao sam ga jer izgleda malo hladnije od jeftinih podrumskih plastičnih sklopova. Kao neočekivani bonus, njegov dizajn omogućava vrlo jednostavan način postavljanja lasera. Dolazi s nekoliko mikro servo servera, ali toplo vam preporučujem da kupite hrpu dodatnih radi zamjene. Trebat će vam barem jedan dodatni servo (slomljen je u redu).
  • Kućište. Boli me što plaćam 8 dolara za plastičnu kutiju i definitivno biste mogli pronaći nešto prikladno za manje. Ipak, nešto o veličini povezanog kućišta je približno u redu.
  • Razvojna ploča zasnovana na ESP8266. Koristio sam NodeMCU. Nije preuveličavanje reći da volim ove stvari. Lako se koristi u Arduino IDE -u i ima mnogo flash memorije za vaše web stranice. Takođe jeftino i, po mom iskustvu, jako teško za prženje.
  • Mini laser. Deset za 6 dolara uključujući Amazon Prime. Zezaš me ?? Sada samo moram smisliti što ću s ostalih devet.
  • Pasivni zujalica za tonove.
  • Dvokanalni relej. Koristim ih za uključivanje i isključivanje servo i lasera. Možda ćete moći ukloniti ovu komponentu kao što ću kasnije objasniti.
  • 5VDC napajanje. Nadamo se da ćete imati jedan od ovih koji leži okolo na nekom davno zaboravljenom gizmu, ali ako ništa drugo nije jeftino i veselo što može proizvesti oko 1A od 5VDC.
  • Razni potrošni materijal kao što su otpornici, LED diode, spojna žica, termoskupljanje, lemljenje, vruće ljepilo. Uobicajeno. Koristio sam i bačvastu utičnicu za dolazno napajanje od 5VDC iz moje sramotno velike kolekcije uništenih Arduino udarnih ploča.
  • Posljednja, ali nikako ne najmanje važna, vinilna naljepnica za taj hirovit završni dodir.

Pa da. Sve u svemu gledate oko 50 dolara. Mogli biste to učiniti za manje novca, ali zar vaša maca ne zaslužuje najbolje?

Korak 2: Alati i resursi

Alati i izvori
Alati i izvori

Ovdje nema ništa posebno sa strane alata. Samo pristojno lemilica, multimetar, bušilica i osnovni ručni alati. Napajanje sa klupe dobro je za eksperimentiranje s laserom, ali nije bitno.

Ovaj projekt zaista iskorištava mogućnosti ESP8266, a posebno NodeMCU. Ako tek počinjete s ESP8266, nisam našao bolji izvor na jednom mjestu od ove stvari. Osim toga, sve je u Googlu za pronalaženje odgovora na probleme koji su se pojavili usput.

Korak 3: Pripremite kućište

Pripremite kućište
Pripremite kućište
Pripremite kućište
Pripremite kućište

Kao što sam već spomenuo, plaćanje 8 USD za plastično kućište čini se nevjerojatnim. Ono što je još gore je zeznuti stvar postavljanjem rupe na pogrešno mjesto. Zato prije nego što imate na raspolaganju svoju kutiju sa bušilicom i/ili bilo kojim drugim proizvođačem haosa, razmislite o greškama koje sam napravio.

  • Prije svega, morate razmisliti gdje će sve stvari stati. Dobra vijest je da kućište za koje predlažem da ima dovoljno prostora, čak i uz vrlo neuredno ožičenje koje vidite ovdje. Možda ćete čak moći i pobjeći s manjom kutijom, pogotovo ako uklonite releje.
  • Najvažnije je gdje ćete montirati sklop za okretanje i naginjanje u poklopac. Moj prvi pokušaj prikazan je ovdje. Mislio sam da ću ga umjetnički postaviti izvan centra i malo unatrag radi stabilnosti. Loša ideja! Sklop vam je potreban što je moguće bliže bočnoj strani poklopca kako samo kućište ne bi ometalo snop pod visokim kutovima nagiba. Takođe, mislim da bi idealan aranžman bio montiranje pan lasera okomito na kratku stranu, a ne, kao što sam učinio, na dugu stranu. Učinio sam to na drugi način iz čisto estetskih razloga, iako postoji malo veći potencijal za smetnje.
  • Kao što vidite, NodeMCU je montiran na Perfboard i mogao se lako postaviti tako da je njegovom mikro USB konektoru dostupan iz utora sa strane ili straga. To bi olakšalo ažuriranje softvera (nema potrebe za skidanjem poklopca). Moja prvotna ideja bila je da za ažuriranje koristim OTA (biblioteku preko zraka) i vidjet ćete da moj kôd uključuje tu funkcionalnost, iako je komentirana. Problem je bio u tome što generator tonova i OTA ne bi dobro svirali zajedno (NodeMCU bi se više puta vraćao na pola pjesme). Taj se problem vjerojatno može riješiti, ali nikada nisam uspio ažurirati SPIFFS osim putem USB -a, pa bi pristup USB konektoru bio lijep. Kad sam sve ovo shvatio, montirao sam NodeMCU na Perfboard na način koji je značio da izvlačenje konektora iz kutije nije bilo moguće bez puno fafovanja. Oh dobro.
  • Ako bih ponovo radio na projektu, poravnao bih RGB LED sa crvenom LED za uključivanje. (Svrha RGB LED -e je da pokaže u kojem je načinu rada LaserKitty !! bez gledanja u aplikaciju.)

Jedini pomalo lukav dio stvaranja rupa je pravokutni za servo tave. Koristio sam bušilicu i turpiju. Kao što vidite iz mog prvog pokušaja, teško je napraviti tačno kvadrat (pretpostavljam). Ali kad je servo montiran, to se zaista ne vidi.

Morat ćete napraviti još tri rupe, koje bi trebale biti postavljene na stražnjoj strani kutije i koristiti za utičnicu za napajanje, zujalicu i ulaznu točku za servo servo i lasersko ožičenje. Sve ove rupe mogu biti okrugle i ne predstavljaju poteškoće za napraviti samo bušilicom.

Liberalna upotreba vrućeg ljepila osigurava sve na mjestu (s izuzetkom servo servera, koji je pričvršćen za poklopac pomoću držača za montažu servo -a).

Korak 4: Sklopivi i nagibni sklop

Pan and Tilt Assembly
Pan and Tilt Assembly
Pan and Tilt Assembly
Pan and Tilt Assembly
Pan and Tilt Assembly
Pan and Tilt Assembly
Pan and Tilt Assembly
Pan and Tilt Assembly

Kad sam primio sklop pan and tilt, mislio sam da sam napravio još jednu veliku grešku. Sastavljeno prema uputama, to zapravo uopće nije mehanizam pomicanja i naginjanja, već dizajn nagiba i uvrtanja - prikladan za predviđenu upotrebu kao robotska ruka. Međutim, trenutak smirenog razmišljanja omogućio mi je da vidim da se zapravo može sastaviti na drugačiji način kako bi se postigao željeni rezultat. Još bolje, originalna lokacija servera "twist" mogla bi se koristiti kao nosač za laser.

Ako pogledate dovršenu montažu na ovim slikama, dobit ćete ideju. Ostat će vam mali metalni blok koji nije potreban u ovom dizajnu.

Bljesak inspiracije koji sam imao bila je upotreba originalne lokacije drugog serva za postavljanje lasera. Još bolje, ako odrubite servo pogon i izbušite držač sa zupčanom rukom, to je savršeno mjesto za postavljanje lasera! Samo ne podcjenjujte trud koji je potreban da biste razdvojili servo. Ima malo mesa za te male napadače!

Nakon montaže i ugradnje u kućište, I PRE PRIMJENE SNAGE, pobrinite se da se pomakne za 180 stupnjeva po prednjoj strani kućišta. Na neki način, nakon što sam ga jednom uspješno instalirao, spojio sam nosač posude tako da su glave vijaka na podnožju vezane uz podignuti bit servo pogona na kojem se namjerava postaviti ruka. Rezultat je bio da je servo odmah skinuo zupčanike. Sa vedrije strane, sada imam još jedan duff servo za upotrebu kao laserski nosač.

Korak 5: Povežite ga

Ožičite to
Ožičite to

Nadajmo se da skica Fritzinga razjašnjava stvari. Neke stvari koje treba dodatno pojasniti:

  • Kao što je kasnije objašnjeno, htio sam učiniti laser što je moguće tamnijim, zadržavajući dovoljno svjetline da bude upotrebljiv u svim svjetlima osim u najsvjetlijoj u zatvorenom prostoru. Uz malo eksperimentiranja odlučio sam se za napajanje s pina od 3,3 VDC na Node MCU -u, dodajući u red otpornik od 22 Ohma za dobru mjeru. S ovim postavljanjem troši oko 10 mA pa bi se u teoriji moglo napajati izravno s GPIO pina, ali smatrao sam da je to previše prigušeno, čak i bez otpornika.
  • Laser ima vrlo ograničenu sposobnost mijenjanja fokusa (kolimacija?) Koju sam koristio za povećanje točke i time raspršivanje laserske energije
  • Moja prva misao bila je uključivanje i isključivanje servo -a pomoću tranzistora, ali to je dovelo do toga da su servo -uređaji poludjeli. Siguran sam da za to postoji dobar razlog, ali budući da sam već imao pri ruci neke releje, uzeo sam jednostavan izlaz i potpuno izolirao napajanje servo pogona. A budući da su releji imali dva kanala, mislio sam da bih mogao i na taj način prebaciti laser (ljubičaste žice su kontrolni signal iz MCU -a). Sviđa mi se i mehaničko škljocanje koje proizvodi ovo rješenje. Možete ipak odlučiti drugačije. Nije prikazano, ali releji se napajaju direktno iz napajanja od 5VDC - NodeMCU je možda jednostavno mogao napajati dvokanalni relej, ali nije bilo razloga za rizik. Ako ste ranije koristili ove releje, znat ćete da je potrebno ukloniti kratkospojnik između JD-VCC i VCC.
  • RGB LED ima otpornike za ograničavanje struje od 220 ohma na crvenoj i zelenoj boji i 100 ohma na plavoj boji. Crvena LED dioda za uključivanje ima otpornik od 450 Ohma jer se napaja iz 5VDC, a ne sa 3.3VDC. Ovo su samo osnovne vrijednosti za dobijanje dovoljno svjetline i razumnu dugovječnost.
  • Zvučni signal je prilično glasan. Možda ćete htjeti dodati otpornik signalnoj liniji da biste smanjili jačinu zvuka. Tonovi se mogu potpuno isključiti putem softvera, ali nešto između bi moglo biti lijepo.

Korak 6: Kôd

Kodeks
Kodeks
Kodeks
Kodeks
Kodeks
Kodeks
Kodeks
Kodeks

Uprkos prilično dugotrajnom objašnjenju hardverske strane, 90% truda ovdje je uloženo u kod. Bilo bi i više, ali odavde sam "posudio" sjajan kod za kretanje lasera u automatskom načinu rada. Nema smisla izmišljati točak. U stvari, možda ćete odlučiti slijediti taj projekt, a ne ovaj, ili pomiješati i uskladiti aspekte oba. Svakako, sviđa mi se ideja da napravim neke komponente sa 3-D štampačem, ali nemam.

Moj kôd (koji se nalazi na GitHub -u ovdje) sastoji se od tri glavna dijela. Postoji sama Arduino skica, HTML datoteke s hrpom Javascripta za sadržaj aplikacije i povezane CSS datoteke za oblikovanje. Koristio sam ovaj projekt da naučim nešto više o svim tim programskim elementima, počevši od vrlo niske baze, posebno na strani interfejsa aplikacija. Pokušao sam malo srediti kôd, ali moj glavni fokus bio je samo na tome da stvar počne funkcionirati. Kod koristi Websockets za dvosmjernu komunikaciju između NodeMCU poslužitelja i povezanih klijenata.

Arduino kôd se opsežno komentira pa se nadamo da ćete ga lako slijediti. Nakon što ga preuzmete sa GitHub -a, stavite cijeli paket u mapu, otpremite skicu na svoj MCU, a zatim otpremite sadržaj podmape "data" u SPIFFS.

Zapravo, zagrebi to. Ako želite koristiti funkciju obavijesti Pushbullet, prvo će vam trebati API pristupni token dostupan ovdje. Ide u Red 88 Arduino koda. Pushbullet radi dobro, ali ako prvi put postavljate račun na telefonu, možda ćete otkriti da se morate prijaviti, odjaviti, a zatim se ponovo prijaviti prije nego što se obavijesti počnu pojavljivati onako kako je konfigurirano u postavkama telefona.

Postoje tri web stranice-početni ekran, stvarno sučelje aplikacije i stranica za postavljanje. Odvajanje sadržaja na ovaj način čini korištenje sučelja mnogo sličnijim aplikacijama, posebno zbog opsežnih mogućnosti konfiguracije (snimak zaslona snima samo dio ovih opcija).

Jedna od poteškoća u postizanju NodeMCU -a da opslužuje više stranica bilo je to što sam morao staviti sve slikovne datoteke izravno u mapu s podacima - jednostavno nisam mogao raditi ako su smještene u podmape. Uključio sam sve slike koje sam koristio u spremište GitHub tako da funkcionira bez kutije, ali ćete bez sumnje poželjeti zamijeniti ih vlastitim slikama.

Korak 7: Završni dodiri i laserska sigurnost

Završni dodiri i laserska sigurnost
Završni dodiri i laserska sigurnost
Završni dodiri i laserska sigurnost
Završni dodiri i laserska sigurnost
Završni dodiri i laserska sigurnost
Završni dodiri i laserska sigurnost

Unatoč nevjerojatnim cijenama od 8 USD, kućište je prilično korisno. Nakon malo pregledavanja po Etsyju, našao sam grafiku od vinila koju vidite na gotovom proizvodu (i koja je preslikana na stranici aplikacije). Dostavljeno iz Velike Britanije bilo je malo skupo, ali definitivno se isplati - a dobit ćete dva u slučaju da želite ponoviti projekt. Dok je moj posljednji umjetnički procvat, okrenuo sam male "rupice" u mačjim očima tako da gledaju jarkocrvenu LED diodu za napajanje, koja označava lasersku točku. Ovisno o vašem apetitu za kapricioznošću, možda ćete odlučiti otići na ovaj dodatni korak.

HTML datoteka početnog ekrana uključuje kôd za dodavanje ikone na početni ekran iPhone uređaja.

I na kraju, ne bih trebao zanemariti zabrinutost izraženu oko upotrebe lasera za igru s mačkama. Postoje dvije glavne zamjerke:

  • Laser bi mogao zaslijepiti ili oštetiti mačje oči
  • Igranje laserskom točkom na kraju nije zadovoljavajuće za mačke jer ih nikada ne mogu uloviti ili "ubiti"

Na prepletima postoji mnogo prskanja o obje teme, neke naizgled informirane, neke manje. Na kraju, morate sami donijeti odluku o tome je li ovaj projekt, ili bilo koja druga laserska igračka, prikladan za vašu mačku. Ono što sam učinio je pokušao riješiti prvi problem tako što sam učinio laser što je moguće tamnijim bez otežavanja vidljivosti pri razumnoj razini svjetlosti. Takođe, pobrinite se da svaka mačka koja koristi uređaj nema sklonosti da zuri u sam laser, a ne u tačku - posebno ako namjeravate koristiti LaserKitty !! u automatskom ili zakazanom režimu. Jedna svrha značajke obavijesti Pushbullet je da se koristi zajedno s kamerom za nadzor, tako da se podsjetite da gledate svoju mačku dok ste odsutni.

Što se tiče drugog prigovora, uključio sam mogućnost spremanja "početne pozicije" na koju će se laser vratiti nakon zakazanih sesija igranja. Ako ovo postavite da pokazuje na nepokretnu igračku ili zdjelu za hranu vašeg mačića, nadamo se da će to omogućiti neko rješenje. Mada, s mačkama, tko zaista zna?

Preporučuje se: