Franka Emika Panda ROS-Melodic Linux 实时内核5.4.19 快速安装

目录

1.声明

2. 官方安装方法 Franka FCI (内核下载及编译较慢,需要大约两三小时)

3.实时内核5.4.19 及机械臂ROS包快速安装步骤


1.声明:

本文为Franka emika panda 的ROS控制安装记录

使用的版本是:Ubuntu18.04 5.4.0,ROS-Melodic

本次安装的实时内核:5.4.19-rt10

ROS-Melodic安装教程:cn/melodic/Installation - ROS Wiki

实时内核5.4.19 快速安装,请跳过官方安装方法,看后文

2. 官方安装方法 Franka FCI (内核下载及编译较慢,需要大约两三小时):

在 Linux 上安装 — Franka Control Interface (FCI) 文档

franka_ros包 — Franka Control Interface (FCI) 文档

设置内核必要步骤(不熟悉linux的建议安装官方教程一步步安装):

#构建libfranka

sudo apt install build-essential cmake git libpoco-dev libeigen3-dev

git clone --recursive https://github.com/frankaemika/libfranka



#自己指定的工作空间目录下
git clone --recursive https://github.com/frankaemika/franka_ros src/franka_ros



#安装任何缺少的依赖项并构建包:(注意:以下命令中注意将/path/to/libfranka/build替换成自己的libfranka build路径。)

rosdep install --from-paths src --ignore-src --rosdistro melodic -y --skip-keys libfranka
catkin_make -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=/path/to/libfranka/build


#设置实时内核

sudo apt-get install build-essential bc curl ca-certificates gnupg2 libssl-dev lsb-release libelf-dev bison flex dwarves zstd libncurses-dev


#对于使用内核版本 5.4.19 测试通过的 Ubuntu 18.04(作者内核为5.4.0,安装此内核实测也可使用)
curl -SLO https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.4.19.tar.xz
curl -SLO https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.4.19.tar.sign
curl -SLO https://www.kernel.org/pub/linux/kernel/projects/rt/5.4/older/patch-5.4.19-rt10.patch.xz
curl -SLO https://www.kernel.org/pub/linux/kernel/projects/rt/5.4/older/patch-5.4.19-rt10.patch.sign


#编译内核均
tar xf linux-*.tar
cd linux-*/
patch -p1 < ../patch-*.patch

cp -v /boot/config-$(uname -r) .config

make olddefconfig
make menuconfig

#第二个命令会打开一个终端界面,可以在其中配置抢占模型。使用箭头键导航到 General Setup > #Preemption Model 并选择 Fully Preemptible Kernel (Real-Time) 。

#之后导航到 Cryptographic API > Certificates for signature checking (在列表的最底部)> #Provide system-wide ring of trusted keys > Additional X.509 keys for default system #keyring

#从提示符中移除 “debian/canonical-certs.pem”,然后按OK。将此配置保存到 .config 并退出 TUI。

#编译时间大约2小时

make -j$(nproc) deb-pkg

sudo dpkg -i ../linux-headers-*.deb ../linux-image-*.deb

#重启
uname -a

#它应该包含选择的 PREEMPT RT 字符串和版本号。此外, /sys/kernel/realtime 应该存在,用编辑器打开并包含数字 1。




#允许用户为其进程设置实时权限
sudo addgroup realtime
sudo usermod -a -G realtime $(whoami)


#将以下限制添加到在 /etc/security/limits.conf 文件中的最下方

@realtime soft rtprio 99
@realtime soft priority 99
@realtime soft memlock 102400
@realtime hard rtprio 99
@realtime hard priority 99
@realtime hard memlock 102400

3.实时内核5.4.19 及机械臂ROS包快速安装步骤:

文件过大,为上传资源,分为了上下两部:

下载压缩包并解压:Linux实时内核5.4.19及FrankaEmikaPandaROS包(上)-Linux文档类资源-CSDN文库

Linux实时内核5.4.19及FrankaEmikaPandaROS包(下)-Linux文档类资源-CSDN文库

上下解压后文件应如图:

#安装依赖:
sudo apt install build-essential cmake git libpoco-dev libeigen3-dev

rosdep install --from-paths src --ignore-src --rosdistro melodic -y --skip-keys libfranka
catkin_make -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=/path/to/libfranka/build

sudo apt-get install build-essential bc curl ca-certificates gnupg2 libssl-dev lsb-release libelf-dev bison flex dwarves zstd libncurses-dev

#压缩文件目录下

xz -d *.xz

tar xf linux-*.tar
cd linux-*/
patch -p1 < ../patch-*.patch

cp -v /boot/config-$(uname -r) .config

make olddefconfig
make menuconfig

#第二个命令会打开一个终端界面,可以在其中配置抢占模型。使用箭头键导航到 General Setup > #Preemption Model 并选择 Fully Preemptible Kernel (Real-Time) 。

#之后导航到 Cryptographic API > Certificates for signature checking (在列表的最底部)> #Provide system-wide ring of trusted keys > Additional X.509 keys for default system #keyring

#从提示符中移除 “debian/canonical-certs.pem”,然后按OK。将此配置保存到 .config 并退出 TUI。#我们建议将其他选项保留为默认值。


sudo dpkg -i ../linux-headers-*.deb ../linux-image-*.deb


#重启

#请查看 uname -a 命令的输出。它应该包含选择的 PREEMPT RT 字符串和版本号。此外, /#sys/kernel/realtime 应该存在,用编辑器打开并包含数字 1。


sudo addgroup realtime
sudo usermod -a -G realtime $(whoami)


@realtime soft rtprio 99
@realtime soft priority 99
@realtime soft memlock 102400
@realtime hard rtprio 99
@realtime hard priority 99
@realtime hard memlock 102400

ROS部分参考:

franka_ros包 — Franka Control Interface (FCI) 文档

上述资料包已经包括了 franka_ros,libfranka,panda_moveit_config

复制即可,无需重复git clone

 使用Moveit控制实际机械臂及常见问题后续更新

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值