İçindekiler:

1970'ler E-Mürekkep YouTube Sayacı: 7 Adım (Resimlerle)
1970'ler E-Mürekkep YouTube Sayacı: 7 Adım (Resimlerle)

Video: 1970'ler E-Mürekkep YouTube Sayacı: 7 Adım (Resimlerle)

Video: 1970'ler E-Mürekkep YouTube Sayacı: 7 Adım (Resimlerle)
Video: Gözümün içine piercing yaptırdım 2024, Kasım
Anonim
Image
Image
1970'ler E-Mürekkep YouTube Sayacı
1970'ler E-Mürekkep YouTube Sayacı
1970'ler E-Mürekkep YouTube Sayacı
1970'ler E-Mürekkep YouTube Sayacı

1970'lerin bu ikonik dijital saati, eğlenceli Pimoroni "Inky pHAT" e-mürekkep ekranı ve Raspberry Pi Zero sayesinde artık YouTube istatistiklerini gösteren yeni bir hayata sahip. Youtube API'sini düzenli olarak sorgulamak için basit bir Python betiği kullanır, aldığı verilerle ekranı yeniler ve en son site istatistiklerini görüntüler. Arkadaki orijinal Alarm Açma/Kapatma düğmesi, belirli bir YouTube sitesi için Aboneler ve Görüntülemeler arasında geçiş yapar (bu durumda benimki!).

Saatin kendisi bir Digitron modelidir, tüketici pazarı için oldukça erken bir LED saattir ve sağlam bir alüminyum gövdede sağlam ve şık bir şekilde kaplanmıştır.

Kodu ve yapıyı gösteren tam proje videosu https://www.youtube.com/embed/jKEZ2S3fj38 adresinde, gömülü videoyu göremiyorsanız, sadece çalışırken görmek istiyorsanız, ayrıca daha kısa bir gizli bakış var.

Gereçler

1970'ler Digitron Çalar Saat

Ahududu Pi Sıfır / Sıfır W

Pimoroni Mürekkepli pHAT

12 Dişi-Erkek Jumper Kablosu

Hırdavat

Adım 1: İleri Dönüşüm İçin Zamanda Geri Dönme

İleri Dönüşüm Zamanında Geri Dönme
İleri Dönüşüm Zamanında Geri Dönme
İleri Dönüşüm Zamanında Geri Dönme
İleri Dönüşüm Zamanında Geri Dönme
İleri Dönüşüm Zamanında Geri Dönme
İleri Dönüşüm Zamanında Geri Dönme

Bu saati birkaç yıl önce bir indirimden aldım ve yakın zamana kadar günlük kullanımda, TV ünitesinin altına sıkışmış ve harika zaman geçiriyordu. Son zamanlarda, LED ekranın çılgınca yanıp söndüğünü ve rahatsız edici bir vızıltı sesiyle odaya girdiğimizde ve açıkçası atölyeye çekilme zamanı gelmişti.

İlk önce sağlam yapısı ve stiliyle ilgimi çekti - hemen hemen sağlam bir alüminyum yığını ve çok ağır. Estetiği o kadar çok sevdim ki, artık bozulan saati ofisimde pasif bilgi sağlamak için abartısız bir IoT cihazına dönüştürmeye karar verdim.

Sökme işlemi bana büyük bir ipucu verdi - modern LED saatler genellikle bir "duvar siğil" adaptörüne sahip olacak ve düşük voltajla çalışacak, ancak bu canavar tam şebeke voltajı aldı ve saatin içinde büyük bir transformatöre sahipti - ağırlığını hesaba katarak !

Standı yerinde tutan cıvataların yanı sıra, bileşenlerin geri kalanı plastikten yapılmış arka veya ön panellere sabitlendi. Transformatörü, devreyi ve eski LED ekranı attım ve sağlam bir kabuk, ön ve arka paneller ve doğru fikrin ortaya çıkmasını bekleyen kutuya koyduğum bazı anahtarlar kaldı.

2. Adım: Kanal Oluşturma

Kanal Oluşturma
Kanal Oluşturma

Yaklaşık bir yıl önce "Old Tech. New Spec"a başladım. YouTube'da - tutarlı bir biçim ve tasarıma sahip proje videolarım için özel bir kanal. Proje videoları yapmaktan neredeyse projelerin kendisi kadar zevk almaya başlamıştım ve bu mantıklı bir sonraki adım gibi geldi. Ayrıca, daha sonra geriye dönüp bakabilmem ve işlerin nasıl bir araya gelmesi gerektiğini görebilmem için rutin olarak yırtma gibi şeyleri videoya çektiğim için çekim sıkıntısı da yoktu.

Henüz o kadar çok video yayınlamadım ama her birinden yeni bir şeyler öğreniyorum. En son "PiNG Video Doorbell" videosu şimdiye kadarki en eğlenceliydi ama çok uzundu - bu yüzden bir sonraki projenin masamda oturup motive olmama yardımcı olacak basit ve minimalist bir YouTube istatistik sayacı olacağına karar verdim. Şimdi sayıları YouTube'dan Pi'ye nasıl aktaracağımı bulmam gerekiyordu - ne kadar zor olabilir ki?

Adım 3: İstatistikleri Ele Geçirmek

İstatistikleri Ele Geçirmek
İstatistikleri Ele Geçirmek
İstatistikleri Ele Geçirmek
İstatistikleri Ele Geçirmek

Kod Videosu şurada:

Araştırmama, MagPi dergisindeki bir dizi farklı sosyal API'den (Uygulama Programlama Arayüzleri) takipçi istatistiklerini alan, sayıları bir MySQL veritabanında saklayan ve ardından bir LED ekranda görüntüleyen bir kılavuzu izleyerek başladım. Bu işe yaradı ama bu proje için fazladan bir şey gibi görünüyordu, bu yüzden API'lerin nasıl çalıştığına dair bazı değerli dersler öğrendiğim için daha basit bir çözüm aradım.

Kısa süre sonra Python için İstekler modülünü keşfettim ve son derece yararlı bazı örnekleri inceledikten sonra YouTube API'sini kolayca sorgulayabildiğimi ve kanalım için bazı temel istatistikleri döndürebildiğimi fark ettim.

Benzer bir şey yapmak istiyorsanız, ilk adım Google Konsoluna giriş yapmak ve yeni bir Proje oluşturmaktır - oradan YouTube API'sini projenize bağlayabilir ve çıkarmak için ihtiyacınız olan kimlik bilgilerini (Kanal Kimliği ve API Anahtarı) alabilirsiniz. Python kullanarak istatistikler. Projeyi kurmak ve API anahtarını almak için Google'ın gerçekten yararlı kılavuzunu takip ettim ve Kanal Kimliğini almak için bu adımları takip ettim.

Kullandığım Python kodu Github'da belgelenmiştir - yorumlanmıştır ve kendi kimlik bilgilerinizi yapıştırdığınız sürece kendiniz için kullanımı oldukça basittir. Yalnızca Raspbian'da varsayılan olarak yüklü olan İstekler modülünü kullanır, bu nedenle belirli bir yazı tipi kullanmak istemiyorsanız, ekranın dışında kurulacak başka bir şey yoktur. Yine de kesinlikle YouTube ile sınırlı değilsiniz, İstekler modülü çok esnektir ve binlerce kaynaktan veri almanıza yardımcı olabilir, bir örnek, bir fitness API'sine bağlanan günlük bir adım sayacı olabilir.

Bundan memnun kaldığımda, otomatik başlatma dosyasını düzenleyerek Python betiğini açılışta otomatik olarak başlayacak şekilde ayarladım:

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart

…ve en alta aşağıdaki satırı ekleyerek:

@python3 /home/pi/YTcounter.py

Artık YouTube'dan istediğim sayıları alabildiğime göre, bir sonraki adım onları saatin retro tarzına uyacak şekilde görüntülemekti.

4. Adım: Mürekkep Seçeneği

Mürekkep Seçeneği
Mürekkep Seçeneği
Mürekkep Seçeneği
Mürekkep Seçeneği
Mürekkep Seçeneği
Mürekkep Seçeneği
Mürekkep Seçeneği
Mürekkep Seçeneği

