Daftar Isi:

Stopkontak yang Diaktifkan Internet: 13 Langkah
Stopkontak yang Diaktifkan Internet: 13 Langkah

Video: Stopkontak yang Diaktifkan Internet: 13 Langkah

Video: Stopkontak yang Diaktifkan Internet: 13 Langkah
Video: TUTORIAL CARA SETTING PROGRAM STOP KONTAK TIMER DIGITAL 2024, November
Anonim
Image
Image
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan

Proyek Server Web PowerHub & Petunjuk Penyiapan Outlet Berkemampuan Internet

Pusat persistensi data pusat untuk lampu dan outlet berkemampuan Internet di rumah Anda!

Langkah 1: Proyek Server Web PowerHub & Petunjuk Penyiapan Outlet yang Diaktifkan Internet

Pusat persistensi data pusat untuk lampu dan outlet berkemampuan Internet di rumah Anda

Flashing RaspberriPi Hard Disk / Instal Software yang Diperlukan (Menggunakan Linux Ubuntu) Download "RASPBIAN JESSIE LITE"

Buat hard disk baru Anda untuk DashboardPI

Masukkan microSD ke komputer Anda melalui adaptor USB dan buat gambar disk menggunakan perintah dd

Temukan kartu microSD yang Anda masukkan melalui perintah df -h, lepaskan dan buat gambar disk dengan perintah salin disk dd

$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678

$ umount /dev/sdb1

Perhatian: pastikan perintahnya benar-benar akurat, Anda dapat merusak disk lain dengan perintah ini

if=lokasi file gambar RASPBIAN JESSIE LITE of=lokasi kartu microSD Anda

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (catatan: dalam hal ini, /dev/sdb, /dev/sdb1 adalah partisi pabrik yang ada di microSD)

Menyiapkan RaspberriPi

Masukkan kartu microSD baru Anda ke raspberrypi dan nyalakan dengan monitor yang terhubung ke port HDMI

Gabung

pengguna: pi pass: raspberry

Ubah kata sandi akun Anda untuk keamanan

sudo passwd pi

Langkah 2: Aktifkan Opsi Lanjutan RaspberriPi

sudo raspi-config

Pilih: 1 Perluas Sistem File

9 Opsi Lanjutan

A2 Hostname ubah menjadi "WIFI-OUTLET"

A4 SSH Aktifkan Server SSH

A7 I2C Aktifkan antarmuka i2c

Aktifkan Keyboard Inggris/AS

sudo nano /etc/default/keyboard

Ubah baris berikut: XKBLAYOUT="us"

Reboot PI untuk perubahan tata letak Keyboard / pengubahan ukuran sistem file agar berlaku

$ sudo shutdown -r sekarang

Sambungkan Otomatis ke WiFi Anda

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Tambahkan baris berikut agar raspberrypi Anda terhubung secara otomatis ke WiFi rumah Anda (jika jaringan nirkabel Anda bernama "linksys" misalnya, dalam contoh berikut)

network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Nyalakan ulang PI untuk menyambung ke jaringan WiFi

$ sudo shutdown -r sekarang

Sekarang PI Anda akhirnya berada di jaringan lokal, Anda dapat login dari jarak jauh melalui SSH. Tetapi pertama-tama Anda harus mendapatkan alamat IP yang dimilikinya saat ini.

$ ifconfig Cari "inet addr: 192.168. XXX. XXX" di output perintah berikut untuk Alamat IP PI Anda

Buka komputer lain dan login ke raspberrypi Anda melalui ssh

$ssh [email protected]. XXX. XXX

Langkah 3: Mulai Menginstal Paket yang Diperlukan

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-requests python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev

Perbarui pengaturan zona waktu lokal

$ sudo dpkg-konfigurasi ulang tzdata

pilih zona waktu Anda menggunakan antarmuka

Atur perintah direktori l sederhana [opsional]

vi ~/.bashrc

tambahkan baris berikut:

alias l='ls -lh'

sumber ~/.bashrc

Perbaiki penyorotan sintaks default VIM [opsional]

sudo vi /etc/vim/vimrc

batalkan komentar pada baris berikut:

sintaks aktif

Instal Driver Python i2c

Langkah 4: MEMBANGUN API WEB

Petunjuk berikut akan memungkinkan Anda untuk membangun hub pusat yang menjelaskan ke berbagai outlet berkemampuan wifi dan sakelar dinding yang mungkin Anda buat, perangkat mana yang dinyalakan dan dimatikan. Ini adalah skrip PHP kecil untuk ditempatkan di hosting pilihan Anda. Ini memiliki API berikut untuk mendapatkan dan mengatur informasi untuk itu. Catatan: jangan lupa untuk menyertakan file.htaccess agar perutean URL yang benar dapat dilakukan.

Instal folder "index.php", "values/" dan settings.php (dikonfigurasi ke nilai Anda sendiri) ke server web berkemampuan PHP pilihan Anda. Nilai kunci rahasia dalam file "settings.php" harus sesuai dengan nilai kunci rahasia yang akan Anda tetapkan di file "settings.py". Ini pada tingkat dasar akan mencegah lalu lintas web lain dari pengaturan / penulisan nilai, menyalakan perangkat Anda, Anda sekarang memerlukan kunci API hash ini di header permintaan HTTP untuk melakukannya.

API mendukung fitur berikut, untuk proyek ini kami hanya akan menggunakan nilai "flag" yang merupakan nilai boolean yang memberi tahu sakelar untuk hidup dan mati. Mungkin jika Anda ingin mengambil keuntungan dari nilai "membaca" Anda bisa memilikinya sehingga jika suhu ruangan menjadi terlalu panas dengan menyimpan suhu di sana, itu bisa menyalakan kipas angin jendela, dll.

Dapatkan Kodenya

Kloning proyek berikut dari GitHub untuk mendapatkan kode untuk menjalankan server web dan outlet RaspberryPI.

github.com/khinds10/PowerHub

Titik Akhir API saat dijalankan di server web

myhost/message (dapatkan kumpulan pesan saat ini)

myhost/message/set (HTTP POST nilai string mentah ke URL ini untuk menetapkan pesan baru)

myhost/flag/{id} (dapatkan status boolean bendera saat ini dengan bilangan bulat: {id})

myhost/flag/all (dapatkan semua status boolean saat ini dari semua flag sebagai array)

myhost/flag/{id}/set (setel status boolean saat ini ke 'true' untuk flag dengan integer: {id})

myhost/flag/{id}/unset (setel status boolean saat ini ke 'false' untuk bendera dengan bilangan bulat: {id})

myhost/reading/{id} (dapatkan nilai rata-rata saat ini untuk pembacaan dengan bilangan bulat: {id})

myhost/reading/all (dapatkan nilai rata-rata saat ini untuk semua bacaan sebagai array)

myhost/reading/{id}/set (HTTP POST nilai numerik mentah ke URL ini untuk menambahkan nilai baru ke rata-rata yang dihitung saat ini) -- lihat di bawah untuk mengetahui berapa banyak nilai total yang dikompilasi ke nilai rata-rata Konfigurasi Nilai 'pembacaan' dihitung sebagai rata-rata dari sejumlah nilai numerik pembacaan bertahan terbaru. Tetapkan konstanta berikut ke berapa banyak pembacaan terbaru yang harus dimasukkan untuk menghasilkan rata-rata.

$readingsAverageLimit = 5;

Server Datastore akan mempertahankan nilai ke file sederhana yang terletak dengan konvensi penamaan di bawah ini. Catatan: {id} akan diganti dengan bilangan bulat asli yang disajikan oleh URL permintaan yang masuk.

$valueFileFolder = 'values' (nama folder yang berisi file pengukuran) $messageFileName = 'message.msg' (nama file teks pesan) $readingsFilesNames = 'reading{id}.avg' (nama CSV dirata-ratakan reads file) $flagFilesNames = 'flag{id}.flg' (nama file flag nilai boolean)

Pastikan semua file nilai dapat ditulis oleh systemchmod 777 values/*

Langkah 5: Perlengkapan yang Dibutuhkan

Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan

Gergaji lubang 1 inci (untuk bor)

Modul Relay 5V 2 Saluran

Pelat Dinding Wadah Dupleks

Wadah Dupleks

Pi Nol W

Permukaan Mount Backbox Ganda Gang

Tombol Tekan Bersinar Putih

Langkah 6: Membangun Outlet

Membangun Outlet
Membangun Outlet

Hancurkan Tab Outlet

Hancurkan tab di sisi stopkontak agar setiap soket hidup/mati secara mandiri

Langkah 7: Instal Tombol

Pasang Tombol
Pasang Tombol
Pasang Tombol
Pasang Tombol

Pada pelat muka Outlet menggunakan gergaji lubang 1 potong 2 lubang untuk kancing yang akan ditempatkan di sebelah outlet

Uji Ukuran komponen

Pastikan semua komponen akan muat di kotak pemasangan permukaan outlet

Langkah 8: Relai Kawat

Relai Kawat
Relai Kawat
Relai Kawat
Relai Kawat

Hubungkan Relay ke stopkontak, dari kabel ekstensi ke dinding, sambungkan ground (hijau) dan netral (putih) langsung ke stopkontakUntuk panas (hitam) sambungkan ke relai kemudian dari relai ke masing-masing stopkontak konektor panas secara individu

Langkah 9: Gambar Pengkabelan dan Perakitan Tambahan

Gambar Pengkabelan dan Perakitan Tambahan
Gambar Pengkabelan dan Perakitan Tambahan

Langkah 10: Diagram Pengkabelan

Diagram pengkabelan
Diagram pengkabelan

Gunakan diagram untuk menghubungkan komponen dengan benar agar berfungsi dengan kode Python RaspberryPI.

Langkah 11: Uji Lari Kering

Uji Lari Kering
Uji Lari Kering
Uji Lari Kering
Uji Lari Kering
Uji Lari Kering
Uji Lari Kering

Setelah perakitan akhir sebelum memasang unit lubang bersama-sama, jalankan perangkat kering untuk memastikan tidak ada korsleting, kabel yang buruk

Langkah 12: Atur Script Startup

crontab -e

tambahkan baris berikut

@reboot python /home/pi/PowerHub/device/outlet/buttons.py @reboot python /home/pi/PowerHub/device/outlet/relay.py

Direkomendasikan: