Rotor (Deutsch)
Rotor Steuerung | |
---|---|
Status | Stable
|
menuconfig | I/O->Rotor via HamLib |
Pinning | yes |
Ecmd | yes |
Depends on | ECMD (optional) |
Requires | - |
Code | [?] |
Die Rotor Steuerung kann per ECMD Kommandos angesprochen werden. Zur primären Verwendung kommt der HAM 4. Dieser Rotor besitzt eine mechanische Bremse. Um ihn zu drehen benötigte der Rotor die Freigabe der Bremse und die Drehrichtung (cw oder ccw).
Pinning
Die drei Ausgänge CW, CCW, und BREAK weden in der Datei pinning/hardware/<your board>.m4 beschrieben.
ifdef(`conf_ROTORHAMLIB', ` pin(ROTOR_CW, PC3, OUTPUT) pin(ROTOR_CCW, PC4, OUTPUT) pin(ROTOR_BREAK, PC5, OUTPUT) ')
Für den Analogwert wird AD Wandler 0 (bzw. der erste) verwendet
Konfiguration
Über den ersten AD Wandler wird die Richtung/Winkel des Rotors ermittelt. Bei den meisten Rotoren wird ein Potentiometer zur Richtungsanzeige verwendet. Diese Spannung wird abgegriffen und dem AD Wandler zu geführt. Achtung, der AD Wandler läuft nur zwischen 0 bis 5 Volt. Meist ist die/der Spannung/Widerstand bei einem Winkel von 0 Grad nicht Null sondern etwas höher. Um der Steuerung mitzuteilen bei welchem Eingangspegel 0 Grad und 360 Grad ist, kann der AD Wert für 0 und 360 Grad gespeichert werden. Der Rotor wird von Hand auf 0 Grad gedreht und mittels Kommando 'rotor status' wird der AD Wandler Wert abgefragt und notiert. Nachdem der Rotor auch bei 360 Grad seinen Status ausgegeben hat, werden beide Werte per Kommando 'rotor calibrate min max' im EEPROM abgespeichert.
- Ein Beispiel rotor calibrate 75 950 (maximal Wert ist 1023)
Steuergerät vom Ham4
Ansteuerung von Hamlib
Das OpenSource Projekt Hamlib [1] bietet Software zum Steuern des Rotor Interfaces. An den Hamlib-rotctld können viele Amateurfunk Software Hilfsprogramme angebunden werden. Der rotctld ist ein Geschwister vom rigctld. Der rigctld kann die Funkgeräte über die CAT Schnittstelle fernsteuern. GPredict steuert bei mir meinen Rotor.
- rotctld -m 1501 -r towerio:2701 -T freebsd
Das Argument -m 1501 spezifiziert das Ethersex-Interface -r towerio:2701 gibt den Host und den Port des Ethersex Boards an -T gibt die lokale IP-Adresse an / zwingt rotctl(d) auf IP4 bzw. IP6
ECMD Commands
Command | Function |
---|---|
rotor move | Angabe von Winkel und Geschwindigkeit in % |
rotor status | gibt Drehrichtung, Winkel und Geschwindigkeit aus |
rotor cw | dreht den Rotor im Uhrzeigersinn |
rotor ccw | dreht den Rotor gegen den Uhrzeigersinn |
rotor stop | hält den Rotor sofort an |
rotor park | dreht den Rotor in die Park Position |
rotor setparkpos | Speicherung der Park Position als Winkel (0-360) |
rotor calibrate | Angabe der min und max Grenzwerte für die Analog-Digital Wandlung |
rotor get calibrate | gibt die Grenzwerte aus |