Witam po dłuższej przerwie.
jaskiniowiec pisze:Wystarczy moim zdaniem. Ale musisz stosować przetwornik? Mikrokontroler jest bez wejść analogowych?
Jak Knod wcześniej zauważył 10 bitów wewnętrznego ADC mikrokontrolera to trochę mało, zwłaszcza jeśli uwzględnić, że ostatnie 1-2 bity to szum.
Do ADC planuję podłączyć (ADc ma 7 wejść analogowych):
1) oś X akcelerometru 3 - osiowego,
2) oś Y akcelerometru 3 - osiowego,
3) oś Z akcelerometru 3 - osiowego,
4) oś Z akcelerometru 1 - osiowego,
5) czujnik ciśnienia,
6) czujnik temperatury,
7) ew. drugi czujnik temperatury.
Ewentualne pozostałe wejścia analogowe ADC oraz 2-3 wejścia analogowe mikrokontrolera planuję wyprowadzić na złącze ARK jako dodatkowe wejścia analogowe, pod które można podłączyć coś dodatkowego.
Oś Z planuję mierzyć dwoma akcelerometrami z dwóch powodów:
1) zwiększenie dokładności pomiaru, gdy przyspieszenie jest mniejsze niż 16 g,
2) brak konieczności montowania akcelerometru jednoosiowego, jeśli układ nie będzie wykorzystywany w rakietach osiągających przeyspieszenia większe niż 16 g - koszt rejestratora mniejszy o jeden akcelerometr.
Co do czujnika temperatury - nie udało mi się znaleźć nic, co by miało stałą czasową mniejszą niż 3 sekundy (pomijając pirometr, ale nie da się go zastosować w rakiecie). Dodając do tego opóźnienie związane z nagrzewaniem się głowicy rakiety - nie da się mierzyć temperatury głowicy podczas lotu w górę. Da się natomiast bez problemu pomierzyć tą temperaturę podczas opadania, kiedy 5-10 sekund opóźnienia nie robi różnicy.
Jako czujnik temperatury myślę, że dobry byłby termistor - tani, a po wzorcowaniu go mógłby być całkiem niezłym termometrem z dokładnością poniżej jednego stopnia i stałą czasową ok. 3 sekund (nawet bez wzorcowania można sensownie temperaturę mierzyć).
Czy ktoś zna lepszy (i w miarę tani) sposób pomiaru temperatury czy też użyć po prostu termistora?
Mierzymy tylko temperaturę pomietrza (miernik temperatury na kabelkach i przyklejony w dziurze tuż przy powierzchni rakiety?), czy również temperaturę głowicy?
Co do wyzwalania zapalników z jednego czy osobnych kondensatorów - zrobiłem testy wyzwalania dwóch zapalników z jednego kondensatora. Za każdym razem najpierw był wyzwalany jeden zapalnik, 10 ms później był prąd był odcinany od zapalnika pierwszego i wyzwalany był drugi zapalnik, a kolejne 10 ms później prąd był odcinany od drugiego zapalnika. Prąd był po 10 ms odcinany z tego powodu, że niektóre zapalniki (o czym napiszę za chwilę), chociaż zostały wyzwolone, to nadal zwierały obie swoje końcówki, co by rozładowało kondensator i uniemożliwiło wyzwalanie kolejnych zapalników.
TEST 1 - kondensator 10 mF
Oba zapalniki zostały wyzwolone (widać wyzwolenie tylko jednego zapalnika, bo ustawiłem poziom wyzwalania zbyt nisko - napięcie na kondensatorze spadło jedynie o niecałe pół wolta, więc oscyloskop nie wyzwolił). Oba zapalniki po wyzwoleniu stanowiły rozwarcie.
TEST 2 - kondensator 4,7 mF
Oba zapalniki zostały wyzwolone (drugie wyzwolenie kończy się na 0,5 ms przed końcem wyzwolenia, co sprawia wrażenie, że nie widać całości), pierwszy zapalnik po wyzwoleniu stanowił rozwarcie, natomiast drugi - zwarcie.
TEST 3, 4, 5- kondensator 2,2 mF - testy sprzed ponad pół roku, kiedy je robiłem do mojej pracy dyplomowej, wyzwalany był jeden zapalnik strona 46 i 47
Każdy z zapalników został wyzwolony. Dwa pierwsze zapalniki po wyzwoleniu stanowiły rozwarcie, natomiast trzeci zapalnik po wyzwoleniu stanowił zwarcie.
Całość danych zebrałem tutaj
Wyliczyłem też energię potrzebną do każdego wyzwolenia zapalnika. Dostałem od Andrzeja dwa rodzaje zapalników - z krótkimi i z długimi przewodami. O ile dobrze pamiętam, to były one różnych producentów albo różnych dostawców. Do wyzwolenia tych z krótkimi przewodami wystarczy ok. 23 mJ energii; zapalniki te zawsze po wyzwoleniu stanowiły rozwarcie. Do wyzwolenia tych z długimi przewodami potrzeba ok. 40 mJ energii - w czasie testu 2 i 5 nie otrzymały one wystarczającej ilości energii i, chociarz wyzwoliły, to jednak po wyzwoleniu stanowiły zwarcie w dalszym ciągu rozładowując kondensator (do czasu gdy po 10 ms mikrokontroler nie odciął ich od kondensatora). Podczas testu 1 zapalnik z długimi przewodami wyzwolił i po wyzwoleniu był rozwarciem, jednak wtedy miał możliwość korzystania ze znacznie większej ilości energii.
Być może fakt większego zużycia energii zapalników z długimi kablami wynika z większej rezystacji kabli (mają większą rezystancję, bo są po prostu dłuższe), ale nie miałem wystarczająco dużo zapalników, żeby to sprawdzić. Nie bez wpływu jest również fakt, że zapalniki z długimi kablami wyzwalałem jako drugie (w przypadku testów z dwoma zapalnikami - nr 1 i 2), przez co zmniejszone napięcie na kondensatorze po wyzwoleniu pierwszego zapalnika sprawiło, że przez zapalnik przepływał mniejszy prąd, co dodatkowo zwiększyło zużywaną energię (choć TEST 5 to już do niczego nie pasuje - może coś wtedy źle zrobiłem?). Wyzwalałem najpierw te z krótszymi kablami a następnie te z długimi, bo chciałem przetestować wyzwalanie tych z dłuższymi kablami w trudniejszych warunkach.
Podsumowując można wyzwolić dwa zapalniki w odstępie 10 ms mając co najmniej kondensator 4,7 mF naładowany do napięcia co najmniej 5,2 V (postaram się, żeby rejestrator następnym razem miał ciut więcej). A więc na podstawie tego - robić jeden kondensator na wszystkie zapalniki czy też w dalszym ciągu po jendym na każdy zapalnik? Dodam, że bardzo rzadko zajdzie sytuacja, że oba zapalniki zostaną wyzwolone w tym samym czasie (można też oczywiście w oprogramowaniu dodać opóźnienie na doładowanie kondensatora).