MultiWii + MPU6050
Moderatorzy: moderatorzy2014, moderatorzy
-
- Posty: 32
- Rejestracja: piątek 06 lut 2015, 20:02
MultiWii + MPU6050
Hej.
Problem jest prosty, gdy obrócę drona w lewo, to w programie MultiWii przekręca się on w prawo. Wygląda na to że YAW jest odwrócony? Jak mogę go odwrócić?
Problem jest prosty, gdy obrócę drona w lewo, to w programie MultiWii przekręca się on w prawo. Wygląda na to że YAW jest odwrócony? Jak mogę go odwrócić?
Re: MultiWii + MPU6050
A wskaźniki roll i pitch działają dobrze? Jak tak to nie ma się czym przejmować, powinien latać.
-
- Posty: 32
- Rejestracja: piątek 06 lut 2015, 20:02
Re: MultiWii + MPU6050
Tak jak pisałem, ROLL i PITCH działają dobrzeMacPiston pisze:A wskaźniki roll i pitch działają dobrze? Jak tak to nie ma się czym przejmować, powinien latać.
Jeszcze jeden problem, dlaczego tak się dzieje jeśli wskaźniki są na "domyślnych" pozycjach? Silnik FRONT_L opada z mocy, dlaczego?
Zdjęcie (http://i.imgur.com/MWKwlv9.png):
#Edit
Po dłuższym czasie wygląda na to jakby chciał skręcić, tylko pytanie dlaczego skoro wszystkie odczyty są cały czas takie same?
Zdjęcie (http://i.imgur.com/BK9mcLj.png):
http://i.imgur.com/BK9mcLj.png
Wydaje mi się że to przez odwróconego YAW'a. Copter lekko skręci w lewo (na skutek np. lekkiego błędu żyroskopu, drgań ramy) a MultiWii chce go wyrównać leć przez odwrócony YAW nic nie zdziała, dobrze myślę?
Re: MultiWii + MPU6050
Tak? Przy odwróconym YAW będziesz miał piękną karuzelę.MacPiston pisze:A wskaźniki roll i pitch działają dobrze? Jak tak to nie ma się czym przejmować, powinien latać.
W kodzie jest YAW_Direction (albo jakoś tak) zmień na przeciwny i zobacz czy poprawnie działa. A dopóki nie reaguje jak należy to nie lataj.
Pozdrawiam Sławek
... jeśli nie wiesz co robić, nabieraj wysokości. Jeszcze nikt nie zderzył się z niebem...
... jeśli nie wiesz co robić, nabieraj wysokości. Jeszcze nikt nie zderzył się z niebem...
-
- Posty: 32
- Rejestracja: piątek 06 lut 2015, 20:02
Re: MultiWii + MPU6050
Zrobiłem tak lecz nadal jest ten sam problem :/cebulator pisze:Tak? Przy odwróconym YAW będziesz miał piękną karuzelę.MacPiston pisze:A wskaźniki roll i pitch działają dobrze? Jak tak to nie ma się czym przejmować, powinien latać.
W kodzie jest YAW_Direction (albo jakoś tak) zmień na przeciwny i zobacz czy poprawnie działa. A dopóki nie reaguje jak należy to nie lataj.
Re: MultiWii + MPU6050
Nie pisz tak bo młodzież to czyta. To jest po prostu herezja.MacPiston pisze:nie ma się czym przejmować, powinien latać.
Ten parametr odpowiada tylko i wyłącznie za sygnał sterujący otrzymywany z aparatury i można go tym parametrem po prostu odwórcić (1 albo -1 i wszystko co można zrobić)cebulator pisze:W kodzie jest YAW_Direction (albo jakoś tak) zmień na przeciwny i zobacz czy poprawnie działa.
Natomiast za problem opisywany w tym wątku najprawdopodobniej odpowiada błędna deklaracja płytki i/lub (jeżeli nie zadeklarowano gotowej płytki) to złe deklaracje osi czujników w kodzie. Bodajże w config.h jest parę linijek odpowiedzialnych za "IMU orientation" i tam trzeba na przeciwny znak zmienić przy osi YAW.
infekcja FPV postępuje w zastraszającym tempie...
Re: MultiWii + MPU6050
Rurek, u mnie jest tak że sztuczny horyzont obraca się odwrotnie, a roll i pitch dobrze więc dlatego tak napisałem.
Re: MultiWii + MPU6050
Ale sztuczny horyzont nie ma nic wspólnego z YAW, a tu był problem, a na dodatek sztuczny horyzont MA SIĘ OBRACAĆ ODWROTNIE.
Pzdr. -----MIŚ-----
-
- Posty: 32
- Rejestracja: piątek 06 lut 2015, 20:02
Re: MultiWii + MPU6050
Bazuję na Arduino Pro Mini wraz z MPU6050 i MS561101BA.
W takim razie na co ma wskazywać oś X MPU6050? Na przód, tył, prawo czy może lewo?
Po odkomentowaniu tych linijek
PITCH zamienił się z ROLLem, czyli obracając copterem w lewo/prawo rusza się PITCH a nie ROLL.
A YAW nadal tak samo (testowałem na Z i -Z)
W takim razie na co ma wskazywać oś X MPU6050? Na przód, tył, prawo czy może lewo?
Po odkomentowaniu tych linijek
Kod: Zaznacz cały
//#define FORCE_ACC_ORIENTATION(X, Y, Z) {imu.accADC[ROLL] = Y; imu.accADC[PITCH] = -X; imu.accADC[YAW] = Z;}
//#define FORCE_GYRO_ORIENTATION(X, Y, Z) {imu.gyroADC[ROLL] = -Y; imu.gyroADC[PITCH] = X; imu.gyroADC[YAW] = Z;}
A YAW nadal tak samo (testowałem na Z i -Z)
Re: MultiWii + MPU6050
X to lewo prawo
Y to przód tył
Więc zamień na takie:
Ewentualnie jeszcze znaki poodwracaj jakby nie w tę stronę się wszystko wizualizowało
Co do YAW to już nie mam pomysłu A czy zamieniałeś na przeciwne te znaki parami w obu linijkach?
Czy w takim układzie zakomentowałeś deklarację jakiejkolwiek płytki?
aaa i czy YAW przy powolnym obracaniu jak i szybkim tak samo źle się wychyla? Czy może po szybkim obrocie w palcach , po paru sekundach zaczyna sie "odkręcać" w dobrą stronę?
Zrób jeszcze pewien eksperyment - odwróć do góry nogami płytkę MPU i zobacz co się stanie....
Y to przód tył
Więc zamień na takie:
Kod: Zaznacz cały
#define FORCE_ACC_ORIENTATION(X, Y, Z) {imu.accADC[ROLL] = X; imu.accADC[PITCH] = -Y; imu.accADC[YAW] = Z;}
//#define FORCE_GYRO_ORIENTATION(X, Y, Z) {imu.gyroADC[ROLL] = -X; imu.gyroADC[PITCH] = Y; imu.gyroADC[YAW] = Z;}
Co do YAW to już nie mam pomysłu A czy zamieniałeś na przeciwne te znaki parami w obu linijkach?
Czy w takim układzie zakomentowałeś deklarację jakiejkolwiek płytki?
aaa i czy YAW przy powolnym obracaniu jak i szybkim tak samo źle się wychyla? Czy może po szybkim obrocie w palcach , po paru sekundach zaczyna sie "odkręcać" w dobrą stronę?
Zrób jeszcze pewien eksperyment - odwróć do góry nogami płytkę MPU i zobacz co się stanie....
infekcja FPV postępuje w zastraszającym tempie...
-
- Posty: 32
- Rejestracja: piątek 06 lut 2015, 20:02
Re: MultiWii + MPU6050
Ja mam X jako przód/tył więc muszę zmienić położeniu MPU.Rurek pisze:X to lewo prawo
Y to przód tył
Więc zamień na takie:Ewentualnie jeszcze znaki poodwracaj jakby nie w tę stronę się wszystko wizualizowałoKod: Zaznacz cały
#define FORCE_ACC_ORIENTATION(X, Y, Z) {imu.accADC[ROLL] = X; imu.accADC[PITCH] = -Y; imu.accADC[YAW] = Z;} //#define FORCE_GYRO_ORIENTATION(X, Y, Z) {imu.gyroADC[ROLL] = -X; imu.gyroADC[PITCH] = Y; imu.gyroADC[YAW] = Z;}
Co do YAW to już nie mam pomysłu A czy zamieniałeś na przeciwne te znaki parami w obu linijkach?
Czy w takim układzie zakomentowałeś deklarację jakiejkolwiek płytki?
aaa i czy YAW przy powolnym obracaniu jak i szybkim tak samo źle się wychyla? Czy może po szybkim obrocie w palcach , po paru sekundach zaczyna sie "odkręcać" w dobrą stronę?
Zrób jeszcze pewien eksperyment - odwróć do góry nogami płytkę MPU i zobacz co się stanie....
Zmieniałem Z w obu linijkach, w configu płytka, etc. jest ustawiona.
Poeksperymentuję i dam znać.
Ostatnio zmieniony czwartek 06 sie 2015, 21:17 przez ClassAxion, łącznie zmieniany 1 raz.
-
- Posty: 32
- Rejestracja: piątek 06 lut 2015, 20:02
Re: MultiWii + MPU6050
Oficjalnie mogę stwierdzić że po trzech próbach z przestawianiem MPU fizycznie i w configu wreszcie się udało.
Mam za to jeszcze jedno pytanko, czy przypadkiem nie powinien działać też GYRO prócz tego ACC?
I jeszcze jedna sprawa, czemu YAW powoli się obraca (na chwilę obecną) w prawo? Bardzo powoli i zatrzymało się na ~150 stopniach..
Mam za to jeszcze jedno pytanko, czy przypadkiem nie powinien działać też GYRO prócz tego ACC?
I jeszcze jedna sprawa, czemu YAW powoli się obraca (na chwilę obecną) w prawo? Bardzo powoli i zatrzymało się na ~150 stopniach..
Re: MultiWii + MPU6050
No właśnie generalnie to tylko Gyro ma wpływ na YAW bo ACC nie ma fizycznie takiej możliwości.
A nasuwa mi się takie pytanie, czy czasem nie obcinałeś lutowanych goldpinów na płytce MPU? Albo przesadnie upuściłeś?
A nasuwa mi się takie pytanie, czy czasem nie obcinałeś lutowanych goldpinów na płytce MPU? Albo przesadnie upuściłeś?
Pozdrawiam Sławek
... jeśli nie wiesz co robić, nabieraj wysokości. Jeszcze nikt nie zderzył się z niebem...
... jeśli nie wiesz co robić, nabieraj wysokości. Jeszcze nikt nie zderzył się z niebem...
Re: MultiWii + MPU6050
Widzisz pytałem o to - powolne obracanie - oznacza że znak przy [YAW] zacytowanym tu za chwilę poniżej jest niewłaściwy.ClassAxion pisze:I jeszcze jedna sprawa, czemu YAW powoli się obraca (na chwilę obecną) w prawo? Bardzo powoli i zatrzymało się na ~150 stopniach..
GYRO działa w dobrą stronę natomiast ACC po chwili nadgania ale ma niewłaściwy znak raczej...
Pewien jesteś czy zgadujesz?cebulator pisze:No właśnie generalnie to tylko Gyro ma wpływ na YAW bo ACC nie ma fizycznie takiej możliwości.
Hint: co to za parametr?
Kod: Zaznacz cały
imu.accADC[YAW]
infekcja FPV postępuje w zastraszającym tempie...
Re: MultiWii + MPU6050
Rurek, bredzisz
ACC nie ma nic do YAW !
Yaw jest kontrolowane przez gyro + MAG (o ile jest podłączony).
ACC nie ma nic do YAW !
Yaw jest kontrolowane przez gyro + MAG (o ile jest podłączony).
Oś Z od acc, czyli ta skierowana prosto w dół, która ma wartość 512 jak copter leży poziomo. 512 to przyspieszenie 1G, które odczytuje ACC.Rurek pisze:Hint: co to za parametr?
Kod:
imu.accADC[YAW]
Pzdr. -----MIŚ-----