Isi kandungan:

Pembuka Pintu Garp Raspberry Pi 3: 15 Langkah (dengan Gambar)
Pembuka Pintu Garp Raspberry Pi 3: 15 Langkah (dengan Gambar)

Video: Pembuka Pintu Garp Raspberry Pi 3: 15 Langkah (dengan Gambar)

Video: Pembuka Pintu Garp Raspberry Pi 3: 15 Langkah (dengan Gambar)
Video: Doa Pagi PEMBUKA PINTU REZEKI | Doa Katolik 2024, November
Anonim
Pembuka Pintu Garp Raspberry Pi 3
Pembuka Pintu Garp Raspberry Pi 3

Saya membuat arahan ini pada tahun 2014. Banyak yang berubah sejak itu. Pada tahun 2021, saya mengemas kini Smart Garage Door Opener di sini.

Gunakan Raspberry Pi dan telefon pintar untuk membuka, menutup dan memantau pintu garaj. Membuka dan menutup pintu dijamin dengan menggunakan sijil yang ditandatangani sendiri yang dipasang di telefon bimbit keluarga. Sekiranya pintu garaj terbuka jika tidak seharusnya, kirimkan pesanan teks (SMS) ke telefon bimbit.

Pintu garaj telah digunakan secara berterusan sejak akhir tahun 2014. Selama bertahun-tahun, saya telah berusaha untuk memperbaharui perubahan. Terdapat lampiran yang menjelaskan perubahan yang dapat dipesan.

Matlamat projek ini adalah untuk:

  • Jadikan arahan pertama saya - Saya tidak merancang untuk menghantar ini, tetapi saya telah menerima banyak permintaan
  • Buka pintu garaj dengan alat kawalan jauh standard
  • Buka pintu garaj dengan pembuka garaj bel pintu yang dipasang di dinding
  • Buka pintu garaj dengan SmartPhone
  • Pantau status pintu garaj dari jauh melalui telefon bimbit atau komputer riba (adakah ia terbuka atau ditutup?)
  • Hantarkan mesej teks ke telefon bimbit saya jika pintu terbuka ketika ia harus ditutup
  • Jaga pintu garaj dengan selamat (mis. Semasa kehilangan kuasa, pintu tidak boleh dibuka)
  • Jangan biarkan orang lain di internet membuka pintu (sijil SSL yang ditandatangani sendiri dua hala)
  • Gunakan WiFi dan bukannya sambungan berwayar
  • Gunakan Raspberry Pi 3

Dasar pelaksanaan Garage Door Opener ini berasal dari Instructable: Raspberry Pi Garage Door Opener oleh kuartarian. Pada asalnya, saya menggunakan model B + Raspberry Pi, kemudian beralih ke model B Raspberry Pi 2, dan sekarang ia menggunakan Raspberry Pi 3.

Saya menggunakan MacBook untuk berkomunikasi dengan Raspberry Pi, tetapi komputer mana pun boleh digunakan.

Tidak ada alasan yang kuat untuk membina peranti ini, tetapi sangat menyeronokkan. Lebih menjimatkan kos untuk membelinya. Peranti yang serupa boleh dibeli dengan harga sekitar $ 130 USD.

  • Lift master 828LM
  • Chamberlain MyQ $ 129
  • Gerbang GoGo $ 179
  • Tukang $ 100

Catatan:

  • Teks yang disertakan dalam sekop, seperti ini ♣ ganti-ini ♣ harus diganti dengan nilai sebenarnya
  • Teks biru yang digarisbawahi Arduino adalah pautan. Dalam kes ini, ini adalah pautan ke versi arduino pembuka pintu garaj.
  • Saya telah berusaha memberi kredit kepada setiap sumber yang digunakan. Mohon maaf atas sebarang peninggalan. Sebilangan besar dokumen ini berdasarkan karya orang lain.
  • $ menunjukkan arahan yang dilaksanakan di tetingkap terminal pada MacBook dan biasanya dijalankan pada Raspberry Pi

Langkah 1: Kumpulkan Bahagian

Beli atau kumpulkan bahagian dan alat (harga dalam USD).

  • Raspberry Pi 3 Model B Elemen Newark14 $ 35
  • 5.2V 2.5A USB Power Adapter dari Amazon $ 9.99
  • Kabel USB mikro ke USB 6 kaki dari Amazon $ 7.99
  • Kes dari Amazon $ 6,99
  • SanDisk Ultra 16 GB microSDHC Class 10 with Adapter (SDSQUAN-016G-G4A) dari Amazon $ 8.99
  • Modul Relay Shield SunFounder 2 Channel 5V untuk Arduino UNO 2560 1280 ARM PIC AVR STM32 Raspberry Pi - $ 6.79
  • Wayar Pelompat 3x Perempuan-Perempuan. Dibeli di Fry dengan harga $ 4,95.
  • DNS Dinamik $ 40 setahun untuk 30 nama (dyn.com)
  • 1-Gang 18 cu. di. Kotak Tukar dan Outlet Tembok Berat Lama, $ 3.12
  • Plat Dinding Putih Ultra Pro Single Brush, $ 7.88
  • SECO-LARM SM 226L, Sensor Pintu Garasi, harga berbeza-beza, $ 9,99 di Amazon dengan penghantaran percuma
  • 50 kaki wayar termostat pepejal, Depot Rumah atau Lowe's, ~ $ 20

