Rejestrator
Re: Rejestrator
A jest jakiś praktyczny powód dlaczego nie filtrujesz przyspieszenia? Tzn. zapisywać można niefiltrowane, ale do obliczenia prędkości to bym chyba brał po filtrze.
Sebastian
Re: Rejestrator
Nie ma potrzeby filtrowania przyspieszenia. Jest ono używane jedynie do określenia, czy rakieta wystartowała (a wystartowała, jeśli akcelerometr zarejestrował przez pół sekundy przyspieszenie powyżej 3 g, czyli 1 g przyciągania ziemskiego + rakieta wzlatująca z przyspieszeniem 2 g), czy silnik skończył pracować (ostry spadek przyspieszenia do wartości ujemnej) oraz do obliczania prędkości lotu rakiety (a z tego wysokości).
Przed startem przyspieszenie jest również wykorzystywane do obliczenia kąta pochylenia rakiety.
Obliczając prędkość musisz scałkować przyspieszenie. Filtrowanie po prostu usunęłoby wyższe częstotliwości z przyspieszenia, ale całka pozostałaby taka sama (z dokładnością do niewielkich fluktuacji wynikających z filtrowania ostatnich próbek), filtrowanie wprowadziłoby jedynie opóźnienie i zabrałoby dodatkowy czas obliczeniowy.
Poza tym szum we wskazaniach akcelerometru jest mniejszy niż we wskazaniach czujnika ciśnienia.
Przed startem przyspieszenie jest również wykorzystywane do obliczenia kąta pochylenia rakiety.
Obliczając prędkość musisz scałkować przyspieszenie. Filtrowanie po prostu usunęłoby wyższe częstotliwości z przyspieszenia, ale całka pozostałaby taka sama (z dokładnością do niewielkich fluktuacji wynikających z filtrowania ostatnich próbek), filtrowanie wprowadziłoby jedynie opóźnienie i zabrałoby dodatkowy czas obliczeniowy.
Poza tym szum we wskazaniach akcelerometru jest mniejszy niż we wskazaniach czujnika ciśnienia.
- robercik
- Supersonic PROFI
- Posty: 1362
- Rejestracja: niedziela, 30 sty 2011, 18:30
- Lokalizacja: Gdynia
- Kontakt:
Re: Rejestrator
Cześć
Jesteśmy po kolejnej próbie Arecordera. Tym razem nastawiliśmy wyrzutnię na 60 stopni.

Rakieta RTP3 napędzana silnikiem w obudowie PTR500 poleciała przyzwoicie, chociaż wyglądało to trochę jak "katiusza"
FILM1: http://rakiety.pomorze.pl/filmy/V128.by.rob.avi
FILM2: http://rakiety.pomorze.pl/filmy/V128.by.and.avi
OSZ: http://rakiety.pomorze.pl/filmy/V128.OSZ.avi (60 Mb)
Odzyskanie rakiety odbyło się zgodnie z planem a powierzone było tak jak poprzednio temu samemu staremu egzemplarzowi Arecordera bez żadnych zmian w SW. Poniżej wykres w okolicy pułapu: prędkości na zielono w [m/s], oraz przeskalowane wysokość na brązowo i ciśnienie po filtrze kalmana na niebiesko.

Z wykresu widać, że na pułapie (t=230) prędkość osiowa rakiety wynosiła 55 m/s.
Prędkość minimalną 53 m/s czyli 191 km/h uzyskano około 1,2 s później.
Dosyć wolny filtr kalmana zarejestrował najniższe ciśnienie w 1,0 s po minięciu pułapu (t=330).
Gdyby więc o wyzwoleniu spadochronu decydował pomiar ciśnienia, mielibyśmy jeszcze 0,5s zwłoki (t=380).
Tymczasem decyzja została podjęta zanim prędkość wzrosła do 56 m/s (t=480), można więc piowiedzieć że warunek minimalnej prędkości opóźnił wyzwolenie spadochronu, co należało pokazać.
Rakieta wiozła na pokładzie dwa nowe rejestratory z pewnymi przeróbkami w oprogramowaniu, które obgadaliśmy wcześniej z Arkiem i z Sebastianem. Pierwszy z nich zawierał przede wszystkim szybszy filtr kalmana:

Kosztem większej szybkości przebieg ciśnienia po filtrze jest trochę pomarszczony, jednak względem osiągnięcia pułapu, spóźnia się tylko o około 0,2 s, a nie jak w poprzedniej wersji filtra aż po sekundzie. Dane zebrane przez rejestrator zawierały tylko jedną niespójność - w pamięci zapisała się jedna nadmiarowa próbka. Mam nadzieję że Arek wybada skąd się wzięła, natomiast można stwierdzić, że generalnie obciążenie procesora nie zależy od parametrów filtru kalmana.
Drugi z nowych egzemplarzy Arecordera zapisywał ze zwiększoną dokładnością ciśnienie po filtrze i obliczoną prędkość. I tu pojawiły się kłopoty z zapisem, straciliśmy wiele danych, a niektóre dane były poprzeplatane w czasie. Udało się uzyskać następujący wykres:

Tutaj widzimy, że filtr kalmana jest jeszcze szybszy i pokazuje najniższe ciśnienie jakby z początkiem osiągnięcia pułapu. Myślę że zapis ciśnienia ze zwiększoną dokładnością nie jest konieczny, ale wykres prędkości bardziej mi się podoba w dokładniejszej formie.
Jak to oceniacie?
pzdr
Jesteśmy po kolejnej próbie Arecordera. Tym razem nastawiliśmy wyrzutnię na 60 stopni.

Rakieta RTP3 napędzana silnikiem w obudowie PTR500 poleciała przyzwoicie, chociaż wyglądało to trochę jak "katiusza"
FILM1: http://rakiety.pomorze.pl/filmy/V128.by.rob.avi
FILM2: http://rakiety.pomorze.pl/filmy/V128.by.and.avi
OSZ: http://rakiety.pomorze.pl/filmy/V128.OSZ.avi (60 Mb)
Odzyskanie rakiety odbyło się zgodnie z planem a powierzone było tak jak poprzednio temu samemu staremu egzemplarzowi Arecordera bez żadnych zmian w SW. Poniżej wykres w okolicy pułapu: prędkości na zielono w [m/s], oraz przeskalowane wysokość na brązowo i ciśnienie po filtrze kalmana na niebiesko.

Z wykresu widać, że na pułapie (t=230) prędkość osiowa rakiety wynosiła 55 m/s.
Prędkość minimalną 53 m/s czyli 191 km/h uzyskano około 1,2 s później.
Dosyć wolny filtr kalmana zarejestrował najniższe ciśnienie w 1,0 s po minięciu pułapu (t=330).
Gdyby więc o wyzwoleniu spadochronu decydował pomiar ciśnienia, mielibyśmy jeszcze 0,5s zwłoki (t=380).
Tymczasem decyzja została podjęta zanim prędkość wzrosła do 56 m/s (t=480), można więc piowiedzieć że warunek minimalnej prędkości opóźnił wyzwolenie spadochronu, co należało pokazać.
Rakieta wiozła na pokładzie dwa nowe rejestratory z pewnymi przeróbkami w oprogramowaniu, które obgadaliśmy wcześniej z Arkiem i z Sebastianem. Pierwszy z nich zawierał przede wszystkim szybszy filtr kalmana:

Kosztem większej szybkości przebieg ciśnienia po filtrze jest trochę pomarszczony, jednak względem osiągnięcia pułapu, spóźnia się tylko o około 0,2 s, a nie jak w poprzedniej wersji filtra aż po sekundzie. Dane zebrane przez rejestrator zawierały tylko jedną niespójność - w pamięci zapisała się jedna nadmiarowa próbka. Mam nadzieję że Arek wybada skąd się wzięła, natomiast można stwierdzić, że generalnie obciążenie procesora nie zależy od parametrów filtru kalmana.
Drugi z nowych egzemplarzy Arecordera zapisywał ze zwiększoną dokładnością ciśnienie po filtrze i obliczoną prędkość. I tu pojawiły się kłopoty z zapisem, straciliśmy wiele danych, a niektóre dane były poprzeplatane w czasie. Udało się uzyskać następujący wykres:

Tutaj widzimy, że filtr kalmana jest jeszcze szybszy i pokazuje najniższe ciśnienie jakby z początkiem osiągnięcia pułapu. Myślę że zapis ciśnienia ze zwiększoną dokładnością nie jest konieczny, ale wykres prędkości bardziej mi się podoba w dokładniejszej formie.
Jak to oceniacie?
pzdr
- jaskiniowiec
- Administrator
- Posty: 2379
- Rejestracja: niedziela, 30 sty 2011, 18:30
- Lokalizacja: Kraków
- Kontakt:
Re: Rejestrator
Dla mnie drugi wykres jest OK
Re: Rejestrator
Cześć, ja przepraszam, ze się wbiję z tym pytaniem ale tutaj raczej to pasuje.Czy ktoś może mi po ludzku napisać jak działa filtr Kalmana?
W isnturkji obsługi altimaxa jest wzmianka że lektronika posiada tenże filtr "taki jak był użyty w programie Apollo"
Wiem, jest google ale takiego słowotoku to ja nie trawię:
[quote]Filtr Kalmana to algorytm rekurencyjnego wyznaczania minimalno-wariancyjnej estymaty wektora stanu modelu liniowegodyskretnego układu dynamicznego na podstawie pomiarów wyjścia orazwejścia tego układu. Przyjmuje się założenie, że zarównopomiar, jak i proces przetwarzania wewnątrz układu jest obarczony błędem o rozkładzie gaussowskim.[/quote]
Czy dobrze rozumiem, że filtr oddziela pojedyncze chaotyczne piki z poszczególnych danych pomiarowych, biorąc pod uwagę tylko te wartości których zakres najczęściej się powtarza???
W isnturkji obsługi altimaxa jest wzmianka że lektronika posiada tenże filtr "taki jak był użyty w programie Apollo"
Wiem, jest google ale takiego słowotoku to ja nie trawię:
[quote]Filtr Kalmana to algorytm rekurencyjnego wyznaczania minimalno-wariancyjnej estymaty wektora stanu modelu liniowegodyskretnego układu dynamicznego na podstawie pomiarów wyjścia orazwejścia tego układu. Przyjmuje się założenie, że zarównopomiar, jak i proces przetwarzania wewnątrz układu jest obarczony błędem o rozkładzie gaussowskim.[/quote]
Czy dobrze rozumiem, że filtr oddziela pojedyncze chaotyczne piki z poszczególnych danych pomiarowych, biorąc pod uwagę tylko te wartości których zakres najczęściej się powtarza???
Re: Rejestrator
Jak działa to nie tak na jednego posta
. Ale jeżeli pytasz o efekt, to jest podobny do tego co można uzyskać z innych metod typu uśrednianie w zadanym oknie, mediana itp., ale takie rzeczy to jesteś wstanie policzyć dopiero jak masz spory kawałek wykresu, w praktyce dopiero po fakcie jak już zbierzesz całość surowych danych. Więc o podejmowaniu decyzji o wyzwalaniu spadochronu na takiej podstawie nie może być mowy. Natomiast z filtrem Kalmana masz to samo a często nawet lepiej tylko że w czasie praktycznie rzeczywistym, bo bieżąca wartość liczona jest na podstawie poprzednich oraz przyszłych przewidywanych, zgodnie z matematycznie zamodelowanym systemem pomiarowym.
Sebastian
- ArturroKRK
- Podniebny Filmowiec

