PI Raspberry - kutekeleza mfumo automatisering nafuu nyumbani [Sehemu II]

Katika post ya awali kuhusu nafuu home automatisering kutokana na rasiberi PI, Tulijifunza kukagua nyumba mains uhusiano kutoka jopo ya zile za kubadilishana nane kuunganishwa yetu Raspberry PI.

Screenshot ya 2015-02-01 20:20:47Leo tutaona jinsi ya kudhibiti jumla ya vifaa kumi na sita ya umeme Shukrani kwa mzunguko kwamba sisi kutekelezwa juu, na kuwezesha bodi amenipa Jordi ya @electronics.cat na wewe tayari inaweza unaona katika muhtasari wa ya Siku ya uhuru wa maunzi; iliyoundwa na sawa, na asilimia mia moja maunzi huru.

Kwa tabia hii, mimi naenda kutumia ya Matawi matatu ya PI, kwamba ni wajibu kwa ajili ya kurekebisha vigingi wote GPIO ya Raspberry PI ya 3.3V kwa 5V Bi directionally na kuruhusu sisi kufanya kazi na pili zimehifadhiwa kwa ajili ya mabasi ya PiCam I2C; Pia kutumia sahani zile za kubadilishana optoacoplados nilikuwa katika makala iliyopita kuhusu uendeshaji-oto maskani.

Pi3Ramas

IP katika masafa ya tatu iliyoundwa na @JordiBinefa.

Haya yote unaweka ovyo yetu jumla ya domotic matako kumi na sita kugawanywa kati ya mbili Rasiberi, na expandability ya juu kwa 128 katika kesi ya ya Wa PI 3 matawi, Tangu inatuwezesha kuchukua faida ya mabasi mawili I2C kujitolea uwezekano wa kutumia Kiunganishi kwa PiCam ya.

Kuunganisha matawi matatu ya pi, Lazima weld sita sambamba na vigingi basi pili I2C kwamba si askari wa kiwanda, kwa sasa Jordi Ni kikamilifu kazi kwenye toleo jipya la sahani yake kwa ajili ya rasiberi PI B + na mifano ya rasiberi PI 2.

OLYMPUS DIGITAL KAMERATunaweza kuwasaidia weld vigingi kushikilia bidragen mbili ya tatu na jumpers, lakini Lazima tuhakikishe wao zaidi imepangiliwa sisi iwezekanavyo kwa nyakati zote kabla soldering yao.

Sisi sasa kuunganisha na Matawi matatu ya PI kwa ya Rasiberi Kuwa hapo awali kuhaririwa Inatenganisha mabamba mawili, Kwa nini Jordi Kutumia vitenganishi plastiki kama.

Pi ya matawi matatu na kielezo plastiki Gawanyishi Kiunganishi P3.

set05_08_v02_P2P3P4

Mpango wa kihusishi taswira P3 yaliyofanywa na @JordiBinefa.

Kufanya uhusiano na ya Relay adapta sahani, Lazima bend vigingi vya relay bodi Nataka kuunganisha matawi matatu ya pi, kutusaidia na koleo baadhi; katika Picha inayofuata unaweza kuona matokeo ya mwisho.

Kulingana na nafasi ya vigingi VCC na GND katika relay yetu, Tutaweka hii jumper zile za kubadilishana katika moduli moja, au mahali pengine kuwekeza kwao; daima kuzaa katika akili kwamba Relay sahani lazima powered na USB.

IN1 IN2 IN3 IN4 VCC GND

IN1 IN2 IN3 IN4 GND VCC

Sasa sisi kuunganisha yetu Relay ya matokeo nane sahani adapta ya zile za kubadilishana, na ni katika ya Matawi matatu ya PI; Ikumbukwe kwamba Moduli hii ni patanifu na nne na nane eleweka zile za kubadilishana.

Basi tunaweza kuona Jedwali la uhusiano kati ya Relay moduli, ya Matawi matatu ya PI, na Raspberry PI.

Moduli relays optoacoplados Kiunganishi P3 Raspberry PI mfano B
VCC + 5V + 5V
KATIKA 7 Biti 0 GPIO 29
KATIKA 6 Biti 1 GPIO 28
KATIKA 5 Biti 2 GPIO 18
KATIKA 4 Biti 3 GPIO 7
KATIKA 3 Biti 4 GPIO 8
KATIKA 2 Biti 5 GPIO 10
KATIKA 1 Biti 6 GPIO 9
KATIKA 0 Biti 7 GPIO 11
GND GND GND

Sasa kuendelea kuunganisha na zile za kubadilishana optoacoplados sahani moja kwa moja kwa ya GPIO ya nyingine Rasiberi, kwa mfano hapa chini unaweza kuona matokeo ya mwisho.

Uhusiano kati ya GPIO ya yetu Rasiberi watakuwa sawa kama katika Makala ya awali, Hata hivyo katika kesi hii mimi aliongeza Jedwali miunganisho yote.

Moduli relays optoacoplados Raspberry PI mfano B
VCC + 5V
KATIKA 1 GPIO 3
KATIKA 2 GPIO 2
KATIKA 3 GPIO 24
KATIKA 4 GPIO 25
KATIKA 5 GPIO 23
KATIKA 6 GPIO 27
KATIKA 7 GPIO 22
KATIKA 8 GPIO 4
GND GND

Kuendesha na hati katika Chatu ya wavuti ambayo tuta ona hapa, Kwanza tuna kutoa ruhusa kwa mtumiaji data ya www Ni mtumiaji pangiwa kwenye seva ya wavuti; Kwa nini Kwanza sisi kufunga apache wavuti seva kama tulivyoona katika makala hii awali na tunaweza Andika sudo visudo katika njia za kuondokea na katika mwisho wa faili Sisi kuongeza kwenye www-data kama sudoer, kuwa matokeo ya mwisho kama hapa chini.

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

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

Kwa kila mmoja vigingi GPIO kumi na sita wafanyakazi katika zoezi hili, Tunahitaji kujenga jalidi ndogo, na Hati mbili katika Chatu; moja kurejea kwenye, na wengine kurejea relay ya, Hapa ni mfano na ya BANA 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)

Katika kila mmoja wa Raspberry PI Tutaweka yako Hati ya kumi na sita kurejea kwenye zile za kubadilishana kuunganishwa au kwa ya vigingi wafanyakazi katika kila, kwamba wanaweza kushauriana katika majedwali ya awali; ya hati sambamba na Rasiberi imeunganishwa moja kwa moja kutoka kwa GPIO kwa relay sahani itakuwa kuwaweka katika mpangilio orodha /Nyumbani/pi/zile za kubadilishana/gpio.

Kuunda uongozi wa mipangilio orodha na subdirectories, na kunakili faili programmed katika Chatu Tutatumia hawa wengine wawili hati katika Bash; ya kwanza itakuwa kwamba kutekeleza katika ya PI kuunganishwa na Matawi matatu ya PI.

#!/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/*

Wengine Hati ya kumi na sita sambamba na udhibiti wa ya Rasiberi kuunganishwa na Matawi matatu ya PI Tunaweza kuwaweka katika mpangilio orodha /Var/www/relay/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/*

Wakati huu sisi lazima kuunda na Jozi ya muhimu ili kuwa na Raspberry PI Ni ukurasa wa kuendesha na hati ya ya kushikamana na ya Matawi matatu ya PI mbali, kama mtumiaji ambaye kufanya hivyo ni data ya www lazima Pangia nywila ili kuingia na kuunda jozi muhimu kwa niaba yako.

#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.

Aliumba mara moja na jozi muhimu umma na binafsi, Sisi kuangalia kwamba tunaweza kufikia kwa SSH bila kuingiza Nenotambulishi; kwa ajili ya kuendeshwa kutoka mtandao huo wa tofauti rasiberi relays kwenye mtandao kiambo sawa, katika kesi hii Imeunganishwa kwao shukrani tariki ya huru wa ndogo WRTNode.

WRTNode_ETHBasi tunaweza kuunda ukurasa wetu nyumbani ambayo itakua ya aina ya ingizo ya vitufe una bonyeza kutekeleza na hati katika Chatu kutoka kiolesura cha wavuti kwa kutumia njia ya posta; kwa mfano huu nitaonyesha wavuti na kuanza nne tu ili makala ni ndefu sana.

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

Kama nataka kulisha yake kila kitu kutoka plagi moja, lazima bypass yote hasi eleweka 220V Relay.

Miunganisho ya mains ya Tutaweza kufanya yao njia sawa kama ilivyo katika ingizo la mwisho, kuzingirwa kati ya mipango ya Chomeka na kubadili miniature circuit breaker kuwezesha ufuatiliaji wa mazoezi.

Chomeka utofauti relay

Katika awamu ya pili juu ya nafuu home automatisering Tunajifunza kuchukua faida ya mabasi mawili I2C Shukrani kwa ya Matawi matatu ya PI, na tutafanya na uthibitisho wa dhana kukagua 128 LEDs kubadilishana na vifaa vya umeme.

Kama wewe kama wewe Nifuate Mtandao wa Twitter, Facebook, Google +, LinkedIn, au kushiriki na vitufe chini ya chapisho hili, Kama una maswali yoyote au maoni Tafadhali usisite kutoa maoni.

Kutusaidia kufikia wasomaji zaidi Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

4 mawazo juu ya"PI Raspberry - kutekeleza mfumo automatisering nafuu nyumbani [Sehemu II]

  1. Nafasi nzuri sana, inaendelea!!
    Swali, Nataka pia Sakinisha uendeshaji-oto maskani na rahisi raspberry mfumo, lakini si ni jinsi kwa mfano ili kujua hali ya mwanga,kipofu au kifaa baadhi, Kama ni ina mkono amilishwa.
    Nasema hili kwa mfano, Kama nataka Washa mwanga kutoka simu lakini kuwa katika hali hiyo ni wakati huo.

    Salu2

    • Hello Igor, Asante kwa maoni yako.

      Hutokea kwangu kwamba unaweza kutumia aina fulani ya Kihisi ambayo inathibitisha mvutano ni kufikia taa unataka udhibiti, na Arifu ni yako seva ya wavuti katika muda halisi kujua wakati wowote kama ni juu au si.

Jibu