Obsah:

Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky): 6 kroků
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky): 6 kroků

Video: Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky): 6 kroků

Video: Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky): 6 kroků
Video: Luděk Šmíd: Automatizace domácnosti – Místo, kde otevřená řešení žijí v souladu s... 2024, Červenec
Anonim
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)
Dálkově ovládané síťové zásuvky Raspberry Pi RF (napájecí zástrčky)

Ovládejte levné 433MHz síťové zásuvky (nástěnné zásuvky) pomocí Raspberry Pi. Pi se může naučit výstupy řídicích kódů z dálkového ovladače zásuvek a používat je pod programovým ovládáním k aktivaci jakékoli nebo všech vzdálených zásuvek v celém domě.

Design nespoléhá na externí připojení k internetu (tj.) „Internet věcí“, a je proto (IMHO) mnohem bezpečnější než webové ovladače. To znamená, že jsem se pokusil o integraci s domovskou stránkou Google, ale rychle jsem ztratil vůli žít, když provedení příkazů někdy trvalo několik desítek sekund, než se provedly, nebo nikdy nebyly provedeny vůbec.

Zjevnou aplikací kolem Vánoc je ovládání osvětlení vánočního stromku a (pokud jste tak nakloněni) vnějších světel displeje. Ačkoli je to jednoduché použití, vybudováním tohoto Instructable skončíte se super flexibilním řadičem zásuvek, který může reagovat na vstupy senzorů a na další zařízení ve vaší domácí síti, jako je Raspberry Pis se systémem Linux Motion.

Například mám sadu kuchyňských světel, která se rozsvítí, když kamera se systémem „Motion“detekuje pohyb v kuchyni a poté je vypne po pěti minutách nečinnosti. Funguje to opravdu dobře!

Pomocí 'Tasker' a 'AutoTools SSH' z obchodu Google Play můžete nastavit všechny druhy efektních dálkových ovladačů založených na telefonu.

Projekt spoléhá na levné desky přijímačů a vysílačů 433 MHz široce dostupné na eBay. Ty jsou kompatibilní s (minimálně ve Velké Británii) 433MHz vzdálenými síťovými zásuvkami prodávanými s dálkovými ovladači. Můj projekt obsahuje přijímač, takže lze snadno a rychle začlenit nové sady příkazů pro dálkové ovládání. Jeden bod k poznámce - vzdálené zásuvky dostupné ve Velké Británii se zdají mít dvě varianty - ty s ID naprogramovaným spínačem na zásuvce a ty, které jsou závislé na programování z dálkového ovladače. Tento projekt je kompatibilní s oběma, ale první neztratí svou identitu při výpadku proudu, a proto jsou vhodnější.

Projekt používá staré pouzdro routeru - mám jich několik a velmi šikovně mají většinu potřebných externích konektorů, jako je napájení, ethernet, USB a anténa (y). To, co použijete, bude záviset na tom, co máte k dispozici, takže tento Instructable je pravděpodobně užitečnější jako obecný průvodce, než jako podrobná sada pokynů.

Ačkoli to není pro tento projekt nezbytně nutné, přidal jsem také chladicí ventilátor a desku řadiče. Bez ventilátoru se Pi může docela zahřát (přibližně 60 ° C). Podrobnosti mohou být poskytnuty v pozdějším Instructable.

Měl bych zmínit, že nejsem žádný programátor. Software je (většinou) napsán v Pythonu a chytré věci jsou kopírovány od lidí, kteří vědí, co dělají. Uvedl jsem zdroje, kde mohu - pokud jsem nějaký zmeškal, dejte mi prosím vědět a text opravím.

Instructable předpokládá určitou schopnost pájení a dobrou znalost Pythonu, Bash a rozhovoru s vaším Pi přes SSH (i když se pokusím, aby byly pokyny co nejkomplexnější). Je také napsán v britské angličtině, takže pokud čtete na druhé straně rybníka, ignorujte prosím nadbytečná písmena ve slovech a lichá jména věcí (například 'síťové zásuvky', které budete znát jako něco jako „nástěnné zásuvky“).

Jakékoli komentáře, navrhovaná vylepšení a použití atd. Jsou také velmi vítány!

Krok 1: Příprava pouzdra

Příprava pouzdra
Příprava pouzdra
Příprava pouzdra
Příprava pouzdra
Příprava pouzdra
Příprava pouzdra

