Skocz do zawartości

(Nie)elektroniczny multimetr DIY z Arduino Pro Mini


Komentator

Pomocna odpowiedź

Mniej więcej o to.

Tyle, że teraz w programie zamiast linijki:

  mpu6050.calcGyroOffsets(true);

(ostatnia w funkcji setup())

musisz wpisać:

mpu6050.setGyroOffset(-6.33, -1.39, -0.85);

przy czym ostatnie -0.85 to właśnie wartość kalibracji Z, musisz ją zmienić i tak dobrać, aby zmniejszyć dryft żyroskopu do jakiejś akceptowalnej wartości Nie powiem na jaką, bo dla kadego egzemplarza żyroskopu ta wartość będzie inna.

 

Link do komentarza
Share on other sites

zmieniłem i niestety przy probie kompilacji podświetla mi ta zmieniona  linijkę i mam błąd:

Arduino:1.8.7 (Windows 10), Płytka:"Arduino Nano, ATmega328P (Old Bootloader)"

C:\Users\Fujitsu\Desktop\akcelerometr\final_code\final_code.ino: In function 'void setup()':

final_code:45:11: error: 'class MPU6050' has no member named 'setGyroOffset'

   mpu6050.setGyroOffset(-6.33, -1.39, -0.85);

           ^

exit status 1
'class MPU6050' has no member named 'setGyroOffset'

Ten raport powinien zawierać więcej informacji jeśli w 
File -> Preferencje zostanie włączona opcja "Pokaż
szczegółowe informacje podczas kompilacji"

 

Link do komentarza
Share on other sites

dziękuje ethanak, kod wrzuciłem i będę obserwował czy działa prawidłowo. Ale już wygląda ze jest lepiej. 

Powiedz jeszcze jeśli chodzi o ta wartość kalibracji Z -0.85 to mam ją z czegoś wyczytać, czy po prostu metoda prób i błędów wpisywać rożne liczby i obserwować kiedy osie x i y najmniej się zmieniają gdy przyrząd leży nieruchomo? Obecnie przy wartosci  -0.85 osie x i y pływa w okolicy +- 0,05. Czy to jest akceptowalny wynik czy powinno być jeszcze lepiej ? 

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Nie chodzi o X i Y, ale o dryft kąta (X i Y nie mają z tym nic wspólnego). Chciałeś aby nieruchomy miernik nie pokazywał że się kręci, prawda? Więc niestety - metodą prób i błędów.

Pamiętaj tylko o jednej ważnej sprawie: żyroskop nie pokazuje jakichś tam kątów, ale prędkość kątową, a program na tej podstawie oblicza o ile "przekręcił się" miernik. Niestety - Ziemia też się kręci, i to całkiem szybko, dlatego prędkość kątowa będzie dla nieruchomego miernika zawsze różna od zera - i tę wartość musisz znaleźć. Automatyczna kalibracja nie jest niestety zbyt dokładna...

  • Lubię! 2
Link do komentarza
Share on other sites

dziękuje za wyjaśnienie. Wygląda na to ze najlepszą wartością jest -0,84.  Czy program bierze pod uwagę jak bym wpisał wartość jeszcze dokładniejszą np -0,835 czy tylko do 2 miejsc po przecinku możną korygować?

Link do komentarza
Share on other sites

Z grubsza można powiedzieć ze mam już co chciałem. Dzięki ethanak, bez Ciebie by mi sie nie udało.

Jeszcze mam takie pytanie - czy duzo roboty by było żeby usunąć z kodu DISTANCE i ROLLER ? Tych funkcji nie używam, a trzeba w menu przez nie przeskakiwać

  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.