Установка
Список зависимостей проекта
- Любой дистрибутив GNU/Linux на базе, например, Ubuntu 16.04 (Xenial) или Debian 8, 9.
- ROS Kinetic Kame
- OROCOS 2.9, рекомендуется модифицированная версия отсюда
- Вспомогательные пакеты OROCOS:
- rtt-ros-integration 2.9, рекомендуется модифицированная версия отсюда
- kdl_msgs, rtt_kdl_msgs
- rttlua_completion, рекомендуется модифицированная версия отсюда
rtt_tf2_msgs,rtt_control_msgsсгенерировать самостоятельно используяrtt_roscom
- Rigid Body Bynamics Library
- FlexBe
В https://gitlab.com/sweetiebot/compile_orocos находится инструкция по самостоятельной сборке OROCOS и его вспомогательных пакетов. Там же описан процесс кросскомпиляции для бортового компьютера Свити.
Инструкция для разработчиков по сборке и установке проекта
Данная инструкция описывает процесс развертывания рабочего места разработчика. Она позволяет собрать часть управляющего ПО предназначенного для работы на машине оператора. Этот же набор пакетов может быть использован для моделирования робота. Инструкция не содержит подробную информацию о сборке части системы исполняемой на роботе и о настройке его бортового компьютера.
Системные требования и рекомендации: Любой дистрибутив GNU/Linux на базе Ubuntu 16.04 (Xenial). Например, Kubuntu 16.04. ROS Kinetic Kame
Как ставить.
-
Установить ROS Kinetic Kame (см. инструкцию в разделе "ROS Installation" на вики проекта: https://gitlab.com/sweetie-bot/sweetie_doc/wikis/ros-installation или (ещё лучше) на сайте ROS: http://wiki.ros.org/kinetic/Installation/Ubuntu). На десктопе:
sudo apt-get install ros-kinetic-desktop-fullНа роботе:sudo apt-get install ros-kinetic-robot -
Удалить все ros-kinetic-rtt-* (если стоят).
sudo apt remove 'ros-kinetic-rtt-*' -
Установить дополнительные пакеты командой
``` sudo apt-get install ros-kinetic-moveit ros-kinetic-sound-play ros-kinetic-trac-ik-lib ros-kinetic-octomap-msgs ros-kinetic-rosbridge-server ros-kinetic-leap-motion ros-kinetic-rospy-message-converter libalglib-dev lua-filesystem castxml gccxml libeditline-dev libeditline0 libgmp-dev libgmpxx4ldbl liblua5.1-0 liblua5.1-0-dev libncurses5-dev libomniorb4-1 libomniorb4-dev libomnithread3-dev libomnithread3c2 libreadline-dev libreadline6-dev libtinfo-dev libtool-bin omniidl omniorb omniorb-idl omniorb-nameserver ruby-dev ruby-facets ruby-hoe ruby-nokogiri ruby2.3-dev libxml-xpath-perl
1. Скачать кастомные пакеты с ftp://xq3.ru/ros
```
wget ftp://xq3.ru/ros/ros-kinetic-orocos-toolchain_2.9.0-1_amd64.deb
wget ftp://xq3.ru/ros/ros-kinetic-rtt-ros-integration_2.9.0-1_amd64.deb
Если хотите скомпилировать эти пакеты самостоятельно или собрать их для другого дистрибутива, то отрывки, похожие на инструкцию можно найти здесь: https://gitlab.com/sweetiebot/compile_orocos
- Установить их командой ``` sudo dpkg -i ros-kinetic-orocos-toolchain_2.9.0-1_amd64.deb sudo dpkg -i ros-kinetic-rtt-ros-integration_2.9.0-1_amd64.deb
1. Заблокировать обновления этих пакетов
```
sudo apt-mark hold ros-kinetic-rtt-ros-integration
sudo apt-mark hold ros-kinetic-orocos-toolchain
-
Скачать (клонировать) основной репозиторий с кодом sweetie_bot:
mkdir -p ~/ros/sw/src/ cd ~/ros/sw/src/ git clone -b devel --recursive git@gitlab.com:sweetie-bot/sweetie_bot.git -
Установить flexbe_behavior_engine и generic_flexbe_states (см. инструкцию на сайте)
git clone https://github.com/team-vigir/flexbe_behavior_engine.git git clone https://github.com/FlexBE/generic_flexbe_states.git -
Перейти в директорию воркспейса
cd ~/ros/sw/ -
Собрать проект командой
catkin_make
Примечание 1: репозиторий code — устаревший. По некоторым причинам, он ещё есть и иногда обновляется, но если вы не знаете, зачем он, то не используйте его.
Примечание 2: Опционально для использования сторонних библиотек, компилирующихся системой catkin, может быть удобным создание специальной рабочей среды для них, которая должна быть "наслоена" (overlay) на основную. Для этого нужно выполнить следующую последовательность шагов:
mkdir -p ~/ros/overlays/flexbe/src
source /opt/ros/kinetic/setup.bash
cd ~/ros/overlays/flexbe/src
catkin_init_workspace
cd ~/ros/overlays/flexbe/
catkin_make
source devel/setup.bash
wstool init src
Для использования этого оверлея в рабочей среде catkin, создавать её нужно, используя
source ~/ros/overlays/flexbe/devel/setup.bash
вместо
source /opt/ros/kinetic/setup.bash
Далее для добавления нужного пакета используются из директории src команды вида:
wstool set myrepo --git git://github.com/<полный путь>/myrepo.git
wstool update
cd ..
catkin_make
Пример установки generic_flexbe_states и flexbe_behavior_engine
wstool set generic_flexbe_states --git https://github.com/FlexBE/generic_flexbe_states.git
wstool set flexbe_behavior_engine --git https://github.com/team-vigir/flexbe_behavior_engine.git
wstool update
cd ..
catkin_make