Rotorsteuerung

Neues Projekt: Webbasierende Rotorsteuerung

Ich habe ein neues Programmier-Projekt begonnen, welches soweit auch schon einen ersten guten Stand erreicht hat: Eine Webbasierende Rotorsteuerung. Was genau meint das nun?

Ganz einfach: Sie ermöglicht mit einem Browser im internen Hausnetz den Rotor (der aktuell noch nicht existiert, aber demnächst kommen wird) einer Kurzwellenantenne zu drehen – und zwar, wie erwähnt, von einem beliebigen Endgerät aus! Die Idee entstand aus der Problematik heraus, dass die (noch geplante) Kurzwellen-Antenne von mehreren Stationen aus benutzt werden soll (wechselseitig versteht sich) – und hierbei will man dann nicht dauernd das Steuergerät vom Keller ins 1. OG schleppen und so weiter. Außerdem hat man so z.B. auch per Handy die Möglichkeit, mal einfach schnell zu schauen, in welche Richtung die Antenne aktuell steht.

Das „Alleinstellungsmerkmal“ des Projektes ist die Kopplung an QRZ.com, die es ermöglicht, statt der Zielrichtung in Grad auch einfach das Rufzeichen der Zielstation ins Textfeld einzugeben, um so die Richtung durch die Koordinaten, die bei QRZ.com hinterlegt sind im Idealfall, zu ermitteln. Dieses Spiel funktioniert leider natürlich nur, wenn das Rufzeichen bei QRZ.com geführt ist.

Die Berechnung der Position erfolgt durch folgende Formel, die ich schlussendlich bei Wikipedia gefunden habe:

\alpha =\arccos \left({\frac  {\cos(\phi _{A})\cdot \sin(\phi _{B})-\cos(\lambda _{A}-\lambda _{B})\cdot \cos(\phi _{B})\cdot \sin(\phi _{A})}{{\sqrt  {1-(\cos(\lambda _{A}-\lambda _{B})\cdot \cos(\phi _{A})\cdot \cos(\phi _{B})+\sin(\phi _{A})\cdot \sin(\phi _{B}))^{2}}}}}\right)
Quelle: https://de.wikipedia.org/wiki/Orthodrome#Kurswinkel_und_rechtweisende_Kurse

Die Sache ist mathematisch einigermaßen komplex gehalten, gebe ich zu.

Programmtechnisch wird das Ganze übrigens in der Programmiersprache Python umgesetzt – eine auch für mich „neue Welt“, da ich bisher mit Python recht wenig gemacht habe.

Hardwareseitig läuft’s mit einem RaspberryPi, einer Relais-Karte, die via GPIO-Schnittstelle gesteuert wird und einem MCP3008-Chip, der als Analog-/Digital-Wandler arbeitet und die Position aus dem Rotor (via Potentiometer) ermittelt.

Ich überlege übrigens, ob ich das Projekt auf Github stellen soll – bin mir aber nicht sicher, ob ich damit nicht irgendwelche Lizenzierungsprobleme bekomme, weshalb ich vorerst die Sache als Projekt für mich selbst sehe.

Ein Kommentar

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

* Cookie-Opt-In: ich bin damit einverstanden, dass mein Name, meine E-Mail Adresse und meine Webadresse in diesem Browser gespeichert werden, bis ich wieder kommentiere (Datenschutzerklärung).