Jump to content

DIY: Elektronisk kompass med auto deklinasjon, NMEA og JSON utgang


Octant

Recommended Posts

Når en bruker OpenCPN og båten ligger fortøyd, svirer båt iconet i alle retninger. For å få OpenCPN til å stabilisere båten må programvaren vite båtens heading. OpenCPN aksepterer NMEA inngang fra elektroniske kompass i formatet;

 

"$IIHDG,247.15,000.0,E,,*17"

 

som er en standard ASCII streng. OpenCPN har en plugin som kompenserer magnetisk retning til sann retning.
 

Ett alternativ til dyre elektroniske kompass med NMEA utgang og deklinasjon, er å lage et selv. Til denne oppskriften har jeg benyttet følgende komponenter fra Adafruit.

GPS - https://www.adafruit.com/product/746 og kompass - https://www.adafruit.com/products/1746.   Det hele er tilkoblet et RPI2 kort med standard programvare fra Raspian. Når jeg først er i gang, ønsker jeg i tillegg til NMEA utgangen, også å ha et format som kan brukes i andre sammenhenger. Til dette lar jeg programvaren også produsere en JSON streng som er lett å lese for andre grensesnitt.

 

Deklinasjonen beregnes automatisk ut fra GPS posisjonen i øyeblikket og programvare bibliotek fra http://geographiclib.sourceforge.net/html/index.html.

 

Programvaren arbeider etter følgende prinsipp;

 

compass_state_machine.png

RPI kortet er satt opp i nettverket ombord og sender følgende UDP data ut 10 ganger i sekundet -  strengen "$IIHDG,234.37,000.0,E,,*1c" gir magnetisk retning og fanges opp av OpenCPN, og en JSON streng i følgende format;

 

 

{
    "latitude": " 67° 17' 5.601'' N",
    "longitude": " 14° 23' 31.966'' E",
    "altitude": "0.600",
    "declination": "05.595",
    "magnetic_bearing": "234.139",
    "true_bearing": "239.976"
}

der deklinasjonen beregnes ut fra båtens posisjon i øyeblikket og kompenserer for dette. Se bildet under for data ut fra RPI kortet.
 

compass_raw_output.png

 

Når NMEA strengen er akseptert av OpenCPN, ser det slik ut. Den røde stripplete linjen indikerer kompass retningen. Legg merke til at Dashboard pluggen viser både magnetisk- og sann kompass retning.

 

opencpn_med_kompass.jpg

 

 

JSON strengen benyttes til å vise kompass retningen i en frittstående applikasjon. Ved hjelp av QT Creator er et enkelt grensnitt laget som både går på et RPI3 kort med touchskjerm og en standard PC.

 

 

compass_day.png

 

 

Siden vi er i den mørke årstiden, er en utgave med natt palett også laget.

 

compass_night.png

Link to post
Share on other sites

Flott jobb!

 

Hver gang jeg leser innleggene dine blir jeg litt irritert fordi jeg selv ikke har tid til å leke med duppedittene mine. Har det meste av det jeg trenger for å lage endel moro til båt og hjem, bortsett fra tid og anledning...

SY Almara - 2005-modell Dufour 385 GL

Link to post
Share on other sites

Flott jobbet. Eneste ankepunkt er bruken av "bearing" fremfor "heading". xxHDG har vel intet med peilinger å gjøre.

 

Nå husker jeg ikke adressen til nettstedet ditt i farten - har du lagt ut nærmere prosjektbeskrivelse der? Det er uansett gull verdt med slike prosjekter. Leverandører av overpriset og proprietær båtelektronikk kan med god grunn skjelve i buksene.

Any ship can be a minesweeper. Once.

 

Husk lytteplikten på kanal 16 og å holde god avstand til båt som viser "signalflagg A" !

Link to post
Share on other sites

... Hvilken modell valgte du for å finne deklinasjonen?

 

 

 

Magnet felt modellen som er brukt er "Enhanced Magnetic Model (EMM2015) som gir data frem til 2020. Se https://www.ngdc.noaa.gov/geomag/EMM/index.html  for detaljer. Krever at en har fartøyets posisjon i lengde og bredde samt høyde og tid i beregningstidspunktet.  

 

Denne siden http://geographiclib.sourceforge.net/html/install.html  gir en grei beskrivelse av hvordan biblioteket kan installeres for bruk.  For min posisjon i øyeblikket (Bodø) er deklinasjonen 5.5954. Denne siden http://www.magnetic-declination.com/ gir også opplysninger om deklinasjonen på forskjellige plasser ved å klikke i kartet. 

Link to post
Share on other sites

Delta i diskusjonen

Du kan skrive innlegget nå, det vil bli postet etter at du har registrert deg. Logg inn hvis du allerede er registrert.

Guest
Svar på dette emnet

×   Du har postet formatert tekst..   Fjern formattering

  Only 75 emoji are allowed.

×   Innholdet du linket til er satt inn i innlegget..   Klikk her for å vise kun linken.

×   Det du skrev har blitt lagret.   Slett lagret

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...