Obsah:
- Krok 1: Veci, ktoré potrebujete
- Krok 2: Pripravte Raspberry Pi na 433 MHz
- Krok 3: Nastavte server Smart Home
- Krok 4: Nastavenie klientov
- Krok 5: Záver
Video: Smart Home od Raspberry Pi: 5 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:55
Existuje už niekoľko produktov, vďaka ktorým je váš byt múdrejší, ale väčšinou ide o proprietárne riešenia. Prečo však potrebujete na zapnutie svetla pomocou smartfónu internetové pripojenie? To bol jeden z dôvodov, prečo som si vybudoval vlastné riešenie Smart Home.
Naprogramoval som serverovú aplikáciu, ktorá beží na Raspberry Pi. Toto je open source projekt založený na jave, ktorý vám umožní nakonfigurovať váš byt a pripojiť niekoľko klientov a „ovládateľných jednotiek“. Ukazujem riešenie, ktoré zvláda vypínače napájania na diaľkové ovládanie, prehráva hudbu a video na Raspberry Pi, ukazuje stav na inteligentnom zrkadle a dá sa ovládať pomocou aplikácie pre Android a dvoch kamienkových aplikácií. Zdroj je hostený na serveri github
Krok 1: Veci, ktoré potrebujete
Na nastavenie inteligentnej domácnosti potrebujete nasledujúce „prísady“
- Raspberry Pi aspoň model 2 B
- Odosielateľ 433 MHz, niečo také
- 3 prepojovacie káble spájajúce Raspberry Pi a odosielateľ
- Niektoré zásuvky pre rádiové ovládanie na frekvencii 433 MHz
- Smartfón so systémom Android na spustenie klientskej aplikácie
Smart Home môžete navyše rozšíriť o ďalších voliteľných klientov a podobné jednotky
- Kamienkové inteligentné hodinky
- Smart Mirror, pozrite si tento projekt
- LED pásik ovládaný 433 MHz, pozrite si tento
Krok 2: Pripravte Raspberry Pi na 433 MHz
V nasledujúcich krokoch potrebujete prístup k príkazovému riadku na Raspberry Pi. Ak chcete získať prístup, môžete si prečítať tento návod na
Pripojte vysielač 433 MHz k Raspberry Pi, ako je znázornené na obrázku vyššie
- GND (odosielateľ) 6 GND (raspi)
- VCC (odosielateľ) 2 +5V (raspi)
- DATA (odosielateľ) 11 GPIO 17 (raspi)
Pripojte tiež 17 cm anténu k kolíku ANT (odosielateľ). To výrazne zvyšuje signál.
Pretože potrebujeme niektoré knižnice z iných úložísk git, musíme nainštalovať git
sudo apt-get install git-core -y
Na nastavenie Raspberry Pi na komunikáciu 433 MHz potrebujeme káblovú knižnicu Pi na lepšie ovládanie GPIO.
klon git git: //git.drogon.net/wiringPi
cd wiringPi./build
Potom potrebujeme knižnicu, ktorá implementuje spravidla protokoly napájania RC.
git klon git: //github.com/dabastynator/rcswitch-pi.git
cd rcswitch-pi make cp send/usr/bin/
Spustiteľný súbor „odoslať“vám umožňuje odosielať kódy na prepínanie väčšiny dostupných zdrojov napájania.
V mojom nastavení Smart Home mám tiež rc LED pásik popísaný týmto návodom: https://www.instructables.com/id/RC-controlled-LED… Na nastavenie farieb pre tento LED pásik potrebujete ďalší odosielací spustiteľný súbor, ktorý vám umožní na odoslanie akejkoľvek celočíselnej hodnoty (ktorá kóduje farbu).
Preto skompilovajte sendInt.cpp v repo rcswitch-pi a presuňte ho do/usr/bin/sendInt.
sudo g ++ sendInt.cpp -o/usr/bin/sendInt /home/pi/rcswitch-pi/RCSwitch.o -I/home/pi/rcswitch -pi -lwiringPi
Teraz by ste mali byť schopní odosielať príkazy rc pomocou dvoch spustiteľných súborov/usr/bin/send a/usr/bin/sendInt
Krok 3: Nastavte server Smart Home
Najprv musíte nainštalovať niekoľko balíkov. Aplikácia Smart Home je založená na jave a funguje dobre s openjdk-11. Nie som si istý inými runtime prostredím java. Mplayer je minimalistický prehrávač hudby príkazového riadka. Prehrávač omx používa na kódovanie videa grafiku Raspberry Pi, takže by sa mala používať na videá. Na zostavenie java aplikácie je potrebný program mravenec.
sudo apt-get nainštalovať mplayer omxplayer openjdk-11-jdk ant -y
Nastavte adresáre pre súbor jar a protokoly.
sudo mkdir /opt /neo
sudo chown pi: pi/opt/neo mkdir/home/pi/Logs
Nakonfigurujte štartovací skript, aby sa aplikácia automaticky spustila pri štarte. Skopírujte preto priložený skript smart-home do adresára /etc/init.d/ Tiež som vytvoril skript v/usr/bin/, ktorý odosiela príkazy do priloženého skriptu, takže do konzoly zadám príkaz smart-home a spustím príkazy.
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 predvolené nastavenia smart-home
Teraz je načase skontrolovať úložisko a vytvoriť aplikáciu. Ak ho nechcete zostavovať sami, stačí si stiahnuť priložený súbor smarthome.jar a presunúť ho na/opt/neo/
git clone [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/
Skúste spustiť inteligentný dom a skontrolujte súbor denníka. Ak chcete získať prístup k GPIO, aplikáciu musí spustiť sudo.
štart inteligentného domova sudo
mačka Záznamy/smarthome.log
Mali by ste vidieť chybové hlásenie Konfiguračný súbor neexistuje, ktoré nás odkazuje na ďalší krok. Úložisko obsahuje súbor readme, ktorý vysvetľuje konfiguračný súbor. Toto môžete krásne vykresliť na github:
Skopírujte tento xml na /home/pi/controlcenter.xml, potom nastavte umiestnenie pre svoj mediálny server a zmeňte obsah podľa potreby. Po dokončení konfigurácie a reštarte inteligentného domu (sudo smart-home restart) by ste v smarthome.log mali vidieť nasledujúci obsah
24.05-08: 26 DIAĽKOVÉ INFORMÁCIE od de.neo.smarthome.cronjob. CronJob@15aeb7ab: Naplánovať prácu cron
24.05-08: 26 DIAĽKOVÉ INFORMÁCIE od [trigger.light]: Počkajte 79391760 ms na vykonanie 24.05-08: 26 INFORMÁCIE RMI pridaním webového obslužného programu (5061/ledstrip) 24.05-08: 26 INFORMÁCIE RMI pridaním webového obslužného programu (5061 /akcia) 24.05-08: 26 RMI INFORMÁCIE od Add web-handler (5061/mediaserver) 24.05-08: 26 RMI INFORMATION od Add web-handler (5061/switch) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061/controlcenter) 24.05-08: 26 RMI INFORMATION by Start webserver with 5 handler (localhost: 5061) 24.05-08: 26 REMOTE INFORMATION by Controlcenter: Add 1. control unit: MyUnit (xyz)…
Web server je spustený:-)
Krok 4: Nastavenie klientov
Smartfón klient pre Android
Úložisko git pre aplikáciu smart-home obsahuje aj zdroj pre klienta Android, takže si ho môžete zostaviť sami. Ale pre tento krok som pripojil APK, čo to uľahčuje. Pri prvom spustení aplikácie vás požiada o server, ako na prvom obrázku vyššie. Zadajte webovú adresu servera a bezpečnostný token.
To by malo byť. Teraz máte prístup na server a môžete ovládať svoj byt, prehrávať hudbu a sledovať videá na diaľku na svojom Raspberry Pi. Upozorňujeme, že na domovskú obrazovku môžete pridať miniaplikácie, vďaka ktorým budú prepínače a ovládanie hudby prístupnejšie.
Smartwatch Pebble klient
Zdroj pre dvoch klientov s kamienkami je hostený na github. Jedna aplikácia zobrazuje aktuálne prehrávaný hudobný súbor: https://github.com/dabastynator/PebbleRemoteMusic… To vám tiež umožňuje pozastaviť/prehrať a zvýšiť/znížiť hlasitosť.
Druhá aplikácia spustí tri akcie: https://github.com/dabastynator/PebbleControl Názvy spúšťačov sú: mobile.come_home mobile.leaving a mobile.go_to_bed. Ak definujete pravidlá udalostí pre tento spúšťač v konfiguračnom xml, spustíte ich pomocou hodiniek.
Všetko je to open-source, ale nemusíte si to zostavovať sami, priložil som aj kamienkové aplikácie. Stiahnite si PBW's do svojho smartfónu, váš telefón by ich mal nainštalovať do hodiniek. Na komunikáciu so serverom vyžadujú kamienkové aplikácie konfigurácie. Priložil som snímku obrazovky, ako vyzerajú moje nastavenia.
Smartwatch klient Garmin
K dispozícii je aj klient pre inteligentné hodinky Garmin. Aplikácia je k dispozícii v obchode s aplikáciami garmin connect a je možné ju nainštalovať tu:
apps.garmin.com/en-US/apps/c745527d-f2af-4…
Klient Smart Mirror
Už som vytvoril návod, ktorý vysvetľuje, ako vytvoriť Smart Mirror, pozrite sa na https://www.instructables.com/id/Smart-Mirror-by-R…. Zdrojový kód je hostiteľom aj na github: https:// github.com/dabastynator/SmartMirror. Softvér Smart Mirror načíta konfiguráciu zo súboru smart_config.js, ktorý nie je súčasťou úložiska git. Obsah konfiguračného súboru by mal vyzerať takto:
var mOpenWeatherKey = 'your-open-wheather-key';
var mSecurity = 'your-security-token';
Tiež musíte upraviť prvé dva riadky súboru smart_mirror.js tak, aby určovali IP adresu servera Smart Home a umiestnenie, aby bolo dosiahnuté správne počasie.
Viac klientov
Serverová aplikácia je jednoduchý webový server. To vám umožní vykonávať akcie z ľubovoľného klienta, ktorého chcete, jednoduchými webovými hovormi. V ukážke videa zobrazujem nástroj na vytváranie aplikácií pre Android v kombinácii s AutoVoice. To mi umožňuje spúšťať udalosti jednoduchými hlasovými príkazmi. Napríklad „ok google, time to sleep“môže spustiť mobile.go_to_bed. Môžete však tiež uskutočňovať webové hovory, napríklad z IFTTT. Čo hovoríte na žlto blikajúci pásik LED na upozornenie e -mailom?
Môžete požiadať server o možné webové hovory ako nasledujúce odkazy (nahraďte IP, port a token podľa svojej konfigurácie)
localhost: 5061/controlcenter/api? token = secu …
localhost: 5061/action/api? token = zabezpečenie -…
localhost: 5061/mediaserver/api? token = secure…
localhost: 5061/switch/api? token = zabezpečenie -…
localhost: 5061/ledstrip/api? token = zabezpečenie-…
Krok 5: Záver
Stále existuje niekoľko funkcií, ktoré je možné implementovať: Pretože server poskytuje iba jednoduché webové rozhrania API, klienti často hlasujú. Na zníženie hlasovania chcem integráciu MQTT pre lepšie upozornenie. Napájacie zdroje wifi by tiež mali fungovať spoľahlivejšie ako napájacie zdroje na diaľkové ovládanie, pretože diaľkové ovládanie je iba jednosmerná komunikácia.
Vývoj tohto projektu je veľmi zábavné. A je celkom fajn ovládať byt niekoľkými zariadeniami, aj keď sa preruší internetové pripojenie.
Odporúča:
Ako: Inštalácia Raspberry PI 4 bezhlavého (VNC) s obrazovým procesorom Rpi a obrázkami: 7 krokov (s obrázkami)
Ako na to: Inštalácia Raspberry PI 4 bez hlavy (VNC) s obrázkom Rpi a obrázkami: Plánujem použiť tento nástroj Rapsberry PI v mnohých zábavných projektoch späť na mojom blogu. Neváhajte sa na to pozrieť. Chcel som sa vrátiť k používaniu svojho Raspberry PI, ale na novom mieste som nemal klávesnicu ani myš. Chvíľu to bolo, odkedy som nastavil Raspberry
Alexa Smart Home System pomocou reléového modulu NodeMCU: 10 krokov
Systém Alexa Smart Home využívajúci reléový modul NodeMCU: V tomto projekte internetu vecí som vyrobil systém Alexa Smart Home Automation pomocou NodeMCU ESP8266 & Reléový modul. Svetlo, ventilátor a ďalšie domáce spotrebiče môžete ľahko ovládať hlasovým príkazom. Ak chcete prepojiť inteligentný reproduktor Echo Dot s
GO-4 Smart Home Arduino Bot: 7 krokov (s obrázkami)
GO-4 Smart Home Arduino Bot: V tomto projekte vám ukážem, ako vytvoriť inteligentného domáceho robota pomocou technológie IOT na diaľkové ovládanie vašich domácich spotrebičov prostredníctvom internetu. Ale skôr, ako začneme, porozprávajme sa o tejto technike, ako sme ju používali to … What is the IOT? Th
Raspberry Pi - Smart Office: 10 krokov (s obrázkami)
Raspberry Pi - Smart Office: O čom je aplikácia? OfficeHelperBOT je aplikácia zameraná na nastavenie inteligentnej kancelárie. 2 Raspberry Pi 3 Model B by bol na to nastavený. Raspberry Pi 1 by bol hlavným strojom, ktorý bude získavať všetky hodnoty zo senzorov,
Smart Mirror od Raspberry Pi: 5 krokov (s obrázkami)
Smart Mirror od Raspberry Pi: V zásuvke bol teda nepoužitý malinový pi 1B a nepoužívaný monitor. To je dostatočný dôvod na vytvorenie inteligentného zrkadla. Zrkadlo by malo zobrazovať informácie o čase, dátume a počasí, ako aj informácie o stave prepínačov inteligentnej domácnosti a aké