Digitaal logboek van de reizen van de Yazz.
Digitaal logboek van de reizen van de Yazz.

DIY: De NMEAtor het plan

Het plan

Welnu, er zijn verschillende opties:

De gemakkelijke uitweg: lees de NMEA0183-gegevensstroom van de Robertson Databox in de Arduino. Filter de gegevens waarin ik geïnteresseerd ben, voeg indien nodig een checksum toe (GPS- en AIS-gegevens bevatten een checksum). Breidt de gegevens uit met de gegevens die afkomstig zijn van de MPU 9250-eenheid en geef ze door aan de multiplexer (de AIS-gegevens toevoegen) die ze via wifi naar de iPad stuurt. En maak een paar mooie meters om weer te geven op het TFT-scherm. Dit betekent verschillende gegroepeerde pagina’s met gerelateerde gegevens en een datalogger voor de NMEA-gegevens. Of zelfs trendgegevens voor de gemiddelde snelheid en wind enz …


De moeilijke manier: verkoop de YDWR02 en doe al het multiplexen via de Arduino en voeg er wifi-mogelijkheden aan toe, zodat het als een client in mijn bootnetwerk kan fungeren. Hoe dan ook, ik volg het MoSCoW-principe; Must have, Should have, Could have en Wish to have. Het manipuleren van de originele NMEA0183 v1.5 datastream is een must. Het integreren van de 9 DoF dingetje is een Should-have en het toevoegen van de TF-display-functies is een Could have. De vervanging van de huidige multiplexer door de Arduino is voorlopig een Wish to have

Het Arduino multiplexer-project op King Tide Sailing heeft me getriggerd en hier zit ik dan; nooit eerder een pin op een PCB gesoldeerd en er liggen er aardig wat te wachten om professioneel te worden gesoldeerd.

Gewenste situatie (zoek de verschillen 😉 )

Aangezien ik een sterke OO-achtergrond heb en de Arduino slechts sequentieel of loop-based is, ben ik op zoek naar een project van Kevin Gagnon (gebaseerd op een project van Alan Burlison) om een ​​event-gedreven architectuur zoveel mogelijk in dit project te implementeren .

Status

Momenteel wacht ik op alle bestelde artikelen; ETA is eind mei.

Per 30 april 2020 zijn de pin headers en de 9 DoF dingetje geleverd.
1 mei 2020; soldeerdraad geleverd

6 mei 2020: De 3de hand(soldeer hulpje) is binnen samen met de RS-422/485 <-> TTL .

In afwachting van de leveringen ben ik begonnen met het bouwen van het wire-frame voor de applicatie.

Tussentijdse uitdaging

Uit de oude Robertson Databox komen 5 draadjes voor communicatie; Red (+12V) Brown (Rx), White (Tx), Green (Gnd) en Black(-0V).

Dit lijkt verdacht veel op de RS-232 bedrading zoals dat vroeger in NMEA0183 werd gebruikt. Voltages lopen tussen +12V en -12V voor reps. 0 en 1. Ik heb het ook altijd zo gebruikt in het netwerk en het heeft ook altijd zo gewerkt zonder problemen.
Echter…. de Ardruino werkt met voltages tussen 0 en 3,3 of 5 V( zelf te kiezen) en 12V maakt een tostie van mijn Ardruino.
Dit probleem is op te lossen door er een RS-232 <-> TTL converter tussen te zetten, maar dan moet je zeker weten dat ook echt RS-232 hebt. Want de nieuwere versie van NMEA0183 werken met RS-422 en de voltage daarvan zitten tussen 0 en 5 V (formeel zelfs tussen 0 en 10V). Ik heb dus een voltmeter gepakt om aan de draadjes te meten en zie het voltage tussen 0 en 3,5V schommelen. Dus geen negatieve voltages, wat op zich zou betekenen dat het op RS-422 protocol is gebaseerd.

Ik heb dus een multimeter met een oscilloscoop functie besteld om het signaal te kunnen meten en te analyseren en dan te bepalen of ik nu een RS-232<->TTL converter nodig heb of toch een RS-422.485 <->TTL converter….

7 mei, 2020, Yeahhh de Mega is binnen inclusief ” Die inoffizielle Anleitung zum Arduino!” en alles werkt. Ik ben nog in afwachting van de Buck step down converter die de Arduino van stroom moet voorzien van 7V (teruggebracht van 12V), het soldeerstation, de RS-232 <-> TTL converter en de 810 delige component en kit.

9 mei, 2020. Het desoldeerdraad is binnen net als de Buck step down converter .

10 mei 10, 2020. De NMEA parser (de NMEAtor) werkt prima. De code bevat testfuncties (die uitgezet kunnen worden en niet mee worden gecompileerd door het uitcommentariëren van #define TEST) die test NMEA berichten kan verzenden. Ik heb er 10 geselecteerd waartegen ik kan testen.

11 mei, 2020. De multimeter met oscilloscoop scherm is binnen en daar ben ik meteen mee aan boord gedoken om aan de NMEA signalen te meten.

Op basis van wat ik heb gezien aan de signalen kom ik tot de conclusie dat het signaal tussen 0V en 3.1V ligt en dat ik de RS422/485 <-> TTL converter moet gebruiken. Nog 6 deelleveringen te gaan….

Wordt vervolgd….