- Posty: 381
- Rejestracja: poniedziałek, 4 kwie 2011, 12:32
- Lokalizacja: Kraków , Łagiewniki
Re: Rejestrator
Rejestrator zaczyna nabierać rozpędu, co mi się bardzo , bardzo podoba
Sam osobiście bardzo się na elektronice nie znam, ale widzę , że są ciekawe postępy 
Btw. Mnie zafascynowało , że jesteście chyba jedyną grupą, która nagrania OSZ ma lepszej jakości niż nagrania z "ziemi"
Btw. Mnie zafascynowało , że jesteście chyba jedyną grupą, która nagrania OSZ ma lepszej jakości niż nagrania z "ziemi"
Re: Rejestrator
Tofifi, najlepsze wyjaśnienie łopatologiczne, jakie gdzieś przeczytałem.
Wyobraź sobie, że masz GPS i uzyskujesz z niego surowe próbki. Na rzeczywistą twoją pozycję nałożony jest szum, który daje ci kilkudziesięciometrowy rozrzut uzyskiwanych danych. Aby uzyskać większą dokładność wyznaczenia pozycji możesz sobie wyliczyć średnią z kilkudziesięciu próbek i będzie to dobrze działało. Problem się pojawia, kiedy zaczynasz się poruszać, uśrednianie da wtedy zdecydowanie gorsze rezultaty, bo będziesz miał jedynie próbki powiedzmy z ostatnich kilku sekund, gdzie znajdowałeś się w innej pozycji, uśrednianie poda Ci więc twoją uśrednioną pozycję z kilku ostatnich sekund.
Filtr Kalmana działa inaczej. Zakładasz, że oprócz pozycji znasz również prędkość, z którą się poruszasz. Kiedy zaczynasz się poruszać, to na podstawie zmian pozycji możesz sobie obliczyć z jaką prędkością się poruszasz i możesz założyć, że w kolejnej sekundzie będziesz jeszcze w innym miejscu, które możesz obliczyć na podstawie obecnej pozycji i obecnej prędkości. Wprowadzasz do filtra Kalmana wzór pozycja y = pozycja x + V*t i filtr Kalmana obliczy w którym miejscu będziesz w kolejnej sekundzie, a jak przyjdzie pomiar z GPS-u, to skoryguje wskazania o pomiar. Ta korekcja o prędkość powoduje, że masz dobrze odszumione próbki a jednocześnie filtr bardzo szybko nadąża za faktyczną pozycją.
Dodatkowo, jeśli przez jakiś czas filtr Kalmana nie będzie otrzymywał próbek (np. jesteś w tunelu i sygnał GPS jest za słaby), to dalej pozycje będą obliczane, choć błędy nie będą korygowane i będą stopniowo narastać, aż do czasu, gdy zostaną otrzymane kolejne próbki (jak jedziesz tunelem, to prędkość raczej masz stałą, kierunek jazdy też rzadko się zmienia).
Prawdopodobnie wiem co jest przyczyną utraty danych, ale wolę wstrzymać się dopóki nie dostanę rejestratorów do przetestowania. Mam ostatnio mało czasu, więc rejestratory po zaprogramowaniu przetestowałem jedynie czy zapisują dane na kartę (przy czym przetestowałem jedynie czy zapisują nagłówek, bez żadnych pomiarów) i czy wykrywają zapalniki, a także skalibrowałem czujniki ciśnienia.
W przerwie świątecznej postaram się zaprojektować nową wersję rejestratora, a także, jeśli się uda, to zrobię konfigurowanie parametrów rejestratora (takich jak pułap, na którym ma zostać wyzwolony spadochron, nazwisko i numer telefonu właściciela, zapisywane w każdym pomiarze, czy jest to rakieta dwustopniowa itp.) za pomocą kabla USB dołączanego do komputera, bez żadnej dodatkowej przejściówki.
Wyobraź sobie, że masz GPS i uzyskujesz z niego surowe próbki. Na rzeczywistą twoją pozycję nałożony jest szum, który daje ci kilkudziesięciometrowy rozrzut uzyskiwanych danych. Aby uzyskać większą dokładność wyznaczenia pozycji możesz sobie wyliczyć średnią z kilkudziesięciu próbek i będzie to dobrze działało. Problem się pojawia, kiedy zaczynasz się poruszać, uśrednianie da wtedy zdecydowanie gorsze rezultaty, bo będziesz miał jedynie próbki powiedzmy z ostatnich kilku sekund, gdzie znajdowałeś się w innej pozycji, uśrednianie poda Ci więc twoją uśrednioną pozycję z kilku ostatnich sekund.
Filtr Kalmana działa inaczej. Zakładasz, że oprócz pozycji znasz również prędkość, z którą się poruszasz. Kiedy zaczynasz się poruszać, to na podstawie zmian pozycji możesz sobie obliczyć z jaką prędkością się poruszasz i możesz założyć, że w kolejnej sekundzie będziesz jeszcze w innym miejscu, które możesz obliczyć na podstawie obecnej pozycji i obecnej prędkości. Wprowadzasz do filtra Kalmana wzór pozycja y = pozycja x + V*t i filtr Kalmana obliczy w którym miejscu będziesz w kolejnej sekundzie, a jak przyjdzie pomiar z GPS-u, to skoryguje wskazania o pomiar. Ta korekcja o prędkość powoduje, że masz dobrze odszumione próbki a jednocześnie filtr bardzo szybko nadąża za faktyczną pozycją.
Dodatkowo, jeśli przez jakiś czas filtr Kalmana nie będzie otrzymywał próbek (np. jesteś w tunelu i sygnał GPS jest za słaby), to dalej pozycje będą obliczane, choć błędy nie będą korygowane i będą stopniowo narastać, aż do czasu, gdy zostaną otrzymane kolejne próbki (jak jedziesz tunelem, to prędkość raczej masz stałą, kierunek jazdy też rzadko się zmienia).
Prawdopodobnie wiem co jest przyczyną utraty danych, ale wolę wstrzymać się dopóki nie dostanę rejestratorów do przetestowania. Mam ostatnio mało czasu, więc rejestratory po zaprogramowaniu przetestowałem jedynie czy zapisują dane na kartę (przy czym przetestowałem jedynie czy zapisują nagłówek, bez żadnych pomiarów) i czy wykrywają zapalniki, a także skalibrowałem czujniki ciśnienia.
W przerwie świątecznej postaram się zaprojektować nową wersję rejestratora, a także, jeśli się uda, to zrobię konfigurowanie parametrów rejestratora (takich jak pułap, na którym ma zostać wyzwolony spadochron, nazwisko i numer telefonu właściciela, zapisywane w każdym pomiarze, czy jest to rakieta dwustopniowa itp.) za pomocą kabla USB dołączanego do komputera, bez żadnej dodatkowej przejściówki.
Re: Rejestrator
Pomorze nie śpi
Rejestrator wypas. Gratuluję! Solidnie nad nim pracujecie! Będzie cudo!
Re: Rejestrator
Akrek dzięki za wyjaśnienie - łopatologicznie ale przynajmniej teraz już rozumiem i musze przyznać że to genialny wynalazek 