İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Uzun bir düşünme sürecinden sonra akıllı bir ayna yapma sonucuna vardım. Düzensiz bir uyku düzenine sahip olma alışkanlığım var, bu yüzden bu aynanın uyanma saatlerimi vb. kaydetmesine yardımcı olmak istedim. Bunu basit tutmak ve 3 sensör ve tabii ki arka aydınlatmayı uygulamak istedim.
Fikrimi oluşturma sürecinde size yol göstereceğim.
Gereçler
Sensörler
- Tek Telli Sıcaklık sensörü (DS18S20)
- DHT11 Nem ve Sıcaklık sensörü
- Kızılötesi hareket sensörü
Başka
- Ahududu Pi 3
- İki yönlü akrilik ayna.
- Bilgisayar ekranı
- Ahşap plakalar
- LED şerit
- LED şerit 120LED/m 5050
- HDMI kablosu
- Mosfetler IRFZ44N
- Breadboard'lar
- teller
- hafıza kartı
- 4, 7K, 1K, 2K Dirençler
Adım 1: Kablolama
Bu, gerekli sensörler ve dirençler ile kablolamadır. Bunu breadboard üzerinde kullanmak için 12V'luk bir powerjack'e ihtiyacımız var. Bu şemada bu aynı devre tahtasındadır, ancak gerçekte bunu ayrı devre tahtasında yapmak daha güvenlidir.
2. Adım: Veritabanı
Yapı
Veritabanı, verileri ileten 2 sensörün verilerini saklayabilir. Değer ve sensör kimliği ile birlikte ölçümü tanımlamak için benzersiz bir kimliğe sahiptir. Ölçüm zamanı da kaydedilir. Sensörler, onları ana tablolarında tanımlamak için yabancı bir tabloya sahiptir.
Yüklemek:
Bu veritabanını pi'ye yüklememiz gerekecek ama önce MariaDB'yi kurmamız gerekiyor.
sudo apt mariadb sunucusunu kurun
sonra:
mysql_secure_installation
Sadece enter'a basın. Ardından Y ve şifreyi 2 kez girin.
Tüm süreç için sadece Y tuşuna basın.
Sonra şunu yazın:
mysql -u kök -p
Bağlantı için şifrenizi girin.
Ardından veritabanını PI'ye yükleyin ve hazırsınız.
SQL veritabanımı burada bulabilirsiniz.
Adım 3: Ayna Oluşturma
Bu aynayı oluşturmak için MDF ahşabı kullandım. Önce aynayı koymak için bir kare, monitörü ve elektroniği arkaya koymak için bir kare daha yarattım. Aynayı daha fazla hareket etmesin diye yalıtımla tutturdum. 2 woos karesini birbirine yapıştırmak için ağaç tutkalı kullandım.
LED şeridi aynanın yanına tutturmak için bir delik açtım. LED şerit, izolasyon bandı ile yapıştırılmıştır.
Aynayı güzel bir sonuç için boyadım. Ayrıca bantla iyi uyum sağlar.
Monitörü 2 yönlü güçlü bantla bağladım. Neyse ki bu bir hataydı çünkü beyaz bandı aynadan görebilirsiniz. Aynanın geri kalanını siyah bantla bantladım, böylece ışık geçemezdi.
Breadboard'ları ve pi'yi monitörün arkasına yapıştırdım.
4. Adım: Kod
HTML, css ve javascript'i Visualstudio Code'da ve arka ucumu Python ile Pycharm'da kodladım.
Web sitemdeki canlı veriler için çok sayıda soket ve her gün ölçümler için birkaç alım kullandım. Ayna çalışırken o andaki sensör değerlerini ve yerel saati gösterecektir.
Kodumu burada bulabilirsiniz: GitHub Deposu
Adım 5: Mirror'ı PI'de Çalıştırma
Ekran
Ekranı yana doğru asmak için döndürmek için şuraya gitmeniz gerekir:
sudo nano /boot/config.txt
ve en alta şu satırı ekleyin:
display_rotate=1
Apaçi
apache web sunucusunu yükleme:
sudo apt apache2'yi yükleyin -y
Tüm ön uç dosyalarını filezilla ile /var/www/html/ dizinine yükleyin ve sebserver üzerinde çalışacaktır.
arka uç
Arka ucu rc.local'da otomatik olarak çalıştırın:
sudo nano /etc/rc.local
'Çıkış 0'dan önce aşağıdaki kod satırını ekleyin, ancak arka uç dosyanızın konumunu kullanın:
sudo python /home/gilles/mirror.py
Şimdi PI web sunucusunu çalıştırıyor ve başlangıçta arka uç.
Yansıtma sayfasını çalıştır
Şimdi pi'nin localhost'un html sayfasını tam ekranda çalıştırmasını istiyoruz (ayna sayfamız)
bu kodla istediğiniz yolda bir komut dosyası oluşturun:
#!/bin/bashsleep 20DISPLAY=:0 krom --noerrdialogs --kiosk https://localhost/mirror.html --incognito
Şimdi dosyayı kaydedin ve şuraya gidin:
sudo nano lxsession/LXDE-pi/otomatik başlatma
sonra bu kod satırını en alta ekleyin:
@sh script.sh
Ayna şimdi başlangıçta otomatik olarak çalışacak ve kendi akıllı aynanızı göreceksiniz!
Sadece ekrandaki IP adresine gidin ve web sitesine telefonunuzdan, dizüstü bilgisayarınızdan erişebilirsiniz…