ROBOT AUTONOMICZNY - ANT2/ROS2
HTML-код
- Опубликовано: 11 сен 2024
- Do budowy pojazdu wykorzystałem:
- Jetson Nano (ARM Cortex A57 Quad-Core o taktowaniu 1,43 GHz i GPU Nvidia Maxwell - 128 rdzeni CUDA)
- Hoverboard (silniki BLDC, płytka sterownika, bateria 36V w konfiguracji pakietu 10s2p, gniazdo ładowania, włącznik zasilania, ładowarka 42V)
- Realsense T256 (kamera odometryczna)
- Realsense D435i (kamera głębi z jednostką inercyjną 9DoF IMU - Bosh BNO055)
- VL53L5CX time-of-flight (czujnik odległości z matrycą 8x8 punktów/64 pikseli i zasięgu do 4 m)
- RPlidar A1M8 (lidar o zasięgu 8 metrów)
- MEAN WELL NID100-5 (przetwornica DC/DC, Vin:10.5-53VDC Vout:5VDC, 11A, 100W)
- ROS2 (wersja Humble)
Muzyka: AarbronBeast - Logical Green (original music composed by: Rudolf Stember)
pozytywny szok 😁 zazdroszcze dzieciakom mozliwosci takiej lekcji!
Dla mnie jest to zawsze wielkim pozytywnym zaskoczeniem jak bardzo inteligentne i podatne na wiedze jest to "młode pokolenie". Przy umiejętnej sugestii dzieci są w stanie zrozumieć w ciągu 15 minut "kodowanie binarne" a także wykonywać operację dekodowania oraz sumowania :) To samo dotyczy programowania "w Arduino" na zasadzie licznych przykładów "modyfikacji działającego kodu i wprowadzania własnych poprawek" aby uzyskać efekt zmiany koloru dla FastLED ... itp.
Niestety okazuje się, że ta cała przestrzeń dotychczasowej wiedzy "podanej" przez "system" ogranicza się tylko do sponsorowanego Windowsa/Worda itp wynalazków.
Mało które dziecko wie co tak na prawdę znajduje się w środku komputera/serwera .. jak wygląda pamięć RAM/CPU ... itp.
Na zajęciach które prowadzę zaczynamy od "śrubokręta" i rozkręcamy wszystko co można rozkręcić ... dotykamy każdej części i nazywamy je .. opisujemy .. mówimy do czego ona jest .. i potem składamy. Każde dziecko dostaje "na pamiątkę kostkę pamięci RAM" (DDR3 albo DDR2 bo takich mam uzbieranych sporo :).
Staram się zawsze przynieść jakiś komputer który staje się "dawcą" i w czasie przerwy lekcyjnej dzieci mogą z niego wyciągnąć i zabrać co tylko chcą ale pod warunkiem że nazwą i opiszą tę część i wtedy dzieje się dziwna rzecz ... bo nikt nie che iść na przerwę :)
To bardzo miłe uczucie usłyszeć "kiedy Pan do nas jeszcze psyjdzie? " albo jak przed salą ustawia się kolejka osób żywo zainteresowanych działającym
"Robot DJI Robomaster S1" .. który nie stawia granic .. niczego nie zakazuje i każdy może nim przez chwile samemu posterować :)
Jak bardzo się to różni od "normalnej" lekcji gdzie "Pani zapomniała płyty CD i graliśmy całą lekcję" ? :)
Hej, super w jakim celu zastosowane są 2 kamery Realsense?
Panie Marcinie.
Kamery Intel RealSense T265 i D435i to dwa różne urządzenia, zaprojektowane z myślą o różnych zastosowaniach. Oto porównanie tych kamer pod kątem ich funkcji, zastosowań oraz technologii:
1. Cel i Zastosowanie
RealSense T265:
Kamera T265 to przede wszystkim jednostka śledząca, która wykorzystuje technologię V-SLAM (Visual Simultaneous Localization and Mapping). Jej głównym zastosowaniem jest śledzenie pozycji i orientacji w przestrzeni 3D bez potrzeby korzystania z zewnętrznych czujników. Jest idealna do robotyki, dronów, AR/VR oraz innych zastosowań, gdzie śledzenie pozycji w czasie rzeczywistym jest kluczowe. Dzięki tej kamerze uzyskuje się tzw. "odometrię robota" i co ważne w przestrzeni 3-wymiarowej. Co ważne posiada tez na pokładzie jednostkę inercycjną "IMU" z możliwością pomiaru przy czestotliwości do 400Hz ale niestety z jakiegoś powodu oprogramowanie dla ROS nie umożliwia uzyskania orientacji w kwaterionach :(
Ta kamera została już wycofana ze sprzedaży a także wycofano jej wsparcie programowe na GItHubie i trzeba się mocno natrudzić aby ja uruchomić pod ROS2 Humble. Dużą zaletą tej kamery jest współpraca z USB2 oraz dość niskie wymagania dla poboru mocy. Oczywiście z uwagi na technologię działa w zakresie "pasma promieniowania widzialnego" więc tylko w dzień. Osobiście uważam że ta kamera to "cud techniki" więc jest wyjątkowa w swojej kategorii :)
RealSense D435i:
Kamera D435i to kamera głębi z wbudowaną jednostką inercyjną (IMU). Jest zaprojektowana do precyzyjnego wykrywania głębi w czasie rzeczywistym, co czyni ją "idealnym narzędziem" do mapowania przestrzeni, autonomicznych pojazdów, systemów rozpoznawania gestów oraz aplikacji wirtualnej i rozszerzonej rzeczywistości.
W tym przypadku literka "i" na końcu "D435i" oznacza dołączenie 9DoF IMU - Bosh BNO055 ale tak jak powyżej węzeł ROS nie dostarcza informacji w kwaterionach :( Jedną z większych zalet tej kamery jest USB3, dość dobry obiektyw RGB. Wielkim minusem jest tryb RGBD i jakość uzyskiwanych chmur punktów bo to co na wyjściu przypomina raczej dydaktyczną ciekawostkę :) Wielkim minusem jest też "pokraczna jakość obsługi programowej" która powoduje liczne ostrzeżenia/błędy w czasie użytkowania.
2. Technologia
T265: Wykorzystuje dwie kamery rybiego oka do śledzenia przestrzennego, które zapewniają szerokie pole widzenia (FOV). Korzysta również z procesora Intel Movidius Myriad 2 VPU, który realizuje zadania związane ze śledzeniem i przetwarzaniem obrazu.
D435i: Posiada parę kamer stereo do uzyskiwania obrazu głębi, wspieranych przez projektor podczerwieni, co pozwala na dokładne mapowanie głębi. Dodatkowo, dzięki wbudowanemu IMU, może dostarczać informacje o ruchu i orientacji.
3. Specyfikacje Techniczne
T265:
Rozdzielczość kamer: 848x800 pikseli.
Częstotliwość odświeżania: do 30 FPS.
Zasięg: Głównie zależy od algorytmu V-SLAM.
Pole widzenia: 163° x 163°.
D435i:
Rozdzielczość kamer głębi: do 1280x720 pikseli.
Częstotliwość odświeżania: do 90 FPS.
Zasięg wykrywania głębi: od 0.2 m do ponad 10 m, w zależności od ustawień.
Pole widzenia: 86° x 57° dla głębi.
gdzie i dla kogo prowadzisz zajęcia? jaki jest program takich zajęć?
Witam. Zajęcia są dla młodzieży. Program zajęć wg zaawansowania/wieku/klasy:
Stosuję "standardowe techniki sugestii" i naukę przez przykład . .. od najłatwiejszego do najtrudniejszego .."
Plan:
1. Przynieść kwiaty dla Pani ... zapytać dzieci "czego one potrzebują do życia" ?
2. Budowa prostego urządzenia do podlewania kwiatów .. na zasadzie włączania przekaźnika w Arduino i diody LED ... omówienie pojęcia częstotliwości ... Hz ... zmiana częstotliwości .. i koloru dla FastRGB .. dyskoteka .. oraz modyfikacja efektu animacji wizualnej węża ... podłączenie pompki do wody na czas 0.5s ... 1s .. 5s .. podlanie kwiatków :)
.. a dalej to ...
Pokazuje się "śrubokręt" .. zadaje się pytania "po coś rozkręcać?" ... "co jest w środku?" ... i dalej już leci z górki ... rozkręcanie komputera i czym on się różni od serwera a czym od minikontrolera ? ... , kodowanie binarne, mapowanie SLAM, odometria, układy i ramki współrzędnych, wektor prędkości i przyspieszenia, nawigacja itp.
Na koniec "pytania do AI" jak jest internet bo potrafi go nie być jak sala jest na poziomie -1 :)
Zastanawiałem się czy by nie zrobić kursu ROS2 dla szerszej publiczności ale przypuszczam że nie byłoby zainteresowania. Na elektrodzie od dłuższego czasu jest straszna zapaść .. to samo na Forbot. Sam wiem z doświadczenia, że temat ROS jest "na wejściu" trudny i wymagający ale jak by go podać w przystępny sposób "na działających przykładach" to byłaby to duża wartość dodana i jakaś alternatywa dla "Brawl Stars" :)
Hey my friend, could you explain to me how you set your wheels from hoverboard? Please... I'm using the same wheels but when my robot is turning, the wheels tend to oscillate, it causes some problems when I'm using ROS.
My dear viewer Diego Armando :)
I'm glad you enjoy the videos I post.
Regarding the oscillations, I experienced them too and was concerned about them as well.
In the case of a BLDC/PMSM motor, we don't have an encoder inside and have to rely on three Hall sensors, which, if I remember correctly, provide only 90 "ticks" per rotation, which is quite a low resolution, but it's better than nothing :) When running the nav2 navigation stack, the oscillations seem to be smaller due to the precise trajectory.
As far as I remember, for ROS Noetic, I adjusted some parameters in the configuration files, and the oscillations decreased a bit. As for ROS2, I tried almost all the available drivers on GitHub, but not all of them were good, and I stuck with this one: github.com/DataBot-Labs/hoverboard_ros2_control
Once you build your vehicle, don't forget to "show it off" :) I'm waiting for the link :)
Good luck!
@@konraddudziakthank you so much for your help my friend... And of course, when I finish my robot, I will share it in a video... Thank you!!! You're the best!