124 lines
4.7 KiB
Markdown
124 lines
4.7 KiB
Markdown
# Инструкция по установке фреймворка
|
||
|
||
**Важно!** Совместимо только с операционной системой 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
|
||
```
|