🤖 Autonóm robotverseny helyszíni fordulójának megoldás mintája.
Wheeltec / Roboworks Rosbot mini Ackermann robot
Fedélzeti számítógép
- Nvidia Jetson Nano
Érzékelők
- Orbbec Depth Camera
- LSN10 LIDAR
Beüzemelés
- Csatlakoztassuk a biztosított képernyő HDMI csatlakozóját a robot fedélzeti számítógépén található HDMI csatlakozóhoz. Hasonló módon, csatlakoztassuk a biztosított egér és billentyűzet USB csatlakozóját a robot fedélzeti számítógépéhez.
- Kapcsoljuk be a robotot a megjelölt kapcsoló megnyomásával. Sikeres bekapcsolás esetén a kapcsoló kéken világít.
- Nyissuk meg az Ubuntu terminált a Ctrl + Alt + T billentyűk együttes lenyomásával.
Az önvezető megoldás indítása
-
Győződjünk meg róla, hogy a robotplatform a biztosított állványra van helyezve, kerekei a levegőben vannak, szabadon foroghatnak.
-
A korábban megnyitott terminálablakban adjuk ki az alábbi parancsot:
rosrun megoldas_gyor24 verseny_start.sh
Az Enter billentyű leütését követően, kis várakozás után elindul a megoldás.
- Csatlakoztassuk le a HDMI, valamint USB kábeleket, majd helyezzük a robotot a pályára.
Az önvezető megoldás leállítása
-
Óvatosan, körültekintően helyezzük vissza a robotot az állványra.
-
Csatlakoztassuk a biztosított képernyő HDMI csatlakozóját a robot fedélzeti számítógépén található HDMI csatlakozóhoz. Hasonló módon, csatlakoztassuk a biztosított egér és billentyűzet USB csatlakozóját a robot fedélzeti számítógépéhez.
-
A korábban megnyitott terminálablakban adjuk ki az alábbi parancsot:
rosrun megoldas_gyor24 stop_all.sh
-
Hajtsuk végre a beüzemelési folyamatot, győződjünk meg róla, hogy minden vezeték (HDMI, USB) csatlakoztatva van.
-
A megnyitott terminálablakban navigáljunk a megoldást tartalmazó mappába az alábbi parancs kiadásával:
cd ~/megoldas_ws/src/megoldas_gyor24
- Nyissuk meg a kódokat Visual Studio Code segítségével, az alábbi parancs kiadásával:
code .
-
Mentsük a módosításokat (mentés gomb, vagy Ctrl + s billentyűkombináció).
-
Lépjünk vissza a munkakönyvtárba, majd a build folyamat végrehajtásához adjuk ki az alábbi parancsokat:
cd ~/megoldas_ws/
catkin build megoldas_gyor24
cd ..
source ~/.bashrc
- A módosítások végrehajtásra kerültek, a megoldás kipróbálható az önvezető megoldás indításának lépéseivel.
Előkövetelmények:
- WiFi kapcsolatra képes számítógép, Ubuntu 18.04 operációs rendszerrel és ROS Melodic telepítéssel
- Internet hozzáférés (Ethernet kábel vagy WiFi)
- Kapcsoljuk be a robotplatformot.
- A számítógéppel csatlakozzunk a robot által létrehozott WiFi hálózatra. A WiFi hálózat neve minden robotplatform esetében egyedi, az SSID végén a # a robotplatform száma szerint változik:
SSID: WHEELTEC_CAR_5.5_#
Jelszó: dongguan
- SSH-val csatlakozzunk a robotplatform fedélzeti számítógépére az alábbi terminálutasítással:
Az utasítás kiadását követően jelszóra lesz szükség. Az alapértelmezett jelszó: dongguan
A robotplatform fedélzeti számítógépére szoftvercsomagok tölthetők le, ehhez internet hozzáférés biztosítása szükséges. Megjegyzés: a példamegoldás telepítése már megtörtént, interent hozzáférés biztosítása opcionális.
- Ethernet: csatlakoztassuk az Ethernet kábelt a robotplatform fedélzeti számítógépének Ethernet portjába.
vagy
- WiFi: nmtui terminálutasítás kiadását követően csatlakozzunk az elérhető WiFi hálózatra.
nmtui
Beüzemelést követően ROS segítségével érhetőek el a robotplatform funkciói. A verseny példamegoldása is ROS által üzemelhető be. A verseny során használt robotok esetében a telepítés már megtörtént, ez a lépés kihagyható! Folytatás: ROS példamegoldás beüzemelése
.
- Workspace létrehozása és megoldás telepítése
mkdir -p ~/megoldas_ws/src
cd ~/megoldas_ws/
catkin init
cd ~/megoldas_ws/src/
git clone https://github.com/robotverseny/megoldas_zala23
cd ~/megoldas_ws/
catkin build megoldas_zala23
echo "source /home/wheeltec/megoldas_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
screen
telepítése
sudo apt install mc screen
rosrun megoldas_zala23 verseny_start.sh
A verseny_start.sh
shell script gyszerre több viruális terminalt indít, úgy, mint: roscore
, turn_on_wheeltec_robot
, lsn10_lidar
, megoldas1.launch
. A megoldás minden komponense az alábbi paranccsal állítható le:
rosrun megoldas_zala23 stop_all.sh
További kezelés:
- list screen:
screen -ls
- restore screen:
screen -r roscore
/screen -r turn_on_wheeltec_robot
/screen -r megoldas1
- detach:
Ctrl-a
+Ctrl-d
A robotplatform által hirdetett ROS topicok a platformhoz csatlakozó számítógépen is elérhetőek, a ROS_MASTER_URI
változó megfelelő beállításával:
export ROS_MASTER_URI=http://192.168.0.100:11311
A változó megfelelő beállítását követően a topicok listázhatóak, Rviz segítségével vizualizálhatóak:
rostopic list
rosrun rviz rviz
roslaunch megoldas_zala23 rviz1.launch
A megoldás komponensenként is elindítható. Ehhez a robotplatform fedélzeti számítógépén négy terminálablakra, és terminálonként az alábbi utasítások kiadására van szükség:
roscore
roslaunch turn_on_wheeltec_robot turn_on_wheeltec_robot.launch
roslaunch lsn10 lsn10.launch
roslaunch megoldas_zala23 megoldas1.launch
~/wheeltec_robot/src
~/catkin_workspace/src
~/megoldas_ws/src/
rostopic hz /scan
rostopic echo /scan -n1
rostopic type /scan
sensor_msgs/LaserScan
sudo dpkg-reconfigure locales
reboot
cd ~/rosbags
rosbag record -a -o teszt1
rsync -avzh --progress [email protected]:/home/wheeltec/rosbags/ /mnt/c/bag/wheeltec/
rosbag info teszt1_2023-03-30-12-37-22.bag
rosbag play teszt1_2023-03-30-12-37-22.bag