İçindekiler:
Video: Raspberry Pi ile SmartHome: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Bu proje için bir web sitesi ve mobil tarafından çalıştırılabilen bir SmartHome yaptım. Bunun için Raspberry PI'yi veritabanı ve web sunucusu olarak kullanıyorum.
Gereçler
Bunu başlatmak istiyorsanız, birkaç şeye ihtiyacınız var:
- 5 beyaz led (5mm)
- 1 tek telli sıcaklık sensörü
- 1 LDR (ışığa bağlı direnç)
- 2 servo motor
- 1 microSD (Raspberry Pi için)
- 1 Breadboard güç kaynağı
- 1 Raspberry Pi 3 Model B+
- 3 Köpük plakalar
- 1 Step motor (5V)
- 1 RFID-RC522 okuyucu
- 8 direnç (220 Ohm)
- 1 direnç (10K Ohm)
- 2 ekmek tahtası
- 2 paket atlama teli
- 1 adet 16x2 LCD ekran
- 1 PCF8574AN
- 4 küçük pencere (3D baskılı)
- 1 kapı (3D baskılı)
- 2 büyük pencere (3D baskılı)
- 1 garaj kapısı (3D baskılı)
Tüm bunları satın almak için ihtiyacınız varsa, maksimum maliyet yaklaşık 150 € olacaktır.
Adım 1: Kablolama
Başlamanın en kolay yolu kablolamadır, böylece temel bilgilere zaten sahip olursunuz, bu yöntemle kodu yazarken her şeyin çalışıp çalışmadığını kolayca kontrol edebilirsiniz.
Bu sayede Raspberry Pi üzerinde her şeyi bağlamak için yeterli pininiz olup olmadığını görebilirsiniz. Bu durumda, LCD'mi daha az GPIO piniyle kontrol etmek için PCF8574AN'ı kullandım.
Şemayı çizmek için Fritzing kullandım. Kablolamalarınızı iyi organize edilmiş bir şekilde görüntüleyebileceğiniz kullanışlı bir programdır.
İkinci fotoğrafta da görebileceğiniz gibi çok fazla kablo var, bu yüzden yine de düzenli bir şekilde çalışmanız gerekiyor.
2. Adım: Muhafaza
Konut için duvar olarak köpük levhalar kullandım. Tahtaları istenilen şekillerde kesmek için bıçak kullandım. Pencereler, kapılar ve garaj kapısı 3D olarak basılmıştır. Tabii ki evi önceden çizdim, böylece hangi boyutları kullanmam gerektiğini biliyordum.
Evi çizmek için SketchUp'ı kullandım. Duvarları düz tutmak ve bir arada tutmak için tutkal tabancası kullandım,Fotoğraflarda görüyorsanız, pencere ve garaj kapısı yeterince sağlam olması için yapıştırıcı ile yapıştırılmıştır. Kara kutu 3. fotoğrafta her şeyin sağlam kalması için taşıdığım bir kutu var
3. Adım: Veritabanı
Öncelikle veritabanını Mysql Workbench kullanarak tasarlamanız gerekiyor. Bu başarılırsa, Raspberry Pi'ye Mysql veritabanını yüklemeniz gerekir.
Attığınız ilk adım, Pi'nizin güncel olup olmadığını kontrol etmektir. Aşağıdaki komutu kullanabilirsiniz:
sudo apt-get güncellemesi
ve
sudo apt-get yükseltme
Artık Mysql sunucusunu kurabilirsiniz:
sudo apt-get install mysql-server
Mysql sunucusu kuruluysa, Mysql istemcisini kurun
sudo apt-get install mysql-client
Şimdi sql sunucusuna şu komutla bakarsanız:
sudo mysql
Artık veritabanı kodunuzu sql workbench ve forward mühendisi ile.mwb dosyasını açarak içe aktarabilirsiniz. Kodu kopyalayıp Raspberry'den mysql içerisine yapıştırıyorsunuz. Veritabanı yapılır.
Kullanıcının tüm izinleri alması için kullanıcı adınızı tabloya eklemeniz yeterlidir.
akıllı evde* tüm ayrıcalıkları 'adınız' ile tanımlanan 'adınız'@'%' öğesine verin;
tabii ki şimdi masayı yenilemen gerekiyor
FLUSH AYRICALIKLARI;
Bunu kontrol etmek için basitçe deneyebilirsiniz:
akıllı ev kullanın;
historiek'ten * seçin;
Kullanıcı tablosunda kullanıcıların isimleri rozetleri ile birlikte gelir, buradan yeni kullanıcılar ekleyebilirsiniz. Cihazlar tablosunda tüm aktif sensörleri kimlikleriyle birlikte bulabilirsiniz. Tarihsel tablo, sıcaklık sensörü, garaj kapısının durumunu gösteren rozet ve daha fazlası gibi olan her şeyi gösterir.
4. Adım: Kurulum
Raspberry Pi'de imajı ayarlamak için Putty kullanabilirsiniz, bu ücretsiz bir programdır. Temel imaj dosyasını burada bulabilirsiniz:
Arayüzler
Elbette Pi'de bazı arayüzleri etkinleştirmeniz gerekiyor. İlk önce yapılandırma sayfasına gidin.
sudo raspi yapılandırması
Artık 1-Wire ve Spi kategorilerine gidebilir ve her ikisini de etkinleştirebilirsiniz. Sıcaklık sensörü için bunlara ihtiyacınız olacak.
Wifi
Pi'de wifi almak için sonraki adımları izleyin.
İlk önce root olarak giriş yapın
sudo-i
Ardından wifi ağınızın adını ve şifresini girin
wpa_passphrase="wifiname" "parola" >> /etc/wpa_supplicant/wpa_supplicant.conf
Ardından WPA istemcisine girin
wpa_cli
arayüzü seçin
arayüz wlan0
Şimdi yapılandırmayı yeniden yükleyin
yeniden yapılandırmak
Ve şimdi bağlı olup olmadığınızı kontrol edebilirsiniz
ip bir
Paketler
Yapılacak ilk şey, en son sürümleri güncellemektir.
sudo uygun güncelleme
Python için kuruyoruz ve Pi'nin doğru sürümü seçtiğinden emin oluyoruz
güncelleme alternatifleri --install /usr/bin/python python /usr/bin/python2.7 1güncelleme alternatifleri --install /usr/bin/python python /usr/bin/python3 2
Web sunucusunun Siteyi çalıştırabilmesi için Apache2'yi kurmamız gerekiyor.
sudo apt apache2'yi yükleyin -y
Bazı python paketlerinin de yüklenmesi gerekiyor
- şişe
- Şişe-Kors
- Flask-MySQL
- Şişe-SoketIO
- PyMySQL
- Python-soketIO
- istekler
- pip
- gpio
- Gevent
- Gevent-websocket
Bulunamayan bir paketle ilgili sorunlar varsa, üzerine sağ tıklayın ve yüklemesine izin verin.
Adım 5: Kod
arka uç
Backend için kodu python ile yazıyoruz ve yazmak için pycharm kullanıyoruz. Backend'den gelen yolları postacı ile kontrol etmek mümkün. Bu uygulama ile POST ve GET yöntemlerini kullanabilirsiniz. Arka uçta çoklu iş parçacığı kullandım, böylece her şey arka planda çalışıyor ve birlikte çalışabiliyor. Raspberry Pi'deki görüntüyü ayarlamak için Putty'yi kullanabilirsiniz, bu ücretsiz bir programdır.
başlangıç aşaması
Ön uçta ışıkları yakabilen, garaj portunu ve kapıyı açan birkaç düğme var. Javascript ve CSS kullanarak, aktif olduklarında butonların stili değişir. Ayrıca canlı bir sıcaklık ve geçmiş sıcaklıklara sahip bir grafik var. Kullanıcı sayfasında çeşitli kullanıcıları görebilir, ayrıca veritabanına bir kullanıcı ekleyebilir ve garaj kapısını en son kimin açıp kapattığını görebileceğiniz bir kullanıcı geçmişi vardır.
Ön uç ve arka uç için kodu şurada bulabilirsiniz:
github.com/NMCT-S2-Project-1/nmct-s2-proje…
Önerilen:
WS2812b Led Strip ile Raspberry Pi Üzerinde Hyperion ile OSMC Nasıl Kurulur: 8 Adım
WS2812b Led Strip ile Raspberry Pi Üzerinde Hyperion ile OSMC Nasıl Kurulur: Bazen çok iyi ingilizcem var, bazen hayır…Önce ilk şeyler. Bu benim ilk dersim ve ingilizce benim ana dilim değil, bu yüzden lütfen bana fazla yüklenme. Bu çerçevenin nasıl oluşturulacağı ile ilgili olmayacak, bu kolay. Kurulumla ilgili
Arduino İle Potansiyometre ile LED Parlaklığını Kontrol Etme: 3 Adım
Arduino İle Potansiyometre İle LED Parlaklığını Kontrol Etme: Bu projede, potansiyometre tarafından sağlanan değişken direnç kullanarak LED'in parlaklığını kontrol edeceğiz. Bu yeni başlayanlar için çok basit bir projedir ancak size potansiyometre ve LED çalışması hakkında daha fazla bilgi edinmek için gerekli olan birçok şeyi öğretecektir
Arduino ile SI4732 / SI4735 (FM / RDS, AM ve SSB) ile Tüm Bant Alıcı: 3 Adım
Arduino ile SI4732 / SI4735 (FM / RDS, AM ve SSB) ile Tüm Bant Alıcı: Tüm bant alıcı bir projedir. Si4734 Arduino Kütüphanesini kullanır. Bu kütüphanede 20'den fazla örnek var. RDS, yerel AM (MW) istasyonu, SW ve amatör radyo istasyonları (SSB) ile FM dinleyebilirsiniz. Tüm belgeler burada
Adım Adım Arduino Uno ile Akustik Kaldırma (8 adım): 8 Adım
Arduino Uno ile Akustik Kaldırma Adım Adım (8 adım): ultrasonik ses dönüştürücüler L298N erkek dc pinli Dc dişi adaptör güç kaynağı Arduino UNOBreadboardBu nasıl çalışır: İlk olarak, Arduino Uno'ya kod yüklersiniz (dijital ile donatılmış bir mikrodenetleyicidir) ve kodu dönüştürmek için analog bağlantı noktaları (C++)
ESP32 ile PWM - Arduino IDE ile ESP 32'de PWM ile LED Karartma: 6 Adım
ESP32 ile PWM | Arduino IDE ile ESP 32'de PWM ile LED Karartma: Bu talimatta Arduino IDE & PWM temel olarak herhangi bir MCU'dan analog çıkış üretmek için kullanılır ve bu analog çıkış 0V ile 3.3V (esp32 durumunda) arasında herhangi bir şey olabilir & itibaren