Aveņu PI - pieejamu mājas automatizācijas sistēmas ieviešanas [I daļa]

Iepriekšējās ziņas šajā sērijā, Mēs redzējām Kas ir kontakti GPIO, un kā to kontrolēt LED ar viņiem no mūsu Aveņu PI pēc Bash un Python, o ar vienu Web lietojumprogrammu.

portadarelele

Šajā gadījumā mums būs iemācīties kontrolēt jaudu elektriskās iekārtas; pirms sākat serverī ir instalēta LUKTURIS kā mēs redzējām iepriekšējā piegādes.

Lai to īstenotu, gatavojas izmantot releju dēli no 5V un astoņiem kanāliem, Tai jābūt optoacoplada lai aizsargātu aveņu PI; Tā kā ierīces, ka mēs gatavojamies, sazinieties ar 220V, un PIN GPIO Aveņu darbu ar ne vairāk kā 3,3V.

placarele

Relejus optoacoplados plate.

Mums ir jādara no relay un aveņu PI šādi savienojumi.

Moduļa releji, optoacoplados
Aveņu PI modeli, lai, B, A +, B +
VCC
+ 5V
IN 8
GPIO 17
GND GND
OLYMPUS DIGITĀLĀS KAMERAS

Savienojumus starp PI aveņu un releju plate.

Tagad mēs tests, ja savienojumi strādā, ar vienkāršu pārbaudi Bash, iestatot pin GPIO 17 kā izvadi, un sniedzot augstu loģiskā vērtība.

#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

Kad ir ieslēgta led kontroles relejs, jo mēs varam to izslēgt un atbrīvot 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

Mums jau ir pārbaudīts, darbību, Tātad tagad mēs gatavojamies apskatīt web lappusi, kas mums ir nepieciešams, lai plānotu, Tas ir diezgan vienkārši, nekā pārbaude ar LED Mēs redzējām pēdējā piegāde.

<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
?>

Mums ir nepieciešams, lai izveidotu šīs trīs bash skripti lai ieslēgtu, Izslēgšana un mirgojošs; Šie skripti tiek izmitināti /var/www/relay/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

Kad mums ir skripti un index. php par to attiecīgajos maršrutos, Mums ir jāspēj skatīt Šī hierarhija web servera direktoriju.

Screenshot 2014-11-08 16:27:54Šajā gadījumā mums ir jāveic arī sudoer lietotājam www-data; palaidiet sudo visudo termināla, un pievienot to pi sadaļā lietotājs tā, lai lietotājs www-data Jūs varat kontrolēt pins GPIO.

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

Tagad mums tiks pārbaudītas trīs pogas Pārbaudiet, vai viss darbojas pareizi. Kad darbs, un ieslēdziet releju plate leds, Mums būs dzirdams “Noklikšķiniet/klabēt” ka tu izstarot, atverot un aizverot iecirkņa.

Screenshot 2014-11-08 13:30:46

Web lietojumprogrammu, kurai kontroles relejs.

Mēs redzēsim, kā savienot to lampu vai citu ierīci, lai to kontrolētu no jebkuras ierīces, izmantojot web pārlūkprogrammu.

Shēmas savienojiet relejs starp magnētoptiskais siltuma slēdzi un plug mūsu māju sienas būtu šādi; shēmu ir izmantojuši tēlu viena kanāla pārraides, Šajā piemērā tas ir kanāla ieeja 8 astoņu kanālu plate.

rele5vmagnetotermico

Slēguma shēmā elektropaneļa māja.

Par pierādījumu jēdziens, Tiks izmantot šādu shēmu kontaktspraudņi, ka man nācās mainīt nama istabā, un lampa. Zemāk ir sienas, un virs kurš esam pārņemts šajā testā savienot lukturi; releju, kas darbojas kā slēdzis.

rele5venchufe1

Shēma, ko izmanto šim testam.

Pastāv trīs ostās elektrisku savienojumu katru relay output: COM, parasti tiek atvērtas un parasti aizvērts. Programmā COM Mums jāizveido savienojums pozitīvo elektriskās Tas būs padeves ierīces, un tikai vienā pārējie divi kabelis stiepjas uz pozitīvo iekārtas. Uz negatīvs savieno tieši no ierīces kontaktdakšu.

PB080196

Pārraides savienojumus.

Tas ir atkarīgs, ja pievienosiet to parasti tiek atvērtas, vai parasti aizvērts Ja ierīce ir ieslēgta vai izslēgta, ja jūs izslēdzat aveņu.

Šajā piemērā relay ir savienots ar parasti aizvērts, Tātad, ja jūs izslēdzat aveņu, sveces darba; Ja conectásemos to parasti tiek atvērtas, Kad atvienojot aveņu lukturis nav var aizdedzināt jo ķēde būtu atvērta; Mēs saprotam, tas labāk ar video.

Ja jums patīk jūs varat sekot mani uz Čivināt, Facebook, Google +, LinkedIn, vai dalīties tajā ar pogām zem šīs publikācijas, Ja jums ir kādi jautājumi vai ierosinājumi, lūdzu, nekautrējieties komentēt.

Palīdz mums sasniegt vairāk lasītāju Share on LinkedIn
LinkedIn
Share on Facebook
Facebook
Tweet about this on Twitter
Čivināt
Share on Google+
Google +
Email this to someone
e-pasts

35 domas par"Aveņu PI - pieejamu mājas automatizācijas sistēmas ieviešanas [I daļa]

  1. Ieslēgšana un izslēgšana no interneta LEDS

    labrīt, Nekas nespēj, mazākais, ko varu teikt, paldies, Super
    apmācība, citu izskatu, Bravo, un paldies.

    Jautājums, Saprast tieši tā, kā un kur būtu instalēt skriptu,
    Mans nodoms ir izveidot WEB lappusi, patiesībā, nevar būt, jo man
    darbs ar PHP un WEB, kā piemērs, izmantojot datoru, izveidots savienojums ar internetu
    jebkur, lai aktivizētu dažādus gaismas diodēm vai releji, nav, kā to izdarīt,
    iepriekš, un, protams, Paldies par jebkādu palīdzību.

    Draudzīgi Ignacio no Beļģijas

  2. Skripti un vienu index. php ir kopēt tos uz /var/www/rele, kā parādīts šajā apmācība, katram ir savas trases.

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

    Reizi, to, kā tā darbojas releju pievienots GPIO 17, pēc dažām dienām būs beidzas ar otrā daļa darboties astoņu darba rezultāti.

    Piekļūt no interneta vajadzētu konfigurēt maršrutētāju pārsūtīt ienākošos pieprasījumus, portu 80 lai PI aveņu. Virtuālajā serverī maršrutētāju vai NAT opciju var konfigurēt tā.

    Visbeidzot, piekļūt vairāk viegli varat NoIP piereģistrēties un saņemt bezmaksas domēns, kas saistīts ar jūsu valsts tipa casa.no-ip.biz ip.

    PD: Pārliecinieties, ka jums aizsargāt šo lapu ļoti labi vien varat tam piekļūt.

    Paldies par komentējot.

  3. labdien,

    Viss strādā perfekti, Kaut arī vienīgi lan vai ar Xming caur ssh, Nevar izveidot savienojumu ar attālo, "ar citu datoru, izmantojot internetu, Man ir noip un dyndns, un var nedarboties, Ja tev ir kāda ideja, es pateicos, tas jūs iepriekš,

    Spēcīga sveicienu un sk., paldies

    Ignacio

    • Es esmu priecīgs, ka tas beidzot strādā, bet kuri protokoli pieslēgties no interneta jūs lietojat?

      Jums ir atvērt ostu pakalpojumus, kurus vēlaties izmantot maršrutētāju, kas nodrošina piekļuvi internetam (HTTP porta 80, HTTPS portu 443, SSH ports 22, u.c.) un portu pāradresācija uz privāto IP aveņu IP maršrutētājs, kas nodrošina piekļuvi internetam.

      Beidzot tagad jums būs jāsāk savienojumu no cita tīkla saskaras publiskā IP jūsu router, Jūs varat mēģināt no sava mobilā tālruņa 3 G.

      Ja tas darbojas, Tagad jūs varat doties uz konfigurēt piekļuvei no nosaukuma, kas ir viegli atcerēties, nevis publiskā IP NoIP vai Dyn; Turklāt ja instalēt NoIP aveņu, uz mājas lapā NoIP publiskā IP automātiski mainīsies ikreiz, kad šīs izmaiņas maršrutētāja.

      Lai panāktu augstāku drošības pakāpi, Būtu labāk, ja jums konfigurēt VPN savienojumu ar jūsu mājas tīklu izveidei, un kanāla jūsu traffic.

  4. labdien, Man ir jautājums, kas man radīja par gpio4, sudo atbalss 1 > /sys/class/gpio/gpio4/vērtība izslēgt rezultātā, un ar sudo echo 0 > /sys/class/gpio/gpio4/vērtība, ieslēgt, es gāju, vajadzētu būt revez, būs padarīt kaut ko ļaunu?.
    vieta failu es varu pieslēgt, izmantojot tīmekli, Nospiežot jebkuru pogu (ieslēgt, izslēgt, vai mirgo) tikai izslēgt veda, bet nevar ieslēgt, nedz mirgoņa.
    Es augstu vērtēju palīdzību jūs varat sniegt man.

    • labdien, vispirms Paldies daudz sliktāk jautājumu 🙂

      Jūs varat sekot pamācību soli pa solim, relay ir 3 adatas veida:

      – VDC-> varas (PIN KODU 5V RPI)
      – GND GND RPI Pin->
      – IN-> ir ieraksti, un atkarībā no tā, vai jūsu valstī ir augsts vai zems relay būs ieslēgt vai izslēgt.

      Piemērs izmanto IN8, individuāli debes cambiarlo par IN0 IN1 y kā releju, pirms nākamo comenté el apmācība 🙂

      PD: Sean optoacoplados Asegurate, Los de la foto tas dēls.

      ar sveicieniem, Es ceru, ka arī ayudado.

  5. Es darīju visu, ko ieteica kā iepriekš, Kad es rakstīt komandas termināļa, darbi, Tomēr, Ja es varu iegūt failu enciende.sh un nosūtīt palaist termināla nedarbojas un pat neredzu lapā index. php

  6. Antes que nada, muchas gracias por tus explicaciones, muy buenas.

    He seguido tus indicaciones y puedo prender la bomba de aire de una pecera a distancia.

    El problema que tengo es que me falta poder corroborar el status del pin (True o False)

    ¿Como puedo hacer para que me aparezca este dato en la misma página que hice?

    Está armada siguiendo tus indicaciones, prende y apaga el relay correctamente.

    • Hola Teodoro,

      Esto que comentas es algo que muchos lectores preguntan, por lo que estoy preparando una siguiente parte del tutorial en el que programaremos un indicador de estado de los pins GPIO en mis ratos libres.

      En cuanto esté terminado lo publicaré en el Blog.

      uz drīzu redzēšanos.

  7. Antes que nada muchisimas gracias por tu blog.. es espectacular. Yo por mi parte me he comprado todo lo necesario, he seguido todos tus tutoriales, pero a la hora de hacer funcionar la placa de 8 reles, algo me falla.

    La pregunta es como se si tengo la placa octoacoplada?? es que parece que no le llega la corriente suficiente para activarla. Mis conexione son:

    5v -> VCC (de la placa)
    GND (p3) -> GND (de la Placa)
    GPIO4 -> IN4 (de la placa)

    Cuando activo el gpio con el script, se enciende por un momoento el diodo led de control, pero no se queda encendido. Entiendo que es porque el gpio se activa a 3,3 voltios y los reles son de 5v. Sin embargo juraria que tenemos la misma placa así que tiene que ahber una forma de hacerlo funcionar no?

    Apreciaria cualquier tipo de comentario, la placa de los reles es la siguiente
    (8 relays Module srd-05VDC-SL-C)

    Muchas gracias por todo

  8. Hola Loty,

    La mayoría de las placas de relés compatibles que se comercializan para microcontroladores vienen ya optoacopladas, puedes comprobar si lo es en las especificaciones o buscando los optoacopladores en la placa; el que hace referencia al numero de serie que has comentado si que lo és.

    Efectivamente estas placas se alimentan con 5V, pero la salida puede ser activada también mediante actuadores de 3,3V como los GPIO de la Raspberry PI.

    De todos modos el problema parece ser falta de alimentación, por lo que cambiar el transformador de la Raspberry por uno de 2A o alimentar de forma externa el relé podría ayudar.

    Saludos y hasta pronto.

    • labdien!
      Muchisimas gracias por tu pronta respuesta. He hecho las pruebas directamente sobre la placa de reles (quitando la RASPBERRY PI), para ver si era que la placa la tenia mal. He conseguido un alimentador externo de 5V a 2A.

      Conecto el GND a menos del alimentador el VCC al + del alimentador y el IN4 tambien al +. y ahi.. FUNCIONA!! el rele hace click y el LED indicador se queda encendido, he hecho al prueba con una lampara de 220v y todo sigue funcionando. El problema surge con la RASPBERRY PI.

      He conectado la placa al alimentador externo “+” al VCC “-” al GND y al IN4 le he conectado el gpio4 de la RASPBERRY, y ahi cuando activo el GPIO, nada pasa. He medido el GPIO y da 3,3 v. He leido en otros sitios y se dice que es porque debo conectar el jumper VCC-JCC de otra forma. No se que hago mal. Puede ser que yo active los gpio a traves de BASH?? Nepieciešams strādāt pie viņas lētas kartes lietošanu la libreria de python no GPIO S??

      MUCHAS gracias por cualquier ieguldījums

  9. labdien, Man bija, kam problēmas dzēst gaismu ar releju, Šajā apmācība, izmantojot kodu, nevarētu gaisma normālu, bet nevar dzēst izdzēš un releju bija apbruņots, atbruņot tikai tad, kad es atvienots kabelis no relay aveņu. Pēc vairākiem mēģinājumiem, man izdevās izdzēst šo pamācību ar kodu pamācību kods veda uz Dzēst. iegūt šīs veidlapas koda daļu: Ja ($– AMATU[apagar17]) {
    $lai- exec(“sudo python/var/www/AcenderWebRele/apaga3.py”);
    $lai- exec(“sudo atbalss 17 > /eksporta/gpio/sys/klase”);
    $lai- exec(“sudo atbalss 0 > /gpio/sys/class/gpio17/vērtība”);
    $lai- exec(“sudo atbalss 17 > /sys/klase/gpio/neeksportēt”);
    ECHO $a;
    }

  10. Buenas tardes desde México, mi nombre es Enrique, estoy interesado en la parte de implementar domotica con raspberry esto derivado de un proyecto escolar, en los tutoriales mencionas que debemos de tener linux para lo cual no conozco mucho, es posible desarrollar el proyecto, tanto la página web como la programación necesaria en el raspberry con windows?, el servidor web que mencionas debe instalarse en la misma raspberry o donde?, si la cantidad de dispositivos que quiero controlar sobrepasan la capacidad de una raspberry 3 normal que ocuparia hacer, otra raspberry o existe algo que me aumente la capacidad?, en caso de ocupar otra raspberry como controlaria ambas con la misma aplicación web?.

    Espero y puedas ayudarme con esto.

    ar sveicieniem.

  11. Hola como estas? Verdaderamente es muy interesante y util las entradas en tu blog. Estoy iniciando un proyecto similar a este y tengo una consulta:

    Materiales que tengo:

    raspberry pi 3
    Powerbank tplink
    trafo corriente de raspberry
    Modulo rele (igual al tuyo de 8 kanāli)

    La idea es poner una entrada de electricidad y que cuando exista electridicad funcione la raspberry y alimente los canales del modulo de rele para encender/apagar equipos, bet, cuando no haya electricidad (corte de luz) la raspberry (sin modulo de rele) siga funcionando con el powerbank (hasta agotar bateria pero ya lo probe y aguanta unas 6 stundas).

    El powerbank es este:
    http://www.tp-link.ec/products/details/cat-5689_TL-PB10400.html

    Desde ya muchisimas gracias por tu ayuda!!!

  12. buen dia, primero que nada disculpe por revivir un tema antiguo, tengo una duda…. pretendo activar 4 focos diferentes en mi casa para un estudio privado que tengo de fotografia, mi idea era hacerlo desde una pagina web local, usando una pantalla touch de raspberry para interactuarque me recomiendas

atstāt atbildi

E-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti *

*