Sisällysluettelo:
- Vaihe 1: Tarvitsemasi asiat
- Vaihe 2: Valmistele Raspberry Pi 433 MHz: lle
- Vaihe 3: Asenna Smart Home -palvelin
- Vaihe 4: Asenna asiakkaat
- Vaihe 5: Johtopäätös
Video: Smart Home by Raspberry Pi: 5 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Siellä on jo useita tuotteita, jotka tekevät asunnostasi älykkäämmän, mutta suurin osa niistä on omia ratkaisuja. Mutta miksi tarvitset Internet -yhteyden vaihtaaksesi valon älypuhelimellasi? Se oli yksi syy minulle rakentaa oma Smart Home -ratkaisu.
Ohjelmoin Raspberry Pi -palvelimella toimivan palvelinsovelluksen. Tämä on java -pohjainen avoimen lähdekoodin projekti, jonka avulla voit määrittää asunnon ja yhdistää useita asiakkaita ja "ohjattavia yksiköitä". Näytän ratkaisun, joka käsittelee rc -virtalähteen kytkimiä, toistaa musiikkia ja videota Raspberry Pi -laitteella, näyttää älypeilin tilan ja sitä voidaan ohjata Android -sovelluksella ja kahdella pikkukivi -sovelluksella. Lähdettä isännöidään githubissa
Vaihe 1: Tarvitsemasi asiat
Älykkään kodin käyttöönottoon tarvitset seuraavat ainesosat
- Raspberry Pi vähintään malli 2B
- 433 MHz lähetin, jotain tällaista
- 3 hyppyjohtoa, jotka yhdistävät Raspberry Pi: n ja lähettäjän
- Jotkut radio -ohjainliitännät 433 MHz: llä
- Android -älypuhelin asiakassovelluksen suorittamiseen
Lisäksi voit laajentaa Älykästä kotia lisää tämän kaltaisilla valinnaisilla asiakkailla ja yksiköillä
- Pebble -älykello
- Smart Mirror, katso tämä projekti
- 433 MHz: n ohjattava LED-nauha, katso tämä
Vaihe 2: Valmistele Raspberry Pi 433 MHz: lle
Seuraavissa vaiheissa tarvitset pääsyn Raspberry Pi: n komentoriville. Saat käyttöoikeuden lukemalla tämän ohjeen
Liitä 433 MHz: n lähetin Raspberry Pi -laitteeseen yllä olevan kuvan mukaisesti
- GND (lähettäjä) 6 GND (raspi)
- VCC (lähettäjä) 2 +5V (raspi)
- DATA (lähettäjä) 11 GPIO 17 (raspi)
Liitä myös 17 cm: n antenni ANT (lähettimen) nastaan. Se lisää signaalia merkittävästi.
Koska tarvitsemme joitain kirjastoja muista git -arkistoista, meidän on asennettava git
sudo apt-get install git-core -y
Raspberry Pi: n määrittämiseksi 433 MHz: n tiedonsiirtoon tarvitsemme johdotuksen Pi -kirjaston GPIO: iden parempaa käsittelyä varten.
git klooni git: //git.drogon.net/wiringPi
cd -johdotusPi./build
Sitten tarvitsemme kirjaston, joka toteuttaa tyypillisesti rc -virtalähdeprotokollia.
git klooni git: //github.com/dabastynator/rcswitch-pi.git
cd rcswitch-pi tee cp send/usr/bin/
Lähetä -suoritustiedoston avulla voit lähettää koodeja useimpien käytettävissä olevien virtalähteiden vaihtamiseksi.
Smart Home -asennuksessani minulla on myös tässä ohjeessa kuvattu rc-LED-nauha: https://www.instructables.com/id/RC-controlled-LED… Tämän LED-nauhan värien asettamiseksi tarvitset toisen lähetettävän suoritustiedoston, jonka avulla voit lähettääksesi kokonaislukuarvon (joka koodaa värin).
Siksi käännä sendInt.cpp rcswitch-pi-repos ja siirrä se kansioon/usr/bin/sendInt.
sudo g ++ sendInt.cpp -o/usr/bin/sendInt /home/pi/rcswitch-pi/RCSwitch.o -I/home/pi/rcswitch -pi -lwiringPi
Nyt sinun pitäisi nyt pystyä lähettämään rc -komentoja kahdella suoritettavalla tiedostolla/usr/bin/send ja/usr/bin/sendInt
Vaihe 3: Asenna Smart Home -palvelin
Ensinnäkin sinun on asennettava useita paketteja. Smart Home -sovellus on java-pohjainen ja toimii hyvin openjdk-11: n kanssa. En ole varma muista Java -ajonaikaisista ympäristöistä. Mplayer on minimalistinen komentorivin musiikkisoitin. Omxplayer käyttää Raspberry Pi -grafiikkaa videon koodaamiseen, joten tätä tulisi käyttää videoihin. Ohjelma muuraus tarvitaan Java -sovelluksen rakentamiseen.
sudo apt-get install mplayer omxplayer openjdk-11-jdk ant -y
Määritä jar -tiedoston ja lokien hakemistot.
sudo mkdir /opt /neo
sudo chown pi: pi/opt/neo mkdir/home/pi/Lokit
Määritä käynnistysskripti käynnistääksesi sovelluksen automaattisesti käynnistyksen yhteydessä. Kopioi siksi liitteenä oleva älykkään kodin skripti hakemistoon /etc/init.d/ Olen myös luonut komentosarjan hakemistoon/usr/bin/, joka ohjaa komennot liitteenä olevaan komentosarjaan, joten kirjoitan vain älykoti konsoliin komentojen suorittamista varten.
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-oletusasetukset
Nyt on aika tarkistaa arkisto ja rakentaa sovellus. Jos et halua kääntää sitä itse, voit ladata liitteenä olevan smarthome.jar -tiedoston ja siirtää sen kohteeseen/opt/neo/
git klooni [email protected]: dabastynator/SmartHome.git
ant -f SmartHome/de.neo.smarthome.build/build.ant build_remote cp SmartHome/de.neo.smarthome.build/build/jar/*/opt/neo/
Yritä käynnistää älykoti ja tarkista lokitiedosto. Jotta pääset käyttämään GPIO: ita, sovellus on käynnistettävä sudolla.
sudo smart-home -käynnistys
kissalokit/smarthome.log
Sinun pitäisi nähdä virhesanoma Konfigurointitiedostoa ei ole, joka ohjaa meidät seuraavaan vaiheeseen. Varasto sisältää readme, joka selittää määritystiedoston. Näet tämän kauniisti renderöitynä githubissa:
Kopioi tämä xml /home/pi/controlcenter.xml, määritä mediapalvelimen sijainti ja muuta sisältöä tarpeen mukaan. Kun olet määrittänyt asetukset ja käynnistänyt älykkään kodin uudelleen (sudo smart-home restart), sinun pitäisi nähdä seuraava sisältö smarthome.logissa
24.05-08: 26 KAUKOTIEDOT, tekijä de.neo.smarthome.cronjob. CronJob@15aeb7ab: Aikataulu cron job
24.05-08: 26 Etätiedot [trigger.light]: Odota 79391760 ms: n suorittamista 24.05-08: 26 RMI-TIEDOT by Add web-handler (5061/ledstrip) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061) /toiminta) 24.05-08: 26 RMI-TIEDOT Add web-handler (5061/mediaserver) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061/switch) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061/controlcenter) 24.05-08: 26 RMI-TIEDOT Start-verkkopalvelimelta, jossa on 5 käsittelijää (paikallinen isäntä: 5061) 24.05-08: 26 Controlcenterin KAUKOTIEDOT: Lisää 1. ohjausyksikkö: MyUnit (xyz)…
Verkkopalvelin on nyt käynnissä:-)
Vaihe 4: Asenna asiakkaat
Älypuhelimen Android -asiakas
Älykoti-sovelluksen git-arkisto sisältää myös android-asiakkaan lähteen, joten voit kääntää sen itse. Mutta liitin APK: n tähän vaiheeseen, mikä helpottaa sitä. Kun käynnistät sovelluksen ensimmäisen kerran, se pyytää sinulta palvelinta, kuten yllä olevassa ensimmäisessä kuvassa. Kirjoita palvelimen URL -osoite ja turvatunnus.
Sen pitäisi olla se. Sinulla on nyt pääsy palvelimelle ja voit hallita asuntoasi, toistaa musiikkia ja katsella videoita etänä Raspberry Pi -laitteellasi. Huomaa, että voit lisätä pienoisohjelmia aloitusnäyttöön, mikä tekee kytkimistä ja musiikinhallinnasta helpompaa.
Smartwatch Pebble -asiakas
Kahden kiviasiakkaiden lähde on githubissa. Yksi sovellus näyttää nykyisen toistettavan musiikkitiedoston: https://github.com/dabastynator/PebbleRemoteMusic… Tämän avulla voit myös keskeyttää/toistaa ja lisätä äänenvoimakkuutta.
Toinen sovellus käynnistää kolme toimintoa: https://github.com/dabastynator/PebbleControl Liipaisimen nimet ovat: mobile.come_home mobile.leaving ja mobile.go_to_bed. Jos määrität tapahtumasäännöt tälle laukaisimelle kokoonpano-xml-tiedostossasi, käynnistät ne kellollasi.
Kaikki on avointa lähdekoodia, mutta sinun ei tarvitse koota sitä itse, liitin myös kivisovellukset. Lataa PBW -laitteet älypuhelimellasi, puhelimesi tulee asentaa ne kelloosi. Kivisovellukset tarvitsevat kokoonpanot puhuakseen palvelimelle. Liitin kuvakaappauksen miltä asetukset näyttävät.
Älykello Garmin -asiakas
Garmin -älykelloille on saatavilla myös asiakas. Sovellus on saatavana garmin connect -sovelluskaupasta ja se voidaan asentaa täältä:
apps.garmin.com/en-US/apps/c745527d-f2af-4…
Smart Mirror -asiakas
Olen jo luonut ohjeen, joka selittää Smart Mirrorin luomisen, katso tämä https://www.instructables.com/id/Smart-Mirror-by-R …. Lähdekoodia isännöi myös github: https:// Smart Mirror -ohjelmisto lukee kokoonpanon tiedostosta smart_config.js, joka ei kuulu git -arkistoon. Määritystiedoston sisällön pitäisi näyttää tältä:
var mOpenWeatherKey = 'avaa-avaimesi-avain';
var mSecurity = 'oma turvatunnuksesi';
Sinun on myös muokattava tiedoston smart_mirror.js kahta ensimmäistä riviä Smart Home -palvelimen IP -osoitteen ja sijainnin määrittämiseksi oikean sään saamiseksi.
Lisää asiakkaita
Palvelinsovellus on yksinkertainen verkkopalvelin. Tämän avulla voit käynnistää toimintoja haluamiltasi asiakkailta yksinkertaisilla verkkopuheluilla. Esittelyvideossa näytän Android-sovelluksen tehtävän yhdessä AutoVoicen kanssa. Tämän avulla voin käynnistää tapahtumia yksinkertaisilla äänikomennoilla. Esimerkiksi "ok google, aika nukkua" voi laukaista mobile.go_to_bed. Mutta voit myös soittaa verkkopuheluita esimerkiksi IFTTT: ltä. Entä keltainen vilkkuva LED -nauha sähköposti -ilmoitusta varten?
Voit pyytää palvelimelta mahdollisia verkkopuheluita, kuten seuraavat linkit (korvaa IP-osoite, portti ja tunniste kokoonpanollasi)
localhost: 5061/controlcenter/api? token = secu…
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 = security-…
Vaihe 5: Johtopäätös
Muutamia ominaisuuksia on vielä toteutettava: Koska palvelin tarjoaa vain yksinkertaisen web-api-asiakkaan, se tekee paljon kyselyitä. Äänestyksen vähentämiseksi haluan MQTT -integraation paremman ilmoituksen saamiseksi. Myös wifi -virtalähteiden pitäisi toimia luotettavammin kuin rc -virtalähteet, koska rc on vain yksi tapa kommunikoida.
On erittäin hauskaa kehittää tätä projektia. Ja on hienoa hallita asuntoa useilla laitteilla, vaikka Internet -yhteys katkeaa.
Suositeltava:
Hallitse automaattista liukuporttia Home Assistantin ja ESP: n avulla Home: 5 vaihetta (kuvilla)
Hallitse automaattista liukuporttia Home Assistantin ja ESPHomen avulla: Seuraava artikkeli antaa palautetta henkilökohtaisesta kokemuksestani taloon asennetun automaattisen liukuportin ohjaamisesta. Tässä portissa, "V2 Alfariss", oli muutama Phox V2 -kaukosäädin sen hallitsemiseksi. Minulla on myös
ForgetMeNot - Smart Home -ilmoitusalusta: 14 vaihetta (kuvilla)
ForgetMeNot - Älykkään kodin ilmoitusalusta: Kiireisinä opiskelijoina, jotka juoksevat luokkien, työpaikkojen ja perhevelvollisuuksien välillä, meillä on tapana unohtaa pienet asiat. Syntymäpäivä tulee ja menee huomaamatta, tärkeä määräaika jää unohtamisen takia ja joskus vain
Opetusohjelma Do Projeto Final Do Curso IoT Aplicada a Smart Home Inatel / Novembro 2017: 4 vaihetta (kuvilla)
Tutorial Do Projeto Final Do Curso IoT Aplicada a Smart Home Inatel / Novembro 2017: No desenvolvimento desse projeto foi utilizada uma plataforma hibrida, sem an needidade de placessa de plataformas nativas do Android or IOS. Käytä tätä tietokonetyyppiä Notebook com windows 10. Essa plataforma chama-se Ionic, q
Raspberry Pi-Arduino-SignalR Home Automation Hub: 11 vaihetta (kuvilla)
Raspberry Pi-Arduino-SignalR Home Automation Hub: Muutaman täällä ja täällä julkaistun IBLE-esipuheen jälkeen tämä projekti ottaa ensimmäisen askeleen kohti perusversion rakentamista toimivasta Home Automation Hubista. yritän ymmärtää, miten voin olla
GO-4 Smart Home Arduino Bot: 7 vaihetta (kuvilla)
GO-4 Smart Home Arduino Bot: Tässä projektissa näytän sinulle, miten voit rakentaa Smart Home Botin IOT-tekniikan avulla hallitsemaan kodinkoneitasi etänä Internetin välityksellä. Mutta ennen kuin aloitamme, puhumme tästä tekniikasta tehdä … Mikä on IOT? Th