Skocz do zawartości

Komputer pokładowy


Pitlab

Rekomendowane odpowiedzi

Zimą wystartowałem kolejny projekt modelarski, tym razem komputera pokładowego. Jestem już na etapie uruchamiania sprzętu oraz pierwszych danych zarejestrownych przez urządzenie.

Komputer ma budowę modularną. W płytkę główną z obu stron wtyka się moduły rozszerzające. Tak to wygląda w proszku:

flight_computer1.jpg

 

a tak złożone do kupy:

flight_computer2.jpg

 

Wczoraj zarejestrowałem pierwszy kompletny zestaw danych z wysokościomierzy, akcelerometrów, żyroskopów, magnetometru i GPS. Plik z zarejestrowanymi danymi jest tutaj: EasyGlider_090606_14.log a opis, wykresy i analiza danych są na moim forum: http://www.pitlab.pl/forum. Tam też w miarę systematycznie publikuję postępy w pracach nad urządzeniem.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Przyglądam się temu i wydaje się to ciekawe.

Ten log jest jakoś dziwnie zapisany, u mnie nie jest to wszystko w kolumnach tylko w ciurkiem, jak by LF i CR nie było w tym miejscu co trzeba, albo jak nie ma danych to puste miejsce jest.

A czy będziesz pracował nad wspomnianym wcześniej na tym forum loggerem, czy to jest właśnie to ?

Czy będzie to urządzenie dostępne w sprzedaży i dlaczego tak drogo ?

Taki zestaw sensorów to pewna nowość na rynku więc był by popyt, tak sądzę, noże i w Polsce jak cena byłaby rozbita na podstawę i moduły.

Odnośnik do komentarza
Udostępnij na innych stronach

A czy będziesz pracował nad wspomnianym wcześniej na tym forum loggerem, czy to jest właśnie to ?

Tak, to jest ten projekt. W pierwszych założeniach miało być coś odrobinę mniejszego, ale takie trochę mniejsze rzeczy są już na rynku a chciałbym przynajmniej przez jakiś czas mieć coś unikalnego. Obecna wersja jest nawet trochę nadmiarowa, ale to ze wzgledu na jej eksperymentalno-uruchomieniowy charakter.

Loger to fajna sprawa, ale trochę mało, dlatego płytka główna ma 60-MIPSowy, 32-bitowy kontroler ARM tak żeby móc coś z zebranymi danymi zrobić już na pokładzie np. ustabilizowac platformę, czy może nawet w przyszłości zrobić autonomiczne sterowanie modelem. Plan na obecny rok to loger.

 

Czy będzie to urządzenie dostępne w sprzedaży i dlaczego tak drogo ?

Tak bym chciał (w końcu z takich rzeczy żyję) i myslę że sukcesywnie będe wprowadzał poszczególne klocki do sprzedaży. To jeszcze wymaga trochę przemyśleń żeby cała akcja miała sens, ale chciałbym osiąnać coś takiego że można kupić płytkę główną + moduły + prekompilowany firmware, cześciowo pod postacią kodów źródłowych, tak aby użytkownicy mieli możliwość pisania na tym własnych aplikacji sterujacych modelem. Będzie biblioteka dostępnych funkcji typu pobierz dane z czujnika, wysteruj serwo, wyślij przez radio itp. Do tego kilka slotów czasowych w pętli głównej gdzie można umieścić swój kod.

Oprócz tego będzie ciągle rozwijany gotowy firmware, który będzie miał jakiś tam zestaw funkcjonalności, tak aby dać gotowca tym którzy nie chcą klupać własnego kodu a chcieli by się skupić na właściwościach użytkowych urządzenia.

O cenie na razię wolę nie mówić, to jest sprawa drugorzędna. Poza tym w tej chwili jest jeszcze za wcześnie na jakieś kalkulacje. Prawdopodobnie będę chciał rozbić cenę na sprzęt i oprogramowanie. W cenie sprzętu będą podstawowe biblioteki dostępu do sprzętu typu czujniki, karta, komunikacja, serwa. Zupełnie niezależnie będzie sprzedawana licencja na gotowe oprogramowanie o określonej funkcjonalności. To jest sprawa rozwojowa, zobaczymy co życie przyniesie.

 

Taki zestaw sensorów to pewna nowość na rynku więc był by popyt, tak sądzę, noże i w Polsce jak cena byłaby rozbita na podstawę i moduły.

Moduły to z jednej strony fajna sprawa, bo można elastycznie skalować funkcjonalność i koszt, łatwo też coś poprawić w przypadku problemu sprzetowego (na tym etapie jest myśl przewodnia). Z drugiej strony moduły powiększają objetość całej elektroniki. Trzeba to będzie jakoś wyważyć.

 

Ktoś pisał że nie rozumie tych cyferek. Podejrzewam ze chodzi log. W standardowym podglądzie windowsowym rzeczywiście wyglada to kiepsko, bo zawija wiersze i nie wyświetla wszystkiego.

Log można też zaimportować do arkusza kalkulacyjnego i np. zrobić wyresy.

Odnośnik do komentarza
Udostępnij na innych stronach

To czekam na projekt z niecierpliwością.

I nie mówie że przydać się to może do modelarstwa ale np do innych pojazdów ogólnie mówiąc związanych z robotyką podwodną.

Podoba mi się takie założenie projektu.

Pisanie własnych funkcji czy bibliotek to niesmowicie rozwojowa sprawa dla projektu, właściwie każdy może sobie zaprojektować coś unikatowego.

Odnośnik do komentarza
Udostępnij na innych stronach

I nie mówie że przydać się to może do modelarstwa ale np do innych pojazdów ogólnie mówiąc związanych z robotyką podwodną.

Podoba mi się takie założenie projektu.

O zastosowaniach podwodnych nawet nie myślałem, sprawa może rozbijać się o zupełnie inny zestaw czujników, chociaż przy budowie modularnej może to nie być dużym problemem. Natomiast myślałem o szeroko pojętej robotyce typu maszyny kroczące itp. Między innymi dlatego jest opcja komunikacji radiowej modułem bluetooth i próbowałem zrobić możliwość sterowania wieloma serwami (niezupełnie mi to wyszło, ale będę próbował poprawić).

 

Pisanie własnych funkcji czy bibliotek to niesmowicie rozwojowa sprawa dla projektu, właściwie każdy może sobie zaprojektować coś unikatowego.

Na to liczę, bo to nie jest projekt dla jednej osoby. Można się w tym zagrzebać na 10 lat i obudzić "po ptakach" ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

Zawodowo zajmuje się powiedzmy użytkowymi robotami podwodnymi do wykonywania prac niebezpiecznych (ROV lub AUV).

I takie fajne urządzenie może np sterować pędnikami tego robota.

Czujniki akcelerometry i żyro gwarantują mi orientacje w 3D i sterowanie moim ustrojstwem pod wodą w 3 D.

Dodatkowo magnetometr gwarantuje rozróżnienie materiału pod wodą, w bliskim kontakcie metal lub niemetal. No i ogóle. Generalnie takie urządzenie może znaleźć więcej zastosowań niż twórca przewiduje z racji swoistego "Open Source" i budowy w tzw. systemie otwartym czyli rozwojowym.

W tych pojazdach używa się do komunikacji światłowodu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 rok później...

Ta decyzja dojrzewała długo, ale zdecydowałem że projekt komputera pokładowego będzie projektem przynajmniej częściowo otwartym. Ideą projektu jest udostępnienie go jako platformy eksperymentalnej dostarczanej jako sprzęt + podstawowe, otwarte funkcje takie jak odczyt czujników, podstawowa obróbka danych typu kalibracja i wyrzucanie danych na zewnątrz czyli loger, radiomodem, OSD albo bezpośrednie łącze USB. Bardziej zaawansowane funkcje będą objęte systemem płatnych licencji, bo nie ma wątpliwości, że opracowanie oprogramowania to jest największy problem i główny koszt tego typu projektów. Liczę na to że przy okazji kończącego się właśnie międzyuczelnianego konkursu na Bezzałogowy Statek Powietrzny powstaną niezależne rozwiązania sterowania autonomicznego a komputer pokładowy będzie pełnił w nim rolę zestawu uruchomieniowego.

Żeby komputer mógł być efektywnie wykorzystany, aby wiedzieć jak się do niego podłączyć i jak dodać swój dedykowany sprzęt trzeba wiedzieć jak działa. Dlatego zdecydowałem że konstrukcja sprzętu będzie jawna.

 

W tej chwili jestem na etapie finalizacji badań nad sprzętem w wersji 1.0 i przymierzam się do uruchomienia wersji 2.0 jeszcze tej zimy. Do przebadania zostało jeszcze kilka bloków funkcjonalnych. Będę to systematycznie badał. Liczę na to że obejrzycie schematy i wywiąże się dyskusja co jeszcze jest potrzebne w tego typu projekcie, co warto zmienić czy rozwiązać inaczej.

Artykuł zawierający odnośniki do schematów i opis konstrukcji umieściłem na swojej nowej stronie. Zapraszam do lektury i dyskusji w tym miejscu.

 

Jeszcze słowo jak rozumiem ideę otwarcia sprzętu. Oznacza to że w przyszłości kupując płytę główną lub moduły komputera wiecie co dostaniecie do ręki i jak to powiązać ze swoim projektem. Dopuszczam użycie dowolnych elementów projektu komputera takich jak czujniki czy moduły w swoich projektach nie związanych z komputerem pokładowym. Nie wyrażam zgody na nieautoryzowana produkcję modułów, których schematy opracowałem. Natomiast nie mam nic przeciwko tworzeniu i sprzedaży własnych modułów pasujących do komputera pokładowego.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 5 miesięcy temu...

Dawno tutaj nie zaglądałem, już zapomniałem o tym wątku :-)

Tymczasem komputer pokładowy AutoPitLot doczekał się sprzętu w wersji 2.0. Teraz płyta główna jest zrobiona pod konkretną obudowę wybraną tak aby dawała się precyzyjnie zamontować na pokładzie, umożliwiała dostęp wyłącznie z góry (żadnych gniazd po bokach!), mogła przeżyć standardową kraksę i dała się wykonać w wersji hermetycznej gdyby była taka potrzeba. Tak to wygląda:

autopitlot20wpudelku.jpg

 

Na zdjęciu jest goła płyta, ale jest już niemalże gotowy komplet modułów:

Moduł pneumatyczny mierzący ciśnienie, wysokość, prędkość względem powietrza, wariometr i mierzący temperaturę w dwu punktach termoparami.

mod_pneum_2s250.jpg

 

Moduł inercyjny będący układem referencyjnym do utrzymywania modelu w zadanym położeniu względem Ziemi, czyli do stabilizacji samolotu.

mod_imu_iv1.jpg

 

Moduł ADCIO będący 8 kanałową "kartą pomiarową" (ADC) oraz zestawem dodatkowych wejść-wyjść cyfrowych (IO) do sterowania rzeczami dwustanowymi takimi jak oświetlenie, odpalanie rac, czy monitoring czujników krańcowych schowania i wysuwania podwozia itp.

mod_adcio_250.jpg

 

Moduł GPSu i magnetometru. GPS nie wymaga objaśnień, magnetometr to elektroniczny kompas wskazujący północ. Oba czujniki potrzebne do prowadzenia nawigacji.

mod_gps1.jpg

 

Kompletu dopełniają czujniki do pomiaru prądu i napięcia oraz czujnik prędkości obortowej jako dodatkowa informacja o ilości zużytej energii i parametrach napędu.

Czujnik_pr__du_i_4d03ee7f2836c_220x220.jpg&newxsize=220&newysize=220&fileout=rpm_opto_sensor_250.jpg

 

Komputer ma 4 złącza do tzw. modułów zewnętrznych. Jednym z nich jest prezentowany wyżej moduł GPSu i magnetometru, kolejny to radiomodem (wsparcie programowe dla modemów Aerocomma). Te dwa złącza są dedykowane. Dwa pozostałe są do dowolnego użytku i mogą wspierać takie rzeczy jak OSD (wsparcie dla OSD Remzibiego) czy inne urządzenia komunikujące się po magistrali I2C lub UART.

 

To co teraz czeka to mozolna, kilkuletnia praca nad oprogramowaniem tego sprzętu, tak by wycisnąć z niego wszystko co tylko potrzebne do latania wszystkim co lata, od szybowca do multikoptera.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie będę pisał że super bo super.

Ale aby oszczędzić kilka lat pisania, to może by w jakiś sposób zrobić wersję OPEN, oprogramowania, co by odsłoniło możliwości jakie nie śniły się producentowi.

Jakaś podstawa oprogramowania standard. Do tego programator opcjonalnie i oprogramowanie do ładowania programów użytkownika.

Odnośnik do komentarza
Udostępnij na innych stronach

Ale aby oszczędzić kilka lat pisania, to może by w jakiś sposób zrobić wersję OPEN, oprogramowania, co by odsłoniło możliwości jakie nie śniły się producentowi.

Jakaś podstawa oprogramowania standard. Do tego programator opcjonalnie i oprogramowanie do ładowania programów użytkownika.

Właśnie coś takiego planuję zrobić. O ile nie jestem przekonany do całkowitego otwieranie projektu, to chciałbym zrobić otwartą wersję minimum zawierającą:

- Odczyty wszystkich czujników bez wymyślnych kalibracji, jedynie korekcja offsetu i wzmocnienia, oraz podstawowe wyliczenia.

- Zapis danych na kartę micro SD.

- Wymiana danych i uruchamianie poleceń przy życiu otwartego protokołu, tego samego dla łącz USB (bezpośrednie połączenie z PC) i UART (połączenie radiomodemowe).

- Manager sterowania obiegiem danych w pętli głównej, tak aby można było dołożyć obsługę rzeczy zdefiniowanych przez użytkownika, oraz jawnie wywoływać nieotwarte funkcje biblioteczne.

 

Reszta oprogramowanie będzie w postaci bibliotek. Idealnie by było gdyby dało się skalować funkcjonalność dokupując potrzebne biblioteki. W ten sposób system będzie otwarty na tyle aby coś przystosować go do własnych, nietypowych potrzeb, o ile tylko nieobce jest programowanie w C.

Nie ukrywam że główny koszt takiego projektu to tworzenie i testowanie oprogramowania, dlatego chciałbym rozdzielić cenę sprzętu od oprogramowania. Oprogramowanie "otwarte" będzie wliczone w cenę sprzętu, ale tylko to. Przy okazji cena sprzętu nie będzie jakoś kosmicznie wysoka jak to jest (proporcjonalnie) w SkyAssistancie. Myślę że dla wielu osób taka wersja minimum będzie całkowicie wystarczająca. Dla tych, którzy będą chcieli czegoś więcej, typu stabilizator platformy, lot po waypointach, obsługa dodatkowego sprzętu itp., będą stopniowo dodawane biblioteki z obsługą tych rzeczy, które to biblioteki będzie można dokupić.

 

Jeżeli znajdzie się kilka osób znających na rzeczy i będzie w stanie oprogramować jakąś dodatkową funkcjonalność, to w zależności od ustaleń albo będzie to free, albo twórcy będą mieli udział w przychodach z tytułu sprzedaży tego oprogramowania. Cały soft jest na serwerze SVN, więc skompletowanie zespołu wymaga tylko ustalenia wspólnych narzędzi programistycznych.

 

W wersji obecnej programator to standardowy JTAG. Docelowo trzeba będzie oprogramować bootloader, tak aby zwykły użytkownik nie potrzebował żadnego dodatkowego sprzętu poza kablem USB do wgrania nowej wersji.

Z oprogramowaniem jest tak średnio. Ja używam komercyjnego, chociaż niedrogiego oprogramowania Crossworks. Jest też darmowy soft Eclipse + GCC i wiele ludzi z niego korzysta, chociaż zestawienie działającego kompletu nie jest takie prosta jak by się mogło wydawać. Już od dawna obiecuję sobie że przysiądę do tego ale jest tyle rzeczy do zrobienia że nie widać końca kolejki spraw do zrobienia.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • 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ę.