Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Miksi sammuttaa valot kytkimellä, jos voit kuvata ne NES Zapperilla! Rakensin jo laservalon vanhaan rikkoutuneeseen NES Zapperiin, kun tämä idea tuli päähäni. Se piti siitä paremmin, joten vaihdoin laservalon tähän. Ihanteellinen projekti sunnuntai -iltapäivään!
Työhuoneeni valoja ohjataan jo kaukosäätimillä, joten minun tarvitsi vain oppia lähetettävät koodit ja jäljitellä niitä. Ja rakenna se sitten NES Zapperiini. Katso video tämän ohjeen lopusta!
Vaihe 1: Kerää komponentit
Tarvitset:
- NES Zapper, mieluiten rikki. Voit myös käyttää mitä tahansa muuta elektronista lelupistoolia.
- ClickOnClickOff -tyyppiset kaukokytkimet, jotka toimivat 433 MHz: n taajuudella.
- 433 MHz: n lähetin ja vastaanotin. Vain lähetin asennetaan Zapperiin, vastaanotinta tarvitaan lähetettävien koodien oppimiseen.
- ATtiny mikrokontrolleri, tämä rakennetaan Zapperiin. Käytän pienitehoista ATtiny85V-10PU: ta. Ja tarvitset siihen ohjelmoijan.
- Arduino UNO tai mikä tahansa muu, joka voi näyttää tietoja sarjamonitorissa. Tätä käytetään koodien lähettämiseen ja testaamiseen.
- 3 V: n nappikenno, jossa juotoskielekkeet tai nastat.
- Juotin ja johdot.
Vaihe 2: Opi lähetetyt koodit
Liitä lähetin ja vastaanotin Arduino UNO -laitteeseesi. Pistoke näkyy kuvassa, useimmat nastat kytketään 5V tai GND. Emme tarvitse antennia, koska emme käytä sitä pitkään. Emme myöskään tarvitse vastaanottimen lineaarilähtöä. Vastaanottimen tiedonsiirto yhdistetään nastaan D2 ja lähettimen datatulo liittimeen D11.
En tietenkään ole ensimmäinen, joka yrittää ohjata näitä kytkimiä, joten siellä on jo useita kirjastoja. Paljon kiitoksia Randy Simonsille RemoteSwitch -kirjastosta, mikä pelasti minulle paljon työtä! Lataa kirjasto ja kopioi se kirjasto -kansioon ja käynnistä sitten Arduino IDE uudelleen. Jos seuraavat luonnokset eivät toimi kytkimelläsi, voit kokeilla hänen NewRemoteSwitch -kirjastoa.
ShowReceivedCode -esimerkkiluonnos kuuntelee lähetetyt kytkinviestit ja näyttää ne sarjamonitorissa. Paina kauko -ohjaimen painikkeita ja koodit tulevat näkyviin signaaliajan kanssa mikrosekunneissa, esimerkiksi "Koodi: 456789, jakson kesto: 320us". Kirjoita nämä numerot muistiin.
Voit testata lähettimen käyttämällä "Retransmitter" -esimerkkiluonnosta. Tämä lähettää ensimmäisen vastaanotetun koodin uudelleen 5 sekunnin viiveellä. Joten kytke valot päälle ja sammuta ne sitten nopeasti uudelleen. Muutaman sekunnin kuluttua ne kytkeytyvät uudelleen päälle!
Vaihe 3: Valmista NES Zapper
Avaa Zapper ruuvimeisselillä ja poista kaikki mitä et tarvitse. Tarvitsemme vain liipaisimen ja mikrokytkimen. Jätämme painot myös tynnyriin ja kahvaan, mikä tekee siitä vähemmän halvan.
Olin jo muuttanut Zapperiani, joten en ole varma, ovatko mikrokytkimeen liitetyt johdot riittävän pitkiä alkuperäisessä vai olenko vaihtanut ne. Jos ne eivät ole tarpeeksi pitkiä, voit laajentaa niitä juottamalla niihin johdot tai juottamalla uudet johdot mikrokytkimen kielekkeisiin.
Vaihe 4: Yhdistä ja ohjelmoi ATtiny
Aluksi halusin laittaa ATtinyn lepotilaan ja antaa sen herätä tappinvaihdon keskeytyksen kanssa, kun liipaisinta painetaan. Olen jo luonut testiasetuksen, joka toimi. Sitten tajusin, että kytkinkomennon lähettäminen kestää vain neljänneksen sekunnin, joten voisin vain käyttää liipaisinta liittääksesi akun ATtinyyn ja lähettimeen. Näin virtaa ei käytetä lainkaan, kun sitä ei käytetä!
Liitä lähetin ATtiny -laitteeseesi, lähettimen tiedonsiirto liitetään sirun D0 -liittimeen (nasta 5). Kytke nappikenno sekä ATtiny -laitteeseen että lähettimeen, mutta keskeytä Zapper -liipaisimen mikrokytkin. Katso lisätietoja kuvasta.
Koodaus on hyvin yksinkertaista. Kaikki se lähettää kytkinviestin ja odottaa sitten, kunnes ATtiny sammutetaan. Käytä ShowReceivedCode -esimerkkiluonnoksen yksityiskohtia argumentteina sendCode -toiminnossa.
#include void setup () {RemoteTransmitter:: sendCode (0, 456789, 320, 3);} void loop () {// odota, kunnes ATtiny sammutetaan}
SendCode -funktion argumentit ovat:
- Lähtötappi
- Viesti koodi
- Jakson kesto mikrosekunteina
- Uudelleenyritysten määrä
Vaihe 5: Laita kaikki yhteen
Olen valinnut tällä kertaa nopean ja likaisen lähestymistavan; (valmistetut) johdot ovat kaikki samaa väriä ja ne on juotettu suoraan ATtiny -nastoihin. Käytän yleensä sirun otsikoita ja värillisiä johtoja, koska se helpottaa ohjelmointia ja ongelmanratkaisua, mutta sen ei pitäisi olla ongelma tässä pienessä projektissa. Kaikki on kiinnitetty Zapperiin kuumaliimalla, se tarttuu tarpeeksi hyvin ja voidaan poistaa vahingoittamatta Zapperia.
Testaa se ennen kuin suljet Zapperin uudelleen. Näytä sitten kaikille ammuntataitosi!
Vaihe 6: Päätelmät ja parannukset
Se toimii täydellisesti! Liipaisinta on painettava vain lyhyen aikaa ja viive on hyvin pieni. Akku kestää vuosia jopa päivittäisessä käytössä. Vaikka jännite putoaa alle 3V, se toimii, koska sekä ATtiny että lähetin voivat toimia jopa alle 2V.
Joitakin mahdollisia parannuksia:
-
Tapa ohjelmoida ATtiny uudelleen, esimerkiksi:
- Aseta ATtiny otsikon päälle, jotta se voidaan poistaa. Tämä otsikko voidaan sijoittaa suuttimeen, jotta se voidaan saavuttaa avaamatta Zapperia.
- Lisää johdot ATtiny -laitteeseen, joka voidaan liittää ohjelmoijaasi. Nämä johdot voidaan kytkeä jakoon, joka voidaan sijoittaa kahvan aukkoon, jossa kaapeli oli aiemmin.
- Lisää valo tai laser tynnyrin päähän! Tämä tietysti tyhjentää akun nopeammin.
- Lisää äänitehoste! Tämä myös kuluttaa virtaa, mutta on erittäin mukava lisä!
Kerro minulle, jos sinulla on muita ideoita tämän parantamiseksi. Nyt tarvitsen vain viileän tavan sytyttää valot … ehkä sytyttimellä? (Tuntuu, että uusi projekti on tulossa)
Toivottavasti pidit ensimmäisestä opettavaisesta, lisää tulee!