PI Raspberi - melaksanakan sistem automasi rumah dengan harga yang berpatutan [Bahagian I]

Dalam jawatan sebelumnya dalam siri ini, Kita lihat Apakah PIN GPIO, dan bagaimana untuk kawalan yang LED dengan mereka daripada kami PI Raspberi oleh Bash dan Python, o dengan salah satu aplikasi web.

portadarelele

Pada kesempatan ini kita akan belajar untuk mengawal kuasa perkakas elektrik; sebelum anda memulakan pelayan kami telah memasang LAMPU seperti yang kita lihat di penghantaran terdahulu.

Untuk melaksanakan, akan menggunakan Penyampaian satu Lembaga yang 5V dan lapan saluran, Ia mesti optoacoplada untuk melindungi PI Raspberi; Sejak peranti yang kita akan semak dengan 220V, dan PIN GPIO Kerja-kerja Raspberi dengan maksimum 3,3V.

placarele

Plat optoacoplados Relays.

Kami ada kaitan antara tersebut dan PI Raspberi sambungan yang berikut.

Modul menyampaikan optoacoplados
Raspberi PI model untuk, B, A +, B +
VCC
+ 5V
DALAM 8
GPIO 17
GND GND
KAMERA DIGITAL OLYMPUS

Sambungan antara PI Raspberi dan plat penyampai.

Sekarang kita akan menguji jika sambungan yang berfungsi, dengan satu ujian yang mudah dalam Bash, menetapkan nombor pin GPIO 17 sebagai output, dan memberi nilai yang tinggi yang logik.

#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

Sebaik sahaja telah dihidupkan diketuai kawalan penyampai, kerana kita boleh memadamkannya dan melepaskan 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

Kami telah pun menguji fungsi, Jadi sekarang kita akan lihat halaman web yang kita perlu menjadualkan, Ianya agak lebih mudah daripada ujian dengan pihak LED Kita lihat dalam penghantaran terakhir.

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

Kita perlu mewujudkan ini tiga skrip secara bash untuk menghidupkan, Mematikan dan berkelip; Skrip ini akan ditempatkan di /VAR/www/penyampai/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

Apabila kita mempunyai di skrip dan index.php laluan mereka masing-masing, Kita perlu dapat melihat hierarki yang berikut Direktori pada pelayan web.

Screenshot dari 2014-11-08 16:27:54Pada kesempatan ini kami juga perlu membuat Pada kesempatan ini kami juga perlu membuat kepada pengguna www-data; untuk itu, menjalankan sudo visudo dalam terminal, dan akan Tambah pi di bawah pengguna supaya pengguna www-data Anda boleh mengawal PIN GPIO.

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

Sekarang kita akan menguji tiga butang untuk Mengesahkan bahawa segala-galanya berfungsi dengan betul. Sekali bekerja, dan penyampai plat LED menghidupkan, Kita akan mendengar yang “Klik/clack” bahawa anda mengeluarkan apabila membuka dan menutup litar.

Screenshot dari 2014-11-08 13:30:46

Aplikasi web untuk mengawal tersebut.

Kita akan lihat cara untuk menyambung ke lampu atau apa-apa perkakas lain untuk mengawalnya dari sebarang peranti dengan penyemak imbas web.

Skima untuk Sambung penyampai antara magneto-haba suis dan plug dinding rumah kami adalah seperti berikut; bagi skim, saya telah menggunakan imej penyampaian satu saluran, dalam contoh ini ianya Dalam saluran 8 plat lapan saluran.

rele5vmagnetotermico

Sambungan Rajah dalam panel elektrik rumah.

Bagi bukti konsep, Saya akan menggunakan skima berikut dengan plug yang syarat-syarat di dalam Bilik rumah, dan lampu. Berikut adalah dinding, dan ke atas yang telah ditunggang dalam ujian ini untuk menyambung dalam lampu; tersebut bertindak sebagai suis.

rele5venchufe1

Skim yang digunakan dalam ujian ini.

Terdapat tiga Port sambungan elektrik bagi setiap output di dalam penyampaian: COM, biasanya Buka dan biasanya ditutup. Dalam COM Kita mestilah bersambung yang positif elektrik Ia akan memberi makan perkakas, dan dalam satu-satunya dua lagi memanjangkan kabel kepada yang positif perkakas. Dalam negatif menghubungkan terus dari palam kuasa untuk perkakas.

PB080196

Sambungan penyampai.

Ia bergantung pada jika anda menyambung kepada biasanya Buka, atau biasanya ditutup Jika perkakas telah dihidupkan atau padam jika anda mematikan Raspberi dalam.

Dalam contoh ini, penyampai yang disambungkan dalam biasanya ditutup, Jadi, jika anda memadamkan Raspberi dalam, kerja-kerja palam; Jika conectásemos dalam biasanya Buka, Bilakah lampu Raspberi memutuskan tidak boleh terbakar kerana litar akan terbuka; Kita akan memahami dengan lebih baik dengan video.

Jika anda mahu anda boleh Ikuti saya di Twitter, Facebook, Google +, LinkedIn, atau berkongsi dengan butang di bawah penerbitan ini, Jika anda mempunyai sebarang pertanyaan atau cadangan sila tidak teragak-agak untuk memberi komen.

Membantu kita untuk mencapai lebih banyak pembaca Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

34 tinjuan"PI Raspberi - melaksanakan sistem automasi rumah dengan harga yang berpatutan [Bahagian I]

  1. Pasang dan padam LED dari internet

    selamat pagi, Pada apa-apa, sekurang-kurangnya saya boleh katakan, terima kasih, Super
    tutorial, Lihat lagi, Bravo dan terima kasih.

    Soalan, Saya tidak memahami betul-betul sebagai dan di mana saya patut memasang skrip,
    niat saya adalah untuk mempunyai laman WEB, hakikatnya, tidak seperti yang saya dapat
    bekerja dengan PHP dan WEB, sebagai contoh, melalui PC, disambungkan ke Internet
    mana-mana sahaja untuk mengaktifkan LED yang berbeza atau relays, tidak adalah bagaimana untuk melakukannya,
    lebih awal dan sudah tentu, Terima kasih banyak untuk bantuan mana-mana.

    Sebaiknya Ignacio dari Belgium

  2. Skrip dan index.php tunggal yang anda perlu untuk menyalinnya ke /var/www/rele seperti yang ditunjukkan dalam tutorial, masing-masing mempunyai laluan yang.

    index.php di /var/www/rele/index.php
    apaga.SH, enciende.SH dan parpadea.sh di /var/www/rele/gpio/17 /

    Untuk masa yang perlu kerana ia berfungsi untuk penyampai yang bersambung ke GPIO di 17, dalam beberapa hari saya akan berakhir dengan bahagian kedua untuk mengendalikan output dalam lapan.

    Untuk mengakses dari internet, anda harus menatarajah penghala awda untuk mengemukakan permintaan yang masuk melalui pelabuhan 80 untuk anda PI Raspberi. Daripada pelayan maya penghala atau NAT pilihan anda boleh menatarajah ia.

    Akhir sekali, untuk mencapai lebih mudah anda boleh mendaftar untuk NoIP dan mendapatkan domain percuma yang berkaitan dengan harta intelek anda awam daripada jenis casa.no-ip.biz.

    PD: Pastikan anda melindungi halaman itu sangat baik sahaja anda mempunyai capaian kepadanya.

    Terima kasih banyak untuk mengulas.

    • selamat tengah hari,

      Adakah saya bahawa saya terima kasih, dengan nasihat beliau, dengan sambutan yang begitu cepat dan ihsan anda, Ia adalah keriangan., Saya ingin anda yang baik 2015

      Sebaiknya,

      Ignacio Rubin dari Belgium

  3. selamat tengah hari,

    Segala-galanya berfungsi dengan sempurna, Walaupun hanya oleh lan atau dengan Xming melalui ssh, Tidak dapat menyambung ke jauh, ' dengan PC yang lain melalui Internet, Aku punya noip dan dyndns, dan saya tidak boleh menjalankan, Jika anda mempunyai apa-apa idea yang saya terima ia anda terlebih,

    Sapaan yang kukuh dan lihat yang lebih banyak, terima kasih

    Ignacio

    • Saya gembira bahawa ia akhirnya berfungsi, tetapi untuk menyambung dari Internet protokol yang anda gunakan?

      Anda perlu membuka pelabuhan perkhidmatan yang anda hendak gunakan pada penghala yang memberikan anda akses ke Internet (HTTP port 80, HTTPS port 443, SSH port 22, dan lain-lain) dan Adakah Port Forwarding ke penghala IP Raspberi IP persendirian yang memberikan anda akses ke Internet.

      Akhirnya kini anda hanya perlu memulakan sambungan dari rangkaian lain yang dihadapi oleh IP awam router anda, Anda boleh cuba dari telefon mudah alih 3 G.

      Jika ia berfungsi, Sekarang anda boleh teruskan untuk konfigurasi NoIP atau Dyn untuk capaian dari nama yang mudah untuk diingati berbanding IP awam yang; Di samping itu jika memasang NoIP Raspberi, di laman web NoIP IP awam anda akan bertukar secara automatik bila-bila masa perubahan ini bagi router anda.

      Untuk sekuriti tambahan, Ia akan lebih baik jika anda mengkonfigurasi VPN yang membuat sambungan ke rangkaian rumah anda, dan saluran yang melaluinya semua trafik anda.

  4. Hello, Saya mempunyai satu soalan yang aku punya yang dipimpin pada gpio4 yang, sudo echo 1 > /SYS/kelas/gpio/gpio4/nilai ini saya matikan membawa, dan dengan sudo echo 0 > /SYS/kelas/gpio/gpio4/nilai, menghidupkan saya membawa, perlu di revez, akan membuat sesuatu yang jahat?.
    meletakkan fail tersebut saya sambung melalui laman web, Apabila saya tekan butang apa-apa (Hidupkan, tutup, atau berkelip) hanya mematikan diketuai, tetapi tidak menghidupkan, Nor kerlipan yang.
    Saya menghargai bantuan yang anda boleh berikan saya.

    • Dipimpin daripada tersebut adalah hanya satu petunjuk, Pernahkah anda diuji dengan perkakas elektrik disambungkan kepada penyampaian yang?

      Ia bergantung pada jika conectáis dalam biasanya terbuka, atau skrip konfigurasi biasanya tertutup di python.

      • Hello, Menariknya diketuai berfungsi dengan sempurna, Aku hidupkan dan matikan dengan keseronokan, tetapi penyampaian yang tidak berfungsi, Adakah tidak terbuka mahupun tertutup, Tukar 🙁

  5. Hello, selamat tengah hari,

    Memasang VNC, dalam rangkaian saya, semua kerja-kerja, Walau bagaimanapun melalui Internet mencari saya ia mustahil, Saya tidak dapat mencari kesilapan, Terima kasih kerana menjelaskan saya

    Ignacio

    • Hello Ignacio,

      Anda telah dikonfigurasikan dengan betul penghala untuk membuka pelabuhan-pelabuhan yang berkaitan dengan VNC dan yang mengarahkan permintaan menggunakan NAT untuk Raspberi dalam?

    • Hello, pertama sekali terima kasih banyak lebih teruk anda 🙂 soalan

      Anda boleh mengikuti tutorial langkah demi langkah, penyampaian yang telah 3 jenis-jenis PIN:

      – Pengalamannya-> kuasa (PIN 5V RPI)
      – GND-> Pin GND RPI
      – IN-> adalah penyertaan, dan bergantung kepada sama ada keadaan anda adalah TINGGI atau RENDAH penyampai yang akan menghidupkan atau mematikan.

      Contoh penggunaan IN8, perseorangan debes cambiarlo untuk IN0 IN1 anda penyampai y sebagai sebelum mengikuti comenté el tutorial 🙂

      PD: Asegurate sean optoacoplados, Los de la foto ia anak.

      salam mesra, Saya berharap terlalu ayudado.

  6. Saya lakukan segala-galanya yang disyorkan seperti di atas, Bilakah saya menulis perintah terminal, kerja-kerja, Walau bagaimanapun, Jika saya boleh mendapatkan enciende.sh fail dan menghantar menjalankan terminal tidak berfungsi dan tidak dapat pun melihat Laman index.php

  7. Benar-benar menarik, Ia seolah-olah saya bahawa saya akan membeli dan mula bermain.

    Saya meninggalkan anda, sesuatu, yang mungkin membantu untuk mempunyai beberapa antaramuka yang indah dan untuk bermain dengan mereka 8 Re

    http://pihome.harkemedia.de

    salam mesra,

    Dari Argentina! Sesungguhnya, mengganggu anda, dengan konfigurasi sesetengah elektronik! Pelukan!

  8. Pertama-tamanya, Terima kasih kerana penjelasan anda, sangat bagus.

    Saya telah mengikuti arahan anda dan saya boleh menaiki sebuah pam udara jarak tangki ikan.

    Masalah saya adalah hilang saya boleh mengesahkan status pin (Benar atau palsu)

    Bagaimana saya boleh lakukan untuk membawa saya data ini pada halaman yang sama saya?

    Adalah berikutan arahan anda Tentera Laut, bertukar dan mematikan tersebut dengan betul.

    • Hi Teodoro,

      Komen ini adalah sesuatu yang ramai pembaca bertanya, dengan apa yang saya sedang menyediakan sebahagian seterusnya tutorial di mana kami akan Jadual petunjuk status GPIO di PIN pada masa lapang percuma.

      Sebaik sahaja ia selesai saya akan menyiarkan di blog.

      jumpa awak nanti.

  9. Sebelum apa-apa terima kasih banyak untuk blog anda.. adalah menakjubkan. Bahagian saya, saya telah membeli semua yang anda perlukan, Saya telah mengikuti semua tutorial anda, tetapi apabila anda menjalankan plat 8 menyampaikan, sesuatu yang tidak salah saya.

    Soalnya ialah kerana jika saya mempunyai octoacoplada plat?? Ia seolah-olah itu tidak sampai kepada anda mencukupi semasa untuk mengaktifkan dalam. Sambungan saya adalah:

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

    Apabila sedang aktif dalam gpio dengan skrip, kawalan merah yang diketuai dipasang momoento yang, tetapi tidak di. Saya faham bahawa ia adalah kerana gpio yang diaktifkan untuk 3,3 volt dan relays itu adalah 5V. Walau bagaimanapun sama ada plat supaya anda perlu ahber satu cara untuk membuatnya bekerja tidak bersumpah?

    Apreciaria mana-mana jenis komen, penyampaian kepada Lembaga Pengarah adalah seperti berikut
    (8 menyampaikan modul srd-05PENGALAMANNYA-SL-C)

    Terima kasih sangat kerana segala-galanya

  10. Hello Loty,

    Kebanyakan plat relays disokong yang dipasarkan untuk microcontrollers datang sudah ditambah pula opto, Anda boleh menyemak jika ia berada dalam spesifikasi atau mencari optocouplers dalam pinggan; yang merujuk kepada nombor siri yang anda sebutkan jika perkara itu adalah.

    Dengan berkesan, plat-powered dengan 5V, tetapi output boleh dihidupkan juga oleh elektrod 3, 3V sebagai GPIO IP Raspberi.

    Bagaimanapun, masalah itu seolah-olah kekurangan kuasa, Jadi menggantikan transformer daripada Raspberi dalam dengan 2A atau suapan luaran tersebut dapat membantu.

    Salam dan berjumpa tidak lama lagi.

    • Hello!
      Terima kasih kerana respons anda segera. Saya telah melakukan ujian secara langsung ke atas penyampaian Lembaga (mengeluarkan RASPBERI PI), untuk melihat jika ia adalah bahawa plat punya jahat. Saya telah mendapat bekalan kuasa luar yang 5V 2A.

      Saya menyambung GND itu melainkan feeder Pengalamannya ke dalam + feeder dan IN4 itu juga ke dalam +. dan ada.. KERJA-KERJA!! klik penyampai dan penunjuk LED kekal pada, Saya telah melakukan ujian dengan lampu 220v dan yang masih bekerja. Masalah timbul dengan PI RASPBERI.

      Saya telah menyambung feeder plat luar “+” Pengalamannya di “-” GND tersebut dan IN4 saya telah menyambung gpio4 RASPBERI, dan ada ketika saya aktifkan GPIO di, Tiada apa yang berlaku. Saya telah diukur GPIO dan memberikan 3,3 v. Saya telah membaca di tapak lain dan ia berkata bahawa ia adalah kerana saya perlu menyambung pelompat Pengalamannya-JCC yang sebaliknya. Tidak bahawa saya salah. Ia mungkin bahawa saya menghidupkan gpio melalui BASH?? S yang diperlukan untuk kerja-kerja beliau Kad murah guna la libreria de python daripada GPIO??

      MUCHAS gracias por cualquier sumbangan

  11. Hello, Saya mempunyai masalah untuk memadamkan lampu dengan Penyampai, menggunakan kod dalam tutorial ini, dapat cahaya biasa, tetapi untuk menghapuskan tidak dipadam dan penyampai yang bersenjata, hanya melucutkan senjata apabila saya dicabut kabel dari penyampai Raspberi dalam. Selepas beberapa percubaan saya berjaya menghapuskan tutorial ini dengan kod oleh Kod tutorial dipimpin untuk menghapuskan. mendapatkan borang ini sebahagian daripada kod: Jika ($_ JAWATAN[apagar17]) {
    $untuk- Exec(“sudo python/var/www/AcenderWebRele/apaga3.py”);
    $untuk- Exec(“sudo echo 17 > /SYS/kelas/gpio/eksport”);
    $untuk- Exec(“sudo echo 0 > /gpio/sys/kelas/gpio17/nilai”);
    $untuk- Exec(“sudo echo 17 > /SYS/kelas/gpio/unexport”);
    bergema $a;
    }

  12. Selamat tengahari dari Mexico, nama saya ialah Enrique, Saya amat berminat dalam bahagian melaksanakan automasi dengan Raspberi ini berasal dari projek sekolah, dalam tutorial ini anda menyebut bahawa kita mesti mempunyai linux yang saya tidak tahu banyak, Ia boleh didapati untuk membangunkan projek, kedua-dua laman web dan pengaturcaraan perlu di Raspberi dengan windows?, pelayan web yang anda menyebut mesti dipasang di Raspberi itu sama atau di mana?, Jika bilangan peranti yang saya mahu untuk mengawal melebihi kapasiti yang Raspberi 3 Adakah normal untuk ocuparia, Raspberi lain atau ada sesuatu yang akan meningkatkan keupayaan saya?, Jika anda berurusan dengan Raspberi lain sebagai akan kedua-duanya dengan aplikasi web yang sama?.

    Saya berharap, dan anda boleh membantu saya dengan ini.

    salam mesra.

  13. 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 saluran)

    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, tetapi, 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 jam).

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

    Desde ya muchisimas gracias por tu ayuda!!!

Tinggalkan Jawapan