Hallo locked,
das Umgebungslicht wird bei jedem Zyklus mit gemessen.
Ich habe nur eine Stellgröße und das ist die Steuerspannung für den Motor, also die PWM. Der Ausgang des Balancierreglers (PD) und des Geschwindigkeitsreglers werden zusammenaddiert und bilden die Stellgröße PWM.Zitat von locked
Der Antrieb wird als PT1-Glied (Verzögerungsglied 1.Ordnung) angenommen und rechnerisch nachgebildet. Ich habe im Code eine Variable u, die der Spannung am Motor entspricht. Mit der folgenden Formel wird daraus die Geschwindigkeit v berechnet:Wie errechnest du dir die Geschwindigkeit?
v = 0.987*v + 0.00189*u;
Das ist ein Algorithmus, wie er auch bei digitalen Filtern für ein RC-Glied verwendet wird. Die berechnete Geschwindigkeit ist natürlich nur so genau wie die zugrunde gelegten Konstanten mit den wirklichen Werten übereinstimmen. Bei geänderten Umgebungsbedingungen (Reibung etc.) gibt es Fehler.
Ich werde morgen meinen Code als Anschauungsbeispiel hier rein stellen. Ich muss ihn nur etwas aufräumen, damit er leserlich wird. Deshalb dauert es noch bis morgen.
Gruß Waste
Lesezeichen