Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

kiedyś próbowałem swoich sił w programowaniu w środowisku arduino ale trwało to ok 2 tyg. A potem już mi się odechciało:)

Ostatnio czekając na części od naszych przyjaciół z daleka z ciekawości postanowiłem zmontować sobie małe urządzenie jakim jest speedometer czyli po Polskiemu  prędkościomierz. Sam pomiar prędkości nie jest mi potrzebny ale miło by było zobaczyć z jaką prędkością maksymalną lata mój model czy jaką będzie miała predkość moja łódka.  

 

Tak się zawziąłem, :) że po kilkunastu godzinach powstał nowy projekt. Oczywiście większość kodu ściągnięta została z internetu. Ale i tak jestem z siebie dumny, że zrobiłem aż tyle :)

 

Miernik mierzy tylko i wyłącznie maksymalną prędkość jaką uzyskuje model. Przedstawiona jest na wyświetlaczu oled.

Zastosowałem gps ublox 7n i przestawiłem częstotliwość odświeżania na 10 hz.

 

Czyli prędkość mierzona jest 10 razy na sekundę. W tej wersji zastosowałem zewnętrzne zasilanie 5-12V. W kolejnej będzie już wewnętrzne.

Pomiar może być dokonywany dopiero po uzyskaniu danych z min 7 satelit. Prędkość mierzona w km/h. 

Dodatkowo na wyświetlaczu dodałem dokładność pomiaru ale jest w tej chwili w liczbach całkowitych bo nie potrafię sobie dać radę z zmiennymi float. :(

Pomiar prędkości został sztucznie ograniczony do wartości pomiędzy 10-180 km/h. Tyle chyba wystarczy.

 

Fakt że jeszcze nie sprawdzałem działania w modelu Rc ale po teście w samochodzie jestem z niego zadowolony i najprawdopodobniej spełni swoje zadanie.

Być może zastąpi nawet radary :)

 

Filmik z działania na stole:

 

 
 
 

post-7189-0-88234100-1520103231_thumb.jpg

post-7189-0-41326000-1520104527_thumb.jpg

post-7189-0-51244600-1520104539_thumb.jpg

post-7189-0-78459100-1520104556_thumb.jpg

post-7189-0-37706600-1520104583_thumb.jpg

post-7189-0-41781300-1520104603_thumb.jpg

  • Lubię to 2
Opublikowano

Czy jest filtr Kalmana? Mam nadzieję że nie jest brana prędkość z GPS tak po prostu, bo wtedy by się okazało że SkyEye lata 200 km/h. Skoro i tak używasz kontrolerów, to czy nie lepiej wziąć z nich te dane? Są tam elegancko przefiltrowane, a patrząc na wykresy prędkości i pozycję na mapie można sobie przypomnieć skąd wiał wiatr :)

Opublikowano

Noo, Panie Marku  :) ...

Gratuluję inicjatywy, chęci i efektu. Malutki jest, fajny. To nic, że z pierwszego strzału niedoskonały, jakby tego oczekiwali niektórzy obserwatorzy... Ale o czym by wtedy napisali ? A tak, podpowiedzą, naprowadzą, ułatwią i może da się jeszcze ulepszyć. Normalny proces, ważne, że się chciało zacząć i skończyć z jakimś użytecznym efektem  :)

Zawsze popierałem i będę popierał takie inicjatywy  ;).

Szacun !

Opublikowano

Czy jest filtr Kalmana? ..............................................................to czy nie lepiej wziąć z nich te dane? .......

W tym projekcie nie mam filtru kalmana za to zastosowałem podwójny filtr marka. 

 

Co do zastosowania FC to nie we wszystkich modelach takie coś jest wskazane.

 

 

Malutki jest, fajny. To nic, że z pierwszego strzału niedoskonały, 

 

Ten prędkościomierz jest już dopracowany. Kilkanaście godzin spędzonych przy nim zrobiło swoje. Problem mam jeszcze tylko z wyświetlaniem parametru dokładności ze względu na typ zastosowanych zmiennych. Nie mogę przedstawić wartości po przecinku i tak przy dużej ilości satelit wyświetla dokładność "0". Co nie jest prawdą algorytm jeszcze nie pozwala na pokazanie wartości np "0,5" i pokazuje ją jako "0". Samo wyświetlanie nie ma znaczenia i nie ma wpływu na rzeczywistą dokładność. Jest to tylko wartość informacyjna.

Maksymalna możliwa dokładność obliczenia prędkości w ublox 7n zgodnie z dataszetem wynosi 0,1. Proste radary mają dokładność rzędu 1. Zobaczymy czy skórka warta jest wyprawki:)

 

Dodatkowo w standardzie gps na kości 7n sprzedawany jest z odświeżaniem jeden raz na sekundę w zastosowanym algorytmie zmieniam na dziesięć razy na sekundę co powoduje zwiększenie dokładności wskazań. 

Na koniec zostanie jeszcze porównanie jego wskazań do wskazań z innych urządzeń.

Opublikowano

Marku,  fajna sprawa, czekamy na testy, ja jestem zainteresowany takim gadżetem sądzę ,że sporo ludzi także z  forum.

Malkontentów nie słuchaj  :)

Opublikowano

Projekt chyba już ukończony. Poprzednia wersja została rozszerzona o pomiar maksymalnej wysokości npm, więc może być także zastosowana w samolotach.

Można by było rozszerzyć pomiar o pomiar napięcia i prądu ale zbyt by to skomplikowało urządzenia z samej idei ma być bardzo proste.

Zastosowałem tylko arduino pro mini 16mhz na 3,3v, tani gps ublox 7n i prosty wyświetlacz  sdd1306 oled.

Poniżej rozpiska ze znaczeniem poszczególnych wyświetlanych informacji na ekranie oled.

 

Ekran 1.

1 Informacja o uzyskaniu odpowiedniego Fix-a. NO – brak, 3D – 3 współrzędne, 2 x położenie xy plus wysokość.

 

2 dokładność położenia horyzontalnego w metrach (parametr hAcc).

3 Informacja o potrzebie odczekania na odpowiednią ilość odczytanych satelit. ( w tym przypadku 8, parametr numSV). Bez uzyskania odczytu z 8 satelit przejście do ekranu pomiarów jest niemożliwe.

4 Ilość poprawnie odczytanych satelit.

Ekran 2.

Po uzyskaniu odczytu z 8 satelit następuje zmiana ekranu na ekran pomiarowy 2. Ponowna zmiana odczytywanych satelit poniżej 8 nie powoduje powrotu do ekranu 1 (parametr Block)

5 Uzyskana prędkość maksymalna. Zliczanie zaczyna się od uzyskania prędkości 20km/h. Powyżej prędkości 180km/h rejestracja jest wstrzymana. Aby rozpocząć ponowne rejestrowanie prędkości należy przycisnąć przycisk reset na arduino.

6 Dokładność prędkości w km/h (parametr sAcc). Maksymalna dokładność pomiaru w ublox 7n wynosi 0,1m/s czyli 0,36km/h.

7 Maksymalna uzyskana wartość wysokości nad poziomem morza. (parametr hAcc).

8 Dokładność pomiaru wysokości w metrach. (parametr vAcc).

9 Dokładnośc pomiaru położenia horyzontalnego. (parametr hAcc). Na tym ekranie tylko w celach informacyjnych.

10. Ilość dostępnych satelit z których pobierane są dane. Tylko w celach informacyjnych.

 

 

FSR_speedometeralt.zip

 

 

post-7189-0-05306400-1520453057_thumb.jpg

  • Lubię to 2
Opublikowano

Dla zainteresowanych stworzyłem w programie fritzing schemat połączeń. A tak przy okazji to ten program okazał się całkiem ciekawy:). Schemat narysowałem już po 5 minutach po pierwszym uruchomieniu.

W szkicu zmieniłem także sprawdzenie prędkości i przesunąłem do pętli warunkowej. To taka drobnostka.

 

FSR_speedometeralt_14.zip

post-7189-0-52850800-1520598763_thumb.jpg

  • 2 tygodnie później...
Opublikowano

Dorwałem dwa analogowe czujniki temperatury TMP36 i już są zaimplementowane w kodzie arduino.

Pod A1 i A2 dodałem obsługę maksymalnej uzyskanej temperatury.

Czujniki mogą służyć do pomiaru temperatury maksymalnej silnika, pakietu czy też regulatora.

Taki dodatkowy gaget. :)

Nowa wersja oprogramowania.

speedometer_alt_temp16.zip

 

 

 

post-7189-0-67150600-1521829987_thumb.jpg

post-7189-0-95505100-1521830036_thumb.jpg

  • Lubię to 2
Opublikowano

Fajnie :D. Sam w sumie nie wiem po co, ale zawsze mam chęć poznania maksymalnej prędkości modelu czy wysokości na jakiej latam, a stary telefon nieco za duży i średnio mi się sprawdził ostatnio w modelu airboat'a, bo niestety pokazywał 0... 

Chciałem kiedyś sobie zrobić wysokościomierz opisany tu na forum, ale jakoś nigdy do tego nie doszło. Ale to chyba sobie zrobię :), może dodam też coś w rodzaju logów na kartę pamięci, można by było nawet pokusić się o robienie mapy po współrzędnych, bo gdzieś w pamięci mam takie coś...

Opcja z temperaturami też super :).

Opublikowano

Projekt chyba już ukończony. Poprzednia wersja została rozszerzona o pomiar maksymalnej wysokości npm, więc może być także zastosowana w samolotach.

Można by było rozszerzyć pomiar o pomiar napięcia i prądu ale zbyt by to skomplikowało urządzenia z samej idei ma być bardzo proste.

Zastosowałem tylko arduino pro mini 16mhz na 3,3v, tani gps ublox 7n i prosty wyświetlacz  sdd1306 oled.

Poniżej rozpiska ze znaczeniem poszczególnych wyświetlanych informacji na ekranie oled.

 

Ekran 1.

1 Informacja o uzyskaniu odpowiedniego Fix-a. NO – brak, 3D – 3 współrzędne, 2 x położenie xy plus wysokość.

 

2 dokładność położenia horyzontalnego w metrach (parametr hAcc).

3 Informacja o potrzebie odczekania na odpowiednią ilość odczytanych satelit. ( w tym przypadku 8, parametr numSV). Bez uzyskania odczytu z 8 satelit przejście do ekranu pomiarów jest niemożliwe.

4 Ilość poprawnie odczytanych satelit.

Ekran 2.

Po uzyskaniu odczytu z 8 satelit następuje zmiana ekranu na ekran pomiarowy 2. Ponowna zmiana odczytywanych satelit poniżej 8 nie powoduje powrotu do ekranu 1 (parametr Block)

5 Uzyskana prędkość maksymalna. Zliczanie zaczyna się od uzyskania prędkości 20km/h. Powyżej prędkości 180km/h rejestracja jest wstrzymana. Aby rozpocząć ponowne rejestrowanie prędkości należy przycisnąć przycisk reset na arduino.

6 Dokładność prędkości w km/h (parametr sAcc). Maksymalna dokładność pomiaru w ublox 7n wynosi 0,1m/s czyli 0,36km/h.

7 Maksymalna uzyskana wartość wysokości nad poziomem morza. (parametr hAcc).

8 Dokładność pomiaru wysokości w metrach. (parametr vAcc).

9 Dokładnośc pomiaru położenia horyzontalnego. (parametr hAcc). Na tym ekranie tylko w celach informacyjnych.

10. Ilość dostępnych satelit z których pobierane są dane. Tylko w celach informacyjnych.

 

 

attachicon.gifFSR_speedometeralt.zip

Jestem milosnikiem czytania postow z ktorych NIC nie rozumiem  :D .

Nie , nie !!!      To nie Twoja wina Marek ; to ja jestem DEBILEM elektroniczno- komputerowym .......

Opublikowano

Jarek ty się chociaż do tego przyznajesz :)

 

Dzisiaj była odpowiednia pogoda do testów w terenie. Stary wysłużony spitfire znowu poleciał do nieba :)

 

Jeden czujnik temperatury trafił do regulatora a drugi na baterię. 

Wszystko widać na filmie. Wyniki ze speedometru porównałem do logów i okazuje się, że predkość maksymalna i wysokość zgadzają się.

Cel został osiągnięty.

Brawo ja :)

 

Sorry za jakość ale samemu operować aparaturą wyrzucać model i jescze w tym czasie nagrywać nie jest proste :)

 

 

Opublikowano

Jak widać Marku wszystko widać wyśmienicie :)   Cóż, poskładać, poskładam klocki, ale wgranie programu :o ta za dużo na moja głowę. Jeżeli byłaby opcja kupna gotowego produktu, to pewnie tak.  Z taką opcja pewnie byłoby więcej chętnych.

Najważniejsze, czy ty masz czas i chęci...

Opublikowano

Niestety ale nie jest to projekt komercyjny i nie podlega "sprzedawaniu". Dlatego cały kod umieściłem na forum. 

To dopiero początek z moją zabawą w arduino. Kolejnym projektem którym się zajmę będzie półautomatyczna hamownia (taka jak w abcrc:) lub symulator dzwięku do modelu. Jeszcze nie wiem co będzie pierwsze:)

Opublikowano

Ale przecież, żeby wgrać soft, wystarczy wybrać w programie arduino, po wklejenia kodu i wybraniu rodzaju płytki - wgraj program. Do arduino z projektu trzeba tylko kupić adapter fddi. Nie ma żadnej filozofii.

  • 8 miesięcy temu...
Opublikowano

Troszkę drożej ale pewnie - z autopilotem , rurką pitota , modułem gps i mamy wariometr , prędkość modelu , prędkość wiatru, wysokość , napięcie pakietu a to wszystko online , a nawet (przy użyciu odpowiedniej aparatury) głosem (nawet swoim).

Opublikowano

Możesz trochę to rozwinąć?

aparatura turnigy 9xr pro odbiornik frsky dowolny z telemetrią , moduł wariometru , analogowy czujnik napięcia , czujnik temperatury - w tej części na wyświetlaczu aparatury mamy wyświetlane :wysokość , szybkość opadania lub wznoszenia , temperatura w miejscu zainstalowania czujnika , stan pakietu zasilającego , siła sygnału aparatury , czas rzeczywisty , 2 timery , stan wszystkich kanałów oraz każdy z tych parametrów głosowo , A po dołożeniu  apm 2.8 gps , rurka pitota ewentualnie jakieś osd , transmiter i monitor do fpv reszta danych na monitorze . Korzystam z takiego wyposażenia i muszę przyznać że korzystam tylko z niewielu parametrów głównie stan pakietu i wariometr na resztę w sumie niema czasu i potrzeby ale to są moje subiektywne odczucia.

No i zasięg telemetrii taki jak aparatury - nie zdarzyła mi się utrata zasięgu . Komunikaty w 9xr pro można sobie nagrać samemu . A jeżeli chodzi o apm2.8 to uruchamiałem go dzięki Twojej nieocenionej pomocy maxiiii

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.