Ahududu PI ve GPIO iğne: Bir web arayüzü üzerinden LED kontrol

Bu serinin son mesaj, Gördük GPIO iğne olduklarını ve hizmet etmek, ve LED'ler terminalden gücünü kontrol etmeyi; başlamadan önce Biz-si olmak installed GPIO kütüphaneler için Python, ve elektronik devre ve çalışma pişirme.
Web uygulaması HTML + PHP + GPIO aracılığıyla bir kaç LED'ler işlemek için Python.

Bu vesileyle biz yükler Apache web sunucusu, ve yazma öğrenmek HTML ve PHP kodu aynı LED denetlemek için, ya da daha fazla, bir web arayüzü.

gpioprogramar0pngYapmamız gereken ilk şey LAMBA web sunucusu yüklemek, Bu yüzden terminalde aşağıdaki komutları yazın:

#Actualizamos los repositorios y el software de la pi
usuario@maquina:~$ sudo apt-get update && sudo apt-get upgrade

#Instalamos LAMP
usuario@maquina:~$ sudo apt-get install apache2
usuario@maquina:~$ sudo apt-get install php5 libapache2-mod-php5
usuario@maquina:~$ sudo service apache2 restart

Şimdi biz olarak ekleyeceğiz sudoer kullanıcıya www-data, Bu seçenek daha güvenli ama kontrollü bir ortamda bir test yapıyoruz unutmayın değildir; bir ortam için Üretimde sudoer olarak Python komut dosyalarını çalıştırmak başka bir yol için görünmelidir.

Bu izinleri düzenlemek için, yazdı sudo visudo Terminal ve dosyanın sonunda Www-data için sudoer Ekle, Öyle olmalı.

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
pi ALL=(ALL) NOPASSWD: ALL
www-data ALL=(ALL) NOPASSWD: ALL

Her PIN GPIO Biz bir alt dizin oluşturmanız gerekir ve Python ile üç komut dosyaları; bir etkinleştirmek için, devre dışı bırakmak için başka bir, ve bizim LED yanıp sönüyor yapmak için son bir komut dosyası, İşte bir örnek ile PIN 4.

#!usr/bin/env/ python
## enciende.py
#Importamos la libreria y le cambiamos el nombre a GPIO
alma RPi.GPIO GPIO olarak
#Biz istiyoruz numaralandırma sistemini kurmak, 
#Bu durumda sistem BCM
GPIO.setmode(GPIO. BCM)
#GPIO PIN yapılandırma 4 bir çıktı
GPIO.setup(4, GPIO. OUT)
#Biz yol üzerinde açmak
GPIO.output(4, GPIO. YÜKSEK)
#!usr/bin/env/ python
## apaga.py
#Biz Kütüphane ithalat ve GPIO için onun adını değiştirmek
alma RPi.GPIO GPIO olarak
#Biz istiyoruz numaralandırma sistemini kurmak, 
#Bu durumda sistem BCM
GPIO.setmode(GPIO. BCM)
#GPIO PIN yapılandırma 4 bir çıktı
GPIO.setup(4, GPIO. OUT)
#LED devre dışı
GPIO.output(4, GPIO. DÜŞÜK)
#Ve biz GPIO kurtarmak
GPIO.cleanup()
#!usr/bin/env/ python
## parpadea.py
#Biz Kütüphane ithalat ve GPIO için onun adını değiştirmek
alma RPi.GPIO GPIO olarak

#Gecikmeler için gerekli
alma zamanı

#Biz istiyoruz numaralandırma sistemini kurmak, 
#Bu durumda sistem BCM
GPIO.setmode(GPIO. BCM)

#GPIO PIN yapılandırma 4 bir çıktı
GPIO.setup(4, GPIO. OUT)

#Açmak ve led 5 kez
Ben Aralık(0,5):

        GPIO.output(4, GPIO. YÜKSEK)
        Time.Sleep(1)(1)
        GPIO.output(4, GPIO. DÜŞÜK)
        Time.Sleep(1)(1)

#Ve biz GPIO kurtarmak
GPIO.cleanup()

Şimdi bizim giriş sayfası oluşturmak için zamanı HTML ve PHP, biz-ecek sıkıştırma-komut dosyalarını çalıştırmak için düğmeler içerir Python bir web arayüzü, daha sonra göreceğiz nasıl son hiyerarşisi.

<html>
 <head>
                        <!--index.php--> 
 </head>
 <body>

  <!--GPIO17--> 
  <form action="" method="post">
   GPIO 17&nbsp;<input type="submit" name="encender17" value="Encender">
   <input type="submit" name="apagar17" value="Apagar">
   <input type="submit" name="parpadear17" value="Parpadear">

 <br></br>

  <!--GPIO27--> 
  <form action="" method="post">
   GPIO 27&nbsp;<input type="submit" name="encender27" value="Encender">
   <input type="submit" name="apagar27" value="Apagar">
   <input type="submit" name="parpadear27" value="Parpadear">

 <br></br>

  <!--GPIO4--> 
  <form action="" method="post">
   GPIO 04&nbsp;<input type="submit" name="encender4" value="Encender">
   <input type="submit" name="apagar4" value="Apagar">
   <input type="submit" name="parpadear4" value="Parpadear">

 <br></br>

  <!--GPIO22--> 
  <form action="" method="post">
   GPIO 22&nbsp;<input type="submit" name="encender22" value="Encender">
   <input type="submit" name="apagar22" value="Apagar">
   <input type="submit" name="parpadear22" value="Parpadear">

 </body>
