İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Noel'in ne kadar moda olduğunu bilmek ister misiniz? Google trendleriyle desteklenen bu Noel ağacı ile öğrenin! Parti modu dahil.
Gereçler
- Ahududu Pi 3b+
- 8x Adafruit NeoPixel
- Buton
- USB Hoparlör
- Kablolama
- Lehimleme Ekipmanları
- Boru temizleyici
- 3 boyutlu yazıcı
- Zamk
1. Adım: Proje Videosu
2. Adım: Işıklar - 3D Baskı
İlk adım, her ışık için bir kap oluşturmaktır.
Bazı hediye kutularını 3D olarak tasarladık (yukarıya bakın) ve bunları şeffaf filamentle yazdırdık. Bu filaman mükemmel çünkü ışığı mükemmel bir şekilde yayar ve mükemmel bir tatil havası verir.
Sekiz tanesini bastık, ancak ihtiyacınız kadarını oluşturabilirsiniz.
STL dosyası bu adıma eklenmiştir.
Adım 3: Işıklar - Donanım
Basılan kaplar ile elektroniğe geçebiliriz.
Işık olarak Adafruit Neopixels kullanıyoruz. Bunlar çok parlaktır, birçok rengi destekler ve harika belgelere sahiptir.
Kutunun dışında kullanıma hazır değiller, hala gerekli telleri lehimlememiz gerekiyor. Işık miktarına bağlı olarak bu biraz zaman alabilir, kahve içmek için mükemmel bir an.
Onları henüz birbirine bağlamamak önemli, önce hediye kutularına koymamız gerekiyor.
Adım 4: Donanım - Montaj
Artık hem konteynerlerimiz hem de ışıklarımız montaja hazır.
Her kutunun kapağında bazı delikler bıraktık, bunları bir led aracılığıyla döngüyü kullanabiliriz (yukarıya bakın). Tüm kutular ve ışık tamamlandıktan sonra, bir ışık dizisi oluşturmak için bunları birbirine lehimleyebiliriz.
Işık ipinizi Raspberry Pi'ye bağlayın ve ışıkları test edebilirsiniz.
Her şeyin çalıştığını kontrol ettikten sonra kutuları ve kapakları birbirine yapıştırabiliriz.
Her bir hediye kutusu arasındaki telin etrafına renkli bir boru temizleyici sarmak, ekstra bir neşe katar.
5. Adım: Google Trendler Bağlantısı
Bu ağaca biraz ekstra kazanç sağlamak için onu Google Trendler'e bağlayacağız.
Kodun tamamı son adım olan "Bölüm Modu"na dahil edilmiştir, ancak size genel bir bakış sağlamak için Python'u bazı ekstra paketlerle birlikte kullandık:
- Google Trendler'den veri almak için PyTrends
- NeoPixels'i kontrol etmek için Neopixel
Ve mantık aşağıdaki gibidir:
- Her saat, 'Noel' arama teriminin popülerliğini alın
- 0 (popüler değil) ile 100 (popüler) arasında bir sayı geri alıyoruz
- Işıkların hızı bu sayıya göre hesaplanır.
Bu, arama terimi popülerse ağacımızın rengini hızla, popüler olmadığında ise yavaş yavaş değiştirmesine neden olur.
Küçük bir not, her bir eylemin diğerini engellemediğinden emin olmak için farklı iş parçacıkları (ledControlThread ve trendDataThread) kullandık.
Örneğin, biz Google Trendler verilerini alırken ışıklar yanmaya devam ediyor, ileti dizisi oluşturmadan API çağrısının bitmesini bekleyecek ve ancak ondan sonra devam edecekti.
Adım 6: Parti Modu
Bir Noel ağacı bir yıllık bir şey olduğu için, bir parti modu bir zorunluluktur.
Bu ekstra özellik, kesin olmak gerekirse, bazı ekstra donanımlara, bir düğmeye ve USB hoparlöre ihtiyaç duyacaktır.
Pi'ye bağlandıktan sonra uygun bir şarkı aramaya başlayabilirsiniz, Otis McDonald'ın "Complicate ya" şarkısını seçtik. Ayrıca mevcut senaryomuza biraz mantık eklememiz gerekiyor:
- Düğmeye basılıp basılmadığını kontrol edin
- Eğer öyleyse, belirtilen sesi çalın ve ışıkların renginin çok hızlı değişmesini sağlayın.
- Ses bittiğinde, normale dönün
Bu mantığın tıpkı diğerleri gibi kendi iş parçacığı vardır ve tam komut dosyası da bu adıma eklenmiştir.
Geriye kalan her şeyi bir ağaca asmak ve neşeli veri görselleştirmesinin ve en önemlisi parti modunun tadını çıkarmak!