İçindekiler:

Dynaframe - Zengin Özellikli Bir Fotoğraf / Video Çerçevesi!: 6 Adım
Dynaframe - Zengin Özellikli Bir Fotoğraf / Video Çerçevesi!: 6 Adım

Video: Dynaframe - Zengin Özellikli Bir Fotoğraf / Video Çerçevesi!: 6 Adım

Video: Dynaframe - Zengin Özellikli Bir Fotoğraf / Video Çerçevesi!: 6 Adım
Video: Dynaframe - A feature packed raspberry pi powered photo frame! (Trailer) 2024, Temmuz
Anonim
Image
Image
Dynaframe - Zengin Özellikli Fotoğraf / Video Çerçevesi!
Dynaframe - Zengin Özellikli Fotoğraf / Video Çerçevesi!

Not: Bunu remix içeriğine dahil etmeye karar verdim! Bu projeyi eğlenceli bulursanız lütfen beni düşünün!

Selam! Dynaframe, farklı olmayı hedefleyen bir dijital fotoğraf çerçevesidir. Dışarıdaki düzinelerce uygulamaya baktım, ancak hepsi yüceltilmiş slayt gösterileri gibi geldi ve birçoğunun güncellenmesi zordu (örneğin MicroSD Kartın çıkarılmasını gerektiriyordu). Bu yüzden biraz python öğrendim ve üzerine kendi spinimi koydum. İşte Dynaframe'in sahip olduğu özellikler (Çoğunun demosu yukarıdaki fragman videosunda

  • Uzaktan yüklemeler - Her şeyden önce, güncellemek için bir SD karta dokunmak istemedim. Dynaframe, medyanın bir dosya paylaşımı yoluyla güncellenmesini destekler ve Allsync kullanıyorsanız, bulut üzerinden güncelleyebilirsiniz. Bir yağ değişimini bekleyebilir (ve sahip olabilirim) ve dijital çerçevemi evde güncellemek için sanat eserlerine göz atabilirim!
  • Video desteği - Hem görüntüleri hem de videoları destekler. Bu, şunları da desteklediği anlamına gelir:

    • Plotagraflar - Bunlar, hareketsiz görüntülere video öğeleri eklediğinizde oluşturulur (örneğin, Plotaverse/Werble uygulamaları bunu yapabilir)
    • Sinemagraflar - Bunlar, neredeyse animasyonlu bir-g.webp" />
  • Ev Otomasyonu desteği (Düğüm-Kırmızı üzerinden kontrol ile MQTT)

    Dynaframe, hangi çalma listesinin oynatılacağını söylemek için MQTT mesajları alabilir. Bu, birçok ev otomasyon sistemi aracılığıyla kontrol edilmesini sağlar ve Netflix'i başlattığınızda film afişleri veya Xbox Live'da oturum açtığınızda oyun resmini gösterme gibi harika senaryolara izin verir. Bu aynı zamanda, bir kişi odaya girdiğinde en sevdiği sanat eserinin görüntülenmesi için hazır bulunuşluk şeyler yapmak için de kullanılabilir

  • Oynatma listesi desteği - Dynaframe, her klasörü bir 'oynatma listesi' olarak ele alarak klasörlerde medya oynatmayı destekler. Bu nedenle, medyanızı bir klasörde komik resimler, diğerinde spor resimleri ve başka bir klasörde film afişi resimleri olacak şekilde düzenlerseniz… hangi medya klasörünü oynatmak istediğinizi seçebilirsiniz ve bu klasör arasında geçiş yapacaktır. Bu, Dynaframe'lerin bulunduğu odanın 'ruh hali'ne sahip olmasını sağlar. Bazen benimkini oyun çizimleri, bazen de film çizimleri için ayarladım. Bazen bilim kurgu, bazen fantezi. Bir 'yapımcı modunda' olduğumda, onu bir patent sanat eseri ve şemalar klasörüne ayarladım. Esnek ama kullanımı kolay hale getirmeye çalıştım.
  • Uzaktan kumanda - Her Dynaframe bir web sunucusunu destekler, böylece çerçeveye göz atabilir ve oynatma listelerini gösteren barındırılan bir web sayfası elde edebilirsiniz. Daha sonra çalma listelerini kolayca değiştirebilirsiniz. Bir web sunucusu olduğundan, bunu bir tarayıcı veya cihazla herhangi bir işletim sisteminden yapabilirsiniz. Bu, günümüzde telefonlar, tabletler, PC'ler ve hatta bazı Televizyonlar ile kontrol edebileceğiniz anlamına gelir.
  • Güç verimli - Bunu Zwave ve ev otomasyonu aracılığıyla çözdüm, ancak esasen Dynaframe, SD Karta herhangi bir anlamlı şekilde yazmayacak şekilde tasarlanmıştır (yalnızca burada ve orada günlüğe kaydeder). Böylece aniden kapatabilir ve yeniden başlatabilirsiniz ve her şey yoluna girecek. Aylarca hiç problem yaşamadan birden fazla kare çalıştırdım ve odadan çıktığımda ışıklarımla kapanıyorlar. Buna rağmen, çerçeveleri bir yıl boyunca açık tutacak olsaydınız, KW/saat başına 0,08 ABD doları olduğu varsayıldığında, her biri yaklaşık 13,00 ABD dolarıdır. (Zwave ve günde 3 saat ile bu, yılda yaklaşık 1,50$'a düşüyor!
  • Açık kaynak / Özgür yazılım - Aylık ödemeler / hizmet sözleşmeleri gerektiren bazı çözümler buldum. Ben sadece bir hobiciyim ve donanıma sahip olduğumda yazılımı yükleyip gidebileceğim bir şey arıyordum. Başkalarının kullanması, güncellemesi ve isterlerse özellikler eklemesi için yazılımı GitHub'a koydum.

Umarım bu listeyle, tekerleği yeniden icat etmek için neden uğraştığımı anlamışsınızdır. Bunu Remix yarışmasına dahil edeceğim, ama bu bir şeyin remiksi değil, bir düzine kadar remiksi:)

Adım 1: Adım 1: Bunu Yapmanız Gerekenler!?

Tamam, önce ilk şeyler.. neye ihtiyacımız var?

  1. Ahududu pi 3 - operasyonun beyni
  2. Kısa bir HDMI kablosu
  3. LG MK430H-B IPS 27" monitör (İstediğiniz monitörü kullanabilirsiniz ama ben bunu kullandım)
  4. Mikro SD kart
  5. Tel resim çerçevesi asma takımı
  6. Süper yapıştırıcı

İsteğe bağlı, ancak genişletilmiş özellikler veya daha temiz görünümler için kullanışlıdır:

  1. Z Wave fişleri (Ev otomasyonu üzerinden açmak/kapatmak için) -
  2. MQTT'yi destekleyen bir Ev otomasyonu kurulumu (HomeSeer, Home Assistant veya Smart Things gibi)
  3. Tel gizleme kanalları (genellikle sadece kabloları geçirmek için plastik bir ray… bu, çerçevelerden çıkan tellerin gizlenmesine yardımcı olur)
  4. Boya - Bu, gizleme kanalını duvarlarınızla eşleştirmek içindir. Bunu yapmak için zaman ayırırsanız, çerçevelerin basitçe yüzdüğü yanılsamasına yardımcı olur. Bunu yapmanın diğer yolu, elbette, kabloyu duvardan geçirmek/duvardan geçirmek olacaktır, ancak bu, bu talimatın kapsamı dışındadır.

Adım 2: Adım 2: Çerçeveyi Birleştirme

Adım 2: Çerçeveyi Bir Araya Getirmek
Adım 2: Çerçeveyi Bir Araya Getirmek
Adım 2: Çerçeveyi Bir Araya Getirmek
Adım 2: Çerçeveyi Bir Araya Getirmek

Dürüst olmak gerekirse, burada çok fazla sihir yok. Lütfen ne kullandığımı anlamak için resimlere bakın… Monitörün arkasındaki her iki taraftaki askı donanımını süper yapıştırdım, kabloyu geçirdim ve ardından tek çiviyle duvardaki bir saplamaya monte ettim. Monitörler çok ağır değil, ancak gerekirse, lütfen ankrajlı bir vida kullanın. İstediğiniz herhangi bir monitörü kullanabilirsiniz, lütfen onu uygun şekilde monte edin… örneğin 37 bir TV kullanıyorsanız, bunun için bir duvara montaj kiti yapmak isteyeceksiniz (aslında benim monitörlerimden biri olarak duvara montajlı bir TV kullanıyorum). çerçeveler!)

Endişelenecek diğer tek şey, Ahududu pi… Onu monitörün arkasına iki kez bantladım. Orada çok fazla incelik olmasına gerek yok. Fan veya herhangi bir aktif soğutma eklemiyorum… çerçeveler Pi'yi fazla zorlamaz.

Tek bir çiviye asmanın yararı, duvarda daha fazla delik açmak zorunda kalmadan her şeyin düz olmasını kolayca sağlayabilmenizdir. Ayrıca, bunun bir fotoğraf çerçevesi gibi görünmesini sağlamak için çerçeveyi söküp kendiniz ahşaptan yapabileceğiniz bir versiyonu olduğunu lütfen unutmayın…. Bunu yaratırken hedeflerimden biri bunu böyle bir şekilde yapmaktı. Efekti sevmediğime karar vermem durumunda monitörü yok etmedim (sevdim!). Bu nedenle ince basit çerçeveli monitörleri seçtim. Ayrıca mümkün olduğunca fotoğraf çerçeveleri gibi görünmelerini sağlamak için onları dikey olarak monte ediyorum!

Adım 3: Adım 3: Hazır Raspberry Pi Görüntüsünü Kullanma

Image
Image

Bunu inşa etmek için iki seçenek var. Bir ahududu pi'yi, diğer adımların çoğunu sizin için yapan, hazırladığım bir görüntüyle görüntüleyen basit olanla başlayacağım. Ancak, görüntü üzerinde daha fazla kontrol istiyorsanız, manuel olarak ayarlamak için ihtiyaç duyacağınız adımların üzerinden geçeceğim. Bu, ev otomasyon yazılımı, MQTT sunucuları vb. gibi istediğiniz diğer özelliklere sahip olabilecek bir görüntüye bunu eklemenize olanak tanır.

Lütfen videonun 'hazır' bölümün adımlarında size yol gösterdiğini unutmayın. Bununla birlikte, tamamen belgelenmesi için bu talimattaki diğer adımlardan geçeceğim.

Hazır sürümü kullanmak için lütfen Etcher'ı kullanarak aşağıdaki görüntüyü bir MicroSD Karta yazın:

1drv.ms/u/s!AqxjM4_uBDJguOsrwD3z4ovMJwFF9g (Güncelleme 6/7/2019)

Bu görüntü, bir şey eksik olan tam bir ahududu pi görüntüsüdür, bir python kitaplığı. İstediğiniz her şeyi ayarlamak için:

  1. Bu görüntüyü ahududu pi 3 veya sonraki bir sürüme önyükleyin (3B+ iyi çalışmalıdır)
  2. Bir komut satırı başlatın ve raspi-config'i çalıştırın
  3. Şifreyi güvenli bir şeye ayarlayın
  4. Wi-Fi'nizi kurun
  5. Ana makine adını, ayarladığınız her çerçeve için benzersiz ancak açıklayıcı bir şeye ayarlayın
  6. İşiniz bittiğinde, kaydedin ve yeniden başlatın. Çerçevenin IP adresini almak için 'ifconfig' komutunu çalıştırın (bu, WLAN0 olarak gösterilmelidir)
  7. Şu komutu çalıştırın: "sudo pip3 install paho-mqtt". Bu, görüntünün dışında kalan kritik bir kitaplık kuracak
  8. yeniden başlat

Sonraki: \{ipaddress}\Frame gibi ip adresine giderek dosyaları ahududu pi'ye kopyalayın

Bu klasörde, istediğiniz her 'oynatma listesi' için bir alt klasör oluşturun ve içine en az bir dosya (jpg, mov veya mp4) yerleştirin. Ardından, web kullanıcı arayüzünü görmek için https://{ipaddress}:8000'e gidebilirsiniz ve listelenen klasörleri görmelisiniz. Eğer öyleyse, her şeyi doğru bir şekilde ayarladınız ve rock and roll yapmaya hazırsınız! Kolay değil mi? Şimdilik yapabildiğim kadar basit:)

Resimle ilgili notlar:

1) Samba kurulur ve yapılandırılır, ancak misafir için yapılandırılır. Güvenli olmasını istiyorsanız, onu kilitlemek isteyeceksiniz.

2) Varsayılan şifre/giriş pi / ahudududur. Hangi varsayılan Raspbian OS şifresidir. Bunu kesinlikle değiştirmek isteyeceksiniz!

3) SSH VE VNC etkinleştirilir, böylece gerekirse yönetmek için pi'ye uzaktan erişebilirsiniz.

4) Frame paylaşımındaki 'logs' klasörü bir cronlog içerir… eğer bir şey patlarsa, log oradadır.

5) Samba, 'Frame' klasörünü paylaşıyor. Medyanızın gitmesi gereken yer burasıdır..alt klasörlerde!

6) Yetkisi olmayan bir web sunucusu var. Bu, çerçeveyi kontrol etmek için IP adresine (port 8000) gitmeyi kolaylaştırır, ancak onu şu anda kurulduğu şekilde harici olarak ifşa etmem.

7) Bu görüntüdeki varsayılan ayar portre modudur (Dikey). Bunu yatay moda değiştirmek isterseniz, doğru ayarı değiştirmek için https://www.ceos3c.com/open-source/rotate-screen-r… adresine bakmak isteyeceksiniz.

Bu noktada hazırsınız ve 'kolay yoldan' koşuyorsunuz. Eklemek isteyebileceğiniz iki bonus vardır:

1) Bunları kurduğunuz odada zaten bir Zwave anahtarınız varsa, bir Ev otomasyonu akıllı fişi kullanışlıdır. Ardından, çerçevenin oda ışıklarıyla senkronize olmasını sağlayacak şeyler yapmak için otomasyonlar ayarlayabilirsiniz. Örneğin, makerspace'imde ışıklarımı açtığımda çerçevelerim de onlarla birlikte açılıyor. Kapattığımda çerçeveler kapanıyor. Bunu yapmak için, monitöre fişten güç verin. Pi'ye güç vermeyi de seçebilirsiniz… Bunu yaparsanız fayda, hızlı başlatma süreleridir… ancak pi'nin güç çekişini kaybedersiniz. Gerçekten 'yeşil' olmak için pi'lerimi ve monitörlerimi fişte tutuyorum ve ikisini de kapatıyorum, ancak bu gerçekten sizin seçiminiz.

2) Allwayssync (https://allwaysync.com/). Bu yazılımı, onedrive/bulut depolama alanımı Dynaframe samba paylaşımlarıyla eşitlemek için kullanıyorum. Bu yazılım 2 yönlü senkronizasyon, çakışma yönetimi ve daha fazlasını yapabilir. Yararlı buluyorum ve benim için gerçekten iyi çalıştı.

Bu talimatın geri kalanı, bunu kurmanın 'manuel' yolu hakkında konuşacak ve gerektiğinde Zwave kurulumunda / Allwayssync'de biraz daha derinliğe inecek.

-

Adım 4: Adım 4: Manuel Kurulum Adımları

Adımları uzun yoldan yapıyorsanız, Linux ve ahududu pi'yi nasıl yapılandıracağınızı biraz bildiğinizi varsayacağım. Bu durumda, yapmak isteyeceğiniz şeylerin listesi burada. Bu listeyle ilgili harika olan şey, bu şeyleri anlamak için burada Instructables kullandım, bu yüzden bunu mümkün kılan Instructables'a doğrudan bağlantı kuracağım:)

