Rotor (Deutsch)

From Ethersex_Wiki
Revision as of 10:13, 1 July 2013 by Dg9oaa (talk | contribs)
Jump to: navigation, search
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

vor dem Einbau


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