Podręcznik altimetru Nano V1
Ta instrukcja zawiera szczegółowy opis wszystkich funkcji i obsługi naszego małego altimetru rakietowego Nano V1

Format dziennika lotów CSV

PDF

Każdy lot, który zapiszesz, trafia do pliku CSV – zwykłej tabeli tekstowej, którą możesz otworzyć w dowolnym programie arkusza kalkulacyjnego lub przeczytać własnym kodem. Ta strona opisuje ten format szczegółowo. Dotyczy ona płytki Revision 4 lub nowszej, która zapisuje pełny zestaw danych ruchu; płytka Revision 3 lub wcześniejsza używa tego samego układu z pominięciem kolumn ruchu, a na końcu znajduje się notatka dotycząca różnic.

Cały plik, nagłówek i każdy odczyt, to oczyszczony wynik True Path i jest podpisany, aby można było sprawdzić, czy nie został zmieniony. Więcej na ten temat znajduje się na stronie True Path i apogee oraz na stronie bezpieczeństwa.

iWSKAZÓWKA

Najłatwiej przejrzeć lot, wgrywając plik bezpośrednio na Altimeter Cloud. Nie musisz sam rozszyfrować surowego CSV: strona wyświetli Twój lot w przejrzystych wykresach i liczbach, które są łatwe do przeczytania. Ta strona jest naprawdę dla każdego, kto chce pracować bezpośrednio z surowymi danymi. Pełny przewodnik znajduje się na stronie Altimeter Cloud.

Jak plik jest ułożony

Plik ma trzy części, w tej kolejności:

Na początku znajduje się nagłówek czternastu wierszy zawierający streszczenie lotu i dokładne warunki i ustawienia, w jakich został zarejestrowany. Następnie jeden pusty wiersz. Potem jeden wiersz nazw kolumn, a następnie dane lotu, jeden wiersz na każdą zarejestrowaną próbkę. Innymi słowy nagłówek zajmuje szesnaście wierszy, a odczyty zaczynają się w wierszu siedemnastym.

Nagłówek jest ułożony jako pary etykiety i wartości umieszczone obok siebie w kolumnach, dzięki czemu czyta się czytelnie po otwarciu w arkuszu kalkulacyjnym: para z lewej, para pośrodku i na Rev4 i nowszych dalej para z prawej zawierająca liczby związane z ruchem. Jeśli piszesz parser, najprostrze podejście to przeczytanie wierszy nagłówka w poszukiwaniu potrzebnych pól, pominięcie pustego wiersza i traktowanie wszystkiego od nazw kolumn jako tabeli danych.

Nagłówek

Nagłówek zawiera wszystko, co musisz wiedzieć, aby zrozumieć lot bez czytania ani jednego wiersza danych. Pola dzielą się na kilka grup.

Streszczenie lotu zawiera apogeum w metrach i czas jego osiągnięcia, wysokość lądowania i czas lądowania, maksymalną prędkość w górę, prędkość lądowania i średnią liczbę próbek na sekundę. Pola identyfikacyjne to tag Twojego urządzenia, tag konkurenta i numer seryjny altimetru, czyli dane używane do dodania lotu do Twojego konta na altimetercloud.com.

Warunki i ustawienia obejmują ciśnienie na poziomie morza i temperaturę statyczną używane do wyliczenia wysokości, czy wykorzystano temperaturę czujnika, temperaturę płytki na początku i końcu lotu, napięcie baterii na początku i końcu, wersję oprogramowania, rewizję płytki i wiele indywidualnych ustawień, takich jak orientacja, ochrona startu, tryb hybrydowy, szybkość próbkowania i zatrzymanie nagrywania. Istnieje również jedno pole Settings string, które pakuje całą konfigurację używaną w locie w jeden wiersz, i pole Adjusted log, które wskazuje „nie" dla oryginalnego lotu i informuje, czy dziennik został od tego czasu ponownie wyprowadzony z innym ciśnieniem lub temperaturą.

Ponieważ Settings string jest zapisany w stenogramie, oto co każdy klucz zawiera. Konfigurowalne pasują do opcji opisanych na stronie ustawień.

Klucz Zawiera
fp Ciśnienie na poziomie morza użyte do wyliczenia wysokości (hPa)
ft Temperatura statyczna użyta (°C)
ut Czy temperatura czujnika została użyta (0 lub 1)
ss Szybkość próbkowania (Hz)
sr Wskaźnik próbkowania
ms Maksymalne próbki
ld Próg detekcji startu (m)
lp Ochrona startu (mG)
sl Blokada uruchamiania
rs Zatrzymanie nagrywania
mp Utrzymuj moc
hm Tryb hybrydowy
or Orientacja
se Włączanie synchronizacji (Rev4 i nowsze)
os, ii, kf Wewnętrzne ustawienia obsługi ciśnienia (oversampling i parametry filtru)
rcp Odniesienie gruntu przechwycone przy starcie
rmi Czas startu w milisekundach
cgx, cgy, cgz Przechowywane odsunięcia kalibracji żyroskopu (Rev4 i nowsze)
cax, cay, caz Przechowywane odsunięcia kalibracji akcelerometru (Rev4 i nowsze)

Na koniec hash weryfikacyjny to podpis HMAC-SHA256, który pozwala Altimeter Cloud potwierdzić, że plik nie został zmieniony. Na Rev4 i nowszych prawa strona nagłówka dodaje zestaw statystyk ruchu: czasy burnout i wyrzutu, prędkości burnout i zniżki, maksymalne i średnie przyspieszenia podczas wspinaczki, zniżki i spalania, start pitch, roll, yaw i tilt, dominująca oś oraz szczegóły czasowe.

!WAŻNE

Nie edytuj dziennika lotu, jeśli chcesz go zachować jako ważny. Podpis weryfikacyjny jest obliczany na podstawie dokładnej zawartości pliku, więc zmiana czegokolwiek, nawet pojedynczej liczby lub dodanej spacji, oznacza, że już się nie zgadza. Altimeter Cloud akceptuje tylko oryginalne, niezmienione dzienniki, więc edytowany plik nie przejdzie weryfikacji i nie będzie mogły być wgrany. Jeśli chcesz pracować z danymi, skopiuj plik najpierw i edytuj kopię, a oryginał przechowuj bezpiecznie.

Kolumny danych (Revision 4 i nowsze)

Po pustym wierszu i wierszu nazw kolumn każdy wiersz to jedna zarejestrowana próbka. Kolumny pojawiają się w tej kolejności:

Kolumna Jednostki Format Co to jest
Time(ms) ms liczby całkowite Czas od startu, ze startem jako zero
Altitude(m) m 3 miejsca dziesiętne Wysokość powyżej punktu startu
Velocity(m/s) m/s 2 miejsca dziesiętne Prędkość pionowa, obliczona na podstawie śladu wysokości
acceleration_x(mG) mG liczby całkowite Przyspieszenie wzdłuż osi X płytki
acceleration_y(mG) mG liczby całkowite Przyspieszenie wzdłuż osi Y
acceleration_z(mG) mG liczby całkowite Przyspieszenie wzdłuż osi Z
acceleration_total(mG) mG 1 miejsce dziesiętne Ogólna wielkość przyspieszenia z odjętą 1 G grawitacji, dzięki czemu siedzi blisko zera w spoczynku
gyro_x °/s liczby całkowite Szybkość obrotu wokół osi X
gyro_y °/s liczby całkowite Szybkość obrotu wokół osi Y
gyro_z °/s liczby całkowite Szybkość obrotu wokół osi Z
Board temp(C) °C 2 miejsca dziesiętne Temperatura czujnika, zapisywana około raz na sekundę i pusta w wierszach pośrodku
pitch stopnie 2 miejsca dziesiętne Kąt orientacji z filtra fuzji
roll stopnie 2 miejsca dziesiętne Kąt orientacji z filtra fuzji
yaw stopnie 2 miejsca dziesiętne Kąt orientacji z filtra fuzji
tilt stopnie 2 miejsca dziesiętne Kąt od pionu

Kilka rzeczy warte uwagi. Czas jest mierzony od startu, więc start to zero; ponieważ Nano przechowuje krótki bufor próbek sprzed startu, pierwsze kilka wierszy może pokazywać małe ujemne czasy. Osie przyspieszenia i żyroskopu to osie samej płytki, które wyrównują się z rakietą zgodnie z Twoim ustawieniem orientacji. Jest jeden wiersz na próbkę do maksymalnej ustawionej wartości, więc pełny dziennik może zawierać dziesiątki tysięcy wierszy.

Krótki przykład korzystający z rzeczywistych danych lotu, pokazujący nazwy kolumn i kilka wierszy z około czasu startu:

Time(ms),Altitude(m),Velocity(m/s),acceleration_x(mG),acceleration_y(mG),acceleration_z(mG),acceleration_total(mG),gyro_x,gyro_y,gyro_z,Board temp(C),pitch,roll,yaw,tilt
-10,0.085,4.54,-993,35,76,-3.5,376,-12,-68,,3.40,-26.21,38.18,26.41,
0,0.141,5.76,-994,37,74,-2.6,330,-22,-74,,1.63,-26.97,35.28,27.02,
10,0.224,7.07,-992,36,75,-4.5,299,-28,-71,,-0.06,-27.61,32.71,27.61,
20,0.334,8.44,-1376,99,120,384.8,256,-29,-68,,-1.59,-28.15,30.55,28.19,

Możesz widzieć puste komórki temperatury, mały czas ujemny tuż przed startem i że każdy wiersz danych kończy się przecinkiem końcowym, więc ścisły parser zauważy jedno puste pole na końcu każdego wiersza danych.

Revision 3 i wcześniejsze

Płytki bez czujnika ruchu używają tego samego pliku w tym samym kształcie, tylko prostszym. Kolumny ruchu, czyli trzy kolumny przyspieszenia, całkowite przyspieszenie, trzy kolumny żyroskopu i pitch, roll, yaw i tilt, są wszystkie nieobecne, a nagłówek nie zawiera statystyk ruchu po stronie prawej.

Jest jedno dodanie zamiast usunięcia: te płytki zawierają kolumnę Pressure(hPa), napisaną do sześciu miejsc dziesiętnych, zaraz po Altitude. Tak więc dziennik Revision 3 lub wcześniejszy ma zaledwie pięć kolumn, w tej kolejności: Time(ms), Altitude(m), Pressure(hPa), Velocity(m/s) i Board temp(C). Wszystko inne na tej stronie, grupy nagłówka, czas mierzony od startu i temperatura zapisywana około raz na sekundę, stosuje się w ten sam sposób.