Brushless Gimbal Controller - SOFTWARE

Status
Nicht offen für weitere Antworten.

fritz99

Erfahrener Benutzer
#61
Jetzt hab ich es endlich geschnallt, wie das mit den GYRO und DMP Parametern funktioniert.
Die Überlagerung von Winkel und absoluter Regelung funktioniert sehr gut.
Die Schwierigkeit besteht darin, die richtigen DMP Parameter zu finden damit das System stabil ausregelt und mit dem DMP nicht zu träge reagiert.
Aber das Gesamtsystem funktioniert wie es soll ( relativer Winkel und absolute horizontale Ausregelung )

Jetzt wird es spannend wie das System mit dem gimbal reagiert.
Gimbal habe ich schon Motoren werden ja bald in Österreich eintreffen.

Fritz
 
Zuletzt bearbeitet:

fritz99

Erfahrener Benutzer
#66
Also meiner Meinung nach reagiert der DMP Anteil des Reglers viel zu langsam.
Wenn der Sensor aus der Horizontallage kommt und sich der Motor aufgrund des DMP Reglers zu drehen beginnt dreht er weit über die Horizontallage hinaus bis er erkennt dass er zu weit ist und die Motorrichtung umkehrt.
Das kann soweit führen, dass bis zu 2 ganze Umdrehungen passieren.
Ich verstehe auch nicht ganz wie es funktionieren kann, dass man 2 voneinander "unabhängige" Input Parameter ( GYRO für P und DMP für I und D ) stabil in einem Regelkreis verwenden kann.
Mir gelingt es derzeit nicht.

Es gibt doch auch noch weitere Betatester ausser mir. Haben die keine Ergebnisse die hier Etwas betragen können ?

Fritz
 
#67
Hallo,

ich habe schonmal ein wenig bei den Settings in config.h geschaut. Ist bei der Motor Geometry später die tatsächliche Ankerzahl einzutragen ( also 12 beim Motor 4404 ) oder doch einen Faktor?

// Define Motor "Geometry"
// -> 2 Poles = 1 revolution for one 2 PI Sinus
// -> 14 Poles = 1/7 revolution for one 2 PI Sinus
#define N_POLES_MOTOR_PITCH 14
#define N_POLES_MOTOR_ROLL 14

Von früheren Versuchen mit Regelkreisen und dem Bau von 12V-Servos weiss ich noch, dass das Finden guter PID-Einstellungen selbst mit einer GUI und sofortiger Rückmeldung der Verhaltensänderung ziemlich schwierig ist. Ich habe nochmal bei meinen Servocontrollern geschaut und die Werte kopiert, die gut funktioniert haben: http://www.andreaskielb.de/PID.jpg

Hier ist noch ein Tutorial dazu unter "Tuning the PID constants": http://www.pololu.com/docs/0J38/5 basierend auf der Ziegler–Nichols Methode aber eher praktisch orientiert, was man in welcher Reihenfolge machen soll.

Vereinfacht gesagt ist ja "P" die allgemeine Regelhärte, und "D" bestimmt die Über- oder Untersteuerung. Also wenn der Motor übers Ziel hinausschießt und anschliesend zurückdreht, kann "D" erhöht werden oder auch "P" gesenkt, um das Ansprechen insgesamt weicher zu machen. Wenn der Motor oszielliert, ist ebenfalls "P" zu groß.

"I" finde ich von den drei Werten am schwierigsten zu verstehen und ich bin auch aus der Erklärung im Tutorial nicht so recht schlau geworden...
 
Zuletzt bearbeitet:

nico_99

Erfahrener Benutzer
#70
Werden wir dann irgendwann auf den Kalman Filter zugreifen...müssen?
 

fritz99

Erfahrener Benutzer
#71
ok !

Habe jetzt Nick und Roll Achse vertauscht.
Dachte immer dass beide Achsen von der Regelung her gleich sind nur um 90 Grad verdreht.
Dem ist offensichtlich nicht so.
Nun zittert die Achse nicht mehr.
Nun habe ich noch das problem, dass Gyro und DMP in entgegengesetzte Richtungen regeln.
Wie kann ich die Regelrichtung von DMP in Bezug auf den Sensor um 180 Grad drehen ?
 

rc-action_de

Erfahrener Benutzer
#76
Ja genau ... Video ?! Nee alle testen wohl heimlich ;-) Ich wäre auch mit dabei, aber meine bestellten MPU`s sitzen irgendwo zwischen Deutschland und Frankreich fest.

Viele Grüße
Henry
 

fritz99

Erfahrener Benutzer
#77
Hat funktioniert bedeutet nur, dass das auf den Kopf drehen des Sensors nun in einer Achse in die gleiche Richtung regelt.

Hab nun einen gimbal aufgebaut für beide Achsen zum Test.
Eine Achse zittert zumindest nicht mehr. Die zweite zittert um plus minus 5 Grad wie wild.
Habe mich nun insgesamt schon 6 Stunden mit den Parametern gespielt.
Konnte nicht annähernd ein brauchbares Ergebnis erzielen !

Ich glaube wir haben noch einen langen Weg der Software vor uns. ( Bitte das nicht als Kritik verstehen )
Da ich die Software nicht im Detail bearbeiten kann bin ich wie wir alle von den super Softwarekenntnissen der Leute hier im Beitrag angewiesen.
Ich komme nicht weiter.

Fritz
 

Lonestar78

Erfahrener Benutzer
#78
Also ich glaube, ich hab irgendwo einen kapitalen Bock drin.
Ich vermute, irgendwo im Code vertausche ich Achsen oder so.
Komme frühestens Sonntag dazu, einen Blick drauf zu werfen, sorry!
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten