STEROWNIK BLDC - niemiecki opensource

dyksusja o gimbalach, żadnej komercji

Moderatorzy: moderatorzy2014, moderatorzy

Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

STEROWNIK BLDC - niemiecki opensource

Post autor: Rurek »

W tym poście na bieżąco aktualizowane i uzupełniane informacje związane ze sterownikiem gimbala opartego na silnikach bezszczotkowych.

- projekt opensource naszych kolegów z Niemiec -


GŁÓWNY WĄTEK NA RCG MOŻNA ZNALEŹĆ TUTAJ: http://www.rcgroups.com/forums/showthread.php?t=1829058



Informacje w naszym temacie zebrane i uporządkowane z postów kolegów:
kuki83, JLasocki, nico_99, slawko_k, Kwasiu


0) manual.....trochę dziwnie z nim bo nie ma go w oficjalnych źródłach....
...i do tego jest troszkę nieświeży bo kończy się na wersji 046....ale jest do pobrania tutaj PDF


1) jaki soft, co kompilujemy, jakie parametry zadajemy we wsadzie
- na początek pobieramy
a) http://arduino.googlecode.com/files/ard ... indows.zip
b) sterownik do usb to standardowy ftdi większość z nas powinno to posiadać

- procesor w arduino ustawiamy atmega328P czyli jak dla multiwii

Ustawienia Arduino przy programowaniu:
- Narzędzia -> Port szeregowy -> Wybieramy port COM pod którym zainstalował się sterownik FTDI (WAŻNE!!! - port COM należy tak wykombinowac aby to był port w zakresie COM 1-16)
- Narzędzia -> Płytka -> Arduino Pro lub Mini (5V, 16Mhz)
- Narzędzia -> Monitor portu szeregowego -> 115200 baud

opis złącz i2c
Obrazek

-płytki z czujnikami są opisane więc proszę połączyć przewody 1 do 1 WAŻNE! - podłączamy 5 przewodów... pin INT na płytce IMU do pinu CH1/PPM na płytce kontrolera też!!!!
A JAK UMIEŚCIC CZUJNIK NA GIMBALU?
Obrazek

- najnowsze oprogramowanie ściągamy z tej strony https://code.google.com/p/brushless-gim ... loads/list


konsola Arduino

- po załadowaniu kodu proponuje uruchomić konsolę aby sprawdzić czy sensor nam odpowiada , pierwsza linijka jaka powinna się wyświetlić "MPU6050 OK",
żeby konsola reagowała na komedy należy znaczyć w konsoli obok prędkości należy zaznaczyć "Both NL & CR"

Obrazek


2) jaki GUI, co oznaczają poszczególne parametry, jaki mają wpływ i na co
# GUI defaultowy, do pobrania ---> TUTAJ

Obrazek
.
.
.
# GUI alternatywny, więcej opcji i parametrów, PIDowanie "live" ;-) do pobrania ---> TUTAJ

Obrazek
.
.
.
W OBU PRZYPADKACH KONIECZNE JEST POBRANIE UPDATE'U !!!! ---> TUTAJ
(rozpakowac do folderu gdzie siedzi soft i podmienic plik *.exe)
.
.
.
3) kabelkologia czyli co dokładnie drut po drucie z czym łączymy jak i po co...
Obrazek
opis wszystkich pinów na płytkach:
A1 - sterowanie z kanału RC osią pitch
A2 - sterowanie z kanału RC osią roll
Jeżeli wejścia RC nie są używane, proszę ustawic w GUI: rcGain= 0
.
.
.
4) poprawki błędów, tuning softu
.
Jeżeli kontroler zachowuje się "dziwnie" , najczęściej po wymianie Firmware'u to może oznaczac że zostały jakieś śmieci w EPROMie, mozna to wyczyścic następującą metodą:
1. Odłącz czujnik od Controllera.
2. Podłącz Controller przez USB i wystartuj Arduino
3. Idź do "Przyklady/Eeprom/Eeprom_clear" i załaduj do Controllera
4. Odłącz Controller od USB, podłącz czujnik i podłącz Controller ponownie do USB
5. Załaduj do Controllera aktualne Software
.
Błąd na płytce "kanapka czerwona by kuki83" oraz pierwsza kanapka z oryginalnego projektu
Winne jest zła podłączenie resetu procka do ft232.
Zarówno w oryginale jak i w płytce od Kukiego reset jest podpięty do 3 nogi ft232 a podpięty powinien być do nogi 2.
Poprawa tego jest dość prosta ale wymaga dobrych oczu i dobrego grota.
Po poprawie programuje sie tak jak powinno.
Obrazek

Zielone-pierwsza możliwość przeróbki
Niebieskie-druga możliwość za pomocą kynarku

To zielone to poprawna ścieżka, tak jak powinno być, ja poprostu odciąłem ścieżkę od 3 nogi i zrobiłem taką milimetrową zworkę pomiędzy ścieżką a 2 nogą, potrzeba tylko trochę wprawy i malutki grocik. Nie patrzyłem gdzie ta ścieżka tam leci dalej ale chyba gdzieś do padu kondensatora z tego co pamiętam więc równie dobrze można sobie kynarkiem to stamtąd pod tą 2 nogę podciągnąć gdy ktoś nie ma wprawy w takich chirurgicznych robotach ;)
.
.
.
## Ustawienia Gimbal & PID na przykladzie GoPro i orginalnego Hardware##

Rozpoczynamy od standartowych wartosci!

1. uzywac mozliwie male silniki
2. silniki przewinac tak, aby uzyskac resystancje/fase 12-16 Ohm (gwiazda) przy mozliwie najwiekszej ilosci zwojow; czym wiecej uzwojen na zab, tym wieksze trzymanie. Przyczym trzymanie jest tez zalezne od pradu
3. dla GoPro z malym/lekkim Gimbal wystarcza prad okolo 100-150mA
4. Gimbal musi byc prezyzyjnie wywazony, roll/pitch osie musza sie latwo i bez ograniczen poruszac (umaga na kable, te moga przyspazac problemy jesli ciagna w swoja strone)
5. Kamera powinna znajdowac sie na obu osiach w srodku ciezkosci
6. prad silnika (wartosc PWM) ustawic tak, aby kamera przy lekkim poruszaniu Gimbal byla trzymana i silinik nie przeskakiwal na nastepny zab
7. ACC_weight ustawic na Zero
8. wert P tak ustawic aby stabilizaja funktionowala bez opoznienia, to znaczy Controller musi nadazyc za ruchem kamery (regulacja w czasie rzeczywistym)
9. teraz experymentowac ostroznie z wertem D (umaga na oscylazje): jezeli silnik po zmianie D drga z niska czestotliwoscia to D jest z male, jezeli drga z duza czastotliwocia to D jest za duze
10. jezeli nie uda sie dych drgan calkiem zlikwidowac bez dodatkowego obnizania szybkosci regulacji (wartosc P), to mozna sprobowac zmniejszyc prad silnika (mniej PWM)
11. jezeli to w dalszym ciagu nie funkzjonuje to ta kombinacja: Gimbal / motor nie pasuja do siebie albo wywazenie nie jest precyzyjne
12. teraz mozna ostroznie probowac z ACC-weight.
.
.
.
.
# BARDZO KLAROWNY ALGORYTM USTAWIANIA PIDÓW# od kolegi Brandigan z RCgropus...oryginalny post ---> TUTAJ
Brandigan from RCG pisze:Hot motor = too much power (and/or unbalanced gimbal and it's having to work hard to level it).
Too much power = P is too low before vibration sets in.
P is too low = Poor accuracy and more drifting.
Poles set wrong (95% of motors have 14) = Gawd only knows.

Do one motor at a time, by unplugging the one you don't want or setting its max PWM to zero. I start with Roll first.

Set IAcc=0, P=20, D=2, max PWM (Power) to 40 for testing.

Step 1:
Tilt gimbal, is camera able to stay level and fight against the 'cogging' of the motors?
If = No, then increase Power by 5 go back to Step 1.
If = Yes, power is sufficient, move to Step 2.

Step 2:
Turn on Chart and set gimbal level(ish) by hand (as with IAcc=0, it will not self level)
Rotate gimbal by 90 degrees. Notice difference in angle. This is the drift. Turn off Chart.

(This is the value you want to get as low as possible, but you could just note it when you start with P=20 and again when you finish and feel pleased with yourself for improving it as much as you have. )

Step 3:
Increase P by 5.
Step 4:
Does it vibrate?
If = No, go back to Step 2
If = Yes, increase D by 0.1
Go back to Step 4

With Step 4 you will reach a point at which there is no amount of D that will balance P. Back P off a little, balance correctly with D and you are done. That's the best you'll get from your gimbal. Do Step 2 again to see what the drift is. It will be smaller than when you started.

Then set IAcc to 1 or 2 to have it self-level. Note: This may affect P or Power settings and it might start to vibrate again, so tune them slightly to remove this..

Don't be tempted to wring the last bit out of all the values, as you need to leave a bit of leeway for when your battery voltage starts to drop.

Edit: You may find that when you plug in the second motor - or increase its power from zero - that values that worked for one motor now don't and it starts to vibrate again - especially if you took the values to the absolute maximum. That's because - depending on the size of your battery - the extra power taken by the second motor is now slightly robbing the first one, so you'll need to lower the values slightly to compensate.
.
.
.
.
CIĄG DALSZY NASTĄPI :-)
Ostatnio zmieniony czwartek 01 sty 1970, 01:00 przez Rurek, łącznie zmieniany 2 razy.
infekcja FPV postępuje w zastraszającym tempie...
Awatar użytkownika
Kkacper
Posty: 839
Rejestracja: piątek 03 sie 2012, 18:27
Lokalizacja: Kiełpino k. Kartuz

Post autor: Kkacper »

Właśnie ukazał się nawy soft 0_49.
Kilka uwag na temat tego softu - po pierwszych testach które właśnie przed chwilą zrobiłem :
1. Wyraźnie poprawiono "trzymanie" horyzontu.
2. Nie ma już efektu pochylania kamery przy przyśpieszaniu oraz pochylania przy obrotach prawo/lewo.
3. Znacząca poprawa jeśli chodzi o płynność pracy w obu osiach (w poprzednich wersjach widać było w niektórych przypadkach skokową prace)

Jak narazie brak GUI ale parametry można bezpośrednio ustawiać w zakładce variables - void setDefaultParameters()

Jeden minus, który narazie zauważyłem : źle działa pochylanie kamery.
W pliku z softem są dwie propozycje ustawień – niestety na tych ustawieniach mój gimbal miał straszne drgawki.

Moje aktualne ustawienia :
config.gyroPitchKp = 10000;
config.gyroPitchKi = 25000;
config.gyroPitchKd = 40000;
config.gyroRollKp = 30000;
config.gyroRollKi = 25000;
config.gyroRollKd = 40000;
config.accComplTC = 7;
config.nPolesMotorPitch = 14;
config.nPolesMotorRoll = 14;
config.dirMotorPitch = 1;
config.dirMotorRoll = -1;
config.motorNumberPitch = 0;
config.motorNumberRoll = 1;
config.maxPWMmotorPitch = 140;
config.maxPWMmotorRoll = 180;
config.minRCPitch = -30;
config.maxRCPitch = 30;
config.minRCRoll = -30;
config.maxRCRoll = 30;
config.rcGain = 1;
Awatar użytkownika
JLasocki
Posty: 186
Rejestracja: wtorek 31 sie 2010, 09:49
Lokalizacja: Łódź

Post autor: JLasocki »

Kkacper pisze:Jak narazie brak GUI [....]
GUI jak najbardziej jest - napisany w języku skryptowym Tcl - nie tylko ma wersji .exe .
Jak wynika z opisu na stronie z softem, któryś z kolegów niemców musi to poprawić lub skompilować na windowsy. A na razie jak ktoś jest niecierpliwy może zainstalowac sobie środowisko ActiveTcl i wczytać pliczek z rozszerzeniem .tcl znajdujący się w katalogu GUI.

Link do ActiveTcl

Edit: Na RCG podają że można jeszcze skorzystać z TclKit-a:
Link
Awatar użytkownika
qlf
Posty: 810
Rejestracja: poniedziałek 04 paź 2010, 15:29
Lokalizacja: IRL

Post autor: qlf »

od biedy można użyć można użyć GUI 048
we will update the GUI soon at the moment you must use the 048 GUI ...
Grzegorz
Awatar użytkownika
krall
Posty: 3151
Rejestracja: poniedziałek 01 lut 2010, 10:00
Lokalizacja: Kartuzy
Kontakt:

Post autor: krall »

Zapakowałem do rctimerowego bimbala pod GP sterownik także z rct.
Na początku sporo walczyłem z samym portem usb/com (podmiana sterownika, zmiana nr- coma) - na szczescie jest to opisane na rcg.
Wgrałem soft 0.49 z GUI 0.49 (poprzez tclkit-8.5.9-win32.upx).
Chwilę walczyłem z ustawieniami ale w koncu jakoś to ogarnąłem.
Działa, na razie bez RC.
Moje spostrzeżenia: porównując do sterownika z flyduino z alexmosem - gorzej - tzn. silniki delikatnie drżą i nie pracują tak płynnie jak alexmos, przy przechyleniach wiekszych od 20-30stopni trochę się sterownik gubi i zaczyna "skakać".
Tak ma być? czy może udało się komuś osiągnąć idealne działanie (jak alexmos)?
pozdrawiam
Krzysztof
http://www.fly.kartuzy.com.pl
Awatar użytkownika
Kkacper
Posty: 839
Rejestracja: piątek 03 sie 2012, 18:27
Lokalizacja: Kiełpino k. Kartuz

Post autor: Kkacper »

Dzisiaj poczyniłem kolejne testy:
Po korekcie PID-ów na takie :
Piych
I 60
P 10
D 40
max PWM 140

Roll
I 80
P 20
D 40
max PWM 180

jest lepiej.

Nie mam porównania ze sterownikiem Alexmos ale u mnie działa płynnie nawet przy przechyleniach do ok 60 stopni.

Zauważyłem iż lekko pływa horyzont - z naciskiem na "lekko".

Mam podłaczony RC do pochylania kamery - i tu jest dramat - działa w zakresie od ok -20 do +20 stopni- powyżej zaczyna "szaleć" i nia da się ustawić więcej.

Właśnie ładuję film na YT z dzisiejszego testu - jak tylko się załaduję to wstawię link - sami ocenicie jak to działa.
Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

Post autor: Rurek »

Kkacper to na gimbalu z RCTimer'a?
infekcja FPV postępuje w zastraszającym tempie...
Awatar użytkownika
Kkacper
Posty: 839
Rejestracja: piątek 03 sie 2012, 18:27
Lokalizacja: Kiełpino k. Kartuz

Post autor: Kkacper »

Ja mam kontroler Kiki-ego (kanapka), gimbal własnej roboty.

EDIT - scalenie

Filmik z testu softu 0_49.



Oceńcie sami jak to działa.
Awatar użytkownika
qlf
Posty: 810
Rejestracja: poniedziałek 04 paź 2010, 15:29
Lokalizacja: IRL

Post autor: qlf »

Nowy update softowy
https://code.google.com/p/brushless-gim ... p&can=2&q=

edycja:

I kolejna wersja softu, 049A_r45
https://code.google.com/p/brushless-gim ... p&can=2&q=

* RC +/-45 degree glitch fixed at pitch, roll still unchanged
* faster lock at startup
* OAC output runs at 25Hz, is same rate as used by 046...
* RC low pass filters have been set slower in absolute mode
Note: GUI does not support sensor orientation settings, use meisters version
Grzegorz
Awatar użytkownika
MaciejN
Posty: 95
Rejestracja: sobota 31 mar 2012, 01:53
Lokalizacja: Poznań

Post autor: MaciejN »

Panowie mam problem z silnikami 4114 z rc timer'a, nie mogę ustawić tak, żeby silniki chodziły płynnie, cały czas obracają się skokowo. Ma ktoś może jakiś pomysł na rozwiązanie ?
Awatar użytkownika
nico_99
Posty: 43
Rejestracja: piątek 01 mar 2013, 10:06
Lokalizacja: Deutschland

Post autor: nico_99 »

Podejzewam, ze w jakiejs fazie popelniono blad w kierunku nawijania.
Pozdrawiam
Nico
Awatar użytkownika
JLasocki
Posty: 186
Rejestracja: wtorek 31 sie 2010, 09:49
Lokalizacja: Łódź

Post autor: JLasocki »

Widać dużą zmianę na + w obecnej wersji. Lepiej stabilizuje i nie trzeba się męczyć z ustawieniami (u mnie trzeba było zmienić siłę trzymania, defaultowe PIDy są dobre).
Jedyny minus to że przy szybszych ruchach coś mu odbija i potrafi się przekrzywić w lewo albo w prawo.
Awatar użytkownika
MaciejN
Posty: 95
Rejestracja: sobota 31 mar 2012, 01:53
Lokalizacja: Poznań

Post autor: MaciejN »

Mówicie od sofcie BruGi_049A_r40 czy BruGi_049A_r45 ?
Awatar użytkownika
JLasocki
Posty: 186
Rejestracja: wtorek 31 sie 2010, 09:49
Lokalizacja: Łódź

Post autor: JLasocki »

MaciejN pisze:Mówicie od sofcie BruGi_049A_r40 czy BruGi_049A_r45 ?
U mnie o najnowszym. Ale nie latałem jeszcze, testowany tylko z ręki.
Awatar użytkownika
Kkacper
Posty: 839
Rejestracja: piątek 03 sie 2012, 18:27
Lokalizacja: Kiełpino k. Kartuz

Post autor: Kkacper »

Zrobiłem wczoraj testy z najnowszym softem.
Wg mnie jest bardzo dobrze - stabilizacja działa płynnie - jedyny minus to pochylanie kamery działa bardzo wolno ale za to nie "głupieje" przy pochylonej kamerze tylko stabilnie działa.
Zauważyłem bardzo małe zmiany pochylenia horyzontu przy szybkich obrotach quada względem osi YAW.

Jak narazie naljepszy soft na którym "latałem".
ODPOWIEDZ