İçindekiler:

Işık Anahtarı: 7 Adım
Işık Anahtarı: 7 Adım

Video: Işık Anahtarı: 7 Adım

Video: Işık Anahtarı: 7 Adım
Video: Kapıyı Kapat Boynuma Vuruyor 2024, Kasım
Anonim
Işık anahtarı
Işık anahtarı

Bu projede, sonunda ek bir bonus ile tamamen kablosuz bir ışık kontrol sisteminin nasıl oluşturulacağını örnekleyeceğim. Tam eğitim için takip edin.

Gereksinimler:

- Raspberry Pi (herhangi bir lezzet iyidir ama ben 3B+ modelini kullandım)

- İki adet 2n2222 transistör (yanlışlıkla birkaç kısa devre yapma olasılığınız yüksek olduğundan en az beş tane satın almanızı öneririm)

- Erkek-Erkek ve Erkek-Dişi atlama kabloları

- Ekmek tahtası

- (isteğe bağlı ancak önerilir) Breadboard 5V güç kaynağı

- Her 1k ve 10k dirençten ikisi

- Çift Röle modülü

- İki eski ev lambası veya diğer aydınlatma cihazları (akkor ampuller test sırasında yanma eğiliminde olduğundan led ampuller kullanın)

- Birleştirme için koli bandı ve kablo kesici

Adım 1: Sunucuyu ve Raspberry Pi Üzerindeki Bağımlılıkları Ayarlama

Projem için NGiNX kullandım, ancak istediğiniz sunucuyu (Apache2, vb.) Paket yöneticisi ile vanilya kurulumu gayet iyi, kendi kaynağımızı veya bunun gibi bir şeyi derlemeye gerek yok. Ayrıca PHP, Python3 ve Composer'a da ihtiyacımız olacak.

- PI'nize SSH yazın ve $sudo nano /etc/dhcpcd.conf yazın

- Statik IP parametrelerini yapılandırın

- PI'nizi yeniden başlatın

- Tarayıcınızın adres çubuğuna {the_ip_you_chose} yazarak her şeyin çalışıp çalışmadığını kontrol edin (nginx'in karşılama sayfasını görmelisiniz)

Adım 2: NGiNX için Web Çerçevesini ve Yapılandırmasını Kurun

Mobil veya masaüstü tarayıcımızdan erişebileceğimiz bir web sitesine sahip olmak istiyoruz ve bu eğitimin kapsamı olmayan düz php/html kodu yazmaktan kurtulmak için bunun yerine temel işlemleri yapmak için Yii2 adlı bir PHP çerçevesi kullanacağız. bizim için yönlendirme ve şekillendirme.

- Yii2 kurulum sayfasına gidin ve /var/www/html/light-switch içine kurmak için besteciyi kullanın

- Sunucu için yapılandırma dosyamızı henüz koymadığımız için henüz bir şey görmeyeceğiz.

- Dosyayı (varsayılan) bu adıma ekledim

- Bu çerçeveyle olduğu gibi kullanın veya farklı bir arka uç tercih ediyorsanız çevrimiçi olarak başka bir tane arayın

- Bu dosyayı /etc/nginx/sites-available/ içine koymalısınız.

- NGiNX'i $sudo systemctl yeniden yükleme nginx ile yeniden yükleyin

- Bir şey çalışmıyorsa, yapılandırma dosyalarında hata ayıklamak için $sudo nginx -t komutunu çalıştırabilirsiniz.

Adım 3: GPIO ile Etkileşime Girecek Python Komut Dosyalarını Ayarlama

PHP, GPIO API gibi çalışma zamanı tipi betiklerle o kadar iyi oynamayı sevmediğinden ve python web uygulamalarıyla pek uyumlu olmadığından, her birini avantajlı bağlamlarında kullanacağız. Bu adıma ek olarak, pimlerle etkileşime giren ve ışıkları tetikleyen gerekli 4 python betiğini bulacaksınız. Komut dosyalarını istediğiniz yere yerleştirin, ancak bir sonraki adımda şeylerin php tarafını kurarken ihtiyacımız olacağından konumlarını not edin.

Adım 4: Şeylerin Php Tarafını Bitirmek

Şeylerin Php Tarafını Bitirmek
Şeylerin Php Tarafını Bitirmek

Tek yapmamız gereken, ana düzenden bazı varsayılan yolları ve sayfaları kaldırmak ve SiteController'a birkaç satır kod ve ayrıca actionLightswitch() adlı yeni bir yöntem eklemek. Bundan sonra, GPIO pinlerine komut verecek olan önceki adımdaki python betiklerini yürütecektir.

Adım 5: Devreyi Oluşturma

Devre Oluşturma
Devre Oluşturma
Devre Oluşturma
Devre Oluşturma
Devre Oluşturma
Devre Oluşturma
Devre Oluşturma
Devre Oluşturma

Bu özel röle modülünün doğası gereği (GND'ye bağlandığında değişir) devreyi transistörler kullanarak oluşturmamız gerekir. PI sadece akımın röle veri pinlerinden GND'ye akmasına izin verecek ve böylece bobini tetikleyecek ve lambalar için devreyi kapatacak olan transistörü açacaktır. Ekli resimlerdeki şemaları takip edin ve gitmeniz iyi olacak.

Bu sonraki kısım için, röleyi bağlama zamanı geldiğinden çok dikkatli olmalısınız. Önce her şeyi fişten çekin! Röle, bağlantı başına 3 bağlantı noktasına sahiptir. Cihaz kablolarımızı ortadakine ve üzerinde açık işareti olana bağlayacağız. Bakır iletkenleri ortaya çıkarmak için kabloyu dikkatlice birleştirin ve bunları yukarıda belirtilen röle bağlantı noktalarına takın. Artık alternatif akımla çalıştığımız için sıra önemli değil.

Adım 6: Son Test

Devrenizi ve atanmış pinleri en az iki kez kontrol edin ve ardından PI'yi güce bağlayın ve tarayıcının adres çubuğuna {the_chosen_ip} yazın. İlk sayfada iki anahtarımız olacak. Onlara tıklayın ve ışıkların açılıp kapanmasını izleyin.

7. Adım: Bonus Bölüm: Eski Okul Klaket Tetiği

Gereksinimler:

- herhangi bir usb mikrofon (yüksek kaliteli olması gerekmez)

- ALSA paketi (kurulum yöntemi dağıtımınıza göre değişiklik gösterecektir)

- PyAudio modülü

Ekli python betiğini kopyalayın ve mikrofonunuzu takın. PI'yi yeniden başlatın. Komut dosyasını yürütün ve konsol komut istemlerini izleyin. Mikrofona yaklaşın ve ellerinizi iki kez çırpın. Konsol çıkışında alkışların kaydedildiğini görmelisiniz ve başarılı olursa, 2 saniye sonra her iki ışık da yanacaktır.

Önerilen: