Bringebær PI - implementering av et rimelig hjemme automasjonssystem [Del I]

I tidligere innlegg i denne serien, Vi så Hva er GPIO pinner, og hvordan å kontrollere en LED med dem fra våre Bringebær PI ved Bash og Python, o med en Web-applikasjon.

portadarelele

Denne gangen vil vi lære å kontrollere kraften i en elektrisk apparat; før du starter serveren har vi installert LAMPE som vi så i tidligere levering.

Å implementere det, skal bruke et relé bord av 5V og åtte kanaler, Det må være optoacoplada å beskytte bringebær PI; Siden enhetene som vi skal sjekke med 220V, og pins GPIO Bringebær arbeid med maksimalt 3,3V.

placarele

Reléer optoacoplados plate.

Vi har å gjøre mellom stafetten og bringebær PI følgende tilkoblinger.

Modulen reléer optoacoplados
Bringebær PI modellen å, B, A +, B +
VCC
+ 5V
I 8
GPIO 17
GND GND
OLYMPUS DIGITALT KAMERA

Tilkoblinger mellom PI bringebær og relé plate.

Nå vil vi teste Hvis tilkoblinger fungerer, med en enkel test i Bash, Angi PIN-koden GPIO 17 avgang, og gi en logisk høy verdi.

#Exportamos el PIN deseado
usuario@maquina:~$ sudo echo 17 > /sys/class/gpio/export

#Establecemos la direccion (salida o entrada)
usuario@maquina:~$ sudo echo out > /sys/class/gpio/gpio17/direction

#Activamos la salida del rele dandole un valor de 1 al bit
usuario@maquina:~$ sudo echo 1 > /sys/class/gpio/gpio17/value

Når har slått på led i kontrollen relé, fordi vi kan slå den av og slipp pin GPIO.

#Apagamos la salida del rele
usuario@maquina:~$ sudo echo 0 > /sys/class/gpio/gpio17/value

#Liberamos el PIN asociado
usuario@maquina:~$ sudo echo 17 > /sys/class/gpio/unexport

Vi har allerede testet funksjon, så nå skal vi se web-siden vi trenger å planlegge, Det er ganske enklere enn testen med den LED Vi så i den siste leveringen.

<html>
 <head>
                 <!--/var/www/rele/index.php-->
 </head>
 <body>
 <!--GPIO17--> 
 <form action="" method="post">
 Enchufe 0 [GPIO 17]&nbsp;<input type="submit" name="encender17" value="Encender">
 <input type="submit" name="apagar17" value="Apagar">
 <input type="submit" name="parpadear17" value="Parpadear">
 </form> 
 <br></br>
 </body>
</html>

<?php
// Funciones PHP del pin GPIO 17
 if ($_POST[encender17]) { 
 $a- exec("sudo sh /var/www/rele/gpio/17/enciende.sh");
 echo $a;
 }

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

 if ($_POST[parpadear17]) { 
 $a- exec("sudo sh /var/www/rele/gpio/17/parpadea.sh");
 echo $a;
 }
// Fin de las funciónes del pin GPIO 17
?>

Vi må opprette disse tre skript i bash slå på, Å slå av og blinkende; Disse skriptene er plassert i /var/www/videresending/gpio/17 /.

#!/bin/bash
#enciende.sh

#Exportamos el PIN deseado
echo 17 > /sys/class/gpio/export

#Establecemos la direccion (salida o entrada)
echo out > /sys/class/gpio/gpio17/direction

#Activamos la salida del rele dandole un valor de 1 al bit
echo 1 > /sys/class/gpio/gpio17/value
#!/bin/bash
#apaga.sh

#Apagamos la salida del rele
echo 0 > /sys/class/gpio/gpio17/value

#Liberamos el PIN asociado
echo 17 > /sys/class/gpio/unexport
#!/bin/bash
#parpadea.sh

#Exportamos el PIN deseado
echo 17 > /sys/class/gpio/export

#Establecemos la direccion (salida o entrada)
echo out > /sys/class/gpio/gpio17/direction

#Activamos la salida del rele dandole un valor de 1 al bit, y lo desactivamos 5 veces
echo 1 > /sys/class/gpio/gpio17/value
sleep 1
echo 0 > /sys/class/gpio/gpio17/value
sleep 1
echo 1 > /sys/class/gpio/gpio17/value
sleep 1
echo 0 > /sys/class/gpio/gpio17/value
sleep 1
echo 1 > /sys/class/gpio/gpio17/value
sleep 1
echo 0 > /sys/class/gpio/gpio17/value
sleep 1
echo 1 > /sys/class/gpio/gpio17/value
sleep 1
echo 0 > /sys/class/gpio/gpio17/value
sleep 1
echo 1 > /sys/class/gpio/gpio17/value
sleep 1
echo 0 > /sys/class/gpio/gpio17/value

#Liberamos el PIN asociado
echo 17 > /sys/class/gpio/unexport

Når vi har den skript og index.php på deres respektive rutene, Vi må vise Det følgende hierarkiet katalog på web-serveren.

Skjermbilde av 2014-11-08 16:27:54Denne gangen må vi også gjøre sudoer til brukeren www-data; for at løpe sudo visudo i terminalen, og vil legge det pi under brukeren slik at brukeren www-data Du kan kontrollere pinnene GPIO.

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

Nå vil vi teste tre knappene for Kontrollere at alt fungerer riktig. En gang fungere, og videresending plate LED slå på, Vi vil høre den “Klikk/clack” at du avgir når åpning og lukking krets.

Skjermbilde av 2014-11-08 13:30:46

Webprogram for å kontrollere relé.

Vi vil se hvordan å koble den til en lampe eller alt annet utstyr til kontrollen fra enhver enhet med en nettleser.

Skjemaet for koble stafetten mellom en magneto-thermal bryter og en plugg veggen av huset vårt er slik; Jeg har brukt bildet av en enkanals stafett for ordninger, i dette eksemplet er det kanal inn 8 åtte-kanals plate.

rele5vmagnetotermico

Tilkoblingsdiagrammet i elektriske panelet i et hus.

For konseptutprøvingen, Jeg vil bruke følgende skjema med en plugg som jeg måtte endre i et rom i huset, og en lampe. Nedenfor er veggen, og ovenfor som har ridd i denne testen å koble i lampen; stafetten fungerer som en bryter.

rele5venchufe1

Metode som brukes i denne testen.

Det er tre porter til elektrisk tilkobling for hver produksjon på stafett: COM, normalt åpen og normalt stengt. I COM Vi må koble positivt elektrisk Det vil mate apparatet, og i ett to andre kabel utvide til positivt av apparatet. Den negativ kobler direkte fra støpselet til enheten.

PB080196

En relay-tilkoblinger.

Det vil avhenge hvis du koble den til normalt åpen, eller en normalt stengt Hvis apparatet på eller av hvis slår du av bringebær.

I dette er relé koblet i normalt stengt, så hvis du slår av bringebær, plugger arbeid; Hvis conectásemos i normalt åpen, Når utløsning bringebær lampen ikke kan antennes fordi kretsen vil være åpen; Vi vil forstå det bedre med en video.

Hvis du liker du kan følge meg på Twitter, Facebook, Google +, LinkedIn, eller dele det med knappene under denne publikasjonen, Hvis du har spørsmål eller forslag ikke nøl med å kommentere.

Hjelp oss å nå flere lesere Share on LinkedIn
LinkedIn
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on Google+
Google +
Email this to someone
e-post

35 tanker om"Bringebær PI - implementering av et rimelig hjemme automasjonssystem [Del I]

  1. Slå på LYSENE fra Internett og

    god morgen, For noe, minst jeg kan si, takk, Super
    opplæringen, et annet utseende, Bravo og takk.

    Et spørsmål, Jeg forstår ikke akkurat som og hvor installerer jeg skript,
    Min intensjon er å ha en webside, faktisk, ikke være som jeg får
    arbeide med PHP og WEB, som eksempel, via en PC, koblet til Internett
    hvor å aktivere det forskjellige LED eller reléer, er ikke hvordan du gjør det,
    på forhånd, og selvfølgelig, Mange takk for alle hjelpe.

    Minnelighet Ignacio fra Belgia

  2. Skript og enkelt index.php må du kopiere dem til /var/www/rele som vist i opplæringen, hver har sin rute.

    index.php i /var/www/rele/index.php
    apaga.sh, enciende.sh og parpadea.sh i /var/www/rele/gpio/17 /

    For tiden som fungerer for en stafett koblet til GPIO 17, i et par dager vil jeg ende med den andre delen å betjene den åtte utganger.

    For å få tilgang fra Internett bør du konfigurere ruteren for å videresende innkommende forespørsler ved havnen 80 å din PI bringebær. Fra den virtuelle serveren alternativet ruter eller NAT kan du konfigurere den.

    Til slutt, til mer lett du kan registrere deg for NoIP og få et gratis domene tilknyttet offentlig ip av den type casa.no-ip.biz.

    PD: Kontroller at du beskytte siden godt bare du har tilgang til den.

    Tusen takk for kommentering.

  3. god ettermiddag,

    Alt fungerer perfekt, Selv om den bare er av lan eller Xming via ssh, Kan ikke koble til eksterne, "med en annen PC via Internett, Jeg har noip og dyndns, og jeg kan ikke kjøre, Hvis du har noen idé jeg takker det deg på forhånd,

    En sterk hilsen og en se mer, takk

    Ignacio

    • Jeg er glad for at det endelig fungerer, men hvis du vil koble fra Internett hvilke protokoller bruker du?

      Du må åpne portene på tjenestene du vil bruke på ruteren som gir tilgang til Internett (HTTP-port 80, HTTPS-porten 443, SSH havn 22, etc) og gjøre portvideresending til privat IP bringebær IP router som gir tilgang til Internett.

      Endelig nå må bare du starte tilkoblingen fra et annet nettverk mot offentlige IP på ruteren, Du kan prøve fra telefonen 3 G.

      Hvis dette fungerer, Nå kan du fortsette å konfigurere NoIP eller Dyn for tilgang fra et navn lett å huske i stedet for en offentlig IP; I tillegg hvis installere NoIP på bringebær, på nettstedet NoIP offentlige IP endres automatisk når endringen for ruteren.

      For ekstra sikkerhet, Det ville være bedre hvis du konfigurerer en VPN for å koble til hjemmenettverket, og kanal gjennom det alle trafikkdataene.

  4. hallo, Jeg har et spørsmål jeg har en led på gpio4, sudo ekko 1 > /sys/klassen/gpio/gpio4/verdi førte dette jeg slå av, og med sudo ekko 0 > /sys/klassen/gpio/gpio4/verdi, aktivere ledet, bør være å revez, vil gjøre noe onde?.
    plass filen jeg kobler via Internett, Når jeg trykker en knapp (slå på, slå av, eller blinkende) bare slå av led, men slår seg ikke, eller flimmer.
    Jeg setter pris på hjelp du kan gi meg.

    • Led av relé er bare en indikator, har du testet med en elektrisk enhet koblet til stafett?

      Det vil avhenge hvis conectáis i normalt åpen, eller vanligvis lukket konfigurasjonsskript i python.

      • hallo, Interessant led arbeider aldeles, Jeg slår den, og slå til glede, men stafetten fungerer ikke, gjør ikke åpne eller Lukk, bytter ikke 🙁

    • hallo, Først av alt Takk mye verre din spørsmål 🙂

      Du kan følge opplæringen trinn, stafetten har 3 typer pins:

      – VDC-> makt (PIN 5V RPI)
      – GND-> GND RPI Pin
      – IN-> oppføringer, og avhengig av om staten er høy eller lav relé vil slå eller av.

      Eksempel bruk IN8, reiser debes cambiarlo for IN0-1 du videresende y som før du følger comenté el opplæringen 🙂

      PD: Asegurate av sean optoacoplados, Los de la Foto det sønn.

      vennlig hilsen, Jeg håper for ayudado.

  5. Jeg gjorde alt som anbefales som ovenfor, Når jeg skriver kommandoer i terminal, verker, Men, Hvis jeg kan få filen enciende.sh og sender kjøre terminalen arbeide ikke og kan ikke engang se index.php-siden

  6. Først og fremst, Takk for din forklaringer, veldig bra.

    Jeg har fulgt din instruksjoner og jeg kan ta en fisken tank fra luftpumpe.

    Problemet jeg har mangler jeg kan kontrollere statusen for pin (Sant eller usant)

    Hvordan kan jeg gjøre for å bringe meg disse dataene på samme side jeg?

    Er Navy fulgte din instruksjoner, slår på og av reléet skal.

    • Hei Teodoro,

      Denne kommentaren er noe som mange lesere spør, av hva jeg forbereder neste del av opplæringen der vi vil planlegge en indikator for statusen til GPIO gratis pinner på fritiden.

      Når den er ferdig vil jeg publisere det på bloggen.

      sees snart.

  7. Før noe takk for bloggen din.. spektakulære. For min del har jeg kjøpt alt du trenger, Jeg har fulgt alle øvinger, men når du kjører platen av 8 releer, noe går galt jeg.

    Spørsmålet er som om jeg har platen octoacoplada?? Det virker som ikke når deg nok strøm til å aktivere den. Mine kontakter:

    5v-> VCC (plate)
    GND (P3) -> GND (plate)
    GPIO4-> IN4 (plate)

    Når aktiv gpio med skript, kontrollen røde ledet slås på en momoento, men holder seg ikke. Jeg forstår at det er fordi gpio er aktivert for å 3,3 volt og reléer er 5V. Sverge men har samme plate så må du ahber en måte å gjøre det arbeidet ikke?

    Apreciaria enhver type kommentar, relé bord er som følger
    (8 videresender modul srd-05VDC-SL-C)

    Takk mye for alt

  8. Hei Loty,

    De fleste plater støttes releer som er markedsført for microcontrollers kommer allerede opto-kombinert, Du kan sjekke om det er i spesifikasjoner eller leter etter optocouplers i platen; som refererer til for du har nevnt om at ting er.

    Effektivt, er disse platene drevet med 5V, men resultatet kan aktiveres også ved 3 aktuatorer, 3V som bringebær IP GPIO.

    Allikevel, problemet synes å være mangel på makt, så erstatte transformeringen av bringebær med et 2A eller feed eksternt stafetten kunne hjelpe.

    Hilsener og se deg snart.

    • hallo!
      Takk for raskt svar. Jeg har gjort tester direkte på relé bord (fjerne PI BRINGEBÆR), å se om det var at platen hadde onde. Jeg har en ekstern strømforsyning av 5V på 2A.

      Jeg kobler GND med mindre VDC materen til den + materen og IN4 også den +. og der.. VERKER!! Klikk videresending og LED-indikatoren forblir, Jeg har gjort testen med en 220v lampe og alle fremdeles arbeider. Problemet oppstår med BRINGEBÆR PI.

      Jeg har koblet plate materen eksterne “+” VDC “-” GND og IN4 jeg har koblet den BRINGEBÆR gpio4, og det når jeg aktiverer GPIO, ingenting skjer. Jeg har målt GPIO og gir 3,3 v. Jeg har lest andre steder og det sies at det er fordi jeg måtte koble genseren VDC-siv av ellers. Ikke at jeg galt. Det kan være at jeg slår gpio gjennom BASH?? S nødvendig å jobbe med henne billig kort bruk la bokhandelen de python av GPIO??

      MUCHAS gracias por vil bidrag

  9. hallo, Jeg hadde et problem å slette lys med relé, Bruk koden i denne opplæringen, kunne lette normal, men slette ikke slettes og stafetten var bevæpnet, bare avvæpnende når jeg koblet kabelen fra releet bringebær. Etter flere forsøk klarte jeg å slette denne opplæringen med koder av opplæringen koden ledet slette. får dette skjemaet en del av koden: Hvis ($_ INNLEGG[apagar17]) {
    $til- exec(“sudo python/var/www/AcenderWebRele/apaga3.py”);
    $til- exec(“sudo ekko 17 > /sys/klassen/gpio/eksport”);
    $til- exec(“sudo ekko 0 > /GPIO/sys/klassen/gpio17/verdi”);
    $til- exec(“sudo ekko 17 > /sys / klassen / gpio / angre”);
    ekko $a;
    }

  10. God ettermiddag fra Mexico, mitt navn er Enrique, Jeg er interessert i delen i implementere automatisering med bringebær dette stammer fra et skoleprosjekt, i tutorials nevner du at vi må ha linux som jeg ikke vet mye, Det er mulig å utvikle prosjektet, både nettstedet og den nødvendige programmeringen i bringebær med windows?, web-serveren som du nevner må installeres i samme bringebær eller hvor?, Hvis antallet enheter som jeg ønsker å kontrollere overskredet kapasiteten på en bringebær 3 normal ocuparia gjør, andre bringebær eller det er noe som vil øke meg kapasiteten?, Hvis du handler med en annen bringebær som ville begge med samme webprogram?.

    Jeg håper, og du kan hjelpe meg med dette.

    vennlig hilsen.

  11. hei, hvordan går det? Det er veldig interessant og nyttig oppføringer i bloggen din. Jeg begynner et prosjekt ligner på dette og jeg har en spørring:

    Materialer som jeg har:

    – Bringebær pi 3
    – PowerBank tplink
    – gjeldende transformeringen av bringebær
    – Relé modul (lik din fra 8 kanaler)

    Ideen er å sette en makt vik og at der det electridicad kjøre bringebær og feed kanaler av modulen relay for aktivere / deaktivere utstyr, men, Når det ikke er strøm (strømbrudd) bringebær (uten relé modul) oppbevare running med powerbank (inntil batteriet men sonde og hold en 6 timer).

    Dette er powerbank:
    http://www.tp-link.ec/products/details/cat-5689_TL-PB10400.html

    Fra Takk allerede for hjelpen!!!

  12. fin dag, Først av alt beklager å gjenopplive en gammel sak, Jeg har et spørsmål…. Jeg har tenkt å aktivere 4 ulike pærer i huset mitt for et privat Studio fotografering, Min idé var å gjøre det fra et lokalt webområde, med en touch av bringebær skjermen å samhandle… Jeg anbefaler

legg igjen et svar

Din epostadresse vil ikke bli publisert. Obligatoriske felt er merket *

*