Sisällysluettelo:
- Vaihe 1: Mitä tarvitset
- Vaihe 2: Asenna pistorasiat
- Vaihe 3: Määritä PubNub -tili
- Vaihe 4: Valmista Raspberry Pi
- Vaihe 5: Piirin luominen
- Vaihe 6: Hanki RF -koodisi
- Vaihe 7: Ohjelman suorittaminen
- Vaihe 8: Käynnistys käynnistyksen yhteydessä
- Vaihe 9: Lisää kytkimiä
- Vaihe 10: Vie eteenpäin
- Vaihe 11: Lainat
Video: Halpa ja tehokas kotiautomaatio Raspberry Pi: 11 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Olen aina halunnut pystyä ohjaamaan valoja langattomasti, mutta kaupalliset vaihtoehdot ovat yleensä kalliita. Philips Hue -valot maksavat noin 70 dollaria, ja WiFi -liitännät ovat myös kalliita. Tässä opetusohjelmassa kerrotaan, kuinka voit ohjata jopa viittä valoa/lamppua/jouluvaloa noin 50 dollarilla, ja sitä voidaan laajentaa sisältämään lisää valoja.
Vaihe 1: Mitä tarvitset
Materiaalit:
Raspberry Pi Zero W (langaton painos)
Micro SD -kortti (vähintään 4 Gt)
Mini HDMI -HDMI -kaapeli/-muunnin (mini- ja mikro -laitteiden välillä on ero, muista hankkia oikea!)
Micro USB - USB -kaapeli/muunnin
USB -näppäimistö
Huomautus: Sain Amazonilta Raspberry Pi Zero W -pakkauksen, joka tuli Raspberry Pi Zero W: n, SD -kortin, kotelon, virtajohdon, HDMI -muuntimen ja USB -muuntimen mukana. Vain 30 dollaria, se on melko hyvä vaihtoehto (linkki)
Voit käyttää eri Raspberry Pi -mallia, mutta Raspberry Pi: llä on oltava jonkinlainen Internet -yhteys, ja Pi Zero W on halvin vaihtoehto.
Etäpistorasiat - käytin näitä
RF -lähetin ja vastaanotin (Huomaa: lähettimen/vastaanottimen taajuuden on vastattava etäpistorasioiden taajuutta) - käytin näitä
Johto antennille (käytin 22 gaugen kiinteää ydin kuparilankaa, muu lanka voi toimia)
Leipälauta, hyppyjohdot, 40-nastainen uros-uros-otsikko
Ohjelmisto:
Raspberry Pi OS (Lataa Raspbian Desktop)
Etcher -levykuvaaja (Pi -käyttöjärjestelmän kirjoittamiseen SD -kortille)
Työkalut:
Juotin
Tietokone Pi OS: n ja Etcherin lataamiseen
Vaihe 2: Asenna pistorasiat
Aloita kytkemällä pistorasiat pistorasiaan. Asenna ne noudattamalla mukana tulevia ohjeita ja kytke valot/laitteet. Varmista, että kaukosäädin on pariliitetty oikein ja että se ohjaa pistorasioita.
Vaihe 3: Määritä PubNub -tili
PubNub on ilmainen Internet -palvelin, jonka avulla voit kommunikoida laitteiden välillä kaikkialla maailmassa. Python -skripti vastaanottaa viestejä verkkosivulta ja käyttää viestin tietoja valojen sytyttämiseen tai sammuttamiseen. Voit rekisteröityä ilmaiseen tiliisi täällä. Kun olet rekisteröitynyt, kirjaudu sisään tilillesi. Tämä vie sinut sovellusten hallintasivulle. Napsauta "Luo uusi sovellus". Anna sovellukselle nimi ja valitse se sovellusluettelosta (Jos tämä on ensimmäinen sovelluksesi, se on ainoa) Tämä vie sinut sovellusavainsivulle. Napsauta "Demo Keyset", ja sinun pitäisi nähdä kolme eri näppäintä. Pidä tämä sivu yllä, tarvitset näitä avaimia myöhemmin. Nyt kun sinulla on PubNub -tili, voit määrittää vadelmapiisi.
Vaihe 4: Valmista Raspberry Pi
Lataa Etcher ja Raspberry Pi OS tietokoneellesi (linkit osaluettelossa)
Asenna Etcher tietokoneellesi ja pura (tarvittaessa) Raspberry Pi -käyttöjärjestelmä. Aseta Micro SD -kortti tietokoneeseen ja avaa Etcher. Napsauta "Valitse kuva" ja siirry purettuun Raspberry Pi OS -tiedostoon. Valitse se, napsauta sitten "Valitse asema" ja valitse micro SD -korttisi luettelosta. Napsauta "Flash" ja odota, että Etcher valmistuu. Kun Etcher on valmis, poista SD -kortti tietokoneesta (Etcher poistaa sen automaattisesti) ja aseta se Raspberry Pi -laitteeseesi. Tässä vaiheessa sinun on kytkettävä Raspberry Pi -laitteesi näyttöön HDMI -muuntimella. Kytke näppäimistö (ja hiiri, jos sinulla on useita USB-keskittimiä) ja virtajohto. Mikro -USB -portteja on kaksi. Toinen on virtalähde, toinen on todellinen USB -portti. Lähin Pi: n pää on virta, kun taas keskellä oleva on USB. Raspberry pi alkaa nyt käynnistyä. Se voi käynnistyä uudelleen muutaman kerran ensimmäisen käynnistyksen aikana, mutta se on normaalia. Kun vadelmapi on käynnistetty, yhdistä se WiFi -verkkoon. Kun olet yhdistänyt sen WiFi -verkkoon, voit käyttää SSH -palvelinta, mutta mielestäni on helpompaa käyttää graafista käyttöliittymää toistaiseksi. Avaa pääteikkuna ja anna seuraavat komennot:
sudo pip3 asenna 'pubnub == 3.9.0'
cd git klooni git: //git.drogon.net/wiringPi git klooni
sudo git klooni
sudo chown root.root/var/www/rfoutlet /odesend sudo chmod 4755/var/www/rfoutlet /odesend
cd -johdotusPi
./rakentaa
Avaa nyt Raspberry Pi -tiedostoselain ja sinun pitäisi nähdä pi-home-automation-kansio. Kaksoisnapsauta sitä ja näet tiedoston nimeltä RFControl.py. Kopioi se (napsauta vastapäätä ja valitse "Kopioi"), palaa sitten pi -kansioon ja liitä se sinne.
Sammuta vadelma pi (joko valikosta tai suorittamalla sudo poweroff komentoriviltä) ja irrota se, kun vihreä valo lakkaa vilkkumasta.
Vaihe 5: Piirin luominen
Nyt on aika luoda piiri. Käytin leipälautaa, mutta voit tehdä sen haluamallasi tavalla.
Ensinnäkin meidän on luotava antenni RF -lähettimelle. Tämä ohjeiden opetusohjelma kertoo antennin tekemisestä RF -lähettimelle. Noudata ohjeita ja juota se lähettimen antennitappiin (käyttämässäni oli merkintä ANT) lyhyempi puoli lähempänä lähetintä
Johto lähettimeen
Lähetin käyttää näitä nastoja:
TIEDOT: GPIO 17, fyysinen nasta 11
VCC: Raspberry Pi 5v, fyysinen nasta 2
GND: Raspberry Pi GND, fyysinen tappi 6
Kytke vastaanotin
Vastaanotin käyttää näitä nastoja:
GND: Raspberry Pi GND, fyysinen tappi 9
VCC: Raspberry Pi 5v, fyysinen nasta 4
TIEDOT: GPIO 27, fyysinen nasta 13 (käyttämässäni vastaanottimessa on kaksi datanasta, ja käytin lähimpänä VCC: tä)
Vaihe 6: Hanki RF -koodisi
Kun virtapiiri on liitetty Raspberry Pi -laitteeseen, tarkista se kahdesti varmistaaksesi, että kaikki on paikallaan ja käynnistä se uudelleen. Kun se on kytketty päälle, avaa päätelaite ja kirjoita
sudo/var/www/rfoutlet/RFSniffer
Avaa seuraavaksi RFControl -ohjelma. Pääteikkunan ja ohjelmaikkunan asettaminen vierekkäin voi olla hyödyllistä seuraavassa vaiheessa.
Tarvitset pistorasiaan kuuluvan kaukosäätimen. Pidä sitä lähellä vastaanotinta ja paina kutakin painiketta. Kun painat painiketta, näet kaksi numeroa tulostettuna näytölle. Toinen niistä on kuuden tai seitsemän numeron koodi ja toinen 3 -numeroinen koodi. Sinun on muokattava koodisanakirjaa ohjelmassa. Syötä 7-numeroinen koodi vastaavan kytkimen paikkaan ohjelmassa ja lisää jokaiselle päälle/pois-painikkeelle 3-numeroinen koodi (tämä on pituus) vastaavan kytkimen linjaan ohjelmassa.
Jos esimerkiksi kytkimen 1 päällä on koodi 1234567, sammutuskoodi 7654321 ja pituus 890, koodi näyttää tältä:
koodit = {
'switch1': {'on': 1234567, #Tämä on kytkin 1 päällä 'off': 7654321, #tämä on kytkin 1 pois päältä 'len': 890, #tämä on kytkimen 1 koodipituus}, 'switch2': {… },…}
Toista tämä jokaiselle painikkeelle. Kun muokkaat tätä tiedostoa, vaihda merkkijonot, joissa sanotaan "YOUR-SUB-KEY", PubNub-tilausavaimeesi ja "YOUR-PUB-KEY" julkaisuavaimeesi.
Kun jokainen painike on tallennettu, voit jatkaa seuraavaan osaan.
Vaihe 7: Ohjelman suorittaminen
Nyt kun sinulla on kaikki koodit, siirry tälle GitHub -sivulle (tietokoneellasi, ei vadelmapi) ja napsauta vihreää painiketta "Kloona tai lataa" ja napsauta sitten "Lataa ZIP". Kun tämä tiedosto on ladattu, pura se ja avaa kansio. Avaa tiedosto nimeltä main.js. Sinun on syötettävä tilaus- ja julkaisuavaimesi ohjelmaan korvaamalla "YOUR-PUB-KEY" julkaisuavaimellasi ja "YOUR-SUB-KEY" tilausavaimellasi.
Palaa seuraavaksi Raspberry Pi -laitteeseen ja kirjoita
python3 RFControl.py
Kun se on valmis, palaa tietokoneellesi ja avaa index.html -tiedosto verkkoselaimessa napsauttamalla vastakkaista painiketta, valitse "Avaa" ja valitse haluamasi selain. Sinun pitäisi nähdä 2 saraketta, joissa on 5 painiketta, ja niiden välillä olevien kytkimien nimet. Paina mitä tahansa painiketta. Jos se ohjaa pistorasiaa oikein, hienoa! Jos ei, kokeile seuraavia asioita:
- Varmista, että Raspberry Pi vastaanottaa viestejä. Sen pitäisi tulostaa näytölle aina, kun se vastaanottaa viestin verkkosivulta. Jos ei, varmista, että tilaus-/julkaisuavaimesi ovat oikein.
- Jos Raspberry Pi vastaanottaa viestejä, varmista, että RF -koodisi ovat oikein. Varmista, että pistorasiat on yhdistetty kaukosäätimeen, kaukosäädin voi ohjata niitä ja että ohjelmaan syötetyt koodit ovat oikein.
- Jos RF -koodit ovat oikein, varmista, että Raspberry Pi on pistorasioiden alueella. Jos ne alkavat toimia sen siirtämisen jälkeen lähemmäs, sinun on ehkä tehtävä antenni uudelleen.
- Jos ne eivät vieläkään toimi, kerro ongelmasi kommenteissa, niin yritän auttaa.
Vaihe 8: Käynnistys käynnistyksen yhteydessä
Jotta python -ohjelmasi toimisi käynnistyksen yhteydessä, syötä tämä vadelmapi -päätelaitteeseesi:
crontab -e
Siirry seuraavaksi tiedoston alaosaan ja kirjoita tämä:
@reboot python3 /home/pi/RFControl.py &
Tämä saa Python -skriptisi toimimaan aina käynnistyksen yhteydessä. Käynnistä nyt Raspberry Pi uudelleen.
Vaihe 9: Lisää kytkimiä
Jos haluat lisätä myyntipisteitä, noudata näitä ohjeita:
Avaa RFControl.py Raspberry Pi -laitteellasi ja lisää uusi kytkin kytkinten sanakirjaan.
Esimerkki:
kytkimet = {
… Muut kytkimet… 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}
Lisää seuraavaksi uusi painike verkkosovellukseesi muokkaamalla tietokoneesi main.js -kytkimen muuttujaa.
Esimerkki:
var kytkimet = [… Vanhat kytkimet… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];
Korvaa NAME-TO-DISPLAY nimellä, jonka haluat sen näkyvän verkkosivulla, ja NAME-OF-SWITCH molemmissa tiedostoissa haluamallasi tavalla. Sen on kuitenkin oltava ainutlaatuinen muihin verrattuna!
Vaihe 10: Vie eteenpäin
PubNubia tuetaan monilla eri alustoilla, joten voit lähettää viestejä lähes miltä tahansa laitteelta! Käytin Raspberry Pi AIY Voice -sarjaa ja PubNubia komentojen lähettämiseen äänelläni, mutta se saattaa olla myöhemmän Instructable -aiheen aihe. Kiitos, että luit Instructable -ohjelmani, toivottavasti siitä oli apua!
Vaihe 11: Lainat
Kiitos Tim Lelandille RF -lähettimen käyttöönoton opetusohjelmasta: opetusohjelma
Kiitos diy_bloke opetusohjelmasta antennin luomisesta: opetusohjelma
Kiitos myös kaikille muille, jotka lähettivät ohjeita tutustumiseen verkossa!
Suositeltava:
Infinity Gauntlet -ohjattu kotiautomaatio: 8 vaihetta (kuvilla)
Infinity Gauntlet -ohjattu kotiautomaatio: Edellisessä projektissani olen tehnyt ääretön hansikas, joka ohjaa valokytkintä. Halusin käyttää kuutta kiveä ja jokainen kivi voi ohjata laitetta, oven lukkoa tai valaistusta, joten tein kodin automaatiojärjestelmän käyttäen ääretöntä hansikasta. Tässä projektissa
Tehokas Java -kehitys Raspberry Pi: 11 vaihetta (kuvilla)
Tehokas Java -kehittäminen Raspberry Pi: lle: Tämä ohje sisältää erittäin tehokkaan lähestymistavan Java -ohjelmien kehittämiseen Raspberry Pi: lle. Olen käyttänyt tätä lähestymistapaa Java-ominaisuuksien kehittämiseen aina alhaisen tason laitetuesta monisäikeisiin ja verkkopohjaisiin ohjelmiin. Noin
Halpa ja tehokas desulfator: 6 vaihetta (kuvilla)
Halpa ja tehokas desulfator: Vuosia sitten ostin ladattavan taskulampun lahjaksi ystävälleni, joka oli kalastaja. Jostain syystä en voinut antaa hänelle lahjaa. Laitoin kellariin ja unohdin sen. Löysin sen muutama kuukausi sitten ja päätin käyttää sitä
Tehokas ja halpa: Näyttö STM32L4: 13 askelta
Tehokas ja halpa: Näyttö STM32L4: llä: Puhumme tänään kolmesta aiheesta, joita rakastan ehdottomasti: LCD -näyttö, joka kuluttaa vähän energiaa, STM32 Core Arduinon kanssa ja Arduino Mega Pro Mini. Tämä on erehtymätön esineiden internetin kolmikko. Esittelen sinulle HT162: n
Yksinkertainen kotiautomaatio Raspberry Pi3: n ja Android -asioiden avulla: 5 vaihetta (kuvilla)
Yksinkertainen kotiautomaatio Raspberry Pi3: n ja Android -asioiden avulla: Ideana on suunnitella “ älykäs HOME ” jossa voidaan hallita kotitalouslaitteita Android Thingsin ja Raspberry Pi: n avulla. Projekti koostuu kodinkoneiden, kuten valon, tuulettimen, moottorin jne. Ohjaamisesta. Tarvittavat materiaalit: Raspberry Pi 3HDMI Ca