Wpis z mikrobloga

@flann: Przemieszczenie z akcelerometru to trudna sprawa, na logikę wydaje się niezbyt dokładne i pewnie jest niezbyt dokładne. Nie bardzo się na tym znam, ale mam kilka pomysłów jak można to usprawnić. Może spróbuj uśrednić wyniki pomiarów. Stracisz na rozdzielczości w czasie ale poprawisz dokładność. Potem możesz jeszcze doświadczalnie zbadać jaki błąd generujesz w zależności od różnych ruchów i spróbować to skorygować.
@flann: Nie wiem co to Kalman :p bo się nie znam, ale logiczne to jest, że powstaje błąd. Może spróbuj zbadać jaki szum jest gdy nie ma żadnego ruchu i uśredniać tylko te wyniki, które są poniżej tej granicy.
@flann: powiem, że praktycznie nie ma szans przy akcelerometrach komórkowych mierzyć przemieszczenia, po pierwsze błąd, po drugie rozdzielczość - więc jeden szybszy ruch ci wszystko zaburzy.
@prusi: To w takim razie jak żyć? Czym to zastąpić, tak by móc mierzyć przemieszczenie, bądź pozycję, bez czujników przemieszczenia, ani GPS?
@flann: mój kumpel kiedyś robił na akcelerometrze miernik przyspieszenia od 0 do 100 km/h i to jeszcze dało radę, ale tylko dlatego, że to przyspieszenie w tym przypadku nie zmieniało się gwałtownie, a dość płynnie, a więc mówiąc obrazowo nie było niebezpieczeństwa, że nie złapałeś jakiejś górki, ale do innych zastosowań to ja bym nie ryzykował (swoją drogą nawet w tym przypadku poprawna kalibracja z tego co mówił dużo zmieniała, ale
@prusi: @extern-int: to były takie zabawy ogólne z szumem i filtrem Kalmana... Wychodzi mi na to, że jak zcalkuję wyjście to bida z nyndzą. I to chyba ma zastosowanie ogólne - jeżeli gdzieś mam sygnał + szum i to przefiltruję a potem mnie najdzie ochota całkowania to nic z tego nie będzie:-(

Grzebę w tym od strony teorii.
@flann: Z całkami nie jest tak, źle. Uśrednienie powinno zniwelować szum, jednak trzeba mieć świadomość, że takie uśrednianie zmniejsza rozdzielczość w czasie, co powoduje niewrażliwość na gwałtowne ruchy. Trzeba wziąć też pod uwagę, że żaden akcelerometr nie jest doskonały, szczególnie taki w komórce. Ma swoją granice czułości, więc powolne ruchy też powodują błąd. Komórkowy akcelerometr służy właściwie jedynie do wykrywania zmian nachylenia.
@prusi: W każdym razie zabawna sprawa:-) I ogólnorozwojowo ciekawe. Tak dla śmiechu dodam, że "przybywam" z uczelni ekonomicznej i rozmyślam nad zastosowaniem technik żywcem "pożyczonych" z inżynierii w ekonomii, a że teoria sterowania jest całkiem ładna, toć i nią się zajmuję, szkoda tylko, że nie da się przenieść jej w skali 1:1:-) Choć może to i lepiej.
@extern-int: z granicą czułości rozumiem, kolega mi to tłumaczył. Problem jest bardziej w sferze teorii niż praktyki.

Ale z uśrednianiem to tak mi nie wygląda - bo zawsze jakiś szum zostaje - a sumując go to się nawarstwia i dostajesz błądzenia przypadkowe. Jak masz coś pod ręką to sobie wygeneruj 100 obserwacji z rozkładu normalnego o średniej 0 - jak zrobisz sumę tego to nie dostaniesz zero:-( Uroda statystyki. Choć niby
@flann: Dlatego właśnie odcina się sygnały poniżej pewnej granicy, tak jak to sugerowałem wcześniej. Zaleta jest taka, że nie masz już błądzenia losowego, wada taka, że gdy ruszasz zbyt wolno to nie wykrywa ruchu. Ale tego drugiego i tak nie da się uniknąć przez granice czułości akcelerometru.
@extern-int: To nic nie daje. Istotą jest lokalizacja pozycji za pomocą akcelerometru, jeśli nie masz innych źródeł. Modelując układ nawet z bardzo niskim poziomem szumu, pomiar i wartość rzeczywista rozbiegają się między sobą. Stosując klasyczne metody filtracji, a uśrednianie i odcinanie to najbardziej klasyczne metody nie zyskujesz kompletnie nic. Odpowiedzią, przynajmniej w pewnym stopniu powinien być filtr Kalmana ale nie jest.
@staszko90: Poczytałem troszkę o filtrze Kalmana i już wiem o co chodzi. Nie da się precyzyjnie za pomocą akcelerometru wyznaczyć przemieszczenia, ale stosując filtr Kalmana a potem obcinanie niskich wychyleń przynajmniej dobrze wyznaczysz kierunek ruchu i siłę. Odległość i prędkość będą obarczone błędem, ale lepsze to niż zupełnie nic.