Kazalo:

Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu: 6 korakov
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu: 6 korakov

Video: Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu: 6 korakov

Video: Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu: 6 korakov
Video: Возведение коробки дома. Заливка перемычек и монолитного пояса. 2024, November
Anonim
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu

Posodobitev 9. januar 2021 - Dodana je dodatna povezava TCP in ponovna uporaba zadnje povezave, če se poveže več strank Posodobitev 13. december 2020 - Dodana ni konfiguracijska različica kode za čolne z obstoječimi usmerjevalniki

Uvod

Ta most NMEA / AIS RS232 do WiFi temelji na WiFi ščitu ESP8266-01. AIS je avtomatski identifikacijski sistem za prikaz položaja bližnjih ladij. NMEA 0183 je standard Nacionalnega združenja pomorske elektronike, ki se uporablja za sporočila GPS.

Most RS232 do WiFi je bil spremenjen z WiFi ščita ESP8266-01, ki ga napaja 12V baterija in sprejema vhod RS232 (+/- 15V) ter ustvari lokalno omrežje, ki oddaja podatke prek TCP in UDP. Razvit je bil skupaj z Jojem, ki je želel voditi poceni in preprosto samostojno lokalno omrežje za dostop do podatkov svojega AIS od koder koli na svoji jahti. Ta modul, ki nastane, ustvari dostopno točko (usmerjevalnik) in nastavi strežnik TCP za največ 4 povezave ter oddaja tudi podatke v skupini za oddajanje UDP. Na voljo je konfiguracijska spletna stran za nastavitev številk vrat TCP in UDP, moči Tx WiFi in dohodne hitrosti prenosa RS232. Za razliko od WiFi Shield ni konfiguracijskega gumba, zato je modul, ko je zgrajen, popolnoma vodotesen. Za zaščito pred napačnim ožičenjem so vključeni zaščitni tokokrogi. Čeprav je zasnovan z mislijo na NMEA (GPS) in AIS, bo modul obdeloval vse podatke RS232 s hitrostjo prenosa med 4800 in 38400 (in druge z urejanjem skice Arduino).

Lastnosti

  • Uporablja poceni in lahko dostopen modul ESP8266-01:- Uporabite lahko tudi druge module ESP8266
  • Robustna:- Vezje ima vgrajeno vrsto zaščite za zaščito pred napakami pri ožičenju.
  • Učinkovita poraba energije:- Napajalnik DC-DC pretvornika učinkovito napaja enoto iz 12V baterije, moč Tx WiFi pa lahko zmanjšate, da prihranite več energije.
  • Enostaven za uporabo:- Priključite napajalnik 5,5 V na 12 V in linijo RS232 TX, nato pa sprejemnik priključite v omrežje in se povežite s storitvijo TCP ali UDP za sprejem podatkov. Če enota odpove, jo lahko hitro zamenjate za rezervno
  • Enostavna konfiguracija:- Ni potrebe po ponovnem programiranju, ni posebnega načina konfiguracije. Na voljo je konfiguracijska stran, ki vam omogoča nastavitev hitrosti prenosa RS232 in moči prenosa WiFi ter številk vrat za strežnike TCP in UDP
  • Izbirno Brez konfiguracijske različice:- Obstaja tudi druga skica, kjer je vsa konfiguracija vnaprej programirana. To je za tiste situacije, v katerih že deluje lokalno omrežje z lastnim usmerjevalnikom (dostopna točka)

Zaloge:

Ta ESP8266-01 RS232 do WiFi Bridge potrebuje naslednje dele ali podobne. Tukaj prikazane cene so avgusta 2020 in ne vključujejo stroškov pošiljanja in neke vrste plastičnega ohišja:-

Modul WiFi ESP8266-01-~ 1,50 USD na spletu (izkoristite priložnost) ALI za zanesljiv izdelek SparkFun ESP8266-01-6,95 USD

MPM3610 3.3V pretvornik Buck Adafruit-5,95 USD 5V do 21V vhod, ALI DC-DC 3A Buck odmični napajalni modul na spletu Aliexpress ~ US2,00

10-polni element glave 14-0,40 USD (ali 28-polni terminalni trak glave Jaycar 0,95 USD)

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

2 off 1N4001 Diode SparkFun 0,30 USD (ali 1N4004 Jaycar AU 1,00 USD) Vsaka 1A 50V ali višja dioda bo ustrezala, npr. 1N4001, 1N4002, 1N4003, 1N4004

1 off 2N3904 NPN tranzistor SparkFun 0,50 USD (ali Jaycar AU 0,75 USD kateri koli NPN splošnega namena z Vce> 40V, Hfe> 50 pri 1mA, Ic> 50mA npr. BC546, BC547, BC548, BC549, BC550, 2N2222

6 x 3K3 upori npr. 3K3 upori - Digikey - 0,60 USD (ali 3K3ohm 1/2 Watt 1% kovinski filmski upori - Pk.8 od Jaycar AU 0,85 USD)

3 off 330R upor Element14 US $ 0,10 (ali 330ohm 1/2 Watt 1% Metal Film Resistors - Pk.8 od Jaycar AU 0,85 USD)

1 off 10K upor Element14 0,05 USD (ali 10k Ohm 0,5 Watt Metal Film Resistors - paket 8 od Jaycar AU 0,85 USD)

Vero plošča (povezave in vodila za vodila) Jaycar HP9556 OR (trak iz bakra) (trak iz bakra) npr. Jaycar HP9540 ~ 5,50 USD

ter plastično ohišje in priključno žico.

Skupni stroški ~ 9,90 USD + poštnina in plastična torbica (od avgusta 2020) z uporabo Aliexpress ESP8266-01 in modula DC-DC ALI ~ 19,30 USD z uporabo modula Sparkfun ESP8266-01 in pretvornika Adafruit DC-DC. Dovolj poceni, da naredite nekaj rezervnih delov.

Če želite programirati RS232 na WiFi Bridge, potrebujete tudi USB -serijski kabel. Tu se uporablja SparkFunov serijski kabel USB -TTL (10,95 USD), ker ima lepo označene konce in ima podporo za gonilnike za široko paleto operacijskih sistemov, vključno s programskim kablom, so stroški za samo en RS232 do WiFi Bridge ~ 20 USD do 24 USD (plus poštnina in etui).

1. korak: Shema vezja in zaščita vezja

Shema vezja in zaščita vezja
Shema vezja in zaščita vezja

Zgoraj je diagram vezja za RS232 do WiFi Bridge (pdf različica). Ta je bil prilagojen iz ESP8266-01 Wifi Shield in spremenjen tako, da sprejema RS232 in napajanje od 5V do 12V (baterija). Pretvornik enosmernega v enosmerni tok zagotavlja energijsko učinkovito delovanje iz 12V baterije za nočno uporabo, ko ni sončne energije in je poraba energije na prvem mestu.

V vezje so vgrajene številne zaščite vezja. Priključki na levi strani vezja se uporabljajo le med gradnjo za programiranje/odpravljanje napak enote. Upori 330R R6 in R7 ščitijo pred kratkim stikom izhoda TX na izhod TX pri programiranju/odpravljanju napak. Pri programiranju povežete TX na RX in RX na TX. Izhod TX za odpravljanje napak je treba povezati z vhodom RX UART 3v3, da vidite izhod za odpravljanje napak (glejte komentarje v skici ESP8266_NMEA_BRIDGE.ino).

Priključki na desni strani vezja se uporabljajo za priključitev dokončane enote na napajanje in vir NMEA/AIS RS232. To so edine povezave, ki morajo biti dostopne, ko je enota zgrajena. Te povezave hranite v parih.

2N3904 zagotavlja inverzijo in prehod ravni iz signala RS232 +/- 15V na vhod TTL UART na ESP2866. Obratna napetost med oddajnikom in bazo 2N3904 je določena tako, da vzdrži vsaj 6V. D4 omejuje osnovno napetost povratnega oddajnika na manj kot 1 V, če je vhod RS232 -15 V.

Nazadnje, "gonilniki in sprejemniki RS-232 morajo biti sposobni vzdržati nedoločen kratek stik z maso" (wikipedia RS232), zato, če pomotoma povežete vodi RS232 s priključki za napajanje, ne sme poškodovati naprave NMEA/AIS.

Napajanje

Dioda D1 preprečuje uporabo povratne napetosti na DC-DC pretvorniku, če med ožičenjem zamenjate priključke +V in GND. D1 ima majhen uhajalni tok. D2 zagotavlja nizkonapetostno pot za ta tok puščanja, da zadrži povratno napetost na DC -DC pretvorniku pod -0,3V. Upor 330R (R10) v liniji RS232 GND zagotavlja zaščito pred kratkim stikom baterije na maso, če je baterija +žica priključena na žico GND napajanja plošče, medtem ko je priključen RS232 GND.

DC-DC pretvornik je ocenjen za do 21 V obratovalni vhod, zato je primeren za 12V baterijo med menjavo. Polna baterija je lahko do ~ 14,8 V, napetost polnilnika pa lahko višja, 16 V ali več. 21V vhodna moč pretvornika DC-DC je primerna za to. Nenamerni povratni dovod (sredi noči v slabem vremenu) je zaščiten pred. Absolutna največja napetost za vhod pretvornika je 28V an, zato lahko z njim priključite signal RS232. Napetost RS232 je določena manj kot +/- 25V.

Če po pomoti priključite kable iz svojega napajalnika na priključke RS232 TX/GND (bodisi zamenjani ali ne), bosta upori 10K in 330R zaščitili pred prekinitvijo napajanja.

Če povzamemo, je vezje zaščiteno pred menjavo moči in vodi RS232 ter povezovanjem žic teh parov v obe smeri. Mešanje žic, po enega iz vsakega para, ni zaščiteno pred vsemi kombinacijami, zato pustite RS232 in napajalne kable seznanjene in jih povežite v parih.

Povprečni tok, ki ga uporablja plošča, je približno 100 mA (odvisno od moči prenosa WiFi in hitrosti prenosa podatkov). Če bi za napajanje plošče iz 12V baterije uporabili preprost linearni regulator, bi bila poraba energije 12V x 100mA = 1.2W ali 1.2Ahrs v 12 noči. Uporaba pretvornika DC v DC, ki je ~ 70% učinkovit, zmanjša to obremenitev na 0,47 W ali 0,47 Ah v 12 -urni noči.

2. korak: Gradnja

Gradnja
Gradnja
Gradnja
Gradnja
Gradnja
Gradnja

To enoto sem sestavil z majhnim kosom plošče vero s povezavami in napajalnimi vodili (različica pdf). Tu sta zgornji in spodnji pogled dokončane plošče. Ko končate, natančno preverite ožičenje. Ko obrnete in povežete od spodaj, je enostavno povezati z napačnim zatičem.

3. korak: Programiranje ščita WiFi

Programiranje ščita WiFi
Programiranje ščita WiFi

Vsak most RS232 do WiFi je treba programirati enkrat, samo enkrat in nikoli več. Vgrajena spletna stran omogoča dostop do razpoložljivih konfiguracij.

Namestitev podpore ESP8266

Za programiranje ščita sledite navodilom na strani https://github.com/esp8266/Arduino v razdelku Nameščanje z upravitelji plošč. Ko odprete upravitelja plošč v meniju Orodja → Kartica, izberite Vrsta Prispevek in namestite platformo esp8266. Ta projekt je bil sestavljen z uporabo ESP8266 različice 2.6.3. Novejše različice so morda boljše, vendar imajo lahko svoje napake, saj se platforma hitro razvija.

Zaprite in znova odprite Arduino IDE in zdaj lahko izberete »Splošni modul ESP8266« v meniju Orodja → Meni plošča.

Namestitev podpornih knjižnic

Prav tako morate namestiti iz https://www.forward.com.au/pfod/pfodParserLibraries/index.html najnovejše različice knjižnice pfodESP8266BufferedClient (za pfodESP8266Utils.h in pfodESP8266BufferedClient.h) in millisDela h).

Prenesite te datoteke zip v svoj računalnik, jih premaknite na namizje ali v drugo mapo, ki jo lahko preprosto najdete, nato pa uporabite možnost menija Arduino IDE Sketch → Import Library → Add Library, da jih namestite. Prav tako morate namestiti knjižnico SafeString. Knjižnica SafeString je na voljo pri upravitelju knjižnice Arduino ali pa datoteko SafeString.zip naložite neposredno za ročno namestitev prek Sketcha → Uvozi knjižnico → Dodaj knjižnico

Ustavite in znova zaženite Arduino IDE in pod File-> Primeri bi morali videti pfodESP8266BufferedClient in SafeString.

Programiranje odbora

Za programiranje plošče nastavite ploščo v način programiranja tako, da skrajšate povezavo (spodaj levo). Nato priključite USB v serijski kabel TTL UART

Pazljivo upoštevajte, da vodi 3V3 TX/RX priključite levo na levo stran s 3V3 TX/RX iz Sparkfunovega USB na TTL zaporedni kabel Kabelske povezave so RX (rumena), TX (oranžna), VCC (5V) (rdeča), in GND (črna). Upoštevajte, da je rumeni (RX) kabel priključen na TX pin na plošči, oranžni (TX) kabel pa na RX pin na plošči. Črni kabel (GND) je priključen na nožico GND za TX/RX

Opomba: Zdi se, da obstajata dve različici tega kabla. Starejše različice imajo 5 V Vcc in RX (rjava), TX (porjavljena/breskev), VCC (rdeča) in GND (črna), v vsakem primeru pa se kabel VCC tukaj ne uporablja. Obstajajo tudi pripombe, da sta žici TX in RX v nekaterih primerih obrnjena. Če Arduino IDE ne more programirati plošče, poskusite zamenjati kable TX/RX. 330R ščiti pred kratkimi hlačami TX-TX.

Napajajte ploščo iz 6V do 12V 500mA ali več napajanja ali baterije. Najprej priključite kabel Napajanje -Ve (GND), tako da tok napajanja ne poskuša teči nazaj skozi povezavo USB. Prednostno uporabite ločeno (plavajoče) napajanje ali baterijo 6V do 12V. Upoštevajte, da moduli DC-DC Aliexpress potrebujejo napajanje vsaj 6,5 V.

Nato priključite kabel USB v računalnik. V meniju Orodja → Vrata izberite njegova vrata COM. Frekvenco procesorja, velikost bliskavice in hitrost nalaganja pustite privzetih nastavitev.

Preverite fotografijo in ožičenje. Glejte tudi nasvete za programiranje ESP8266 (espcomm ni uspel) Sestavite skico ESP8266_NMEA_BRIDGE.ino. Nato izberite Datoteka → Naloži ali uporabite puščico desno, da sestavite in naložite program. Naloženi sta dve datoteki. Če se pri nalaganju prikaže sporočilo o napaki, preverite, ali so kabelske povezave pravilno priključene in poskusite znova.

Ko je programiranje končano, odstranite način programiranja, pri katerem prekinete povezavo in programske povezave TX/RX, nato pa izklopite in vklopite napajanje, da znova zaženete ploščo v običajnem načinu.

Priključite napravo NMEA/AIS.

Brez konfiguracijske različice

Obstaja še ena različica te skice, ESP8266_NMEA_BRIDGE_noCfg.ino, v kateri je vsa konfiguracija vnaprej programirana v kodi skice. V tem primeru se vozlišče NMEA poveže z obstoječim usmerjevalnikom (dostopno točko), da omogoči dostop do podatkov omrežju.

Konfiguracija je na vrhu datoteke ESP8266_NMEA_BRIDGE_noCfg.ino.

// ================= Trdno kodirana konfiguracija ==================

const char ssid = "yourRouterSSID"; // tukaj nastavite SSID svojega omrežja const char password = "yourRouterPassword"; // tukaj nastavite geslo vašega omrežja IPAddress staticIP (10, 1, 1, 190); // tukaj nastavite statični IP zvezdišča NMEA. OPOMBA: med številkami // se prepričajte, da nobena druga naprava ne deluje s tem istim IP -jem in da je IP v območju IP vašega usmerjevalnika // skupni obsegi IP usmerjevalnika so 10.1.1.2 do 10.1.1.254 // 192.168.1.2 do 192.168.254.254 in // 172.16.1.2 do 172.31.254.254 // usmerjevalnik je običajno 10.1.1.1 ali 192.168.1.1 ali 172.16.1.1, odvisno od njegovega območja IPAddress udpBroadcaseIP (230, 1, 1, 1); // tukaj nastavite IP oddajanja UDP. OPOMBA, med številkami. Ta IP je neodvisen od obsega usmerjevalnika ne spreminjaj const uint16_t tcpPortNo = 10110; // nastavimo vrata strežnika NMEA tcp št. tukaj const uint16_t udpPortNo = 10110; // nastavimo oddajna vrata NMEA UDP Št. tukaj const unsigned int txPower = 10; // moč TX v območju od 0 do 82; const brez podpisa int GPS_BAUD_RATE = 4800; // zaporedna hitrost prenosa vašega GPS modula // ==============================================

4. korak: Dodajanje indikatorjev (neobvezno)

Dodajanje indikatorjev (neobvezno)
Dodajanje indikatorjev (neobvezno)

Moj svetovalec za jadranje pri tem projektu, Jo, je predlagal, da se na ohišje namesti rdeča napajalna lučka in zelena podatkovna lučka, ki označujeta, da stvari tečejo. Tukaj je spremenjeno vezje z dvema LED diodama. (pdf različica)

R9 in R11 nastavita Led tok in s tem svetlost. Uporabite največji upor, zaradi katerega so LED diode še vedno vidne. Na neposredni sončni svetlobi ali v svetli kabini jih bo težko videti, zato enoto namestite v temen kot za največjo vidljivost. Jaycar ima primerne rdeče in zelene LED luči (~ 2,75 USD), Sparkfun pa nekaj super svetlih rdečih in zelenih LED (1,70 USD), vendar bo skoraj vsaka rdeča in zelena LED.

5. korak: Nastavitev konfiguracije prek vgrajene spletne strani

Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani
Nastavitev konfiguracije prek vgrajene spletne strani

Ko po programiranju vklopite ploščo, bo samodejno ustvarila lokalno omrežje. To pomeni, da bo postala lokalna dostopna točka (usmerjevalnik). Ime omrežja se bo začelo z NMEA_, ki mu sledi 12 šestnajstmestnih številk, značilnih za vsako ploščo, npr. NMEA_18FE34A00239 Geslo za lokalno omrežje je vedno NMEA_WiFi_Bridge. Če morate zamenjati enote na morju, izklopite staro, namestite rezervno in nato poiščite novo omrežje NMEA_….. in se mu pridružite z geslom NMEA_WiFi_Bridge.

Če ne vidite omrežja, se približajte tiskanemu vezju in preverite, ali so napajalni kabli pravilno priključeni. Ena plošča ESP8266-01 mora biti modra.

Ko se z računalnikom ali mobilnim telefonom pridružite omrežju, lahko odprete konfiguracijsko spletno stran na naslovu https://10.1.1.1 (Opomba: vnesite https://10.1.1.1, če samo vnesete 10.1.1.1 morda bo Google poskušal iskati, vendar ne bo uspel, ker niste povezani z internetom)

Na konfiguracijski strani lahko nastavite moč prenosa WiFi. Nižje številke za manjšo moč, doseg in porabo toka. Spremenite lahko tudi številke vrat za povezave TCP in UDP. Privzeto 10110 je določeno pristanišče za povezave NMEA, vendar lahko po želji izberete svojega. Številke IP so fiksne. Končno lahko hitrost prenosa nastavite tako, da ustreza vašemu viru NMEA/AIS. 4800 baud je standardna hitrost prenosa za NMEA. Medtem ko je 34800 baud standardna hitrost prenosa za AIS.

Ko izberete, kliknite Pošlji in prikaže se stran s povzetkom shranjenih sprememb.

Če te niso pravilne, uporabite gumb za nazaj v brskalniku, da se vrnete nazaj in jih popravite. Za uporabo sprememb je treba ploščo znova zagnati. To storite s klikom na gumb Uporabi te spremembe.

Ko se plošča znova zažene, se bo samodejno znova prikazala konfiguracijska stran s trenutno konfiguracijo.

Računalnik ali mobilno napravo povežite s povezavo TCP ali UDP in preverite, ali prejemate podatke.

To je konec! Vse stvari zatesnite v vodotesni plastični škatli, pri čemer pustite samo dva napajalna kabla in dva vodila RS232.

6. korak: Pomoč - brez podatkov

Ko se povežete z omrežjem in nastavite mobilno napravo, da se poveže s TCP 10.1.1.1 in vrati, ki ste jih nastavili (ali se pridružite skupini za večpredstavnost UDP 230.1.1.1 z nastavljenimi vrati), če še vedno ne dobite kateri koli podatki poskusite po naslednjih korakih.

1) Preverite, ali je oprema NMEA / AIS vklopljena

2) Preverite, ali so kabli RS232 pravilno povezani.

3) Preverite nastavitev 'nadzor pretoka' na svoji opremi NMEA / AIS. Če je to možnost, nastavite na 'NONE'. Če ne, potem izberite "strojno opremo" ALI nadzor pretoka RTS / CTS in kratki priključek RTS na CTS in DSR kabla NMEA / AIS. To je za priključek DB-25, povežite nožice 4 in 5 in 6 skupaj. Za priključek DB-9 povežite nožice 6, 7 in 8 skupaj. Z "strojno" kontrolo oprema NMEA / AIS (DTE) uveljavlja RTS (ReadyToSend), ko želi pošiljati podatke. S temi povezavami pin RTS poganja nožice ClearToSend (CTS) in DataSetReady (DSR), ki se vnesejo nazaj v opremo NMEA / AIS, da ji sporočijo, da je druga stran pripravljena in sposobna sprejemati podatke.

Odpravljanje napak

Če želite vklopiti izhod TX za odpravljanje napak, razkomentirajte, to je uredite v #define DEBUG Približite vrh skice ESP8266_NMEA_BRIDGE.ino.

Odstranite kable USB TX/RX in samo priključite rumeni kabel RX na izhod za odpravljanje napak TX. Za TX/RX pustite črni kabel GND priključen na GND. Serijski monitor Arduino IDE bo zdaj prikazal sporočila za odpravljanje napak.

Privzeto se zažene skupina za večpredstavnost UDP, vendar jo lahko onemogočite tako, da komentirate, to je uredite v // #define UDP_BROADCAST blizu vrha skice ESP8266_NMEA_BRIDGE.ino.

Zaključek

Ta most NMEA/AIS RS232 do WiFi je robusten in enostaven za uporabo. Učinkovito deluje iz vira 12 baterij in je dovolj poceni, da lahko s seboj nosite rezervno, ki jo lahko po potrebi zamenjate med potovanjem.

Priporočena: