Brushless Gimbal Controller - SOFTWARE

Status
Nicht offen für weitere Antworten.

fritz99

Erfahrener Benutzer
Hallo zusammen,

hier mal eine kurze Zusammenfassung meiner gestrigen Tests mit der 37 Software. Ich habe dabei ein Minimalsystem und vorerst nur die Rollachse betrachtet.
Egal mit welchen PID- Einstellungen ich es probiere: der Ausgleich auf der Rollachse funktioniert gut solange das Gimbal in Bewegung ist. Am Endpunkt angekommen wird dieser nicht sauber angefahren und der Rollmotor schwingt bei nidrigem P- Wert um ca. 10°.
Mit höherem P-Wert schwingt sich die Rollachse dann komplett auf.

Sobald das Gimbal bwewegt wird, funktioniert der Ausgleich scheinbar gut. Der Motor wird sauber nachgeführt und es sieht so aus, als würde er dort stoppen wollen, wo er soll.

Ältere Versionen:
Bei reiner Verwendung des Gyro funktioniert die Regelung super. Bei langsamen Bewegungen gibt es ein paar Ruckler. Bei schnellen Bewegungen wird die Kamera sauber nachgeführt.

Das einzige Problem ist der Gyrodrift, welcher mal mehr und mal weniger stark ausfällt. Bei Verwendung der Quaternationsdaten ergibt sich wieder das gleiche Phänomen wie bei der 37`ger Software.

Am besten funktioniert bei mir immer noch eine 1/1 Regelung mit Sensor an der Gimbalhalterung unter Verwendung der Quaternationsdaten.

PS: ich benutze übrigens die Flyduino MPU.

Viele Grüße
Henry
Hallo Henry !
Eigentlich bin ich auf die gleichen Ergebnisse gekommen.
Welche PID Einstellungen funktionieren bei Dir mit der aktuellen Version ?

Fritz

Fritz
 

rc-action_de

Erfahrener Benutzer
Hallo Henry !
Eigentlich bin ich auf die gleichen Ergebnisse gekommen.
Welche PID Einstellungen funktionieren bei Dir mit der aktuellen Version ?

Fritz

Fritz
Hallo Fritz,

genau das ist das Problem. Bei mir funktioniert bisher nur eine abgespeckte 28`Software mit Rückschritt auf 1/1 Regelung.
Sie ist nur mal schnell zurecht gestückelt, funktioniert bei mir aber zumindest bisher am besten.

Hier gibt es jedoch keine PID- Einstellungen, weil keine PID Regelung vorhanden ist.

Viele Grüße
Henry
 
Hallo zusammen,

hier mal eine kurze Zusammenfassung meiner gestrigen Tests mit der 37 Software. Ich habe dabei ein Minimalsystem und vorerst nur die Rollachse betrachtet.
Egal mit welchen PID- Einstellungen ich es probiere: der Ausgleich auf der Rollachse funktioniert gut solange das Gimbal in Bewegung ist. Am Endpunkt angekommen wird dieser nicht sauber angefahren und der Rollmotor schwingt bei nidrigem P- Wert um ca. 10°.
Mit höherem P-Wert schwingt sich die Rollachse dann komplett auf.

Sobald das Gimbal bwewegt wird, funktioniert der Ausgleich scheinbar gut. Der Motor wird sauber nachgeführt und es sieht so aus, als würde er dort stoppen wollen, wo er soll.

Ältere Versionen:
Bei reiner Verwendung des Gyro funktioniert die Regelung super. Bei langsamen Bewegungen gibt es ein paar Ruckler. Bei schnellen Bewegungen wird die Kamera sauber nachgeführt.

Das einzige Problem ist der Gyrodrift, welcher mal mehr und mal weniger stark ausfällt. Bei Verwendung der Quaternationsdaten ergibt sich wieder das gleiche Phänomen wie bei der 37`ger Software.

Am besten funktioniert bei mir immer noch eine 1/1 Regelung mit Sensor an der Gimbalhalterung unter Verwendung der Quaternationsdaten.

PS: ich benutze übrigens die Flyduino MPU.

Viele Grüße
Henry
Hallo Henry,

super Zusammenfassung. In der Version 3.6, die Du wahrscheinlich für den Test mit reinen Gyro-Daten genommen hast, war der Low-Pass-Filter aus Version 3.7 noch nicht drin (... und in der Version 3.7 ist ja keine reiner RAW_GYRO_Betrieb mehr möglich). Das würde für mich theoretisch die Ruckler bei langsamen Bewegungen erklären. Meine Hardware bekomme wahrscheinlich erst morgen oder Samstag.

Hättest Du nochmal Zeit und Lust eine Version der 3.6 zu testen, bei der ich den Low-Pass-Filter aus 3.7 reinkopiert habe. Du kannst Sie hier runterladen: http://www.andreaskielb.de/_036A_2.rar

Diese Version könntest Du dann auch noch für einen zweiten Test mit reinen DMP-Daten verwenden, der allerdings im Moment nur mit 2000 deg/sec richtig funktioniert. Der Grund ist, dass der ResolutionDivider dem DMP bisher noch nicht mitgeteilt werden kann. Bei der offiziellen 3.6 Version gab es aber das Problem, dass beim Init des DMP die 250 deg/sec fest einprogrammiert waren. Das ist auch erst seit der Version 3.7 geändert... ist halt noch alles Alpha...

void MPU6050::initialize() {
setClockSource(MPU6050_CLOCK_PLL_XGYRO);
setFullScaleGyroRange(MPU6050_GYRO_FS_250);
setFullScaleAccelRange(MPU6050_ACCEL_FS_2);
setSleepEnabled(false); // thanks to Jack Elston for pointing this one out!
}

Jedenfalls waren Deine Tests von diesen Dingen betroffen, wenn sie nicht selbst geändert hast. Der mit Rohdaten vom fehlenden Low-Pass-Filter und der mit DMP von den noch nicht funktionierenden niederen Auflösungen. Für einen DMP-Test müsstest Du wie gesagt die Auflösung wieder auf 2000 deg/sec stellen.

Ich denke jedenfalls, man sollte beide Varianten getrennt testen, bevor man Sie in einem Code vereint. Die Idee, die DMP-Daten für langsame Bewegungen und die driftfreie Ausrichtung zu nehmen finde ich schon gut. Dann müsste man die Fusion der schnelleren RAW_GYRO_Daten mit den ACC_Daten nicht selbst vornehmen und könnte Rechenleistung und Programmierarbeit sparen. Außerdem ist der DMP ja genau dazu da :).
 
Zuletzt bearbeitet:

rc-action_de

Erfahrener Benutzer
Hallo Andreas,

danke für die ausführliche Antwort. Das klingt plausibel. Auf den ersten Blick läuft deine angepasste 36 im Gyro sehr schön. Langsame Bewegungen sehen besser aus als bei der angepassten 28. Die einzige Herausforderung ist die z- Achse (Yaw) welche in den Rollwinkel mit eingreift. Ich denke hier fehlt nur der Abgleich mit dem ACC, oder ?

Auf jeden Fall scheint der Gyro Mode sauber und vor allem schnell zu laufen.

Der DMP Mode bringt keinerlei Reaktionen, so als wenn die Adresse nicht passt ==> sie stimmt und INT ist auch angeschlossen.

Ergo ==> ich denke dass der Gyro Mode sehr sehr ausbaufähig ist.

Viele Grüße
Henry
 

rc-action_de

Erfahrener Benutzer
Sonst gerne aber ich bekomme keine 2 Sekunden Video am Stück hin. Kameras ausgepackt und schon driftet der Gyro wieder und die Rollachse läuft sonst wo hin ...
 

muvid

Erfahrener Benutzer
Hi,
jetzt wollte ich nochmal was posten...habe die 37er Version drauf bespielt und nichts weiter eingestellt. Also die PID so gelassen.
Das Komische ist das die Nickachse nach kurzer Zeit einfriert.Er dreht nacht unten und nach einer weile wird nix mehr passieren. Die Rollachse bleibt aber aktiv macht aber was sie will.
Aber schaut mal selber....
http://www.youtube.com/watch?v=EZ6uKBbRP9I&feature=youtu.be
Edit:
Habe nochmal ein Video gemacht und die Rollrichtung umgekehrt und die Nickachse abgeklemmt.
Man kann schön sehen wie die Rollachse von links nach rechts dreht. Habe das Gimbal auch nicht bewegt sondern nur mal auf den Tisch gehängt.
http://www.youtube.com/watch?v=qb8sFoJ5AWo&feature=youtu.be
 

rc-action_de

Erfahrener Benutzer
Hmmm, das ist ja wirklich komisch.
probiere doch mal die modifizierte Software von Andreas. Sie driftet zwar bei mir aber nach PID- Anpassung dürfte sie recht gut laufen.

PS: Komplettaussetzer der Steuerung habe ich auch gehabt. Ich konnte den Fehler durch einen Wackler in der Spannungsversorgung bzw. an einem Motorkabel identifizieren.

Ziehe ich während des Betriebs einen Motor ab, dann friert die Steuerung ein.

PS: hier nun doch ein Video der angepassten _36 sowie der PID`losen _28.

Die _28 läuft bei mir etwas besser und hat 0 Drift.

[video=youtube;JyycImMx_gk]http://www.youtube.com/watch?v=JyycImMx_gk&feature=youtu.be[/video]

Viele Grüße
Henry
 

muvid

Erfahrener Benutzer
Nein....macht er nicht wirklich:(
Die Nickachse macht mehr aktion....breche jetzt ab ... war zu viel heute....reicht mit fräsen, zusammenbauen und testen.
Hau mich jetzt auf die Couch und lese eure Ideen mit.
Kann ja auch sein das ich vielleicht doch meine MPU falsch auf dem Gimbal habe.
 

ray_tracer

Erfahrener Benutzer
Hi,

habe mir gerade mal einen Controller selbst bestückt und geflasht...
Wer das auch machen möchte, findet in diesem Diagramm vielleicht ein kleine Hilfe zum Thema "Anschlußbelegung und Bootloader flashen"



Gute Nacht...

ray
 
I see you have some problems to get it run smooth.
This is what you have to do to get it run.
First let say the throttle is -10.................................10
There is no zero or some kind of dead band.The motor is always running in (stall torque) between forward and reverse.
If the gap between -10 and 10 is 20, and let say that this 20 represents 20 sek between full forward and full reverse.
You have to reduce the throttle range form -10.........................10 to something like this -1...........1
Where -1 is full reverse and 1 is full forward.
What we done here is reduced the throttle range from 20sek to 2 sek.
Keeping the motor in this kind of operation you will get what you are looking for.
Another thing is with the gyro.
There is no need for any kind of LP filter.You need raw output.
The L6234D can run on 50Khz and that is ultra smooth.
Also the communication between gyro and MPU has to be as fastest as you can get.
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten