Wewnętrzny system pozycjonowania oparty na żyroskopie i Akcelerometrze

Rozwijam aplikację na Androida do śledzenia pozycji wewnątrz. Mój telefon to Google Nexus S za pomocą dwóch czujników, pierwszy to akcelerometr, a drugi to Żyroskop.

Mój pomysł polega na tym, aby z początkowego punktu odniesienia (znanej pozycji GPS), za pomocą czujników 2 (akcelerometr do ruchu i żyroskop do kierunku) śledzić telefon podczas ruchu. I wyświetlać na mapie, gdy użytkownik idzie.

Ale problem w tym, że nie mam pojęcia jak połączyć oba te czujniki podać mi faktyczną pozycję?

Przeczytałem artykuł w Internecie, który mówi o "filtrze Kalmana" i po dalszych badaniach okazało się, że ten filtr jest bardzo skomplikowany / dla mnie za dużo), szczególnie aby kodować go w Javie dla Androida (cpu killer)

Czy ktoś ma jakieś doświadczenie, którym mógłby się ze mną podzielić na temat systemu pozycjonowania w pomieszczeniach za pomocą żyroskopu i akcelerometru?

5 answers

Żyroskopy i akcelerometry to za mało.

Otrzymujesz pozycję, całkując Przyspieszenie liniowe dwukrotnie, ale błąd jest okropny. Jest bezużyteczny w praktyce.

Oto Wyjaśnienie przez (Google Tech Talk) o 23: 20. Gorąco polecam ten film.

Jeśli chodzi o pozycjonowanie wnętrz, to uznałem je za przydatne:

Nie mam pojęcia, jak te metody będą działać w rzeczywistych aplikacjach lub jak przekształcić je w ładną aplikację na Androida.

Podobne pytanie to Obliczanie odległości wewnątrz budynku .

 62
Author: Ali,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:54:50

Myślę, że to świetny post odpowiadający na twoje pytanie. Ten filtr Kalmana łączy dane z akcelerometrów i żyroskopów. Mam nadzieję, że to pomoże.

 7
Author: Allen Jee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-14 02:32:04

Aby dowiedzieć się więcej o nowych technologiach pozycjonowania w pomieszczeniach, zajrzyj do tego postu na blogu Qubulus. Istnieje kilka startupów i projektów badawczych próbujących znaleźć dobry zamiennik GPS w pomieszczeniach. Próby obejmują od Dead Reckoning, przez Kody QR, impulsy świetlne, do radiowego odcisku palca. Wygląda na to, że każde realne rozwiązanie połączy wiele technologii (podobnie jak większość smartfonów opiera się na A-GPS, gdzie sygnał satelitarny jest wspomagany przez multilateracja wieży komórkowej).

Powodzenia w aplikacji!

 1
Author: nicksuch,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-04 21:28:42

Myślę, że jest już za późno na odpowiedź na to pytanie, ale teraz jest dobre rozwiązanie o nazwie iBeacon technology.

Możesz skanować urządzenia iBeacon za pomocą smartfona, a rssi możesz pobrać z iBeacon. Możesz więc obliczyć swoją pozycję przez te rssi.
 1
Author: Stanley Kou,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-01 13:28:32

Aby śledzić pozycję w pomieszczeniu, zaczynając od jakiegoś punktu odniesienia, nie wystarczy tylko żyroskop i akcelerometr. Za pomocą akcelerometru można obliczyć prędkość, za pomocą żyroskopu można uzyskać kierunek urządzenia mobilnego, ale aby obliczyć pozycję wewnętrzną, musisz również mieć kierunek ruchu, więc w tym przypadku musisz użyć czujnika magnetycznego. Takie podejście nazywa się metodą Dead Reckoning i dość skomplikowane jest połączenie wszystkich 3 czujników, aby uzyskać odpowiednią pozycję w pomieszczeniu. Filtry Kalmana pozwalają na wygładzaj pomiary i filtruj trochę szumów, ale nie jest to metoda obliczania pozycji w pomieszczeniu. Jeśli chcesz uzyskać pozycję indoor możesz spróbować iBeacon approach i Trilateration method, istnieją pewne biblioteki (jak Ta), które mają już tę funkcjonalność, więc możesz spróbować zbadać tę metodę z takich bibliotek.

 1
Author: Dr.Lean,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-04 08:10:42