Raspberry PI in GPIO nožic: Krmiljenje LED iz spletnega vmesnika

V zadnje objave iz te serije, Videli smo so GPIO nožic in služiti, in Kako obvladovati moč LED iz terminala; Preden začnete Smo namestili GPIO knjižnice za Python, in sestavljeni elektronskega vezja in delovnih.
Spletni program v HTML + PHP + Python ravnati nekaj LED skozi na GPIO.

Ob tej priložnosti bo vgrajujemo v spletni strežnik Apache, in se učijo pisati v kodo v HTML in PHP za nadzor enako LED, ali več, iz spletnega vmesnika.

gpioprogramar0pngPrva stvar, moramo storiti, je namestite spletni strežnik svetilka, torej stavek sledeč zapoved v semestralen:

#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

Zdaj bomo dodali kot sudoer da uporabnik www-data, To ni možnost, več zanesljiv, vendar ne pozabite, da delamo test v nadzorovanem okolju; za okolje v proizvodnji, smo morali iskati zaženete skripte v python kot sudoer.

Če želite urediti ta dovoljenja, napisal sudo visudo v terminal in konec datoteke Dodaj podatkom www sudoer, Mora biti tako.

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

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

Za vsako pin GPIO Moramo ustvariti podimeniku in tri skripte v Python; da vklopite, drugo ugasniti, in končni scenarij za izdelavo naše LED utripa, Tukaj je primer z na PIN 4.

#!usr/bin/env/ python
## enciende.py
#Importamos la libreria y le cambiamos el nombre a GPIO
uvoz RPi.GPIO kot GPIO
#Vzpostavimo sistem številčenja, ki jih želimo, 
#v tem primeru sistem BCM
GPIO.setmode(GPIO. BCM)
#Konfiguriranje GPIO pin 4 kot izhodno
GPIO.setup(4, GPIO. VEN)
#Obrnemo na je vodil
GPIO.output(4, GPIO. VISOKO)
#!usr/bin/env/ python
## apaga.py
#Mi uvoz knjižnice in spremeni njeno ime za GPIO
uvoz RPi.GPIO kot GPIO
#Vzpostavimo sistem številčenja, ki jih želimo, 
#v tem primeru sistem BCM
GPIO.setmode(GPIO. BCM)
#Konfiguriranje GPIO pin 4 kot izhodno
GPIO.setup(4, GPIO. VEN)
#Izklop led
GPIO.output(4, GPIO. NIZKO)
#In mi osvobodi se GPIO
GPIO.cleanup()
#!usr/bin/env/ python
## parpadea.py
#Mi uvoz knjižnice in spremeni njeno ime za GPIO
uvoz RPi.GPIO kot GPIO

#Potrebne za zamude
čas uvoza

#Vzpostavimo sistem številčenja, ki jih želimo, 
#v tem primeru sistem BCM
GPIO.setmode(GPIO. BCM)

#Konfiguriranje GPIO pin 4 kot izhodno
GPIO.setup(4, GPIO. VEN)

#Vklop in izklop na led 5 krat
za sem v obsegu(0,5):

        GPIO.output(4, GPIO. VISOKO)
        Time.Sleep(1)(1)
        GPIO.output(4, GPIO. NIZKO)
        Time.Sleep(1)(1)

#In mi osvobodi se GPIO
GPIO.cleanup()

Zdaj je čas, da ustvarite našo domačo stran v HTML in PHP, vsebuje gumbe, ki mi bo pritisnite za zagon skripte Python iz spletnega vmesnika, kasneje bomo videli kako končno hierarhije.

<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

?>

Sem so Združene vsi na isti strani kot če ustvarite stran v PHP za vsako možnost, teči to, sem bil poslan na scenarij stran (prazno stran); zdaj teči zbornik ter ostane na isti strani.

končno Moramo doseči naslednji hierarhiji v podimeniku spletnega strežnika /var/www.

Screenshot od 2014-10-05 00:06:52Če želite lahko sledite mi na Cvrkutati, Facebook, Google +, LinkedIn, ali delite z gumbi pod to objavo, Če imate kakršnakoli vprašanja ali predloge prosim ne oklevajte in pripombe.

Pomagajte nam, da dosežejo več bralcev Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

71 misli na"Raspberry PI in GPIO nožic: Krmiljenje LED iz spletnega vmesnika

  1. dobro, Ko gledaš Internet rešitve domača avtomatizacija, Sem se odločil vaš sistem, Zdi se, da so tudi izpostavljene.
    Tudi zato in zaradi moje nič izkušenj v mehko. dvomi me, Želim, da bi jih lahko rešili, Sem bil početje veliko testov in nič, Ne razumem….:)
    izvede vse korake, da pojasni in upravljam v gpio iz terminala s kiti, pa saj spletni moči ne activate python skript.
    Rabim uganjati a stran na /val/www z html (index.html) tako služijo sem apache. Postavite svojo spletno stran tukaj Če gumbe pusti me, vendar ne izvršiti php scenarij. V index.php stran, ni se dal notri.
    Zaskrbljen zakaj neudobnost ter hvala.

      • Hvala za tako hitro odzivati, Ja sem storil korak dati dovoljenja v datoteki, ki si dal, Jaz sem zmeden s strani index.php, greš zvečer GPiO imenik, samo oglejte gumbi na spletu, če ga v /val/www….v html!…index.html, vendar ne izvršiti PHP scenarij. Da bi dal v index.php, ki visi GPIO imenik?

        • Če pogledate pozorno, index.php /var/www/leds 🙂 visi, če še vedno ne deluje, komentar o tem članku in pogled na to.

          Če /var/ www/index.php cuelgas bo videti v tej smeri, ampak to ne bo delovalo, kaj:

          http://ipdelapi

          Če visi za /var/www/leds/will deluje pravilno, ampak saj to pot:

          http://ipdelapi/leds

          Upam, da to rešuje svoje dvome in da lahko premaknete na ta tako razburljiv svet.

          • dobro, Imam isto naloga kot kolega zgoraj.

            Moj index.php visi iz /var/www/html/index.html
            , Če jaz zaslužiti svoj indeks html iz tam niso prikazani, Ampak nimam težav imajo tam, Moj problem izvira kdaj impulz gumb in teče me je torbica.

            PD: Dal sem mu vse in dovoljenj

            Hvala za vaš odgovor.
            Pozdrav

            J.G.

  2. dobro, vaše delo služi mi veliko, ste stroj!
    Jaz sem poskušal narediti avtomatizacija sistema za nadzor več LED iz spleta, vendar imam problem, ne omilili.
    Tema je, da imam activated GPIO, rabim, Jih vključite in izključite iz terminala, Jaz biti v zvezi drug računalnik povezan z istim omrežjem za 192.168.X.X/leds/ in spletni strani izgleda dobro, meni za nadzor doma izgleda odlično, vendar se ne odzivajo na LED, Poskusil sem z aktivno in pasivno, kaj delam narobe…
    Samo to lahko rečem je, da prikazuje izvorno kodo strani in samo se kaže html kodo, php ni, ni treba, če bi ali ne.
    Mislim, da je nekaj PHP, vendar nisem zelo prepričan, ker si se potrudil test PHP in to počne dobro, Jaz sem obupana lol

    • Zdravo, John,

      Mi alegro, veliko, da lahko uporabnost moje članke 🙂 vedno so dobrodošli pozitivne komentarje.

      Vse PHP kodo v brskalniku prikaže kot HTML, Ker PHP funkcije v času in dinamično ustvarjanje spletnih strani, ki so na voljo v brskalniku.

      Teče Python skripte neposredno, če je LED osvetljeni? pravo stvar bi se začetek testiranja od tukaj in pojdi naprej.

  3. Zahvaljujemo se vam za odgovor hitro!
    Končno obliko malina spet, Jaz pripadnik vsi lestev še enkrat in vse deluje lepo, ni treba, da ne more.
    Vseeno hvala za pozornost.
    Pozdrav

    • Zahvaljujemo se vam za delite svoje dvome, Vesel sem, da je končno urejeno.

      Spremenili ste nekaj malin, kot tudi obliko, kot na primer transformator microUSB?

      • da, Ko sem ga kupil sem dal umivalnik mikro hitrost njega gor in tako bo delo hitreje, vendar niti je opazna sprememba.
        To je bila edina stvar, ki ste spremenili v Turpija.

        • Zdravo, John, Vesel sem, da si preberete še tukaj.

          Načeloma nima ki vplivajo prekriti z oblaki v ta vidik, vendar bi lahko bilo poljuben zunanja podoba; zdaj, ko delate z Raspbian čiščenje vrne, da težave, potem ko je v proizvodnji, Zdaj, če da bi priporočal najdete koren problema.

          Spremeniti v prekriti z oblaki, boste opazili, da v po posebnih nalog, ki jih veliko računalniške moči, vendar nekateri dejavniki, kot na primer eter luka nadaljeval po vratu steklenice, ki uporablja.

          Si lahko ogledate pregled sem Raspberry PI B modelov, B + in B2 v naslednjo povezavo, s polno preizkušnja:

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

          Upam, da bo koristna, se vidimo kmalu 🙂

  4. zdravo, Imam malo vprašanje/problem. Bi radi povezali Zumer namesto je vodil, ampak želim poskusiti najprej z led naučiti. Je treba narediti za index.html in drugih .php?
    Imam na led, povezane s gpio4, in imam on.py scenarij in drugih off.py notri zgibalnik 4. Konzola delo popolnoma.
    in ne morem dal index.html, ker to hoteti ne pustiti mi, šele zakaj pod vodstvom funkcionalnost 4.

    Upam, da mi lahko pomagaš, Obiskala sem vaš facebook profil in upam, da nekega dne tako Raspberry pi kot veste. Pozdrav in hvala.

  5. Ujeti v PHP lahko vsebuje HTML z ki šele potreba index.php

    Če si dal PHP ukaze zagnati skripte v python v datoteki HTML, ne bo delovalo.

    Zdaj, da terminal deluje, kopirate lahko samo index.php ta tutorial, odpravo drugih GPIO in zapustijo le v 4 To je, kaj boste uporabili; ter to should opus.

    Če ne uredite datoteke v / var / www zagotovo bo z dovoljenjem, v tem tutorial je rešitev ter to should opus, Če to ne komentar in bom poskusil, da vam roko.

  6. zdravo, Jaz bom, da tukaj dal drugo vprašanje, Če vi ali kdo lahko mi kablom. So to scenarij in želite izbrisati mapo z datumom, ko rebooted, in kaj me zanima, vem, kako to storiti, ko gre za velikost x količino ulova, vse zbrišejo ali ponovno zažene na RPi. Hvala pozdrav.

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

    # Nekaj stvari, ki vedno delujejo
    #tip /var/lock/motionStartup
    drvar - s “Scenarij, ki se imenuje motionStartup”

    # Izvajanje posebnih nalog, naj sistem
    primeru “$1” v
    Začetek)
    drvar - s “Scenarij motionStartup začel”
    ŽIGA = $(datum + %m %H %M %S %d in % | SED je / / / g ") # Brez presledkov
    drvar - s “Scenarij motionStartup $TIMESTAMP”
    sudo mkdir/motiontmp / $ časovni ŽIG || drvar - s “Mkdir začetek zmota”
    Poišči gibanja/motiontmp / /. -tip f - velikost 0 -print0 - brisanje
    Poišči gibanja/motiontmp / /. -MaxDepth 1 -tip f | \
    XARGS - SEM '{}’ sudo mv {} /motiontmp / $TIMESTAMP
    ;;
    ustavi se)
    drvar - s “Scenarij motionStartup ustavil”
    ;;
    *)
    odmev “Uporaba: /etc/init.d/motionStartup {Začetek|ustavi se}”
    izhod 1
    ;;
    ESAC

    izhod 0

  7. Če na začetku skript dodate tej vrstici, vsakič, ko zaženete skript, preden narediš karkoli boste izbrisali vse mape znotraj/motiontmp /

    sudo rm - rf/motiontmp / *

    Za brisanje datotek, ko boste dosegli določeno velikost, lahko poskusite tokovod ukaz df - h, ki prikazuje imenik kolut navada, ali particijo:

    DF - h /motiontmp

    Z drugim ukazom kot wc ali sed, tako da samo prebere stavek, ki se nanašajo na MB ali GB, ki se uporablja, Končno z če bi program dela da če rezultat je večji od N, zaženite ukaz opisanih rm.

    • Za popoln izbrišete mape, potem pa…
      Oprosti, ampak jaz sem malo nov in sem izgubil, kot je na primer za takrat, ko doseže imenik/motiontmp/gibanja / 5 Gigas? Hvala lep pozdrav.

  8. Žal mi je za tako veliko delovnih mest sledil, ampak kot sem jaz ugotovitev jasno posodobitev. Kaj takega bi lahko delo?

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

    velikost = du - sh /motiontmp

    branje “velikost”

    Če [ “$velikost” > “2048000K” ]; nato

    sudo rm - rf/motiontmp / *

    drugega

    drvar - s “Scenarij, ki se imenuje motionStartup”

    # Izvajanje posebnih nalog, naj sistem
    primeru “$1” v
    Začetek)
    drvar - s “Scenarij motionStartup začel”
    ŽIGA = $(datum + %m %H %M %S %d in % | SED je / / / g ") # Brez presledkov
    drvar - s “Scenarij motionStartup $TIMESTAMP”
    sudo mkdir/motiontmp / $ časovni ŽIG || drvar - s “Mkdir začetek zmota”
    Poišči gibanja/motiontmp / /. -tip f - velikost 0 -print0 - brisanje
    Poišči gibanja/motiontmp / /. -MaxDepth 1 -tip f | \
    XARGS - SEM '{}’ sudo mv {} /motiontmp / $TIMESTAMP
    ;;
    ustavi se)
    drvar - s “Scenarij motionStartup ustavil”
    ;;
    *)
    odmev “Uporaba: /etc/init.d/motionStartup {Začetek|ustavi se}”
    izhod 1
    ;;
    ESAC

    izhod 0

    fi

  9. Pozdravljeni, da prijatelj, Žal slediti vaš primer in je vodil sveti, ni problema, ampak ko boste kliknili na gumb izklop, led utripa, že preverite šifre in vse, kar je pravilno :/ imate kakšno idejo, ki bi lahko opravljali narobe?

    • Pozdravljeni Fco, Hvala za vaš komentar.

      V spletu, So tri popek:

      Vklopite, izklop, in utripajoče.

      Če lahko, tukaj prilepite kodo, ki ste jih dodelili gumb izklop, tako je mogoče, da gumb izklop izvaja skript, ki naj bodo povezani s utripajoče gumb komentar.

      kmalu se vidimo.

  10. Pozdravljeni, za vse, drugo dvoma več dodati lol.

    Preden sem dal v ozadju, To je v activate Zumer zvok (Zumer) Je treba zanke, ki je dal kodo pin za 1 in a 0 nenehno, ne kot je vodil da časa 1 To še vedno.
    Problem je, kako zastajati to zanka za uporabo v web php, ker konzoli dodate na koncu script poziv za & To runs v ozadje in naj Prosimo, da pokličite skript, ki se konča to konzolo, primer:

    sudo python sonar.py &

    To so dve skripti, da, zaradi česar je zvok in pazite, da preneha:

    čas uvoza
    uvoz RPi.GPIO kot gpio

    GPIO.SetWarnings(Napačne)
    GPI.setMode(GPIO. ODBOR)
    GPIO.Setup(7,GPIO. VEN)

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

    in je izklop:

    čas uvoza
    uvoz RPi.GPIO kot gpio

    GPIO.SetWarnings(Napačne)
    GPI.setMode(GPIO. ODBOR)
    GPIO.Setup(7,GPIO. VEN)

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

    ampak preprosto, da bo motila prvi delal. Hvala pozdrav.

  11. Lahko povežete več ukazov, za to ki temelji na scenarij ime, terminal videti vaš PID in kasneje ubil njegovo izvedbo z Kill.

    Ko ugotovi ukaz, spremenite funkcijo namerava zapreti z Ctrl + C, ena namesto, brenčanje N krat Matt samodejno z ta ukaz.

  12. Če z Ctrl + C zapre v konzoli, ampak sem poskušal izvesti prek PHP kot vaš post LED, nato bo moral biti drug način za povedati, da sem.

  13. zdravo.
    Hvala zakaj tutorski.

    Imam problem, ne izvede skript, Če zaženete iz konzole, ampak od strani ne, Ne vem, da je lahko. Sem naredil kaj si komentar
    “Pišemo sudo visudo na terminalu in na koncu datoteke dodajte www-data kot sudoer, Mora biti tako.”

    Ampak nič. Kaj še lahko pogledam?

    Saludos.

  14. zdravo, dobro jutro,
    V nič, hvala.

    To omogoča vprašanje, vse deluje brezhibno, zdaj, Rad bi lahko dodali zaslona, ki označuje, kdaj so LED vklopiti ali izklopiti, Sem našel nekaj člankov, tudi s slikami, prikazuje barvo glede na to, ali so spreminjajoče svetilke deluje ali ne, poskusite razumeti delovanje, vendar ne bo delovalo, Jaz zaslužiti na spletu z ukazi, ampak nič se aktivira, Upam, da ne sitnost s tem in drugi videz, Hvala za vašo neverjetno prijaznost.

    Ignacio iz Belgije

    • Pozdravljeni Ignacio, Najlepša hvala za vaš komentar.

      Mislim, da uporabljate Javascript za to, PHP funkcije, ki aktivirajo Python skript za vključevanje, upravljanje moč-Svetila.

      Ni domino JavaScript, Ker nisem spletni razvijalec, ampak morda si lahko orientirate malo bolje, ali nekatere druge bralec lahko pomoč vi zaslužiti kakšen vi want; vendar naj to storijo to bi morali videti kodo, ali vaje, ki ste sledili poskusiti ugotoviti, kjer je žuželka.

      kmalu se vidimo, in veliko spodbude!

  15. Pozdravljeni, za vse hvala lepa, Jaz zvedeti veliko.
    Jaz pripadnik vsi lestev, izpostavljene, Lahko pa na LED od lokalnih terminala, naložiti obliž php po ullu navodilih, dovoljenje še eno 775—-itd. Nalaganje strani z gumbi po vodi/gpio ampak nič. Jaz sem z uporabo Raspberry pi 2…..bo kaj s to kartico?. Cenim vaše sodelovanje.

    • Pozdravljeni Rafael, Hvala za komentar.

      Je možno, da raztopino v pripombah prejšnje vaje v tej seriji, ki je namenjena cenovno domača avtomatizacija osnovi Raspberry PI.

      Korake, ki so združljivi z različicami koli IP, se mi pojavi, ki lahko spremenijo na spletni strani izvajanjem skripte v python po naslednjem vrstnem redu, ki bo ustvaril datoteke v domači imenik vaš malina:

      sudo touch /home/pi/funciona

      Če vse deluje dobro, Ta datoteka je treba ustvariti.

      • Hvala za vaš hiter odziv. Sem storil sprememba, kot je povedal, da me, v index.html z odstranitvijo del python in dajanje v zameno: sudo touch /home/pi/funciona , ampak žal je datoteka ne nastaja v moja malina. Mislim, da je odličen test in mislim, da je rezultat koncentriranega problem na področju spletne. Bo videti več informacij v druge vaje. Hvala za vašo pomoč. ostanimo v stiku.

  16. zdravo, Lahko povem, tako da oznako z LED stanja iz PHP web vmesnik
    da spremeni samodejno, da bi klikom, je dejal gumb za vklop, izklop, utripa… ima oznako, ki vam pove, status. Hvala za vaš prispevek upam, da mi lahko pomagate..

    • Pozdravljeni Jameson,

      Jaz tudi ne razumem vprašanje, pa najti IP naprave uporabite NMAP.

      Imate tudi orodja z grafični vmesnik kot ZenMap na osnovi NMAP in Fing'rs za Android naprave.

    • Pozdravljeni Jameson,

      Dejansko IP, da morate napisati v vaš brskalnik je, to je Raspberry PI, ker to je, ki deluje kot spletni strežnik, tudi če datoteko php ne naštete kot index.php boste morali dodati ime datoteke ločene z enim po OP “/”.

      V mojem primeru se IP je v območju 10.42.0.0 Ker je IP vrste NAT, ki jih virtualni vmesnik omrežja.

    • Hi Sergio,

      Mislim, da ste se nanašajo na skripte v Python, drugi imel isti problem in obstaja več rešitev v prejšnjih komentarjih; Če po testiranju jih ponavlja neuspeh, če pripelješ več podatkov morda druge bralce, ali bi vam.

      kmalu se vidimo.

    • Pozdravljeni Roberto, dobrodošli.

      Jaz nisem strokovnjak v php, in v teh trenutkih sem pogledal za vaje za izvršitev naročila v tolmač bash iz php in torej.

      Bi bilo bolj primerno uporabiti za = exec namesto?- exec?

      Najlepša hvala za vaš komentar, kmalu se vidimo.

  17. Če ne delate na spletu, vendar če skripte, Kmalu bom članek, tako da lahko popravim; Hvala za informacije so zbrane različne uporabnike, da ni delal.

    Če zaženete vam mudi popraviti, Vi moči ček če var imenik obstaja v vašem malina, in če morate premakniti vse datoteke s to potjo in nadomestiti v skripte “/var/www” z “/var/www/html” od zdaj
    To je privzeti spletni strežnik pot.

    Prav tako je mogoče, da niste izbrisali indeks privzeto, “index.html” ali manjka, lahko spremenite s “index.php”.

    Upam, da bo v pomoč, kmalu se vidimo.

  18. Pozdravljeni Antonio,
    Sem bil začuden, če spletni strežnik lahko pritrdi na fit sistem za domači avtomatizacija in poskusite Cvrkutati api za vklop luči itd… (Videl sem, da to je mogoče storiti z python z nekaj knjižnic in enostavno slediti vaje… vendar pa bi lahko kot sem rekel in s php? tj, malin je spletni strežnik s Cvrkutati in gpio vrata vname LED
    Hvala vnaprej.

    • Nano Hello,

      Iz spleta v php lahko zaženete ukaz v tolmača ukaz BASH, To vključuje skripte v Python.

      Uporabite knjižnico ali Cvrkutati API, tako, da ko boste poslali Cvrkutati navaja imena uporabnika bot računa, izklop ali vklop luči ali naprave, povezane s to vest zlasti.

      Vidim problem, in to je, da kdorkoli lahko obrnejo na vas in zavijete luči in gospodinjski aparati; razen, če to lahko omeji glede na uporabnika, da pošlje Cvrkutati.

      Bi bilo zanimivo, če ste komentiral kaj boste našli v tem pogledu.

      Hvala za komentarja, kmalu se vidimo.

  19. dober dan,
    Sem sledil tutorski, kopirajte kodo spletne, shranite kot .php, v mapi, ki je ustvaril me strežnik var , ker če sem dal v index.php iz html mapa ni našel me datoteke, ampak dobro, Zdi se, da je vse OK. Sem samo testiranje z je GPIO 17, Potem sem ustvaril dve .py, vklop in izklop, Sem se nahaja v isti mapi kot datoteka index.php. Odprem brskalnik, vpisana v indeks, vendar ne bo deloval me je vodil. Če imam ssh dostop arhiv vname in izvesti preko konzole, če to tovarna. ni treba, če se uspeva. Seveda vna¹anje poti dostopa za skripte php, Ker je drugačna od vaše tutorstvo.
    Jaz upanje vi moči posoditi komu mi roko, Sem ujela.
    Pozdrav.

    hvala lepa.

  20. Pozdravljeni peatonet, Jaz sem poskušal narediti izum v activate modul 4 releji iz spleta vklopite ali izklopite luči lokalni imam, problem je, da je pri preskusu, vodil z redistencia vklaplja in izklaplja bo iz spleta, ampak ko sem povezati na pin40 (kateri je kateri sem nastavljen) odstranjevanje odpornost in vodi, izklopi rdečo luč rele modul in ni vklopljen ali izklopljen imam preizkusiti čebulice.

    Prosim, pomagajte mi, ker ne je, če je to narobe rele modul (prekleto aliexchinapress) vendar v nobeni od na 2 modulov, da imam dela ali če je to to raspberrypi ne Pošlji dovolj napetost na rele (kot VCC sem si od na pin3)

    Žal za Tirada in hvala vnaprej

    Prijatelji lep pozdrav

      • Pozdravljeni Jezusa, Najlepša hvala vi zakaj črepina raztopina z nami.

        Žal, če ni mogel odgovoriti, preden ampak sem ujeti s povišano telesno temperaturo, v zadnjem tednu razredov pripravo izpitov, in delo (je samostojni nima dovoljenja, da zbolijo).

        Glede pin, da se povežete z VCC, v mojem primeru sem povezati pin 2 ali je 4 sicer že zahteva 5V napajanje.

        Če želite, lahko daš več podrobnosti o dokazilo o konceptu, potem rabiš LED namesto 220V AC vtičnice?

        Hvala za vaš komentar.

  21. zdravo, Delam projekt za šolo in spraševal, če obstaja način, da lahko posnemajo ta sistem od android app, tj, Kako ravnati z zatiči maline na ta način se zdi 100 krat več lahek mimo v android aplikacij, Zanima me, če ustvarjanju zahtevek lahko na kakršen koli način, ki je avtomatsko usmerjanje mi za tak sistem, bi se izognili naučiti iz nič program takega v android. Na žalost sem dolžan dostaviti projekta kot mobilno aplikacijo, ne v spletni obrazec.
    Upam, da vaš odgovor

  22. Pozdravljeni in hvala za vse, Ponavljam moje vprašanje, Kakšna je razlika za njihovo delo v raspberry pi 3, vnaprej,

    hvala

    • Pozdravljeni Ignacio, Hvala za komentarja.

      Ta tutorial je razvit na Raspberry PI 3 tako bi moralo delovati brez zapletov.

      Če še vedno ne morem izdelovanje to opus, Lahko delite kakršne koli napake ali težave, najdete.

  23. Pozdravljeni kolegi, Rabim vašo pomoč, ker sem potopljen v projekt med 3 specialitete, električni, Elektronike in računalništva, Sem domino del električne energije, vendar jaz nisem strokovnjak na druga dva. Razložim jim, M2DL2 analizator omrežja vzpostavite Raspberry pi evidentiranje podatkov trenutne porabe in da jih pošilja malin in registracijo in prikazani v podatkovni tabeli, ki je v zameno. Vem, da je signal, ki omogoča skener RS485 in RS232, ki naj bi se malin je kakšen rabim pretvornik signala za drugo, Kaj ne vem je kako narediti povezavo med analizator, pretvornik in malin. Veš kaj o tem, ali mi lahko vodijo kjer informacije?
    Saludos.
    Ramon.

  24. Pozdravljeni, kot ste?
    Če želite preveriti stanje a gpio, preko php, Torej povej mi če to na / OFF, ker sem oddaljeni. Kot je treba?

    Morda obstaja nek način, ki je rasp vrne vrednost, ki je na gpio.

    Vendar zajec v a db z vnosom 1 o 0 s pritiskom gumba, vendar da videti srednje rustikalna

    • Hola Juani, Hvala za komentarja.

      GPIO podsistema je končno in v delu the/sys datotečnega sistema GNU/Linux, in dejansko upravlja tako, da uredite vrednosti vsakega GPIO vrata-kartograf pila.

      Lahko preverite, če je GPIO je aktiven ali neaktiven, branje datoteke, ki vsebuje vrednost, primer v PHP za na GPIO 18:

      $estado_gpio18 = file_get_contents(“/sys/razred/gpio/gpio18/vrednost”);

      Če je vrednost “1” aktiven je GPIO, na drugi strani, če je vrednost “0” nedejaven.

      kmalu se vidimo.

  25. zdravo, Najprej hvala za šop trave od črepina vaš znanost, s katero imamo podobne pomisleke.

    Rad bi, da bi poizvedbe (Upam, da to ni zelo neumno), meseci ki sem bil mulling nad vprašanje oblikovanje spletnih vmesnikov za je raspi. Vaš komentar na temo dati dovoljenja za www-data, ampak da, Bi bilo lepo kot komentar za dostop iz lokalnih okoljih ali za testiranje. Bi, da rešitev priporočamo za varnejše okolje?

    Pozdrav in še enkrat hvala

    • Pozdravljeni Gon, Hvala za vaš komentar; Poskušam dokument kot sem učenje vsak dan o tej očarljivi svet, online obrazec, tako da bomo lahko izvedeli skupaj.

      Rad bi spomnil vse bralce, da kljub temu, da funkcionalno ta plošča sploh ni popoln, je res osnovni primer, kaj lahko stori in bolj se učim bolj zavedam, koliko da bi izboljšali; Letos sem poskušal izboljšati moje spretnosti kot programer, ker sem vedno porabil več sistemov in varnosti, in on ni samo pojme o kodo strukture, oblikovanje metodologij ali algoritmi; Upam, da v kratkem vzemite čas za izboljšanje spletni panel in delež naslednjo različico, ki že ne ni mi toliko averguence.

      Načeloma od različice 3 Splet je dovolj dodati uporabnika www-data GPIO skupino za upravljanje stanja zatiči, izogibanje dati sudoer dovoljenja; To je mogoče storiti z uporabo naslednji ukaz:

      sudo usermod - a - G gpio www-data

      Vseeno mislim, da vaše vprašanje bolj osredotočen na omejevanje dostopa k panel s preverjanjem pristnosti, in to je mogoče storiti z mod_auth modul za Apache2; Prav tako je priporočljivo uporabljati mod_ssl bodisi s potrdilom z lastnim podpisom.

      Če boste dostop od zunaj vedno lahko dodate eno plast varnosti s konfiguracijo VPN, ki lahko zaščitite dostop s certifikati x 509, uporabniško ime in geslo, in sistemov preprečevanja kot fail2ban med drugim.

      Upam, da so pojasnjene malo svoje dvome, Zahvaljujemo se vam za vaše zanimanje za članek.

      • Pozdravljeni Antonio! Najprej hvala za tako hiter odgovor in.

        Mi, ki mi gre malo nazaj, Sem spletni razvijalec, ki poskuša vpijejo svetu sistemov in varnost. To je veselje, da so ljudje tam, kot si ti, ki vlagajo svoj čas, dokumentiranju njihovih projektov, tako da drugi lahko izvedeli malo več vsak dan.

        Vam povem, da sem pomagal veliko. Imam majhen projekt, povezan je raspi, in prtljažnika, kroženje vmesnik in brez veliko storiti odločila, me ( Če php, Če cylon.js, Vnesite mydevice že ustvarili storitve in podobno…) in sem vedno našel enake dvome: dovoljenja, Varnost, …itd. Vaš članek (verjemite mi, da preberete veliko) je nekaj, ki van malo več tistega od, kot kliknite kablov v je GPIO, Zato vas sprašuje.

        Še enkrat hvala, so pojasnjene veliko dvomov.

        Bom preskušanje in izvajanje kot imate prostega časa, in če vas zanima, sem omenil, rezultati.

        Pozdrav

pusti odgovor