Sadržaj:

Jeftina i učinkovita kućna automatizacija s Raspberry Pi: 11 koraka (sa slikama)
Jeftina i učinkovita kućna automatizacija s Raspberry Pi: 11 koraka (sa slikama)

Video: Jeftina i učinkovita kućna automatizacija s Raspberry Pi: 11 koraka (sa slikama)

Video: Jeftina i učinkovita kućna automatizacija s Raspberry Pi: 11 koraka (sa slikama)
Video: The Choice is Ours (2016) Official Full Version 2024, Juli
Anonim
Jeftina i učinkovita kućna automatizacija s Raspberry Pi
Jeftina i učinkovita kućna automatizacija s Raspberry Pi
Jeftina i učinkovita kućna automatizacija s Raspberry Pi
Jeftina i učinkovita kućna automatizacija s Raspberry Pi
Jeftina i učinkovita kućna automatizacija s Raspberry Pi
Jeftina i učinkovita kućna automatizacija s Raspberry Pi

Oduvijek sam želio imati mogućnost bežičnog upravljanja svjetlima, ali komercijalne opcije su obično skupe. Svjetla Philips Hue koštaju oko 70 USD, a i svjetla povezana s WiFi -jem su skupa. Ovaj vodič će vam reći kako kontrolirati do pet svjetala/lampi/božićnih svjetlosnih niti za oko 50 USD, a može se proširiti i na više svjetala.

Korak 1: Šta će vam trebati

Šta će vam trebati
Šta će vam trebati

Materijali:

Raspberry Pi Zero W (bežično izdanje)

Mikro SD kartica (najmanje 4 GB)

Mini HDMI u HDMI kabel/pretvarač (Postoji razlika između mini i mikro, pazite da nabavite pravi!)

Mikro USB na USB kabel/pretvarač

USB tastatura

Napomena: Od Amazona sam dobio Raspberry Pi Zero W početni komplet koji je došao s Raspberry Pi Zero W, SD karticom, kućištem, kablom za napajanje, HDMI pretvaračem i USB pretvaračem. Za samo 30 USD to je prilično dobra opcija (link)

Možete koristiti drugačiji model Raspberry Pi, ali Raspberry Pi mora imati neki oblik internetske veze, a Pi Zero W je najjeftinija opcija.

Daljinske utičnice - koristio sam ih

RF predajnik i prijemnik (Napomena: frekvencija predajnika/prijemnika mora odgovarati frekvenciji udaljenih utičnica) - koristio sam ove

Žica za antenu (koristio sam bakrenu žicu s punom jezgrom 22 kalibra, druga žica može raditi)

Oglasna ploča, kratkospojne žice, 40-polno zaglavlje muško-muško

Softver:

Raspberry Pi OS (Preuzmite Raspbian Desktop)

Gramofon diska za etcher (Za pisanje Pi OS -a na SD karticu)

Alati:

Lemilica

Računalo za preuzimanje Pi OS -a i Etcher -a

Korak 2: Postavite utičnice

Postavite utičnice
Postavite utičnice
Postavite utičnice
Postavite utičnice

Počnite tako što ćete utičnice priključiti u utičnicu. Slijedite priložena uputstva za njihovo postavljanje i uključite svjetla/uređaje. Uvjerite se da je vaš daljinski upravljač pravilno uparen i da kontroliše utičnice.

Korak 3: Postavite PubNub račun

PubNub je besplatni internetski poslužitelj koji vam omogućuje komunikaciju između uređaja, bilo gdje u svijetu. Python skripta prima poruke s web stranice i koristi informacije u poruci za uključivanje ili isključivanje svjetla. Ovdje se možete prijaviti za svoj besplatni račun. Nakon što se prijavite, prijavite se na svoj račun. Ovo će vas odvesti na stranicu za upravljanje aplikacijama. Kliknite na "Kreiraj novu aplikaciju". Dajte aplikaciji naziv, a zatim je odaberite s popisa aplikacija (Ako je ovo vaša prva aplikacija, bit će jedina) Ovo će vas odvesti na stranicu s ključevima aplikacije. Kliknite na "Demo Keyset" i trebali biste vidjeti tri različita ključa. Držite ovu stranicu gore, ovi ključevi će vam trebati kasnije. Sada kada imate svoj PubNub račun, možete postaviti svoj maline pi.

Korak 4: Pripremite Raspberry Pi

Preuzmite Etcher i Raspberry Pi OS na svoje računalo (veze u popisu dijelova)

Instalirajte Etcher na svoje računalo i raspakirajte (ako je potrebno) Raspberry Pi OS. Umetnite Micro SD karticu u računar i otvorite Etcher. Kliknite "Odaberi sliku" i idite do raspakirane datoteke Raspberry Pi OS. Odaberite ga, zatim kliknite "Odaberi pogon" i odaberite svoju mikro SD karticu s popisa. Pritisnite "Flash" i pričekajte da Etcher završi. Kada Etcher dovrši, uklonite SD karticu sa računara (Etcher je automatski izbacuje) i umetnite je u svoj Raspberry Pi. U ovom trenutku morate povezati svoj Raspberry Pi s monitorom putem HDMI pretvarača. Priključite tastaturu (i miš ako imate multi-USB čvorište) i uključite kabl za napajanje. Postoje dva mikro USB porta. Jedan je za napajanje, drugi je stvarni USB priključak. Najbliži kraj Pi -a je napajanje, dok je onaj bliže sredini USB. Vaš malinov pi će se sada pokrenuti. Može se ponovo pokrenuti nekoliko puta tokom prvog pokretanja, ali to je normalno. Nakon što se vaš malinarski pi pokrene, povežite ga na WiFi. Nakon što ga povežete na WiFi, možete koristiti SSH poslužitelj, ali za sada mi je lakše koristiti grafičko sučelje. Otvorite prozor terminala i unesite ove naredbe:

sudo pip3 install 'pubnub == 3.9.0'

cd git clone git: //git.drogon.net/wiringPi git clone

klon sudo git

sudo chown root.root/var/www/rfoutlet/codesend sudo chmod 4755/var/www/rfoutlet/codesend

cd wiringPi

./build

Sada otvorite preglednik datoteka Raspberry Pi i trebali biste vidjeti mapu pi-home-automation. Dvaput kliknite na nju i trebali biste vidjeti datoteku pod nazivom RFControl.py. Kopirajte (suprotni klik i odaberite "Kopiraj"), zatim se vratite u pi mapu i zalijepite je tamo.

Isključite svoj maline pi (bilo iz menija ili pokretanjem sudo poweroff iz komandne linije) i isključite ga iz struje kad zeleno svjetlo prestane treperiti.

Korak 5: Kreiranje kruga

Kreiranje kola
Kreiranje kola
Kreiranje kola
Kreiranje kola
Kreiranje kola
Kreiranje kola

Sada je vrijeme za stvaranje kruga. Koristio sam ploču, ali možete to učiniti kako želite.

Prvo moramo stvoriti antenu za RF predajnik. Ovaj vodič s uputama govori kako napraviti antenu za RF predajnik. Slijedite upute, a zatim ga lemite na antenski priključak predajnika (na onom koji sam koristio označen je kao ANT) s kraćom stranom najbližom odašiljaču

Ožičite predajnik

Predajnik koristi ove pinove:

PODACI: GPIO 17, Fizički pin 11

VCC: Raspberry Pi 5v, fizički pin 2

GND: Raspberry Pi GND, fizički pin 6

Ožičite prijemnik

Prijemnik koristi ove pinove:

GND: Raspberry Pi GND, fizički pin 9

VCC: Raspberry Pi 5v, fizički pin 4

PODACI: GPIO 27, Fizički pin 13 (Postoje dva pina za podatke na prijemniku koji sam koristio, a ja sam koristio onaj najbliži VCC -u)

Korak 6: Nabavite svoje RF kodove

Nabavite svoje RF kodove
Nabavite svoje RF kodove

Nakon što je vaše kolo spojeno na vaš Raspberry Pi, provjerite ga dvaput kako biste bili sigurni da je na svom mjestu, a zatim ga ponovo uključite. Nakon što se uključi, otvorite terminal i upišite

sudo/var/www/rfoutlet/RFSniffer

Zatim otvorite program RFControl. Postavljanje prozora terminala i prozora programa jedan pored drugog može biti od pomoći u sljedećem koraku.

Trebat će vam daljinski upravljač koji je sad bio uključen u utičnicu. Držite ga blizu prijemnika i pritisnite svako pojedinačno dugme. Kada pritisnete dugme, videćete dva broja odštampana na ekranu. Jedan od njih će biti šestocifreni ili sedmocifreni, a drugi trocifreni. Morat ćete urediti rječnik kodova u programu. Unesite 7-znamenkasti kod na mjesto odgovarajućeg prekidača u programu, a za svako dugme za uključivanje/isključivanje umetnite trocifreni kod (ovo je dužina) u odgovarajuću dužinu prekidača u programu.

Na primjer, ako prekidač 1 za uključivanje ima kôd 1234567, kod za isključenje 7654321 i dužinu 890, kôd bi izgledao ovako:

kodovi = {

'switch1': {'on': 1234567, #Ovo je prekidač 1 uključeno 'isključeno': 7654321, #ovo je isključenje 1 isključeno 'len': 890, #ovo je prekidač 1 dužine koda}, 'switch2': {… },…}

Ponovite ovo za svako dugme. Dok uređujete ovu datoteku, promijenite nizove koji govore "VAŠ-PODKLJUČ" u svoj ključ za pretplatu na PubNub, a "VAŠ-PUB-KLJUČ" u ključ za objavljivanje.

Nakon što je svako dugme snimljeno, možete preći na sljedeći odjeljak.

Korak 7: Pokretanje programa

Pokretanje programa
Pokretanje programa

Sada kada imate sve kodove, idite na ovu stranicu GitHub (na vašem računaru, ne na malinu pi) i kliknite zeleno dugme na kojem piše "Kloniraj ili preuzmi", a zatim kliknite "Preuzmi ZIP". Kada se ova datoteka preuzme, raspakirajte je i otvorite mapu. Otvorite datoteku pod nazivom main.js. Morat ćete unijeti svoje pretplaćene i objavljene ključeve u program zamjenom "YOUR-PUB-KEY" ključem za objavljivanje i "YOUR-SUB-KEY" ključem za pretplatu.

Zatim se vratite na svoj Raspberry Pi i unesite

python3 RFControl.py

Nakon što ispiše "Spremno", vratite se na računalo i otvorite datoteku index.html u web pregledniku tako što ćete kliknuti suprotno, odaberite "Otvori pomoću" i odaberite željeni preglednik. Trebali biste vidjeti 2 kolone sa 5 dugmadi, sa imenima prekidača između njih. Pritisnite bilo koje dugme. Ako pravilno kontrolira utičnicu, odlično! Ako ne, evo nekoliko stvari koje možete isprobati:

  1. Uverite se da Raspberry Pi prima poruke. Trebalo bi da se štampa na ekranu svaki put kada primi poruku sa veb stranice. Ako nije, provjerite jesu li ključevi za pretplatu/objavljivanje ispravni.
  2. Ako Raspberry Pi prima poruke, provjerite jesu li RF kodovi ispravni. Uvjerite se da su vaše utičnice uparene s vašim daljinskim upravljačem, da ih daljinski može kontrolirati i da su kodovi koje ste unijeli u program ispravni.
  3. Ako su RF kodovi tačni, provjerite je li vaš Raspberry Pi u dometu utičnica. Ako počnu djelovati nakon što ste ga približili, možda ćete morati ponovo napraviti antenu.
  4. Ako i dalje ne rade, recite mi u komentarima svoj problem, a ja ću pokušati pomoći s njim.

Korak 8: Pokretanje pri pokretanju

Da biste pokrenuli vaš python program pri pokretanju, unesite ovo u svoj maline pi terminal:

crontab -e

Zatim idite na dno datoteke i unesite ovo:

@reboot python3 /home/pi/RFControl.py &

Ovo će učiniti da se vaša Python skripta svaki put pokrene pri pokretanju. Sada ponovo pokrenite svoj Raspberry Pi.

Korak 9: Dodavanje više prekidača

Dodavanje više prekidača
Dodavanje više prekidača

Ako želite dodati još prodajnih mjesta, slijedite ove upute:

Otvorite RFControl.py na svom Raspberry Pi i dodajte novi prekidač u rječnik prekidača.

Primjer:

prekidači = {

… drugi prekidači … 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}

Zatim dodajte novo dugme u svoju web aplikaciju uređivanjem varijable switches u main.js na vašem računaru.

Primjer:

var prekidači = [… stari prekidači … ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];

Zamijenite NAME-TO-DISPLAY imenom koje želite da se prikazuje na web stranici, i NAME-OF-SWITCH na obje datoteke sa svime što želite. Mora biti jedinstven od ostalih!

Korak 10: Idemo dalje

Idemo dalje
Idemo dalje

PubNub je podržan na mnogim različitim platformama, što znači da možete slati poruke s gotovo bilo kojeg uređaja! Koristio sam Raspberry Pi AIY Voice komplet i PubNub za slanje naredbi svojim glasom, ali to je možda tema kasnijeg Instructable -a. Hvala vam što ste pročitali moj Instructable, nadam se da je bio od pomoći!

Korak 11: Krediti

Hvala Timu Lelandu za vodič o postavljanju RF odašiljača: vodič

Hvala diy_bloke na vodiču o stvaranju antene: tutorial

Hvala i svima koji su na internetu objavili uputstva za pomoć!

Preporučuje se: