Zauberkiste v3.1 (Navirechner)

in #deutsch5 years ago

Über das Thema, wie ich die Navigation auf dem Schiff lösen möchte gibt es mittlerweile schon recht viel.

Trotzdem muß ich an das Thema noch mal ran.

Schon verblüffend, wie sich das Ganze von „DVB-T Stick am Laptop“ zu einer Art „Zentraleinheit“ entwickelt hat.

Wie dem auch sei: Das Teil hat die letzten 2 Jahre gut funktioniert und die Liste der Probleme war recht kurz:

  • Wlan Empfang ist hin und wieder ausgefallen (das interne WLan vom RPI3 ist nicht wirklich gut, behoben durch Wlan Stick + externer 6dB Antenne)

  • defekte SD Karte (vermutlich durch nicht korrektes Herunterfahren, behoben durch Shutdown-Routine)

  • ausschalten vergessen – Schutzschaltung vom LiPo hat Tiefentladung verindert

Ungelöste Dinge:

  1. LED Reihe zur schnellen Kontrolle, ob alles funktioniert ohne Funktion
  2. LCD Display funktioniert meistens nicht (Zeit Position, Geschwindigkeit, Kurs und Luftdruck unabhängig vom Raspberry)
  3. Schaltung, damit Raspberry sicher herunterfahren kann ist stark verbesserungswürdig
  4. Lüfter für Zwangskühlung ist sehr laut / hat ein unangenehmes Geräusch (ist ein 25mm Lüfter, der gute 10000Upm drehen kann)
  5. GPS Datenstrom setzt hin und wieder grundlos aus… *grrrr*


Einiges war einfach, wie z.B.:

  1. ein simpler Kabelbruch bei den LED und
  2. LCD, wobei ich mich bei letzterem dann doch für ein I2C Display entschieden habe, um ein paar Pins am Arduino zu sparen.
  3. Die neue Abschaltautomatik war schon schwieriger. Vorher lief das einfach über ein Relais, welches über einen Transistor + Kondensator gehalten wurde. Somit hatte der Raspberry vom Moment es Abschaltens etwa 12 Sekunden Zeit – viel zu wenig um alle Dienste zu beenden. Deshalb habe ich für die Zeitsteuerung den guten alten ATMega 328P (Arduino Nano) genommen und eine Zustandsmaschine programmiert. Das hat den Vorteil, daß nun statt der 3 Zustände („Aus“, „Arduino ein“ und „Arduino und Raspbbery ein“) mehr Zustände zur Verfügung stehen, da auch die vorherige Schalterstellung berücksichtigt wird. Zudem kommen jetzt bistabile Relais zum Einsatz, die keinen permanenten Haltestrom benötigen.
  4. Den Lüfter habe ich durch einen Noctua NF-A6x25 getauscht, der wesentlich leiser ist.
  5. Ja und dann noch die Sache mit dem GPS Datenstrom. Das hat Nerven gekostet. Ganz kurz erklärt: Ich brauche den Datenstrom in 4800 Baud, da sonst die Funke damit nicht klar kommt. Das GPS sendet aber mit 9600 Baud und damit kommt man in Probleme (Bufferüberlauf), wenn der Datenstrom vom Arduino zwar mit 9600 Baud empfangen wird, aber nur mit 4800 wieder rausgeht… Aber es gibt eine Lösung! Man initialisiert das GPS mit 9600 Baud, sendet einen Befehl, um es auf 4800 Baud umzuschalten und verbindet neu mit 4800 Baud. Funktioniert 1A, außer daß das Modul anscheinend hin und wieder auf 9600 Baud zurückfällt. Warum auch immer. Auch der Support konnte mir dafür keine Erklärung geben. Die Lösung ist ein Work-Around. Sobald keine verwertbaren PGTOP Daten (Die sagen etwas über den Zustand der GPS Antenne) mehr kommen, wird mit 9600 Baud verbunden und das Modul auf 4800 zurückgesetzt. Ist keine schöne Lösung, aber mir fällt keine andere ein. Sicherlich wäre es besser die Firmware des Moduls zu ändern, aber da ist kein Herankommen…
Sort:  
Du hast ein kleines Upvote von unserem Curation – Support – Reblog Account erhalten. Dieser wurde per Hand erteilt und nicht von einem Bot. Wir, die Mitglieder des German Steem Bootcamps möchten die Deutsche Community stärken. Bei einer Mitgliedschaft im German Steem Bootcamp könnt ihr sicher sein, dass eure Beiträge auch gelesen werden.Du findest uns im Discord unter https://discord.gg/HVh2X9B. ###### Aktuell als Kurator tätig ist @feuerelfe

Hey, Du wurdest von @altobot gevotet!

Coin Marketplace

STEEM 0.35
TRX 0.12
JST 0.040
BTC 71539.00
ETH 3603.23
USDT 1.00
SBD 4.75