Bu proje için birkaç farklı görüntüleme seçeneği düşündüm ancak Pi için üç renkli küçük bir e-mürekkep ekranı olan Pimoroni Inky pHAT'a karar verdim. Geçen yılki Yarr Booty yarışmasında bir kupon topladıktan sonra kış boyunca bir tane aldım ama onu kullanmaya hiç fırsatım olmadı, bu yüzden bu ideal bir fırsat gibi görünüyordu. Artı, en önemlisi, ekran, orijinal saatin ön paneliyle güzel bir şekilde eşleşen hoş bir kırmızı tonuydu.

Inky pHAT yazılımı, kurulum talimatlarını izleyerek kolayca kuruldu ve kısa sürede harika bir isim rozeti yapmak için Test Pi'mdeki örneklerden birini çalıştırdım. Biraz daha denemeden sonra, belirli bir yazı tipi kullanarak (YouTube markamda kullandığımla eşleşen) temel metni görüntüleyebildim ve oradan API isteğinin çıktısını görüntülemek kolaydı - Github kodundaki yorumlar nasıl olduğunu gösteriyor bu adım adım kodlanmıştır.

Inky, Pi'nin 40-pin GPIO başlığının üstüne sığacak şekilde tasarlandı, ancak onu "ekrana" sabitlemesini istedim, bu yüzden onu Pi'ye erkek-dişi atlama kablolarıyla bağlamaya karar verdim - bu, yerleşimini yaptı daha esnek ve bir LED'i bağlamak ve anahtarlamak için bazı GPIO pinlerini yedek bıraktı (daha sonraları hakkında). pinout.xyz'deki diyagramı takip ettim, 8 GPIO pininin gerekli olduğunu not ettim, kabloları taktım, test ettim ve - hiçbir şey yok! Sadece 8 GPIO pini gerekmesine rağmen pHAT'ın birden fazla GND pinine bağlanması gerektiğini fark etmemiştim. Bunların hepsi jumper'larla (kaba bir iş) birbirine bağlandıktan sonra Inky bir kez daha planlandığı gibi çalıştı, büyük bir rahatlama.

Kod çalışırken, şimdi olağan zorlukla karşılaştım - tüm parçaları kasaya sığdırmak.

Adım 5: Lego, Doğrama ve Tutkal

Lego, Doğrama ve Tutkal
Lego, Doğrama ve Tutkal
Lego, Doğrama ve Tutkal
Lego, Doğrama ve Tutkal
Lego, Doğrama ve Tutkal
Lego, Doğrama ve Tutkal

Tam yapım videosu şurada:

Pi Zero'yu kasaya takmak ilkti ve bunun için en sevdiğim inşaat malzemesi Lego'ya geri döndüm. Bileşenleri bir araya getirmek için mükemmeldir ve önemli ölçüde montajın yanı sıra kolay sökme işlemine de izin verir. Lego taban plakalarında bazı delikler açtıktan sonra, bir tanesini Pi tahtasına ve bir tanesini de orijinal stant cıvatalarıyla saat gövdesine sabitledim, böylece bunlar birbirine kenetlenecek ve Pi'yi tam doğru konumda tutacaklardı.

Sırada "yüz" vardı - saatin önündeki orijinal kırmızı perspex, Inky ekranının etkili bir şekilde gösterilemeyeceği kadar opaktı, bu yüzden gözetlemek için bir bölümü kesmek zorunda kaldım. Bu, kuşkusuz yapının en zor kısmıydı, çünkü deliğin çok doğru bir şekilde kesilmesi gerekiyordu ve eğer onu batırırsam, ısmarlama bir lazer kesime sahip olmak dışında (her ihtimale karşı araştırdım!). Ucuz bir sürmeli kumpasın (yeni favori aletim) yardımıyla, deliğin ana hatlarını tam olarak ölçebildim ve puanlayabildim, ardından bir döner aletle kabaca kesip küçük bir eğe ile düzelttim. Bu yavaş ilerliyordu ve bütün bir akşam sürdü ama buna değdi!

