Obsah:
- Krok 1: Co budete potřebovat
- Krok 2: Nastavte zásuvky
- Krok 3: Nastavte si účet PubNub
- Krok 4: Připravte si Raspberry Pi
- Krok 5: Vytvoření obvodu
- Krok 6: Získejte RF kódy
- Krok 7: Spuštění programu
- Krok 8: Spuštění při spuštění
- Krok 9: Přidání dalších přepínačů
- Krok 10: Posunutí dále
- Krok 11: Kredity
Video: Levná a efektivní domácí automatizace s Raspberry Pi: 11 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:24
Vždy jsem chtěl mít možnost ovládat světla bezdrátově, ale komerční možnosti jsou obvykle drahé. Světla Philips Hue stojí kolem 70 dolarů a světla připojená přes WiFi jsou také drahá. Tento tutoriál vám řekne, jak ovládat až pět světel/lamp/vánočních světelných pramenů za přibližně 50 dolarů, a lze jej rozšířit o další světla.
Krok 1: Co budete potřebovat
Materiály:
Raspberry Pi Zero W (bezdrátová edice)
Micro SD karta (minimálně 4 GB)
Mini HDMI/HDMI kabel/převodník (Existuje rozdíl mezi mini a micro, ujistěte se, že máte ten správný!)
Kabel/převodník z micro USB na USB
USB klávesnice
Poznámka: Dostal jsem startovací sadu Raspberry Pi Zero W od Amazonu, která byla dodána s Raspberry Pi Zero W, kartou SD, pouzdrem, napájecím kabelem, převodníkem HDMI a převodníkem USB. Za pouhých 30 $ je to docela dobrá volba (odkaz)
Můžete použít jiný model Raspberry Pi, ale Raspberry Pi musí mít nějakou formu internetového připojení a Pi Zero W je nejlevnější varianta.
Vzdálené zásuvky - použil jsem tyto
RF vysílač a přijímač (Poznámka: frekvence vysílače/přijímače se musí shodovat s frekvencí vzdálených zásuvek) - použil jsem tyto
Drát pro anténu (použil jsem měděný drát s plným jádrem o průměru 22, jiný vodič může fungovat)
Breadboard, propojovací vodiče, 40kolíkový konektor typu male-to-male
Software:
Raspberry Pi OS (Stáhnout Raspbian Desktop)
Obrazový snímač disků Etcher (pro zápis OS Pi na kartu SD)
Nástroje:
Páječka
Počítač pro stahování Pi OS a Etcher
Krok 2: Nastavte zásuvky
Začněte zapojením zásuvek do zásuvky. Při instalaci postupujte podle přiložených pokynů a zapojte světla/spotřebiče. Zkontrolujte, zda je dálkový ovladač správně spárován a ovládá zásuvky.
Krok 3: Nastavte si účet PubNub
PubNub je bezplatný internetový server, který vám umožňuje komunikovat mezi zařízeními kdekoli na světě. Skript python přijímá zprávy z webové stránky a pomocí informací ve zprávě zapíná nebo vypíná světla. Zde si můžete zaregistrovat svůj bezplatný účet. Jakmile se zaregistrujete, přihlaste se ke svému účtu. Tím se dostanete na stránku pro správu aplikací. Klikněte na „Vytvořit novou aplikaci“. Pojmenujte aplikaci a poté ji vyberte ze seznamu aplikací (Pokud je to vaše první aplikace, bude jediná) Tím se dostanete na stránku klíčů aplikace. Klikněte na „Demo Keyset“a měli byste vidět tři různé klíče. Udržujte tuto stránku nahoře, tyto klíče budete potřebovat později. Nyní, když máte účet PubNub, můžete nastavit své malinové pi.
Krok 4: Připravte si Raspberry Pi
Stáhněte si Etcher a Raspberry Pi OS do počítače (odkazy v seznamu dílů)
Nainstalujte si na svůj počítač Etcher a v případě potřeby rozbalte Raspberry Pi OS. Vložte kartu Micro SD do počítače a otevřete Etcher. Klikněte na „Vybrat obrázek“a přejděte k rozbalenému souboru Raspberry Pi OS. Vyberte jej, poté klikněte na „Vybrat disk“a ze seznamu vyberte kartu micro SD. Klikněte na „Flash“a počkejte, až se Etcher dokončí. Jakmile Etcher dokončí, vyjměte kartu SD z počítače (Etcher ji automaticky vysune) a vložte ji do svého Raspberry Pi. V tomto okamžiku budete muset připojit Raspberry Pi k monitoru pomocí převaděče HDMI. Připojte klávesnici (a myš, pokud máte rozbočovač s více USB) a zapojte napájecí kabel. K dispozici jsou dva porty micro USB. Jeden je pro napájení, druhý je skutečný port USB. Ten, který je nejblíže konci Pi, je napájení, zatímco ten blíže ke středu je USB. Vaše malinové pi se nyní začne spouštět. Během prvního spuštění se může několikrát restartovat, ale to je normální. Jakmile se váš malinový pi spustí, připojte jej k WiFi. Po připojení k WiFi můžete použít server SSH, ale prozatím je pro mě používání GUI jednodušší. Otevřete okno terminálu a zadejte tyto příkazy:
sudo pip3 install 'pubnub == 3.9.0'
klon cd git git: //git.drogon.net/wiringPi klon git
klon sudo git
sudo chown root.root/var/www/rfoutlet/codesend sudo chmod 4755/var/www/rfoutlet/codesend
cd kabelážPi
./stavět
Nyní otevřete prohlížeč souborů Raspberry Pi a měli byste vidět složku pi-home-automation. Poklepejte na něj a měl by se zobrazit soubor s názvem RFControl.py. Zkopírujte jej (opačným kliknutím a vyberte „Kopírovat“), poté se vraťte do složky pi a vložte ji tam.
Vypněte malinový pi (buď z nabídky, nebo spuštěním sudo poweroff z příkazového řádku) a odpojte jej, jakmile zelené světlo přestane blikat.
Krok 5: Vytvoření obvodu
Nyní je čas vytvořit obvod. Použil jsem prkénko, ale můžete to dělat, jak chcete.
Nejprve musíme vytvořit anténu pro RF vysílač. Tento tutoriál ukazuje, jak vyrobit anténu pro RF vysílač. Postupujte podle pokynů a poté jej připájejte na anténní kolík vysílače (na tom, který jsem použil, měl označení ANT) kratší stranou nejblíže k vysílači
Připojte vysílač
Vysílač používá tyto kolíky:
DATA: GPIO 17, fyzický pin 11
VCC: Raspberry Pi 5v, fyzický pin 2
GND: Raspberry Pi GND, fyzický pin 6
Připojte přijímač
Přijímač používá tyto piny:
GND: Raspberry Pi GND, fyzický pin 9
VCC: Raspberry Pi 5v, fyzický pin 4
DATA: GPIO 27, fyzický pin 13 (Na přijímači, který jsem použil, jsou dva datové piny a použil jsem ten nejblíže k VCC)
Krok 6: Získejte RF kódy
Poté, co je váš obvod připojen k Raspberry Pi, dvakrát jej zkontrolujte, zda je vše na svém místě, a poté jej znovu zapněte. Jakmile je zapnutý, otevřete terminál a zadejte
sudo/var/www/rfoutlet/RFSniffer
Dále otevřete program RFControl. Umístění okna terminálu a okna programu vedle sebe může být užitečné v dalším kroku.
Nyní budete potřebovat dálkový ovladač, který byl součástí výstupní sady. Podržte jej v blízkosti přijímače a stiskněte jednotlivá tlačítka. Když stisknete tlačítko, zobrazí se na obrazovce vytištěna dvě čísla. Jeden z nich bude šest nebo sedmimístný kód a druhý 3místný kód. V programu budete muset upravit slovník kódů. Zadejte 7místný kód na příslušné místo přepínače v programu a pro každé tlačítko zapnutí/vypnutí vložte 3místný kód (toto je délka) do příslušného přepínače v programu.
Pokud má například přepínač 1 zapnutý kód 1234567, vypínací kód 7654321 a délku 890, bude kód vypadat takto:
kódy = {
'switch1': {'on': 1234567, #This is switch 1 on 'off': 7654321, #this is switch 1 off 'len': 890, #this is switch 1 code length}, 'switch2': {… },…}
Opakujte to pro každé tlačítko. Při úpravách tohoto souboru změňte řetězce, které říkají „YOUR-SUB-KEY“na váš klíč k odběru PubNub, a „YOUR-PUB-KEY“na klíč publikování.
Jakmile je každé tlačítko zaznamenáno, můžete pokračovat do další sekce.
Krok 7: Spuštění programu
Nyní, když máte všechny své kódy, přejděte na tuto stránku GitHub (na počítači, ne na malinovém pi) a klikněte na zelené tlačítko s nápisem „Klonovat nebo stáhnout“, poté klikněte na „Stáhnout ZIP“. Jakmile je tento soubor stažen, rozbalte jej a otevřete složku. Otevřete soubor s názvem main.js. V programu budete muset zadat své předplatitelské a publikační klíče tak, že „YOUR-PUB-KEY“nahradíte klíčem pro publikování a „YOUR-SUB-KEY“klíčem pro přihlášení.
Dále se vraťte zpět k Raspberry Pi a zadejte
python3 RFControl.py
Jakmile se vytiskne „Připraveno“, vraťte se zpět do počítače a otevřete soubor index.html ve webovém prohlížeči opačným kliknutím, vyberte „Otevřít pomocí“a vyberte preferovaný prohlížeč. Měli byste vidět 2 sloupce po 5 tlačítkách s názvy přepínačů mezi nimi. Stiskněte libovolné tlačítko. Pokud správně ovládá zásuvku, skvělé! Pokud ne, zkuste následující věci:
- Ujistěte se, že Raspberry Pi přijímá zprávy. Měl by se vytisknout na obrazovku vždy, když obdrží zprávu z webové stránky. Pokud ne, zkontrolujte, zda jsou vaše klíče pro přihlášení/odběr správné.
- Pokud Raspberry Pi přijímá zprávy, zkontrolujte, zda jsou vaše RF kódy správné. Ujistěte se, že jsou vaše zásuvky spárovány s dálkovým ovladačem, dálkové ovládání je může ovládat a že kódy, které jste zadali do programu, jsou správné.
- Pokud jsou kódy RF správné, ujistěte se, že je váš Raspberry Pi v dosahu zásuvek. Pokud začnou fungovat po přesunutí blíže, možná budete muset znovu udělat anténu.
- Pokud stále nefungují, sdělte mi prosím svůj problém v komentářích a já se pokusím s tím pomoci.
Krok 8: Spuštění při spuštění
Chcete -li, aby se váš program python spustil při spuštění, zadejte to do terminálu raspberry pi:
crontab -e
Dále přejděte do spodní části souboru a zadejte toto:
@reboot python3 /home/pi/RFControl.py &
Díky tomu se váš skript Pythonu spustí při každém spuštění. Nyní restartujte Raspberry Pi.
Krok 9: Přidání dalších přepínačů
Pokud chcete přidat další prodejny, postupujte podle těchto pokynů:
Otevřete na Raspberry Pi soubor RFControl.py a přidejte nový přepínač do slovníku přepínačů.
Příklad:
přepínače = {
… další přepínače … 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}
Dále přidejte do webové aplikace nové tlačítko úpravou proměnné přepínače v souboru main.js ve svém počítači.
Příklad:
var přepínače = [… Staré přepínače… [„NÁZEV K DISPLEJI“, „NÁZEV PŘEPÍNAČE],];
Nahraďte NAME-TO-DISPLAY názvem, který chcete, aby se zobrazoval na webové stránce, a NAME-OF-SWITCH v obou souborech čímkoli, co se vám líbí. Musí však být jedinečný od ostatních!
Krok 10: Posunutí dále
PubNub je podporován na mnoha různých platformách, což znamená, že můžete odesílat zprávy téměř z jakéhokoli zařízení! K odesílání příkazů hlasem jsem použil sadu Raspberry Pi AIY Voice a PubNub, ale to může být téma pozdějšího Instructable. Děkuji za přečtení mého Instructable, doufám, že to bylo užitečné!
Krok 11: Kredity
Díky Timu Lelandovi za návod k nastavení RF vysílače: návod
Díky diy_bloke za návod na vytvoření antény: návod
Děkuji také všem ostatním, kteří zveřejnili návody online, které jsem viděl jako pomoc!
Doporučuje:
Efektivní vývoj Javy pro Raspberry Pi: 11 kroků (s obrázky)
Efektivní vývoj Javy pro Raspberry Pi: Tento Instructable popisuje velmi efektivní přístup pro vývoj programů Java pro Raspberry Pi. Použil jsem tento přístup k vývoji funkcí Java od podpory zařízení nízké úrovně až po vícevláknové a síťové programy. Schvalující
Hlasová automatizace domácí automatizace Raspberry Pi: 5 kroků
Hlasová automatizace domácí automatizace Raspberry Pi: Cílem této instrukce je poskytnout podrobný návod, jak nastavit malinový pi, který dokáže automatizovat světla / LED pomocí vašich hlasových příkazů
Rozbočovač domácí automatizace Raspberry Pi-Arduino-SignalR: 11 kroků (s obrázky)
Rozbočovač domácí automatizace Raspberry Pi-Arduino-SignalR: Po několika mých předešlých IBLE publikovaných zde a zde tento projekt dělá první krok k vybudování základní verze funkčního rozbočovače pro domácí automatizaci. Použil jsem několik různých technologií v jednom snaha pochopit, jak mohu
Automatizace domácí automatizace Bluetooth: 7 kroků (s obrázky)
Bluetooth Control Home Automation: Dobrý den, v tomto projektu jde o stavbu nejjednoduššího zařízení pro domácí automatizaci pomocí arduina a modulu bluetooth. Tenhle se velmi snadno staví a dá se postavit za pár hodin. Ve své verzi, kterou právě vysvětluji, mohu
Jednoduchá domácí automatizace využívající věci Raspberry Pi3 a Android: 5 kroků (s obrázky)
Jednoduchá domácí automatizace využívající věci Raspberry Pi3 a Android: Cílem je navrhnout “ smart HOME ” kde lze ovládat domácí zařízení pomocí Android Things a Raspberry Pi. Projekt spočívá v ovládání domácích spotřebičů, jako je světlo, ventilátor, motor atd. Požadované materiály: Raspberry Pi 3HDMI Ca