Jumlah Saya: ~ $ 172.00

Saya mempunyai bahagian, alat dan perkhidmatan berikut:

  • Kabel CAT5 Ethernet
  • Kawat tolok kecil, panjang 6 kaki
  • Pemutar skru kepala Phillips
  • Playar mata jarum
  • Pemotong kotak
  • Pemacu skru flathead Jewelers, diperlukan untuk melonggarkan skru pada relay
  • MacBook (PC boleh digunakan)
  • AT&T GigaPower (mana-mana penyedia perkhidmatan internet boleh digunakan)

Langkah 2: Siapkan Raspberry Pi Tanpa Monitor atau Papan Kekunci

Sediakan Raspberry Pi Tanpa Monitor atau Papan Kekunci
Sediakan Raspberry Pi Tanpa Monitor atau Papan Kekunci

Semua projek Raspberry Pi memerlukan beberapa jenis persediaan. Saya suka menggunakan set arahan yang sama dan, jika perlu, ada satu tempat untuk mengemas kini arahan tersebut.

Siapkan Raspberry Pi menggunakan arahan berikut:

Sediakan Raspberry Pi tanpa Monitor atau Papan Kekunci

Petunjuk di atas merangkumi langkah pilihan dalam lampiran. Pastikan anda melakukan langkah:

Tambahkan sijil sisi pelanggan ke pelayan web

Shutdown Raspberry Pi

$ sudo shutdown -h 0

Setelah ditutup, alih keluar

  • kabel ethernet
  • Kabel bersiri USB

Ini tidak akan diperlukan lagi. Gunakan wifi, ssh dan tetingkap terminal pada Buku Mac untuk menjalankan perintah pada Raspberry Pi.

Cabut kuasa dan pasangkan kembali kuasa, dan raspberry pi harus dihidupkan semula.

Langkah 3: Pasang Wiring Pi, Apache dan PHP

Pasang Pi Pendawaian

Buka tetingkap terminal pada Buku Mac. Log masuk ke Raspberry Pi, kemudian muat turun, kompilasi, dan pasang Wiring Pi. Perisian ini membolehkan kawalan pin GPIO. Berikut adalah panduan langkah demi langkah:

wiringpi.com/download-and-install/

Berikut adalah versi arahan ringkas:

$ ssh pi @ ♣ raspberry-pi-ip ♣

kata laluan: ♣ kata laluan ♣ $ sudo apt-get install git-core $ git clone git: //git.drogon.net/wiringPi $ cd wiringPi $ git pull origin $./build

Jalankan arahan gpio untuk memeriksa pemasangan:

$ gpio -v

versi gpio: 2.29 Hak Cipta (c) 2012-2015 Gordon Henderson Ini adalah perisian percuma dengan JAMINAN TIDAK ADA. Untuk butiran jenis: gpio -warranty Raspberry Pi Butiran: Jenis: Model 2, Semakan: 1.1, Memori: 1024MB, Pembuat: Sony [OV] Pokok peranti diaktifkan. Raspberry Pi ini menyokong akses GPIO peringkat pengguna. -> Lihat halaman manual untuk keterangan lebih lanjut $ gpio readall + ----- + ----- + --------- + ------ + --- + --- Pi 2 --- + --- + ------ + --------- + ----- + ----- + | BCM | wPi | Nama | Mod | V | Fizikal | V | Mod | Nama | wPi | BCM | + ----- + ----- + --------- + ------ + --- + ---- ++ ---- + --- + - ----- + --------- + ----- + ----- + | | | 3.3v | | | 1 || 2 | | | 5v | | | | 2 | 8 | SDA.1 | DALAM | 1 | 3 || 4 | | | 5V | | | | 3 | 9 | SCL.1 | DALAM | 1 | 5 || 6 | | | 0v | | | | 4 | 7 | GPIO. 7 | KELUAR | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 | | | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 | | 17 | 0 | GPIO. 0 | DALAM | 0 | 11 || 12 | 0 | DALAM | GPIO. 1 | 1 | 18 | | 27 | 2 | GPIO. 2 | DALAM | 0 | 13 || 14 | | | 0v | | | | 22 | 3 | GPIO. 3 | DALAM | 0 | 15 || 16 | 1 | DALAM | GPIO. 4 | 4 | 23 | | | | 3.3v | | | 17 || 18 | 0 | DALAM | GPIO. 5 | 5 | 24 | | 10 | 12 | MOSI | DALAM | 0 | 19 || 20 | | | 0v | | | | 9 | 13 | MISO | DALAM | 0 | 21 || 22 | 0 | DALAM | GPIO. 6 | 6 | 25 | | 11 | 14 | SCLK | DALAM | 0 | 23 || 24 | 1 | DALAM | CE0 | 10 | 8 | | | | 0v | | | 25 || 26 | 1 | DALAM | CE1 | 11 | 7 | | 0 | 30 | SDA.0 | DALAM | 1 | 27 || 28 | 1 | DALAM | SCL.0 | 31 | 1 | | 5 | 21 | GPIO.21 | DALAM | 1 | 29 || 30 | | | 0v | | | | 6 | 22 | GPIO.22 | DALAM | 1 | 31 || 32 | 0 | DALAM | GPIO.26 | 26 | 12 | | 13 | 23 | GPIO.23 | DALAM | 0 | 33 || 34 | | | 0v | | | | 19 | 24 | GPIO.24 | DALAM | 0 | 35 || 36 | 0 | DALAM | GPIO.27 | 27 | 16 | | 26 | 25 | GPIO.25 | DALAM | 0 | 37 || 38 | 0 | DALAM | GPIO.28 | 28 | 20 | | | | 0v | | | 39 || 40 | 0 | DALAM | GPIO.29 | 29 | 21 | + ----- + ----- + --------- + ------ + --- + ---- ++ ---- + --- + - ----- + --------- + ----- + ----- + | BCM | wPi | Nama | Mod | V | Fizikal | V | Mod | Nama | wPi | BCM | + ----- + ----- + --------- + ------ + --- + --- Pi 2 --- + --- + --- --- + --------- + ----- + ----- +

Perintah di atas harus memberi anda keyakinan bahawa wiringPi berfungsi dengan baik.

Pasang Apache dan PHP

Jalankan arahan berikut:

$ cd..

$ sudo apt-get kemas kini $ sudo apt-get install apache2 php5 libapache2-mod-php5

Untuk mengesahkan pelayan web berfungsi, buka penyemak imbas, dan di kotak URL masukkan:

♣ raspberry-pi-ip ♣

Laman web lalai Apache bertindak balas dengan "Ini Berfungsi!"

Langkah 4: Laman web

Buka tetingkap terminal pada Buku Mac. Log masuk ke Raspberry Pi, kemudian hapus fail index.html lalai, ubah kebenaran pada direktori laman web, dan edit fail yang disebut index.php.

$ ssh pi @ ♣ raspberry-pi-ip ♣

kata laluan: ♣ kata laluan ♣ $ sudo rm /var/www/index.html $ sudo chown pi: root / var / www $ sudo nano /var/www/index.php

Dan masukkan kod berikut:

Pembuka garaj

Automasi Rumah

<? php if ($ switch == 1) {echo"

";} lain {gema"

"; } ?>

Pembuka Pintu Garaj Manual Pembuka Pintu Garaj ditutup 1 buka 0
<? php if ($ trigger == 0) {echo "<td colspan = \" 4 / "} lain {echo"

var13 ->

CTRL-o dan ENTER untuk menulis fail, dan CTRL-x untuk keluar dari editor.

Tukar kebenaran pada fail

$ sudo chmod 664 /var/www/index.php

Langkah 5: Imej Laman Web

Imej Laman Web
Imej Laman Web
Imej Laman Web
Imej Laman Web

Dapatkan pembuka pintu garaj jarak jauh beresolusi tinggi dari web. Ubah suai gambar seperti yang anda mahukan menggunakan kuas cat Mac. Pada gambar di atas, Genie Garage Opener beresolusi tinggi digunakan, logo pi raspberry ditambahkan dan led dikeluarkan.

Satu gambar adalah latar belakang (remote-background.jpg), dan yang lain adalah gambar aktif (remote-press.jpg).

Rencananya ialah dengan menekan butang, bukannya berkedip yang dipimpin, raspberry akan berkedip. Saya mempermudah laman web.

Salin gambar ke raspberry pi:

$ scp *-j.webp

kata laluan: ♣ kata laluan ♣

Laman web mempunyai satu butang tekan. Untuk mengesahkan, buka penyemak imbas dan masukkan ♣ raspberry-pi-ip ♣. Daripada laman web lalai Apache, yang mengatakan "Ia Berfungsi!", Butang itu akan muncul. Tekan.

Langkah 6: Kawal Pelayan Web dari jauh

Untuk memudahkan mengakses Garage Door Opener dari lokasi terpencil, saya menggunakan nama DNS yang dinamik. Kerana saya tidak suka mengingat alamat IP.

Dengan ciri ini, saya memasukkan ♣ nama-host-dinamik get.getmyip.com di medan URL penyemak imbas. Catatan: IP pada penghala rumah boleh berubah tanpa notis, tetapi ini jarang berlaku. Saya memilih untuk menggunakan DynDNS. Anda perlu mengetahui alamat IP awam penghala anda.

IP Penghala U-Verse: verse uverse-public-ip ♣

Anda dapat melihat nama host dan perincian akaun DynDNS Pro anda. Berikut adalah beberapa petua untuk memulakan:

  • Buat nama host DNS Dinamik anda (1 dari 30):

    • ♣ nama-dinamik-host ♣
    • Kekunci Updater: ♣ kunci dinamik-ip-updater ♣
  • Pasang klien kemas kini untuk memastikan nama host anda selalu ditunjukkan ke alamat IP yang betul.

    • Muat turun dan pasang di MacBook
    • IP AT-T U-ayat jarang berubah, jadi pengemas kini di atas dapat dijalankan setiap kali ia berubah
    • Ikut arahan:

      • Tambah akaun
      • Masukkan nama pengguna dan kata laluan: ♣ nama pengguna dinamik-ip password password kata laluan dinamik-ip ♣
      • Pilih nama hos
      • Klik Konfigurasi Host yang Dipilih
      • Tuan rumah harus aktif
    • Konfigurasikan rangkaian anda untuk membenarkan akses ke peranti anda dari Internet. Anda boleh menggunakan Dyn Wizard kami untuk beberapa petunjuk umum mengenai cara melakukannya, menggunakan sumber seperti PortForward.com, atau menghubungi pengeluar peranti untuk mendapatkan bantuan.

      • Ayat U AT&T
      • Port Forwarding untuk 2-Wire 3801HGV - ini adalah penghala AT-T U-Verse yang saya ada. Lihat Kemas kini dalam Lampiran untuk cara memindahkan ke hadapan pada penghala AT&T U-ayat 5268ac.
      • Buka penyemak imbas dan pergi ke ♣ raspberry-pi-ip ♣
      • Kata Laluan: ♣ kata laluan ♣
      • Tetapan
      • Firewall

        • Pilih ♣ nama-raspberry-pi-host ♣
        • Pelayan

          • Port pelayan web 80
          • Pelayan HTTPS - port 443
        • Tambah
      • Jimat

Setelah ini selesai, pelayan web akan berfungsi dari internet. Untuk mengesahkan, masukkan ♣ nama-dinamik-host ♣ dan anda akan melihat butang pembuka pintu garaj.

Langkah 7: Kabelkan Litar ke Raspberry Pi

Kabelkan Litar ke Raspberry Pi
Kabelkan Litar ke Raspberry Pi

Untuk kod yang disediakan (langkah 4 dan 6), saya menggunakan pin GPIO 7. Secara kebetulan GPIO 7 sama dengan pin wiringPi 7. Dalam kod PHP, nombor pin pin pendawaian digunakan dan BUKAN nombor pin GPIO. Anda boleh menggunakan mana yang anda mahu, tetapi pastikan untuk menukar kodnya.

Saya cuba menggunakan wayar berpintal, tetapi geganti tidak berpegang pada wayar berpusing. Kawat pepejal lebih baik.

Pada percubaan pertama saya, saya membuat tiga kabel penghubung (wanita-ke-lelaki).

  • Gunakan tiga kabel pelompat wanita ke wanita
  • Potong tiga kepingan dawai padat hingga kira-kira 1in.

    Jalur 1 / 4in pada kedua hujung dawai pepejal

  • Masukkan satu wayar padat ke dalam satu kabel pelompat wanita.

Inilah kaedah yang lebih baik untuk membuat kabel penghubung (wanita-ke-lelaki):

  • Gunakan wayar padat sahaja
  • Potong tiga kepingan 4in dawai pepejal
  • Jalur 1 / 4in pada kedua hujung dawai pepejal
  • Gunakan pin penyambung wanita
    • Luncurkan satu pin penghubung wanita di satu hujung wayar dan kelim padat

      Pin wanita tidak boleh longgar, solder jika perlu

    • Pelepasan regangan slaid di atas pin penyambung wanita atau pin penutup dengan pita juruelektrik

Kabelkan relay ke pi seperti yang ditunjukkan dalam rajah:

  • Sambungkan hujung kabel wanita ke pin Raspberry Pi.
  • Masukkan wayar padat ke dalam Relay.

Langkah 8: Buat Perkhidmatan Permulaan

Sebilangan besar geganti termasuk yang dibeli, beroperasi seperti ini:

  • Apabila isyarat dihidupkan litar akan mati.
  • Apabila isyarat MATI maka litar dihidupkan.

Sekiranya Raspberry Pi kehilangan kuasa, relay mempunyai mekanisme keselamatan yang menjadikan litar mati.

Masalah boleh berlaku apabila Rapberry Pi dan relay mendapat kuasa semula, tetapi sebelum Raspberry Pi selesai boot untuk menghidupkan isyarat yang perlu untuk mematikan litar. Anda boleh bangun pada waktu pagi dengan garaj anda terbuka dan berpotensi dengan beberapa rakan baru!

Walau bagaimanapun, relay tidak benar-benar memulakan sehingga mod pin GPIO ditetapkan melalui arahan ini: mod gpio 7 keluar. Tambahan pula, jika pin GPIO ke AKTIF (gpio tulis 7 1) sebelum anda menetapkan mod GPIO, geganti akan mati setelah diinisialisasi.

Untuk membuat inisialisasi ini dijalankan ketika boot dan jangan bangun dengan teman baru, gunakan skrip permulaan berikut.

$ ssh pi @ ♣ raspberry-pi-ip ♣

$ sudo nano /etc/init.d/garagerelay

Kemudian tampal skrip ini:

#! / bin / bash

# /etc/init.d/garagerelay # Menjalankan fungsi tertentu apabila diminta oleh kes sistem "$ 1" pada permulaan) gema "Memulakan Relay" # Hidupkan 7 yang menjadikan relay mati / usr / local / bin / gpio tulis 7 1 #Mulakan mod Gpio / usr / local / bin / gpio 7 keluar;; berhenti) gema "Menghentikan gpio";; *) gema "Penggunaan: /etc/init.d/garagerelay {start | stop}" keluar 1;; esac keluar 0

Untuk menyimpan: CTRL-o, ENTER

Untuk keluar dari nano, CTRL-x

Jadikan fail boleh dilaksanakan:

$ sudo chmod + x /etc/init.d/garagerelay

Sekarang beritahu pi anda untuk menjalankan skrip ini semasa boot:

$ sudo update-rc.d -f garagerelay mulai 4

(Catatan: Anda boleh mengabaikan amaran "tag LSB yang hilang" dengan selamat.)

Pastikan skrip permulaan berjalan

but semula $ sudo

Buka penyemak imbas dan klik pada pembuka. Relay mesti klik.

Langkah 9: Pasang Raspberry Pi ke Garaj

Pasang Raspberry Pi ke Garaj
Pasang Raspberry Pi ke Garaj

Semasa menggerakkan Raspberry Pi, pastikan untuk menjalankan:

$ tutup -h 0

Anda mungkin mahu mematikan kuasa ke garaj. Oleh itu, pembuka loceng pintu tidak menggegarkan anda:). Sebab sebenarnya ialah setiap kali anda menutup wayar, pintu akan naik dan turun.

Tanggalkan skru dinding dari pembuka jenis bel pintu, yang melekatkan bel pintu ke dinding.

Tembus lubang dari garaj di belakang pembuka loceng pintu ke dalam rumah. Di Texas, Raspberry Pi tidak boleh berada di garaj, variasi suhu di garaj berada di luar spesifikasi operasi Raspberry Pi.

Jalankan wayar relay melalui lubang (gunakan penyangkut kot).

Longgarkan kedua-dua skru di bahagian belakang pembuka bel pintu.

Tanggalkan kedua-dua hujung wayar relay: 1) kira-kira 1/8 inci dari bahagian relay, dan kira-kira ½ inci di sebelah bel pintu. Bengkokkan bahagian bel pintu wayar ke gelung separuh yang cukup besar untuk dipasang di sekeliling skru belakang.

Sambungkan satu wayar geganti ke setiap skru di bahagian belakang bel pintu, dan ketatkan skru. Sambungannya seperti yang ditunjukkan dalam gambar. Oleh kerana relay mengasingkan litar, arahnya tidak kira relay mana yang terpasang pada skru mana.

Langkah 10: Pasang Raspberry Pi ke SECO-LARM

Pasang Raspberry Pi ke SECO-LARM
Pasang Raspberry Pi ke SECO-LARM
Pasang Raspberry Pi ke SECO-LARM
Pasang Raspberry Pi ke SECO-LARM

Sebelum kod saya selesai, saya dan keluarga bercuti dan saya membuka penyemak imbas saya. Paparan terakhir penyemak imbas saya adalah pembuka pintu garaj - halaman disegarkan dan pintu garaj dibuka. Beberapa hari kemudian seorang jiran memanggil dan bertanya adakah pintu garaj mesti terbuka? Nasib baik, saya dapat menutupnya dari jarak 500 batu.

Snafu ini memaksa saya untuk menukar kod sehingga ini tidak akan berlaku, dan menambahkan sensor dan keadaan pintu garaj ke laman web.

Ini adalah pautan ke petunjuk asal untuk menambahkan sensor. Namun, memandangkan semua yang telah selesai, pemasangan sensor dapat dipermudah dan bukannya menggunakan python, tambahkan beberapa baris kod ke index.php.

closed

Magnet dilekatkan pada bahagian kiri atas pintu dalaman garaj, dan sensor dipasang pada dinding garaj. Oleh itu, saya terpaksa menjalankan wayar termostat padat dari sensor kembali ke raspberry pi. Ini memerlukan lubang dari garaj ke loteng dan dari loteng ke dinding yang berisi pembuka pintu garaj (suis bel pintu).

Saya memasukkan kotak persimpangan biru antara sensor SECO-LARM dan wayar padat.

Di rumah saya, terdapat jurang 18 inci antara siling tingkat pertama dan bawah tingkat dua. Saya menganggap di sinilah saluran pemanasan dan penyejukan dijalankan. Saya memerlukan sambungan bit gerudi cukup lama untuk melalui tingkat dua dan melalui bahagian atas 2x4 (plat atas) yang mengandungi bel pintu.

Bahagian yang paling penting adalah semasa menggerudi dari loteng ke kawasan di mana wayar akan mengalir ke pembuka pintu garaj adalah TIDAK menggerudi elektrik. Memperbaiki ini tidak menyeronokkan. Melihat bunga api dan menyalakan lampu cukup mendebarkan!

Sensor memerlukan dua wayar termostat padat atau wayar pagar anjing yang tidak kelihatan.

Raspberry Pi mempunyai banyak perihalan pin (BCM, wPi, fizikal). Kod tersebut menggunakan nombor pin pin pendawaian. Untuk melihat semua pin, dan pemetaan pin dan nilai pin masukkan:

bacaan $ gpio

Untuk manual gpio, masukkan:

lelaki $ gpio

Dalam arahan asal, pin Fisik 9 dibumikan dan dihubungkan ke salah satu petunjuk SECO-LARM. Walau bagaimanapun, ini tidak berfungsi untuk saya. Sebaliknya sambungkan penyambung ke pin fizikal 15 dan 17

Pin fizikal 15 (pin wPi 3) menuju ke 3.3V apabila sensor SECO-LARM ditutup. Pin fizikal 17 ialah 3.3v. Sekiranya tidak berfungsi, hidupkan sambungan pada SECO-LARM.

Pasang SECO-LARM ke pintu dan dinding garaj. Jalankan wayar dan sambungkan ke Raspberry Pi.

Langkah 11: Hantar Makluman Jika Pintu Terbuka Bila Harus Ditutup

Sekiranya pintu garaj terbuka ketika tidak seharusnya, maka kirimkan pesanan teks ke telefon bimbit.

Pasang dan konfigurasikan SMTP sederhana.

