Sadržaj:

Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na brodu: 6 koraka
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na brodu: 6 koraka

Video: Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na brodu: 6 koraka

Video: Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na brodu: 6 koraka
Video: Radio stanice GARMIN VHF 100i i VHF 200i 2024, Novembar
Anonim
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na ploči

Ažuriranje 9. januara 2021. - Dodana dodatna TCP veza i ponovna upotreba posljednje veze ako se poveže više klijenata. Ažuriranje 13. prosinca 2020. - Dodana nije konfiguracijska verzija koda za brodove s postojećim usmjerivačima

Uvod

Ovaj NMEA / AIS RS232 prema WiFi most zasnovan je na ESP8266-01 WiFi štitu. AIS je automatski sustav identifikacije koji prikazuje položaj obližnjih brodova. NMEA 0183 je standard Nacionalnog udruženja pomorske elektronike koji se koristi za GPS poruke.

Most RS232 prema WiFi je izmijenjen iz ESP8266-01 WiFi štita za napajanje 12V baterijom i prihvaća RS232 ulaz (+/- 15V) i stvara lokalnu mrežu koja emitira podatke putem TCP-a i UDP-a. Razvijen je zajedno s Joom koji je želio pokrenuti jeftinu i jednostavnu samostalnu lokalnu mrežu za pristup podacima svojih AIS -a s bilo kojeg mjesta na jahti. Ovaj rezultirajući modul stvara pristupnu točku (usmjerivač) i postavlja TCP poslužitelj za do 4 veze, a također emitira podatke na UDP grupi za emitiranje. Konfiguracijska web stranica omogućuje postavljanje brojeva TCP i UDP portova, WiFi Tx snagu i dolaznu brzinu prijenosa RS232. Za razliku od WiFi Shield -a, nema konfiguracijskog gumba, pa se nakon izgradnje modul može potpuno zatvoriti vodom. Uključeni su zaštitni krugovi kako bi ovaj uređaj bio robustan protiv pogrešnog ožičenja. Iako je dizajniran imajući na umu NMEA (GPS) i AIS, modul će rukovati svim RS232 podacima sa brzinama prijenosa između 4800 i 38400 (i drugima uređivanjem Arduino skice).

Karakteristike

  • Koristi jeftin i lako dostupan modul ESP8266-01:- Mogu se koristiti i drugi moduli ESP8266
  • Robustan:- Krug ima ugrađene brojne zaštite radi zaštite od grešaka prilikom povezivanja.
  • Učinkovitost napajanja:- Napajanje iz DC-DC pretvarača učinkovito napaja jedinicu iz 12V baterije, a WiFi Tx snaga može se smanjiti radi uštede energije.
  • Jednostavan za upotrebu:- Samo spojite napajanje od 5,5 V na 12 V i RS232 TX liniju, a zatim spojite prijemnik na mrežu i povežite se s TCP ili UDP uslugom za prijem podataka. Može se brzo zamijeniti rezervnom ako jedinica otkaže
  • Jednostavno konfiguriranje:- Nije potrebno ponovno programiranje, nema posebnog načina konfiguracije. Na raspolaganju je stranica za konfiguraciju koja vam omogućuje postavljanje brzine prijenosa RS232 i snage prijenosa WiFi -a te brojeva portova za TCP i UDP poslužitelje
  • Opcionalno Nema verzije konfiguracije:- Postoji i druga skica na kojoj je sva konfiguracija unaprijed programirana. Ovo je za situacije u kojima već radi lokalna mreža sa vlastitim usmjerivačem (pristupna točka)

Potrošni materijal:

Za ovaj ESP8266-01 RS232 do WiFi most potrebni su sljedeći dijelovi ili slično. Ovdje prikazane cijene su u kolovozu 2020. i isključuju troškove dostave i neku vrstu plastičnog kućišta:-

WiFi modul ESP8266-01-~ 1,50 USD na mreži (iskoristite priliku) ILI za pouzdan proizvod SparkFun ESP8266-01-6,95 USD

