Ja, genau.Zitat von locked
Den P-Regler für die Geschwindigkeit darf man nicht als alleinstehenden Regler betrachten, der ist ein Teil der gesamten Regelung. Alleine würde er nicht funktionieren, da er mitkoppelt. Er ist nicht gegengekoppelt wie normal eine Regelung ist. Und jetzt wird es schwierig für mich, das zu erklären. Ich versuch es mal so: Angenommen der Bot wurde im Winkel ausgeregelt aber er fährt noch mit konstanter Geschwindigkeit, dann muss, um ihn zum Stehen zu bringen, die Geschwindigkeit zuerst einmal erhöht werden, damit er sich nach hinten neigt und dann kann erst abgebremst werden. Kurz vor dem Stillstand dann der umgekehrte Vorgang damit er sich wieder aufrichtet. Auch beim Losfahren aus dem Stillstand muss man zuerst in die Gegenrichtung starten. So ein Verhalten bewirkt die Zusammenschaltung. Damit es nicht ausartet, wird der P-Regler begrenzt. Der Winkelregler soll die Oberhand behalten.Wirkt der zweite Regler dem Ersten nicht entgegen?
Wenn man mal den Luftwiderstand außer Acht läßt, dann steht ein ausbalancierter Bot auch bei einer konstanten Geschwindigkeit aufrecht. Eine Winkeländerung kann nur durch eine Beschleunigung verursacht werden. Das bedeutet, wenn ein stillstehender balancierender Bot eine Störung durch antippen erfährt, dann wird er nur mit einem Winkel-Regler ausgestattet, zwar wieder in die aufrechte Position regeln aber durch den Regelvorgang beschleunigt haben und so mit konstanter Geschwindigkeit weiterfahren. Umgekehrt kann man so einen Bot durch festhalten zum Stehen bringen. Ob die Reibung dabei das Verhalten in der Wirklichkeit verbessert oder verschlechtert hat, kann ich gar nicht mehr sagen. Das müsste ich erst wieder ausprobieren. Aber so ähnlich hat sich mein Asuro nur mit Winkelregler verhalten.Also wenn man nur einen Winkelregler verwendet, bleibt er doch auch auf dem gleichen Fleck stehen, er fährt ja nur wenn er auf dem Gleichgewicht kommt.
Das hat sich so ergeben. Ich hatte früher nur 2 Messungen addiert und die Regelung so ausgelegt. Die Werte sind auch um den Faktor 100 hochskaliert, um möglichst mit Integer rechnen zu können. Mit der Filterung von 4 Messungen wollte ich das nicht mehr umstellen. Ist jetzt etwas schlecht als Anschauungsbeispiel, man möge mir das verzeihen.Wegen der Filterung:
Du addierst die letzten 4 Winkelwerte. Aber wieso dividierst du dann nur 2 und nicht durch 4?
Gruß Waste
Lesezeichen