Inky pHAT daha sonra kırmızı perspekse mümkün olduğunca düzgün bir şekilde sıcak yapıştırılarak montaja hazır hale getirildi.

Adım 6: Son Dokunuşlar ve Montaj

Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj
Son Dokunuşlar ve Montaj

YouTube API'sinden gelen yanıtları denerken, iki ayrı "ilginç" sayı döndürebildiğimi gördüm - Aboneler ve Toplam Görüntülemeler. Inky pHAT ile her ikisini de aynı anda görüntülemek mümkün olabilirdi, ancak tek bir büyük (yazı tipi boyutu değil!) sayının saat benzeri temizliğini gerçekten beğendim. Koddaki bazı ince ayarlarla, saatin orijinal "Alarm Açma/Kapama" düğmesini GPIO'ya bağlayabildim, böylece ekran Aboneler ve Görünümler arasında geçiş yapabilirdi - bu, özellikle Görünüm sayısı değiştikçe tatmin edici bir dokunuştu. Abone sayısından çok daha sık!

Daha sonra GPIO'ya parlak beyaz bir LED ekledim, API isteği gönderilmeden hemen önce yanacak ve daha sonra kapanacak şekilde kodladım. Saydam kırmızı plastiğin arkasındaki tüm boyayı çoktan kazımıştım, bu yüzden buradaki fikir, sayılar yenilenirken saatin biraz kırmızı yanmasıydı.

Önceden yapılmış tüm GPIO bağlantıları ve bağlı güç kablosu ile, büyük ölçüde Lego tutma şeyleri sayesinde montaj gerçekten iyi gitti. Ön ve arka paneller sıkı bir sürtünme uyumuydu, ancak sonunda birbirine klipslendi - umarım yakın zamanda sökmek zorunda kalmam. Montajdan sonraki ilk açılış anı, kasanın içinde dolaşan atlama kabloları ve GPIO bağlantıları o kadar sıkı sıkılmışken, büyük bir umudum yoktu, ancak ekran bir saat gibi görünen bir süreden sonra yenilendiğinde çok memnun oldum. önyükleme işlemi.

7. Adım: Motive Edici Figürler

Motivasyon Figürleri
Motivasyon Figürleri
Motivasyon Figürleri
Motivasyon Figürleri

Bu projenin nasıl sonuçlandığını seviyorum, orijinal saatin güzel masif alüminyum tasarımı sayesinde kesinlikle şimdiye kadar yaptığım "en temiz" projelerden biri. Ayrıca harika bir öğrenme deneyimi oldu, gelecekteki projelerde kullanacağımı bildiğim API'ler ve e-mürekkep ile çalışma hakkında çok şey öğrendim.

En sevdiğim şey sadelik ve pratiklik, bir işi var, iyi yapıyor ve yaparken iyi görünüyor. Daha önce YouTube istatistiklerine göz kulak olma eğiliminde değildim, ancak bu, çekici ve müdahaleci olmayan bir şekilde sunulan ham çevrimiçi verileri ofisime getirdi. Old Tech için asla seyirci oluşturamayabilirim. Yeni Özellik binlerce, ama eğlenceli olduğu sürece, daha fazla insana eski cihazlarını yeni ve kullanışlı bir şeye dönüştürmeleri için ilham verecek projeler ve videolar yapmaya devam edeceğim.

Çocuklar ve ben, izlenme sayısındaki değişikliği görmekten çok etkilendik, ancak biraz da olsa, dünyanın bir yerinde birinin bir proje videosunu izlediğini bilmemizi sağlıyor ve bu bizi kesinlikle yaratmaya ve paylaşmaya devam etmeye teşvik ediyor.

Bu projeyi beğendiyseniz, lütfen daha eski teknoloji geliştirme için diğer Talimatlarıma göz atın ve normal video içeriği için YouTube kanalına abone olun.

IoT Mücadelesi
IoT Mücadelesi
IoT Mücadelesi
IoT Mücadelesi

IoT Challenge'da Birincilik Ödülü

Önerilen: