İçindekiler:
- Adım 1: Bileşenleri Toplayın
- Adım 2: İletilen Kodları Öğrenin
- 3. Adım: NES Zapper'ı hazırlayın
- Adım 4: ATtiny'yi Bağlayın ve Programlayın
- Adım 5: Hepsini Bir Araya Getirin
- Adım 6: Sonuç ve İyileştirmeler
Video: Bir NES Zapper (RF 433MHz) ile Işıkları Vurun: 6 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:21
NES Zapper'ınızla ateş edebiliyorsanız, ışıkları neden bir anahtar kullanarak kapatasınız ki! Bu fikir aklıma geldiğinde eski bir kırık NES Zapper'a zaten bir lazer ışığı yaptım. Daha çok hoşuma gitti, bu yüzden lazer ışığını bununla değiştirdim. Pazar öğleden sonra için ideal bir proje!
Çalışma odamdaki ışıklar zaten uzaktan kumandalı anahtarlarla kontrol ediliyor, bu yüzden tek yapmam gereken hangi kodların gönderildiğini öğrenmek ve onları taklit etmekti. Ve sonra onu NES Zapper'ımın içine kurun. Bu talimatın sonundaki videoya bakın!
Adım 1: Bileşenleri Toplayın
İhtiyacın olacak:
- NES Zapper, tercihen kırık bir tane. Başka herhangi bir elektronik oyuncak tabancayı da kullanabilirsiniz.
- 433MHz'de çalışan 'ClickOnClickOff' tipi uzaktan anahtarlar.
- 433MHZ verici ve alıcı. Zapper'ın içine sadece verici yerleştirilecek, alıcının gönderilecek kodları öğrenmesi gerekiyor.
- ATtiny mikrodenetleyici, bu Zapper'a entegre edilecek. Düşük güçlü bir ATtiny85V-10PU kullanıyorum. Ve bunun için bir programcıya ihtiyacınız olacak.
- Arduino UNO veya seri monitörde veri görüntüleyebilen herhangi bir tür. Bu, kodları göndermeyi öğrenmek ve test etmek için kullanılır.
- Lehimleme tırnakları veya pimleri olan 3V düğme pil.
- Havya ve teller.
Adım 2: İletilen Kodları Öğrenin
Vericiyi ve alıcıyı Arduino UNO'nuza bağlayın. Pin çıkışı resimde gösterilmiştir, çoğu pin 5V veya GND'ye bağlanır. Uzun menzilde kullanmadığımız için antene ihtiyacımız yok. Ayrıca alıcıdaki lineair çıkışına da ihtiyacımız yok. Alıcıdaki veri çıkışı D2 pinine, vericideki veri girişi ise D11 pinine bağlanır.
Tabii ki, bu anahtarları deneyen ve kontrol eden ilk kişi ben değilim, bu yüzden zaten orada birkaç kitaplık var. Randy Simons'a, beni çok fazla işten kurtaran RemoteSwitch kitaplığı için çok teşekkürler! Kütüphaneyi indirin ve 'kütüphaneler' klasörünüze kopyalayın, ardından Arduino IDE'yi yeniden başlatın. Aşağıdaki çizimler anahtarınız için çalışmıyorsa, NewRemoteSwitch kitaplığını deneyebilirsiniz.
'ShowReceivedCode' örnek çizimi, gönderilen anahtar mesajlarını dinleyecek ve bunları seri monitörünüzde görüntüleyecektir. Uzaktan kumanda anahtarınızdaki düğmelere basın ve kodlar, "Kod: 456789, periyot süresi: 320us" gibi, mikrosaniye cinsinden sinyal süresiyle birlikte görünmelidir. Bu sayıları bir yere yazın.
Vericiyi test etmek için 'Yeniden Verici' örnek taslağını kullanabilirsiniz. Bu, ilk alınan kodu 5 saniyelik bir gecikmeyle yeniden gönderir. Bu yüzden ışıkları açın ve ardından hızlıca tekrar kapatın. Birkaç saniye sonra tekrar açılacaklar!
3. Adım: NES Zapper'ı hazırlayın
Zapper'ı bir tornavidayla açın ve ihtiyacınız olmayan her şeyi çıkarın. Tek ihtiyacımız olan mikro anahtarlı tetik mekanizması. Ayrıca ağırlıkları namlu ve sapta bırakacağız, bu daha az ucuz hissettiriyor.
Zapper'ımı zaten değiştirmiştim, bu yüzden mikro anahtara bağlı kabloların orijinalinde yeterince uzun olup olmadığından veya onları değiştirdiğimden emin değilim. Yeterince uzun değillerse, kabloları lehimleyerek veya yeni kabloları mikro anahtar tırnaklarına lehimleyerek uzatabilirsiniz.
Adım 4: ATtiny'yi Bağlayın ve Programlayın
İlk başta ATtiny'yi uyku moduna almak ve tetik çekildiğinde bir pin değiştirme kesintisi ile uyanmasına izin vermek istedim. Zaten çalışan bir test kurulumu oluşturdum. Sonra, anahtar komutunu göndermenin yalnızca çeyrek saniye sürdüğünü fark ettim, bu yüzden pili ATtiny'ye ve vericiye bağlamak için tetiği kullanabilirdim. Bu şekilde, kullanılmadığında hiçbir güç kullanılmaz!
Vericiyi ATtiny'nize bağlayın, verici üzerindeki veri girişi çipinizdeki D0'a (pin 5) bağlanır. Düğme hücreyi hem ATtiny'ye hem de vericiye bağlayın, ancak Zapper tetik mikro anahtarıyla kesintiye uğratmasını sağlayın. Daha fazla ayrıntı için resme bakın.
Kodlaması çok basittir. Tek yaptığı geçiş mesajını göndermek ve ardından ATtiny kapanana kadar beklemek. SendCode işlevinde argümanlar olarak 'ShowReceivedCode' örnek çizimindeki ayrıntıları kullanın.
#include void setup() { RemoteTransmitter::sendCode(0, 456789, 320, 3);}void loop() { // ATtiny kapanana kadar bekleyin}
sendCode işlevindeki bağımsız değişkenler şunlardır:
- Çıkış pimi
- mesaj kodu
- Mikrosaniye cinsinden periyot süresi
- Yeniden deneme sayısı
Adım 5: Hepsini Bir Araya Getirin
Bu sefer hızlı ve kirli yaklaşımı seçtim; (hazırlanmış) tellerin hepsi aynı renktedir ve doğrudan ATtiny pinlerine lehimlenmiştir. Normalde yeniden programlamayı ve problem çözmeyi kolaylaştırdığı için çip başlıkları ve renkli teller kullanırım, ancak bu küçük proje için bir problem olmamalı. Her şey Zapper'a sıcak tutkal kullanılarak yapıştırılır, yeterince iyi yapışır ve Zapper'a zarar vermeden çıkarılabilir.
Zapper'ı tekrar kapatmadan önce test edin. O zaman herkese atış becerilerinizi gösterin!
Adım 6: Sonuç ve İyileştirmeler
Mükemmel çalışıyor! Tetiğe yalnızca kısa bir süre basılması gerekir ve gecikme çok küçüktür. Pil, günlük kullanımda bile yıllarca dayanabilir. Voltaj 3V'nin altına düştüğünde bile, hem ATtiny hem de verici 2V'nin altında bile çalışabileceğinden çalışacaktır.
Bazı olası iyileştirmeler:
-
ATtiny'yi yeniden programlamanın bir yolu, örneğin:
- ATtiny'yi bir başlığa koyun, böylece kaldırılabilir. Bu başlık, Zapper'ı açmadan ulaşılabilmesi için nozüle yerleştirilebilir.
- ATtiny'ye programlayıcınıza bağlanabilecek kablolar ekleyin. Bu teller, eskiden kablonun bulunduğu tutamağın açıklığına yerleştirilebilen bir başlığa bağlanabilir.
- Namlunun ucuna bir ışık veya lazer ekleyin! Bu elbette pili çok daha hızlı tüketecektir.
- Bir ses efekti ekleyin! Bu aynı zamanda gücü de tüketecek ama çok hoş bir ek!
Bunu geliştirmek için başka fikirleriniz varsa bana bildirin. Şimdi ışıkları açmak için havalı bir yola ihtiyacım var… belki bir çakmakla? (Yeni bir projenin geldiğini hissediyorum)
Umarım ilk talimatımı beğenmişsinizdir, devamı gelecek!
Önerilen:
NodeMcu ile Wifi Üzerinden (Kuzey Işıkları Göstergesi) Herhangi Bir Web Sitesinden Veri Çekin ve Ortamda Görüntüleyin: 6 Adım
NodeMcu ile Wifi Üzerinden (Kuzey Işıkları Göstergesi) Herhangi Bir Web Sitesinden Veri Çekin ve Ortamda Görüntüleyin: Motivasyonum: IoT (nesnelerin interneti) projeleri yapmak için bir NodeMCU (ESP8266 modülünde yerleşik) kurma/kullanma konusunda ÇOK SAYIDA talimat gördüm . Ancak, bu öğreticilerden çok azı, çok acemi bir kişi için tüm ayrıntılara/kodlara/şemalara sahipti
WiFi Kontrollü Tek Boynuzlu At Şapkası? RGB Işıkları ile: 5 Adım (Resimlerle)
WiFi Kontrollü Tek Boynuzlu At Şapkası? RGB Işıkları ile: Herkese merhaba. Küçüğüm bir süredir beni tek boynuzlu atlarla ilgili ilginç giyilebilir DIY'ler hakkında dürtüyordu. Bu yüzden kafamı kaşıdım ve alışılmadık ve çok düşük bütçeli bir şey yaratmaya karar verdim. Bu proje, uygulamanın devam etmesini gerektirmiyor
HT12D Kullanarak RF 433MHZ Radyo Kontrolü HT12E - 433mhz ile HT12E & HT12D Kullanarak Rf Uzaktan Kumanda Yapma: 5 Adım
HT12D Kullanarak RF 433MHZ Radyo Kontrolü HT12E | 433mhz ile HT12E ve HT12D Kullanarak Rf Uzaktan Kumanda Yapma: Bu talimatta size HT12E kodlamalı & HT12D kod çözücü IC.Bu talimatta çok ucuz BİLEŞENLER GİBİ kullanarak veri gönderip alabilirsiniz: HT
Etkileşimli Avlu Işıkları, Geçit Işıkları: 3 Adım
Etkileşimli Avlu Işıkları, Geçit Işıkları: Arka bahçem için bir çeşit etkileşimli avlu ışığı yapmak istedim. Fikir, birisi bir yöne yürüdüğünde, yürüdüğünüz yönde bir animasyon başlatacaktı. Dollar General 1.00$ güneş ışığıyla başladım
Kendin Yap Noel Işıkları Müziğe Ayarlandı - Koreograflı Ev Işıkları: 15 Adım (Resimlerle)
Kendin Yap Noel Işıkları Müziğe Ayarlandı - Koreograflı Ev Işıkları: Müzik Ayarlı DIY Noel Işıkları - Koreograflı Ev Işıkları Bu yeni başlayan bir DIY DEĞİLDİR. Elektronik, devre, BASIC programlama ve elektrik güvenliği ile ilgili genel zeka konularında sağlam bir kavrayışa ihtiyacınız olacak. Bu DIY, deneyimli bir kişi içindir, yani