İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Yatak odamdaki ışık düğmesini yataktan kalkmadan kontrol etmek istedim, bu yüzden telefonumdan kontrol edebilmek istedim. Birkaç ekstra kısıtlamam vardı, herhangi bir cihazdan kolayca kontrol edebilmek istedim, ışık anahtarını normal şekilde kullanabilmek istedim ve daireyi kiraladığım için donanımda çok fazla değişiklik yapamadım.
Anahtarı hareket ettirecek bir servo motoru kontrol etmek için bir Raspberry Pi kullanmaya karar verdim. Raspberry Pi, yerel ağdayken erişebileceğim bir web sunucusu çalıştıracaktı. Bu sunucudaki web sitesindeki bağlantılar, anahtarı açıp kapatmama izin verir. Anahtarlama arasında servonun enerjisini keserek, ışık anahtarını da normal şekilde kullanabilirim.
Adım 1: Malzemeler
Ahududu Pi
Servo Motor:
smile.amazon.com/gp/product/B0015H2V72/ref…
Tel Somun
Jumper Telleri
Adım 2: Adım 1: Raspberry Pi'yi Kurun
Bunu yapmanın çeşitli yolları vardır. Kullanışlı bir HDMI monitörünüz ve usb klavyeniz varsa, bunun biraz daha kolay olduğunu düşünüyorum. Aksi takdirde "başsız" bir kurulum yapabilirsiniz.
İşte Windows'ta başsız bir kurulum yapmak için iyi bir eğitim:
www.circuitbasics.com/raspberry-pi-basics-…
Ve bir tane Mac için:
www.circuitbasics.com/raspberry-pi-basics-…
Ancak en kolayı, NOOBS ile bir SD kart yüklemek, bir monitöre ve klavyeye bağlıyken pi'yi başlatmak ve yapılandırmayı gözden geçirmektir. Bu eğitim bunu oldukça iyi açıklıyor:
www.circuitbasics.com/raspberry-pi-basics-…
Başsız bir kurulum yapmadıysanız, yine de SSH'yi hazırlamalısınız, bunun geri kalanı için gerekli. Bunu yapmak için Putty kullanıyorum. Buradan alın:
www.circuitbasics.com/raspberry-pi-basics-…
Pi'nizin ip adresini bilmiyorsanız gelişmiş IP tarayıcı kullanabilirsiniz:
Ardından, Host Name/IP address için girişe pi için IP adresini girin, bağlantı noktasını 22'de bırakın ve open'e tıklayın. Giriş yapmanız istenecektir.
3. Adım: 2. Adım: Web Sunucusunu Kurun
Web sunucusunu çalıştırmak için Apache kullandım. Bunu şu komutu kullanarak yükleyebilirsiniz:
sudo apt-get install apache2
Bu, varsayılan olarak, pi'nizin IP adresine gittiğinizde size bir açılış sayfası vermelidir. Aşağıdaki resimdeki gibi görünmelidir.
Adım 4: Adım 3: Web Sitesini Oluşturun
Varsayılan açılış sayfasını, servo motoru kontrol edebilen web sitenizle değiştirmek isteyeceksiniz. Değiştirilecek ilk şey dizin dosyasıdır. Web sitesi için dizin dosyanız /var/www/html içinde olmalıdır. Dosyayı oluşturmak için favori metin düzenleyicinizi kullanın veya dosyayı winscp gibi bir şey kullanarak buraya kopyalayın. Bu konuma "index.php" ekleyin, bu şekilde yükleyemediğim için kendiniz php dosyası olarak yeniden kaydetmeniz gerekecek. Bu php dosyası, biri "cgi-bin/off.py" ve diğeri "cgi-bin/on.py" olmak üzere iki bağlantıya sahip çok basit bir web sitesi oluşturur. Bunlar, servo motorun konumunu değiştiren iki python betiğidir.
Apache'nin çalışmasına izin vermesi için python komut dosyalarının farklı bir konuma yerleştirilmesi gerekir. Cgi-bin'e konmaları gerekecek. Pi üzerindeki komut dosyalarının çalışmasını sağlayan Ortak Ağ Geçidi Arayüzü'nde çalıştırılacaklarsa dosyaların gittiği yer burasıdır. /usr/lib/cgi-bin'e gidin ve "on.py" ve "off.py" adlı iki dosyayı ekleyin.
Adım 5: Adım 4: Motoru Monte Edin
Standart bir ışık anahtarını çevirebilecek şekilde bir servo monte etmek için başka bir üretici tarafından harika bir parça buldum. Bunun için 3d dosyaları burada bulabilirsiniz:
github.com/suyashkumar/smart-lights
Bu, parçalar bölümünde listelendiği gibi standart boyutlu bir servo içindir. Bunu yazdırın veya yazdırın ve ardından ışık anahtarınıza monte edin.
Adım 6: Adım 5: Pi ve Motoru bağlayın
Pi'ye mikro usb ile güç verdim. Başka bir mikro usb'yi ayırdım ve servo için toprak ve gücü buna bağladım. Pi ve servo arasında zemini paylaştım. Daha sonra servo için sinyal pinini Pi üzerindeki GPIO18'e bağladım.
7. Adım: 6. Adım: Komut Dosyalarını Yapılandırın
Sizin için Açık ve Kapalı'ya hangi değerlerin karşılık geldiğini bulmak için kurulumunuzla biraz oynamanız gerekecek. Pi, oldukça basit komutları kullanarak komut satırından gpio'ya yazmanıza izin verir. gpio 18'i bir pwm pini yapmak için şu komutu kullanın:
gpio -g modu 18 pwm
ardından pwm'yi şu şekilde yapılandırın:
gpio pwm-ms
gpio pwmc 192
gpio pwmr 2000
Bunlar sadece pwm frekans konfigürasyonu için makul değerlerdir. Sonraki kullanım:
gpio -g pwm 18 120
Açık ve kapalı konumu için uygun değerleri bulmak için 120'yi değiştirdiğiniz yer.
Kapalı ve açık için uygun değerleri bulduktan sonra, bu değerleri iki pozisyon için ilgili komut dosyalarında değiştirmek için bir metin düzenleyici kullanın. Değişikliğin yapılacağı yer resimde vurgulanmıştır.
Adım 8: Adım 7: Test Edin
Pi'nin ip adresine gidin, açık ve kapalı için bir bağlantı içeren bir web sayfası görmelisiniz. Her sayfanın diğer sayfa için de bir bağlantısı olacaktır.
Kolay erişim için telefonunuzun ana ekranına bu sayfalara bir kısayol eklemek kullanışlıdır.