Isi kandungan:
- Langkah 1: Perkara yang Anda Perlu
- Langkah 2: Sediakan Raspberry Pi untuk 433 MHz
- Langkah 3: Sediakan Pelayan Rumah Pintar
- Langkah 4: Tetapkan Pelanggan
- Langkah 5: Kesimpulannya
Video: Rumah Pintar oleh Raspberry Pi: 5 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:06
Sudah ada beberapa produk di luar sana yang menjadikan flat anda lebih pintar, tetapi kebanyakannya adalah penyelesaian eksklusif. Tetapi mengapa anda memerlukan sambungan internet untuk menukar lampu dengan telefon pintar anda? Itulah salah satu sebab untuk saya membina penyelesaian Rumah Pintar saya sendiri.
Saya memprogram aplikasi pelayan yang berjalan pada Raspberry Pi. Ini adalah projek sumber terbuka berasaskan Java yang membolehkan anda mengkonfigurasi flat anda dan menghubungkan beberapa klien dan 'unit terkawal'. Saya menunjukkan penyelesaian yang mengendalikan suis bekalan kuasa rc, memainkan muzik dan video pada Raspberry Pi, menunjukkan status pada cermin pintar dan dapat dikendalikan oleh aplikasi android dan dua aplikasi kerikil. Sumber dihoskan di github
Langkah 1: Perkara yang Anda Perlu
Untuk menyiapkan Rumah Pintar, anda memerlukan 'ramuan' berikut
- Raspberry Pi sekurang-kurangnya model 2 B
- Pengirim 433 MHz, seperti ini
- 3 kabel pelompat yang menghubungkan Raspberry Pi dan pengirimnya
- Beberapa soket kawalan radio pada 433 MHz
- Telefon pintar Android untuk menjalankan aplikasi pelanggan
Selain itu, anda boleh memperluas Rumah Pintar dengan lebih banyak pilihan pelanggan dan unit seperti ini
- Jam pintar pebble
- Cermin Pintar, lihat projek ini
- Jalur LED terkawal 433 MHz, lihat
Langkah 2: Sediakan Raspberry Pi untuk 433 MHz
Pada langkah berikut, anda memerlukan akses ke baris arahan pada Raspberry Pi. Untuk mendapatkan akses, anda boleh membaca arahan
Sambungkan pengirim 433 MHz dengan Raspberry Pi seperti yang ditunjukkan dalam gambar di atas
- GND (pengirim) 6 GND (raspi)
- VCC (pengirim) 2 + 5V (raspi)
- DATA (pengirim) 11 GPIO 17 (raspi)
Sambungkan juga antena 17cm ke pin ANT (pengirim). Itu meningkatkan isyarat yang ketara.
Oleh kerana kita memerlukan beberapa perpustakaan dari git repositori lain, kita harus memasang git
sudo apt-get install git-core -y
Untuk menyediakan komunikasi Raspberry Pi untuk 433 MHz, kami memerlukan perpustakaan Pi kabel untuk pengendalian GPIO yang lebih baik.
git klon git: //git.drogon.net/wiringPi
cd wiringPi./ membina
Kemudian kita memerlukan perpustakaan yang melaksanakan protokol bekalan kuasa rc.
git klon git: //github.com/dabastynator/rcswitch-pi.git
cd rcswitch-pi buat cp send / usr / bin /
Pelaksanaan 'kirim' membolehkan anda menghantar kod untuk menukar sebahagian besar bekalan kuasa yang ada.
Dalam persediaan Rumah Pintar saya, saya juga mempunyai jalur LED rc yang dijelaskan oleh arahan ini: https://www.instructables.com/id/RC-controlled-LED… Untuk menetapkan warna untuk jalur LED ini, anda memerlukan penghantaran lain yang boleh dilaksanakan yang membolehkan anda untuk menghantar sebarang nilai Integer (Yang mengekodkan warna).
Oleh itu, kumpulkan sendInt.cpp di repo rcswitch-pi dan pindahkan ke / usr / bin / sendInt.
sudo g ++ sendInt.cpp -o / usr / bin / sendInt /home/pi/rcswitch-pi/RCSwitch.o -I / home / pi / rcswitch-pi -lwiringPi
Sekarang anda seharusnya dapat mengirim perintah rc dengan dua yang boleh dilaksanakan / usr / bin / send dan / usr / bin / sendInt
Langkah 3: Sediakan Pelayan Rumah Pintar
Pertama sekali anda perlu memasang beberapa pakej. Aplikasi Smart Home berasaskan Java dan berjalan lancar dengan openjdk-11. Saya tidak pasti mengenai persekitaran jangka masa Java yang lain. Mplayer adalah pemain muzik baris perintah minimalis. Omxplayer menggunakan grafik Raspberry Pi untuk pengekodan video, jadi ini harus digunakan untuk video. Semut program diperlukan untuk membina aplikasi java.
sudo apt-get install mplayer omxplayer openjdk-11-jdk ant -y
Sediakan direktori untuk fail balang dan log.
sudo mkdir / opt / neo
sudo chown pi: pi / opt / neo mkdir / rumah / pi / Log
Konfigurasikan skrip permulaan untuk memulakan aplikasi secara automatik semasa boot. Oleh itu, salin skrip rumah pintar yang dilampirkan ke dalam direktori /etc/init.d/ Saya juga membuat skrip di / usr / bin / yang mengarahkan perintah ke skrip yang dilampirkan, jadi saya hanya memasukkan rumah pintar ke konsol untuk melaksanakan perintah.
sudo cp smart-home /etc/init.d/smart-home
sudo chmod + x /etc/init.d/smart-home sudo sh -c "echo '#! / bin / bash'> / usr / bin / smart-home" sudo sh -c "echo '/ etc / init. d / smart-home / $ 1 '>> / usr / bin / smart-home "sudo chmod + x / usr / bin / smart-home sudo update-rc.d smart-home default
Kini tiba masanya untuk memeriksa repositori dan membina aplikasinya. Sekiranya anda tidak mahu menyusunnya sendiri, anda boleh memuat turun smarthome.jar yang dilampirkan dan memindahkannya ke / opt / neo /
git klon [email protected]: dabastynator / SmartHome.git
semut -f SmartHome / de.neo.smarthome.build / build.ant build_remote cp SmartHome / de.neo.smarthome.build / build / jar / * / opt / neo /
Cuba mulakan rumah pintar dan periksa fail log. Untuk mendapatkan akses untuk GPIO, aplikasi mesti dimulakan dengan sudo.
sudo permulaan-rumah pintar
log kucing / smarthome.log
Anda harus melihat mesej ralat Fail konfigurasi tidak ada yang mengarahkan kita ke langkah seterusnya. Repositori mengandungi readme yang menerangkan fail konfigurasi. Anda boleh melihatnya dengan baik di github:
Salin xml ini ke /home/pi/controlcenter.xml, kemudian tetapkan lokasi untuk pelayan media anda dan ubah kandungan yang anda perlukan. Sebaik sahaja anda selesai membuat konfigurasi dan memulakan semula smart-home (sudo smart-home restart) anda akan melihat kandungan berikut di smarthome.log
24.05-08: 26 MAKLUMAT JAUH oleh de.neo.smarthome.cronjob. CronJob@15aeb7ab: Jadualkan kerja cron
24.05-08: 26 MAKLUMAT JAUH oleh [trigger.light]: Tunggu 79391760 ms untuk pelaksanaan 24.05-08: 26 MAKLUMAT RMI dengan Tambah pengendali web (5061 / ledstrip) 24.05-08: 26 MAKLUMAT RMI dengan Tambah pengendali laman web (5061 / tindakan) 24.05-08: 26 MAKLUMAT RMI dengan Tambah pengendali laman web (5061 / mediaserver) 24.05-08: 26 MAKLUMAT RMI dengan Tambah pengendali web (5061 / suis) 24.05-08: 26 MAKLUMAT RMI dengan Tambah pengendali laman web (5061 / controlcenter) 24.05-08: 26 MAKLUMAT RMI oleh Start webserver dengan 5 pengendali (localhost: 5061) 24.05-08: 26 REMOTE INFORMATION oleh Controlcenter: Tambah 1. unit kawalan: MyUnit (xyz)…
Pelayan web kini dijalankan:-)
Langkah 4: Tetapkan Pelanggan
Pelanggan Android telefon pintar
Repositori git untuk aplikasi rumah pintar juga mengandungi sumber untuk klien android, jadi anda boleh menyusunnya sendiri. Tetapi saya melampirkan APK untuk langkah ini, yang menjadikannya lebih mudah. Kali pertama anda memulakan aplikasi, ia meminta pelayan anda, seperti pada gambar pertama di atas. Masukkan url pelayan dan token keselamatan.
Sepatutnya itu. Anda kini mempunyai akses ke pelayan dan mengawal flat anda, memainkan muzik dan menonton video dari jauh di Raspberry Pi anda. Perhatikan bahawa anda boleh menambahkan widget ke skrin utama anda, yang menjadikan suis dan kawalan muzik lebih mudah diakses.
Pelanggan Smartwatch Pebble
Sumber untuk dua pelanggan kerikil dihoskan di github. Satu aplikasi menunjukkan fail muzik yang sedang dimainkan: https://github.com/dabastynator/PebbleRemoteMusic… Ini juga membolehkan anda menjeda / memainkan dan menaikkan atau menurunkan kelantangan.
Aplikasi kedua mencetuskan tiga tindakan: https://github.com/dabastynator/PebbleControl Nama pencetus adalah: mobile.come_home mobile.leaving dan mobile.go_to_bed. Sekiranya anda menentukan peraturan acara untuk pencetus ini dalam konfigurasi anda - xml anda mencetuskannya dengan jam tangan anda.
Ini semua sumber terbuka, tetapi anda tidak perlu menyusunnya sendiri, saya juga melampirkan aplikasi kerikil. Muat turun PBW dengan telefon pintar anda, telefon anda harus memasangnya di jam tangan anda. Aplikasi kerikil memerlukan konfigurasi untuk bercakap dengan pelayan. Saya melampirkan tangkapan skrin seperti apa tetapan saya.
Pelanggan Smartwatch Garmin
Terdapat juga pelanggan yang tersedia untuk Garmin Smartwatches. Aplikasi ini boleh didapati di app store garmin connect dan boleh dipasang di sini:
apps.garmin.com/en-US/apps/c745527d-f2af-4…
Pelanggan Cermin Pintar
Saya sudah membuat arahan yang menerangkan cara membuat Cermin Pintar, lihat https://www.instructables.com/id/Smart-Mirror-by-R…. Kod sumber juga dihoskan di github: https:// github.com/dabastynator/SmartMirror. Perisian Cermin Pintar membaca konfigurasi dari fail smart_config.js yang bukan merupakan bahagian dari git repositori. Kandungan fail konfigurasi kelihatan seperti senarai ini:
var mOpenWeatherKey = 'your-open-wheather-key';
var mSecurity = 'token keselamatan-anda';
Anda juga harus menyesuaikan dua baris pertama fail smart_mirror.js untuk menentukan alamat ip pelayan Rumah Pintar dan lokasi untuk mendapatkan cuaca yang tepat.
Lebih ramai pelanggan
Aplikasi pelayan adalah pelayan web sederhana. Ini membolehkan anda mencetuskan tindakan dari mana-mana pelanggan yang anda mahukan dengan panggilan web mudah. Dalam demo-video saya menunjukkan tasker aplikasi android yang digabungkan dengan AutoVoice. Ini membolehkan saya mencetuskan peristiwa dengan perintah suara yang sederhana. Contohnya "ok google, time to sleep" boleh mencetuskan mobile.go_to_bed. Tetapi anda juga boleh melakukan panggilan web misalnya dari IFTTT. Bagaimana dengan jalur LED berkelip kuning untuk pemberitahuan e-mel?
Anda boleh meminta pelayan panggilan web seperti pautan berikut (ganti ip, port dan token dengan konfigurasi anda)
localhost: 5061 / controlcenter / api? token = seku…
localhost: 5061 / action / api? token = security-to…
localhost: 5061 / mediaserver / api? token = securi…
localhost: 5061 / switch / api? token = security-to…
localhost: 5061 / ledstrip / api? token = keselamatan-…
Langkah 5: Kesimpulannya
Masih ada beberapa ciri untuk dilaksanakan: Oleh kerana pelayan hanya menyediakan klien web-api sederhana melakukan banyak pengundian. Untuk mengurangkan pengundian, saya mahukan integrasi MQTT untuk pemberitahuan yang lebih baik. Juga bekalan kuasa wifi harus berfungsi lebih dipercayai daripada bekalan kuasa rc kerana rc hanyalah komunikasi sehala.
Membuat projek ini menyeronokkan. Dan cukup bagus untuk mengendalikan flat dengan beberapa peranti, walaupun sambungan internet terputus.
Disyorkan:
Cara Membuat Rumah Pintar Menggunakan Modul Arduino Control Relay - Idea Automasi Rumah: 15 Langkah (dengan Gambar)
Cara Membuat Rumah Pintar Menggunakan Modul Arduino Control Relay | Idea Automasi Rumah: Dalam projek automasi rumah ini, kami akan merancang modul relai rumah pintar yang dapat mengawal 5 peralatan rumah. Modul relay ini dapat dikendalikan dari telefon bimbit atau telefon pintar, jauh IR atau TV jauh, suis manual. Relay pintar ini juga dapat merasakan
Lampu LED Pintar yang dikendalikan oleh Telefon Pintar Bluetooth: 7 Langkah
Lampu LED Pintar yang dikendalikan oleh Telefon Pintar Bluetooth: Saya selalu bermimpi untuk mengawal peralatan pencahayaan saya. Kemudian seseorang membuat lampu LED berwarna-warni yang luar biasa. Saya baru-baru ini menemui Lampu LED oleh Joseph Casha di Youtube. Dengan mendapat inspirasi daripadanya, saya memutuskan untuk menambah beberapa fungsi sambil menjaga
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: 10 Langkah (dengan Gambar)
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: Adakah anda pernah mahukan jam pintar? Jika ya, ini adalah penyelesaian untuk anda! Saya membuat Jam Penggera Pintar, ini adalah jam yang boleh anda ubah waktu penggera mengikut laman web. Apabila penggera berbunyi, akan ada bunyi (bel) dan 2 lampu akan
Cermin Pintar oleh Raspberry Pi: 5 Langkah (dengan Gambar)
Cermin Pintar oleh Raspberry Pi: Jadi ada raspberry pi 1B yang tidak digunakan di laci dan monitor yang tidak digunakan. Itu alasan yang cukup untuk membuat Cermin Pintar. Cermin harus menunjukkan maklumat masa, tarikh dan cuaca serta maklumat status mengenai suis rumah pintar dan apa yang
Kawal Peralatan Rumah Tangga Dari Telefon Pintar Anda Dengan Aplikasi Blynk dan Raspberry Pi: 5 Langkah (dengan Gambar)
Kawal Peralatan Rumah Tangga Dari Telefon Pintar Anda Dengan Aplikasi Blynk dan Raspberry Pi: Dalam projek ini, kami akan belajar bagaimana menggunakan aplikasi Blynk dan Raspberry Pi 3 untuk mengendalikan perkakas rumah (Pembuat kopi, Lampu, tirai tingkap dan banyak lagi … Komponen perkakasan: Kabel Breadboard Lampu Relay Raspberry Pi 3 Aplikasi apl perisian: Blynk A