Pro tento projekt jsem použil starý router TP-Link TD-W8960N. Je to pěkná velikost a jakmile jsem zjistil, jak se do ní dostat, docela snadno se s ní pracovalo.

Také jsem ponechal napájení routeru 12v @ 1A, které je trochu pod napětím, ale v praxi je pro tuto aplikaci v pořádku.

Otevření pouzdra je otázkou odstranění dvou šroubů ve spodní části pouzdra a následného použití páčivého nástroje kolem okraje pouzdra, aby se klipy snadno otevřely. Dva šrouby jsou pod gumovými nožičkami v zadní části pouzdra (viz červené šipky). Nejsložitější klipy se otevírají vpředu, ale já jsem věřil a ohnuly se k mému vypáčenému nástroji.

Jakmile je skříň otevřená, uvolněte dvě matice na konektorech antény a desku s obvody lze vyjmout.

Jak budete později používat obě antény, odšroubujte koaxiální vodiče na desce plošných spojů a dejte je na jednu stranu.

Pokud se cítíte odvážní (jako já), můžete z desky plošných spojů odstranit tlačný spínač, zásuvku DC a zásuvky RJ45. Nejlepším způsobem, jak toho dosáhnout, je upnout desku do svěráku a aplikovat teplo z horkovzdušné pistole při určování ceny pomocí vhodného nástroje pro otevírání tenkého pouzdra nebo šroubováku. Logika spočívá v tom, že všechna spojení pájky jsou roztavena současně, což snižuje celkové tepelné namáhání plastového pouzdra součásti ve srovnání s použitím páječky na každé křižovatce. To je alespoň teorie. V praxi jde o štěstí! Kolik tepla použít je otázkou úsudku, ale buďte opatrní a chybujte na straně příliš malého. Pokud vše půjde dobře, skončíte s použitelnými součástmi zobrazenými na fotografii (všimnete si však roztaveného knoflíku spínače a mírně zdeformovaného pásku zásuvky RJ45!).

V opačném případě je nákup vašich bitů na internetu.

Krok 2: Seznam dílů

Raspberry Pi - mám podezření, že jakákoli příchuť bude stačit, ale použil jsem 3B+

Deska vysílače 433 MHz - na eBay hledejte „vysílač RF 433 MHz se sadou přijímačů pro bezdrátové zařízení Arduino Arm Mcu Wireless“nebo podobné

Deska přijímače 433 MHz - podobně. Obvykle 1,98 GBP za pár

LM2596 Buck regulátor - eBay, obvykle 1,95 GBP. Chcete -li převést napájení 12 V na 5 V pro Pi

Světelná trubka - hledejte na eBay 'Optický kabel - 0,25 / 0,5 / 0,75 / 1 / 1,5 / 2 / 2,5 / 3 mm Dia - světlovod' - Použil jsem 2 mm trubku, ale s 1,5 mm by bylo jednodušší pracovat (zaplatil jsem £ 2,95 na 1 m)

2pólový miniaturní přepínač (pěkný, ale volitelný)

Pájecí zásuvka USB typu A 180 ° - přes eBay jsem za deset zaplatil 1,90 libry

Dvoupólový přepínač (pěkný, ale volitelný) - můj jsem získal z desky modemu/routeru

Zásuvky RJ45 - obnoveny z desky modemu/routeru

Zásuvka stejnosměrného proudu - přes eBay (10x zásuvka stejnosměrného napájecího konektoru Zásuvka pro montáž na panel 5,5 x 2,1 mm 0,99 GBP)

430MHz antény - převádějte 2GHz antény modemu/routeru

Napájení 12 V DC 12 W (minimum) - v ideálním případě je dodáván s modemem/routerem. Pokud ne, musíte se ujistit, že výše uvedená zásuvka stejnosměrného proudu odpovídá té, kterou používáte. Požadavek na 12 V je určen vysílačem 433 MHz

Díly pro režim chladicího ventilátoru budou podrobně popsány v pozdějším Instructable.

Krok 3: Spotřební materiál a nástroje

Budete potřebovat následující spotřební materiál:

Pájka (podle potřeby)

Tavné lepidlo (podle potřeby)

Propojovací vodič - (např.) 22 a 24AWG (podle potřeby)

Smršťovací bužírka (podle potřeby)

Obětavá kočka. 5 ethernetový propojovací kabel

Obětní propojovací kabel USB 2.

Nástroje:

Odstraňovače drátů

Nůžky na drát (nejlépe splachovací)

Cenový nástroj

K rozebrání pouzdra vhodný šroubovák.

Páječka

Tavná pistole

Vysoušeč vlasů (pro ohýbání světelných trubek a pro jakékoli improvizované přerušení kadeřnictví)

Komunikační přijímač FM 433 MHz (volitelný - pro řešení problémů s problémy s vysílačem) - (např.) AR1000

Krok 4: Sestavení

Shromáždění
Shromáždění
Shromáždění
Shromáždění
Shromáždění
Shromáždění
Shromáždění
Shromáždění

Jak sestavíte Pi a pomocné desky, závisí na případu, který používáte. Fotografie ukazují, co jsem udělal.

Pi sedí zhruba uprostřed skříně, což umožňuje dostatek prostoru pro použití různých konektorů (všimněte si, že HDMI není používáno, protože Pi je komunikováno pomocí SSH (tj. „Bezhlavě“).

Pi jsem připevnil k základně pomocí několika zachráněných plastových spojovacích prostředků (viz foto). Protože box není určen pro přenosné použití, můžete se dostat pryč pouze pomocí dvou upevňovacích prvků. Můžete snadno použít 2,5 mm šrouby se stojany nebo dokonce tavné lepidlo (které jsem použil v minulosti-určitě nepoužívejte příliš mnoho a vyhněte se jakýmkoli součástem pro povrchovou montáž na spodní straně, protože budete nevyhnutelně mít odstranit desku v určitém čase (první stavební zákon - BUDETE ji muset rozebrat)).

Pomocí horkého lepidla jsem připevnil různé desky k bokům pouzdra. Platí stejné úvahy jako výše.

Jakmile je vše na svém místě, můžete věci zapojit.

Blokové schéma ukazuje schéma zapojení, které jsem použil. Všimněte si toho, že k přepínání napájení mezi deskami vysílače a přijímače používám volitelný přepínač - pravděpodobně to bude malé riziko, ale nechtěl jsem přijímač při vysílání smažit.

Také mě napadlo, že k elegantnímu vypnutí Pi mohl být použit tlačný spínač (na internetu je k dispozici řada návrhů). Neobtěžoval jsem se - v tomto případě funguje jako jednoduchý vypínač. Jen si musím dávat pozor, abych vypnul Pi přes SSH, než stisknu vypínač.

Zaznamenáte světelné trubice používané ke směrování světla ze dvou LED diod na Pi a ze stavové LED diody na přední stranu skříně. K ohýbání trubek jsem použil teplo z vysoušeče vlasů (horkou pistoli rozhodně NECHCETE!). Je to velmi pokus a omyl, ale nakonec to stojí za to, protože můžete přímo vidět, co signalizují diody LED, spíše než spoléhat se na software a externí diody LED. Je to samozřejmě vaše volba. Řezání trubek se provádí ostrým párem řezaček drátu (nejlepší jsou splachovací), ale můžete také použít ostré nůžky. Tavné lepidlo lze znovu použít k upevnění trubek na místě, ale dávejte pozor, abyste použili pouze malé množství - které rychle vychladne - protože lepidlo může trubky zkreslit.

V ideálním případě byste měli upravit antény. Obvykle budou dimenzovány pro provoz na 2 GHz a při použití na 433 MHz budou dělat velmi neefektivní antény.

Chcete -li to provést, nejprve odstraňte kryt antény, abyste odhalili anténní vodič. Myslím, že jsem měl štěstí, protože kryt sundal každou anténu jen s malým množstvím cen.

Na obrázku zobrazte řez, abyste odstranili původní 2GHz anténu a odkryli koaxiální osu. Opatrně přistupte k vnitřnímu jádru, sundejte opletení v dostatečné vzdálenosti a připájejte jej k novému kusu drátu, jak je znázorněno na obrázku. Délka nového drátu je zhruba 1/4 vlnové délky 433 MHz (tj.) Délka = 0,25 * 3E8/433E6 = 17 cm. Spodní část lze navinout pomocí malého vrtáku nebo podobného nástroje, aby se celá délka vešla do krytu antény.

Před opětovnou montáží zkontrolujte, zda není zkrat mezi kontakty vnitřní a vnější antény.

Modifikoval jsem pouze anténu vysílače jako „hluchý“přijímač, což je pravděpodobně výhodné při učení kódů dálkového ovládání RF (viz dále).

Připojení k ethernetu se provádí propojením obětavé kočky. 5 propojovací kabel do zásuvky RJ45 zachráněné z modemu. Odřízněte kabel tak, aby vyhovoval vzdálenosti mezi ethernetovou zásuvkou Pi a zásuvkou RJ45, a obnažte všech osm vodičů. Pomocí testeru spojitosti zajistěte, aby byl kabel 1 zapojen do kolíku 1 atd. Jednoduchý způsob, jak to udělat, je zapojit konektor do zásuvky, do které zapojujete, a zazvonit mezi kontakty zásuvky a holými konci kabelu. Protože se používá pouze jedna ze čtyř externích zásuvek RJ45, označte odpovídajícím způsobem kabelovou zásuvku, abyste se vyhnuli trapným chybám později.

Podobně je konektor USB zapojen pomocí obětovaného propojovacího kabelu USB 2, zapojeného kolíku 1 do kolíku 1 atd. Konektor USB vnějšího světa je nalepen na místo na pouzdru pomocí otvoru v pouzdře, který zanechává zásuvka telefonní linky.

Krok 5: Poznámky k vysílači

Poznámky k vysílači
Poznámky k vysílači
Poznámky k vysílači
Poznámky k vysílači
Poznámky k vysílači
Poznámky k vysílači

433 MHz vysílací a přijímací desky, které jsem použil, jsou na internetu všudypřítomné a protože jsou tak levné, objednal jsem si po dvou párech (aby bylo možné experimentální navlékání). Zjistil jsem, že přijímače jsou spolehlivé, ale vysílač, který jsem použil, potřeboval upravit, aby fungoval spolehlivě.

Obvod vysílače FS1000A, který jsem koupil*, je znázorněn na schématu. Metodou pokusu a omylu jsem zjistil, že 3pF kondenzátor potřebuje instalaci v poloze C1 SoT (výběr na testu), aby věc fungovala. Protože mám širokopásmový přijímač, který pokrývá 430 MHz, bylo relativně snadné to vyřešit. Jak můžete testovat bez přijímače, je zajímavá otázka….

*Poznámka: Koupil jsem druhou řadu vysílačů poté, co jsem nemohl první dva funkční. Všem těmto chyběla kolektorová cívka. Hmmm!

Měl jsem v nevyžádané krabičce kondenzátor 3pF, ale u většiny lidí to tak asi nebude a v každém případě může být potřebná hodnota větší, řekněme 7pF. Hrubou náhradu lze provést dvěma bity zkrouceného drátu (kroucený pár kabelů mého známého má kapacitu kolem 100 pF na stopu, aby vám poskytl vodítko po délce), ale nedoporučuje se, protože mohou nastat jiné problémy. Doufejme, že budete mít štěstí a nebudete mít žádný takový problém. Vždy jste si mohli koupit dražší (a tedy pravděpodobně) lépe vyrobený vysílač.

Mějte také na paměti, že frekvence vysílače není příliš přesná nebo stabilní, ale v praxi byla dost dobrá na spolehlivé ovládání vzdálených zásuvek.

Mějte také na paměti, že pozlacený otvor sousedící se slovem „ANT“na vysílači NENÍ připojení antény - je to ten v rohu bez označení (viz foto). To byla první chyba, kterou jsem udělal…

Pinové připojení užitečně označené „ATAD“by ve skutečnosti mělo samozřejmě číst „DATA“.

Krok 6: Přehled softwaru

Přehled softwaru
Přehled softwaru

Pamatujte, že nejsem programátor. Jak již bylo uvedeno dříve, chytrá věc je kód jiných lidí, ale vím toho dost na to, abych to stáhl a přizpůsobil, aby to fungovalo společně. Toto je také první Instructable, který jsem publikoval s kódem, takže se omlouvám, pokud jsem to udělal špatně! Pokud máte nějaké dotazy, mějte to na paměti…

Základní software, který jsem použil, je následující:

  • Raspbian Stretch Lite
  • PiGPIO (fantastická knihovna pro pohon serv atd.)
  • Kód _433.py (ke kódování a dekódování řídicích kódů RF) - propojen s webem PiGPIO.
  • Python3 (je dodáván s Raspbian)

Další software, který používám:

  • pyephem (vypočítává časy úsvitu a soumraku - užitečné pro přepínání světel)
  • Vynikající „Tasker“a „AutoTools SSH“pro vytvoření dálkového ovladače na mém telefonu Android - viz foto (obě dostupné v obchodě Google Play). [Jak vytvořit scénu Taskeru je mimo rozsah tohoto Instructable, protože je zde zahrnuta poměrně strmá křivka učení, ale rád diskutuji o tom, co jsem udělal]

Můj vlastní kód (v Pythonu). Hrubý, ale funkční:

  • tx.py - software pro argumenty příkazů a/nebo příkazového řádku, který odesílá příslušný kód do vysílače 433 MHz.
  • úsvit -soumrak - vypočítá časy úsvitu a soumraku v mém místě a aktualizuje uživatelský crontab (používá se pro osvětlení vánočního stromku atd.)

Výše uvedený osobní kód je přístupný prostřednictvím GitHub:

Funkčnost projektu zajišťuje kód PiGPIO a _433.py. Ten má funkci příjmu, která naslouchá příkazům dálkového ovládání z vašeho 433MHz RF dálkového ovladače a dekóduje časovací impulsy, čímž vytváří výstup, který lze uložit pro pozdější použití funkcí přenosu. To umožňuje systému naučit se jakékoli „normální“433MHz RF dálkové ovládání. V zásadě jej lze také použít k učení dálkových ovladačů RF vašeho souseda. Důrazně bych to nedoporučoval, protože sousedé jen zřídka vidí legrační stránku náhodně zvonících zvonků. Nechtěl bych.

Založit

Protože Pi v této aplikaci běží „bez hlavy“(tj.) Bez monitoru nebo klávesnice, musíte s ním mluvit pomocí ssh. K dispozici je spousta příruček, které popisují, jak nastavit Pi bez hlavy, ale aby to bylo jednoduché, předpokládám, že nejprve spustíte Pi pomocí monitoru a klávesnice. Po spuštění spusťte terminál a zadejte 'sudo raspi-config'. Vyberte '5. Možnosti rozhraní 'a poté' P2 SSH '. Povolte server ssh a zavřete raspi-config (což pravděpodobně skončí restartem).

Následné komunikace s Pi pak mohou být vedeny ze vzdáleného terminálu přes ssh. Všimněte si toho, že kód nevyžaduje pevnou IP adresu LAN pro Pi, ale určitě pomáhá (a je to určitě nutné, pokud se ponoříte do ovládání Tasker). Opět je na webu spousta návodů, jak postupovat. Můj domácí router mi umožňuje přiřadit pevnou IP adresu MAC adrese Pi, takže to dělám tak, než úpravou nastavení Pi.

Instalace PiGPIO:

ssh do Pi a zadejte následující příkazy:

sudo apt aktualizace

sudo apt install pigpio python-pigpio python3-pigpio

sudo apt install git

klon git

sudo apt install python3-RPi. GPIO

Chcete -li spustit PiGPIO při spuštění:

crontab -e

přidejte následující řádek:

Získejte kód Pythonu pro přenos a dekódování dálkových kódů RF 433 MHz:

wget

rozbalte _433_py.zip

Přesuňte rozbalený soubor _433.py do vhodného adresáře (např.) ~/Software/apps

Psaní (v tomto adresáři)

_433.py

uvádí Pi do režimu 433 rx a čeká na demodulované kódy RF dálkového ovládání na pinu GPIO 38.

Když je připojen přijímač 433 MHz, když je poblíž použit dálkový ovladač 433 MHz, na obrazovce se zobrazí něco jako následující data:

kód = 5330005 bitů = 24 (mezera = 12780 t0 = 422 t1 = 1236)

Tato data jsou ve vašem programu Python použita k regeneraci přenosu z dálkového ovladače.

Chcete -li tato data přenést do souboru pro pozdější použití, spusťte:

_433.py> ~/software/apps/remotedata.txt

Jakmile data získáte, dalším krokem je použít je k úpravě kódu „tx.py“, který můžete zkopírovat z mého úložiště GitHub. Tento kód používá data ke generování průběhů, které jsou srozumitelné vzdáleným zásuvkám, které mají být vysílány vysílačem 433 MHz. Naštěstí budou požadované úpravy přiměřeně zřejmé a zbytek je na vás…..

Doporučuje: