Problem bei der Rampengenerierung des rudimentären internen Funktionsgenerators der MFU.

Die Rampenzeitdauer ist in ihrer Genauigkeit stark von den folgenden Faktoren abhängig:

FGTopValue
FGLowerMostValue
FGRampRiseTime

Beispiel:

FGTopValue = +10 Volt → 745D1H in Bit
FGLowermostValue = -10 Volt → 8BA2EH in Bit
FGRampRiseTime = 1ms

Die Differenz zwischen -10 Volt und + 10 Volt beträgt 20 Volt.

Die interne Auflösung der Rampe ist 16 Bit breit.

Bezogen auf +/-11 Volt (max./min. zulässige Werte für FGTopValue /FGLowermostValue ) und 16 Bit (2^16 = 65.536 Bit) folgt daraus:

((FGTopValue - FGLowermostValue) / (22 Volt / 2^16Bit))

((10V - (-10V) / (22V / 2^16Bit) = 59.578 Bit

Der Bereich von +/- 10Volt wird also mit 59.578 Bit aufgelöst.

Der Funktionsgenerator wird mit 100MHz getaktet, 1ms benötigt 100.000 Takte

In 100.000 Takten müssen also 59.578 Inkrementschritte gemacht werden.

100.000 / 59.578 = 1,678

Es müsste also alle 1,678 Takte ein Inkrement erfolgen.

Der Funktionsgenerator erwartet eine natürliche Zahl die ihm mitteilt, wie viele Takte zwischen einem Inkrement, bzw. Dekrement vergehen müssen.

PowerConfigAdvanced berechnet für dieses Beispiel den Wert „1“ als Anzahl der Takte.

Somit dauert der Anstieg einer Rampe mit diesen Einstellungen lediglich 595,78us.

Problem_bei_der_Rampengenerierung_des_rudimentären_internen_Funktionsgenerators_der_MFU.jpg

Abbildung: Simulation des int. Funktions-Generator der MFU

Bei einer Einstellung von +/- 1 Volt folgt:

((1V - (-1V) / (22V / 2^16Bit) = 5957,8 Bit

100.000 / 5957,8 = 16,78 → mit ~5957 * ~16, dass die Rampe nach rund 953,12us durchlaufen ist.

-- DerekSchupp - 2019-08-09

This topic: EPS > AdaptiveControlUnit > HowThingsWork > IntFuncGenMFU
Topic revision: 2019-08-09, DerekSchupp
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding GSI Wiki? Send feedback | Imprint (german) | Privacy Policy (german)