Skip to content

catnull-dev/lab_2025

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Лабораторная Ρ€Π°Π±ΠΎΡ‚Π° β„–2 - 2025 πŸŽ“

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΅Π³ΠΎ структурой ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ для выполнСния ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ задания (Π—Π°Π΄Π°Π½ΠΈΠ΅ β„–2, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρƒ прСподаватСля).

πŸ”— ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° GitHub: github.com/KulikovNA/lab_2025
πŸ“ ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹: ЯндСкс.Диск

Π—Π°Π΄Π°Π½ΠΈΠ΅ β„–1 πŸ“

ЗапуститС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с Π΅Π³ΠΎ структурой ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ для выполнСния ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ задания.


Запуск Π±Π΅Π· Docker πŸš€

  1. Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ рСпозитория с GitHub: πŸ“₯
# Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° рСпозитория
git clone https://github.com/KulikovNA/lab_2025.git
  1. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… вСсов πŸ“¦

Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ с ЯндСкс.Диска ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ вСса yolo11n.pt ΠΈ помСститС ΠΈΡ… ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ:

~/lab_2025/src/cv_basics/data/yolo11n.pt

Или ΠΆΠ΅ скачайтС вСса сразу с рСпозитория utlralytics ΠΈ размСститС ΠΈΡ… Π² Π½ΡƒΠΆΠ½ΠΎΠΌ мСстС ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

wget https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n.pt -O ~/lab_2025/src/cv_basics/data/yolo11n.pt
  1. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΈ сборка ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° πŸ”¨
cd ~/lab_2025
colcon build 
. install/setup.bash
  1. Установка зависимостСй πŸ”§
sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get install -y \
  ros-humble-graph-msgs \
  ros-humble-rviz-visual-tools \
  ros-humble-xacro \
  ros-humble-robot-state-publisher \
  ros-humble-joint-state-publisher \
  ros-humble-joint-state-publisher-gui \
  python3-pip \
  ros-humble-gazebo-* && \
pip3 install cv_bridge pyzmq zmq ultralytics

pip3 install 'numpy==1.26.4'
  1. Запуск симуляции ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ πŸš€
ros2 launch two_wheeled_robot launch_sim_cv.launch.py

Π’ RVIZ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ β€œAdd” β†’ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Ρ‚ΠΎΠΏΠΈΠΊ /video_with_predict/Image. πŸ‘€


Запуск с Docker 🐳

  1. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Docker-ΠΎΠ±Ρ€Π°Π·Π° πŸ“¦

Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ с ЯндСкс.Диска tar ΠΎΠ±Ρ€Π°Π· Dockers/docker_image_base/base_docker_lab2.tar. Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ сборка Docker-ΠΎΠ±Ρ€Π°Π·Π°

docker load -i base_docker_lab2.tar
  1. Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ πŸ“₯
git clone https://github.com/KulikovNA/lab_2025.git
  1. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ вСса πŸ“¦

Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ yolo11n.pt с ЯндСкс.Диска ΠΈ помСститС ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ:

~/lab_2025/src/cv_basics/data/yolo11n.pt

Или ΠΆΠ΅ скачайтС вСса сразу с рСпозитория utlralytics ΠΈ размСститС ΠΈΡ… Π² Π½ΡƒΠΆΠ½ΠΎΠΌ мСстС ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

wget https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n.pt -O ~/lab_2025/src/cv_basics/data/yolo11n.pt
  1. Π‘Π±ΠΎΡ€ΠΊΠ° ΠΈ запуск ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° πŸ”¨
cd ~/lab_2025/docker
bash build_lab_2_docker.sh
bash run_docker_lab2.sh

ПослС запуска β€” ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ RVIZ, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ β€œAdd” ΠΈ Π²Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‚ΠΎΠΏΠΈΠΊ /video_with_predict/Image. πŸ‘€


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ πŸŽ‰

Рисунок 1 β€” Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния (ΠΎΠΊΠ½ΠΎ RVIZ с ΠΏΡ€Π΅Π΄ΠΈΠΊΡ‚Π°ΠΌΠΈ ML-ΠΌΠΎΠ΄Π΅Π»ΠΈ)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ RVIZ

Π—Π°Π΄Π°Π½ΠΈΠ΅ β„–2 πŸ’‘

Π‘Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠΉΡ‚Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈΠ· 3-Ρ… Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ Ρƒ прСподаватСля. ΠžΡ‚ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° GitHub Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. Для этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:


Настройка GitHub πŸ”‘

  1. РСгистрация ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° SSH-ΠΊΠ»ΡŽΡ‡Π΅ΠΉ πŸ”

    • Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ Π½Π° GitHub ΠΈ настройтС ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….
    • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ:
      ls ~/.ssh/id_*.pub
    • Если Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ» id_ed25519.pub ΠΈΠ»ΠΈ id_rsa.pub, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΊ ΡˆΠ°Π³Ρƒ 3.
  2. ГСнСрация Π½ΠΎΠ²ΠΎΠ³ΠΎ SSH-ΠΊΠ»ΡŽΡ‡Π° πŸ”

    • Если ΠΊΠ»ΡŽΡ‡ отсутствуСт, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅:
      ssh-keygen -t ed25519
    • Если ваша систСма Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ed25519, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅:
      ssh-keygen -t rsa -b 4096
    • ΠŸΡ€ΠΎΡΡ‚ΠΎ Π½Π°ΠΆΠΈΠΌΠ°ΠΉΡ‚Π΅ Enter, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ стандартныС ΠΏΡƒΡ‚ΠΈ.
  3. ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° πŸ“„

    • Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅:
      cat ~/.ssh/id_ed25519.pub   # ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ id_rsa.pub
    • Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ вСсь тСкст, начиная с ssh-ed25519 (ΠΈΠ»ΠΈ ssh-rsa) ΠΈ Π΄ΠΎ вашСго email.
  4. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π° Π² GitHub ✏️

    • ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ GitHub β†’ Settings β†’ SSH and GPG keys.
    • НаТмитС New SSH key, Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ скопированный ΠΊΠ»ΡŽΡ‡ Π² ΠΏΠΎΠ»Π΅ Key, Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, laptop) ΠΈ сохранитС.
  5. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ πŸ“Ά

    • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅:
      ssh -T git@github.com

Π Π°Π±ΠΎΡ‚Π° с Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ πŸ™

  1. Π€ΠΎΡ€ΠΊ ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ рСпозитория πŸ“₯

    • ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° страницу рСпозитория: https://github.com/KulikovNA/lab_2025 ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Fork.
    • ПослС Ρ„ΠΎΡ€ΠΊΠ° Ρƒ вас появится копия рСпозитория ΠΏΠΎ адрСсу:
      https://github.com/<username>/lab_2025
      
    • ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΠΎ SSH:
      git clone git@github.com:<username>/lab_2025.git
  2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΈ ΠΏΡƒΡˆ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ 🌿

    • Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²Π΅Ρ‚ΠΊΡƒ, ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚Π΅ ΠΈ ΠΏΡƒΡˆΡŒΡ‚Π΅ измСнСния. НазовитС Π²Π΅Ρ‚ΠΊΡƒ ΠΏΠΎ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ: student-<Ѐамилия>-<VΠ²Π°Ρ€ΠΈΠ°Π½Ρ‚>.
    • ΠŸΡ€ΠΈΠΌΠ΅Ρ€:
      cd ~/lab_2025
      git checkout -b student-Kulikov-V9 
      # ... Π Π΅ΡˆΠ°Π΅Ρ‚Π΅ Π·Π°Π΄Π°Ρ‡ΠΊΡƒ ... 
      git add .
      git commit -m "ΠœΡ‹ ΠΌΠΎΠ»ΠΎΠ΄Ρ†Ρ‹: Π·Π°Π΄Π°Π½ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΎ"
      git push origin student-Kulikov-V9
    • Π’Π°ΠΆΠ½ΠΎ! ΠŸΠ΅Ρ€Π΅Π΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (push) Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ всС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ зависимости (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Π»ΠΈΡΡŒ) Π² Ρ„Π°ΠΉΠ»:
      ~/lab_2025/docker/Dockerfile.lab_2
      
  3. БозданиС Pull Request 🀝

    • Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Pull Request ΠΈΠ· вашСй Π²Π΅Ρ‚ΠΊΠΈ student-<Ѐамилия>-<VΠ²Π°Ρ€ΠΈΠ°Π½Ρ‚> Π² Π²Π΅Ρ‚ΠΊΡƒ main рСпозитория KulikovNA/lab_2025.
    • Для создания Pull Request:
      • Π—Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² ваш Ρ„ΠΎΡ€ΠΊ Π½Π° GitHub.
      • ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Pull requests β†’ New pull request.
      • Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π±Π°Π·ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ KulikovNA/lab_2025:main ΠΈ Π²Π°ΡˆΡƒ Π²Π΅Ρ‚ΠΊΡƒ student-<username>-V9.

Π’ΠΠ Π˜ΠΠΠ’Π« πŸš€

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–1: Π—Π°ΠΌΠ΅Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ мобильной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ модСль трСхколСсной мобильной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° модСль мобильного Ρ€ΠΎΠ±ΠΎΡ‚Π° с манипулятором Kuka Youbot, Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Π΅Π³ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ стойку с ΠΊΠ°ΠΌΠ΅Ρ€ΠΎΠΉ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ систСмы Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ с участиСм Ρ€ΠΎΠ±ΠΎΡ‚Π° Kuka Youbot.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ two_wheeled_robot ΠΊΠ°ΠΊ шаблон;
  • Π’Π·ΡΡ‚ΡŒ ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π³ΠΎΡ‚ΠΎΠ²ΡƒΡŽ URDF-модСль Kuka Youbot (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° youbot_description);
  • Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΌΠ΅Ρ€Ρƒ с Ρ‚ΠΎΠΏΠΈΠΊΠΎΠΌ /camera/image_raw, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ML-модСль ΠΈΠ· Ultralytics;
  • ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ RVIZ для отобраТСния Π΄Π°Π½Π½Ρ‹Ρ… с ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹;
  • ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ ΡΠΈΠΌΡƒΠ»ΡΡ†ΠΈΡŽ Π² Gazebo.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–2: Π—Π°ΠΌΠ΅Π½Π° ML-ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° модСль сСгмСнтации с ONNX

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² систСмС ML-модСль дСтСктирования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° модСль сСгмСнтации с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Ultralytics. Π‘ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ модСль Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ONNX, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠΈΡ€ симуляции Π½Π° "Car" ΠΈ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ€ΠΎΠ±ΠΎΡ‚Π° Π² области с наибольшим количСством ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² интСрСса (машин), Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ людСй Π² ΠΌΠΈΡ€ симуляции.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ модСль yolo11n-seg ΠΎΡ‚ Ultralytics;
  • ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ модСль Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ONNX с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ model.export(format="onnx");
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ONNX Runtime для инфСрСнса Π² ROS2-Π½ΠΎΠ΄Π΅;
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ сСгмСнтированных масок ΠΊ RVIZ Ρ‡Π΅Ρ€Π΅Π· MarkerArray;
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΈΡ€ car.world.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–3: Π’Π΅Π»Π΅ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ – ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠΌ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ управлСния Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ мобильной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ROS2-ΠΏΠ°ΠΊΠ΅Ρ‚ teleop_twist_keyboard;
  • ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π² Ρ‚ΠΎΠΏΠΈΠΊ /cmd_vel (Ρ‚ΠΈΠΏ geometry_msgs/Twist);
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ RVIZ для отобраТСния Ρ€ΠΎΠ±ΠΎΡ‚Π°.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–4: БистСма SLAM с Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ динамичСских ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ SLAM Π½Π° основС ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ Π»ΠΈΠ΄Π°Ρ€Π°. Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ML-модСль сСгмСнтации для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ двиТущихся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ rtabmap_ros ΠΈΠ»ΠΈ cartographer_ros2 для SLAM;
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ML-модСль сСгмСнтации ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (yolo11n-seg);
  • Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ пиксСли с сСгмСнтированными ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠ°Ρ€Ρ‚Ρ‹;
  • Для Π»ΠΈΠ΄Π°Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΏΠΈΠΊ /scan, для ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ β€” /camera/image_raw;
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ RVIZ для отобраТСния ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–5: АвтономноС Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ с ΠΎΠ±Ρ…ΠΎΠ΄ΠΎΠΌ прСпятствий

Π—Π°Π΄Π°Π½ΠΈΠ΅:
ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Ρ€ΠΎΠ±ΠΎΡ‚Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ с динамичСским ΠΎΠ±Ρ…ΠΎΠ΄ΠΎΠΌ прСпятствий.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ nav2 с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ TEB ΠΈΠ»ΠΈ DWA;
  • ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π»ΠΈΠ΄Π°Ρ€Π° ΠΈΠ· Ρ‚ΠΎΠΏΠΈΠΊΠ° /scan для построСния ΠΊΠ°Ρ€Ρ‚Ρ‹ прСпятствий;
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ random goal generator для задания случайных Ρ‚ΠΎΡ‡Π΅ΠΊ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΊΠ°Ρ€Ρ‚Ρ‹;
  • ΠŸΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»ΠΈ Π² Ρ‚ΠΎΠΏΠΈΠΊ /goal_pose (Ρ‚ΠΈΠΏ geometry_msgs/PoseStamped).

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–6: ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡ ML-ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ONNX

Π—Π°Π΄Π°Π½ΠΈΠ΅:
ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ модСль yolo11n ΠΈΠ· Ultralytics Π² ONNX ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ инфСрСнс Π² ROS2-Π½ΠΎΠ΄Π΅.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ {yolo export ...} Π² Ultralytics;
  • ONNX Runtime – ΠΊΠ°ΠΊ Π±Π΅ΠΊΠ΅Π½Π΄ для запуска инфСрСнса Π² ROS2;
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Ρ‚ΠΎΠΏΠΈΠΊΡƒ /camera/image_raw, публикация Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² – Π² Ρ‚ΠΎΠΏΠΈΠΊ /detections.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–7: ΠœΠΎΠ΄ΡƒΠ»ΡŒ отслСТивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ отслСТиваниС Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, управляя ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈΠ»ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ yolo11n Π² сочСтании с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ Ρ‚Ρ€Π΅ΠΊΠΈΠ½Π³Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, SORT ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ);
  • Π¦Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ Bounding Box;
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΏΠΈΠΊΠΈ: /camera/image_raw (Π²Ρ…ΠΎΠ΄), /cmd_vel (Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅), /object_pose (позиция ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°);
  • Для RVIZ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Marker для отобраТСния ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–8: ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· с использованиСм ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ Π»ΠΈΠ΄Π°Ρ€Π°

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ расстояний Π΄ΠΎ Π½ΠΈΡ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ Π»ΠΈΠ΄Π°Ρ€Π°.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ yolo11n для Π΄Π΅Ρ‚Π΅ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ;
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΏΠΈΠΊ /scan для получСния расстояний Π΄ΠΎ Π³Ρ€Π°Π½ΠΈΡ† ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²;
  • Π‘ΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ bounding box ΠΈ блиТайший Π»Π°Π·Π΅Ρ€Π½Ρ‹ΠΉ Π»ΡƒΡ‡ ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ X;
  • Π’Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² RVIZ Ρ‡Π΅Ρ€Π΅Π· MarkerArray с подписями: класс + расстояниС.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–9: Object follower с использованиСм Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ follow_object для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ с Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ultralytics-модСль (yolo11n);
  • Π’Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ‚ΠΎΠΏΠΈΠΊ /camera/image_raw, Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ‚ΠΎΠΏΠΈΠΊ /cmd_vel;
  • ΠŸΠ΅Ρ€Π΅ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ – Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π½Π° мСстС ΠΏΡ€ΠΈ отсутствии ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°;
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² launch-Ρ„Π°ΠΉΠ»Π΅ (topics, модСль, Ρ€Π΅ΠΆΠΈΠΌ слСдования);
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ RVIZ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚Π°.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–10: ВзаимодСйствиС Π΄Π²ΡƒΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² – ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π—Π°Π΄Π°Π½ΠΈΠ΅:
Один Ρ€ΠΎΠ±ΠΎΡ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π²Ρ‚ΠΎΡ€ΠΎΠΉ – ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ двиТСтся ΠΊ Π½ΠΈΠΌ, измСряя расстояниС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π»ΠΈΠ΄Π°Ρ€Π°.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΄Π²ΡƒΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠΈΡ€Π΅ Gazebo (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ namespace ΠΈ robot_state_publisher для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ);
  • ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Ρ‚ΠΎΠΏΠΈΠΊ /detected_object_pose (Ρ‚ΠΈΠΏ geometry_msgs/PoseStamped);
  • Π’Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ подписываСтся Π½Π° ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠΏΠΈΠΊ /scan для ΠΎΡ†Π΅Π½ΠΊΠΈ расстояния ΠΈ бСзопасного приблиТСния;
  • Навигация осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΠΏΠΈΠΊ /cmd_vel с расчётом дистанции Π΄ΠΎ Ρ†Π΅Π»ΠΈ Π½Π° основС Π΄Π°Π½Π½Ρ‹Ρ… Π»ΠΈΠ΄Π°Ρ€Π°;
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ RVIZ для отобраТСния Ρ‚Ρ€Π°Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ двиТСния, Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ ΠΈ Ρ†Π΅Π»ΠΈ.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 40.0%
  • CMake 25.7%
  • Shell 10.2%
  • HTML 6.6%
  • C 6.1%
  • C++ 6.1%
  • Other 5.3%