Franka 在Linux上安装
本章介绍如何安装libfranka
和franka_ros
(作为二进制包或从源代码构建),以及如何安装实时 Linux 内核。仅当您想使用ROSfranka_ros
控制机器人时才需要。
虽然libfranka
软件包franka_ros
可以在不同的 Linux 发行版上运行,但目前官方仅支持:
-
Ubuntu 18.04 LTS Bionic Beaver和 ROS Melodic Morenia(至少需要
libfranka
0.6.0) -
Ubuntu 20.04 LTS Focal Fossa和 ROS Noetic Ninjemys(至少需要
libfranka
0.8.0)
以下说明以 Ubuntu 20.04 LTS 系统和 ROS Noetic Ninjemys为例。它们仅适用于受支持的环境。
具体来说:
操作系统支持:
libfranka支持 Ubuntu 18.04、20.04 和 22.04 LTS 版本。
编译和安装:
libfranka可以通过标准的CMake构建过程在Ubuntu 22.04上进行编译和安装。
官方提供了详细的安装文档,包括Ubuntu 22.04的安装步骤。
兼容性测试:
Franka Emika团队定期在Ubuntu 22.04环境下测试libfranka的兼容性和功能,确保其能够在该操作系统上正常工作。
第三方集成:
许多基于Ubuntu 22.04的第三方机器人软件和框架,如ROS 2 Humble,都与libfranka兼容。
我们不再为 Ubuntu 16.04 LTS Xenial Xerus和 ROS Kinetic Kame提供支持,因为它们的使用寿命已到终点。
libfranka
和的二进制包franka_ros
可从 ROS 存储库获取。设置 ROS Noetic后,执行:
sudo apt install ros-noetic-libfranka ros-noetic-franka-ros
从源代码构建
从源代码构建之前,请卸载现有安装libfranka
以 franka_ros
避免冲突:
sudo apt remove "*libfranka*"
构建 libfranka
要构建libfranka
,请从 Ubuntu 的包管理器安装以下依赖项:
sudo apt install build-essential cmake git libpoco-dev libeigen3-dev
然后,通过从GitHub克隆下载libfranka源代码:
对于 Panda 你需要克隆:
git clone --recursive https://github.com/frankaemika/libfranka # only for panda
cd libfranka
编译过程中遇到问题:
cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF .. -- The CXX compiler identification is GNU 9.4.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found Eigen3: /usr/include/eigen3 CMake Error at CMakeLists.txt:42 (find_package): By not providing "Findpinocchio.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "pinocchio", but CMake did not find one. Could not find a package configuration file provided by "pinocchio" with any of the following names: pinocchioConfig.cmake pinocchio-config.cmake Add the installation prefix of "pinocchio" to CMAKE_PREFIX_PATH or set "pinocchio_DIR" to a directory containing one of the above files. If "pinocchio" provides a separate development package or SDK, be sure it has been installed.
执行以下命令:
sudo apt-get install ros-$ROS_DISTRO-pinocchio
sudo apt-get install clang-format
sudo apt-get install clang-tidy
在源目录中,创建一个构建目录并运行 CMake:
mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF .. cmake --build .
可选地(但建议),libfranka
可以使用以下命令在同一目录中构建 Debian 包:
cpack -G DEB
这将创建libfranka-<version>-<architecture>.deb。然后可以使用以下命令安装此包:
sudo dpkg -i libfranka*.deb
构建 ROS 包
设置 ROS Noetic后,在您选择的目录中创建 Catkin 工作区:
cd /path/to/desired/folder mkdir -p catkin_ws/src cd catkin_ws source /opt/ros/noetic/setup.sh catkin_init_workspace src
franka_ros
然后从GitHub克隆存储库:\
git clone --recursive https://github.com/frankaemika/franka_ros src/franka_ros
默认情况下,这将检出 的最新版本franka_ros
。如果您想要构建 的特定版本 franka_ros
,请检出相应的 Git 标签:
git checkout <version>
安装任何缺少的依赖项并构建软件包:
rosdep install --from-paths src --ignore-src --rosdistro noetic -y --skip-keys libfranka catkin_make -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=/path/to/libfranka/build source devel/setup.sh