İçindekiler:

Pi Zero Konuşan Radyo: 7 Adım (Resimli)
Pi Zero Konuşan Radyo: 7 Adım (Resimli)

Video: Pi Zero Konuşan Radyo: 7 Adım (Resimli)

Video: Pi Zero Konuşan Radyo: 7 Adım (Resimli)
Video: Hatay..! Sen benim..🤍 2024, Temmuz
Anonim
Image
Image
Pi Zero Konuşan Radyo
Pi Zero Konuşan Radyo
Pi Zero Konuşan Radyo
Pi Zero Konuşan Radyo
Pi Zero Konuşan Radyo
Pi Zero Konuşan Radyo

Bu, bir Raspberry Pi Zero, bir Blinkt kullanarak yeni bir hayat verdiğim 1940'ların sonlarında bir DeWald masa radyosu! LED şerit ve bir çift PC Hoparlörü. Pyvona metin okuma (TTS) motorunu ve IF This Then That (IFTTT) entegrasyonunu kullanarak bir dizi internet bağlantılı hizmetten gelen bildirimleri okur. LED'ler inanılmaz derecede parlaktır ve bildirim metnindeki anahtar kelimelere bağlı olarak telsizin kadranını farklı bir renkte aydınlatır, örneğin "youtube" = Kırmızı.

Bu tatlı küçük radyoyu yaz boyunca 3 sterline bir araba bagajı satışında aldım - kompakt boyutu ve klasik tasarımı ile hemen etkilendim ve güneşten solmuş dış cephe ve birçok çatlaktan potansiyelini görmeyi başardım! Bir süredir "oturma odası için uygun bir şey" yaratmak istiyordum ve bu ideal bir başlangıç noktasıydı. Daha önce Tavşan Pi projesinde metin-konuşma bildirimlerini denedim ve öğrendiklerimin üzerine günlük olarak "sadece işe yarayacak" bir şey yapmayı umuyordum.

Gömülü videoyu göremiyorsanız şu adreste:

Adım 1: Yanıp Sönen Pi

yanıp sönen Pi
yanıp sönen Pi
yanıp sönen Pi
yanıp sönen Pi

Geçenlerde ilk Pi Zero'larımı aldım ve küçücük boyutlarına anında hayran kaldım! GPIO başlığında lehimlendikten ve adaptörleri bağladıktan sonra ilki kullanıma hazırdı. Başlangıçta geliştirilmiş bir Tavşan Pi yapmayı planlamıştım, ancak bir süre sonra bu, eğlenceden çok iş gibi geldi, bu yüzden rafa kaldırdım - ancak bir Unicorn pHAT, 4x8 programlanabilir LED matrisi ile denemeye başlamadan önce değil, mutlak bir yığındı eğlence! Tek dezavantajı, pHAT kullanmanın ses kurulumunu karmaşık hale getirmesiydi ve bir sonraki projemi gerçekten basit tutmak istedim.

Eylül ayında Blinkt'i gördüğümde Cambridge Raspberry Jam'de her şey yerine oturdu! Pimoroni tezgahında satışta - tıpkı Unicorn pHAT gibi ama tek sıra 8 LED'li, pi sıfırın GPIO başlığına sığacak şekilde mükemmel boyutta. Bir sürü belge ve örnekle birlikte gelir ve kısa sürede çalışır hale geldi - şimdi kodun geri kalanını bir araya getirmeye başlama zamanıydı.

Adım 2: Konuşan Kod

konuşma kodu
konuşma kodu

Ivona metin-konuşma kimlik bilgilerim zaten içinde saklandığından, Rabbit Pi'den ana kodun bir kopyasıyla başladım. Hizmeti kullanmadan önce bir Ivona geliştirici hesabı oluşturmanız gerekir, ancak süreç daha önce belgelediğim gibi basittir.

Sonraki adım, daha kolay olamazdı (pip install pyvona) Ivona TTS hizmetiyle entegre edilecek Python sarmalayıcı olan Pyvona'yı kurmaktı.

Bunun yerine, Rabbit Pi kodunu değiştirmeye başladım, motor kontrolü ve selfie çekme referanslarını çıkardım ve bana sadece Gmail mesajlarının Konu satırlarından gelen bildirimleri okuyan bitler bıraktım. Bu kodla ilgili kritik gelişme, mesajlarda belirli anahtar kelimeleri aramak için bir dizi EĞER ifadesi eklemekti, böylece Blinkt! mesaja bağlı olarak farklı renklerde parlıyordu.

Bu benim için biraz zaman aldı, çünkü hala Python ile aramı düzeltiyorum, ancak anahtar kelimelerimi ("Bulutlu", "Günbatımı", "Duşlar", "Facebook", "Twitter", "Youtube" ve "Güneşli") belirledim. Blinkt'i kontrol edebildim! okunan metne bağlı olarak renk.

Kullandığım basit, uygunsuz olsa da, daha fazla anahtar kelime ve renk eklemiş olmama rağmen GitHub'da! Pille çalışan bir hoparlör kullanarak kasanın dışında test ettim - daha sonra ses kurulumunda. Son adım, python betiği radiot.py'yi başlangıçta çalışacak şekilde ayarlamaktı.

3. Adım: Bildirim Merkezi

Bildirim Merkezi
Bildirim Merkezi

Artık Pi, mesajları güvenilir bir şekilde okuyacağı ve farklı renkleri parlatacağı için, bildirimleri kendiliğinden gelecek şekilde ayarlamam gerekiyordu - eski bir Tom & Jerry çizgi filminde radyonun ara sıra ses çıkardığını hatırlıyorum (Jerry's Diary (1949) - radyo ile aynı dönem!) ve benim de peşinde olduğum etki buydu, köşede oturup güzel görünmesi, ara sıra aydınlanması ve aksi halde telefonumdan alamayacağım bildirimleri okuması.

İlk önce bildirim e-postalarını almak için ayrı bir Gmail hesabı oluşturdum - bu, yeni posta bildirimleriyle bombardıman edilmeyeceğim veya mevcut gelen kutumu otomatik olarak oluşturulmuş yüzlerce iletiyle kirletmeyeceğim anlamına geliyordu.

Daha sonra otomasyonu kurmak için IFTTT'ye (IF This Then That) geçtim. IFTTT ile hesabınıza kolayca birden fazla "Kanal" bağlayabilir ve bunları "Tarifler" kullanarak birbirleriyle etkileşime girecek şekilde ayarlayabilirsiniz, bu durumda birden çok sosyal medyayı ve gerçek dünya eylemlerini bir e-posta akışına yönlendirebilirsiniz. Tariflerin "Sonra Şu" kısmını, bildirimler için oluşturduğum Gmail hesabına hepsi bir e-posta gönderecek şekilde özelleştirdim ve önemli bilgilerin e-posta Konusu'na eklendiğinden emin olmak için "İçindekiler" bölümünü kullandım., okunan kısım. Şu anda aşağıdaki IFTTT tariflerine sahibim, ancak bunlar her zaman ekleniyor!

  • Her gün saat 21:00'de yarının hava durumunu e-posta ile gönder
  • Sunset'te her gün tarih ve saati e-posta ile gönderin
  • Bir Facebook fotoğrafında etiketlenirsem e-posta gönder
  • Telefonum takılıysa/çıkardıysa pil yüzdesini e-postayla gönderin
  • Bir coğrafi bölgeye girersem, "MisterM işe geldi!" şeklinde bir e-posta gönderin.
  • Bir YouTube videosu yüklersem bir e-posta gönderin
  • Belirli bir kişi tweet atarsa, e-posta ile gönderin
  • Bir google takvim etkinliği e-posta ile göndermeye başlarsa
  • Mevcut hava yağmura dönüşürse bir e-posta gönderin ("Dikkat edin, yağmur başlamak üzere!"
  • Akıllı soket açık veya kapalıysa bir e-posta gönderin
  • EĞER yeni bir SMS mesajı alınırsa e-posta ile gönderin
  • Telefonun pili %15'in altına düşerse bir e-posta gönderin ("Telefonunu şarj et salak")
  • Eger yeni bir Twitter takipçim olursa veya bahsedersem bir e-posta gönder

Tahmin edilebilir günlük olaylar ve beklenmedik duyuruların harika bir karışımı - favorim Günbatımı bildirimi, yılın bu zamanında saatinin günlük olarak nasıl değiştiğini görmek ilginç. Twitter bildirimleri en eğlenceli olanıdır, şu anda "Beef & Dairy Network", "Very British Problems", "My Sweary Cat" ve "Henry Thoreau"dan gelen yeni tweet'leri okuduğunda (bunlardan bazıları kapalı olsa da). kibar şirkette IFTTT uygulaması). Belirli Twitter hesaplarını okuyabilmek, onu gerçekten esnek hale getirir ve bunlar, her seferinde Pi'yi yeniden programlamak yerine IFTTT aracılığıyla özelleştirilebilir.

4. Adım: Ses Seçenekleri

Ses Seçenekleri
Ses Seçenekleri
Ses Seçenekleri
Ses Seçenekleri
Ses Seçenekleri
Ses Seçenekleri
Ses Seçenekleri
Ses Seçenekleri

Daha sonra sesi iki zorlukla çözmem gerekiyordu! Öncelikle sesi Pi'den nasıl çıkarırım. Büyük kardeşinin aksine Pi Zero'nun 3,5 mm ses çıkışı yok, bu yüzden bir çeşit adaptör kullanmam gerekiyordu. Başlangıçta bir HDMI - VGA + Ses konektörü kullanacağımı düşündüm ama bu biraz fazla gibi geldi (ve buna başka bir proje için ihtiyacım vardı!), bu yüzden ucuz bir USB ses adaptörü kullandım. Kurulumu oldukça kolaydı, sadece USB ses kartını Pi'de varsayılan ALSA aygıtı olarak ayarlamak gibi bir durumdu. Bu, WiFi adaptörünü barındırmak için bir USB hub eklemem gerektiği anlamına geliyordu, ancak etrafta yattığım eski bir tane söküp yeniden kullanmayı başardım.

İkinci olarak, kaliteli ses verecek ve sürekli açık kalacak bir amplifikatör/hoparlör kombinasyonu seçmem gerekiyordu. Daha önce pille çalışan hoparlörler kullandım, ancak düzenli şarja ihtiyaç duymaları "her zaman açık" kullanım için iyi olmazdı, ayrıca genellikle arka planda fark edilir tıslamalar vardı. Geçmişte eski ipod yuvalarını da yamyamlaştırdım, ancak bunlar güç tasarrufu "özelliklerine" sahip olma eğilimindeydi ve birkaç dakikalık sessizlikten sonra kapandı.

Sonunda yeni bir şeyle gittim, 6,99 sterlinlik pazarlık fiyatı için bir çift PC hoparlörü. Çok fazla beklemiyordum ama ses kalitesi kesinlikle iyiydi, tıslama veya zaman aşımı olmadan. PC hoparlörlerinin ek avantajı, radyonun orijinal kontrollerine bağlanabilmeyi umduğum bir açma/kapama düğmesi ve ses seviyesi kadranı içermeleriydi. Her şey yedek kulübesinde çalıştı, şimdi onu çantaya sığdırma zamanıydı!

Adım 5: Retro Montaj

Retro Uydurma
Retro Uydurma
Retro Uydurma
Retro Uydurma
Retro Uydurma
Retro Uydurma

Radyoyu eve ilk getirdiğimde, bazı yerlerde kelimenin tam anlamıyla tost olan orijinal devreleri çıkardım. Orijinal yapıdan çok etkilendim, açıkçası kolayca sökülüp sabitlenecek şekilde tasarlandı, çünkü birkaç cıvatayı söktükten sonra tüm montaj bir tür şasi üzerinde kaydırıldı. Aynı yaklaşımı kullanmaya karar verdim ve yeni bileşenleri, daha sonra kasaya kayabilecek ve orijinal gibi sabitlenebilecek bir taban üzerinde bir araya getirdim.

Eski bir DVD rafından ince bir ahşap rafla başladım, onu boyuta göre kestim ve kasa cıvataları için delikler açtım. Sonra hoparlörleri söktüm, plastik kasaları demir testeresi ve döner aletle kestim. Artık ince olan hoparlörler, Meccano'dan yapılmış 90 derecelik bir dirsekle ahşap tabana sabitlendi. Sıradaki amplifikatör devresiydi - alan kısıtlamaları nedeniyle bunun ne yazık ki baş aşağı monte edilmesi ve tabanın bir inç yukarısına kaldırılması gerekiyordu. Tahtayı desteklemek ve sabitlemek için bir tür sütun düzenlemesi yapmak zorunda kaldım, ancak bunu düzgün bir şekilde nasıl yapacağım konusunda sıkışıp kaldım. İdeal çözüm burnumun dibindeydi - renkli bir kalem! Kalemin bölümlerini boyuta göre kestim, sonra bunları tabanda açılan deliklere yerleştirdim. Renkli kurşun kalem kullanmanın mükemmel yanı, merkezdeki "kurşun" gerçekten kolayca delinebilmesi ve devre kartı vidaları için uygun bir delik bırakabilmesidir.

Pi'nin kendisini desteklemek için bir braket yapmak için Meccano ve Lego parçalarının bir kombinasyonunu kullandım ve başıboş kabloları kablo bağlarıyla topladım. Hoparlör devre kartındaki ses ve açma/kapama düğmeleri, radyo kasasındaki deliklerden daha uzaktaydı (her şeye sahip olamazsınız), bu yüzden onları içi boş bir plastik balon çubuğu kullanarak genişlettim.

Adım 6: Vaka Çalışması

Vaka Çalışması
Vaka Çalışması
Vaka Çalışması
Vaka Çalışması
Vaka Çalışması
Vaka Çalışması

Daha önce bahsettiğim gibi, telsiz kasası korkunç bir durumdaydı, bu yüzden en kötü delikleri ve çatlakları polyfilla kullanarak yamaladım ve her tarafını zımparaladım. Ayar kadranının kahverengisi ile uyumlu olması için boya için güzel bir krem rengi kullanmaya karar verdim. Boyanın "astar ve boya bir arada" olduğu iddia edildi, ancak güvenli tarafta olmak için önce birkaç kat astar verdim. Topuzlar biraz ovma aldı (60+ yıllık kir!) ama iyi çıktı - Herhangi bir bileşene bağlı olmadığı için orijinal krem ayar düğmesini kadranın kendisine bir cıvata ile sabitledim.

Boya sertleştikten sonra sıra hepsini bir araya getirmeye geldi - normalde bir projenin sabrımı en çok sınayan kısmı! Bu sefer çok sorunsuz geçti, tüm zor konstrüksiyon tabanda zaten yapıldığından, tek yapmam gereken düzeneği kasanın içine kaydırıp cıvatalarla sabitlemek ve topuzları takmaktı.

Radyonun arka kapağı kayıptı, bu yüzden eski bir çerçeveden yenisini yaptım ve aynı krem rengine boyadım.

7. Adım: Radyo Zamanları

radyo saatleri
radyo saatleri
radyo saatleri
radyo saatleri
radyo saatleri
radyo saatleri

Bu gerçekten eğlenceli bir projeydi, işleri oldukça basit tutmak ve mümkün olduğunca temiz hale getirmeye odaklanmak güzeldi. Bazen Alexa entegrasyonu için bir mikrofon eklemek istedim ve hatta bir Chromecast Audio (eski zaman radyosu tarzındaki en sevdiğim yeni zaman podcast'leri için) oluşturmayı ciddi olarak düşündüm, ancak bunu basit tuttuğum için memnunum ve Sonuç beni heyecanlandırıyor.

Şimdi oturma odasının köşesindeki bir hoparlöre yerleştirilmiş, umduğum gibi ara sıra yanıyor ve konuşuyor. Tek hafif dezavantajı, krem ve kahverengi yarı saydam kadranın Blinkt'in parlak renk yelpazesini göstermeyi zorlaştırması! Gün batımı bildirimleri (turuncu) ve metin mesajları (mor) için oldukça açık ama hava durumu bildirimleri biraz aynı - Sanırım farklı RGB renk kodlarıyla denemem gerekiyor!

Bu projeyi beğendiyseniz ve daha fazlasını görmek istiyorsanız, bit.ly/OldTechNewSpec adresindeki devam eden proje güncellemeleri için web siteme göz atabilir, Twitter @OldTechNewSpec'e katılabilir veya bit.ly/oldtechtube adresinde büyüyen YouTube kanalına abone olabilirsiniz - ver Eski Teknolojinizden bazıları Yeni Bir Özellik!

IoT Üreticileri Yarışması
IoT Üreticileri Yarışması
IoT Üreticileri Yarışması
IoT Üreticileri Yarışması

IoT Builders Yarışmasında İkincilik Ödülü

Önerilen: