Brushless Gimbal Controller - SOFTWARE

Status
Nicht offen für weitere Antworten.

ahahn

Erfahrener Benutzer
Hallo Leute,
mir ist das Phänomen, dass das Gimbal verrückt spielt beim Testen auch gelegentlich aufgefallen. Ich dachte ursprünglich es hängt mit falschen EEPROM Werten zusammen oder eventuell mit Spannungseinbrüchen am beim erstmaligen Einschalten der Motoren. Ich hatte das erst Mal auf die Netzgerät Stromversorgung mit langen Kabeln zurückgeführt.

Wenn anscheinend mehrere Leute ähnliche Problem haben dürfte es doch eine Systematik geben.

Natürlich gibt es auch Möglichkeit dass noch im Code eine Unschönheit versteckt ist, es gibt da leider ganz nette Sachen die in Frage kommen und schwierig zu finden sind, wie Stack/Heap Speicherüberlauf, nicht initialisierte Variablen, etc.

Ist auf jeden Fall registriert, und wir werden ein Auge drauf werfen, mehr kann ich jetzt auch nicht sagen.

Gruß
Alois
 

quadraf

Erfahrener Benutzer
Hey Alois,

Ich probierte B-Gimbal tool fur 049 version zu machen aber konnte nicht in datastream geraten was ich auch machte (friert nach 1 read) . Auch haben mehr leute probleme mit b-tool in datastream mode welches dan auch friert.
Irgend wie ist Visual Basic nicht schnell genug...?
Dan kam ich auf die idee um in firmware zu gucken und eine kleinsten delay (1ms) zu machen...
Nun lauft alles wieder!! Auch das zuckken meine gimbal ist viel weniger when nicht weg...
Vieleicht ein hinweis fur sie?? Ich habe keine ahnung mit diesen arduino code...
Ich hoffe es hat keine einflus auf perfomance...
Dies ist die code anderung in _BruGi:
case 9:
// 600 us
if(config.accOutput==1){
delay(1);
Serial.print(angle[PITCH]); Serial.print(F(" ACC "));Serial.println(angle[ROLL]);}
break;

Ich hoffe dies helft euch...
B-Gimbal komt rundum donnerstag mit den _049 version update.
Sorry fur meine deutch.

Grusse Hans
 
Zuletzt bearbeitet:

ahahn

Erfahrener Benutzer
Hey Alois,

Ich probierte B-Gimbal tool fur 049 version zu machen aber konnte nicht in datastream geraten was ich auch machte (friert nach 1 read) . Auch haben mehr leute probleme mit b-tool in datastream mode welches dan auch friert.
Irgend wie ist Visual Basic nicht schnell genug...?
Dan kam ich auf die idee um in firmware zu gucken und eine kleinsten delay (1ms) zu machen...
Nun lauft alles wieder!! Auch das zuckken meine gimbal ist viel weniger when nicht weg...
Vieleicht ein hinweis fur sie?? Ich habe keine ahnung mit diesen arduino code...
Dies ist die code anderung in _BruGi:
case 9:
// 600 us
if(config.accOutput==1){
delay(1);
Serial.print(angle[PITCH]); Serial.print(F(" ACC "));Serial.println(angle[ROLL]);}
break;

Ich hoffe dies helft euch...
B-Gimbal komt rundum donnerstag mit den _049 version update.
Sorry fur meine deutch.

Grusse Hans
Hallo Hans,
ein delay an dieser Stelle sollte man nicht machen, weil es in der Hauptschleife der Regelung wäre und dort das Timing kritisch ist.
Derzeit wird 50 Mal pro Sekunde, also alle 20ms, ausgegeben. Man könnte eventuell seltener ausgeben, z.B. alle 40ms
Alois
 

quadraf

Erfahrener Benutzer
Hallo Hans,
ein delay an dieser Stelle sollte man nicht machen, weil es in der Hauptschleife der Regelung wäre und dort das Timing kritisch ist.
Derzeit wird 50 Mal pro Sekunde, also alle 20ms, ausgegeben. Man könnte eventuell seltener ausgeben, z.B. alle 40ms
Alois
Danke fur das antword. Wie ist den das zu machen um weniger auszugeben in code?

Hans
 

baka

Erfahrener Benutzer
Neuer Tag, neuer Versuch und es läuft wieder!
War genau wie Sundancer es geschrieben hatte. FW 049_A_r40 mit GUI der 049_A_r34 läuft.
Allerdings musste ich meinen Poti in die andere Richtung umstellen.
Habe aber bei 45 Grad auch ein Zucken, wodurch es nicht auf 90 Grad runterkommt...
Und eine konstant leichtes Brummen auf der Roll Achse.
 

otti20vt

Erfahrener Benutzer
Die Neue Software ist 1A!!!! Es braucht viel weniger PID Tuning, das seitliche wegdriften ist WEG! :)

Hier nur ein kleiner Ground test, Copter in der Hand und Treppe hinunter, anschliessend schnell vorwärts laufen ;) ( BruGi_049A_r40 )

http://youtu.be/eZKCSah0vuI


Frage an die Entwikler, arbeitet die Neue Firmware nur noch mit den Gyros? Ich habe festgestellt wenn ich den Gimbal von Hand verdrehe, dieser danach nicht mehr auf die gleiche Position zurückfährt, obwohl das im Programm die Roll/Pitch werte auf 0 sind.
 
Zuletzt bearbeitet:
Zurück fahren tut er bei mir schon, aber sehr langsam, deutlich langsamer als die Messwerte wieder genullt werden. Aber solange er im Flug solide bleibt ist mir das ehrlicherweise Wurst. :D
 
Also ich habe ihn auf I=20, P=25 und D=40 mit PWM=75, und da braucht der Gimbal gute 4-5s länger als der Chart genullt wurde bis er wieder im Level ist nach einem Fingerkick.

Ich habe aber auch festgestellt, dass gerade I-Werte keinen so deutlichen Unterschied beim Return-to-Level mehr machen wie vei <V49. Mein subjektiver Eindruck ist, dass es nur zu wildem Herumzucken kommt, wenn auch nur einer der Werte zu hoch ist, einen Unterschied beim Halten des Levels gegen Neigungsveränderungen kann ich kaum feststellen, da egal wie die Werte sind die Rückkehr zum Level nach einem Fingerkick lange dauert.
Will heissen: Ein Fingerkick ist keine gute Simulation mehr um das Leveln zu beurteilen, da der Gimbal ein gleich schnelles Neigen der Halterung problemlos wegsteckt.
 
Hallo zusammen,

vielleicht hilft es dem ein oder anderen: - Die beschriebenen Symptome mit rückwärts laufender Achse die vorher richtig lief, komisches zucken usw. - sind bei mir auch einmal aufgetreten, - als ich die Vorzeichen bei den RC Min-Werten vergessen hatte. Wenn man z.B. bei RC Min einen positiven Wert eingibt, spielt die Regelung verrückt..

Sonnige Grüße aus Kölle!
 

otti20vt

Erfahrener Benutzer
@otti20vt : I Wert auf >5 eingestellt?
Den genauen Wert habe ich nicht im Kopf, aber Iacc ist in der neuen Firmware (049A_r40) Default bestimmt auf 20 und so habe ich diesen wohl auch eingestellt, bei der alten FW hatte ich werte von 1-2.


Also ich habe ihn auf I=20, P=25 und D=40 mit PWM=75, und da braucht der Gimbal gute 4-5s länger als der Chart genullt wurde bis er wieder im Level ist nach einem Fingerkick.

Ich habe aber auch festgestellt, dass gerade I-Werte keinen so deutlichen Unterschied beim Return-to-Level mehr machen wie vei <V49. Mein subjektiver Eindruck ist, dass es nur zu wildem Herumzucken kommt, wenn auch nur einer der Werte zu hoch ist, einen Unterschied beim Halten des Levels gegen Neigungsveränderungen kann ich kaum feststellen, da egal wie die Werte sind die Rückkehr zum Level nach einem Fingerkick lange dauert.
.
Das mit dem Iacc werte ist bei mir auch so, es macht bie mir keinen unterschied ob ich 5 oder 40 als wert habe, der Gimbal kommt Pi x Daumen immer gleich "langsam" zurück, wobei mir das auch egal ist. Die Regelung Funktioniert so im grossen und ganzen Perfekt.
 
Zuletzt bearbeitet:

Hammer

Erfahrener Benutzer
Hallo Zusammen,

ich habe immer noch die 048er FW onboard und kann bis jetzt nicht darüber meckern,
werde aber die Tage auch mal auf die 049 upgraden und sehen was abgeht :)

Nur mal so zwischendurch habe ich die letzten Tage mal ein kleines Video mit
meiner Emma und dem BL Gimbal mit 048 zusammengebastelt, ich bin da gut
zufrieden damit, als Cam hängt eine Sony 730 mit deaktiviertem Steadyshot
drin.

[video=vimeo;67113228]https://vimeo.com/67113228[/video]
 

oskar5

Erfahrener Benutzer
Hallo Zusammen,
ich muß hier nochmal fragen: (Suchfunktion schon bemüht)
Die GUI 049 auf einem iMac? Wer arbeitet mit einem iMac und OSX-System? Die GUi ist ja eine TCL-Datei.
Unter Windows und Mac gibt es ja das ActiveTcl8.6, aber nicht mehr für Mountain-Lion 10.8.2.
Gibt es eine Lösung?
Gruß
Axel
 
so habs jetzt mal geschaft ein paar Bilder zu machen,


Mit dem Laserpointer läst sich prima das Gimbal einstellen und überprüfen ob auch alles schön ruhig läuft.
Das ganze geht natürlich auch mit RC prima bis auf den kleinen Ruck bei 45° läst sich aber problemlos sogar
über 90° nach unten schwenken.
 

Anhänge

ahahn

Erfahrener Benutzer
Die Neue Software ist 1A!!!! Es braucht viel weniger PID Tuning, das seitliche wegdriften ist WEG! :)
...
Frage an die Entwikler, arbeitet die Neue Firmware nur noch mit den Gyros? Ich habe festgestellt wenn ich den Gimbal von Hand verdrehe, dieser danach nicht mehr auf die gleiche Position zurückfährt, obwohl das im Programm die Roll/Pitch werte auf 0 sind.
Die Lageerkennung verwendet primär die Gyros, damit haben seitliche Beschleunigen keinen direkten Einfluß. Einziges Probplem: durch Gyrodrift und Rechenungenauigkeiten wandert die absoluet Lage langsam davon.
Daher gibt es ein sogen. Komplementärfilter, das die ACC Werte langsam einwirken lässt und somit auf lange Sicht für die richtige Normallage sorgt.
Die Zeitkonstante für das Komplementärfilter beträgt derzeit 7 Sekunden. Macht man es langsamer wird die Empfindlichkeit auf Querbeschleunigung wie in Kurven geringer, dafür wird die Drift grösser.
In der Chart Anzeige siehst Du den Wert, so wie ihn der Regler bekommt, also den Ist-Wert. Bei gut eingestellten PID Werten sollte dieser ziemlich genau Null werden.
Diese Anzeige ist nur richtig wenn das Komplementäfilter schon gegriffen d.h. solange ACC und Gyro Messungen abweichen sieht man eigentlich nicht die richtige waagrechte Lage, erst mach den 7 Sekunde wird es passen.
Auch bei schlechter Gyrokalibrierung würde man eine Null Anzeige bekommen, der Regler ist zufrieden. Trotzdem nimmt das Gimbal eine schräge Lage ein, weil die Drift "quasi" im Hintergrund gegen die ACC arbeitet.
Vielleicht könnte man zum Einstellen ein paar Werte sichtbar machen, dann wird es wieder komplizierte :)
lg
Alois
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten