Sadržaj:

RF433Analyser: 7 koraka
RF433Analyser: 7 koraka

Video: RF433Analyser: 7 koraka

Video: RF433Analyser: 7 koraka
Video: Как я стал русским | Серия 5 - 8 2024, Juli
Anonim
RF433Analyser
RF433Analyser
RF433Analyser
RF433Analyser

Ova instrukcija stvara mjerni instrument za analizu RF 433MHz prijenosa koji se obično koriste za daljinsku komunikaciju male snage u kućnoj automatizaciji i senzorima. Vjerojatno bi se mogao lako izmijeniti za rad na prijenosima od 315 MHz koji se koriste u nekim zemljama. To bi bilo korištenjem 315MHz verzije RXB6 umjesto trenutne 433MHz.

Svrha instrumenta je dvostruka. Prvo, on pruža mjerač jačine signala (RSSI) koji se može koristiti za ispitivanje pokrivenosti oko nekretnine i pronalaženje bilo kakvih crnih mrlja. Drugo, može snimiti čiste podatke s odašiljača kako bi se omogućila lakša analiza podataka i protokola koje koriste različiti uređaji. Ovo je korisno ako pokušavate dizajnirati kompatibilne dodatke postojećim jedinicama. Uobičajeno je hvatanje podataka komplicirano pozadinskom bukom prisutnom u prijemnicima koja proizvodi mnogo lažnih prijelaza i otežava otkrivanje pravih prijenosa.

Uređaj koristi RXB6 superhet prijemnik. Ovdje se koristi prijemnički čip Synoxo-SYN500R koji ima RSSI analogni izlaz. Ovo je zapravo međuspremnička verzija AGC signala koja se koristi za kontrolu pojačanja prijemnika i daje jačinu signala u širokom rasponu.

Prijemnik se nadzire pomoću ESP8266 (ESP-12F) modula koji pretvara RSSI signal. Takođe pokreće mali lokalni OLED ekran (SSD1306). Elektronika također može snimiti vremenske informacije o prijelazima podataka.

Snimanje se može pokrenuti lokalno pomoću dugmeta na jedinici. Uhvaćeni podaci se spremaju u datoteke za kasniju analizu.

ESP12 modul pokreće web poslužitelj za pristup datotekama i snimke se također mogu pokrenuti odavde.

Instrument se napaja iz male LIPO punjive baterije. To daje razumno vrijeme rada, a elektronika ima nisku struju mirovanja kada se ne koristi.

Korak 1: Potrebne komponente i alati

Važna napomena:

Otkrio sam da neki prijemnici RXB6 433Mhz imaju neispravan RSSI izlaz iako je AGC i ostatak funkcionalnosti u redu. Pretpostavljam da se možda koriste neki klonirani čipovi Syn500R. Otkrio sam da prijemnici označeni kao WL301-341 koriste čip kompatibilan sa Syn5500R i da je RSSI funkcionalan. Prednost im je i to što ne koriste zaštitnu limenku što olakšava izmjenu AGC kondenzatora. Preporučio bih korištenje ovih jedinica.

Potrebne su sledeće komponente

ESP-12F WiFi modul

  • 3.3V regulator xc6203
  • 220uF 6V kondenzator
  • 2 schottky diode
  • 6mm dugme
  • n kanal MOSFET npr. AO3400
  • p kanal MOSFET npr. AO3401
  • otpornici 2x4k7, 3 x 100K, 1 x 470K
  • mali komad ploče za izradu prototipova
  • RXB6 ili WL301-341 superhet prijemnik na 433MHz
  • SSD1306 0.96 OLED ekran (jednobojna SPI verzija)
  • LIPO baterija 802030 400mAh
  • 3 -pinski konektor za punjenje
  • Priključite žicu
  • Emajlirana bakrena žica koja se samoteče
  • Epoksidna smola
  • Dvostrana traka
  • 3D štampano kućište

