Wo ist Felix ?

Von unterwegs werden wir versuchen regelmäßig über Kurzwelle unsere Position in das Winlink-System hochzuladen. Falls das klappt (hängt bei Kurzwelle ja immer ein wenig von den Übertragungsbedingungen ab), kann unsere aktuelle Position (und ggf. eine kurze Bemerkung) unter „Schiff“ und dann „Position & Route“ abgefragt werden.

Oder direkt unter diesem Link: http://shiptrak.org/?callsign=DL3NMO

Arduino Autopilot v1.0 beta

Das Projekt „Arduino Autopilot“ ist nun nach einigen weiteren programmier-intensiven Abenden heute in die beta-Phase übergegangen. Zusätzliche Kabel wurden von der Hydraulikpumpe ins Schiffsinnere verlegt und die Relais daran angeschlossen. Gespeist werden die Relais dann über eine 12 V Steckdose am Schaltpanel. Die Hydraulikpumpe benötigt je nach Last zwischen 3 und 7 A. Dabei muss die Hydraulikpumpe vom Original Autopiloten getrennt werden, da dessen Relais die Zugangsleitungen im Ruhezustand auf Masse legen. Die Hydraulikpumpe kann also jeweils nur mit einem System verbunden werden.

Nach Starten des Arduino Programms wird der momentan anliegende Kurs gespeichert. Dann wird der Kompaß-Sensor ständig ausgelesen und der Wert mit dem gespeicherten Zielkurs verglichen. Bei einer Kursabweichung oberhalb eines Toleranzbereiches wird nun die Hydraulikpumpe für eine kurze Dauer in die entsprechende Richtung aktiviert, was einen Ruderausschlag entgegen der Kursabweichung zur Folge hat. Danach gehen die Ruder wieder in die Ausgangslage zurück. Das wird so oft wiederholt, bis der Kurs wieder innerhalb des Toleranzbereiches liegt. Über zwei Potis sind dabei Zielkurs und Ruderausschlag justierbar. Optional kann über einen Hall-Sensor auch noch die Null-Position der Ruder abgefragt und im Programm berücksichtigt werden.

Knifflig bei der ganzen Sache ist die Kursberechnung, da ja der Kurs von 0 bis 359 Grad bzw. 1 bis 360 Grad definiert ist. Bei der Berechnung einer Kursabweichung (Differenz zwischen Zielkurs und aktuellem Kurs) muss darauf geachtet werden, ob der Kurs dabei einen Nulldurchgang erfährt, also z.B. von 356 Grad zu 6 Grad gewechselt hat.

Der erste Test im Hafen ist vielversprechend gelaufen, die Hydraulikpumpe läuft bei einer entsprechenden Kursabweichung (die wir ja durch Drehen des Kompaß-Sensors simulieren können) und stellt die Ruder in die entsprechende Richtung. Danach werden die Ruder wieder in die Ausgangslage gefahren und der Prozess wiederholt sich iterativ so lange, bis der Kurs wieder passt. Sehr hilfreich sind hierbei die Potis zur Feinabstimmung des Systems, da ansonsten der Arduino ja immer wieder mit dem Computer verbunden werden müsste, um das Programm entsprechend anzupassen. Wir sind natürlich sehr gespannt, wie sich das System auf offener See verhält, hoffen aber gleichzeitig, dass wir es nie benötigen werden!

Schaltplan für v1.0 beta

Schaltplan Arduino Autopilot v1.0 beta

Hydraulikpumpe

Hydraulikpumpe, wird vom Arduino über Relais angesteuert.

Arduino Autopilot im Beta Test

Arduino Autopilot im Beta Test

Der nächste Schritt ist nun, den experimentellen Breadborad-Aufbau fix zu verkabeln und alles in eine Plastik-Dose einzubauen, damit im Seegang alles an seinem Platz bleibt und sich die Verdrahtung nicht lösen kann.