</html>

<?php

// Funciones PHP del pin GPIO 17

  if ($_POST[encender17]) { 
   $a- exec("sudo python /var/www/leds/gpio/17/enciende.py");
   echo $a;
  }

  if ($_POST[apagar17]) { 
   $a- exec("sudo python /var/www/leds/gpio/17/apaga.py");
   echo $a;
  }

  if ($_POST[parpadear17]) { 
   $a- exec("sudo python /var/www/leds/gpio/17/parpadea.py");
   echo $a;
  }

// Fin de las funciónes del pin GPIO 17


// Funciones PHP del pin GPIO 27

  if ($_POST[encender27]) { 
   $a- exec("sudo python /var/www/leds/gpio/27/enciende.py");
   echo $a;
  }

  if ($_POST[apagar27]) { 
   $a- exec("sudo python /var/www/leds/gpio/27/apaga.py");
   echo $a;
  }

  if ($_POST[parpadear27]) { 
   $a- exec("sudo python /var/www/leds/gpio/27/parpadea.py");
   echo $a;
  }

// Fin de las funciónes del pin GPIO 27


// Funciones PHP del pin GPIO 4

  if ($_POST[encender4]) { 
   $a- exec("sudo python /var/www/leds/gpio/4/enciende.py");
   echo $a;
  }

  if ($_POST[apagar4]) { 
   $a- exec("sudo python /var/www/leds/gpio/4/apaga.py");
   echo $a;
  }

  if ($_POST[parpadear4]) { 
   $a- exec("sudo python /var/www/leds/gpio/4/parpadea.py");
   echo $a;
  }

// Fin de las funciónes del pin GPIO 4


// Funciones PHP del pin GPIO 22

  if ($_POST[encender22]) { 
   $a- exec("sudo python /var/www/leds/gpio/22/enciende.py");
   echo $a;
  }

  if ($_POST[apagar22]) { 
   $a- exec("sudo python /var/www/leds/gpio/22/apaga.py");
   echo $a;
  }

  if ($_POST[parpadear22]) { 
   $a- exec("sudo python /var/www/leds/ejecgpio/22/parpadea.py");
   echo $a;
  }

// Fin de las funciónes del pin GPIO 22

?>

Bu grupladığınızda aynı sayfada Sanki bir sayfa oluşturma PHP Her seçenek için, çalıştırmak için komut dosyası sayfa için gönderildi (boş bir sayfa); Şimdi bu kodu çalıştırın ve aynı sayfada kalır.

Sonunda Aşağıdaki hiyerarşi elde etmek gerekir web sunucusu alt dizin içinde /var/www.

Ekran görüntüsü 2014-10-05 00:06:52Senin gibi beni takip edebilirsiniz Eğer Twitter, Facebook, Google +, LinkedIn, ya da bu yayın altında düğmeleri ile paylaşın, Eğer herhangi bir sorunuz veya öneriniz lütfen yorum çekinmeyin..

Bize daha fazla okuyucu ulaşmak için yardım Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

