Málna PI - egy megfizethető otthoni automatizálási rendszer megvalósítása [II. rész]

Az előző post arról a Raspberry PI alapú megfizethető otthoni automatizálás, Megtudtuk, hogy ellenőrizze a ház hálózati kapcsolatok-ból egy panel-nyolc relék csatlakozik a Málna PI.

Ernyőz-ból 2015-02-01 20:20:47Ma azt látjuk, hogyan kell irányítani egy összesen tizenhat elektromos készülékek Köszönet az áramkör, hogy mi végre fent, és lehetővé teszi a lapok adott nekem Jordi a @electronics.cat és akkor már látta az összefoglalása a Hardver szabadság napja; tervezte, ugyanaz, és a száz százalékos ingyenes hardver.

Az a gyakorlat fogom használni a PI három ága, Ez a csapok felelősséget GPIO a Málna PI a 3.3V a 5V bi-igazgató, és lehetővé teszi számunkra, hogy a második a PiCam I2C busz számára fenntartott dolgozik; Én is használ lemez relék optoacoplados használtam az előző cikkben a haza automatizálás.

Pi3Ramas

IP-ban három tartományok tervezte @JordiBinefa.

Mindez helyezi a rendelkezésünkre összesen tizenhat foglalat domotic oszlik két Málna, és a bővíthetőség akár 128 esetében a PI 3 ágak, Mivel ez lehetővé teszi számunkra, hogy kihasználják a két busz I2C feláldozása a lehetőségét, hogy a csatlakozót, és a PiCam.

Csatlakozni a pi három ága, Mi meg kell hegeszteni a második busz csap megfelelő hat I2C amelyek nem katonák gyár, abban a pillanatban Jordi Aktívan dolgozik, egy új változata a lemez málna PI b + és a Raspberry PI modellek 2.

OLYMPUS DIGITÁLIS FÉNYKÉPEZŐGÉPMi segítünk hegeszteni a csapok a két csík három, a gazdaság áthidalók, de Gondoskodnunk kell arról, ők több igazodnak velünk lehető mindenkor Forrasztó őket előtt.

Mi lehet csatlakozni, most a PI három ága hogy a Málna Korábban már szerkesztett a két lemez elkülönítése, miért Jordi Elválasztójel használata ilyen műanyagok.

A pi a három ág és műanyag index elválasztó csatlakozó P3.

set05_08_v02_P2P3P4

Rendszer által @JordiBinefa P3-csatlakozó.

Végezze el a kapcsolatot a Relé adapterlemez, Mi kell kanyarban a csap a relé tábla Szeretnék csatlakozni a pi három ága, segít minket néhány fogó; a következő képen látható a végeredmény.

Attól függően, hogy a helyzet a csapok VCC és GND a mi váltó, Ez kerül jumper relé egy modul, vagy egy másik helyzetben, hogy őket; mindig szem előtt tartva, hogy Relé lemez kell energiát termelő mellett USB.

IN1 IN2 IN3 IN4 VCC GND

IN1 IN2 IN3 IN4 GND VCC

Most mi fog csatlakozni a relé, nyolc kimenet, hogy a relék adapter lemez, és a PI három ága; Megjegyzendő, hogy a Ez a modul összeegyeztethető-val négy és nyolc kimenet a relék.

Akkor láthatjuk, hogy a táblázat közötti kapcsolat a Relé modul, a PI három ága, és Málna PI.

Modul relé optoacoplados P3 csatlakozó Málna PI modell B
VCC + 5V + 5V
A 7 Kicsit 0 GPIO 29
A 6 Kicsit 1 GPIO 28
A 5 Kicsit 2 GPIO 18
A 4 Kicsit 3 GPIO 7
A 3 Kicsit 4 GPIO 8
A 2 Kicsit 5 GPIO 10
A 1 Kicsit 6 GPIO 9
A 0 Kicsit 7 GPIO 11
GND GND GND

Most tovább csatlakoztassa a relé optoacoplados lemez közvetlenül a GPIO a másik Málna, az alábbi képen látható a végeredmény.

A kapcsolatok között, a GPIO a mi Málna lesz ugyanaz, mint a az előző cikkben, Azonban ebben az esetben van hozzá minden-a kapcsolatok tábla.

Modul relé optoacoplados Málna PI modell B
VCC + 5V
A 1 GPIO 3
A 2 GPIO 2
A 3 GPIO 24
A 4 GPIO 25
A 5 GPIO 23
A 6 GPIO 27
A 7 GPIO 22
A 8 GPIO 4
GND GND

Futtatásához a Python scriptek a web, hogy látni fogjuk alább, Először van, hogy engedélyeket, hogy a felhasználó www-data A felhasználó az internetes kiszolgálóhoz rendelt; miért Első mi akarat felszerel a gyorsan pókháló szolgál, mint láttuk az előző cikkben Mi fog írni sudo visudo a terminál, és a fájl végére Mi lesz hozzá www-data, sudoer, a végeredmény, mint alul, hogy.

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

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

Mind a tizenhat GPIO csapok Ez a gyakorlat a munkavállalók, Szükségünk van, hogy hozzon létre egy alkönyvtárat, és a Python két szkriptek; egyik, hogy kapcsolja be a, a másik pedig a relé, Itt van egy példa a PIN-KÓD 11.

#!usr/bin/env/ python
#enciende.py
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(11, GPIO.IN)
#!usr/bin/env/ python
#apaga.py
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(11, GPIO.OUT)

Minden a Málna PI Mi lesz helye a Tizenhat szkriptek bekapcsolásához a csatlakoztatott relék, hogy az csapok az egyes alkalmazottak, amit Ön tanácsot kér-a korábbi táblázatok; a parancsfájlok megfelelő a Málna közvetlenül csatlakozik a GPIO érdekében a lemez tegyük őket a Taglista /Kezdőlap/pi/relék/gpio.

A hierarchia, a könyvtárak és alkönyvtárak létrehozása, a programozott fájlok másolására Python Fogjuk használni e két parancsfájlok a Bash; az első lesz, hogy végre a PI csatlakozik a PI három ága.

#!/bin/bash
#Raspberry PI con la pi de 3 ramales.

#Creamos la jerarquía de directorios.
mkdir /home/pi/reles/gpio
mkdir /home/pi/reles/gpio/11
mkdir /home/pi/reles/gpio/9
mkdir /home/pi/reles/gpio/10
mkdir /home/pi/reles/gpio/8
mkdir /home/pi/reles/gpio/7
mkdir /home/pi/reles/gpio/18
mkdir /home/pi/reles/gpio/28
mkdir /home/pi/reles/gpio/29
ls /home/pi/reles/gpio

#Y copiamos los scripts
cp enciende.py apaga.py /home/pi/reles/gpio/11
cp enciende.py apaga.py /home/pi/reles/gpio/9
cp enciende.py apaga.py /home/pi/reles/gpio/10
cp enciende.py apaga.py /home/pi/reles/gpio/8
cp enciende.py apaga.py /home/pi/reles/gpio/7
cp enciende.py apaga.py /home/pi/reles/gpio/18
cp enciende.py apaga.py /home/pi/reles/gpio/28
cp enciende.py apaga.py /home/pi/reles/gpio/29
ls /home/pi/reles/gpio/*

A többiek Tizenhat szkriptek megfelelő ellenőrzése a Málna csatlakozik a PI három ága Mi akarat eltartás őket a könyvtárban /var/www/váltó/gpio /.

#!/bin/bash
#Raspberry pi con relé compatible con GPIO.

#Creamos la jerarquía de directorios.
mkdir /var/www/rele/gpio
mkdir /var/www/rele/gpio/4
mkdir /var/www/rele/gpio/22
mkdir /var/www/rele/gpio/27
mkdir /var/www/rele/gpio/23
mkdir /var/www/rele/gpio/25
mkdir /var/www/rele/gpio/24
mkdir /var/www/rele/gpio/2
mkdir /var/www/rele/gpio/3
ls /var/www/rele/gpio

#Y copiamos los scripts.
cp enciende.py apaga.py /var/www/rele/gpio/4
cp enciende.py apaga.py /var/www/rele/gpio/22
cp enciende.py apaga.py /var/www/rele/gpio/27
cp enciende.py apaga.py /var/www/rele/gpio/23
cp enciende.py apaga.py /var/www/rele/gpio/25
cp enciende.py apaga.py /var/www/rele/gpio/24
cp enciende.py apaga.py /var/www/rele/gpio/2
cp enciende.py apaga.py /var/www/rele/gpio/3
ls /var/www/rele/gpio/*

Ekkor létre kell hoznunk egy kulcspár úgy, hogy a Málna PI Az oldal futtatásához a parancsfájlok a kapcsolódó, a PI három ága távolról, a felhasználó, akik azt www-data hozzá kell rendelnie egy jelszó annak érdekében, hogy a logika és a kulcspár létre az Ön nevében.

#Asignamos un password al usuario www-data
usuario@maquina:~$ passwd www-data

Introduzca la nueva contraseña de UNIX: 
Vuelva a escribir la nueva contraseña de UNIX: 
passwd: contraseña actualizada correctamente

#Creamos el par de claves RSA de 4096 bits
www-data@maquina:~$ ssh-keygen -b 4096 -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/var/www/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /var/www/.ssh/id_rsa.
Your public key has been saved in /var/www/.ssh/id_rsa.pub.
The key fingerprint is:
5a:dc:bd:af:0d:ae:9d:9f:bb:c2:d4:5b:dd:67:8d:18 tmo@tmo-K55A
The key's randomart image is:
+--[ RSA 4096]----+
|                 |
|                 |
|                 |
|       . . .E    |
|        S . .+ .+|
|       o    o.o B|
|      .    oo  +.|
|           oo=.. |
|          ..=+Bo |
+-----------------+

#Copiamos la clave pública a la otra raspberry
www-data@maquina:~$ ssh-copy-id pi@192.168.*.***                 
Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'pi@192.168.*.***'"
and check to make sure that only the key(s) you wanted were added.

Létrehozása után a nyilvános és személyes kulcspár, Ellenőrizzük, hogy tudunk belépés mellett SSH a jelszó beírása nélkül; a különböző ugyanaz pókháló kezelőterű málna relék ugyanazon a helyi hálózaton, Ebben az esetben Csatlakoztatta őket, köszönhetően a kis ingyenes útválasztó WRTNode.

WRTNode_ETHMajd hozunk létre, a haza oldal, amely tartalmazza a gomb bemenet típusa akkor nyomja meg, hogy végre a parancsfájlok a Python a a webes felületen, a post metódussal; Ebben a példában fogom mutatni a weben, csak négy indul, hogy a cikk nem túl hosszú.

<html>
 <head>
                 <!--/var/www/rele/index.php-->
 </head>
 <body>

 <!--GPIO11--> 
 <form action="" method="post">
 Enchufe 0 [GPIO 11 - P3 Bit 7 - IN1]&nbsp;<input type="submit" name="encender11" value="Encender">
 <input type="submit" name="apagar11" value="Apagar">
 </form>
 &nbsp;&nbsp;

 <!--GPIO04--> 
 <form action="" method="post">
 Electrodomestico 0 [GPIO 04 - P4 Bit 7 - IN1]&nbsp;<input type="submit" name="encender4" value="Encender">
 <input type="submit" name="apagar4" value="Apagar">
 </form>
 <br></br>

 <!--GPIO09--> 
 <form action="" method="post">
 Enchufe 1 [GPIO 09 - P3 Bit 6 - IN2]&nbsp;<input type="submit" name="encender9" value="Encender">
 <input type="submit" name="apagar9" value="Apagar">
 </form>
 &nbsp;&nbsp;

 <!--GPIO22--> 
 <form action="" method="post">
 Electrodomestico 1 [GPIO 22 - P4 Bit 6 - IN2]&nbsp;<input type="submit" name="encender22" value="Encender">
 <input type="submit" name="apagar22" value="Apagar">
 </form>
 </body>
</html>

<?php

// Funciones PHP del pin GPIO 11
 if ($_POST[encender11]) { 
 $a- exec("sudo python /var/www/rele/gpio/11/enciende.py");
 echo $a;
 }

 if ($_POST[apagar11]) { 
 $a- exec("sudo python /var/www/rele/gpio/11/apaga.py");
 echo $a;
 }
// Fin de las funciónes del pin GPIO 11

// Funciones PHP del pin GPIO 9
 if ($_POST[encender9]) { 
 $a- exec("sudo python /var/www/rele/gpio/9/enciende.py");
 echo $a;
 }

 if ($_POST[apagar9]) { 
 $a- exec("sudo python /var/www/rele/gpio/9/apaga.py");
 echo $a;
 }
// Fin de las funciónes del pin GPIO 9

// Funciones PHP del pin GPIO 04

  if ($_POST[encender4]) { 
   $a- exec("ssh root@192.168.*.*** python /home/pi/reles/gpio/4/enciende.py");
   echo $a;
  }

  if ($_POST[apagar4]) { 
   $a- exec("ssh root@192.168.*.*** python /home/pi/reles/gpio/4/apaga.py");
   echo $a;
  }

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

// Funciones PHP del pin GPIO 22

  if ($_POST[encender22]) { 
   $a- exec("ssh root@192.168.*.*** python /home/pi/reles/gpio/22/enciende.py");
   echo $a;
  }

  if ($_POST[apagar22]) { 
   $a- exec("ssh root@192.168.*.*** python /home/pi/reles/gpio/22/apaga.py");
   echo $a;
  }

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

Ha azt akarom, hogy takarmány neki mindent egyetlen konnektorból, kell kitérő minden negatív eredmények 220V Relé.

A hálózati kapcsolatok Mi lesz, hogy azok ugyanúgy, mint az utolsó bejegyzés, között a dugó és a kapcsoló rendszerek miniatűr circuit breaker megkönnyítése érdekében a nyomon követése a gyakorlatban.

Dugó differenciál relé

A következő részlet a megfizethető otthoni automatizálás Megtanuljuk, hogy kihasználják a két busz I2C Köszönöm, hogy a PI három ága, és mi lesz a próba-ból fogalom ellenőrzése 128 cserélhető LED-EK, villamos készülékek.

Ha tetszik, akkor Kövess engem, Twitter, Facebook, A Google +, LinkedIn, vagy ossza meg a gombok alatt a kiadvány, Ha bármilyen kérdése van, vagy javaslatokat kérjük ne habozzon megjegyzést.

Segítsen nekünk, hogy elérje több olvasót Share on LinkedIn
LinkedIn
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on Google+
A Google +
Email this to someone
e-mailben

4 gondolatok a"Málna PI - egy megfizethető otthoni automatizálási rendszer megvalósítása [II. rész]

  1. Nagyon jó hozzászólás, továbbra is!!
    Egy kérdés, Szeretnék venni-t is felszerel egy haza automatizálás könnyű málna rendszerrel, de nem, hogyan, például, hogy ismerje a fény,vak vagy valamilyen eszköz, Ha manuálisan aktiválva.
    Én mondom ezt, például, Ha azt akarom, hogy kapcsolja be a fényt, a telefon, de nem abban az időben minden állam.

    Salu2

    • Hello Igor, Gracias por tu comentario.

      Előfordul, hogy nekem, hogy Ön tudna használ némely féle érzékelő, amely ellenőrzi a feszültség, hogy eléri a kívánt vezérlő világítás, és a web-kiszolgáló valós időben tudni, bármikor, ha ez nem, vagy.

Hozzászólás