Saya mempunyai AT&T selular dan menggunakan ♣cell-phone-number♣@txt.att.net untuk pesanan teks. Saya juga mempunyai akaun gmail, dan contoh di bawah menggunakan ♣gmail-account♣@gmail.com. Sekiranya anda menggunakan perkhidmatan yang berbeza, maka buat perubahan yang sesuai.

Untuk arahan $ di bawah, buka tetingkap terminal di MacBook dan log masuk ke Raspberry Pi anda.

Pastikan repositori terkini:

$ sudo apt-get kemas kini

Pasang SSMTP dan utiliti mel mudah:

$ sudo apt-get install ssmtp

$ sudo apt-get pasang surat

Edit fail konfigurasi SSMTP:

$ sudo nano /etc/ssmtp/ssmtp.conf

seperti berikut:

mailhub = smtp.gmail.com: 587 nama host = ♣ nama-host anda ♣ AuthUser=♣gmail-account♣@gmail.com AuthPass = ♣ gmail-kata laluan ♣ GunakanSTARTTLS = YA

Edit fail alias SSMTP:

$ sudo nano / etc / ssmtp / revaliases

Buat satu baris untuk setiap pengguna yang dapat menghantar e-mel. Sebagai contoh:

root: ♣gmail-account♣@gmail.com: smtp.gmail.com: 587

Tetapkan kebenaran fail konfigurasi SSMTP:

$ sudo chmod 664 /etc/ssmtp/ssmtp.conf

Kebenaran fail /etc/ssmtp/ssmtp.conf menentukan siapa yang akan dapat menghantar e-mel dari Raspberry Pi. Secara lalai fail ini dimiliki oleh root pengguna dan kumpulan fail tersebut juga root.

Edit fail alias SSMTP, yang mengandungi data mengenai akaun e-mel:

$ sudo nano /etc/ssmtp/ssmtp.conf

Setelah proses penyediaan dan konfigurasi di atas selesai, uji dengan menghantar e-mel dari baris arahan.

$ gema "tutup pintu garaj" | mel -s "Garage Door Open" ♣cell-phone-number♣@txt.att.net

Buat skrip untuk memeriksa apakah pintu garaj terbuka ketika tidak seharusnya, dan kemudian kirimkan pesan teks.

$ sudo nano /usr/local/bin/garage.sh

dan tambahkan yang berikut:

#! / bin / bash

# periksa sama ada pintu garaj terbuka. # Jika terbuka hantar amaran dan tulis ke syslog up = 0; door = $ (/ home / pi / wiringPi / gpio / gpio read 3) if ["$ door" -eq "$ up"] maka logger ♣ nama-host anda ♣: Garage Door Open echo "tutup pintu garaj" | surat -s "Garage Door Open" exitcell-phone-number♣@txt.att.net fi keluar 0

Kemudian tambahkan crontab untuk dijalankan pada waktu yang diperlukan:

$ sudo crontab –e

dan tambah:

# Pada waktu malam, periksa setiap jam jika pintu garaj terbuka

0 22-23 / 1 * * * sudo /usr/local/bin/garage.sh 0 0-5 / 1 * * * sudo /usr/local/bin/garage.sh

Sekiranya semuanya berfungsi, teruskan ke langkah seterusnya.

Langkah 12: Masukkan Raspberry Pi dalam Buku Rahsia

Masukkan Raspberry Pi dalam Buku Rahsia
Masukkan Raspberry Pi dalam Buku Rahsia
Masukkan Raspberry Pi dalam Buku Rahsia
Masukkan Raspberry Pi dalam Buku Rahsia

Masukkan pi raspberry dalam buku rahsia. Saya mendapatkannya di Michael dengan harga sekitar $ 7. Saya memotong beberapa lubang kecil untuk wayar dan kabel kuasa.

Langkah 13: Lampiran: Rujukan

Modul Relay Shield SunFounder 2 Channel 5V untuk Arduino UNO 2560 1280 ARM PIC AVR STM32

  • Papan antara muka Relay 2-Saluran 5V, dan masing-masing memerlukan 15-20mA
  • Pemacu Arus Dilengkapi dengan relay arus tinggi, AC250V 10A; DC30V 10A
  • Antara muka standard yang boleh dikendalikan secara langsung oleh mikrokontroler (logik Arduino, 8051, AVR, PIC, DSP, ARM, ARM, MSP430, TTL)
  • LED Petunjuk untuk status output Relay Pautan untuk memuat turun dokumen:

Langkah 14: Lampiran: Kemas kini

21FEB2016

  • Dalam arahan asal, terdapat masalah dengan pembetulan automatik, pemformatan dan kejelasan arah.

    • Isu contohnya ialah apabila petikan berganda dalam kod berubah menjadi sesuatu yang kelihatan seperti petikan berganda miring. Walau bagaimanapun, jika anda memotong dan menampal ini ke skrip ia tidak akan berfungsi.
    • Editor yang boleh diperintahkan suka melakukan pembetulan automatik, jadi wlan beralih ke rancangan, dan giliran automatik untuk membuang secara automatik. Perubahan ini sukar dilihat.
    • Sebilangan arahan saya mungkin tidak cukup jelas.
    • Biasanya, saya menggunakan tanda kurung sudut sebagai petunjuk untuk sesuatu yang perlu diganti. Editor menukarnya menjadi html. Jadi, saya beralih ke tanda kurung persegi, tetapi ini boleh menyebabkan masalah kerana ia kelihatan seperti kod. Oleh itu, saya akhirnya menetap sebagai petunjuk untuk penggantian dengan nilai sebenar.
  • Dari masa ke masa saya juga telah memperbaiki beberapa skrip.
  • Langkah yang Diedit 21-26

03APR2016

  • Membuat Lampiran dengan Penyelesaian Masalah, Rujukan dan Kemas kini (langkah 27-29)
  • Memindahkan Penyelesaian Masalah ke Lampiran dari langkah sebelumnya 2
  • Mengemas kini dan mengikut abjad halaman penyelesaian masalah
  • Tukar nama fail dari test2wifi.sh menjadi garage.sh - hanya lebih deskriptif.
  • Cron yang dikemas kini untuk menggunakan garage.sh
  • Disunting 1, 20-26 (Buat perkhidmatan permulaan untuk melangkah sebelum lampiran)

04APR2016

  • Langkah 2-11 dan 16-20 yang diganti dengan standard saya ialah menyediakan Raspberry Pi
  • Senarai bahagian yang dikemas kini, langkah 1
  • Menambah / menggabungkan foto

05APR2016

Laman web dan gambar yang dipermudahkan (langkah 4 dan 5)

01MAY2016

Menambah masalah untuk sensor Seco-larm / raspberry Pi

01MAY2016

Pengeditan sebelumnya tidak disimpan dengan betul?

11NOV2016

  • Dikemas kini ke AT&T GigaPower dan menukar penghala ke 5268ac
  • 5268ac tidak menyokong gelung kembali, jadi pelayan Garage Opener tidak dapat diakses dari komputer di LAN. Untuk MacBook mengakses pelayan web pembuka garaj lakukan perkara berikut:

$ sudo nano / etc / host

dan tambah garis

192.168.1.64 name nama-domain-luaran pelayan ♣

Simpan dan keluar, CTRL-o, CTRL-x

$ sudo killall -HUP mDNSResponder

  • Peraturan penerusan port bawaan 5268ac, seperti, pelayan HTTPS, Pelayan HTTP dan Pelayan Web tidak berfungsi. Untuk meneruskan penghantaran port:

    • Buka penyemak imbas, dan pergi ke 192.168.1.254
    • Log masuk
    • Pilih Tetapan, Firewall, Aplikasi, lubang jarum dan DMZ.
    • Pilih pelayan web pembuka garaj
    • Pilih Yang ditentukan oleh pengguna
    • Klik aplikasi yang ditentukan pengguna baru

      • Dalam Nama Profil Aplikasi masukkan: PortForwarding
      • Dalam Buat Definisi Aplikasi tambahkan setiap yang berikut dan klik Tambah ke Senarai:

        • TCP dari 80 hingga 80, peta ke hos port 443
        • TCP dari peta 443 hingga 443 ke port hos 443
        • UDP dari 443 hingga 443, peta ke port host 443
        • UDP dari 80 hingga 80, peta ke hos port 443
    • Klik kembali
    • Pilih semula pelayan web anda
    • Pilih Yang ditentukan oleh pengguna
    • Tambah PortForwarding
    • Klik Simpan

21JAN2018

  • Dikemas kini ke Raspberry Pi 3
  • Beberapa suntingan ke beberapa langkah
  • Mengemas kini beberapa bahagian dan harga

Langkah 15: Lampiran: Penyelesaian masalah

Ruang cakera digunakan

Baris terakhir menunjukkan jumlah ruang cakera yang digunakan. Kad SD mempunyai 8GB.

$ cd../..

$ sudo du –hx –c

e-mel

Sekiranya anda menghadapi masalah, cubalah ini:

$ echo "ujian" | sendmail -v ♣your-gmail-account♣@gmail.com

Sekiranya e-mel disiapkan dengan betul, maka anda harus mendapatkan e-mel di akaun gmail anda.

Sekiranya anda mengalami kegagalan pengesahan:

Anda mungkin perlu mengurangkan keselamatan pada akaun anda. Walau bagaimanapun, menurunkan keselamatan TIDAK digalakkan. Google akan menghantar e-mel dengan pautan ke tetapan keselamatan yang lebih rendah.

Anda boleh beralih dari pembaca e-mel semasa anda untuk menggunakan www.gmail.com untuk mengakses akaun anda (disyorkan) atau mengubah tetapan anda di https://www.google.com/settings/security/lesssecu… sehingga akaun anda tidak lagi dilindungi oleh standard keselamatan moden.

Saya tidak mengesyorkan menurunkan standard keselamatan anda.

Sekiranya anda mendapat kegagalan Pengesahan:

Sebab yang paling mungkin adalah anda telah menentukan nama pengguna atau kata laluan yang salah untuk akaun gmail anda dalam fail /etc/ssmtp/ssmtp.conf. Periksa semula nilai medan AuthUser dan AuthPass.

Sekiranya sambungan terputus di tengah proses:

Kemungkinan anda menentukan port yang salah untuk smtp Google di suatu tempat di /etc/ssmtp/ssmtp.conf atau di / etc / ssmtp / revaliases.

Periksa baris terakhir log anda. Harus ada beberapa mesej ralat yang relevan di sana:

$ ekor /var/log/mail.log

$ ekor / var / log / syslog

Pintu Garaj tidak akan dibuka

Sekiranya semuanya berfungsi dan hanya berhenti, cuba mulakan semula. Sekiranya tidak berjaya, tarik kabel kuasa dari Raspberry Pi, dan kemudian kembalikan kuasa. Raspberry Pi harus dihidupkan semula dalam masa kurang dari 2 minit dan semuanya akan berjalan lancar. Ini umumnya disebabkan oleh kehilangan kuasa ke Residential Gateway.

GPIO

Sekiranya ada yang salah, maka kaedah terbaik untuk melihat apa yang berlaku adalah dengan arahan berikut:

bacaan $ gpio

Log masuk ke raspberry pi dari MacBook

terminal adalah utiliti MacBook: cakera / aplikasi / utiliti / terminal. Saya menyimpan aplikasi terminal di dok.

Pada MacBook, buka terminal

$ ssh pi @ ♣ raspberry-pi-ip ♣

♣ kata laluan ♣

Log masuk ke pintu masuk kediaman

Pada MacBook, buka penyemak imbas

URL = ♣ raspberry-pi-ip ♣

Log masuk: ♣ gateway-kata laluan ♣

Log

Sekiranya ada yang tidak kena, periksa log ini untuk kesilapan, amaran atau masalah lain.

$ cat / var / log / mesej

$ cat / var / log / syslog $ cat / var / log / dmesg

Direktori MAC

Direktori pada MacBook tempat fail laman web disimpan

Direktori MAC = / Pengguna / mac macbook saya ♣ / Desktop / wi-fi didayakan rumah / wifi pembuka pintu garaj / laman web

Kata Laluan

Kata Laluan = ♣ raspberry-pi-kata laluan ♣

RAM dan CPU yang digunakan

$ atas

CTRL-c untuk keluar

Direktori rumah Raspberry Pi

$ pwd

/ rumah / pi

Nama hos Raspberry Pi

$ nama tuan rumah

nama hos = ♣ nama hos ♣

IP Raspberry Pi

♣ raspberry-pi-ip 192 = 192.168.1.93

Direktori Laman Web Raspberry Pi

/ var / www

Seco-larm berhenti berfungsi

Pada 01MAY2016, Seco-larm berhenti berfungsi. Ini adalah kali ketiga sensor berhenti berfungsi. Untuk mengatakan ini dengan betul, pin fizikal 15 pada Raspberry Pi berhenti mengesan input 3.3v. Saya mencuba pin fizikal 3.3v 1 dan 17, dan kedua-duanya masih menghasilkan 3.3v. Saya beralih dari pin fizikal 15 ke GPIO lain, pin fizikal 16 (GPIO 4) dan ia mula berfungsi semula. Jadi, tidak ada yang salah dengan Seco-larm. Masalahnya nampaknya berlaku dengan Raspberry Pi GPIO.

GPIO 3, pin fizikal 15 mati. Ini adalah catatan yang sangat baik mengenai cara menguji pin GPIO.

Saya beralih dari GPIO 3 ke GPIO 4, dan menukar kodnya dengan sewajarnya. Saya tidak pasti mengapa pin GPIO berhenti berfungsi. Berikut adalah dua kemungkinan sebab:

  • Saya mempunyai sensor Seco-larm yang terpasang, jadi apabila pintu ditutup, ia mengeluarkan 3.3v. Pintu garaj ditutup lebih kerap kemudian dibuka. Mungkin, pin GPIO tidak dapat mengambil input berterusan 3.3v lebih kurang.
  • Kegagalan itu bertepatan dengan kehilangan kuasa, mungkin ada lonjakan kuasa.

U-ayat Residential Gateway

Saya mempunyai ayat-ayat AT&T dengan Residential Gateway, tetapi perkhidmatan apa pun mesti berfungsi.

Sekiranya Gerbang ayat-U dimulakan semula atau kehilangan kuasa, Pi Raspberry mungkin perlu dihidupkan semula.

Gerbang kediaman U-ayat IP Umum = ♣ penghala-awam-ip ♣

IP awam pintu masuk kediaman-U boleh berubah, tetapi jarang sekali berlaku

Halaman Utama Residential Gateway U-ayat = 192.168.1.254

SSID titik akses tanpa wayar Router U-ayat = ♣ ssid ♣

Throughput WiFi lebih perlahan daripada yang dijangkakan

Tukar penghala ke saluran yang kurang digunakan. Secara lalai, semua penyedia litar menyesuaikan wifi semua orang ke saluran 1. Tukar ke saluran yang kurang digunakan, seperti, 11. Cuba gunakan nombor ganjil.

Catatan: Saya memberitahu beberapa jiran apa yang saya lakukan untuk meningkatkan wi-fi dan sekarang semua orang berusia 9 atau 11 tahun, jadi saya kembali ke 1. Anda harus selalu menggunakan saluran ganjil.

Buka penyemak imbas.

Untuk ayat-U, masukkan 192.168.1.254 di kotak URL.

Klik pada pautan Wayarles, dan pilih saluran 6 atau 11.

Terdapat aplikasi untuk telefon pintar yang disebut wifi analyzer. Salah satu paparan menunjukkan semua titik akses wifi berdekatan yang disiarkan di saluran tertentu. Di kawasan kejiranan saya, semua orang bersedia untuk menyalurkan 1.

Cabut Pi Raspberry, dan kemudian kembalikan kuasa

Disyorkan: