实验室新搬来一个franka机器人,下面记录环境配置过程
硬件连接
将网线通过机器人控制器连接到电脑,并打开控制器电源开关,刚开始机器人黄灯闪烁,等待大概30s,转为黄灯常亮,代表启动成功,处于抱闸状态
环境:Ubuntu20.04
ROS Noetic版本
网络配置
franka机械臂默认ip为172.16.0.2,若直连机械臂的话则为172.16.0.1(机械臂基座上也有一个网口)
在电脑上先ping一下看看能不能通讯
ping成功后,用浏览器打开172.16.0.2,可以看到如下界面
第一次进去会要求输入账号密码,默认账号:franka,密码:franka123
这个界面相当于机器人的示教器,松闸按钮点击那个锁的图标就行
硬件环境配置
主要是参考以下官方文档进行配置
> franka FCI文档
安装环境:Ubuntu20.04版本
查看当前内核
uname -r
输出当前内核为linux-5.15.0-52-generic
实时内核安装
链接: [link](主要参考了这篇文章).
先去清华源上下载实时内核补丁,链接如下
实时内核补丁
记得两个地方需要下载,一个是内核文件,另一个是补丁文件,根据自己需要的版本下载
linux-5.15.76.tar.gz,patch-5.15.76-rt53.patch.gz
- 创建文件夹并将下载好的文件放入该文件夹内解压
mkdir franka_env
cd franka_env
cp /你下载的文件 /home/franka_env所在位置/franka_env
tar xvzf linux-5.15.76.tar.gz
gunzip patch-5.15.76-rt53.patch.gz
给内核打上补丁
cd linux-5.15.76
patch -p1 < ../patch-5.15.76-rt53.patch
剩下的步骤都在刚刚那篇文章里,先不写了,后期再补上
libfranka安装、franka_ros安装
- 安装
要注意的是,安装版本需要与你机械臂的固件版本适配,在示教界面里查看版本,实验室里的franka机械臂版本为4.1.1,因此选择0.8.0的libfranka和0.8.0的franka_ros
注意:你直接下载的libfranka里common文件夹下是空的,因此还需要到libfranka单独下载一个common文件夹并复制到你的libfranka中
查看兼容版本
libfranka下载
franka_ros下载
因为直接运行apt install安装libfranka和franka_ros会造成版本不适配,因此选择从源码编译
编译过程参考:
franka FCI文档
实时内核下显卡驱动、编译等安装教程
- 测试
cd到libfranka/build/examples目录下,用权限模式运行下列例程:
显示机器人当前状态到终端
sudo ./echo_robot_state
末端阻抗控制,可以灵活的根据外力变化移动(输入该命令后需要按下enter键确认)
sudo ./cartesian_impedance_control
用franka_ros控制机械臂时,要给终端权限
su
输入你的密码
运行几个例程看看,其中参数load_gripper可选可不选,默认为false
###启动关节阻抗控制,可以在rviz里实时的拖动机械臂末端移动
roslaunch franka_example_controllers joint_impedance_example_controller.launch robot_ip:=172.16.0.2
###启动末端阻抗控制,可以在rviz里实时的拖动机械臂末端移动
roslaunch franka_example_controllers cartesian_impedance_example_controller.launch robot_ip:=172.16.0.2
panda_moveit_config安装
panda_moveit_config直接去github上下载,编译过程参考
panda_moveit_config
启动
roslaunch panda_moveit_config franka_control.launch robot_ip:=172.16.0.2
没有报错的话就可以尽情的玩耍franka啦
踩坑:panda_moveit_config所使用的xarco文件并非franka_ros里的franka_description描述文件,而是franka_description这个包里的描述文件,两个完全不是一个东西阿!!!
###安装franka-description包
sudo apt-get install ros-noetic-franka-description
去下面的文件夹里,找到franka_description文章来源:https://www.toymoban.com/news/detail-799719.html
/opt/ros/noetic/share
复制,替换franka_ros下的franka_description
这是一个简单粗暴的方法,因为franka_ros下的franka_description与ros下的冲突,而bash文件则默认为franka_ros下的
因此,需要完全解决这个问题的话得一个个去找文件,毕竟我懒,能先用着就行文章来源地址https://www.toymoban.com/news/detail-799719.html
未完待续…
到了这里,关于从零开始配置franka机器人,让你的franka动起来的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!