ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Aparatura pokładowa, układy pomiarowe i wykonawcze.
Awatar użytkownika
Vigoniusz
****
Posty: 199
Rejestracja: środa, 20 cze 2018, 15:49
Lokalizacja: Kraków

ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Vigoniusz »

Zgodnie z obietnicą, poniżej zamieszczam projekt oraz kod źródłowy do wykonania we własnym zakresie najprostszego wysokościomierza oraz wyzwalacza spadochronu – Altek v1.

Wszystko komponenty da się kupić na allegro i zlutować we własnym zakresie.
Całkowity koszt powinien się zamknąć w 80zł (lub taniej jak wszystko zamówicie na AliExpress).

Do wgrania i odczytywania później zapisów komputera potrzebne będzie ARDUINO IDE.
Może też się przydać program Fritzing do projektowania płytek PCB oraz możliwości podglądnięcia podłączenia.

Zaczynamy!

Opis modułu:
Ten bardzo prosty moduł po zlutowaniu będzie śledził aktualną wysokość rakiety. Jeżeli wykryje spadek rakiety poniżej maksymalnego pułapu, komputer daje prąd na listwę zaciskową oraz zapisuje w pamięci komputera najwyższy zarejestrowany pułap rakiety. Potem wybucha zapalnik i spadochron zostaje wyrzucony.

Następnie po podłączeniu Arduino do komputera, Arduino wyświetla nam najwyższy pułap rakiety.

Po włączeniu modułu załączy się buzzer(piszczałka), który potem pomoże nam odnaleźć rakietę jeżeli wpadła w gęstą trawę. Może to być irytujące więc dopóki rakieta nie leci można go sobie zakleić taśmą izolacyjną i trochę wyciszyć.

Kod starałem się opisać w miarę jasno, dokonałem kilku poprawek przed publikacją by był bardziej zrozumiały, ale nie mam jak go przetestować więc jakby co to dajcie znać.

A propos testów. Kiedy już zlutujecie sobie ten moduł najłatwiej go przetestować przez wkręcenie diody led lub cienkiego drucika z wełny stalowej do zacisków wyzwalania. Następnie można wsiąść do jakiejś windy, włączyć komputer i wjechać na ostatnie piętro, a potem w dół. Wtedy powinien komputer spalić drucik lub diode led na waszych oczach 😊

Pamiętajcie tylko, że komputer uzbraja wyzwalacz dopiero po wjechaniu na co najmniej 10 metrów.

Lista komponentów:
1. Złącze listwa zaciskowa AK ARK 2pin h12 5mm – 2 szt.
2. Przełącznik DIP switch x1 (2 pin) – 1 szt.
3. N-MOSFET IRFZ44N - THT – 1 szt.
4. KABEL / KONEKTOR - JST - FEMALE - 9 cm – 1 szt.
5. BATERIA LI-PO 7,4V 2S 260mAh 35C/70C TURNIGY – 1 szt.
6. Rezystor 10K Ohm 0,25W – 1 szt.
7. Dioda prostownicza 1N4004 (na zdjęciu jest inna, też działa) - 1 szt.
8. Płytka PCB – 1 szt.
9. Arduino Nano (klon lub oryginał) – 1 szt.
10. BME BMP280 Sensor lub BMP 280 (na zdjęciu) – 1 szt.

Obrazek


Sposób podłączenia:
Obrazek


Kod programu:
http://dominikhamala.home.pl/Altek/Altek_v1.ino

Plik frtizing projektu pcb:
http://dominikhamala.home.pl/Altek/Altek_v1.fzz
Space is hard.
qwertyalfa
****
Posty: 158
Rejestracja: niedziela, 16 cze 2019, 11:27
Kontakt:

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: qwertyalfa »

Projekt z pewnością się przyda, dzięki :D
Gąszczu
*
Posty: 13
Rejestracja: piątek, 23 lut 2018, 11:58

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Gąszczu »

Swietny projekt! ;) Sam obecnie kończę tworzyć swój system odzysku i wkrótce rozpocznę pierwsze testy. Zastanawia mnie problem "zaszumienia" danych w twoim projekcie, czy nie istnieje możliwość odpalenia spadochronu podczas przyśpieszania? W komorze z ALTEKIEM mogą występować skoki ciśnienia, dlatego ja zdecydowałem się na porównywanie 2 tablic danych:

void odpalenie_spadochronu_cisnienie()
{
//kolejka fifo dla tab ost pom
ost_pom_cis[4] = ost_pom_cis[3];
ost_pom_cis[3] = ost_pom_cis[2];
ost_pom_cis[2] = ost_pom_cis[1];
ost_pom_cis[1] = ost_pom_cis[0];
ost_pom_cis[0] = cisnienie;

//wpisywanie najmniejszych wart do tablicy z najmniejszymi ciśnieniami
if(cisnienie < najmniejsze_pomiary_cis[0])
{
najmniejsze_pomiary_cis[0] = cisnienie;
} else if(cisnienie < najmniejsze_pomiary_cis[1])
{
najmniejsze_pomiary_cis[1] = cisnienie;
}else if(cisnienie < najmniejsze_pomiary_cis[2])
{
najmniejsze_pomiary_cis[2] = cisnienie;
}else if(cisnienie < najmniejsze_pomiary_cis[3])
{
najmniejsze_pomiary_cis[3] = cisnienie;
}else if(cisnienie < najmniejsze_pomiary_cis[4])
{
najmniejsze_pomiary_cis[4] = cisnienie;
}

//sprawdzamy warunek na odpalenie spadochronu, porównujemy tablice ost pomiarów
//z tablicą najmniejszych pomiarów i jeżeli wszystkie wart z tab ost pom
//są większe od wart w tab najmn pomiarów to odpalamy
bool flaga_cis = true;
for(int i=0; i<5; i++)
{
for(int j=0; j<5; j++)
{
if((ost_pom_cis)<=najmniejsze_pomiary_cis[j]+delta)
{
flaga_cis = false;
i = 5, j = 5;
}
}
}
if(flaga_cis==true)
{

//Serial.println("ODPALONO Z CISNIENIA");
//Serial.println(wysokosc);
boom_cis = true;
digitalWrite(15, HIGH); // odpalenie
}
}
Shagr
***
Posty: 66
Rejestracja: wtorek, 19 cze 2018, 09:10

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Shagr »

Ja ze swojej strony dorzucę możliwość rozbudowę układu o prosty zapis danych na kartę danych SD za pomocą rejestratora OpenLog (ok 10zl na aliexpress).
Użycie jest bardzo proste, łączymy układ do portu szeregowego (UART) Arduino, a później za pomocą funkcji Serial.print() wysyłamy dane do loggera. Każde uruchomienie tworzy nowy plik tekstowy na karcie do którego są zapisywane przesłane dane.
stansz
****
Posty: 255
Rejestracja: poniedziałek, 18 lut 2019, 11:13
Lokalizacja: Białystok

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: stansz »

Dobra robota kolego Vigoniuszu.
inżynier STEM Białystok
Zbych Staniszewski
Awatar użytkownika
Vigoniusz
****
Posty: 199
Rejestracja: środa, 20 cze 2018, 15:49
Lokalizacja: Kraków

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Vigoniusz »

Dzięki Panowie. Założeniem tego projektu była możliwość wciśnięcia tego w jak najmniejszą rakietę. Mój rekord to rurka fi-35mm.

Odnośnie pytań z zaszumianiem, można zrobić filtrowanie po stronie software'u jednak biblioteka czujnika BMP280 robi to za nas. W kodzie można ustawić faktor odszumienia danych. Skutkuje to oczywiście spowolnieniem pomiaru co w praktyce wygląda tak, że rakieta spadła już z 10 metrów a czujnik pokaże, że dopiero spadła np. 3 metry. Ja stosuje niski faktor odszumienia a mimo wszystko dane są bardzo gładkie. Niestety nie testowałem czujnika przy prędkościach naddźwiękowych.

Dobry pomysł Shagr z rozszerzeniem o zapis na kartę SD. Trochę więcej miejsca będzie zajmowało ale ciągle powinno się dać to wcisnąć w małą rurkę.

Moja obecna wersja Altka ma zapis na karcie SD i pełne IMU (gyro,acc,bar,mag), ale to już bardziej rozbudowany projekt - kiedyś w wolnym czasie udostępnię projekt i kod.
Space is hard.
stansz
****
Posty: 255
Rejestracja: poniedziałek, 18 lut 2019, 11:13
Lokalizacja: Białystok

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: stansz »

Witam.
Bardzo mnie kusi , żeby zrobić sobie ALTEK. Części typowe i dostępne.
Do tej pory nie wgrywałem tylko programów do Arduino.
inżynier STEM Białystok
Zbych Staniszewski
Damian
Nowy
Posty: 5
Rejestracja: środa, 8 maja 2019, 19:40

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Damian »

Świetne rozwiązanie! Właśnie kompletuję części i zabieram się za budowę! Czy wersję z żyroskopem udało się dokończyć i mógłbyś uchylić rąbka tajemnicy?
Awatar użytkownika
Vigoniusz
****
Posty: 199
Rejestracja: środa, 20 cze 2018, 15:49
Lokalizacja: Kraków

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Vigoniusz »

Tak jak najbardziej, ale to jest znacznie bardziej rozbudowany (hardware'owo i software'owo) projekt. Wymaga zapisu na karcie microSD, inaczej takie dane nie przydadza Ci sie za bardzo.
Space is hard.
Damian
Nowy
Posty: 5
Rejestracja: środa, 8 maja 2019, 19:40

Re: ALTEK v1 - Altimetr i Wyzwalacz na częściach sklepowych

Post autor: Damian »

Wstępnie będę składał wersję pierwszą ale docelowo chciałbym wykonać bardziej zaawansowany " komputer pokładowy". Z arduino mam drobne doświadczenie ( składałem sobie smart dom) więc myślę, że powinno się udać :)
ODPOWIEDZ