71 üzerine düşünceler"Ahududu PI ve GPIO iğne: Bir web arayüzü üzerinden LED kontrol

  1. İyi, Internet çözümleri ev otomasyon baktıktan sonra, Sisteminiz tarafından karar, de maruz görünüyor.
    Buna rağmen ve yumuşak nil benim durumumda nedeniyle. Benden şüphe ediyor, Keşke onları çözmek olabilir, Ben pek çok test ve hiçbir şey yapıyorum, Anlamıyorum….:)
    açıklamak tüm adımlarını gerçekleştirin ve macun ile terminalden GPIO yönetme, Ama web python komut etkinleştirmek.
    /Val/www html sayfasında yapmanız gereken (index.html) Öyleyse hizmet ben apache. Web sitesi burada eğer yerleştirerek düğmeleri beni bırak, php komut dosyası yürütmek değil ama. Sayfa index.php, içinde koymak değil.
    Müteessir sıkıntı ve teşekkür ederim.

      • Bu kadar çabuk cevap verdiğiniz için teşekkürler, Evet sen koymak dosya izinlerini vermek için adım yaptım, İndex.php sayfa ile karıştı, GPIO dizin asmak, Eğer /val/www içinde koymak sadece web üzerinde düğme görmek….HTML'de!…index.html, PHP komut dosyası yürütmek değil ama. Bu GPIO dizin asmak index.php koymak gerekir?

        • Eğer yakından bakarsanız, index.php /var/www/leds 🙂 asmak eğer hareketsiz does değil iş, Bu makaleye açıklama ekleyin ve bakmak.

          /Var/ www/index.php cuelgas bu yönde göreceksiniz, ancak hiçbir şey çalışmaz:

          http://ipdelapi

          /Var/www/leds/will asmak düzgün ama bu yol beri çalışıyorsanız:

          http://ipdelapi/leds

          Umarım bu sizin şüphe giderir ve bu çok heyecan verici bir dünya taşıyabilirsiniz.

          • İyi, Adam yukarıdaki gibi aynı sorun var.

            Benim index.php /var/www/html/index.html asmak
            , Eğer benim dizin HTML'den almak orada gösterilmemiştir, Ama orada sahip bir sorunum yok, Benim sorunum ne zaman düğmesini nabız ve bana kese değil koşmak geliyor.

            PD: Ona her şeyi ve izin verdim

            Cevabınız için teşekkür ederim.
            Bir tebrik

            J.G.

  2. İyi, iş beni çok hizmet vermektedir, Sen bir makinasın!
    Web'den birden fazla LED denetlemek için otomasyon sistemi yapmaya çalışıyorum ama değil hafifletmek olabilir bir sorun var.
    GPIO I lüzum harekete geçirmek temasıdır, Onları harekete geçirmek ve terminalden devre dışı bırakın, 192.168.X.X/leds/ aynı ağa bağlı başka bir PC'ye bağlamak ve Web sitesi iyi görünüyor, Menü ev kontrolü için mükemmel görünüyor, Ancak LED'ler yanıt, Ive'güvenilir aktif ve pasif tarafından, Ben yapıyorum bir şey yanlış…
    Söyleyebileceğim tek şey sen sayfasının kaynak kodunu görüntüleme ve yalnızca html kodunu gösterir, PHP görünmüyor, ya da değil meli var olmak değil.
    Sanırım bir şey PHP olabilir ama ben çünkü bir test PHP denedim ve o does o su kuyusu çok ikna olmadım, Ben umutsuz lol değilim

    • Merhaba John,

      Bana bu kadar benim makaleler 🙂 her zaman vardır yararı olabilir alegro olumlu yorumlar hoş geldiniz.

      Tarayıcıdaki tüm PHP kodu HTML olarak görüntülenir, Zamanda ve dinamik olarak PHP işlevi bu yana tarayıcıda servis edilir web sayfaları oluşturmak.

      LED'ler yaktı Eğer doğrudan Python komut dosyalarını çalıştırma? doğru şeyi buradan test başlangıç olacağını ve ileriye gitmek.

  3. Hızlı cevap için teşekkürler!
    Nihayet ahududu yeniden biçimlendirmek, I izlemek belgili tanımlık merdiven bir daha ve her şey güzel çalışıyor, Bu başarısız olabilir olmamak.
    Yine de dikkat çekmek için teşekkürler.
    Bir tebrik

    • Eyvallah için pay sizin şüphe, Son olarak ayarladı için memnunum..

      Bir şey senin ahududu yanı sıra formatı değişti, Örneğin transformatör microUSB?

      • Evet, Ben aldığımda ben onu ve böylece daha hızlı çalışacak hız mikro bir lavabo koymak, Ama ben de çok fark değişim.
        Bunun törpülemek için değiştirmek tek şey olduğunu.

        • Merhaba John, Tekrar burada okumak mutluyum.

          Prensip olarak bu açıdan Overclock etkileyen yok, Ama herhangi bir yapılandırma olabilir; Şimdi bu çalıştığınız bir Raspbian temizlik sorunları üretimde olduktan sonra vermek için döndürür, Şimdi eğer bu sorunun kökenine bulmanızı tavsiye ederim.

          Sen-ecek duyuru içinde fazla bilgi işlem gücü gerektiren belirli görevleri göre Overclock değiştirmek, Ancak Ethernet bağlantı noktası gibi bazı faktörler şişe-kullanan boyun göre devam edecek.

          Ahududu PI B modelleri mi gözden görebilirsiniz, B + ve B2 aşağıdaki bağlantı, tam performans testleri ile:

          http://www.peatonet.com/raspberry-pi-y-los-pines-gpio-controlando-el-led-desde-una-interfaz-web/

          Ben yararlı olacağını umuyoruz, 🙂 görüşmek üzere

  4. Merhaba, Ben küçük bir soru/sorun. Zil sesiyle bir led yerine bağlamak istiyorum, Ama önce onunla bir yol öğrenmek için denemek istiyorum. Bir index.html ve diğer .php yapmak için gerekli olan?
    Ben gpio4 için bağlı led var, ve ben bir on.py komut dosyası ve diğer off.py klasörün içinde var 4. Mükemmel çalışma konsol.
    ve o-değil izin vermek beni çünkü index.html koymak değil, Ama sadece için işlevsellik yol açtı 4.

    Umarım bana yardımcı olabilir, Facebook profilinizi ziyaret ettim ve ahududu Pi sayısının hem de umarım bir gün senin de bildiğin gibi. Bir tebrik ve teşekkür.

  5. Bir web PHP HTML içerebilir hangi sadece bir index.php gerekir tarafından

    Eğer Python bir HTML dosyasındaki komut çalıştırmak için PHP komutları koymak, -ecek değil koşmak.

    Şimdi bu terminal çalışır, Sadece Bu öğreticinin index.php duyuyor, diğer GPIO ortadan kaldırmak ve yalnızca bırakarak 4 Sen kullanmaktır; ve çalışması gerekir.

    Eğer dosyaları düzenlemek değil, / var/www kesinlikle izniyle olacak, Bu eğitimde çözüm ve o-meli iş, Yorum yok ve ben sana yardım etmeye çalışacaktır.

  6. Merhaba, Burada başka bir soru koymak almaya gidiyorum, Eğer sen ya da kimse bana bir kablo. Bu komut dosyası var ve bir kez yeniden tarihi ile klasörü silmek istiyor musunuz, ve beni ilgilendiren, yakalar bir x-boyutu miktarını geldiğinde bunu nasıl yapacağımı biliyorum, tüm var olmak silmek veya yeniden RPi. Bir tebrik teşekkürler.

    #! /bin/sh
    # /etc/init.d/motionStartup
    #

    # Her zaman bazı şeyler
    #dokunmatik /var/lock/motionStartup
    Logger - s “MotionStartup adlı komut dosyası”

    # Sistem tarafından istendiğinde belirli işlevleri gerçekleştirmek
    dava “$1” içinde
    Başlat)
    Logger - s “Başlatan komut dosyası motionStartup”
    ZAMAN DAMGASI = $(Tarih + %m %d %H %M %S ve % | SED's / / / g') # Boşluk
    Logger - s “Komut dosyası motionStartup $TIMESTAMP”
    sudo mkdir/motiontmp / $ zaman damgası || Logger - s “Mkdir başlamak yanlışlık”
    / motiontmp/hareket bulmak /. -f - boyutu yazın 0 -print0 - silmek
    / motiontmp/hareket bulmak /. -MaxDepth 1 -türü f | \
    XARGS - BEN '{}’ sudo mv {} /motiontmp / $TIMESTAMP
    ;;
    Dur)
    Logger - s “Komut dosyası motionStartup durdu”
    ;;
    *)
    yankı “Kullanım: /etc/init.d/motionStartup {Başlat|Dur}”
    çıkış 1
    ;;
    ESAC

    çıkış 0

  7. Betiğinizin başında bu satır eklerseniz, bir şey yapmadan önce bu komut dosyasını çalıştırmak her zaman tüm klasörleri içinde/motiontmp silecek /

    sudo rm - rf/motiontmp / *

    Belirli bir boyuta ulaştığında silmek eğe ile ilgili olarak, sen-ebil denemek belgili tanımlık buyurmak bitiştirme df - dizin disk kullanımını gösteren h, veya bir bölümü:

    DF - s /motiontmp

    Wc ya da bu sadece MB veya kullanılan GB atıfta ifade okur bu yüzden sed gibi başka bir komutu ile, Eğer bölümü programı nihayet ile N daha büyük sonucudur, RM açıklanan komutunu çalıştırın.

    • Mükemmel klasörleri silmek için, Ama sonra…
      Üzgünüm ama biraz yeniyim ve kayboldum, Bu örnek için ne zaman olur gibi dizin/motiontmp/hareket ulaşır / 5 Gigas? Teşekkür ederim selamlar.

  8. Müteessir birçok mesaj takip ettim ama güncelleme dışarı bulma kulüpler gibi. Böyle bir şey işe yarayabilir?

    #! /bin/sh
    # /etc/init.d/motionStartup
    #

    boyutu = du - sh /motiontmp

    okuyun “boyutu”

    Eğer [ “$boyutu” > “2048000Hedef” ]; o zaman

    sudo rm - rf/motiontmp / *

    başka

    Logger - s “MotionStartup adlı komut dosyası”

    # Sistem tarafından istendiğinde belirli işlevleri gerçekleştirmek
    dava “$1” içinde
    Başlat)
    Logger - s “Başlatan komut dosyası motionStartup”
    ZAMAN DAMGASI = $(Tarih + %m %d %H %M %S ve % | SED's / / / g') # Boşluk
    Logger - s “Komut dosyası motionStartup $TIMESTAMP”
    sudo mkdir/motiontmp / $ zaman damgası || Logger - s “Mkdir başlamak yanlışlık”
    / motiontmp/hareket bulmak /. -f - boyutu yazın 0 -print0 - silmek
    / motiontmp/hareket bulmak /. -MaxDepth 1 -türü f | \
    XARGS - BEN '{}’ sudo mv {} /motiontmp / $TIMESTAMP
    ;;
    Dur)
    Logger - s “Komut dosyası motionStartup durdu”
    ;;
    *)
    yankı “Kullanım: /etc/init.d/motionStartup {Başlat|Dur}”
    çıkış 1
    ;;
    ESAC

    çıkış 0

    Fi

  9. Merhaba böyle bir arkadaş, Üzgünüz, örnek izleyin ve led yanıyor, sorun yok, Ancak ne zaman sen tıkırtı üstünde belgili tanımlık düğme devre dışı, led yanıp söner, zaten kontrol kodları ve her şey doğru :/ ne olabilir bir fikrin var yanlış?

    • Merhaba Fco, Yorumunuz için teşekkür ederiz.

      Web üzerinde, Üç düğme vardır:

      Açmak, Devre Dışı Bırak, ve yanıp sönen.

      Eğer sen-ebilmek, Burada düğme kapatma atadığınız kodu yapıştırın, Bu yüzden yorum o düğmeye açmak yanıp sönen düğmesi ile ilişkilendirilmesi gerektiğini komut dosyasını çalıştırma mümkündür.

      Görüşmek üzere.

  10. Tekrar merhaba tüm, başka bir şüphe daha fazla lol eklemek için.

    Arka planda koymadan önce, Olduğunu bir zil sesi etkinleştirmek için (Buzzer) PIN kodunuzu koymak için bir döngü olması gerektiği 1 ve bir 0 sürekli, bir yol olarak değil bu süre 1 Yine.
    Nasıl bir web php kullanmak için bu döngü durdurmak için bir sorundur, çünkü konsol komut dosyası çağrısı sonunda ekleyerek bir & O arka planda çalışır ve konsol bittiğini komut dosyasını aramak ücretsiz izin, örnek:

    sudo python sonar.py &

    Bu iki komut vardır, Bu ses yapar ve emin susmuyor:

    alma zamanı
    alma RPi.GPIO GPIO olarak

    GPIO.SetWarnings(Yanlış)
    GPI.setMode(GPIO. YÖNETİM KURULU)
    GPIO.Setup(7,GPIO. OUT)

    GPIO.output(7,1)
    Time.Sleep(1)(.3)
    GPIO.output(7,0)
    Time.Sleep(1)(.3)

    ve kapatma:

    alma zamanı
    alma RPi.GPIO GPIO olarak

    GPIO.SetWarnings(Yanlış)
    GPI.setMode(GPIO. YÖNETİM KURULU)
    GPIO.Setup(7,GPIO. OUT)

    GPIO.output(7,0)
    GPIO.cleanup()

    Ama sadece ilk bozmaya çalıştı. Bir tebrik teşekkürler.

  11. Birkaç komutları art arda eklemek, Bunun için komut dosyası adına göre, terminal, PID bakın ve daha sonra yürütme ile öldür öldür.

    Bir kez belgili tanımlık buyurmak bulundu, CTRL ile kapatmak için amaçlanan işlevini değiştirme + C, bir tarafından yerine, uğultu N kez Matt o bu komutla otomatik olarak.

  12. Ctrl ile Eğer + C konsolu kapatır, Ama senin yazı LED olarak PHP ile uygulamaya çalışmak, o zaman ben başka bir yolu olmalı gerekir.

  13. Merhaba.
    Tutorial için teşekkürler.

    Ben bir sorun var, komut dosyası yürütmek değil, Konsoldan çalıştırırsanız, Ama sayfa beri değil, Bu olabilir bilmiyorum. Ne yaptın sen yorum
    “Sudo yazmak visudo terminal ve dosyanın sonuna eklemek için www-data sudoer olarak, Öyle olmalı.”

    Ama hiçbir şey. Başka ne, bakabilir miyim?

    Saygılarımızla,.

  14. Merhaba, Günaydın,
    Hiçbir şey, Teşekkür ederiz.

    Bir soru izin verir, Her şey mükemmel çalışıyor, Şimdi, Ne zaman LED'ler veya devre anahtarlamalı gösteren bir ekran eklemek edebilmek ister misiniz, Hatta bağlı olarak değişen lambalar ya da değil çalışmaktadır renk gösterilen görüntüleri ile bazı makaleler bulundu, işlemin çalışması için başarısız ama anlamaya çalış, Komutları ile Web almak ama hiçbir şey harekete geçirmek, Bu ve başka bir görünüm ile rahatsız umuyoruz, Şaşırtıcı Nezaketiniz için teşekkür ederim.

    Ignacio Belçika'dan

    • Hello Ignacio, Çok senin yorum için teşekkür ederiz.

      Sanırım bunun için Javascript kullanarak, etkinleştirmek için Python script PHP fonksiyonları entegre, güç-aydınlatma sistemleri yönetme.

      JavaScript değil domino, Beri ben bir web geliştirici değilim ama belki de kendini biraz daha iyi yönlendirmek, veya bazı diğer okuyucu istediğini elde yardımcı olabilir; Ama o-cekti yapmak için kodu görmek gerek, veya nerede hata olduğunu tespit etmek için takip öğreticiler.

      Görüşmek üzere, ve cesaret çok!

  15. Merhaba için tüm adl teşekkür, I öğrenmek biraz çok.
    Maruz kalan tüm adımları takip ettim, Terminal yerel gelen LED üzerinde açabilirsiniz, ullu tarafından talimat olarak php yama yüklemek, Hatta bir 775 izinleri—-vb. Ama hiçbir şey liderliğindeki/GPIO sonra yük belgili tanımlık sayfa düğmeleri. Ahududu pi 2 kullanıyorum…..Bu kart ile bir şey olacak?. İşbirliğiniz için teşekkür ederiz.

    • Merhaba Rafael, Yorum için teşekkür ederiz.

      Çözüm ahududu PI üzerinde dayalı uygun fiyatlı ev otomasyon adamış bu serideki önceki öğreticiler ve Yorumlar olması mümkün mü.

      Adımları izleyin herhangi bir IP sürümleriyle uyumludur, Bir dosya, ahududu giriş dizininde yaratacak aşağıdaki komutla Web sitesinde Python komut dosyası yürütülmesine değiştirebilir ortaya çıkar:

      sudo touch /home/pi/funciona

      Eğer tüm çalışıyor, Bu dosya oluşturulmalı.

      • Senin hızlı yanıt için teşekkür ederiz. Ben yapılan değişiklikler, o bana gibi, python parçası kaldırma ve karşılığında yerleştirerek index.html: sudo touch /home/pi/funciona , Ama ne yazık ki dosya benim ahududu oluşturulur değil. Bence bu mükemmel bir testtir ve bence doğru sonuç web alanında sorun konsantre. I-ecek bakmak daha fazla bilgi diğer öğreticiler. Teşekkür için senin yardım etmek. Arayacağım.

        • Merhaba Rafael, o zaman biraz sorunum dizin/var/www izinleriyle denetlemek için dosya yolunu değiştirerek aynı testi yaparız.

          sudo touch /var/www/funciona

  16. Merhaba, PHP web arayüzünden LED durumu olan bir etiket koymak için bir yol söyleyebilirim
    Bu değişikliği otomatik olarak'ı tıklatarak vermek için açmak için düğmesini ya dedi, Devre Dışı Bırak, yanıp sönen… durumu belirten bir etiket var. Teşekkürler bilgi için bana yardımcı olabilir umuyoruz..

    • Merhaba Chaka, Çok senin yorum için teşekkür ederiz.

      Sanırım biraz daha görsel efekt vermek istiyorsanız size PHP ve JavaScript ile bunu, veya düğmesine değişiklik yapma.

      Sadece düğmeye basınca göre metin resim yazısı eklemek isterseniz, Sadece her giriş ile ilişkili işlevleri uzatmak; Ben PHP içinde kullanılabilen işlevlerin listesi içine:

      http://php.net/manual/es/indexes.functions.php

    • Merhaba Jameson,

      Ben de soru anlayamıyorum, Ama bir aygıtın IP bulmak için NMAP kullanabilirsiniz.

      Grafik arayüzü ile araç olarak NMAP ve parmak Android cihazlar için temel ZenMap de var.

    • Merhaba Jameson,

      Tarayıcınızda yazmak zorunda IP gerçekten ki ahududu bu bu yana PI bir web sunucusu olarak davranır, php dosyanızı index.php listelenmeyen varsa da bir ip sonra tarafından ayrı dosyanızın adını eklemek gerekir “/”.

      Benim durumumda IP aralığı içinde olduğunu. 10.42.0.0 Ondan beri onun'bir IP sanal ağ arabirimi tarafından sağlanan NAT türü.

  17. Lütfen yardım edin. Bu nedenle hangi size açıklamak her şeyim konudur, Ama PHP betiklerinde çalışmıyor.

    Çok teşekkürler

    • Merhaba Sergio,

      Python komut dosyaları kastediyorsun sanırım, diğerleri de aynı problem vardı ve içinde belgili tanımlık önceki yorum birkaç çözümü vardır; Test ettikten sonra onları devam ederse başarısızlık daha fazla veri getirirsen belki diğer okuyucuların veya yardımcı.

      Görüşmek üzere.

    • Merhaba Roberto, Hoş geldiniz.

      Php bir uzman değilim, ve yürütmek için bir öğretici baktım o anlar tercüman siparişlerindeki PHP'den bash ve böylece bulundu.

      Kullanmak daha uygun olur exec yerine =?- exec?

      Çok senin yorum için teşekkür ederiz, Görüşmek üzere.

  18. Eğer sen değil iş ama eğer web komut dosyaları, Sen de sorunu yakında bir makale yapacak; Verilen bilgiler sayesinde değil çalıştı çeşitli kullanıcı topladık.

    Eğer sen koşmak düzeltmek için acele, Var dizin, ahududu olup olmadığını denetle, ve eğer öyleyse o yolu tüm dosyaları taşımak ve komut dosyaları değiştirmek gerekir “/var/www” tarafından “/var/www/html” Şimdi bu yana
    Bu varsayılan web sunucusu yoludur.

    Ayrıca sen dizini varsayılan olarak sildiniz değil ki mümkündür, “index.html” ya da onun tarafından değiştirmenizi eksik “index.php”.

    Ben yardımcı olmak için umut, Görüşmek üzere.

  19. Merhaba Antonio,
    Bir web sunucusu bir ev otomasyon sistemi uygun ve heyecan denemek için monte Eğer merak ediyordum vb ışıkları için API… (Bu da dersler takip için python tarafından bazı kütüphaneler ve kolay yapılabilir gördüm… Ama ben söylemek ve php ile yaparsın? Yani, Ahududu twitter ile web sunucu ve GPIO bağlantı noktaları LED'ler tutuşturmak
    Teşekkür peşin.

    • Nano Merhaba,

      Php web herhangi bir komut yorumlayıcısı komut BASH çalıştırabilirsiniz, Bu Python komut dosyalarını içerir.

      Böylece ne zaman bir cıvıldamak bot hesabınızın kullanıcı adını öne sürerek gönderecek kitaplığı veya Twitter API kullanabilirsiniz, devre dışı bırakabilir veya ışık veya özellikle bu iletiyle ilişkili cihaz açma.

      Ben bir sorun görüyorum, ve herkes sana düşman ve ev aletleri ve ışıkları kapatmak; Bu cıvıldamak gönderilen kullanıcı bağlı olarak sınırlamadığınız sürece.

      Sen bu konuda bulmak yorum konum ilginç olurdu.

      Yorum için teşekkürler, Görüşmek üzere.

  20. İyi günler,
    Öğretici takip, web kodu kopyalayın, .php Kaydet, benim sunucu var oluşturulan klasörü , Çünkü eğer html klasörünün dışına index.php koymak bana dosyayı bulamazsanız, Ama iyi, Görünüşe göre her şey yolunda mı. Sadece GPIO ile test ediyorum 17, Daha sonra iki .py yarattı, açmak ve kapatmak için, Ben onları dosya index.php aynı klasörde bulunan. Açık belgili tanımlık kaş, dizinde girdi, Ama bana yol çalışmaz. Ben ssh erişim Arşiv tutuşturan ve eğer bu işe yararsa konsol yürütmek. Ben değil var olmak başarısız. Tabii php betiklerine yolunu değiştirmek, Ondan beri onun'senin özel ders--dan farklı.
    Umarım bana yardım, Yakalanırsam.
    Bir tebrik.

    Çok teşekkürler.

  21. Peatonet Merhaba, Bir modül için bir buluş yapmaya çalışıyorum 4 Röleler açmak veya bir yerel ışıkları kapatmak için Web var, problem içinde belgili tanımlık sınav olduğunu, redistencia başlatır ve durdurur diledikleri ile Web'den yol açtı, Ama ben pin40 bağlamak (ı-si olmak configured Hangisi hangisi) Direniş kaldırma ve yol açtı, röle modülü, kırmızı ışığı kapatır ve değil açık veya ampul sınamak zorunda devre dışı.

    Lütfen bana yardım çünkü artık bu bir sorun olup olmadığını değil röle modülü (aliexchinapress lanet olsun) Ama hiçbirinde 2 Works'ün veya bu raspberrypi değil modül yeterli gerilim röle için gönderdi. (VCC ben pin3 beri var)

    Tirad ve şimdiden teşekkür ederim için özür dilerim

    Selamlar arkadaşlar

    • Merhaba, autorespondo beni ben arkadaşlar, Bu sorun vardı bu pin20 içinde (içinde benim hal) bir direnç koymak zorunda kaldı, Ben koydum 330 Topraklamalı.
      Çünkü sen geçerken Geçişi Kaldır direnç liderliğindeki olur

      Her şey için teşekkür ederim ?

      • Merhaba İsa, Adl sayesinde sen için belgili tanımlık eriyik pay ile bizi.

        Üzgünüz önce cevap verebilir değil ama ateşi yakalamak, Sınav Hazırlık sınıfları geçen hafta, ve iş (Serbest hasta almak için izni yok).

        VCC bağlı PIN ile ilgili, içinde benim hal ı toplu iğne-e bağlamak 2 ya da 4 zaten gerektiren 5V Güç kaynağı başarısız.

        Eğer sen istemek daha tafsilât-in genel kavram kanıtı verebilir, LED 220V AC çıkışlı yerine kullandığınız sonra?

        Yorumunuz için teşekkür ederiz.

  22. Merhaba, Ben okul için bir proje yapıyorum ve bu sistem android app taklit edebilirsiniz yolu var mı diye merak ediyorum, Yani, Görünüşe göre bu şekilde ahududu iğne nasıl ele alınacağını 100 kez daha hafiflemek--dan android bir uygulamada, Uygulama oluşturma android içinde böyle bir şey programı sıfırdan öğrenmek zorunda kalmamak için herhangi bir şekilde bana sistem bu tür yönetmenlik otomatik olabilir eğer merak ediyorum. Ne yazık ki proje olarak bir mobil uygulama sunmak için minnettarım, web formu değil.
    Ben cevap umuyoruz

  23. Merhaba arkadaşım teşekkür ederim!! mükemmel açıklama!! açık kaynak kodlu çok yaşa. Teşekkür için senin girdi.

  24. Merhaba ve tüm için teşekkür ederiz, Sorumu tekrarlıyorum, hangi bu iş için ahududu pi arasındaki fark nedir 3, önceden,

    Teşekkür ederiz

    • Hello Ignacio, Yorum için teşekkürler.

      Bu öğretici bir ahududu PI üzerinde geliştirilen 3 komplikasyon olmadan çalıştırmak tarafından.

      Hatta bu yüzden değil Eğer yönetmek-e doğru yapmak o iş, Sen-ebilmek pay o hataları veya bulduğunuz sorunları.

  25. Meslektaşları Merhaba, Çünkü bir proje arasında dalmış yardımına ihtiyacım var 3 Özel, Elektrik, Elektronik ve bilgisayar bilimleri, Ben domino elektrik parçası ama ben diğer iki uzman değilim. Les açıkladı, Ağ M2DL2 bir tarayıcı kayıt veri tüketim mevcut ve onları Ahududu ve kayıt ve veri tablosunda görüntülenen zaman için bu iletimi için amacı ile Ahududu pi bağlanmak. Analyzer alır sinyal RS485 ve hangi için ahududu girmelisiniz RS232 başka bir sinyal dönüştürücü tarafından gerekendir biliyorum, Ben ne gibi arabağlantı Analyzer arasında yapmak bilmiyorum, dönüştürücü ve ahududu. Bu konuda bilginiz veya bana rehberlik eder nerede bilgi?
    Saygılarımızla,.
    Ramon.

  26. Senin kadar Merhaba?
    Eğer bir GPIO durumunu kontrol etmek isterseniz, PHP ile, Söyle bana eğer bu ON / KAPALI uzak olduğum için.. Olması gerektiği gibi?

    Belki de törpülemek GPIO değeri döndürür bir yolu yoktur.

    Ama girerek tavşan bir DB 1 o 0 düğmelere basarak, Ama o orta rustik bkz:

    • Hola Juani, Yorum için teşekkürler.

      GPIO alt sonunda ve / sys GNU/Linux dosya sisteminin bir parçası içinde sistemidir, ve aslında her GPIO bağlantı noktası eşleştirme dosyalarını değerleri düzenleyerek yönetilen.

      Bir GPIO etkin veya etkin olmayan, değeri içeren dosyayı okuma olup olmadığını kontrol edebilirsiniz, PHP GPIO için bir örnek 18:

      $estado_gpio18 file_get_contents =(“/sys/sınıf/GPIO/gpio18/değer”);

      Değeri ise “1” GPIO etkindir, değeri ise diğer taraftan, “0” boş değil.

      Görüşmek üzere.

  27. Merhaba, ilk eyvallah için pay senin bilgi ile benzer kaygıları olan güçlük.

    Bir sorgu yapmak istiyorum (Bu çok saçma değil umut), ay önce bu sorunu raspi için web arabirimleri oluşturma üzerinden direttiğini. Yorumunu konu vermek www-data izinleri, Ama bu, Bu-cekti var olmak güzel bir yorum için giriş yerel ortamlardan veya test etmek için. Çözümler daha güvenli ortamlar için tavsiye istiyorsunuz?

    Bir tebrik ve teşekkür bir daha

    • Merhaba Gon, Yorumlarınız için teşekkür ederiz; Sadece her gün bu büyüleyici dünya hakkında öğreniyorum olarak belgelemek deneyin, Birlikte öğrenebiliriz böylece online formu.

      Tüm okuyucuların işlevsel olmasına rağmen bu panel hiç de mükemmel olduğunu hatırlatmak isterim, ne yapabilirim gerçekten temel bir örnektir ve daha ne kadar bu gelişmiş olabilir fark öğrendikçe; Bu yıl beri hep daha sistemleri ve güvenlik için harcanan bir programcı olarak benim becerilerini geliştirmeye çalışıyorum, ve kod yapıları hakkında sadece kavramlar değil, Tasarım Metodolojisi ve algoritmaları; Umarım bir sonraki sürümü zaten yapmak değil beni çok averguence web paneli ve payı artırmak için kısa almak zamanla.

      Prensip olarak sürümünden itibaren 3 Web kullanıcı www-data vermek sudoer izinleri kaçınarak pimleri durumunu yönetmek için GPIO grubuna eklemek için yeterli; Bu yapılabilir aşağıdaki komutu kullanarak:

      sudo usermod - a - G GPIO www-data

      Her neyse bence sorunuzu daha fazla kimlik doğrulama yoluyla Masası'na erişimi kısıtlama üzerinde odaklanmıştır, ve bu mod_auth modülü ile Apache2 için yapılabilir; Mod_ssl ya da otomatik olarak imzalanan bir sertifika ile kullanılması önerilir.

      Dışarıdan erişim için gidiyoruz eğer her zaman bir VPN yapılandırarak güvenlik bir katmanı ekleme, hangi sen-ebilmek korumak sertifikalarla x 509 erişim, Kullanıcı adı ve şifre, önleme fail2ban diğerleri arasında gibi sistemler ve.

      Umarım biraz şüpheleri açıklık var, Makaleyi gösterdiğiniz ilgi için teşekkür ederiz.

      • Merhaba Antonio! O kadar çabuk yanıt için tüm teşekkür ederim öncelikle ve.

        Bir mi beni biraz geriye gider, Sistemleri ve güvenlik dünya kadar emmek çalışırken web geliştirici kulüpler. Oradakiler senin gibi diğerleri biraz daha her gün öğrenebilirsiniz projelerini belgeleyen onların zaman yatırım olan memnun oldum.

        Çok yardım ettiğim söyle. I-si olmak küçük bir proje için raspi bağlı, ve arabirimin çember ay sürdü ve yapacak çok şey beni karar verdi ( Eğer php, Eğer cylon.js, yazın mydevice zaten oluşturulan hizmetleri ve benzer…) ve her zaman aynı şüphelerim bulundu: izinler, Güvenlik, …vb. Makale (İnan bana bu çok okumak) GPIO kablo delinme olarak biraz daha ileri gidip az, Bu nedenle senden.

        Teşekkür bir daha, birçok şüphe açıklık var.

        Ben test olacak ve serbest zaman var gibi uygulama, ve Eğer ilgileniyorsanız sonuçları söz.

        Bir tebrik

  28. Uygulamalar otomobillerde kullanılabilir Merhaba
    Bu milrrolling işi olabilir
    Kimse bu konuda herhangi bir proje oyuncular için
    Saúde

Cevap bırak