Tartalomjegyzék:
- 1. lépés: A szükséges dolgok
- 2. lépés: Készítse elő a Raspberry Pi -t 433 MHz -re
- 3. lépés: A Smart Home Server beállítása
- 4. lépés: Az ügyfelek beállítása
- 5. lépés: Következtetés
Videó: Smart Home by Raspberry Pi: 5 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
Már számos olyan termék létezik, amelyek okosabbá teszik a lakást, de a legtöbb saját megoldás. De miért van szüksége internetkapcsolatra, hogy okostelefonjával lámpát kapcsoljon? Ez volt az egyik ok arra, hogy saját intelligens otthoni megoldást készítsek.
Egy Raspberry Pi -n futó szerveralkalmazást programoztam. Ez egy java alapú nyílt forráskódú projekt, amely lehetővé teszi a lakás konfigurálását és több kliens és "vezérelhető egység" összekapcsolását. Mutatok egy megoldást, amely kezeli az rc tápellátás kapcsolóit, zenét és videót játszik le a Raspberry Pi -n, megjeleníti az állapotot az intelligens tükörben, és egy androidos alkalmazással és két kavicsos alkalmazással vezérelhető. A forrás a githubon található
1. lépés: A szükséges dolgok
Az intelligens otthon beállításához a következő összetevőkre van szüksége
- Raspberry Pi legalább 2 B modell
- 433 MHz-es adó, valami ilyesmi:
- 3 jumper kábel a Raspberry Pi és a küldő között
- Néhány rádióvezérlő aljzat 433 MHz -en
- Android okostelefon a kliens alkalmazás futtatásához
Ezenkívül az intelligens otthont további opcionális ügyfelekkel és ilyen egységekkel is bővítheti
- Kavicsos okosóra
- Smart Mirror, nézze meg ezt a projektet
- 433 MHz-es vezérlésű LED-szalag, lásd ezt a
2. lépés: Készítse elő a Raspberry Pi -t 433 MHz -re
A következő lépésekben hozzá kell férnie a Raspberry Pi parancssorához. A hozzáférés megszerzéséhez olvassa el ezt az útmutatót:
Csatlakoztassa a 433 MHz -es küldőt a Raspberry Pi -hez a fenti képen látható módon
- GND (feladó) 6 GND (raspi)
- VCC (küldő) 2 +5V (raspi)
- DATA (küldő) 11 GPIO 17 (raspi)
Kérjük, csatlakoztasson egy 17 cm -es antennát is az ANT (küldő) tűhöz. Ez jelentősen növeli a jelet.
Mivel szükségünk van néhány könyvtárra más git -tárolókból, telepítenünk kell a git -et
sudo apt-get install git-core -y
A Raspberry Pi 433 MHz -es kommunikációhoz való beállításához szükségünk van a vezetékeket tartalmazó Pi könyvtárra a GPIO -k jobb kezelése érdekében.
git klón git: //git.drogon.net/wiringPi
cd wiringPi./build
Ezután szükségünk van egy könyvtárra, amely tipikusan rc tápellátási protokollokat valósít meg.
git klón git: //github.com/dabastynator/rcswitch-pi.git
cd rcswitch-pi make cp send/usr/bin/
A 'küldés' futtatható fájl lehetővé teszi kódok küldését a rendelkezésre álló tápegységek nagy részének váltásához.
Az intelligens otthoni beállításomban van egy rc LED szalag is, amelyet az alábbi utasítás ír le: https://www.instructables.com/id/RC-controlled-LED… Ennek a LED szalagnak a színének beállításához szüksége van egy másik küldő futtatható fájlra, amely lehetővé teszi bármilyen egész szám elküldéséhez (ez kódolja a színt).
Ezért fordítsa össze a sendInt.cpp fájlt az rcswitch-pi repóban, és helyezze át a/usr/bin/sendInt mappába.
sudo g ++ sendInt.cpp -o/usr/bin/sendInt /home/pi/rcswitch-pi/RCSwitch.o -I/home/pi/rcswitch -pi -lwiringPi
Most már képesnek kell lennie rc parancsok küldésére a két végrehajtható fájllal:/usr/bin/send és/usr/bin/sendInt
3. lépés: A Smart Home Server beállítása
Először több csomagot kell telepítenie. A Smart Home alkalmazás java alapú, és jól működik az openjdk-11-el. Nem vagyok biztos más java futási környezetekben. Az mplayer egy minimalista parancssori zenelejátszó. Az omxplayer a Raspberry Pi grafikát használja a videó kódolásához, ezért ezt kell használni a videókhoz. Az ant programra van szükség a java alkalmazás felépítéséhez.
sudo apt-get install mplayer omxplayer openjdk-11-jdk ant -y
Telepítse a jar fájl és a naplók könyvtárait.
sudo mkdir /opt /neo
sudo chown pi: pi/opt/neo mkdir/home/pi/Logs
Állítsa be az indító szkriptet az alkalmazás automatikus indításához a rendszerindításkor. Ezért másolja a mellékelt intelligens otthoni szkriptet az /etc/init.d/ könyvtárba. Létrehoztam egy szkriptet is a/usr/bin/könyvtárban, amely parancsokat küld a csatolt parancsfájlhoz, ezért csak be kell írnom az intelligens otthont a konzolra a parancsok végrehajtásához.
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 alapértelmezések
Most itt az ideje, hogy ellenőrizze a lerakatot és építse fel az alkalmazást. Ha nem akarja saját maga lefordítani, töltse le a mellékelt smarthome.jar fájlt, és helyezze át az/opt/neo/mappába
git klón [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/
Próbálja meg elindítani az intelligens otthont, és ellenőrizze a naplófájlt. A GPIO -k eléréséhez az alkalmazást a sudo segítségével kell elindítani.
sudo smart-home start
cat Logs/smarthome.log
Látnia kell a Konfigurációs fájl nem létezik hibaüzenetet, amely a következő lépésre mutat. A lerakat egy readme -t tartalmaz, amely elmagyarázza a konfigurációs fájlt. Ezt szépen láthatja a githubon:
Másolja ezt az xml fájlt a /home/pi/controlcenter.xml mappába, majd állítsa be a médiaszerver helyét, és szükség szerint módosítsa a tartalmat. Miután befejezte a konfigurációt és újraindította az intelligens otthont (sudo smart-home restart), a következő tartalmat kell látnia a smarthome.log-ban
24.05-08: 26 TÁVOLI INFORMÁCIÓK: de.neo.smarthome.cronjob. CronJob@15aeb7ab: Cron job ütemezése
24.05-08: 26 TÁVOLI INFORMÁCIÓK [trigger.light]: Várjon 79391760 ms végrehajtással 24.05-08: 26 RMI INFORMÁCIÓK Hozzáadás web-kezelő (5061/ledstrip) 24.05-08: 26 RMI INFORMÁCIÓK Hozzáadás web-kezelő (5061 /action) 24.05-08: 26 RMI INFORMATION by 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 INFORMÁCIÓK a Start webszerveren 5 kezelővel (localhost: 5061) 24.05-08: 26 TÁVI INFORMÁCIÓK a Controlcenter segítségével: 1. vezérlőegység hozzáadása: MyUnit (xyz)…
A webszerver most fut:-)
4. lépés: Az ügyfelek beállítása
Okostelefonos Android kliens
Az intelligens otthon alkalmazás git tárháza tartalmazza az android kliens forrását is, így saját maga is lefordíthatja. De csatoltam az APK -t ehhez a lépéshez, ez megkönnyíti. Az alkalmazás első indításakor szervert kér, mint a fenti első képen. Írja be a szerver url -jét és a biztonsági tokent.
Annak kellene lennie. Most már hozzáférhet a szerverhez, és vezérelheti a lakását, zenét játszhat és videókat nézhet távolról a Raspberry Pi -n. Vegye figyelembe, hogy modulokat adhat hozzá a kezdőképernyőhöz, így a kapcsolók és a zenevezérlés elérhetőbbé válik.
Smartwatch Pebble kliens
A két kavicsos kliens forrását a github tárolja. Az egyik alkalmazás megjeleníti az éppen lejátszott zenei fájlt: https://github.com/dabastynator/PebbleRemoteMusic… Ez lehetővé teszi a szüneteltetést/lejátszást és a hangerő fel/le csökkentését is.
A második alkalmazás három műveletet indít el: https://github.com/dabastynator/PebbleControl A trigger-nevek a következők: mobile.come_home mobile.leaving és mobile.go_to_bed. Ha esemény-szabályokat határoz meg ehhez a triggerhez a konfiguráció-xml fájljában, akkor az órája aktiválja azokat.
Mindez nyílt forráskódú, de nem kell saját maga fordítania, csatoltam a kavicsos alkalmazásokat is. Töltse le a PBW -ket okostelefonjával, a telefonnak telepítenie kell őket az órájára. A kavicsos alkalmazásoknak konfigurációra van szükségük, hogy beszéljenek a szerverrel. Csatoltam egy képernyőképet, hogyan néznek ki a beállításaim.
Smartwatch Garmin kliens
A Garmin okosórákhoz ügyfél is rendelkezésre áll. Az alkalmazás elérhető a garmin connect alkalmazásboltban, és itt telepíthető:
apps.garmin.com/en-US/apps/c745527d-f2af-4…
Smart Mirror kliens
Már létrehoztam egy utasítást, amely elmagyarázza az Intelligens tükör létrehozásának módját, lásd ezt a https://www.instructables.com/id/Smart-Mirror-by-R … címet. A forráskód a githubon is található: https:// github.com/dabastynator/SmartMirror. A Smart Mirror szoftvere beolvassa a konfigurációt a smart_config.js fájlból, amely nem része a git tárnak. A konfigurációs fájl tartalmának így kell kinéznie:
var mOpenWeatherKey = 'nyitott búzakulcs';
var mSecurity = 'saját-biztonsági token';
Be kell állítania a smart_mirror.js fájl első két sorát is, hogy megadja a Smart Home szerver IP -címét és a megfelelő időjárás elérésének helyét.
Több ügyfél
A szerver alkalmazás egy egyszerű webszerver. Ez lehetővé teszi, hogy egyszerű webes hívásokkal indítson műveleteket bármelyik kívánt ügyféltől. A bemutató videóban az Android alkalmazás taskerjét mutatom meg az AutoVoice-szal kombinálva. Ez lehetővé teszi számomra az események egyszerű hangparancsokkal történő kiváltását. Például az "ok google, ideje aludni" kiválthatja a mobile.go_to_bed fájlt. De internetes hívásokat is kezdeményezhet, például az IFTTT-ből. Mit szólnál egy sárga villogó LED csíkhoz az e -mail értesítéshez?
Kérheti a szervert a lehetséges webes hívásokhoz, például a következő linkekhez (cserélje ki az IP-t, a portot és a tokent a konfigurációjával)
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-…
5. lépés: Következtetés
Még mindig van néhány megvalósítandó funkció: Mivel a szerver csak egy egyszerű web-api szolgáltatást nyújt, az ügyfelek sok lekérdezést végeznek. A szavazás csökkentése érdekében MQTT integrációt szeretnék a jobb értesítés érdekében. A wifi tápegységeknek megbízhatóbban kell működniük, mint az rc tápegységeknek, mivel az rc csak egyirányú kommunikáció.
Nagyon szórakoztató a fejlesztés ehhez a projekthez. És nagyon jó irányítani a lakást több eszközzel, még akkor is, ha az internetkapcsolat megszakad.
Ajánlott:
EWON Raspberry Pi Powered Home Robot: 7 lépés (képekkel)
EWON Raspberry Pi Powered Home Robot: Nemrég azon kaptam magam, hogy sok Netflix sorozatot nézek a jelenlegi helyzet miatt, remélem, mindannyian biztonságban vagytok, és láttam, hogy megjelent a Black Mirror 5. évadja. Egy antológia sorozat, amely az emberek egy csoportja körül forog
Oktatóanyag A Projeto Final Do Curso IoT Aplicada a Smart Home Inatel / Novembro 2017: 4 lépés (képekkel)
Oktatóanyag A Projeto Final Do Curso IoT Applicada a Smart Home Inatel / Novembro 2017: No desenvolvimento desse projeto foi utilizada uma plataforma hibrida, sem ancedid de decessars for plataformas nativas do Android or IOS. Használja a számítógépe típusát notebook com windows 10. Essa plataforma chama-se Ionic, q
Sonoff B1 Firmware Home Automation Openhab Google Home: 3 lépés
Sonoff B1 Firmware Home Automation Openhab Google Home: Nagyon szeretem a Tasmota firmware -t a Sonoff kapcsolókhoz. De a nem igazán volt elégedett a Tasmota firmware-rel a Sonoff-B1 készüléken. Nem sikerült teljesen integrálnom az Openhab -ba, és a Google Home -on keresztül irányítanom. Ezért saját céget írtam
GO-4 Smart Home Arduino Bot: 7 lépés (képekkel)
GO-4 Smart Home Arduino Bot: Ebben a projektben megmutatom, hogyan lehet intelligens otthoni robotot készíteni az IOT technológia segítségével, hogy távolról vezérelje háztartási készülékeit az interneten keresztül. De mielőtt elkezdenénk, beszéljünk erről a technikáról, ahogy használtuk megtenni … Mi az IOT? Th
GassistPi (Google Home a Raspberry Pi -ben): 7 lépés (képekkel)
GassistPi (Google kezdőlap a Raspberry Pi -ben): Google asszisztens a Raspberry Pi számára