Skocz do zawartości

arti1295

Użytkownicy
  • Zawartość

    5
  • Rejestracja

  • Ostatnio

Reputacja

14 Dobra

O arti1295

  • Ranga
    2/10
  • Urodziny 23.09.1995

Informacje

  • Płeć
    Mężczyzna
  • Lokalizacja
    Lublin
  • Języki programowania
    C, Python
  • Zainteresowania
    Motoryzacja

Ostatnio na profilu byli

63 wyświetleń profilu
  1. arti1295

    Prototyp autonomicznego pojazdu

    Fajny projekt, mógłbym czytać nawet 10 stron bo sam się przymierzam do czegoś podobnego Co do Arduino, to polecam pro mini - mało zajmuje miejsca, funkcjonalność ta sama co w uno, klony po piątaku na ali, a dodatkowo są wersje 3.3V, więc obyło by się bez konwertera Ciekawi mnie jakby w tym zadaniu wypadło np. RPi 3 A+, bo sam mam Zero W (które pewnie podobnie by sobie radziło jak B+) i wiem że potrzebowałbym mocniejszego ale wydawało mi się, że aż Jetson nie powinien być potrzebny.
  2. arti1295

    Pojazd inspekcyjny z kamerą

    W pełnowymiarowych wersjach przy pełnym obciążeniu może tak być. W tym przypadku pewnie też znaczenie ma to, że transmisja obrazu jest w formacie h.264, co na pewno w dużo mniejszym stopniu obciąża sieć niż np. MJPEG. Chyba procesor też ma lżej bo więcej operacji jest wykonywanych sprzętowo, aczkolwiek tutaj już nie jestem pewien jaki wpływ ma format transmisji.
  3. arti1295

    Pojazd inspekcyjny z kamerą

    Mierzyłem swego czasu pobory prądu i podczas gdy pojazd stał uruchomiony i tylko był wyświetlany podgląd z kamery to cały układ pobierał ok. 170 mA (samo Raspberry i Arduino pewnie trochę mniej), podczas jazdy po równym twardym podłożu - ok. 0,8 A, a największy pobór jaki udało mi się zarejestrować to było około 8 A (pełne napięcie na silniki przy zatrzymanych kołach). Jeżeli chodzi o większą baterię, to wydaje mi się, że nie ma takiej potrzeby. Obecnie założone ogniwa o poj. 2100 mAh pozwalają na ok. 12 godzin działania lub ponad 2 godziny nieprzerwanej jazdy. Oczywiście w nierównym terenie odpowiednio krócej ale mimo wszystko myślę, że te baterie już pozwalają trochę pojeździć. No i zawsze można w miarę szybko wymienić jeśli się rozładują
  4. Witam, Chciałbym przedstawić zbudowany ostatnio pojazd inspekcyjny. Założenia były następujące: dobra mobilność w nierównym terenie, sterowanie za pomocą aplikacji na Android'a oraz podgląd z wbudowanej kamery w czasie rzeczywistym. Mechanika W pojeździe zastosowano uproszczoną, 4-kołową wersję zawieszenia rocker-bogie stosowaną m.in. w łazikach marsjańskich. Główną zaletą tego rozwiązania jest niemal równomierny nacisk wszystkich kół na podłoże oraz możliwość uniesienia koła na przeszkodzie. Zastosowane koła pochodzą od "jakiejś" zabawki (znalezione na strychu ) i są zamocowane adapterem hex 12 mm (z małymi przeróbkami, aby schować przekładnię wewnątrz koła). Każde koło posiada własny silnik DC z przekładnią - prędkość wyjściowa: ok. 120 obr/min przy zasilaniu 12V. Silniki zostały zamocowane do aluminiowego profilu kwadratowego 10 mm za pomocą opasek zaciskowych. Profil ten stanowi część wahacza przymocowanego do osi kadłuba przez łożyska z wiertarek (średnica wewnętrzna 6 mm). Z tyłu pojazdu widoczna jest belka różnicowa łącząca wahacze po obu stronach. Dzięki niej kadłub utrzymywany jest w swojej pozycji a wychylenie jednego wahacza powoduje odchylenie drugiego o taki sam kąt przeciwnie skierowany. Jako kadłub wykorzystano obudowę z ABS. Do jej wieczka przymocowano również maszt z kamerą sterowany w dwóch osiach. Elektronika Komputerem sterującym w pojeździe jest Raspberry Pi Zero W z systemem Raspbian w wersji Jessie. Zastosowano ten model z powodu małych rozmiarów, stosunkowo niskiej ceny i małego poboru mocy. Z racji braku przetwornika ADC, zastosowano również arduino w wersji Pro Mini o napięciu 3.3V (aby było zgodne ze standardem w Raspberry). Są również 2 sterowniki silników na bazie modułu L298N (Sterownik ten ma dwa kanały i można było zastosować tylko jeden sterownik, jednak z powodu niewystarczającej wydajności prądowej zastosowano dwa), 2 przetwornice step-down 5V (osobno dla logiki, i osobno dla serwomechanizmów), dwa serwomechanizmy TowerPro SG90, kamera, oraz pakiet 3S ogniw li-ion w rozmiarze 18650. Z racji tego, że kamera jest podłączana przez taśmę FFC, zastosowano również przejściówki z FFC na goldpin, aby nie uszkodzić taśmy podczas obracania kamerą. Oprogramowanie Arduino w tym pojeździe odpowiedzialne jest za odczyt aktualnego napięcia zasilania oraz generowanie sygnałów PWM dla prędkości silników oraz serwomechanizmów pozycjonowania kamery. To jaki sygnał ma być generowany, jest wiadome dzięki połączeniu z Raspberry poprzez UART. Dodatkową funkcją Arduino jest wyłączenie PWM dla silników w przypadku braku komunikacji z Raspberry co zapobiega niekontrolowanej jeździe pojazdu w przypadku np. zerwania zasięgu. Raspberry komunikuje się z użytkownikiem poprzez sieć WiFi (Malinka działa w trybie hot-spot'u). Program działający na Raspberry został napisany w Python'ie i wykorzystuje również biblioteki Flask, w celu utworzenia serwera. Odpowiednie fragmenty kodu są wykonywane po wywołaniu przypisanego do niego adresu. Do transmisji wideo wykorzystano platformę Gstreamer, która pozwala na strumieniowanie w formacie H.264. Dzięki temu udało się uzyskać płynny obraz przy 30 FPS i rozdzielczości 800x600 cechujący się niewielkim opóźnieniem (ok. 300 ms). Powstała również dedykowana aplikacja na system Android, gdzie widoczny jest podgląd z kamery oraz sterowanie pojazdem. Podsumowanie Powstały pojazd zgodnie z założeniami dobrze radzi sobie w terenie, jednak pozostawia również spore możliwości rozbudowy. Można np. dodać zewnętrzną antenę WiFi aby poprawić zasięg (obecnie jest to ok 50m na otwartej przestrzeni), diodę doświetlającą, czy też różne czujniki. Najprawdopodobniej następnym krokiem będzie dodanie przetwarzania obrazów, aby pojazd był w stanie podążać za danym obiektem i być może omijać przeszkody. Na koniec krótka prezentacja działania:
×