İçindekiler:

DIY SmartMirror: 6 Adım
DIY SmartMirror: 6 Adım

Video: DIY SmartMirror: 6 Adım

Video: DIY SmartMirror: 6 Adım
Video: How To: Make Your Own Smart Mirror! part 1 2024, Kasım
Anonim
DIY AkıllıAyna
DIY AkıllıAyna

Evet, çok akıllı.

Adım 1: İlk Tasarım ve Evrim

İlk Tasarım ve Evrim
İlk Tasarım ve Evrim

İlk fikrim, güne hazırlanırken ihtiyacınız olan her türlü bilgiyi gösterecek bir akıllı ayna oluşturmaktı. Hava durumu, haberler ve hisse senetleri, tasarıma dahil etmek için ilk fikirlerimdi. Ayrıca ekranı açmak ve size önemli bilgileri anlatmak için ses tanıma özelliğine sahip olmak istedim. Bu, bir sömestrde kapatılamayacak kadar derin bir tavşan deliği olduğunu kanıtladı, bu yüzden neredeyse hemen ses tanıma fikrini ortadan kaldırdım.

Orijinal fikir, ekranı sürmek ve internetten veri almak için Pi veya Arduino gibi bir tür tahtaya sahipti. Biraz araştırmadan sonra 7' LCD ekran ve ekran için dekoderli Raspberry Pi3'e karar verdim. Bundan sonra, bana hava durumuyla ilgili tüm bilgileri (umarım ücretsiz olarak) ve bilgileri görüntülemek için bir GUI'yi vermek için uygun bir API bulmam gerekiyordu. Kodlamaya başladığımda, zaman kısıtlaması içinde hava durumu dışında özellikler eklemenin mümkün olmayacağını fark ettim.

Son tasarımım, Raspberry Pi3 ile iletişim kuran bir kod çözücüye bağlı ekran. Pi, OpenWeatherMap adlı bir API ile hava durumunu alan ve GUI Kivy'yi kullanarak verileri görüntüleyen bir python betiği çalıştırır.

2. Adım: Araştırma

Araştırma
Araştırma

Zaten konuyla ilgili gördüğüm birçok Youtube eğitiminden kafamda akıllı ayna yapma fikri vardı. Bu insanların çoğu, yerleşik bir GUI'ye sahip olmak için ödemek zorunda oldukları bir API kullandılar. Ödemek istemedim ve kendin kodlamamak hile yapmak gibi geldi.

Bu projeyi araştırmak nispeten kolaydı. Proje için ihtiyacım olan net bir malzeme setim vardı: bir ekran, ekranı çalıştıracak bir bilgisayar ve bir ayna.

Raspberry Pi3'ü seçtim çünkü içinde birkaç tane olan problemlerle karşılaşırsam bakabileceğim, bitmiş projelerden oluşan geniş bir kütüphanesi vardı. Seçtiğim ekran, bir aynanın profilinin arkasına sığacak kadar ince bulabildiğim en uygun fiyatlı ve en büyük ekrandı. Uygun boyutta ve ucuza bulamadığım için kendi aynamı yapmak zorunda kaldım.

Sonuç olarak, büyük olasılıkla alt profesyonel bir görünüme sahip olduğunuz sürece, bunu kendiniz yapmayı çok daha ucuz buldum.

Adım 3: Zorluklar ve Yardım

Zorluklar ve Yardım
Zorluklar ve Yardım

İlk zorluklardan biri benim açımdan bir gaftı. Ekrandan pin çıkışını ve Pi'mdeki girişi kontrol edemedim. Pin çıkışı 40 ama Pi girişi 32 idi. Ama neyse ki internette ucuz olan ve Pi üzerindeki baskıyı azaltan bir kod çözücü buldum, bu da bir artı. Tüm parçaları sipariş etmeden önce kontrol etseydim, nakliye için bana fazladan birkaç dolara mal oldu.

Karşılaştığım bir sonraki engel bir GUI bulmaktı. Bunlardan birinin ne olduğunu bile bilmiyordum, Grafik Kullanıcı Arayüzü. Şans eseri, profesörüm Chuck'ın nereden başlayacağına dair bazı önerileri vardı. Bana kendi başıma karar vermem gereken birkaç öneride bulundu. Bazı çevrimiçi önerilerin de yardımıyla oldukça hızlı bir şekilde sonuca vardım.

M5'in bu sınıftaki öğrenmeyi kolaylaştırabileceğini düşündüğüm bir yol, personel panosunda gerçekten çok şey bildiklerine dair bir açıklama yapmaktır. Her kişinin altında 'Python' veya 'RaspberryPi' gibi örnekler, sorularım olduğunda kime gideceğimi bulmama yardımcı olur. Çoğu zaman en yakınımdaki kişiyi bulurdum ve "Oof, gerçekten bilmiyorum. Ama, falanca kesinlikle olur" gibi bir şeyler söylerlerdi. O zaman o kişiyi bulur ve umarım bir cevap alırdım. Tahtaya gidip sorunumla ilgili herhangi bir beceri görüp görmediğimi görebilirsem, yardım almamda çok yardımcı olurdu.

4. Adım: Başarılar

En büyük başarılarımdan biri bu projenin yolculuğu ve tamamlanması. Bu, kendi başıma tamamlamam gereken ilk büyük proje ve proje ve zaman yönetimi alanında çok fazla öğrenme oldu. Tasarımdan uygulamaya geçiş süreci zordu ve planlamaya olan inancımı tazeledi. Parçaları araştırmaktan python kodunu verimli bir şekilde yapılandırmaya kadar, planlama ve organize tutma eylemi şu anda zordu. Ama bunu fark ettiğimde, oturdum ve planladım, ödev verildiği için veya iyi bir not almam gerektiği için değil, organik olarak gerekli olduğu sonucuna vardım.

En çok gurur duyduğum diğer başarılar, python'daki artan yeterliliğim ve GUI'ye girişimdir. Bu, şimdiye kadar kodladığım ilk GUI'ydi ve onunla birlikte dik bir öğrenme eğrisi vardı. Widget'ları (kivy 'nesneleri') ve bir GUI'nin genel yapısının nasıl çalıştığını öğrenmek bana yabancıydı. Artık kendimi daha iyi hissediyorum ve gelecekte diğer GUI'leri öğrenmek söz konusu olduğunda kesinlikle daha iyi durumdayım.

Adım 5: Çoğaltma

Ölçek ve hedeflerinize karar vermek için bu projeyi yeniden inşa etmek için yapacağım ilk şey.

Bir akıllı aynalı kendin yap tarzı yapmak istiyorsanız, tasarımımı takip edin, ancak yoldan ayrılmaktan çekinmeyin.

Sadece bitmiş bir proje istiyorsanız, tüm adımlarımı kopyalayabilirsiniz ve kodum Github'ımda var.

6. Adım: Yükseltmeler

İlk işim yeni bir ayna almak olacak. Benimki çalışıyor olsa da, uygulamamdan kaynaklanan kusurları var.

Ekrana ekleyeceğim bir sonraki şey, GUI'ye haber ve hisse senedi afişi gibi diğer fikirler ve muhtemelen tüm bilgileri sığdırmak için ekranı bir monitöre veya daha büyük LCD'ye yükseltmek.

Bütün bunlar tamamen olsaydı, son olarak, her zaman açık olmaması için hareket algılama veya uyku işlevi ekler veya yine ekranın her zaman açık olmaması için ses tanıma eklerdim.

Önerilen: