Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'Raspberry Pi 5'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino i ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - DIY
    • Projekty - DIY roboty
    • Projekty - DIY (mini)
    • Projekty - DIY (początkujący)
    • Projekty - DIY w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie

Kategorie

  • Quizy o elektronice
  • Quizy do kursu elektroniki I
  • Quizy do kursu elektroniki II
  • Quizy do kursów Arduino
  • Quizy do kursu STM32L4
  • Quizy do pozostałych kursów

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Imię


Strona

Znaleziono 2 wyniki

  1. Chciałem przedstawić wam mój projekt samochodziku "PiCar". To pojazd z funkcjami prostej jazdy autonomicznej opartej na wizji komputerowej, oraz zdalnego sterowania padem do konsoli (Xbox) z transmisją na żywo z kamerki pokładowej. Ponadto, ważnym elementem tego projektu jest moja własnoręcznie zaprojektowana płytka PCB, która reguluje napięcie płynące z baterii, zasila RPi 5, steruje silnikami i serwami i monitoruje napięcie baterii. Nazwa wzięła się z wykorzystania Raspberry Pi 5 jako komputera pokładowego. Na zdjęciu widać PiCar'a obok znacznika, który potrafi śledzić. Pod tym linkiem można znaleźć repozytorium tego projektu: https://github.com/ghemyn/picar Można tam zobaczyć pliki do których się odnoszę w tym poscie. Aby ułatwić czytanie, podzieliłem ten post na następujące sekcje: "Hardware - Płytka PCB" "Hardware - Silniki i serwa + koła" "Software - Autonomiczna jazda" "Software - Zdalne sterowanie" Hardware - Płytka PCB Powstała, aby pozbyć się osobno połączonych, niechlujnie wyglądających modułów i zastąpić je jedną dopracowaną płytką PCB. Osiągnęła swój cel ale obstawiam, że powstaną kiedyś kolejne wersje, które robią to lepiej Najważniejsze funkcję opisuję poniżej: Pliki projektowe płytki PCB można znaleźć w repozytorium tego projektu. Mikrokontroler CH32V003 jest głównym kontrolerem całej płytki PCB. Odpowiada za sterowanie sterownikami silników, generowanie sygnałów do serw i monitorowania napięcia baterii. Komunikuje się z Raspberry Pi 5 za pomocą magistrali I2C. Firmware jest napisany w C (w repo: /pwm_board/firmware/CH32V003A4M6), chociaż wersja znajdująca się na repozytorium jeszcze nie jest w pełni kompatybilna z tą nową płytką PCB. Przedtem CH32V003 było na innej płytce odpowiedzialnej tylko za sterowanie serwami. Napięcie wejściowe z baterii jest najpierw filtrowane przez kondensator low-ESR oraz ograniczane do 15 V za pomocą diody TVS SMBJ15A. Następnie układ MP2338 skutecznie obniża napięcie z zakresu 9–12,6 V do około 5,15 V, które jest podawane prosto do Raspberry Pi 5 poprzez kabel USB-C. Pin GND układu MP2338 jest połączony z szerokimi ścieżkami miedzi oraz przelotkami, żeby poprawić odprowadzanie ciepła z tak małego układu. Układ TB6612FNG jest wykorzystywany do sterowania oboma głównymi silnikami. Logika zasilania jest sterowana sygnałami PWM generowanymi przez mikrokontroler. Częstotliwość sygnału PWM może być regulowana z software'u o czym opowiadam więcej w sekcji "Hardware - Silniki i serwa". Płytka umożliwia jednoczesne generowanie czterech niezależnych hardware'owych sygnałów PWM. Serwa są zasilane napięciem 4,8 V generowanym przez drugi układ MP2238, skonfigurowany analogicznie do konwertera zasilającego RPi 5 (Oczywiście poza napięciem wyjściowym). Sekcja serw posiada 3-pinowe złącza dla każdego kanału, co ułatwia podpinanie i odpinanie kabli. Zrobiłem zapas kanałów, mimo że wykorzystuję tylko jeden, żeby zapewnić możliwość rozbudowy tego projektu w przyszłości, np. umożliwienia regulacji obrotu kamery w kilku osiach. Hardware - Silniki i serwa + koła Napęd tylnych kół PiCara realizowany jest przez dwa silniki DC N20-BT32 micro 100:1 320RPM - 9V sterowane dwukanałowym mostkiem H TB6122FNG. Umożliwia regulację prędkości za pomocą sygnału PWM generowanego przez wspomniany mikrokontroler CH32V003. Częstotliwość sygnału PWM może być regulowana z software'u, zależnie od tego czy użytkownik woli, żeby silniki były cichsze, czy żeby były mocniejsze. Im niższa częstotliwość, tym silniki pracują wydajniej, ale generują głośniejszy ton powstały przez przełączanie prądu. Skręt przednich kół realizowany jest za pomocą mikro-serwa, które przez prosty układ mechaniczny steruje kątem ich obrotu, dając efekt podobny, jak w samochodzie. Serwo jest sterowane sygnałem PWM o częstotliwości 50Hz również generowanym przez mikrokontroler. Przednie koła są przykręcone krótkimi śrubkami M3 do mocowań, które następnie wczepiają się do łożysk kulkowych, dokładnie tak, jak działają łączenia w LEGO technic. Bolec o odpowiedniej średnicy z przecięciami po bokach wchodzi w otwór łożyska i trzyma się wystarczająco mocno. Tylne koła są nasunięte na wały silników: Układ przedniego koła widziany w Fusion360: Użyte koła to Koła 60x8mm - czarne - Pololu 1420 Software - Autonomiczna jazda Autonomiczna jazda, póki co jest prostym algorytmem wizji komputerowej, który wyszukuje na obrazie z kamerki Raspberry Pi Camera HD v2 8MPx, specjalnego znacznika z trzema kluczowymi kolorami: czerwonym, zielonym i niebieskim. Obraz pochodzący z kamerki, jest najpierw filtrowany bilateralnie (Bilateral Filter), aby pozbyć się drobnych szczegółów i zakłóceń w późniejszym wyszukiwaniu znacznika. Następnie zmieniana jest gamma, żeby zwiększyć kontrast i powstały obraz jest binaryzowany, żeby SimpleBlobDetector z biblioteki OpenCV mógł wykryć trzy koła. Ostatecznie algorytm sprawdza czy koła znajdują się "wewnątrz" potencjalnie znalezionego znacznik - tzn. czy nie są przesunięte od uśrednionego środka o więcej niż o odchylenie standardowe. Jeśli nie są, to mamy pewność, że znacznik został znaleziony. Poniżej znajduje się wizualizacja, jak znacznik jest widziany przez algorytm: Kod jest dostępny na githubie Gdy znacznik jest znaleziony, pojazd jedzie do przodu i skręca tak, żeby środek znacznika znalazł się na środku widoku kamery. To w zupełności wystarczyło, aby efektywnie śledzić taki znacznik. Mam plan w przyszłości wykorzystać model wizji komputerowej "DepthAnythingV2", który oszacowuje głębię korzystając tylko z jednej kamerki w połączeniu z jednym czujnikiem ToF. Dzięki takiemu połączeniu będę w stanie uzyskać przybliżone (wystarczająco dokładne) informacje o odległości wszystkiego, co jest widoczne na przedniej kamerce. Te dane będę mógł wykorzystać do wykrywania kształtów po konturach i autonomicznego omijania przeszkód. Software - Zdalne sterowanie PiCar może być sterowany przez prosty interfejs webowy oparty na WebSocketach (interfejs znajduje się w repo: /frontend/index.html). Dostępne są dwa suwaki, jednak lepszą (i zdecydowanie fajniejszą) metodą sterowania jest gamepad (na przykład do XBox'a One), który strona wykrywa automatycznie. Przyspieszanie i hamowanie odbywa się za pomocą triggerów, a skręcanie lewym drążkiem analogowym. Interfejs wyświetla też obraz na żywo z kamery podłączonej do Raspberry Pi 5 z bardzo małym opóźnieniem (nie więcej niż 20ms). Strumień wideo jest udostępniony przez WebRTC, np. przy użyciu MediaMTX. Używany przeze mnie plik konfiguracyjny znajduje się w /car/mediamtx.yml. Po uruchomieniu transmisja z MediaMTX jest dostępna pod adresem ip raspberry_pi_5_ip:8889/rpi. Interfejs wygląda tak: Niezbyt atrakcyjny... Wiem. Podsumowanie Projekt nie jest w swojej finalnej postaci i obecnie jest w trakcie sporej aktualizacji jeśli chodzi o płytkę PCB, ale ciężko powiedzieć czy kiedykolwiek będzie gotowy bo zawsze będzie co poprawić Pliki ramy wydrukowanej na drukarce 3D, projekty płytek PCB, oraz kod można znaleźć na githubie w repozytorium projektu: https://github.com/ghemyn/picar/
  2. Cześć, niedawno, zachęcony jakością kursu Arduino, postanowiłem skorzystać z kursu Raspberry Pi z Forbota. Zakupiłem zestaw elementów oraz Raspberry Pi 5. Niestety, kluczowe informacje zawarte w kursie (takie jak obsługa kamery i sterowanie pinami) okazały się być nieaktualne dla najnowszych urządzeń. Nie chcę jednak porzucać tematu i chować maliny do szafy, stąd pytanie - czy polecacie jakieś książki lub inne kursy, które będą aktualne i przystępne dla osoby początkującej?
×
×
  • Utwórz nowe...