Potrebni alati

  • Lemilica sa finim vrhom
  • Desolder pletenica
  • Pinceta
  • Kliješta

Korak 2: Shema

Shematski
Shematski

Krug je prilično jednostavan.

LDO 3.3V regulator pretvara LIP u 3.3V potreban modulu ESP-12F.

Napajanje se napaja i na zaslon i na prijemnik putem dva prekidačka MOSFET -a tako da su isključeni dok ESP modul spava.

Dugme pokreće sistem napajanjem 3.3V na EN ulaz ESP8266. GPIO5 to zatim podržava dok je modul aktivan. Dugme se takođe nadgleda pomoću GPIO12. Kada se GPIO5 pusti, EN se uklanja i jedinica se isključuje.

Liniju za podatke sa prijemnika nadzire GPIO4. RSSI signal prati AGC putem razdjelnika potencijala 2: 1.

Zaslonom SSD1306 upravlja se putem SPI -a koji se sastoji od 5 GPIO signala. Možda je moguće koristiti I2C verziju, ali to će zahtijevati promjenu korištene biblioteke i ponovno mapiranje dijela GPIO -a.

Korak 3: Modifikacija prijemnika

Modifikacija prijemnika
Modifikacija prijemnika
Modifikacija prijemnika
Modifikacija prijemnika
Modifikacija prijemnika
Modifikacija prijemnika

Kako je isporučen, RXB6 ne čini RSSI signal dostupnim na svojim vanjskim pinovima za podatke.

Jednostavna izmjena to omogućuje. Konektor signala DER na jedinici zapravo je samo ponavljanje signala signala podataka. Ožičeni su zajedno kroz otpornik od 0 Ohma s oznakom R6. To se mora ukloniti pomoću lemilice. Komponenta s oznakom R7 sada se mora povezati preko. Gornji kraj je zapravo RSSI signal, a donji dio ide do DER konektora. Mogao bi se upotrijebiti otpornik od 0 ohma, ali ja sam ga samo povezao sa žicom. Ove lokacije su dostupne izvan metalne kante za prosijavanje koju nije potrebno uklanjati za ovu izmjenu.

Modifikacija se može testirati dodavanjem voltmetra preko DER i GND sa uključenim prijemnikom. Pokazat će napon između oko 0,4 V (nema primljene snage) i oko 1,8 V s lokalnim izvorom od 433 MHz (npr. Daljinski upravljač).

Druga izmjena nije apsolutno bitna, ali je poželjna. Kako je isporučeno, vrijeme odziva prijemnika AGC -a je postavljeno da bude prilično sporo, a potrebno je nekoliko stotina milisekundi da odgovori na primljeni signal. Ovo smanjuje vremensku rezoluciju tokom snimanja RSSI -ja, a također čini manje osjetljivim korištenje RSSI -a kao okidač za prikupljanje podataka.

Postoji jedan kondenzator koji kontrolira vrijeme odziva AGC -a, ali se, nažalost, nalazi ispod metalne zaštitne posude. Zapravo je prilično lako ukloniti zaštitnu limenku jer je drže samo 3 ušice, a može se cijeniti zagrijavanjem svakog od njih zauzvrat i podizanjem s malim odvijačem. Nakon uklanjanja mogu se očistiti rupe za ponovno sastavljanje upotrebom pletenice za lemljenje ili ponovnim bušenjem sa nastavkom od oko 0,8 mm.

Modifikacija je ukloniti postojeći AGC kondenzator C4 i zamijeniti ga kondenzatorom od 0,22uF. Ovo ubrzava odgovor AGC -a za oko 10 puta. To nema štetan utjecaj na performanse prijemnika. Na slici prikazujem isječak trake i vezu do nje sa AGC kondenzatora. To nije potrebno, ali čini AGC točku dostupnom na jastučiću izvan posude za filtriranje ispod kristala u slučaju da se želi ponovno dodati dodatni kapacitet. Nisam to morao učiniti. Skrining se tada može zamijeniti.

Ako koristite jedinicu WL301-341 RX, fotografija to pokazuje s istaknutim AGC kondenzatorom. RSSI signalni pin je takođe prikazan. Ovo zapravo nije povezano ni sa čim. Jednostavno možete spojiti finu žicu direktno na pin. Alternativno, dva središnja kratkospojnika su spojena zajedno i oba nose izlaz podataka. Trag između njih se može izrezati, a zatim RSSI povezati s rezervnim kako bi RSSI signal bio dostupan na kratkospojnom izlazu.

Korak 4: Konstrukcija

Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo

Izvan ESP-12 modula potrebno je oko 10 komponenti. Oni se mogu sastaviti i povezati na komad ploče za izradu prototipa. Koristio sam ESP specifičnu ploču za izradu prototipa koju sam koristio za olakšavanje montaže regulatora i drugih smd komponenti. Ovo se pričvršćuje direktno na vrh ESP-12 modula.

Kutija koju sam koristio je 3D štampani dizajn sa 3 udubljenja u bazi za prijem prijemnika, ekrana i esp modula. Ima izrez za zaslon i rupe za mjesto punjenja i gumb koji treba umetnuti i učvrstiti malom količinom smole.

Koristio sam spojnu žicu za povezivanje 3 modula, mjesta punjenja i tipki. a zatim ih učvrsti pomoću dvostrane trake za ESP i prijemnik i malih kapi epoksida za držanje stranica ekrana na mjestu. Baterija je ožičena do mjesta punjenja i montirana na vrh prijemnika pomoću dvostrane trake.

Korak 5: Softver i konfiguracija

Softver je izgrađen u Arduino okruženju.

Izvorni kod za ovo nalazi se na https://github.com/roberttidey/RF433Analyser Kod može imati neke konstante za lozinke promijenjene iz sigurnosnih razloga prije nego što se prevede i prebaci na uređaj ES8266.

  • WM_PASSWORD definira lozinku koju koristi wifiManager pri konfiguriranju uređaja na lokalnu WiFi mrežu
  • update_password definira lozinku koja se koristi za dopuštanje ažuriranja firmvera.

Kada se prvi put koristi, uređaj ulazi u način rada za konfiguraciju WiFi mreže. Pomoću telefona ili tableta povežite se s pristupnom tačkom koju je postavio uređaj, a zatim prijeđite na 192.168.4.1. Odavde možete odabrati lokalnu WiFi mrežu i unijeti njezinu lozinku. To je potrebno učiniti samo jednom ili ako promijenite WiFi mreže ili lozinke.

Nakon što se uređaj poveže s lokalnom mrežom, slušat će naredbe. Pretpostavimo da je njegova IP adresa 192.168.0.100, a zatim prvo upotrijebite 192.168.0.100:AP_PORT/upload za postavljanje datoteka u mapu s podacima. Ovo će tada omogućiti 192.168.0.100/edit da pregleda i otpremi dodatne datoteke, a takođe će omogućiti i 192.168.0.100 da pristupi korisničkom interfejsu.

Tačke na koje treba obratiti pažnju u softveru su

  • ADC u ESP8266 može se kalibrirati radi poboljšanja njegove točnosti. Niz u konfiguracionoj datoteci postavlja postignute neobrađene vrednosti za dva ulazna napona. To nije osobito važno jer je RSSI relativno relativan signal ovisno o anteni itd.
  • RSSI napon na db je relativno linearan, ali je krivulja na ekstremima. Softver ima kubični oblik za poboljšanje točnosti.
  • Većina aritmetike radi se pomoću skaliranih cijelih brojeva pa su RSSI vrijednosti zapravo 100 puta veće od stvarnih. Vrijednosti zapisane u datoteke ili prikazane vraćaju se nazad.
  • Softver koristi jednostavnu mašinu stanja za kontrolu hvatanja RSSI -a i prijelaza podataka.
  • Prijelazi podataka se prate pomoću rutine servisa prekida. Uobičajena obrada Arduino petlje obustavljena je tijekom snimanja podataka, a čuvar lokalno održava u životu. Ovo je pokušaj poboljšanja latencije prekida kako bi mjerenje vremena bilo što vjernije.

Konfiguracija

Ovo se čuva u esp433Config.txt.

Za RSSI snimanje mogu se postaviti interval uzorkovanja i trajanje.

Za prikupljanje podataka može se postaviti nivo okidača RSSI, broj prijelaza i maksimalno trajanje. Odgovarajući nivo okidača je oko +20dB u pozadini bez nivoa signala. Niz pulseWidths takođe omogućava jednostavnu kategorizaciju širine impulsa radi lakše analize. Svaka evidentirana linija ima pulseLevel, širinu u mikroskundama i kôd koji je indeks u nizu pulseWidths koji je veći od izmjerene širine.

CalString može poboljšati preciznost ADC -a.

idleTimeout kontrolira broj milisekundi neaktivnosti (bez snimanja) prije nego što se uređaj automatski isključi. Postavljanje na 0 znači da neće isteći.

Tri postavke gumba kontroliraju ono što razlikuje kratke srednje i duge pritiske tipki.

displayUpdate daje interval osvježavanja lokalnog ekrana.

Korak 6: Upotreba

Uređaj se uključuje kratkim pritiskom na dugme.

Na ekranu će se u početku prikazati lokalna IP adresa nekoliko sekundi prije nego što počne prikazivati RSSI nivo u stvarnom vremenu.

Kratkim pritiskom na dugme započet će RSSI snimanje u datoteku. Obično će ovo prestati nakon što trajanje RSSI -ja završi, ali daljnje kratko pritiskanje tipke također će prekinuti snimanje.

Pritiskom srednje tipke započet će snimanje prijelaza podataka. Na ekranu će se prikazati čekanje na okidač. Kada RSSI pređe nivo okidača, tada će početi bilježiti vremenski usklađene prijelaze podataka za navedeni broj prijelaza.

Držanje dugmeta duže od dugmeta će isključiti uređaj.

Naredbe za snimanje se također mogu pokrenuti s web sučelja.

Korak 7: Web sučelje

Web interfejs
Web interfejs
Web interfejs
Web interfejs

Pristup uređaju putem njegove IP adrese prikazuje web sučelje s 3 kartice; Hvatanje, status i konfiguracija.

Ekran za snimanje prikazuje trenutno snimljene datoteke. Sadržaj datoteke može se prikazati klikom na njeno ime. Za svaku datoteku postoje i dugmad za brisanje i preuzimanje.

Postoje i gumbi za snimanje RSSI -a i podaci za snimanje koji se mogu koristiti za pokretanje snimanja. Ako je dato ime datoteke, ono će se koristiti u suprotnom će se generirati zadano ime.

Kartica config prikazuje trenutnu konfiguraciju i dopušta promjenu i spremanje svalue.

Web interfejs podržava sledeće pozive

/uredi - pristupi sistemu arhiviranja uređaja; mogu se koristiti za preuzimanje datoteka datoteka

  • /status - vraća niz koji sadrži detalje o statusu
  • /loadconfig -vraća niz koji sadrži detalje o konfiguraciji
  • /saveconfig - pošaljite i sačuvajte niz za ažuriranje konfiguracije
  • /loadcapture - vraća niz koji sadrži mjere iz datoteka
  • /setmeasureindex - promijenite indeks koji će se koristiti za sljedeću mjeru
  • /getcapturefiles - nabavite niz sa spiskom dostupnih datoteka mera
  • /hvatanje - pokreće hvatanje RSSI -ja ili podataka
  • /firmware - pokretanje ažuriranja firmvera

Preporučuje se: