Daftar Isi:

Pembuka Pintu Garasi Menggunakan Raspberry Pi: 5 Langkah (Dengan Gambar)
Pembuka Pintu Garasi Menggunakan Raspberry Pi: 5 Langkah (Dengan Gambar)

Video: Pembuka Pintu Garasi Menggunakan Raspberry Pi: 5 Langkah (Dengan Gambar)

Video: Pembuka Pintu Garasi Menggunakan Raspberry Pi: 5 Langkah (Dengan Gambar)
Video: Akses Kontrol Pintu Garasi Otomatis Menggunkan Raspberry Pi 2024, November
Anonim
Pembuka Pintu Garasi Menggunakan Raspberry Pi
Pembuka Pintu Garasi Menggunakan Raspberry Pi

Kontrol motor garasi dari smartphone atau perangkat apa pun yang dapat menelusuri halaman web (dengan AJAX!). Proyek ini dimulai karena saya hanya memiliki satu remote untuk garasi saya. Betapa menyenangkannya membeli yang kedua? Tidak cukup. Target saya adalah untuk dapat mengontrol dan memantau pintu garasi saya dari smartphone saya dengan satu halaman. Saya belum menempatkan keamanan mewah di sekitarnya karena RPi tidak terbuka di luar LAN saya. Oleh karena itu saya mengandalkan VPN untuk mengakses halaman web. Menggunakan smartphone Android, sangat mudah untuk mengatur VPN dan menambahkan halaman web ke layar beranda saya. Yang saya butuhkan hanyalah perangkat lunak untuk itu.

Jika Anda ingin mendukung saya dalam menulis instruksi lainnya, silakan beli perangkat keras dari tautan sponsor Amazon.

Juga, instruksi ini sekarang juga tersedia dari halaman pribadi saya:

Langkah 1: Beberapa Latar Belakang

Apa yang saya temukan online

Sebagai seorang programmer, saya suka menggunakan kembali tutorial atau kode "tingkat produksi". Dalam hal ini saya tidak senang dengan apa yang saya temukan:

  • Pembuka Pintu Garasi Raspberry Pi oleh quartarian. Di mana saya mulai, tombol sederhana untuk memerintahkan relai. Tidak ada tombol buka/tutup, tidak ada umpan balik. Bagaimanapun, sangat membantu untuk memahami konsep seputar RPi khusus untuk mengontrol motor dari relai. Pengkabelan yang saya gunakan sekarang masih sama untuk bagian perintah.
  • Pembuka Pintu Garasi Raspberry Pi dengan GaragePi oleh Chase Chou. Jenis pengaturan yang sama tetapi menggunakan remote nirkabel tambahan. Saya tidak mau membunuh satu-satunya remote saya. Itu terbukti tetap menggunakan jenis pengaturan listrik yang sama untuk bagian perintah. Sepanjang jalan saya belajar tentang WebIOPi untuk memeriksa GPIO saya melalui halaman web. Itu tadi saya juga belajar tentang menempatkan shortcut ke homescreen Android saya. Itu juga mulai menyalakan gagasan untuk mengandalkan layanan, lagipula, saya ingin itu dapat diandalkan.
  • Membuat Email, Tweet, atau SMS Pintu Garasi Anda: Bagian 1 Oleh Richard L. Lynch. Yang ini menambahkan ide untuk menggunakan Sensor Magnetik untuk mengontrol keadaan pintu. Namun saya belum banyak menggunakan karena saya tidak membangun sistem alarm tetapi sistem perintah/monitor.
  • Pembuka Pintu Garasi Nirkabel Sepenuhnya / Kamera Keamanan oleh DeckerEgo. Ini membuat saya lebih sadar tentang streaming webcam untuk memantau pintu. Saya masih harus berusaha keras untuk itu. Mungkin saya harus mendaur ulang hub USB atau mengambil webcam lain.
  • Kontrol Raspberry Pi dari perangkat seluler atau browser web desktop oleh Frédérick Blais. Ini sekarang menjadi basis saya untuk tumpukan perangkat lunak. Ini menggunakan Flask untuk menjalankan halaman web yang sangat sederhana bersama dengan AJAX. Ini premium bagi saya karena menyediakan pemantauan waktu nyata dan opsi perintah. Baca di bawah.

Tentang RPi saya

Karena saya masih belajar tentang RPi dan barang elektronik secara umum, saya membeli beberapa barang untuk Raspberry Pi yang baru saya beli: beberapa kabel, T-cobbler, beberapa led, modul satu relai, delapan relai modul, layar LCD dan sebagainya. Saya sama sekali bukan ahli elektronik dan ini terbukti sangat instruktif. Untuk membeli perangkat keras ekstra Amazon dan Ebay adalah teman terbaik Anda.

Status proyek saat ini mencakup perangkat keras berikut:

  • Raspberry Pi (FR/DE) yang menjalankan Raspbian Wheezy 2014-09-09 dengan pembaruan terkini
  • Kartu micro SD Kelas 10 8GB (FR/DE) atau 16GB (FR/DE) atau 32GB (FR/DE) untuk menampung OS, file, dan sebagainya
  • Dua sakelar buluh garasi paduan seng (FR/DE) untuk mendeteksi keadaan buka/tutup
  • Satu modul relai 3v (FR/DE) untuk mengirim perintah ke motor pintu (milik saya memiliki LED bawaan untuk memantau status relai, sangat berguna!)
  • Papan tempat memotong roti tanpa solder (FR/DE) dan 2 sakelar sesaat (FR/DE) untuk mensimulasikan pintu di meja saya (atau dapatkan starter kit (FR/DE))
  • Dongle wifi (FR/DE) untuk melepas kabel tambahan saat akan digantung di langit-langit garasi

Keterbatasan yang masih saya miliki adalah saya tidak tahu kapan pintu itu setengah jalan, berhenti atau masih bergerak. Ini juga mengapa saya ingin menambahkan webcam lama untuk streaming dari dalam garasi. Mungkin saya akan menambahkan beberapa sensor untuk memantau motor itu sendiri.

Langkah 2: Tumpukan Perangkat Lunak

Tumpukan Perangkat Lunak
Tumpukan Perangkat Lunak

Hal-hal umum

Perangkat lunak ini bergantung pada modul Python, Flask, dan WiringPi GPIO Python. Seperti yang dijelaskan di latar belakang, saya mulai dari tutorial kontrol Raspberry Pi dari perangkat seluler atau browser web desktop yang diterbitkan oleh Frédérick Blais. Perangkat lunak saat ini terdiri dari:

  • File template HTML yang berisi beberapa kode dan kontrol jQuery Mobile
  • Modul Python Pins untuk mengakses GPIO dari Raspberry Pi
  • Modul Python go untuk menjalankan Flask dan mendukung kueri AJAX

Apa yang ada di repositori adalah perangkat lunak mentah. Ini sama sekali tidak mewah atau membanjiri fitur. Hanya itu yang bisa saya capai dari apa yang telah saya pelajari.

Antarmuka saat ini

Saat ini status untuk pintu dibaca setiap 0,5 detik. Dua sakelar digunakan untuk keadaan buka/tutup. Relay digunakan untuk memerintahkan motor. Kode saat ini masih menghasilkan beberapa debug. Tangkapan layar di bawah ini berasal dari Nexus 5.

Langkah 3: Perangkat Keras - Alfa

Perangkat Keras - Alfa
Perangkat Keras - Alfa
Perangkat Keras - Alfa
Perangkat Keras - Alfa

Tempat tidur percobaan

Tempat tidur pengujian saya cukup sederhana, sebuah RPi, relai, dan dua sakelar. Untuk menahan semuanya, Anda hanya perlu beberapa ikatan zip (FR/DE). Berikut adalah gambarnya. Kabel LAN RJ45 (FR/DE) adalah untuk debug desktop dan dongle WIFI untuk penggunaan garasi.

Sistem langsung

RPi terhubung ke motor pintu hanya untuk saat ini, sakelar akan mengikuti. Saya harus menunggu sebentar untuk mendapatkan tabung heat-shrinking (FR/DE). Saya juga harus lebih mantap. Maaf untuk kabur.

Kabel biru, kuning dan hijau di sebelah kiri adalah untuk sakelar magnet.

  • Biru adalah GND
  • Kuning dan hijau adalah pin 18 (keadaan terbuka) dan 27 (keadaan tertutup).

Langkah 4: Perangkat Keras - Beta

Perangkat Keras - Beta
Perangkat Keras - Beta
Perangkat Keras - Beta
Perangkat Keras - Beta
Perangkat Keras - Beta
Perangkat Keras - Beta

Tempat tidur percobaan

Ini sekarang menjadi karton langsung dengan ikatan zip. LCD dan relai juga dibundel. LCD berukuran 20x4 (20 karakter untuk baris, 4 baris)(FR/DE)di atas I²C.

2 baris pertama menampilkan sambutan dan tanggal/waktu. Siklus 2 baris terakhir antara status pin dan status jaringan (IP eth0/wan0). Garis keadaan pintu adalah GFX yang bagus untuk dikatakan:

  • | | terbuka
  • |-| sedang beroperasi
  • |.| ditutup

Skema Fritzing

Skema fritzing dengan LCD 20x4 I2C, sakelar buka/tutup, dan relai. Satu-satunya tambahan adalah layar LCD I2C. Saya lebih suka itu daripada 18x2 yang saya miliki.

Sistem langsung

HW beta sekarang "tingkat produksi" karena cocok dengan baik di kotak sekrup lama. Saya menyimpan satu pemisah untuk meng-host relai dan kabel lain-lain sementara RPi berdiri di level yang lebih rendah. Anda mungkin melihat Synology NAS (FR/DE) di sisi kanan, digunakan untuk menyalakan RPi secara langsung. Pada malam hari dengan modem, switch dan NAS.

Tampilan dekat kotak sekrup, LCD menunjukkan status pintu dan pinout Buka/Tutup/Relay.

Pada malam hari, pemandangan bagian dalam dari atas.

Langkah 5: Kode Sumber dan Sumber Daya

Anda dapat menemukan semua sumber daya di repositori GitHub ini:

github.com/amayii0/GarageOpenerR1

Direkomendasikan: