Tartalomjegyzék:

RF433 elemző: 7 lépés
RF433 elemző: 7 lépés

Videó: RF433 elemző: 7 lépés

Videó: RF433 elemző: 7 lépés
Videó: Даже без интернета - работает! Переключатель с Wi-Fi и RF 433 МГц от MOES 2024, Július
Anonim
RF433 elemző
RF433 elemző
RF433 elemző
RF433 elemző

Ez az utasítás egy mérőeszközt hoz létre, amely segít elemezni az 433 MHz -es RF adásokat, amelyeket általában használnak a kis teljesítményű távoli kommunikációhoz az otthoni automatizálásban és az érzékelőkben. Valószínűleg könnyen módosítható az egyes országokban használt 315 MHz -es adások működésére. Ez az RXB6 315 MHz -es verzióját használja a jelenlegi 433 MHz -es verzió helyett.

A hangszer célja kettős. Először is, rendelkezik egy térerősség -mérővel (RSSI), amellyel megvizsgálható az ingatlan körüli lefedettség, és megtalálhatók a fekete foltok. Másodszor, képes tiszta adatokat rögzíteni az adókból, hogy könnyebben elemezze a különböző eszközök által használt adatokat és protokollokat. Ez akkor hasznos, ha meglévő egységekhez kompatibilis kiegészítőket tervez. Általában az adatgyűjtést bonyolítja a vevőkben lévő háttérzaj, amely sok hamis átmenetet eredményez, és megnehezíti a valódi átvitel felderítését.

A készülék RXB6 szuperhetes vevőt használ. Ez a Synoxo-SYN500R vevő chipet használja, amely RSSI analóg kimenettel rendelkezik. Ez gyakorlatilag az AGC jel pufferelt változata, amely a vevő erősítésének szabályozására szolgál, és tág tartományban ad jelerősséget.

A vevőegységet egy ESP8266 (ESP-12F) modul figyeli, amely átalakítja az RSSI jelet. Egy kis helyi OLED kijelzőt (SSD1306) is meghajt. Az elektronika adatátviteli időzítési információkat is rögzíthet.

A rögzítés helyileg indítható a készüléken található gomb segítségével. A rögzített adatokat fájlokba mentik későbbi elemzés céljából.

Az ESP12 modul egy webszervert futtat, hogy hozzáférést biztosítson a fájlokhoz, és innen is elindíthatók a rögzítések.

A készüléket egy kis, újratölthető LIPO akkumulátor táplálja. Ez ésszerű működési időt biztosít, és az elektronika alacsony nyugalmi árammal rendelkezik, amikor nincs használatban.

1. lépés: Szükséges alkatrészek és eszközök

Fontos jegyzet:

Azt találtam, hogy néhány RXB6 433Mhz vevőegység nem működik RSSI kimenettel, annak ellenére, hogy az AGC és a többi funkció rendben van. Gyanítom, hogy néhány klón Syn500R chipet használnak. Azt tapasztaltam, hogy a WL301-341 címkével ellátott vevőkészülékek Syn5500R kompatibilis chipet használnak, és az RSSI működőképes. Előnyük továbbá, hogy nem használnak árnyékolást, ami megkönnyíti az AGC kondenzátor módosítását. Javaslom ezeknek az egységeknek a használatát.

A következő komponensekre van szükség

ESP-12F wifi modul

  • 3.3V szabályozó xc6203
  • 220uF 6V kondenzátor
  • 2 schottky dióda
  • 6 mm -es nyomógomb
  • n csatorna MOSFET pl. AO3400
  • p csatorna MOSFET pl. AO3401
  • ellenállások 2x4k7, 3 x 100K, 1 x 470K
  • kis darab prototípus -tábla
  • RXB6 vagy WL301-341 szuperhegyes 433 MHz-es vevő
  • SSD1306 0,96 OLED kijelző (egyszínű SPI verzió)
  • LIPO akkumulátor 802030 400mAh
  • 3 tűs csatlakozó a töltéshez
  • Csatlakoztassa a vezetéket
  • Zománcozott rézhuzal önfolyó
  • Epoxi gyantával
  • Kétoldalú ragasztó
  • 3D nyomtatott ház

Szükséges eszközök

  • Finompontú forrasztópáka
  • Forrasztó fonat
  • Csipesz
  • Fogó

2. lépés: Vázlatos

Vázlatos
Vázlatos

Az áramkör meglehetősen egyszerű.

Az LDO 3.3V szabályozó átalakítja a LIP-t 3.3V-ra, amelyre az ESP-12F modulnak szüksége van.

Az áramellátást a kijelző és a vevő is két kapcsoló MOSFET -en keresztül biztosítja, így azok kikapcsolt állapotban vannak, amikor az ESP modul alszik.

A gomb elindítja a rendszert úgy, hogy 3.3V -ot táplál az ESP8266 EN bemenetére. A GPIO5 ezt fenntartja, amíg a modul aktív. A gomb a GPIO12 használatával is felügyelhető. A GPIO5 elengedésekor az EN eltávolításra kerül, és a készülék leáll.

A vevő adatátviteli vonalát a GPIO4 figyeli. Az RSSI jelet az AGC 2: 1 potenciálosztón keresztül figyeli.

Az SSD1306 kijelző 5 SPIO jelből álló SPI -n keresztül vezérelhető. Lehetséges az I2C verzió használata, de ehhez szükség lesz a használt könyvtár megváltoztatására és a GPIO egy részének újratelepítésére.

3. lépés: A vevő módosítása

Vevő módosítása
Vevő módosítása
Vevő módosítása
Vevő módosítása
Vevő módosítása
Vevő módosítása

A mellékelt RXB6 nem teszi elérhetővé az RSSI jelet a külső adatcsapokon.

Egy egyszerű módosítás lehetővé teszi ezt. Az egység DER jelcsatlakozója valójában csak az adatjel jel ismétlése. Az R6 jelzésű 0 ohmos ellenálláson keresztül vannak összekötve. Ezt forrasztópáka segítségével kell eltávolítani. Az R7 feliratú összetevőt most össze kell kapcsolni. A felső vége valójában az RSSI jel, az alsó pedig a DER csatlakozóhoz megy. Lehet használni egy 0 ohmos ellenállást, de csak egy kis vezetékkel kapcsoltam össze. Ezek a helyek a fémszűrő dobozon kívül is elérhetők, és ezt a módosítást nem kell eltávolítani.

A módosítás tesztelhető úgy, hogy a DER és GND feszültségmérőt csatlakoztatja a vevőegység bekapcsolt állapotába. Körülbelül 0,4 V (nincs fogadott áram) és körülbelül 1,8 V közötti feszültséget mutat, 433 MHz helyi forrással (például távirányítóval).

A második módosítás nem feltétlenül szükséges, de nagyon kívánatos. A mellékelt vevőkészülék AGC válaszideje meglehetősen lassú, és több száz milliszekundumot vesz igénybe, hogy válaszoljon a vett jelre. Ez csökkenti az időfelbontást az RSSI rögzítések során, és kevésbé reagál arra, hogy az RSSI -t az adatgyűjtés kiváltó okaként használja.

Egyetlen kondenzátor szabályozza az AGC válaszidejét, de sajnos a fémszűrő doboz alatt található. Valójában meglehetősen könnyű eltávolítani a szűrőedényt, mivel csak 3 füle tartja, és felbecsülhető, ha mindegyiket felmelegíti, és egy kis csavarhúzóval felemeli. A leszerelés után a forrasztófonat használatával vagy körülbelül 0,8 mm-es fúróval tisztíthatja ki a lyukakat az összeszereléshez.

A módosítás lényege, hogy eltávolítjuk a meglévő C4 AGC kondenzátort, és kicseréljük egy 0,22uF kondenzátorra. Ez körülbelül 10 -szeresére gyorsítja az AGC választ. Nincs káros hatása a vevő teljesítményére. A képen egy vágásvonalat és egy linket mutatok az AGC kondenzátorból. Ez nem szükséges, de elérhetővé teszi az AGC pontot a kristály alatti rácsos konzervdobozon kívüli párnán arra az esetre, ha valaki további kapacitást szeretne hozzáadni. Ezt nem kellett megtennem. Ezután a szűrés cserélhető.

Ha a WL301-341 RX egységet használja, akkor a fénykép ezt mutatja, kiemelve az AGC kondenzátorral. Az RSSI jelcsap is látható. Ez valójában nem kapcsolódik semmihez. Csak egy finom vezetéket csatlakoztathat közvetlenül a csaphoz. Alternatív megoldásként a két központi áthidaló csap össze van kötve, és mindkettő hordozza az adatkimenetet. A köztük lévő nyomvonalat meg lehet vágni, majd az RSSI -t a tartalékhoz kapcsolni, hogy az RSSI jel elérhető legyen egy jumper kimeneten.

4. lépés: Építés

Építkezés
Építkezés
Építkezés
Építkezés
Építkezés
Építkezés
Építkezés
Építkezés

Az ESP-12 modulon kívül körülbelül 10 komponensre van szükség. Ezeket egy prototípus -táblán lehet elkészíteni és összekapcsolni. Egy ESP -specifikus prototípus -táblát használtam, amellyel megkönnyítettem a szabályozó és más smd -alkatrészek felszerelését. Ez közvetlenül az ESP-12 modul tetejére rögzíthető.

Az általam használt doboz egy 3D nyomtatott kivitel, 3 bemélyedéssel az alapon, hogy vegye a vevőt, a kijelzőt és az esp modult. Kivágással rendelkezik a kijelző számára, lyukakkal a töltési ponthoz és a nyomógombbal, amelyeket be kell helyezni és kis mennyiségű poxigyantával kell rögzíteni.

Csatlakozó vezetéket használtam a 3 modul, a töltőpont és a gombok közötti kapcsolatok létrehozásához. majd rögzítse őket a helyükre dupla oldalsó szalaggal az ESP és a vevőegység és kis csepp epoxi segítségével, hogy a kijelző oldalát a helyén tartsa. Az akkumulátor a töltési ponthoz van kötve, és kétoldalas szalaggal a vevő tetejére van szerelve.

5. lépés: Szoftver és konfiguráció

A szoftver Arduino környezetben készült.

Ennek forráskódja a következő címen található: https://github.com/roberttidey/RF433Analyser A kód a biztonsági okokból megváltoztathatja a jelszavak bizonyos állandóit, mielőtt összeállítaná és villogna az ES8266 eszközre.

  • A WM_PASSWORD határozza meg a wifiManager által használt jelszót, amikor az eszközt helyi wifi hálózatra konfigurálja
  • Az update_password a firmware -frissítések engedélyezéséhez használt jelszót határozza meg.

Az első használatkor az eszköz wifi konfigurációs módba lép. Telefon vagy táblagép segítségével csatlakozzon az eszköz által beállított hozzáférési ponthoz, majd keresse meg a 192.168.4.1 címet. Itt kiválaszthatja a helyi wifi hálózatot, és megadhatja annak jelszavát. Ezt csak egyszer kell elvégezni, vagy ha megváltoztatja a wifi hálózatokat vagy jelszavakat.

Miután az eszköz csatlakozott a helyi hálózathoz, meghallgatja a parancsokat. Ha feltételezzük, hogy az IP -címe 192.168.0.100, akkor először használja a 192.168.0.100:AP_PORT/upload fájlt az adatmappába. Ez lehetővé teszi a 192.168.0.100/edit számára további fájlok megtekintését és feltöltését, valamint a 192.168.0.100 elérését a felhasználói felülethez.

A szoftverben fontos megjegyezni

  • Az ESP8266 ADC kalibrálható a pontosság javítása érdekében. A konfigurációs fájlban lévő karakterlánc két bemeneti feszültséghez állítja be az elért nyers értékeket. Ez nem különösebben fontos, mivel az RSSI meglehetősen relatív jel az antennától stb.
  • Az RSSI feszültség db -ig ésszerűen lineáris, de a szélsőségeken görbül. A szoftver köbös illeszkedéssel rendelkezik a pontosság javítása érdekében.
  • Az aritmetika nagy része skálázott egész számokat használ, így az RSSI értékek valójában 100 -szorosa a ténylegesnek. A fájlokba írt vagy megjelenített értékek vissza lesznek konvertálva.
  • A szoftver egy egyszerű állapotgépet használ az RSSI rögzítésének és az adatátmeneteknek a vezérlésére.
  • Az adatátmeneteket egy megszakítási szolgáltatási rutin segítségével figyelik. A normál Arduino hurokfeldolgozás felfüggesztésre kerül az adatgyűjtés során, és a felügyelet helyben életben marad. Ennek célja a megszakítási késleltetés javítása, hogy az időzítési mérések a lehető leghűségesebbek maradjanak.