MPM3610 3.3V Buck pretvarač Adafruit-5,95 USD 5V do 21V ulaz, ILI DC-DC 3A Buck Modul za opskrbu napajanjem na mreži Aliexpress ~ US2,00

Element zaglavlja s 10 pinova14-0,40 USD (ili terminalna traka sa 28 pinova zaglavlja od Jaycar AU 0,95 USD)

1 off 1N5711 Schottky Diode Digikey 1,15 USD (ili Jaycar AU 1,60 USD)

2 isključena 1N4001 diode SparkFun 0,30 USD (ili 1N4004 Jaycar AU 1,00 USD) Bilo koja 1A 50V ili veća dioda će raditi, npr. 1N4001, 1N4002, 1N4003, 1N4004

1 isključeno 2N3904 NPN tranzistor SparkFun 0,50 USD (ili Jaycar AU 0,75 USD bilo koji NPN opće namjene sa Vce> 40V, Hfe> 50 na 1mA, Ic> 50mA npr. BC546, BC547, BC548, BC549, BC550, 2N2222

6 x 3K3 otpornici npr. 3K3 otpornici - Digikey - 0,60 USD (ili 3K3ohm 1/2 W 1% metalni filmski otpornici - Pk.8 od Jaycar AU 0,85 USD)

3 isključeno otpornik 330R Element14 0,10 USD (ili 330 ohma 1/2 vata 1% metalni filmski otpornici - Pk.8 od Jaycar AU 0,85 USD)

1 off 10K otpornik Element14 0,05 USD (ili 10k Ohm 0,5 W otpornici od metalnog filma - paket od 8 od Jaycar AU 0,85 USD)

Vero ploča (karike i sabirnice) Jaycar HP9556 ILI (trakasti bakar) (trakasti bakar) npr. Jaycar HP9540 ~ 5,50 USD

i plastično kućište i žica za spajanje.

Ukupni troškovi ~ 9,90 USD + dostava i plastično kućište (od kolovoza 2020) koristeći Aliexpress ESP8266-01 i DC-DC modul ILI ~ 19,30 USD koristeći Sparkfun ESP8266-01 modul i Adafruit DC-DC pretvarač. Dovoljno jeftino da napravite par rezervnih dijelova.

Za programiranje RS232 na WiFi Bridge potreban vam je i USB na serijski kabel. Ovdje se koristi SparkFunov USB kabel za serijski kabel (10,95 USD) jer ima lijepo označene krajeve i ima podršku za upravljačke programe za širok raspon OS -a. Uključujući i programski kabel, cijena samo jednog RS232 do WiFi mosta iznosi ~ 20 do 24 USD (plus dostava i kofer).

Korak 1: Dijagram kola i zaštita kola

Shema kola i zaštita kola
Shema kola i zaštita kola

Gore je dijagram spoja za RS232 do WiFi most (pdf verzija). Ovo je prilagođeno iz ESP8266-01 Wifi Shield-a i modificirano tako da prihvaća RS232 i napajanje od 5V do 12V (baterija). Pretvarač istosmjerne struje u istosmjernu struju osigurava energetski efikasan rad iz baterije od 12 V za noćnu upotrebu kada nema solarne energije, a potrošnja energije je vrhunska.

U krug je ugrađeno nekoliko zaštitnih kola. Priključci na lijevoj strani kruga koriste se samo tijekom izgradnje za programiranje/otklanjanje pogrešaka jedinice. Otpornici 330R R6 i R7 štite od kratkog spoja TX izlaza na TX izlaz pri programiranju/otklanjanju grešaka. Prilikom programiranja povezujete TX na RX i RX na TX. TX izlaz za otklanjanje grešaka treba biti spojen na ulaz RX UART 3v3 da biste vidjeli izlaz za otklanjanje grešaka (pogledajte komentare na skici ESP8266_NMEA_BRIDGE.ino).

Priključci na desnoj strani kola koriste se za spajanje dovršene jedinice na napajanje i izvor NMEA/AIS RS232. Ovo su jedine veze koje moraju biti dostupne nakon izgradnje jedinice. Održavajte ove veze u parovima.

2N3904 pruža inverziju i prebacivanje nivoa sa RS232 +/- 15V signala na TTL UART ulaz na ESP2866. Obrnuti napon između emitera i baze 2N3904 je specificiran da izdrži najmanje 6V. D4 ograničava napon osnovnog odašiljača na manji od 1 V ako je ulaz RS232 -15V.

Konačno, “upravljački programi i prijemnici RS-232 moraju izdržati neograničeni kratki spoj na masu” (RS232 wikipedia) pa ako slučajno spojite RS232 vodove na priključke za napajanje, to ne bi trebalo oštetiti NMEA/AIS uređaj.

Napajanje

Dioda D1 sprječava primjenu obrnutog napona na DC-DC pretvarač ako promijenite +V i GND veze prilikom povezivanja. D1 ima malu struju curenja. D2 pruža niskonaponski put za tu struju curenja kako bi se obrnuti napon na DC -DC pretvaraču održao ispod -0,3V. Otpornik 330R (R10) u liniji RS232 GND pruža zaštitu od kratkog spoja baterije na masu ako je baterija +žica spojena na žicu GND napajanja ploče dok je priključen RS232 GND.

DC-DC pretvarač je ocijenjen za radni ulaz do 21V, pa je pogodan za 12V bateriju dok se mijenja. Baterija pri punom punjenju može biti do ~ 14,8 V, a napon punjača može biti veći, 16 V ili više. Ulazni napon od 21 V DC-DC pretvarača je predviđen da to podnese. Slučajni povratni priključak napajanja (usred noći po lošem vremenu) zaštićen je od. Apsolutni maksimalni napon za ulaz pretvarača je 28V i može se rukovati sa RS232 signalom spojenim na njega. RS232 napon je specificiran da bude manji od +/- 25V.

Ako slučajno spojite vodove iz vašeg izvora napajanja na RS232 TX/GND veze (zamijenjene ili ne), otpornici 10K i 330R zaštitit će vas od kratkog spoja.

Ukratko, krug je zaštićen od zamjene napajanja i RS232 kabela i povezivanja žica iz tih parova na bilo koji način. Miješanje žica, po jedna iz svakog para, nije zaštićeno od svih kombinacija pa RS232 i kabele za napajanje držite uparene i povežite ih u paru.

Prosječna struja koju koristi ploča je oko 100mA (ovisno o snazi WiFi prijenosa i brzini prijenosa podataka). Kad bi se za napajanje ploče iz 12V baterije koristio jednostavan linearni regulator, potrošnja energije bila bi 12V x 100mA = 1.2W ili 1.2Ahrs tijekom 12 noći. Korištenje DC / DC pretvarača, koji je ~ 70% efikasan, smanjuje ovo opterećenje na 0,47W ili 0,47Ah tokom 12 sati noći.

Korak 2: Konstrukcija

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

Konstruirao sam ovu jedinicu koristeći mali komad vero ploče sa vezama i sabirnicama (pdf verzija). Evo pogleda odozgo i odozdo završene ploče. Pažljivo provjerite ožičenje kada završite. Lako je spojiti na pogrešan pin kada okrenete i spojite žicu odozdo.

Korak 3: Programiranje WiFi štita

Programiranje WiFi štita
Programiranje WiFi štita

Svaki RS232 -WiFi most treba programirati jednom, samo, i nikada više. Ugrađena web stranica pruža pristup dostupnim konfiguracijama.

Instaliranje ESP8266 podrške

Za programiranje štita slijedite upute date na https://github.com/esp8266/Arduino pod Instaliranje s upraviteljem ploča. Prilikom otvaranja upravitelja ploča s izbornika Alati → Ploča i odaberite Unesi doprinos i instalirajte platformu esp8266. Ovaj projekt je sastavljen pomoću ESP8266 verzije 2.6.3. Kasnije verzije mogu biti bolje, ali mogu imati vlastite greške jer se platforma brzo razvija.

Zatvorite i ponovo otvorite Arduino IDE i sada možete odabrati "Generički modul ESP8266" u izborniku Alati → Ploča.

Instaliranje pomoćnih biblioteka

Također morate instalirati, sa https://www.forward.com.au/pfod/pfodParserLibraries/index.html, najnovije verzije biblioteke pfodESP8266BufferedClient (za pfodESP8266Utils.h i pfodESP8266BufferedClient.h) i millisDela (milisDela) h).

Preuzmite ove zip datoteke na svoje računalo, premjestite ih na radnu površinu ili neku drugu mapu koju možete lako pronaći, a zatim upotrijebite opciju menija Arduino IDE Sketch → Uvezi biblioteku → Dodaj biblioteku da biste ih instalirali. Takođe morate instalirati biblioteku SafeString. Biblioteka SafeString dostupna je od upravitelja biblioteke Arduino ili možete preuzeti datoteku SafeString.zip izravno za ručno instaliranje putem Sketcha → Uvezi biblioteku → Dodaj biblioteku

Zaustavite i ponovo pokrenite Arduino IDE i pod Datoteka-> Primjeri sada biste trebali vidjeti pfodESP8266BufferedClient i SafeString.

Programiranje odbora

Da biste programirali ploču, postavite ploču u način programiranja tako što ćete skratiti vezu (dolje lijevo). Zatim spojite USB na TTL UART serijski kabel

Pažljivo spojite samo 3V3 TX/RX vodiče na lijevu stranu veze pomoću 3V3 TX/RX sa Sparkfun -ovog USB na TTL serijski kabel Kabelski spojevi su RX (žuti), TX (narančasti), VCC (5V) (crveni), i GND (crno). Imajte na umu da je žuti (RX) kabel spojen na TX pin na ploči, a narančasti (TX) kabel na RX pin na ploči. Crni (GND) kabel je spojen na GND za TX/RX pin

Napomena: Čini se da postoje dvije verzije ovog kabela. Starije verzije imaju 5V Vcc i RX (smeđa), TX (poput preplanulog/breskvastog), VCC (crvena) i GND (crna), u svakom slučaju VCC vodič se ovdje ne koristi. Postoje i komentari da se TX i RX žica u nekim slučajevima mijenjaju. Ako Arduino IDE ne može programirati ploču, pokušajte zamijeniti TX/RX kabele. 330R štiti od TX-TX kratkih hlača.

Napajajte ploču iz 6V do 12V 500mA ili većeg napajanja ili baterije. Prvo spojite kabel napajanja -Ve (GND) kako struja napajanja ne bi pokušala teći nazad kroz USB vezu. Po mogućnosti koristite izolirano (plutajuće) napajanje ili bateriju od 6V do 12V. Imajte na umu da Aliexpress DC-DC moduli trebaju napajanje od najmanje 6,5 V.

Zatim priključite USB kabl u računar. Odaberite njegov COM port u izborniku Alati → Port. Ostavite CPU Frekvenciju, veličinu bljeskalice i brzinu prijenosa na zadane postavke.

Provjerite fotografiju i ožičenje. Također pogledajte ESP8266 Savjeti za programiranje (espcomm nije uspio) Sastavite skicu ESP8266_NMEA_BRIDGE.ino. Zatim odaberite Datoteka → Prenesi ili upotrijebite tipku sa strelicom nadesno za sastavljanje i otpremanje programa. Učitavaju se dvije datoteke. Ako dobijete poruku o grešci pri učitavanju, provjerite jesu li kabelske veze pravilno priključene i pokušajte ponovo.

Nakon što je programiranje dovršeno, uklonite način programiranja tako da prekine vezu i programske TX/RX veze, a zatim isključite i uključite napajanje kako biste ploču ponovno pokrenuli u normalnom načinu rada.

Povežite NMEA/AIS uređaj.

Nema verzije konfiguracije

Postoji još jedna verzija ove skice, ESP8266_NMEA_BRIDGE_noCfg.ino, u kojoj je sva konfiguracija unaprijed programirana u kodu skice. U ovom slučaju NMEA čvorište povezuje se s postojećim usmjerivačem (pristupnom točkom) kako bi podaci bili dostupni mreži.

Konfiguracija je sva na vrhu datoteke ESP8266_NMEA_BRIDGE_noCfg.ino.

// ================= KOD KOD KONFIGURACIJE ==================

const char ssid = "yourRouterSSID"; // ovdje postavite SSID svoje mreže const char password = "yourRouterPassword"; // ovdje postavite lozinku za svoju mrežu IPAddress staticIP (10, 1, 1, 190); // ovdje postavljamo statički IP NMEA čvorišta. NAPOMENA, između brojeva // provjerite radi li drugi uređaj s istim IP -om i je li IP u rasponu IP usmjerivača // uobičajeni rasponi IP usmjerivača su 10.1.1.2 do 10.1.1.254 // 192.168.1.2 do 192.168.254.254 i // 172.16.1.2 do 172.31.254.254 // usmjerivač je obično 10.1.1.1 ili 192.168.1.1 ili 172.16.1.1 ovisno o svom rasponu IPAddress udpBroadcaseIP (230, 1, 1, 1); // ovdje postavljamo IP adresu za UDP emitiranje. NAPOMENA, između brojeva. Ovaj IP je neovisan o rasponu usmjerivača. Ne mijenjajte const uint16_t tcpPortNo = 10110; // postavljanje porta NMEA tcp poslužitelja Ne ovdje const uint16_t udpPortNo = 10110; // postavljanje NMEA UDP porta za emitiranje Ne ovdje const unsigned int txPower = 10; // TX snaga u rasponu od 0 do 82; const unsigned int GPS_BAUD_RATE = 4800; // serijska brzina prijenosa vašeg GPS modula // ================= KRAJ KOD KODIRANOG KONFIGURACIJE ==============

Korak 4: Dodavanje pokazivača (opcionalno)

Dodavanje pokazivača (opcionalno)
Dodavanje pokazivača (opcionalno)

Moj savjetnik za jedrenje na ovom projektu, Jo, predložio je ugradnju crvene LED diode i zelene LED diode na kućište kako bi pokazalo da stvari teku. Evo modificiranog kola sa dodane ove dvije LED diode. (verzija u pdf -u)

R9 i R11 postavljaju LED struju, a time i svjetlinu. Koristite najveći otpornik koji LED diode čini vidljivim. Bit će ih teško vidjeti na izravnoj sunčevoj svjetlosti ili u svijetloj kabini, pa postavite jedinicu u tamni kut za maksimalnu vidljivost. Jaycar ima odgovarajuće crvene i zelene LED diode (~ 2,75 USD), a Sparkfun ima neke super svijetle crvene i zelene LED diode (1,70 USD), ali gotovo sve crvene i zelene LED diode će to učiniti.

Korak 5: Postavljanje konfiguracije putem ugrađene web stranice

Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice
Postavljanje konfiguracije putem ugrađene web stranice

Kad uključite ploču nakon programiranja, ona će automatski stvoriti lokalnu mrežu. To znači da će postati lokalna pristupna točka (usmjerivač). Naziv mreže počinje s NMEA_, a zatim slijedi 12 heksadecimalnih znamenki jedinstvenih za svaku ploču, npr. NMEA_18FE34A00239 Lozinka za lokalnu mrežu uvijek je NMEA_WiFi_Bridge. Ako trebate zamijeniti jedinice na moru, isključite staru, isključite rezervnu, a zatim potražite novu NMEA_….. mrežu i koristite lozinku NMEA_WiFi_Bridge da joj se pridružite.

Ako ne vidite mrežu, približite se ploči i provjerite jesu li kablovi za napajanje pravilno spojeni. Jedna ploča ESP8266-01 bi trebala biti plava.

Nakon što se priključite na mrežu sa svojim računarom ili mobilnim telefonom, možete otvoriti konfiguracijsku web stranicu na https://10.1.1.1 (Napomena: upišite https://10.1.1.1, ako samo unesete 10.1.1.1 može dovesti do toga da Google pokuša to tražiti, ali neće uspjeti jer niste povezani s internetom)

Stranica sa konfiguracijom omogućuje vam postavljanje WiFi snage prijenosa. Niži brojevi za manju snagu, domet i potrošnju struje. Također možete promijeniti brojeve portova za TCP i UDP veze. Zadani 10110 je određeni port za NMEA veze, ali možete odabrati vlastiti ako želite. IP brojevi su fiksni. Na kraju možete postaviti brzinu prijenosa koja odgovara vašem NMEA/AIS izvoru. 4800 bauda je standardna brzina prijenosa za NMEA. Dok je 34800 bauda standardna brzina prijenosa za AIS.

Nakon što odaberete, kliknite Pošalji i prikazuje se stranica sa sažetkom promjena koje su pohranjene.

Ako ovo nije točno, upotrijebite gumb preglednika za povratak da biste se vratili i popravili ih. Da biste primijenili promjene, ploču je potrebno ponovno pokrenuti. Klikom na gumb Primijeni ove promjene učinit ćete to.

Nakon što se ploča ponovo pokrene, automatski će se ponovo prikazati stranica sa konfiguracijom sa trenutnom konfiguracijom.

Povežite računar ili mobilni uređaj sa TCP ili UDP vezom i proverite da li primate podatke.

To je gotovo !! Zatvorite sve stvari u vodootpornu plastičnu kutiju, ostavljajući slobodna samo dva kabla za napajanje i dva RS232 vodiča.

Korak 6: Pomoć - nema podataka

Nakon što se povežete na mrežu i postavite svoj mobilni uređaj da se poveže na TCP 10.1.1.1 i port koji ste postavili (ili se pridružite UDP multicast grupi 230.1.1.1 sa portom koji ste postavili), ako i dalje ne dobivate bilo koji podatak isprobajte sljedeće korake.

1) Provjerite je li NMEA / AIS oprema uključena

2) Provjerite jesu li RS232 kabeli pravilno povezani.

3) Provjerite postavku 'kontrole protoka' na svojoj NMEA / AIS opremi. Postavite na 'NONE' ako je to opcija. Ako nije, tada odaberite "hardversku" ILI kontrolu protoka RTS / CTS i kratkim spojevima spojite RTS na CTS i DSR pinove NMEA / AIS kabela. To je za konektor DB-25, spojite pinove 4 i 5 i 6 zajedno. Za konektor DB-9 spojite pinove 6 i 7 i 8 zajedno. Pomoću „hardverske“kontrole NMEA / AIS oprema (DTE) potvrđuje RTS (ReadyToSend) kada želi slati podatke. S ovim vezama RTS pin upravlja pinovima ClearToSend (CTS) i DataSetReady (DSR) koji se unose natrag u NMEA / AIS opremu kako bi mu rekli da je druga strana spremna i sposobna za primanje podataka.

Otklanjanje grešaka

Da biste uključili TX izlaz za otklanjanje grešaka, dekommentiranje, tj. Uređivanje na #define DEBUGpribližite vrh skice ESP8266_NMEA_BRIDGE.ino.

Uklonite TX/RX USB kabele i samo spojite žuti RX kabel na izlaz za otklanjanje pogrešaka TX. Ostavite crni GND kabel spojen na GND za TX/RX. Arduino IDE serijski monitor sada će prikazivati poruke za otklanjanje grešaka.

Po zadanom je pokrenuta UDP multicast grupa, ali je možete onemogućiti komentariranjem, tj. Uredite u // #define UDP_BROADCAST pri vrhu skice ESP8266_NMEA_BRIDGE.ino.

Zaključak

Ovaj NMEA/AIS RS232 prema WiFi most je robustan i jednostavan za upotrebu. Efikasno radi iz izvora baterije od 12 i dovoljno je jeftin da sa sobom ponese rezervni koji možete zamijeniti usred putovanja ako je potrebno.

Preporučuje se: