Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Prosty altimetr dla modeli rakiet

Gordios 18 Lut 2011 21:05 1933 0
  • Celem projektu było zbudowanie prostego altimetru, który zapisywałby tylko największą wysokość i sygnalizował to przy pomocy buczka.
    W projekcie zastosowano następujące podzespoły:
    Czujnik ciśnienia bezwzględnego MPX4101A firmy Freescale (poprzednio Motorola)
    Mikrokontroler Atmel ATtiny45
    Buczek
    Bateria 12V typu "N"

    Sprzęt

    Konstrukcja urządzenia jest bardzo prosta.
    Wyjście przetwornika ciśnienia jest podłączone bezpośrednio do wejścia analogowego mikrokontrolera Tiny45.
    Wyjście PB4 z mikrokontrolera tiny45 jest podłączone do buczka.
    Wyjście PB0 mikrokontrolera 45 wyprowadzone jest do złącza I wykorzystywane jest jako wyjście szeregowe (przekonwertowane do poziomu RS232 przez znajdujący się poza płytka drukowana przesuwnik poziomu MAX232)
    78L05 i kondensatory stanowią regulator napięcia które jest potrzebne dla trzech podzespołów.

    Prosty altimetr dla modeli rakiet

    Układ zmieścił się na jednostronnej płytce drukowanej.

    Prosty altimetr dla modeli rakiet

    Oprogramowanie

    Podstawowe funkcje
    Wyjście analogowe układu MPX4101A jest cokolwiek zaszumione. Gdy obserwować dane przy częstotliwości próbkowania około 100-200 Hz, widać zmiany wartości na dwóch bitach przy stacjonarnym ciśnieniu na czujniku. Tak więc oprogramowanie musi realizować funkcję filtracji. Proste uśrednianie wielu działa jako filtr dolnoprzepustowy, jednakże wskazane było opracowanie lepszego rozwiązania.
    Na podstawie artykułu o przetwarzaniu sygnałów z altimetrów autorstwa Davida Schultza opublikowanego w R&D at NARAM 2002.zastosowano opisany tam filtr rekursyjny. Zwiększono częstotliwość próbkowania dwukrotnie i zwiększono ilość bitów części ułamkowej..
    Po osiągnięciu apogeum w pamięci NVRAM zapisywane są trzy wartości: wartość ciśnienia na poziomie ziemi, wartość ciśnienia w apogeum oraz czas jaki upłynął od startu do osiągnięcia apogeum. Po włączeniu urządzenia te trzy wartości używane są do obliczenia wysokości ostatniego lotu.


    Obliczenia wysokości
    Przyjemnie jest gdy altimetr raportuje osiągniętą wysokość bezpośrednio po locie. Aby to uzyskać należy napięcie zamienić na ciśnienie a następnie na wysokość..

    Przetwornik analogowo-cyfrowy
    Przetwornik analogowo-cyfrowy znajdujący się w Tiny45 ma rozdzielczość 10 bitów czyli 0.0049V na każdy krok.

    Ciśnienie
    Karta katalogowa przetwornika ciśnienia MPX4101 podaje następujący wzór służący przeliczaniu napięcia na ciśnienie:
    Vout = Vs * (0.01059 * P - 0.152)
    Gdzie P jest ciśnieniem w kilopaskalach

    Obliczenie wysokości
    Istnieje szereg źródeł omawiających obliczenia wysokości. Niektóre zawierają tablice, a inne wzory. Oto jest jeden z dostępnych wzorów:
    Wysokość = (10^(log(P/P_0)/5.2558797)-1)/-6.8755856*10^-6.
    gdzie P jest ciśnieniem w kilopaskalach, a P_0 jest ciśnieniem na poziomie morza.

    W pamięci program zbudowana została tablica. Do wygenerowania tablicy wykorzystano program napisany w języku Perl. Pełna tablica dla przetwornika o rozdzielczości 10 bitów zajmuje 2 kB pamięci, a mikrokomputer ma tej pamięci tylko 4 kB. Tabela posiada co ósmą wartość, a między nimi dokonywana jest interpolacja liniowa. Ekstrapolacja wprowadza błąd nie większy niż 30 cm.

    Raportowanie
    Przy włączeniu zasilania altimetr generuje długi dźwięk, a następnie raportuje ostatnia zapamiętaną wysokość. Raportowanie odbywa się w kodzie Morse’a (powolnym).

    Po zakończeniu lotu nowa wysokość jest obliczana i jest raportowana w sposób ciągły aż do wyłączenia zasilania.

    Glen Overby

    Całość projektu jest opisana na http://reality.sgiweb.org/overby/rockets/Simple_Altimeter/index.html


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.