Konfiguráció

Ezt az esp433Config.txt tartalmazza.

Az RSSI rögzítéshez beállítható a mintavételi intervallum és időtartam.

Az adatgyűjtéshez beállítható az RSSI trigger szint, az átmenetek száma és a maximális időtartam. A megfelelő trigger szint körülbelül +20dB a háttérben nincs jelszint. A pulseWidths karakterlánc az impulzusszélességek egyszerű kategorizálását is lehetővé teszi az elemzés megkönnyítése érdekében. Minden naplózott sor tartalmaz pulseLevel, szélességet mikroszekundumokban és a kódot, amely a pulseWidths karakterlánc indexe, amely nagyobb, mint a mért szélesség.

A CalString javíthatja az ADC pontosságát.

Az idleTimeout szabályozza az inaktivitás ezredmásodperceinek számát (nincs rögzítés), mielőtt az eszköz automatikusan leáll. Ha 0 -ra állítja, az nem fog időtúllépni.

A három gombbeállítás határozza meg, hogy mi különbözteti meg a rövid, közepes és hosszú gombnyomásokat.

A displayUpdate megadja a helyi kijelző frissítési időközét.

6. lépés: Használat

A készülék a gomb rövid megnyomásával kapcsolható be.

A kijelző kezdetben néhány másodpercig megjeleníti a helyi IP -címet, mielőtt elkezdi valós időben megjeleníteni az RSSI -szintet.

A gomb rövid megnyomása RSSI rögzítést kezdeményez a fájlba. Ez általában akkor fejeződik be, amikor az RSSI időtartama véget ért, de a gomb további rövid megnyomása szintén leállítja a rögzítést.

A közepes gomb megnyomása kezdeményezi az adatátmenet rögzítését. A képernyőn megjelenik a kivárásra vár. Amikor az RSSI meghaladja a trigger szintet, akkor elkezdi rögzíteni az időzített adatátmeneteket a megadott számú átmenethez.

Ha a gombot hosszabb ideig tartja lenyomva, mint a gomb hosszú ideig tartó kikapcsolása, a készülék kikapcsol.

A rögzítési parancsok a webes felületről is kezdeményezhetők.

7. lépés: Webes felület

Webes felület
Webes felület
Webes felület
Webes felület

Az eszköz IP -címéről való elérése egy weblapot jelenít meg 3 lappal; Rögzítés, állapot és konfiguráció.

A rögzítési képernyő az aktuálisan rögzített fájlokat mutatja. A fájl tartalmát a nevére kattintva lehet megjeleníteni. Minden fájlhoz törlés és letöltés gombok is tartoznak.

Vannak RSSI rögzítési és adatrögzítési gombok is, amelyek felhasználhatók a rögzítés kezdeményezéséhez. Ha egy fájlnevet ad meg, akkor azt használja, különben alapértelmezett név jön létre.

A konfiguráció fül az aktuális konfigurációt mutatja, és lehetővé teszi az értékek módosítását és mentését.

A webes felület a következő hívásokat támogatja

/edit - az eszköz fájlrendszerének elérése; használható intézkedések letöltésére Fájlok

  • /status - állapotadatokat tartalmazó karakterláncot ad vissza
  • /loadconfig -adja vissza a konfigurációs adatokat tartalmazó karakterláncot
  • /saveconfig - karakterlánc küldése és mentése a konfiguráció frissítéséhez
  • /loadcapture - egy fájlból származó mértékeket tartalmazó karakterláncot ad vissza
  • /setmeasureindex - a következő méréshez használt index módosítása
  • /getcapturefiles - szerezzen be egy karakterláncot a rendelkezésre álló mértékfájlok listájával
  • /capture - RSSI vagy adatok rögzítésének kiváltása
  • /firmware - a firmware frissítésének kezdeményezése

Ajánlott: