Mit einem zweirädrigen Roboter wie diesem habe ich es geschafft, ihn zu stabilisieren, während er stillsteht. Dies wurde unter Verwendung eines digitalen Rückkopplungsregelungssystems durch Lesen der Position der Räder zur Bestimmung der Position durchgeführt, und die natürliche elektromotorische Gegenkraft von den Radmotoren wurde in der Rückkopplungsschleife zur Bestimmung der Geschwindigkeit verwendet. Es wurde mit einem PID-Regler stabil gehalten, der unter Verwendung eines Root-Locus-Algorithmus entworfen wurde, um es stabil zu halten und die Leistungsparameter (wie Prozentüberschwingen, Einschwingzeit usw.) zu modulieren. Ich wollte versuchen, es stabil zu halten und gleichzeitig vorwärts zu treiben, aber ich konnte nicht herausfinden, wie ich einen linearen Regler konstruieren sollte, der das kann. Ist es möglich, den Roboter sowohl vorwärts als auch rückwärts zu bewegen? Halten Sie es mit einem Rückkopplungsregler an den Rädern stabil, oder ist ein Gyroskop erforderlich?
quelle
Antworten:
Sie können auch andere Arten der Orientierungsmessung verwenden, z. B. einen Beschleunigungsmesser, die optische Verfolgung von Markierungen oder einen auf den Boden gerichteten Tiefensensor.
quelle
Wenn Sie es geschafft hätten, es in einer stationären Konfiguration stabil zu halten, sehe ich nicht wirklich, wie viel schwieriger es wäre, es bei einer konstanten Geschwindigkeit stabil zu halten. Vom Standpunkt des Systemmodells aus wäre es effektiv dasselbe, abgesehen von einigen Geschwindigkeitsversätzen. Wenn die Übergänge zwischen den Geschwindigkeiten nicht sehr groß sind, sollten sie in den Bereich der natürlichen Systemstörungen fallen.
quelle
Sie benötigen einige Sensoren, um den Status des Systems zu erkennen.
Linearisieren Sie das System zunächst in eine Zustandsraumform und überlegen Sie dann, über welche Sensoren Sie verfügen. Überprüfen Sie dann, ob es beobachtbar ist. Wenn es beobachtbar ist, können Sie die geschätzten Zustände in Ihre Steuerung einspeisen.
Momentan klingt es so, als würden Sie die Radposition und die Gegen-EMK (für die Geschwindigkeit) als direkte Messungen verwenden. Ohne Überprüfung der Beobachtbarkeitsmatrix bin ich nicht sicher, ob das System beobachtbar ist.
quelle
Mathematisch gesehen eliminiert die Tatsache, dass Sie jetzt eine Rotation haben (meistens), diesen Parameter als möglichen Steuerparameter. Grundsätzlich müssten Sie Ihren Algorithmus so umgestalten, dass er eine große und variable Winkelgeschwindigkeitskomponente akzeptiert, während Sie weiterhin die Winkelgeschwindigkeit in Ihrem Feedback verwenden. Je leiser dies ist, desto besser ist das wahrscheinliche Ergebnis, weil Sie wahrscheinlich ein Positionsdifferential anwenden werden, um einen anderen Steuerparameter abzuleiten. Oder besser gesagt, das ist eine Möglichkeit. Es sieht also so aus, als ob Sie einen anderen Steuereingang benötigen, aber es muss kein Beschleunigungsmesser sein. Sie können einen Horizont, eine feste Markierungsposition oder sogar Neigungssensoren festlegen.
quelle