|
CCS Modul R_ACC2ANT |
$Id: r_acc2ant.C,v 1.18 2005/06/01 16:07:48 gew3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Normierung und Berechnung Antennendiagramm fuer ACC2
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: r_acc2ant.C
Autor: RtW2/TEF32-Greule (15.11.02)
Zielsystem: LINUX bzw. HP9000/V743 (HP-RT 3.01), /7/C/D (HP-UX 10.20)
Sprache: ANSI-C
---------------------------------------------------------------------
Prototyp:
void r_acc2ant(
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung->begin_modulblock
,p_verwaltung->anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Einlesen von 9 Feldern (Winkel, Realteil Beam1 ... Imaginaerteil Beam4),
In Abhaengigkeit vom Mode entweder folgendes tun:
- Normierung Antennendiagramm => Mode = NORM1.
Rueckgabe sind Flash-Daten fuer ACC2; Groesse der Flash-Daten = 0x2000 Byte => 8192 Byte!
Daten des Antennendiagramms, Beginn und Ende des Datenbereichs fürs Antennendiagramm und die
Checksumme werden als Ergebnisstring dieser Funktion zurueckgeliefert
Aktivitaeten:
Winkelwerte werden ueberprüft auf Gueltigkeit:
Bereich -10 .. +10Grad mit einer Aufloesung von 0.1 Grad
Ergebnisdaten werden in einem STRING-Feld zurückgegeben;
Definition des Feldes mit Modul "E_ARRAY_INI"; es erfolgt hier eine Ueberpruefung
auf die Laenge des Feldes mit den zu erwartenden Daten.
Auf die Daten vom Ergebnis-Feld kann anschliessend mit dem Modul "P_ZERLEGE_STR"
zugegriffen werden. Hier ist beim Parameter "INPUT_STRING" die &-Variable für das
Feld anzugeben. Weitere Zugriffsmöglichkeit soll mit dem Modul "P_AUFTRAG" realisiert
werden.
Datumsinformationen (Jahr, Monat, Tag, Std, Min) werden beim Programm-Durchlauf generiert,
aufbereitet und in das Ergebnis-Feld an die entsprechende Stelle eingetragen
RTC-Nummer kann optional angegeben werden; bei Angabe werden max 24 Zeichen ins Ergebnisfeld
eingetragen
Parameter DATA1 .. DATA5 sind z.Z. noch ohne Funktion!
Daten der vier Beams und des Aufnahmewinkelbereichs werden nach Lastenheft berechnet und ebenfalls
ins Ergebnisfeld eingetragen.
Abschliessend erfolgt die Berechnung einer Checksumme ueber die Daten des Antennendiagramms
- Berechnung Kennwerte (Figure of Merit) => FIG_OF_MER_01
Überprüfung der Gültigkeit der Daten auf Basis des Winkelbereichs und der minimalen Leistung
Aktivitäten:
Überprüfung des vorhandenen Winkelbereichs mit den übergebenen Daten - Parameter: DATA1 = WINKEL;
Bestimmung, ob das Signal für den jeweiligen Winkelindex im Rauschen liegt - Parameter: DATA2
und die Felder WINKEL, REAL_BEAM1 ... IMAG_BEAM4
Suchen des stärksten Beams für den Index, Selektierung des Wertes nach Bereich und Eintrag des
Bereichwertes in das Ergebnisfeld
Ergebnis ist ein Feld folgender Struktur:
ERGEBNIS = {0,0,..0,0,3,3,...3,3,2,2,....2,2,1,1,....0,0,...0}
Das Antennendiagramm wird somit von links ausgehend in den Bereich 0_Links, 3, 2, 1, 0_Rechts aufgeteilt.
- Berechnung Kennwerte (Figure of Merit) => FIG_OF_MER_02
Bestimmung der Steigungswerte fuer Betrag und Phase,
Eingabewerte sind:
DATA1 = linker Index des Bereichs 3
DATA2 = linker Index des Bereichs 2
DATA3 = linker Index des Bereichs 1
DATA4 = linker Index des rechten Bereichs 0
DATA0 = BETRAG oder PHASE
Felder WINKEL, REAL_BEAM1 ... IMAG_BEAM4
Im Ergebnisfeld sind ist nun für den Betrag bzw. für die Phase die komplette Steigungkennlinie
über den aufgenommenen Winkelbereich einhalten.
...
Beschreibung der Moduluebergabeparameter:1 PRUEFSCHRITTGAUDI Pruefschritt ------------------------------2 POSITION
PAV- Position ------------------------------3 ANT_MODE
Auszufuehrende Aktion bei diesem Modul NORM1: Normierung Antennendiagramm FIG_OF_MER_01: Bereichsberechnung FIG_OF_MER_02: Steigungsberechnung für Betrag bzw. Phase ------------------------------4 RTC_ID
ID des verbauten RTCs. ------------------------------5 DATA1
Vorhalt fuer weitere Uebergabedaten;
Bei ANT_MODE = FIG_OF_MER_01: Winkelbereich
Bei ANT_MODE = FIG_OF_MER_02: linker Index des Bereichs 3
------------------------------6 DATA2Vorhalt fuer weitere Uebergabedaten; Bei ANT_MODE = FIG_OF_MER_01: minimale Leistung Bei ANT_MODE = FIG_OF_MER_02: linker Index des Bereichs 2 ------------------------------7 DATA3
Bei ANT_MODE = FIG_OF_MER_02: linker Index des Bereichs 1
------------------------------8 DATA4Bei ANT_MODE = FIG_OF_MER_02: linker Index des rechten Bereichs 0 ------------------------------9 DATA5
Bei ANT_MODE = FIG_OF_MER_02: BETRAG oder PHASE ------------------------------10 WINKEL
Arrayvariable 1 fuer das Winkelfeld ------------------------------11 REAL_BEAM1
Arrayvariable 2 fuer den Realteil BEAM1 ------------------------------12 IMAG_BEAM1
Arrayvariable 3 fuer den Imaginaerteil BEAM1 ------------------------------13 REAL_BEAM2
Arrayvariable 4 fuer den Realteil BEAM2 ------------------------------14 IMAG_BEAM2
Arrayvariable 5 fuer den Imaginaerteil BEAM2 ------------------------------15 REAL_BEAM3
Arrayvariable 6 fuer den Realteil BEAM3 ------------------------------16 IMAG_BEAM3
Arrayvariable 7 fuer den Imaginaerteil BEAM3 ------------------------------17 REAL_BEAM4
Arrayvariable 8 fuer den Realteil BEAM4 ------------------------------18 IMAG_BEAM4
Arrayvariable 9 fuer den Imaginaerteil BEAM4 ------------------------------19 ERGEBNIS
- 1 Feld mit xxx Daten ------------------------------20 FEHLERFLAG
Fehlerflag