Obsah:

RF433Analyser: 7 kroků
RF433Analyser: 7 kroků

Video: RF433Analyser: 7 kroků

Video: RF433Analyser: 7 kroků
Video: Умное WiFi реле TUYA TYWD с сухими контактами и пультом ДУ RF 433 mHz 2024, Červenec
Anonim
RF433Analyser
RF433Analyser
RF433Analyser
RF433Analyser

Tento instruktáž vytváří měřicí nástroj, který pomáhá analyzovat přenosy RF 433 MHz, které se běžně používají pro dálkovou komunikaci s nízkým výkonem v domácí automatizaci a senzorech. Pravděpodobně by mohl být snadno upraven tak, aby fungoval s přenosy 315 MHz používanými v některých zemích. Důvodem by bylo použití 315MHz verze RXB6 namísto současné 433MHz.

Účel nástroje je dvojí. Za prvé, poskytuje měřič síly signálu (RSSI), který lze použít k prozkoumání pokrytí kolem nemovitosti a nalezení jakýchkoli černých skvrn. Za druhé dokáže zachytit čistá data z vysílačů, což umožňuje snazší analýzu dat a protokolů používaných různými zařízeními. To je užitečné, pokud se pokoušíte navrhnout kompatibilní doplňky ke stávajícím jednotkám. Sběr dat je obvykle komplikován hlukem pozadí v přijímačích produkujících mnoho falešných přechodů a znesnadňujícím odhalení skutečných přenosů.

Jednotka používá superhetový přijímač RXB6. Používá přijímací čip Synoxo-SYN500R, který má analogový výstup RSSI. Toto je ve skutečnosti vyrovnávací verze signálu AGC používaného k řízení zisku přijímače a poskytuje sílu signálu v širokém rozsahu.

Přijímač je monitorován modulem ESP8266 (ESP-12F), který převádí signál RSSI. Také pohání malý lokální OLED displej (SSD1306). Elektronika může také zachytit informace o časování o datových přechodech.

Zachycení lze spustit lokálně pomocí tlačítka na jednotce. Zachycená data se ukládají do souborů pro pozdější analýzu.

Modul ESP12 spouští webový server, který umožňuje přístup k souborům, a odtud lze také spouštět zachycování.

Přístroj je napájen malou dobíjecí baterií LIPO. To dává rozumnou dobu chodu a elektronika má nízký klidový proud, když se nepoužívá.

Krok 1: Požadované součásti a nástroje

Důležitá poznámka:

Zjistil jsem, že některé přijímače RXB6 433 MHz mají nefungující výstup RSSI, přestože AGC a ostatní funkce jsou v pořádku. Mám podezření, že může být použit nějaký klon čipů Syn500R. Zjistil jsem, že přijímače označené jako WL301-341 používají čip kompatibilní se Syn5500R a RSSI je funkční. Mají také tu výhodu, že nepoužívají stínící plechovku, což usnadňuje úpravu kondenzátoru AGC. Doporučil bych použít tyto jednotky.

Jsou zapotřebí následující součásti

WiFi modul ESP-12F

  • 3,3V regulátor xc6203
  • 220uF 6V kondenzátor
  • 2 schottky diody
  • Tlačítko 6 mm
  • n kanál MOSFET např. AO3400
  • p kanál MOSFET např. AO3401
  • odpory 2x4k7, 3 x 100K, 1 x 470K
  • malý kousek prototypovací desky
  • RXB6 nebo WL301-341 superhet 433MHz přijímač
  • Displej SSD1306 0,96 OLED (jednobarevná verze SPI)
  • Baterie LIPO 802030 400mAh
  • 3pinový konektor pro nabíjení
  • Zapojte drát
  • Smaltovaný měděný drát samonavíjející
  • Epoxidová pryskyřice
  • Oboustranná páska
  • 3D tištěná skříň

Potřebné nástroje

  • Páječka s jemným hrotem
  • Odpájecí cop
  • Pinzeta
  • Kleště

Krok 2: Schéma

Schéma
Schéma

Okruh je poměrně přímočarý.

Regulátor LDO 3,3 V převádí LIP na 3,3 V potřebný modulem ESP-12F.

Displej i přijímač jsou napájeny dvěma spínacími MOSFETY, takže jsou vypnuté, když modul ESP spí.

Tlačítko spouští systém napájením 3,3 V na EN vstup ESP8266. GPIO5 to pak udržuje, zatímco je modul aktivní. Tlačítko je také monitorováno pomocí GPIO12. Když se uvolní GPIO5, EN se odstraní a jednotka se vypne.

Datová linka z přijímače je monitorována GPIO4. Signál RSSI je monitorován AGC přes dělič potenciálu 2: 1.

Displej SSD1306 se ovládá pomocí SPI sestávajícího z 5 signálů GPIO. Může být možné použít verzi I2C, ale to bude vyžadovat změnu použité knihovny a přemapování některých GPIO.

Krok 3: Úprava přijímače

Modifikace přijímače
Modifikace přijímače
Modifikace přijímače
Modifikace přijímače
Modifikace přijímače
Modifikace přijímače

Jak je dodáno, RXB6 nezpřístupňuje signál RSSI na jeho externích datových pinech.

Jednoduchá úprava to umožňuje. Signální konektor DER na jednotce je ve skutečnosti jen opakováním signálu datového signálu. Jsou spojeny dohromady přes odpor 0 Ohm označený R6. To je třeba odstranit pomocí páječky. Součást označená R7 musí být nyní propojena. Horní konec je vlastně signál RSSI a spodní jde do konektoru DER. Dalo by se použít odpor 0 Ohm, ale připojil jsem se trochu drátem. Tato místa jsou přístupná mimo kovovou stínící plechovku, kterou pro tuto úpravu není nutné odstraňovat.

Modifikaci lze vyzkoušet připojením voltmetru na DER a GND při zapnutém přijímači. Ukáže napětí mezi přibližně 0,4 V (bez přijímaného výkonu) a přibližně 1,8 V s místním zdrojem 433 MHz (např. Dálkovým ovládáním).

Druhá modifikace není zcela zásadní, ale je zcela žádoucí. Jak je dodáno, doba odezvy AGC přijímače je nastavena na poměrně pomalou dobu, přičemž odpověď na přijatý signál trvá několik stovek milisekund. Tím se snižuje časové rozlišení při zachycování RSSI a také se snižuje odezva na používání RSSI jako spouštěče pro sběr dat.

Existuje jeden kondenzátor, který řídí doby odezvy AGC, ale bohužel je umístěn pod kovovou stínící plechovkou. Ve skutečnosti je docela snadné vyjmout stínící plechovku, protože je držena pouze 3 oky a může být oceněna zahříváním každého z nich a páčením malým šroubovákem. Jakmile je odstraněn, lze otvory vyčistit pro opětovnou montáž pomocí odpájkovacího opletu nebo opětovného vrtání asi 0,8 mm bitem.

Úpravou je odstranění stávajícího kondenzátoru AGC C4 a jeho nahrazení kondenzátorem 0,22uF. To zrychluje reakci AGC přibližně 10krát. Nemá žádný škodlivý vliv na výkon přijímače. Na obrázku ukazuji řez stopy a odkaz skrz tuto stopu z kondenzátoru AGC. To není nutné, ale dává bod AGC k dispozici na podložce mimo stínící plechovku pod krystalem pro případ, že by někdo chtěl přidat další kapacitu zpět. To jsem nepotřeboval. Screening pak lze vyměnit.

Pokud používáte jednotku WL301-341 RX, pak to ukazuje fotografie se zvýrazněným kondenzátorem AGC. Zobrazen je také pin signálu RSSI. To ve skutečnosti s ničím nesouvisí. Stačí připojit jemný vodič přímo na kolík. Alternativně jsou dva centrální propojovací kolíky spojeny dohromady a oba nesou datový výstup. Stopy mezi nimi lze přerušit a poté propojit RSSI s náhradním, aby byl signál RSSI dostupný na propojovacím výstupu.

Krok 4: Konstrukce

Konstrukce
Konstrukce
Konstrukce
Konstrukce
Konstrukce
Konstrukce
Konstrukce
Konstrukce

Mimo modul ESP-12 je potřeba asi 10 komponent. Ty mohou být vytvořeny a spojeny na kusu prototypové desky. Použil jsem prototypovací desku specifickou pro ESP, kterou jsem použil k montáži regulátoru a dalších komponent smd. To se připevňuje přímo na modul ESP-12.

Krabice, kterou jsem použil, je 3D tištěný design se 3 zářezy v základně, aby se vzal přijímač, displej a modul esp. Má výřez pro displej a otvory pro nabíjecí bod a tlačítko, které by mělo být vloženo a zajištěno malým množstvím poxy pryskyřice.

Pro připojení mezi 3 moduly, nabíjecím bodem a tlačítky jsem použil připojovací vodič. a poté je zajistěte na místě pomocí oboustranné pásky pro ESP a přijímač a malých kapek epoxidu, které drží boky displeje na svém místě. Baterie je připojena k nabíjecímu bodu a připevněna na horní část přijímače pomocí oboustranné pásky.

Krok 5: Software a konfigurace

Software je postaven v prostředí Arduino.

Zdrojový kód je k dispozici na adrese https://github.com/roberttidey/RF433Analyser Kód může mít některé konstanty pro hesla změněné z bezpečnostních důvodů před jejich kompilací a flashováním do zařízení ES8266.

  • WM_PASSWORD definuje heslo používané wifiManagerem při konfiguraci zařízení do místní wifi sítě
  • update_password definuje heslo používané k povolení aktualizací firmwaru.

Při prvním použití přejde zařízení do režimu konfigurace wifi. Pomocí telefonu nebo tabletu se připojte k přístupovému bodu nastavenému zařízením a poté přejděte na adresu 192.168.4.1. Odtud můžete vybrat místní wifi síť a zadat její heslo. To je třeba provést pouze jednou nebo při změně sítí Wi -Fi nebo hesel.

Jakmile se zařízení připojí k místní síti, bude poslouchat příkazy. Za předpokladu, že jeho IP adresa je 192.168.0.100, pak nejprve použijte 192.168.0.100:AP_PORT/upload k nahrání souborů do datové složky. To pak umožní 192.168.0.100/edit prohlížet a nahrávat další soubory a také umožní 192.168.0.100 přístup k uživatelskému rozhraní.

Body, které je třeba poznamenat v softwaru, jsou

  • ADC v ESP8266 lze kalibrovat, aby se zlepšila jeho přesnost. Řetězec v konfiguračním souboru nastavuje dosažené prvotní hodnoty pro dvě vstupní napětí. To není nijak zvlášť důležité, protože RSSI je poměrně relativní signál v závislosti na anténě atd.
  • Napětí RSSI na db je přiměřeně lineární, ale křivky v extrémech. Software má kubický tvar pro zlepšení přesnosti.
  • Většina aritmetiky se provádí pomocí škálovaných celých čísel, takže hodnoty RSSI jsou ve skutečnosti 100krát vyšší než skutečné. Hodnoty zapsané do souborů nebo zobrazené jsou převedeny zpět.
  • Software používá jednoduchý stavový stroj k řízení snímání RSSI a datových přechodů.
  • Datové přechody jsou monitorovány pomocí rutiny služby přerušení. Normální zpracování smyčky Arduino je během sběru dat pozastaveno a hlídací pes je lokálně udržován naživu. To se má snažit zlepšit latenci přerušení, aby měření časování byla co nejvěrnější.

Konfigurace

To je uloženo v souboru esp433Config.txt.

Pro zachytávání RSSI lze nastavit interval vzorkování a dobu trvání.

Pro sběr dat lze nastavit úroveň spouštění RSSI, počet přechodů a maximální dobu trvání. Vhodná spouštěcí úroveň je asi +20 dB na pozadí bez úrovně signálu. Řetězec pulseWidths také umožňuje jednoduchou kategorizaci šířek impulzů, aby byla analýza jednodušší. Každý zaznamenaný řádek má pulseLevel, width v micorseconds a kód, který je indexem v řetězci pulseWidths, který je větší než naměřená šířka.

CalString může zlepšit přesnost ADC.

idleTimeout řídí počet milisekund nečinnosti (žádná zachycení), než se zařízení automaticky vypne. Nastavení na 0 znamená, že časový limit vyprší.

Nastavení tří tlačítek určuje, co rozlišuje krátké střední a dlouhé stisknutí tlačítka.

displayUpdate udává interval aktualizace místního zobrazení.

Krok 6: Použití

Jednotka se zapíná krátkým stisknutím tlačítka.

Displej nejprve na několik sekund zobrazí místní IP adresu, než začne v reálném čase zobrazovat úroveň RSSI.

Krátké stisknutí tlačítka zahájí zachytávání RSSI do souboru. Normálně to skončí, když doba trvání RSSI skončí, ale další krátké stisknutí také ukončí snímání.

Stisknutím středního tlačítka zahájíte sběr datového přechodu. Na obrazovce se zobrazí čekání na spuštění. Když RSSI přejde nad úroveň spouštění, začne zachytávat časované datové přechody pro zadaný počet přechodů.

Podržíte -li tlačítko déle než dlouho, jednotka se vypne.

Příkazy pro zachycení lze také spustit z webového rozhraní.

Krok 7: Webové rozhraní

Webové rozhraní
Webové rozhraní
Webové rozhraní
Webové rozhraní

Přístup k zařízení pomocí jeho IP adresy zobrazuje webové rozhraní se 3 záložkami; Zachycení, stav a konfigurace.

Obrazovka zachycení zobrazuje aktuálně zachycené soubory. Obsah souboru lze zobrazit kliknutím na jeho název. U každého souboru jsou také tlačítka pro odstranění a stažení.

K zahájení snímání lze také použít tlačítka pro zachycení RSSI a sběr dat. Je -li zadán název souboru, bude použit, jinak bude vygenerován výchozí název.

Karta config zobrazuje aktuální konfiguraci a umožňuje měnit a ukládat hodnoty svalu.

Webové rozhraní podporuje následující volání

/edit - přístup k systému evidence zařízení; lze použít ke stahování souborů Files

  • /status - vrátí řetězec obsahující podrobnosti o stavu
  • /loadconfig -vrátit řetězec obsahující podrobnosti o konfiguraci
  • /saveconfig - odešlete a uložte řetězec pro aktualizaci konfigurace
  • /loadcapture - vrátí řetězec obsahující míry ze souborů
  • /setmeasureindex - změňte index, který bude použit pro další měření
  • /getcapturefiles - získáte řetězec se seznamem dostupných souborů měr
  • /zachytit - spustí zachycení RSSI nebo dat
  • /firmware - zahájení aktualizace firmwaru

Doporučuje: