![Cara Mengawal Outlet Menggunakan Raspberry Pi: 6 Langkah Cara Mengawal Outlet Menggunakan Raspberry Pi: 6 Langkah](https://i.howwhatproduce.com/images/011/image-31492-j.webp)
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:01
![Cara Mengawal Outlet Menggunakan Pi Raspberry Cara Mengawal Outlet Menggunakan Pi Raspberry](https://i.howwhatproduce.com/images/011/image-31492-1-j.webp)
![Cara Mengawal Outlet Menggunakan Pi Raspberry Cara Mengawal Outlet Menggunakan Pi Raspberry](https://i.howwhatproduce.com/images/011/image-31492-2-j.webp)
![Cara Mengawal Outlet Menggunakan Raspberry Pi Cara Mengawal Outlet Menggunakan Raspberry Pi](https://i.howwhatproduce.com/images/011/image-31492-3-j.webp)
Dalam Instructable ini, saya akan menunjukkan kepada anda bagaimana membuat antara muka web untuk mengawal outlet di rumah anda menggunakan Raspberry Pi. Saya memilih untuk menulis projek ini ketika melihat pertandingan Sensor, dan kerana projek ini melibatkan penggunaan sensor untuk membaca kod dari alat kawalan jauh yang disediakan dengan cawangan yang anda beli, saya fikir projek ini akan sesuai.
Saya akan berusaha untuk memastikan tahap ini setinggi mungkin dan menyediakan kod untuk menjadikan semuanya berfungsi. Untuk anda semua monyet kod di luar sana, jangan ragu untuk mencari kod tersebut, dan periksa saya dalam komen! Saya sentiasa berusaha untuk memperbaiki. Ada banyak perkara yang berlaku dalam ini, jadi jika anda mempunyai pertanyaan mengenai langkah apa pun, silakan tinggalkan komen supaya saya dapat mengemas kini Instructable dengan perincian yang diperlukan.
Projek ini menggunakan saluran kawalan frekuensi radio pada 433MHz ditambah dengan pemancar RF yang disambungkan ke pi raspberry anda. Outlet dilengkapi dengan alat kawalan jauh yang dapat menghidupkan / mematikan outlet, tetapi itu tidak menyeronokkan! Kami sebaliknya akan menggunakan pelayan web yang berjalan pada raspberry pi yang membolehkan sesiapa sahaja yang tersambung ke rangkaian untuk menghidupkan atau mematikan outlet tertentu. Bahagian depan web untuk projek ini sangat sesuai kerana mana-mana peranti yang disambungkan ke web di rangkaian anda boleh digunakan sebagai alat kawalan jauh anda.
Ini adalah projek yang saya impikan untuk disiapkan selama bertahun-tahun, dan walaupun masih ada ruang untuk penambahan, projek yang dijelaskan sebagai berikut adalah sistem berfungsi.
Bekalan
- A Raspberry Pi (Saya menggunakan RPi 3 Model B +)
- Pemancar dan Penerima 433MHz (saya menggunakan ini)
- Outlet 433MHz (saya menggunakan ini)
- Pelompat Wanita-ke-Wanita (saya membeli kumpulan ini)
- Komputer atau alat genggam yang mampu mengakses internet
Langkah 1: Sediakan Pi Raspberry Anda
![Sediakan Pi Raspberry Anda Sediakan Pi Raspberry Anda](https://i.howwhatproduce.com/images/011/image-31492-4-j.webp)
Mulakan dengan memasang Raspbian versi terbaru pada Raspberry Pi baru anda. Sekiranya anda merancang untuk menggunakan Pi yang sudah ada (yang dapat anda lakukan sepenuhnya), semua yang anda perlukan adalah memastikan bahawa anda mempunyai Python 3 pada Pi anda, kerana itulah yang ditulis oleh semua kod sumber yang saya sediakan., taip
ular sawa3
ke dalam baris arahan. Sekiranya anda mempunyai Python 3, anda mesti melihat terminal python terbuka. Keluar terminal dengan menutup atau menaip
keluar ()
Setelah anda mengesahkannya, anda perlu memasang termos pada Pi anda. Flask membolehkan kami membuat pelayan web kami. Dari baris arahan Pi, ketik
sudo pip3 pasang termos
Sekiranya anda tidak memasang pip pada Pi anda, anda perlu menaip
sudo apt-get install python3-pip
Saya lebih suka mengembangkan pada Raspberry Pi saya dari keselesaan komputer desktop saya. Sekiranya anda terlalu memilih pilihan ini, anda perlu memasang semacam persekitaran ke SSH ke dalam Pi. PuTTY akan berfungsi, tetapi saya lebih suka mempunyai GUI (antara muka pengguna grafik), yang kelihatan seperti anda langsung menggunakan Pi. Untuk pilihan GUI, anda ingin memasang VNC Viewer ke komputer yang anda rancangkan. Terdapat juga tetapan yang perlu anda sesuaikan pada Pi anda. Arahan untuk mengubah tetapan boleh didapati di sini.
Langkah 2: Menyambungkan Perkakasan Anda
![Menyambungkan Perkakasan Anda Menyambungkan Perkakasan Anda](https://i.howwhatproduce.com/images/011/image-31492-5-j.webp)
Pada ketika ini, sudah tiba masanya untuk membuat semua hubungan fizikal yang perlu anda lakukan sebagai persediaan untuk menyediakan kod sumber untuk projek ini. Anda akan menyambungkan pin pemancar dan penerima ke pin GPIO Pi anda. Anda ingin merujuk gambarajah pin pin GPIO secara beragama. Untuk melakukannya, buka terminal pada Pi anda dan taip
mencubit
Berikut adalah sambungan yang saya buat. Anda mungkin mempunyai konfigurasi yang berbeza jika anda membeli perkakasan pemancar / penerima yang berbeza daripada yang saya nyatakan dalam pengenalan. Sekiranya anda memutuskan untuk memilih nombor pin yang berbeza daripada yang saya nyatakan di bawah, jangan takut! Semasa anda memuat turun kod sumber, cukup ubah nombor pin yang diperlukan dalam fail RxTx.py.
Penerima (cip besar):
- GND - Apa-apa pin tanah yang ditentukan
- DATA - Pin 11
- DER - Tidak bersambung
- + 5V - Mana-mana pin + 5V yang ditentukan
- ------
- + 5V - Mana-mana pin + 5V yang ditetapkan
- GND - Apa-apa pin tanah yang ditentukan
- GND - Tidak bersambung
- ANT - Tidak bersambung
Catatan: Anda mungkin menyambungkan antena seperti yang diperlukan, tetapi saya rasa tidak perlu. Cip kecil ini sangat sensitif dan dapat mengesan isyarat dengan jarak sekurang-kurangnya 50 kaki dari tempat ia duduk dan melalui sekurang-kurangnya dua dinding.
Pemancar:
- P - Pin 3.3V
- DA - Pin 7
- G - Mana-mana pin tanah yang ditentukan
- AN - tidak bersambung
Catatan: Sekali lagi, anda mungkin menyambungkan antena ke pemancar mengikut keperluan, tetapi saya rasa tidak perlu. Julatnya lebih daripada mencukupi (50 + kaki).
Langkah 3: Menambah Kod
Ini adalah bahagian di mana saya menghabiskan sebahagian besar masa saya ketika membangunkan projek ini. Saya cuba memberi komen sebanyak mungkin, tetapi saya mungkin meninggalkan jurang yang mungkin memerlukan penjelasan sekiranya ada di antara anda yang meluangkan masa untuk memahaminya. Sekiranya ini berlaku kepada anda, sila tinggalkan komen!
Bahasa yang terlibat di sini adalah:
- Python
- CSS
- Javascript
- HTML
- JQuery / Ajax
Python digunakan dalam pelayan termos dan di
RxTx.py
fail, yang mengendalikan penghantaran dan penerimaan kod. CSS digunakan dalam menghasilkan gaya laman web. Siapa yang mahukan laman web yang membosankan !? Javascript digunakan dalam pengendalian acara (menekan butang, dll.). HTML adalah asas pembinaan laman web. Akhirnya, JQuery / Ajax digunakan untuk berkomunikasi antara halaman web dan backend Python.
Sekiranya semua bahasa ini terdengar menakutkan, jangan risau! Saya hanya tahu Python akan memasuki projek ini, yang kebetulan merupakan bahasa yang melibatkan pengekodan paling sedikit, lihatlah … Cukuplah untuk mengatakan, luangkan masa anda untuk menyusun kod jika itu yang anda pilih untuk lakukan. Sekiranya anda tidak mahu, anda tidak perlu!
Berikut adalah struktur direktori yang saya pilih untuk menggunakan laman web ini. Folder zip yang dilampirkan pada langkah ini mengandungi semua kod sumber dalam struktur berikut.
Outlet Switch-> comm-- DataRW.py-- keys.py-- RxTx.py-> laman web-- statik ----- favicon.ico ----- style.css-- templat ----- index.html ----- jadual.html-- app.py-- data.file
Anda boleh meletakkan folder Outlet Switch di mana sahaja pada Pi anda. Apabila anda sudah bersedia untuk menjalankan pelayan web anda, buka terminal pada Pi anda, dan
cd
(ubah direktori) ke direktori halaman web. Kemudian taip
python3 app.py
ke terminal. Sekiranya tidak ada kesilapan, anda harus berusaha!
P. S. Harap bersabar jika anda menghadapi bug. Saya cuba mengetuk semuanya sebelum memuat naik.
Langkah 4: Cubalah
![Cubalah! Cubalah!](https://i.howwhatproduce.com/images/011/image-31492-6-j.webp)
Setelah menggunakan kod, anda dapat merasakan antara muka web di hujung jari anda. Kawalan sistem sangat mudah:
- Anda boleh menambah seberapa banyak outlet yang anda mahu menggunakan antara muka web.
- Penghapusan semudah mengklik edit, memilih outlet yang ingin anda hapus, dan mengklik hapus.
Video YouTube di atas menunjukkan cara sebenarnya untuk menambah saluran keluar ke senarai anda. Untuk meringkaskan apa yang ditunjukkan:
- Pertama masukkan tajuk outlet di medan Judul
- Klik atau sentuh di luar medan Tajuk untuk membolehkan program memeriksa bahawa tajuk itu belum ada. Anda tidak boleh mempunyai gelaran dengan nama yang sama
- Setelah disahkan, butang ON Code dan OFF Code diaktifkan.
- Tekan dan tahan butang ON pada alat kawalan jauh yang disediakan dan cepat klik butang ON Code pada antara muka. Tahan butang pada alat kawalan jauh sehingga kod binari anda mengisi medan bersebelahan.
- Ulangi langkah sebelumnya untuk OFF Code.
- Klik OK, dan sekarang anda sudah bersedia untuk menukar outlet ini!
Seperti yang dinyatakan dalam pengenalan, projek ini tidak 100% lengkap untuk kegunaan saya sendiri. Komponen terbesar yang belum saya selesaikan dan laksanakan adalah kemampuan penjadualan. Saya merancang untuk membenarkan pengguna membina jadual yang membolehkan kedai dihidupkan dan dimatikan pada waktu yang ditentukan secara automatik.
Langkah 5: Menyahpepijat dan Fail RxTx.py
![Menyahpepijat dan Fail RxTx.py Menyahpepijat dan Fail RxTx.py](https://i.howwhatproduce.com/images/011/image-31492-7-j.webp)
![Menyahpepijat dan Fail RxTx.py Menyahpepijat dan Fail RxTx.py](https://i.howwhatproduce.com/images/011/image-31492-8-j.webp)
![Penyahpepijatan dan Fail RxTx.py Penyahpepijatan dan Fail RxTx.py](https://i.howwhatproduce.com/images/011/image-31492-9-j.webp)
![Menyahpepijat dan Fail RxTx.py Menyahpepijat dan Fail RxTx.py](https://i.howwhatproduce.com/images/011/image-31492-10-j.webp)
Satu-satunya batasan sistem yang diketahui ialah terdapat kemungkinan ketidaksesuaian antara kedai vendor yang berbeza. Mesej kod hidup dan mati adalah 25 bit untuk sistem saya, dan jika sistem mempunyai panjang mesej yang berbeza, ia tidak serasi dengan projek ini. Sekiranya anda betul-betul mengikuti arahan dan anda masih menghadapi masalah untuk menyelesaikannya, berikut adalah kaedah terbaik untuk menyelesaikan masalah ini.
-
Pastikan matplotlib dipasang pada Pi anda. Anda boleh melakukan ini dengan memasukkan perkara berikut ke terminal Pi:
-
ular sawa3
-
import matplotlib
- Sekiranya anda menerima ralat, anda perlu memasang matplotlib.
-
Keluar dari shell python menggunakan
keluar ()
-
-
Untuk memasang matplotlib, ketik
sudo pip3 pasang matplotlib
- ke terminal
- Muat turun fail test.py yang dilampirkan, dan letakkan di sebelah fail RxTx.py pada Pi anda
- Buka terminal python dan ubah direktori ke dalam folder comm.
-
Jenis
python3 test.py
- Apabila tertulis "** Memulakan Rakaman **", tekan dan tahan butang ON atau OFF pada alat kawalan jauh anda sehingga rakaman berakhir.
- Program ini akan memuatkan angka matplotlib yang kelihatan serupa dengan perkara di atas. Zum masuk sehingga anda melihat isyarat berulang seperti yang ditunjukkan dalam gambar di atas.
- Hitung jumlah logik 1 dan logik 0 untuk setiap mesej, di mana mesej adalah satu lelaran dari isyarat berulang yang dilihat di atas. Sekiranya jumlahnya 25, fail RxTx.py kemungkinan tidak salah. Sekiranya anda menemui sesuatu selain 25, pastikan untuk memberi komen di bawah ini, dan saya akan menyusun semula fail RxTx.py agar lebih terbuka (atau jangan ragu untuk mencuba).
Bagaimana jika saya tidak melihat isyarat berulang?
Sekiranya anda tidak melihat isyarat berulang, salah satu daripada dua perkara adalah salah. Pertama, periksa bahawa semua sambungan wayar pelompat anda dibuat dengan betul. Sekiranya semuanya kelihatan baik, anda mungkin mempunyai penerima yang buruk. Adakah anda membeli yang saya cadangkan? Semasa saya membeli cip penerima pertama saya, ia sangat bising. Begitu bising saya tidak dapat mendapat isyarat yang jelas. Saya kemudian mengembalikan cip itu dan mengambil yang saya pautkan, dan ia tidak dapat berfungsi dengan lebih baik.
Langkah 6: Nikmati
Anda tahu mempunyai kemampuan untuk menghidupkan / mematikan outlet dari telefon, tablet, komputer, atau peranti berkemampuan web anda yang lain! Beritahu saya pendapat anda dalam komen!
Disyorkan:
DIY Cara Mengawal Sudut Motor Servo Menggunakan Komponen Urutan Visuino: 10 Langkah
![DIY Cara Mengawal Sudut Motor Servo Menggunakan Komponen Urutan Visuino: 10 Langkah DIY Cara Mengawal Sudut Motor Servo Menggunakan Komponen Urutan Visuino: 10 Langkah](https://i.howwhatproduce.com/images/002/image-4200-j.webp)
DIY Cara Mengawal Servo Motor Angle Menggunakan Komponen Urutan Visuino: Dalam tutorial ini kita akan menggunakan Servo Motor dan Arduino UNO, dan Visuino untuk mengawal servo motor Angle menggunakan komponen urutan. Komponen συνέπεια sesuai untuk situasi di mana kita ingin mencetuskan beberapa peristiwa secara berurutan dalam kes kami, servo motor degr
Cara Mengawal GoPro Hero 4 Menggunakan Pemancar RC: 4 Langkah (dengan Gambar)
![Cara Mengawal GoPro Hero 4 Menggunakan Pemancar RC: 4 Langkah (dengan Gambar) Cara Mengawal GoPro Hero 4 Menggunakan Pemancar RC: 4 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/001/image-1770-23-j.webp)
Cara Mengawal GoPro Hero 4 Menggunakan RC Transmitter: Matlamat untuk projek ini adalah dapat mengawal GoPro Hero 4 dari jarak jauh melalui RC Transmitter. Kaedah ini akan menggunakan GoPro yang dibina dalam Wifi & API HTTP untuk mengawal peranti & diilhamkan oleh PROTOTYPE: KECIL DAN MURAH
Cara Mengawal Peranti Menggunakan Raspberry Pi dan Relay - ASAS: 6 Langkah
![Cara Mengawal Peranti Menggunakan Raspberry Pi dan Relay - ASAS: 6 Langkah Cara Mengawal Peranti Menggunakan Raspberry Pi dan Relay - ASAS: 6 Langkah](https://i.howwhatproduce.com/images/006/image-15548-j.webp)
Cara Mengawal Peranti Menggunakan Raspberry Pi dan Relay - ASAS: Ini adalah tutorial asas dan lurus ke hadapan tentang cara mengawal peranti menggunakan Raspberry Pi dan Relay, berguna untuk membuat Projek IoT Tutorial ini untuk pemula, sangat mesra untuk ikuti walaupun anda tidak mempunyai pengetahuan tentang penggunaan Raspberry
Cara Mengawal Motor DC Gear dengan Menggunakan Pengawal Kelajuan Elektronik Brush 160A dan Servo Tester: 3 Langkah
![Cara Mengawal Motor DC Gear dengan Menggunakan Pengawal Kelajuan Elektronik Brush 160A dan Servo Tester: 3 Langkah Cara Mengawal Motor DC Gear dengan Menggunakan Pengawal Kelajuan Elektronik Brush 160A dan Servo Tester: 3 Langkah](https://i.howwhatproduce.com/images/010/image-29433-j.webp)
Cara Mengawal Motor DC Gear dengan Menggunakan Pengawal Kelajuan Elektronik Brush 160A dan Penguji Servo: Spesifikasi: Voltan: 2-3S Lipo atau 6-9 NiMH Arus berterusan: 35A Arus pecah: 160A BEC: 5V / 1A, mod linear Mod: 1. ke hadapan &terbalik; 2. ke hadapan &brek; 3. ke hadapan & brek & Berat terbalik: 34g Saiz: 42 * 28 * 17mm
Visuino Cara Menggunakan Butang Sebagai Input untuk Mengawal Perkara Seperti LED: 6 Langkah
![Visuino Cara Menggunakan Butang Sebagai Input untuk Mengawal Perkara Seperti LED: 6 Langkah Visuino Cara Menggunakan Butang Sebagai Input untuk Mengawal Perkara Seperti LED: 6 Langkah](https://i.howwhatproduce.com/images/011/image-31067-j.webp)
Visuino Cara Menggunakan Tombol Sebagai Input untuk Mengawal Perkara Seperti LED: Dalam tutorial ini kita akan belajar cara Menghidupkan dan Mematikan LED menggunakan butang sederhana dan Visuino. Tonton video demonstrasi