Sisukord:

LaserKitty !!: 7 sammu (piltidega)
LaserKitty !!: 7 sammu (piltidega)

Video: LaserKitty !!: 7 sammu (piltidega)

Video: LaserKitty !!: 7 sammu (piltidega)
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, Oktoober
Anonim
Image
Image
Hankige oma asjad
Hankige oma asjad

On üldtunnustatud tõde, et üks õnne omav kass peab puuduma lasermänguasjast. Nagu üksikute härrade puhul, kes vajavad tulevasi naisi, tuleb järgida mõningaid ettevaatusabinõusid. Kuid kas see ei kehti millegi kohta, mis on tõesti väärt?

Kui teil on lemmikloomade ja laseriohutuse pärast muret, jätke enne kommenteerimist selle juhendi lõpp. Kui teil on muret tulevase või isegi praeguse naise pärast, peate ilmselt mujalt otsima.

Nüüd võite hüpata oma kohalikku lemmikloomapoodi ja osta laserkursori ja võib -olla isegi mõne seadme, mis lisab algelist automatiseerimist. Säästate natuke raha ja saate selle tagastada, kui see ei tööta. Või võite ise midagi ehitada. Näiteid on juba palju, kuid siin on minu panus kaanonisse. Toas on:

  • Nutitelefoni täielik juhtimine
  • Käsitsi, automaatne ja ajastatud režiimid
  • Kohandatud rakenduse liides
  • Süsteemi olek sünkroonitud mitme veebikliendi vahel
  • Süsteemi olek peegeldub LaserKitty'is !! ise
  • Konfigureeritavad panoraam- ja kallutusvahemiku piirangud
  • Konfigureeritavad mänguaja seansside pikkused ja sagedused
  • Konfigureeritavad mänguaknad
  • Seadistusleht, millel on hetke seaded
  • NTP aja sünkroonimine
  • WiFi haldur lihtsaks seadistamiseks uutes võrkudes
  • Toonigeneraator võimatu missiooni teema esitamiseks enne igat mängusessiooni: teie kass võib irooniat hinnata või mitte.
  • Pushpulleti märguanded kõigile oma seadmetele, kui algab uus mänguaeg
  • Seadistatav koduasend, nii et mänguaeg lõpeb toidunõu või statsionaarse mänguasjaga
  • Kõik seaded on salvestatud EEPROM -i, nii et need ei kaoks voolukatkestuse korral
  • Ja palju muud! Noh, tegelikult mitte, see on kõik.

Samm: hankige oma asjad

Seda ma kasutasin:

  • Minipann ja kallutussõlm. See pole kindlasti kõige odavam, mida leiate, ja see vajab meie eesmärkidel mõningaid muudatusi. Valisin selle, kuna see näeb välja veidi lahedam kui soodsad keldrikorruse plastkomplektid. Ootamatu boonusena võimaldab selle disain väga lihtsat viisi laseri paigaldamiseks. Kaasas paar mikro -servot, kuid soovitan tungivalt osta asendamiseks hunnik täiendavaid. Teil on vaja vähemalt ühte täiendavat servot (katkine on hea).
  • Aedik. Mul on valus maksta 8 dollarit plastkarbi eest ja kindlasti võiksite leida midagi odavamat. Midagi lingitud korpuse suuruse kohta on siiski õige.
  • ESP8266-põhine arendusplaat. Kasutasin NodeMCU -d. Ei ole liialdus öelda, et ma armastan neid asju. Lihtne kasutada Arduino IDE -s ja palju välkmälu oma veebilehtede jaoks. Samuti odav ja minu kogemuse järgi väga raske praadida.
  • Mini laser. Kümme 6 dollari eest, sealhulgas Amazon Prime. Kas sa teed nalja?? Nüüd pean lihtsalt välja mõtlema, mida teha ülejäänud üheksaga.
  • Toonide passiivne sumin.
  • Kahe kanaliga relee. Ma kasutan neid servode ja laserite sisse- ja väljalülitamiseks. Võimalik, et saate selle komponendi kõrvaldada, nagu ma hiljem selgitan.
  • 5VDC toiteallikas. Loodetavasti on teil üks neist juba ammu unustatud gizmo'st, kuid kui mitte midagi odavat ja rõõmsat, mis võib toota umbes 1A 5VDC, on see, mida vajate.
  • Mitmesugused tarbekaubad, nagu takistid, valgusdioodid, haaketraat, termokahanev, joodis, kuum liim. Tavaline. Samuti kasutasin sissetuleva 5VDC toiteallika jaoks tünnipistikut minu piinlikult suurest hävitatud Arduino koputusplaatide kollektsioonist.
  • Viimane, kuid sugugi mitte vähem oluline, vinüülkleebis selle kapriisse viimistluse jaoks.

Nii et jah. Sa vaatad umbes 50 dollarit kokku. Sa võiksid seda teha vähem, kuid kas su kass ei vääri parimat?

Samm: tööriistad ja ressursid

Tööriistad ja ressursid
Tööriistad ja ressursid

Tööriistade poolel pole siin midagi erilist. Lihtsalt korralik jootekolb, multimeeter, puur ja põhilised käsitööriistad. Pingitoiteallikas on laseriga katsetamiseks kena, kuid mitte hädavajalik.

See projekt kasutab tõesti ESP8266 ja eriti NodeMCU võimalusi. Kui olete ESP8266-ga alles alustamas, pole ma leidnud paremat ühekordset ressurssi kui see. Peale selle on googeldamine mõeldud selleks, et leida vastuseid teel ilmnenud probleemidele.

Samm: valmistage ümbris ette

Valmistage ümbris ette
Valmistage ümbris ette
Valmistage ümbris ette
Valmistage ümbris ette

Nagu ma juba mainisin, tundub plastkorpuse eest 8 dollari maksmine ennekuulmatu. Veelgi hullem on asja kruvimine, pannes augu valesse kohta. Nii et enne kui teie käsutuses on puur ja/või mis tahes muu kaose tegija, kaaluge minu tehtud vigu.

  • Kõigepealt peate mõtlema, kuhu kõik asjad mahuvad. Hea uudis on see, et minu soovitatud korpuses on palju ruumi, isegi kui näete siin väga korrastamata juhtmeid. Võib -olla saate isegi väiksema kastiga pääseda, eriti kui releed kõrvaldate.
  • Kõige tähtsam on see, kuhu te panni paigaldate ja kaane külge kallutate. Minu esimest katset näidatakse siin. Mõtlesin, et paigutan selle kunstiliselt tsentrist välja ja veidi tagasi, et tagada stabiilsus. Halb mõte! Te vajate sõlme kaane küljele võimalikult lähedale, nii et korpus ise ei segaks kaldenurka kõrgete kaldenurkade korral. Samuti arvan, et ideaalne paigutus oleks pannlaseri paigaldamine risti lühikese küljega, mitte nagu mina, pikema küljega. Tegin seda puhtalt esteetilistel põhjustel teistmoodi, kuigi sekkumisvõimalusi on veidi rohkem.
  • Nagu näete, on NodeMCU paigaldatud Perfboardile ja selle oleks saanud hõlpsasti paigutada nii, et selle mikro -USB -pistikule oleks juurdepääs küljel või taga asuvast pesast. See lihtsustaks tarkvarauuendusi (pole vaja kaant ära võtta). Minu algne idee oli kasutada värskenduste jaoks OTA-teeki ja näete, et minu kood sisaldab seda funktsiooni, kuigi seda kommenteeritakse. Probleem oli selles, et toonigeneraator ja OTA ei mängi hästi koos (NodeMCU lähtestab korduvalt laulu poole pealt). See probleem on ilmselt parandatav, kuid mul pole kunagi õnnestunud SPIFFS -i värskendada muul viisil kui USB kaudu, nii et juurdepääs USB -pistikule oleks olnud tore. Selleks ajaks, kui olin selle kõik selgeks saanud, olin paigaldanud NodeMCU Perfboardile viisil, mis tähendas, et pistiku karbist välja kleepumine ei olnud võimalik ilma palju näppimiseta. Ahjaa.
  • Kui ma peaksin projekti uuesti tegema, joondaksin RGB LED -i punase sisselülitatud LED -iga. (RGB LED -i eesmärk on näidata, millises režiimis LaserKitty !! on, ilma et peaksite rakendust vaatama.)

Aukude tegemise ainus pisut keeruline osa on pannil oleva servo ristkülikukujuline osa. Kasutasin puurit ja viili. Nagu näete minu esimesest katsest, on raske seda täpselt ruudukujuliseks (või vist ristkülikukujuliseks) muuta. Aga kui servo on paigaldatud, ei näe te seda tegelikult.

Peate tegema veel kolm auku. Need tuleks paigutada kasti tagaküljele ja neid kasutatakse toitepistiku, helisignaali ning kaldservo ja laserjuhtmestiku sisenemiskoha jaoks. Kõik need augud võivad olla ümmargused ja neid ei ole raske teha ainult puuriga.

Kuuma liimi liberaalne kasutamine kindlustab kõik oma kohale (välja arvatud pann -servo, mis kinnitatakse servo kinnitusklambrite abil kaane külge).

4. samm: panni ja kallutuse kokkupanek

Panni- ja kallutussõlm
Panni- ja kallutussõlm
Panni- ja kallutussõlm
Panni- ja kallutussõlm
Panni- ja kallutussõlm
Panni- ja kallutussõlm
Panni- ja kallutussõlm
Panni- ja kallutussõlm

Kui panni ja kallutussõlme kätte sain, arvasin, et tegin veel ühe suure vea. Vastavalt juhistele kokku pandud ei ole see üldse panni- ja kallutusmehhanism, vaid pigem kallutus- ja vääntekujundus - sobiv selle ettenähtud kasutamiseks robotkäena. Hetk rahulikku järelemõtlemist võimaldas mul siiski näha, et soovitud tulemuse saavutamiseks võib selle tegelikult teisiti kokku panna. Veelgi parem on see, et "keerduva" servo algset asukohta saab kasutada laseri kinnitusena.

Kui uurite nendel piltidel komplekteeritud komplekti, saate idee. Teile jääb väike metallplokk, mida selles disainis pole vaja.

Inspiratsioonivälgatus oli mul kasutada teise servo algset asukohta laseri paigaldamiseks. Veelgi parem, kui te eemaldate pea servast maha ja puurite välja õmblusvarre, on see laserile ideaalne paigalduskoht! Lihtsalt ärge alahinnake jõupingutusi, mis on vajalikud servo lahti saagimiseks. Nendel väikestel puhuritel on natuke liha!

Pärast kokkupanekut ja paigaldamist korpusesse JA ENNE VÕIMU KASUTAMIST veenduge, et see kaldub korpuse esiküljel umbes 180 kraadi. Kuidagi või teisiti pärast seda, kui olin selle edukalt installinud, panin pannikinnituse uuesti kokku nii, et aluse poldipead seoti vastu servo tõstetud otsa, kuhu õlg on ette nähtud paigaldada. Tulemuseks oli servo kohe hammasrataste eemaldamine. Heleda poole pealt on mul nüüd veel üks duff -servo, mida kasutada laserkinnitusena.

Samm: ühendage see juhtmega

Ühendage see juhtmega
Ühendage see juhtmega

Loodetavasti teeb Fritzingi visand asjad selgeks. Mõned punktid selgitamiseks:

  • Nagu hiljem arutati, tahtsin muuta laser võimalikult hämaraks, säilitades samal ajal piisavalt heledust, et seda saaks kasutada kõikides ruumides peale kõige heledama. Pisut katsetades otsustasin selle toiteallikaks kasutada sõlme MCU 3,3 V alalisvoolu tihvti, lisades järjestikku 22 oomi takisti. Selle seadistusega tõmbab see umbes 10 mA, nii et teoreetiliselt saab seda toita otse GPIO-nööbist, kuid ma leidsin, et see on liiga hämar isegi ilma takisti.
  • Laseril on väga piiratud võime fookust muuta (kollimatsioon?), Mida kasutasin täpi suurendamiseks ja seeläbi laserenergia hajutamiseks
  • Minu esimene mõte oli transistoriga servod sisse ja välja lülitada, kuid see muutis servod hulluks. Olen kindel, et sellel on mõjuv põhjus, kuid kuna mul olid juba mõned releed käepärast, võtsin servodele lihtsa väljapääsu ja täiesti isoleeritud toite. Ja kuna releedel oli kaks kanalit, arvasin, et võin ka laserit sel viisil vahetada (lillad juhtmed on MCU juhtsignaal). Mulle meeldib selle lahenduse tekitatud mehaaniline klõpsatus. Võite siiski teisiti otsustada. Pole näidatud, kuid releed saavad toite otse 5 V alalisvoolu toiteallikast - NodeMCU oleks võinud lihtsalt kahe kanaliga relee otse toita, kuid ei olnud põhjust sellega riskida. Kui olete neid releesid varem kasutanud, peate selleks eemaldama hüppaja JD-VCC ja VCC vahel.
  • RGB LED-il on 220 oomi voolu piiravad takistid punasel ja rohelisel ning 100 oomi sinisel. Punase "sisselülitamise" LED -i takisti on 450 oomi, kuna selle toiteallikaks on 5 V, mitte 3,3 V DC. Need on vaid palliväljaku väärtused, et saada palju heledust ja mõistlikku pikaealisust.
  • Sumin on päris vali. Helitugevuse vähendamiseks võiksite signaalliinile lisada takisti. Toone saab tarkvara kaudu täielikult välja lülitada, kuid midagi vahepealset võib olla tore.

6. samm: kood

Kood
Kood
Kood
Kood
Kood
Kood
Kood
Kood

Vaatamata riistvara poole üsna pikaleveninud selgitusele, läks 90% siinsetest pingutustest koodi. Oleks olnud rohkem, aga "laenasin" siit suurepärase koodi laserrežiimi liikumiseks automaatrežiimis. Pole mõtet ratast leiutada. Tegelikult võite otsustada selle projekti asemel seda järgida või segada mõlema aspekti. Kindlasti meeldib mulle idee teha osa komponente 3-D printeriga, kuid mul pole seda.

Minu kood (leitud siit GitHubist) koosneb kolmest põhiosast. Seal on Arduino visand ise, HTML -failid koos hunniku JavaScriptiga rakenduse sisu jaoks ja seotud CSS -failid kujundamiseks. Kasutasin seda projekti kõigi nende programmeerimiselementide kohta natuke lisateabe saamiseks, alustades väga madalast baasist, eriti asjade liidese poolel. Olen proovinud koodi natuke korrastada, kuid põhirõhk oli sellel, et asi toimiks. Kood kasutab Websocketsit kahesuunaliseks suhtluseks NodeMCU serveri ja ühendatud klientide vahel.

Arduino koodi on laialdaselt kommenteeritud, nii et loodetavasti on teil seda lihtne järgida. Kui olete selle GitHubist alla laadinud, kleepige kogu partii kausta, laadige eskiis üles oma MCU -sse, seejärel laadige alamkausta "andmed" sisu SPIFFS -i.

Tegelikult kraapige seda. Kui soovite kasutada tõukemärguannete funktsiooni, vajate esmalt siit kättesaadavat API juurdepääsuluba. See läheb Arduino koodi reale 88. Pushbullet töötab hästi, kuid kui seadistate oma telefonis esimest korda kontot, peate võib -olla sisse logima, välja logima ja seejärel uuesti sisse logima, enne kui märguanded hakkavad ilmuma telefoni seadetes konfigureerituna.

Veebilehti on kolm-avakuva, tegelik rakenduse liides ja seadistusleht. Sisu eraldamine sellisel viisil muudab liidese kasutamise palju rakenduslikumaks, eriti ulatuslike konfiguratsioonivõimaluste tõttu (ekraanipilt salvestab ainult osa neist valikutest).

Üks veidrus NodeMCU mitme lehe teenindamisel oli see, et pidin kõik pildifailid otse andmekausta panema - lihtsalt ei saanud seda tööle, kui need paigutati alamkaustadesse. Olen lisanud kõik GitHubi hoidlasse kasutatud pildid, nii et see töötab kohe, kuid soovite kahtlemata need oma piltidega asendada.

Samm: viimistlusviimistlus ja laseriohutus

Viimistlus ja laserohutus
Viimistlus ja laserohutus
Viimistlus ja laserohutus
Viimistlus ja laserohutus
Viimistlus ja laserohutus
Viimistlus ja laserohutus

Vaatamata silmapaistvatele 8 dollari suurustele kuludele on korpus üsna kasulik. Pärast väikest Etsy -s ringi tuhnimist leidsin vinüülgraafika, mida näete valmistootel (ja mis on kajastatud rakenduse lehel). Ühendkuningriigist tarnitud oli natuke kallis, kuid kindlasti seda väärt - ja saate kaks, kui soovite projekti korrata. Viimase kunstilise õitsengu ajal pöörasin kassi silmades väikseid "lohke", nii et nad vaatavad helepunast toite LED -i, mis tähistab laserpunkti. Sõltuvalt isu kapriisist võite selle lisamaili minna või mitte.

Avaekraani HTML -fail sisaldab koodi, et lisada oma iPhone'i avaekraanile ikoon.

Lõpuks ei tohiks ma eirata muret, mis on väljendatud kassidega mängimiseks laseriga. On kaks peamist vastuväidet:

  • Laser võib kassi silmi pimestada või kahjustada
  • Laserpunktiga mängimine pole kassidele lõppkokkuvõttes rahuldav, sest nad ei saa seda kunagi kinni püüda ega "tappa"

Mõlemal teemal on lainel palju juttu, mõned näiliselt teadlikud, mõned vähem. Lõppkokkuvõttes peate otsustama, kas see projekt või mõni muu lasermänguasi sobib teie kassi jaoks. Proovisin lahendada esimese probleemi, muutes laser võimalikult hämaraks, ilma et see oleks mõistliku valgustasemega nägemist liiga raske. Samuti veenduge, et seadet kasutavatel kassidel ei oleks kalduvust vaadata laserit ennast, mitte täppi - eriti kui kavatsete kasutada LaserKitty !! režiimis Auto või Scheduled. Pushbulleti teavitusfunktsiooni üks eesmärk on kasutada seda koos jälgimiskaameraga, nii et teile meeldetuletataks eemal olles vaadata oma kiisu mängu.

Teise vastuväite osas lisasin võimaluse salvestada "koduasend", kuhu laser pärast plaanitud esitusseansse naaseb. Kui määrate selle näitama statsionaarset mänguasja või oma kiisu toidunõu, annab see loodetavasti mõningase lahenduse. Kuigi kassidega, kes tõesti teab?

Soovitan: