Brushless Gimbal Controller - SOFTWARE

Status
Nicht offen für weitere Antworten.

Kienzle

Erfahrener Benutzer
Hi,
ich muss heute Abend mal etwas genauer schaun, aber denke schon. Mir gehts eigentlich so ein bissel mehr um die PID Settings.
Womit fangt ihr an zu "tunen"? Nehmt ihr irgendwas komplett raus und beginnt dann langsam z.B. P runter und dann langsam hochschrauben. etc.

gruss
 

wolfes1126

Erfahrener Benutzer
Hallo Leute,

B-Gimbal hat wieder eine neue update bekommen fur version 048B ;).
Christian/Alois haben super arbeit gemacht!:cool:
Wie gewonlich sind neue features und download her zu bekommen:
http://code.google.com/p/b-gimbal/


Herzliche grusse,
Hans
Alles schön und gut, aber leider ist das DL für 48er nicht komplett da es mir sagt es fehlt ne DLL Datei...
Denke mal bei Updates sollte ein komplettes Paket verfügbar gemacht werden und nicht dass man dann erst mal alle runterladen muss um dann itrgendwann mal alle nötigen Dateien zusammen zu haben.

Klar, kein grosses Ding da mal schnell ein paar DLL Dateien per Google zu finden und runter zu laden aber sollte einfach nicht sein da nicht jeder die Zeit und oder Nerven / Know How dazu hat und dann einfach zu ner anderen Software und/oder System schwenkt wo eben schon alles dabei ist
 

Lonestar78

Erfahrener Benutzer
:) :)

ok, dann Christian, könntest du kurz erklären/andeuten was es mit dem quadrieren beim Ki-Term (Acc) auf sich hat... checke das nicht... habe soetwas auch noch nie gesehen...
Ok, mach ich. Es geht eigentlich darum, bei großen Regelabweichungen eine Sehr schnelle Rückstellung zu erzielen und im Gegenzug bei kleinen Abweichungen (<1° Fehler) das ansprechverhalten zu dämpfen. Mittlerweile glaube ich, ich mach Linear bei kleiner 1oder 2 und drüber quadratisch..... oder doch nur linear.
 

solution

Erfahrener Benutzer
Freut mich!!
Ich habe meines schon über eine Woche, aber leider sind die Motoren nicht angekommen und so mußte ich vorhandene 3508-Motoren bestücken, aber die sind, zumindest auf Roll, zu schwach auf der Brust.
Denke die richtigen Motoren kommen in ein paar Tagen, dann kann ich testen.
Habe noch eine Platinenaufnahme für das Gimbal gebastelt (2 Schellenpaare und ein bissl CfK)
 

biele01

Erfahrener Benutzer
Hallo. Wenn ich pitch über den rc kanal über 90 grad nach unten schwenke, schnappt die pitch achse auf einmal wieder nach oben.was mache ich falsch?
 

quadraf

Erfahrener Benutzer
Alles schön und gut, aber leider ist das DL für 48er nicht komplett da es mir sagt es fehlt ne DLL Datei...
Denke mal bei Updates sollte ein komplettes Paket verfügbar gemacht werden und nicht dass man dann erst mal alle runterladen muss um dann itrgendwann mal alle nötigen Dateien zusammen zu haben.

Klar, kein grosses Ding da mal schnell ein paar DLL Dateien per Google zu finden und runter zu laden aber sollte einfach nicht sein da nicht jeder die Zeit und oder Nerven / Know How dazu hat und dann einfach zu ner anderen Software und/oder System schwenkt wo eben schon alles dabei ist
Sorry, ich habe vergessen den version namen im Quickstart und download an zu passen. Auf den B-Gimbal website steht jetzt:
•Download and install the B-Gimbal windows package of your windows version.
•Download the latest zipped B-Gimbal0.48B update file and extract B-Gimbal in the install folder.

Ich hoffe das ist der losung fur dich...:rot:

Hans
 
Zuletzt bearbeitet:

OlliW

Erfahrener Benutzer
Ok, mach ich. Es geht eigentlich darum, bei großen Regelabweichungen eine Sehr schnelle Rückstellung zu erzielen und im Gegenzug bei kleinen Abweichungen (<1° Fehler) das ansprechverhalten zu dämpfen. Mittlerweile glaube ich, ich mach Linear bei kleiner 1oder 2 und drüber quadratisch..... oder doch nur linear.
DANKE

eigentlich gute Idee... das sieht dann aber wie x(1+a|x|) aus und nicht wie x|x| !!!

Problem mit x^2: PID ist linear und das ist sehr auch gut so denn (fast alle) Systeme sind in 1ter Näherung linear (was IMHO das ganze Geheimnis ist warum PID so gut geht), aber... x^2 ist nie linear.... !?!?!?!


(und wie immer, MultiWii hat's... es lohnt sich bei MW nachzusehen :))
(auch wegen dem D... lest doch einfach mal nen bischen Info zum ISA PID...)
(auch wegen den IMU Berechnungen... bei mir dauert deren Methode ca 500us... also haste mehr als genug Zeit um bei deinen 1kHz zu bleiben... und dann haste es gleich 3D und alle Probleme mit dem Nachuntenschauen sind weg...)
(und ein anständiges Komplementärfilter...)
(sorry wenn das gerade etwas "harsch" daherkommt, ist wirklich nicht so gemeint, aber es ist schon so dass ich wie ich in die 48 gesehen habe mich "gewundert" habe... wie Fortschritt konnte ich das nicht empfinden... und beim Bewährten ist es ja so dass meistens schon ne Menge Leute dran geforscht haben... ist also meistens nicht nur aus der Luft gegriffen... und beim PID geht es schon schnell schief wenn Leut meinen schlauer als PID zu sein)
(PS: ich benutze gerade Mahony in Quaternionen Form, finde ich logisch am überzeugendsten, dauert ca. 1.1ms, mit nen paar Verbesserungen waren es dann ca 900us, wenn es mal ernst wird lassen sich sicher nochmals 200us spaaren; obs besser als die MW-Methode ist kann ich (noch) nicht sagen weil ich noch keine taugliche Mechanik habe :wein: )

EDIT: wenn dich/Euch interessiert welche der (mittlerweile sehr vielen) Webliteratur zum PID ich mit Abstand am Besten finde, dann ist das die hier, Kapitel 2... IMHO absolut genial, nicht nur weil viel drinsteht, sondern absolut sauber diskutiert ist... gefällt mir sehr gut... (für das GA250-Heligyro Projekt hat die Lit zwar null geholfen... aber ist Klasse)(also bitte nicht auf Yaw beim 3Achser anwenden...)
 
Zuletzt bearbeitet:

fritz99

Erfahrener Benutzer
Hallo !

Ich möchte folgende Punkte nochmals zur 048 er anmerken :

Hier meine Werte :
SP 8000.0 500.0 1000.0
SR 10000.0 500.0 1000.0
SA 0.0
SF 14 14
SE 50 100
SM -1 1 1 0
SRC 0 0 0 0
UAC 1
SCA 1
SRG 1

Hardware :
Sehr leichtes Gimbal für Gopro.

Die obigen Werte sind sehr niedrig. Dies bedingt speziell durch den niedrigen I Wert eine sehr langsame Nachregelung der Achsen.
Wenn ich Werte erhöhe, wird das Gimbal sehr unruhig und die Motoren beginnen zu zittern.
Wie man seiht sind auch die max PWM Werte sehr niedrig und die Motoren haben daher ein sehr geringes Moment.
Ich kann auch diese Werte nicht erhöhen ohne dass das Gimbal sehr unruhig wird.

Meine Anmerkungen sollen aus meiner Sicht nur den aktuellen Status der Software sein und sind nicht als Kritik zu verstehen.
Ich bekomme leider derzeit keine stabile und gut regelnde Konfiguration zusammen.

Was kann ich tun ?


Fritz
 

Lonestar78

Erfahrener Benutzer
Zu den Rechenzeiten: Ich brauche alleine zum auslesen des Gyros über drei Achsen ~400ms, dann für ACC nochmal in etwa das gleiche.
Mit dem aktuellen und schon sehr abgespeckten code ist bei 1KHz loop etwa noch 10% rechenzeit frei. Da pass nie und nimmer ein IMU rein (mit meinen Programmierkenntnissen).

Aber ich schau nochmal auf den Komplementärfilter.

Insgesamt Danke Olli für deine Anregeungen (die Du ja nicht zum ersten mal machst, danke für Dein Durchhaltevermögen).
Von einem echten PID sind wir ja mittlerweile ziemlich weit weg.
Ich finde Alois Ansatz im Moment recht überzeugend, rein praktisch gesehen.

Zum Quadratischen Term: x(1+a|x|) statt x|x|
Ich dachte an sowas |x| > y ? |x|x : x; mit y = 1...5




Ich will ja eigentlich ehh eine STM32 CPU, die hat mehr als genug Power....
 

OlliW

Erfahrener Benutzer
Ich brauche alleine zum auslesen des Gyros über drei Achsen ~400ms
im Ernst (400us)???? ist doch auf 800kHz gestellt, und ist ISR... irgendetwas läuft dann falsch... ich lese/schreibe das im Moment noch mit billigen Polling, nix ISR oder so... und das braucht bei 800kHz für Gyro&ACC zusammen (also diese 14 bytes) ca 230 us... und das passt auch überschlagsmässig ((14+2)*10*1/800kHz = 200us)... da läuft doch etwas schief... (ich werde meine Werte nochmals gründlich nachmessen, aber sie schienen mir Sinn zu machen)

Da pass nie und nimmer ein IMU rein
wetten das? und wetten dass das der Grund ist warum beim Alexmos nach unten schauen perfekt geht?
wie gesagt die MultiWii passt locker rein, und ich mache da wirklich nichts was große Programierkentnisse erfordert
und auch wenns dann 1.5ms sind... so what
EDIT: ich weis nicht was die Arduino IDE macht, aber es ist ultra wichtig die libm.a einzubinden...!!!

Ich finde Alois Ansatz im Moment recht überzeugend
OK... ist ja legitim - und eigentlich super - dass verschiedene Leute verschiedene Ansätze überzeugend finden - und verfolgen!
(ich glaube halt nur das Ihr so nicht aufschliessen werdet... aber das habe ich jetzt ja gesagt und damit ist gut LOL)

Ich dachte an sowas |x| > y ? |x|x : x; mit y = 1...5
auch ne Idee... wenn man darauf achtet (es so modifiziert) das es mindestens stetig bleibt

Ich will ja eigentlich ehh eine STM32 CPU, die hat mehr als genug Power....
+1
ich für mich werde aber noch etwas beim Mega/Arduino bleiben... die Rechenleistung ist ja da ;)... ich bin eher schokiert über die MPU6050... da würde ich als erstes was wechseln... LOL
ich weis nicht warum, aber so etwas wie ein Arduino Mini auf STM Basis (und wenige Euronen) scheint es nicht zu geben... das wäre dann für mich auch ein Grund zu wechseln...

Aber Danke für deine Antwort, und deine Geduld mit meiner Hartnäckigkeit :top:

(und es ist für mich gut zu wissen das wir intern dann wohl in verschiedene Richtung gehen - ich war mir nämlich offengesagt unsicher wie ich mit einer eigenen Firmware umgehen sollte - was eigenes oder bei eurem aufsetzen - weil zu euren Bemühungen wollte ich nicht in Konkutrenz tretten - aber bei so unterschiedlichen Wegen ists ja kein Problem, supi)

Cheers!
 
Zuletzt bearbeitet:
I Have a little problem with firmware version 48. Maybe someone of you can help me solve this:
When I move the gimbal fast it often start shaking. Not because of inbalance But I cannot figure out
what the exact cause is. If I stop the motors (and IMU) by hand they will continue to move, and as soon as
I release it it will start moving as before. Only solution untill now is depowering and repower the unit.

Besides that: I cannot get the GUI to work. I get information from the controller but cannot flash the controller,
until now I have to change settings in arduino and upload it through there ( just as with the first versions of
the software) Has anyone else had this same problem?
 

quadraf

Erfahrener Benutzer
@ Stef To work out the shaking you have to have a working gui. Did you try both B-Tool And B-Gimbal?
To start working you have to hold the gimbal still! otherwise the gyro won't calibrate.
In B-tool you have to first do a save and then save to flash to work. In B-Gimbal this save is automated but still have to use the flash to Eeprom button to hold the settings in the gimbal when flying.
@ SKygimo the most common mistake is to use the wrong board setting in arduino. For Martinez board use "Uno" or "arduino 328P 5V 16mhz".
 

Kienzle

Erfahrener Benutzer
Moin moin,
ich habe gerade mal etwas Zeit gefunden und wollte mal ein bissel die PID Settings angehen.
Derzeit alle default Werte der v048. Im Grunde eigentlich schon nicht schlecht.
zu den Problemen und ehrlich gesagt weiss ich nicht wo ich anfangen soll mit dem "Tunen"
Nick funktioniert soweit eigentlich ganz gut, Roll macht mir ein paar Sorgen/Gedanken. Irgendwie kommt es mir so vor als ob es an Stellkraft fehlt. Es schwingt irgendwie, nehm ich den Kopter in die Hand und beginne Ihn zu bewegen laufen alle Achsen richtig und sauber. Jedoch bei schnelleren Bewegungen verhält es sich eher wie eine Schaukel, es schwingt etwas über.

Vibrieren, wackeln der Achsen habe ich nicht. Nur weiss ich nun nicht wo ich anfagen soll mit den Änderungen. Welche Settings sollten eher hochgeschraubt werden und welche sollten eher klein gehalten werden? Wie verhält sie maxPWM? Hoch oder klein?

gruss
 
Zuletzt bearbeitet:

Kienzle

Erfahrener Benutzer
Mmmh bin gerade auch noch extrem verwirrt.... also alle Achsen laufen in die richtige Richtung. Nur scheint es mir wenn ich es Brushless-Gimbal-Tool die Roll Werte anpasse verändert sich das Verhalten auf Nick. Wenn ich die Kabel am Controller tausche spielt es verrückt. Verändere ich es im Tool ebenfalls.....
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten