# Инструкция по установке фреймворка **Важно!** Совместимо только с операционной системой Ubuntu 24.04. Ниже приведена последовательность шагов для настройки фреймворка. --- ## Шаг 1: Установка ROS2 Jazzy Для начала установите [ROS2 Jazzy](https://docs.ros.org/en/jazzy/Installation/Ubuntu-Install-Debs.html). Рекомендуется минимальная установка `ros-jazzy-ros-base`, а также пакет `ros-dev-tools`. --- ## Шаг 2: Проверка среды ROS2 Перед продолжением убедитесь, что среда ROS2 активирована. Для этого выполните: ```sh source /opt/ros/jazzy/setup.bash ``` --- ## Шаг 3: Если Вы этого не делали то сделайте ```sh sudo rosdep init rosdep update ``` --- ## Шаг 4: Установка фреймворка ```sh cd mkdir -p robossembler-ws/src && cd robossembler-ws/src git clone https://gitlab.com/robossembler/robossembler-ros2.git ``` Если вы решили использовать `vcstool`, нужные пакеты будут клонированы в тоже рабочее пространство, что и сам фреймворк. Команда для этого выглядит следующим образом: ```sh vcs import . < robossembler-ros2/repos/all-deps.repos ``` Установка зависимостей при помощи `rosdep` ```sh cd ~/robossembler-ws rosdep install --from-paths src -y --ignore-src --rosdistro ${ROS_DISTRO} ``` Сборка фреймворка при помощи `colcon` ```sh colcon build ``` --- ## Полная последовательность команд Ниже приведён полный набор команд для настройки фреймворка: ```sh cd mkdir -p robossembler-ws/src && cd robossembler-ws/src git clone https://gitlab.com/robossembler/robossembler-ros2.git # Или, если вы предпочитаете Radicle: git clone https://seed.robossembler.org/z46gtVRpXaXrGQM7Fxiqu7pLy7kip.git robossembler-ros2 rad clone rad:z46gtVRpXaXrGQM7Fxiqu7pLy7kip vcs import . < robossembler-ros2/repos/all-deps.repos cd .. rosdep install --from-paths src -y --ignore-src --rosdistro ${ROS_DISTRO} colcon build ``` --- ## Установка зависимостей среды выполнения (runtime) Python Для корректной работы с Python-зависимостями в проекте необходимо создать виртуальное окружение в директории с рабочим пространством (workspace). ### Создание виртуального окружения ```sh cd ~/robossembler-ws sudo apt update && sudo apt install -y python3-virtualenv virtualenv -p python3 .venv ``` После этого создается виртуальное окружение `.venv` в рабочем пространстве. Чтобы исключить его из сборки colcon, создадим файл `COLCON_IGNORE`: ```sh touch .venv/COLCON_IGNORE ``` ### Использование виртуального окружения Для установки пакетов в виртуальное окружение его необходимо активировать: ```sh source .venv/bin/activate ``` После активации можно устанавливать зависимости из файла `requirements.txt`: ```sh pip install -r src/robossembler-ros2/repos/requirements.txt ``` Чтобы обеспечить доступ к установленным в виртуальное окружение библиотекам, необходимо добавить путь к ним в переменную окружения `PYTHONPATH`: ```sh export PYTHONPATH=$PYTHONPATH:$HOME/robossembler-ws/.venv/lib/python3.12/site-packages ``` Для автоматического применения этого пути при каждом запуске терминала рекомендуется добавить эту строку в файл `~/.bashrc`: ```sh echo 'export PYTHONPATH=$PYTHONPATH:$HOME/robossembler-ws/.venv/lib/python3.12/site-packages' >> ~/.bashrc source ~/.bashrc ``` ### Отключение виртуального окружения перед сборкой При сборке проекта colcon использует глобальные Python-библиотеки, поэтому перед сборкой необходимо деактивировать виртуальное окружение: ```sh deactivate ```