1) https://github.com/Geektoolkit/Dynaframe adresindeki depoyu "Frame" adlı bir klasöre klonlayın. Talimatların geri kalanının tutarlı olması için bu Frame klasörüne başvuracağım, böylece başka bir şey olarak adlandırmak isterseniz, hangi klasörden bahsettiğimi anlayacaksınız. Burası show.py dosyasının bulunması gereken yerdir.

2) show.py'yi yürütülebilir olarak ayarlayın

3) Python 3'ün yanı sıra feh, Samba ve omxplayer'ı kurun. Bunlar komut dosyalarını yürütmek için gereklidir

4) paho-mqtt'yi (sudo pip3 install paho-mqtt) kurmak için pip3'ü ve python için HTTP kitaplıklarını kullanmak isteyeceksiniz.

5) Açılışta show.py'yi başlatmak için bir bash betiği kurun. Bu talimatı kullandım:

www.instructables.com/id/Raspberry-Pi-Laun…

6) Portre modunda olmasını istiyorsanız, ekran döndürme için doğru değeri ayarlayın. Herhangi bir OpenGL sürücüsünün AÇIK OLMADIĞINDAN emin olun (veya döndürme yok sayılır… bu hata ayıklamak için hayatımın birkaç saatine mal oldu:))

www.ceos3c.com/open-source/rotate-screen-r…

7) Frame klasörünü paylaşmak için Samba'yı kurun. Bunu eskiden ne yaptığımı hatırlamıyorum ama bu adımlar iyi yazılmış;

everyday-tech.com/samba-share-on-your-rasp…

8) Pi'yi uzaktan yönetebilmek için VNC ve SSH'yi yapılandırın (daha sonra yönetmek için klavyelerle dolaşmak istemiyorsanız bunu şiddetle tavsiye edin)

Bu noktada python betiği açılışta başlamalı, pi'yi uzaktan yönetebilmeli, python dosyasını çalıştırabilmeli ve resimlerin ve videoların yüklendiğini görebilmelisiniz.

9) İsteğe bağlı bir bileşen… muhtemelen IP statikini ayarlamak isteyeceksiniz. Ana bilgisayar adını kesinlikle benzersiz bir şeye ayarlayın, böylece cihaza ping atmak/kontrol için web sayfasına gitmek için kullanabilirsiniz.

Tonlarca soru varsa, bunu daha fazla doldurabilirim. Görüntüyü çoğu insanın tüm bu adımlardan tekrar geçmek zorunda kalmaması için yarattım!

Şimdi kodu biraz gözden geçirelim, böylece isterseniz nerede düzenleyeceğinizi bileceksiniz…

Adım 5: Adım 6: Kod Açıklaması

Kod şurada:

github.com/Geektoolkit/Dynaframe

Hepsini ele almayacağım, ancak bazı önemli kısımlara dikkat çekmek istiyorum:

'show.py' içinde MQTT sunucusunu kuran kısımlar vardır. Ekranlarınızı kontrol etmek için ev otomasyonunu kullanacaksanız bunları yapılandırmak isteyeceksiniz. Bu kısım en üsttedir, bu nedenle düzenlemesi kolaydır ve şöyle görünür:

# kullanmadan önce özelleştirin! brokeraddress = "test.mosquitto.org" # bunu bir test komisyoncusu olarak kullanabilir veya msoquitto'yu dahili bir komisyoncu olarak bir rpi'ye kurabilirsiniz

mqttclient = "dynaframe1" # her kare için benzersiz olmalıdır…

komisyoncu = 1883

abonelikadı = "jfarro/house/makerspace/display" # bu, benzersiz ve çerçevenizin nerede olduğunu açıklayan bir dize olmalıdır

Kodda bahsedilen "Web sayfası gövdesi", bir tarayıcı çerçeveye gittiğinde geri gönderilen uzun bir dizedir. Bu dizide, sunulan web sayfasını daha güzel olacak şekilde yapılandırmak istiyorsanız düzenlenmesi gereken CSS'yi göreceksiniz:) Bazen tasarımda harika değilim. Kesinlikle geliştirilebilir.

Bu değişken:

refreshInterval = 30 # bir slayt gösterisindeki görüntüler arasındaki saniye sayısı

görüntülerin gösterilme süresini nasıl ayarladığınızdır. Sayfaların her 30 saniyede bir çevrilmesini istemiyorsanız, yapılandırmak isteyebileceğiniz şeylerden biri (yine de bunu canlandırıcı buluyorum… Her zaman yeni resimlerim ortaya çıkıyor!)

Tamam, bunlar 'sizin' yapmak için düzenlemek isteyeceğiniz kodun ana bölümleridir. Tamamen isteğe bağlı ama belirtmek istedim.

Adım 6: Adım 7: Sırada Ne Var? ve Bazı İpuçları…

Adım 7: Sırada Ne Var? ve Bazı İpuçları…
Adım 7: Sırada Ne Var? ve Bazı İpuçları…
Adım 7: Sırada Ne Var? ve Bazı İpuçları…
Adım 7: Sırada Ne Var? ve Bazı İpuçları…

Umarım her şey yolunda gitmiştir ve bunu yapıyorsanız, videoları ve bir sürü başka gadget'ı ve hileyi destekleyen, çalışan bir ahududu pi destekli dijital fotoğraf çerçeveniz var! Hâlâ buna özellikler eklemek için çalışıyorum..sonraki Resimler, RSS beslemeleri veya trafik/hava durumu gibi web siteleri için web url'lerini kullanma yeteneği eklemek istiyorum. Bunların bir anda işlevsel hale gelebilen sanat gösterileri olduğunu görebiliyordum… hatta anlık oyun / öykünme ekranları (bir Bluetooth denetleyicisi aracılığıyla) haline geldi. Bir şeyler ekledikçe bu talimatı güncelleyeceğim.

Bazı hızlı ipuçları:

1) Bu, 1080p'de çalışacak şekilde tasarlanmıştır. 4K harika olurdu, ama sonra her şeyin maliyetini yükseltiyor ve ben 150$'lık bir hedef fiyatla çalışıyordum (biraz kaçırdım)

2) Bunu oluşturduğumda Raspberry Pi 3 A+ çıkmamıştı. Çok daha uygun bir modül ve fiyatı 10 dolar azaltıyor!

3) 1080p için tasarlandığından, tüm resimler en iyi şekilde 16:9 (veya portre ise 9:16) ve 1080p olarak yeniden boyutlandırırsanız çalışır. En keskin görüntüleri buradan elde edersiniz

4) Hareket eden (bunun gerçekten parladığı) mükemmel eğlenceli içerik oluşturmak için Werble (iPhone) veya Plotaverse (veya Enlight'ın paketini) kullanabilirsiniz. Temel olarak, 'plotoagraph' ve 'cinemagraph' için arama yaparsanız, bunlar için onları gerçekten parlatan harika içerikler oluşturabilirsiniz.

5) 9:16 / 1080p resim aramak sizi cep telefonları için arka plan duvar kağıdı tasarlayan bazı sitelere götürebilir… bu harika bir sanat kaynağıdır. DeviantArt da muhteşemdi.

6) Youtube'da 1080x1920 için arama yaparsanız, hemen bu karelerde iyi çalışan bazı video içeriği bulacaksınız!

Bence şimdilik bu kadar. Gittikçe eklemeye devam edeceğim. Umarım yaptığım videoları ve burada paylaştıklarımı görebilirsin… bunlar IMO'nun tüm fotoğraf çerçevelerinden bir adım ötede! Teşekkürler ve bir dahaki sefere kadar…

Eğer bundan hoşlanıyorsanız, lütfen 'remix' yarışması için bana oy vermeyi düşünün!

Önerilen: