İçindekiler:
- Adım 1: İhtiyacınız Olan Şey
- Adım 2: Raspberry Pi Kurulumu
- 3. Adım: Komut Dosyaları
- Adım 4: Devre
- Adım 5: Montaj
- Adım 6: Ve Şimdi?
Video: O-R-A RGB Led Matris Duvar Saati ve Daha Fazlası **Temmuz 2019'da güncellendi**: 6 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Merhaba. O-R-A adında yeni bir projeyle karşınızdayım.
Aşağıdakileri gösteren bir RGB LED Matrix duvar saatidir:
- saat:dakika
- sıcaklık
- nem
- mevcut hava durumu simgesi
- Google Takvim etkinlikleri ve 1 saatlik hatırlatma bildirimleri
belirli bir zamanda şunu gösterir:
- Google Takvim bugün ve yarın etkinlik listesi
- hava Durumu tahmini
- flaş Haber
Bağımlılık işlevleri:
- Geçerli tarih
- sihirli 8 top
- Mutfak zamanlayıcısı
Herhangi bir işlevsellik için cihaz farklı bir sesli alarm çalar. Her türlü hava koşulu için, işlev çağrıldığında çalınacak ilgili bir ses dosyası vardır.
Google Takvim listesi, Hava durumu tahmini, RSS son dakika haberleri, cihaz "saat modunda"yken önceden seçilen zamanda başlar, bunlara doğrudan anahtarları çalıştırarak da çağrılabilir. "Saat modu" sırasındaki başka bir işlev, geçerli günü/ayı/yılı gösterir. ENTER düğmesine basılarak çalıştırılabilir. "Saat modunda" 3 saniye içinde DURUM DEĞİŞTİR düğmesine ve ardından ENTER düğmesine basmak, seçenekler menüsüne girmenizi sağlar. DURUMU DEĞİŞTİR düğmesi menü içinde gezinmeye ayarlıdır, ENTER düğmesi ise seçilen seçeneği onaylamak içindir.
Bu proje, önceki LEGOLED ve TEMPO'mun bir evrimidir. RGB led matrix panel artık 32x64 çözünürlüğe sahip olduğundan, aynı anda daha anlaşılır grafikler, sabit ve kayan metinler görüntülemek mümkündür. TEMPO işlevlerini kullanarak cihaz, herhangi bir düğme veya harici zamanlayıcı olmadan otomatik olarak açılır ve kapanır. Bir PIR modülü, kişilerin varlığını algılar ve bu nedenle ekranı açar/kapatır.
Hava durumu tahmini ve takvim verileri, Google Takvim ve Açık Hava Durumu Haritası tarafından sağlanan her dakika toplanır.
Bu proje, bir Raspberry PI B+, 2 modül 16x64 rgb led matris ve güç kaynağından başlayarak tamamen özelleştirilebilir. Benim yaptığım gibi USB ses kartları, hoparlörler, açma/kapama devresi eklenerek genişletilebilir.
Adım 1: İhtiyacınız Olan Şey
- Raspberry Pi B+ (dahili wifi veya dongle ile)
- 2 x 16x64 RGB led matris veya 2 x 32x32
- genel çerçeve (yaklaşık 40x50 cm ve 3 cm derinlik)
- buzlu plastik levha
- pencere güneş filmi
- PS 5V 10A
- kablolar
- termoset kılıf (*)
- röle modülü (*)
- ses yükseltici için ekstra PS (*)
- 3W ses yükseltici modülü (*)
- hoparlörler (*)
- USB ses kartı (*)
- 2 x mikro anahtar (*)
- PIR (*)
- Attiny85 (*)
- DS3231 (*)
- Mosfet IRF540 (*)
- Dirençler: 3x1K, 2x10K, 1x2K (*)
- terminal bloğu (*)
- başlık şeritleri dişi (*)
- başlık şeritleri erkek (*)
(*) isteğe bağlı
Adım 2: Raspberry Pi Kurulumu
Bu kılavuz temel olarak Hzeller Github kullanıcısı tarafından Raspbian Jessie Lite, Python 2.7 ve RGB LED MATRIX kitaplığına dayanmaktadır.
Öncelikle RPI'yi güncelleyin ve yükseltin
git'i yükle
~ $ sudo apt-get kurulum git
Github'dan RGB LED MATRIX kitaplığını indirin
~ $ git klonu
~ $ cd rpi-rgb-led-matris
~ $ sudo yapmak
kara liste RPI dahili ses kartı
~ $ kedi <<EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf
kara liste snd_bcm2835
EOF
~ $ sudo güncelleme-initramfs -u
Ses yetenekleri gerekiyorsa harici ses kartı parametrelerini ayarlayın:
~ $ sudo nano /usr/share/alsa/alsa.conf
değiştirmek:
defaults.ctl.card 0
defaults.pcm.card 0
ile
defaults.ctl.card 1
defaults.pcm.card 1
sonra yeniden başlatın.
Şimdi matris kitaplığını kurun
~ $ cd /home/pi/rpi-rgb-led-matrix
~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-pillow -y
~ $ yap-python
~ $ sudo make install-python
ve gerekli diğer kitaplıkları kurun:
~ $ sudo easy_install pip
~ $ sudo pip kurulumu
Samplebase.py betiğini ~/rpi-rgb-led-matrix/bindings/python/samples/ dizininden ana dizine kopyalayın
Hava Durumu Haritasını Açmak için ücretsiz kayıt olan API anahtarını alın
PYthon 2.7 için OWM Python sarmalayıcısını şimdi yükleyin (CSPARPAGithub kullanıcısı sayesinde)
~ $ sudo pip kurulumu git+https://github.com/csarpa/[email protected]
Google Calendar API'deki talimatları izleyerek Google Calendar kimlik bilgilerini alın
Ses çalmak için Pygame'i yükleyin
~ $ sudo apt-get install python-pygame
RSS beslemelerinin Feedparser'ın yüklü olması gerekiyor
~ $ sudo pip yükleme ayrıştırıcısı
komut dosyamı ORAeng_131.py (ingilizce sürüm) veya ORAita_131.py (italyanca sürüm) ana dizine kopyala
sesler ve resimler için klasörler oluşturun:
mkdir dbsounds
mkdir owm
Aşağıdaki bağlantıdan tüm-p.webp
www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0
OWM kimlik bilgilerinizi satır 69'a ekleyin (API_key)
213, 215 satırlarında hava durumu tahmini için şehri ayarlayın (OWM kapsamında olup olmadığını ve doğru adın kabul edilip edilmediğini kontrol edin)
obs =owm.weather_at_place('Napoli, IT')
fc = owm. Three_hours_forecast('Napoli, IT')
************************************ GÜNCELLEME 28/7/2019********** ******************
Yeni Google Takvim API'si sorun yaratıyor. Bazı modülleri kaldırmayı çözdüm:
~ $ sudo apt-get remove --purge python-setuptools
~ $ sudo apt-get autoremove python-pyasn1
komut dosyasını çalıştırmayı deneyin
~ $ sudo python ORAeng_150.py # veya italyanca sürümü için ORAita_150.py
ilk seferde komut dosyası GCAL yetkilendirmesini isteyecektir. Google api kimlik bilgisi için bağlantıyı tıklayın. İzin ver o zaman, her şey yolundaysa, saatin başladığını göreceksin.
Birkaç saat sonra aşırı RAM kullanımı nedeniyle, RAM kullanımı bir eşik seviyesini aştığında python betiğini yeniden başlatan bir betik yazdım. Ardından memcheck adlı betiği memcheck.sh olarak yeniden adlandırarak ana dizine kopyalayın ve ana betiği birlikte crontab -e'ye ekleyin
*/5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py
3. Adım: Komut Dosyaları
Ana betiğin ihtiyaçlarınıza göre değiştirilmesi gerekiyor. OWM ve Goggle Calendar kimlik bilgilerinin ilgili API talimatları olarak ayarlandığını varsayarsak, en önemli parametreler şunlardır:
her saat başı 2, 32. dakikada gerçekleştirilen takvim etkinlikleri listesi (komut satırı 65'e bakın)
7. ve 37. dakikada her saat başı hava koşulları ve tahmini performans (bkz. komut satırı 66)
her saat 11. dakikada yapılan son dakika haberleri (bkz. komut satırı 67)
son dakika haberleri rss kanalı. Komut dosyasının içinde Eğitilebilir RSS ayarlanır, ancak değiştirilebilir. (komut satırı 366'ya bakın)
Açıkçası, komut dosyası, gelen takvim etkinliğine veya hatırlatma bildirimlerine öncelik verir. Bazen saat, işlevlerin kesişmesini önlemek için özelliklerini gerçekleştirmez.
Attiny85 açma/kapama zamanlayıcısının Tempo_V1_9_1Mhz_bugfix.ino taslağını yükleyerek programlanması gerekiyor.
Bu, sabah 8'de cihazın açılmasına ve 23'te kapanmasına izin verir. Daha fazla bilgi için öğreticiye bakın.
Adım 4: Devre
Devre temelde 3 bölümden oluşmaktadır.
- DS3231 modülü, Attiny85 ve Mosfet tarafından ele alınan güç açma/kapama zamanlayıcısı
- saat özelliklerinin manuel kontrolü için anahtar
- RGB LED Matrix verileri ve gücü, ses yükselticisi ve Raspberry Pi için kablolamanın yapıldığı bağlantı bölümü
RPI'nin Attiny85'ten YÜKSEK/DÜŞÜK 5V sinyali okumasına izin veren dirençli bir voltaj bölücüsünden bahsetmiyorum
Anahtarlar, dahili dirençler kullanılarak doğrudan RPI pinine bir GND'ye bağlanır
Attiny85 zamanlayıcı, TEMPO adlı önceki projemden geliyor. Temel olarak, DS3231, onu uyku modundan uyandıran Attiny85 kesme pinine DÜŞÜK sinyal gönderir. Uyandığında Attiny85, Mosfet transistörüne YÜKSEK sinyal göndererek RPI, LED Matrix ve ses amplifikatörü için güç kaynağı devresini etkinleştirir (son yapılandırmam olarak, bir röle aracılığıyla ekstra PS'ye bağlı değilse).
RPI'yi kapatmak için betiğim, RPI'nin YÜKSEK olduğunda pim 14'teki dijital sinyali dinlediğini düşünüyor ve buna bir kapatma komutu deniyor. Ardından RPI doğru bir kapatma işlemi gerçekleştirir, ardından bir dakika sonra Attiny85 uyku moduna geri döner ve Mosfet tüm cihazı kapatan bir DÜŞÜK sinyali alır. Bu süreç zorlu ama etkilidir.
PIR modülü isteğe bağlıdır ve doğrudan RPI GPIO'ya bağlıdır.
Yapılandırmam, aşağıdaki RPI GPIO pinlerinin aşağıdakilere bağlı olmasını gerektiriyor:
15 için PIR
14 ila Attiny85 pin 3 aracılığıyla voltaj bölücü
21 röle modülü
2 geçiş yapmak için (GİRİŞ DÜĞMESİ)
3 geçiş yapmak için (DURUM DEĞİŞTİR DÜĞMESİ)
Sorunlar:
- LED Matrix güç kaynağından kaynaklanan gürültü, yalnızca ses amplifikatörü için küçük bir PS kullanılarak çözüldü. İsteğe bağlı bir röle, amplifikatörün yalnızca gerektiğinde açılmasına izin verir. Bu, açıldığında/kapatıldığında bir çarpma sesine neden olabilir.
Devre bakır levha, 3D yazıcı, işaretleyici ve demir klorür kullanılarak kazınmıştır.
Adım 5: Montaj
3D baskılı parçalar ve bazı isteğe bağlı ekstralarla birlikte bu projeye genel bir 40x50cm çerçeve uyarladım.
Cam, pencere güneş filmi ve buzlu plastik levha ile korunmaktadır. Led matrisinin beyaz iç ledleri görmemesi için cama yaklaşık 1cm uzaklıkta tutulması gerekir. M3 somun ve cıvata olarak küçük vidalar gereklidir. Zorunlu kablolar ve ısıyla sertleşen kılıftır.
Led matrisler kasanın arka paneline vidalanmıştır.
Adım 6: Ve Şimdi?
Bir sonraki adım, maksimum Raspberry Pi potansiyeline kadar bir sıcaklık sensörü, bluetooth özelliklerinin aktivasyonu ve neden olmasın, bir internet radyo oynatıcısı eklemek olacaktır.
Hoşçakal
Saatler Yarışmasında İkincilik
Önerilen:
Raspberry PI (RPi) için LIRC Kullanan Kolay Kurulum IR Uzaktan Kumanda - Temmuz 2019 [Bölüm 1]: 7 Adım
Raspberry PI (RPi) için LIRC Kullanan Kolay Kurulum IR Uzaktan Kumanda - Temmuz 2019 [Bölüm 1]: Uzun araştırmalardan sonra, RPi projem için IR uzaktan kumandanın nasıl kurulacağına dair çelişkili bilgiler konusunda şaşırdım ve dehşete düştüm. Kolay olacağını düşündüm ama Linux InfraRed Control'ü (LIRC) kurmak uzun zamandır sorunluydu ama
Daha Az Alanda Daha Fazla Marul Yetiştirmek Veya Uzayda Marul Yetiştirmek, (Daha Fazla veya Daha Az).: 10 Adım
Daha Az Alanda Daha Fazla Marul Yetiştirmek Veya… Uzayda Büyüyen Marul, (Daha Fazla veya Daha Az).: Bu, Instructables aracılığıyla gönderilen Growing Beyond Earth, Maker Yarışması'na profesyonel bir başvurudur. Uzay mahsulü üretimi için tasarım yapmaktan ve ilk Instructable'ımı göndermekten daha fazla heyecanlanamazdım. Başlamak için yarışma bizden
Raspberry PI (RPi) için LIRC Kullanan Kolay Kurulum IR Uzaktan Kumanda - Temmuz 2019 [Bölüm 2]: 3 Adım
Raspberry PI (RPi) için LIRC Kullanarak Kolay Kurulum IR Uzaktan Kumanda - Temmuz 2019 [Bölüm 2]: Kısım 1'de RPi + VS1838b'nin nasıl birleştirileceğini ve Raspbian'ın LIRC modülünün bir IR uzaktan kumandasından IR komutları alacak şekilde nasıl yapılandırılacağını gösterdim. Tüm donanım ve LIRC kurulum sorunları bölüm 1'de tartışılmaktadır. Bölüm 2, donanım arayüzünün nasıl
Tam Gökkuşağı Efekti ve Daha Fazlası Olan Gökkuşağı Kelime Saati: 13 Adım (Resimlerle)
Tam Gökkuşağı Efektli Gökkuşağı Kelime Saati ve Daha Fazlası: Hedefler1) Basit2) Pahalı değil3) Mümkün olduğunca enerji verimli Gökkuşağı efektine sahip Gökkuşağı Kelime Saati. Kelime Saatinde Bir Gülümseme. Basit IR uzaktan kumanda için Güncelleme 03-nov-18 LDR NeopixelsUpdate 01-jan-…'in Parlaklık Kontrolü
Hızlandırılmış, Portreler ve Daha Fazlası için Büyük LED "halka" Işığı: 11 Adım (Resimlerle)
Hızlandırılmış, Portreler ve Daha Fazlası için Büyük LED "halka" Işığı…: Birkaç güne yayılan çok sayıda hızlandırılmış video çekiyorum, ancak kıskaç ışıklarının verdiği düzensiz ışıktan nefret ediyorum - özellikle geceleri. Büyük bir halka ışık çok pahalı - bu yüzden elimdeki malzemelerle tek bir akşamda kendim bir şeyler yapmaya karar verdim.