需要的配置

1.一台安装了ubuntu 16.04 系统的笔记本电脑
2.Franka Emika Panda 机械臂
3.Franka Emika Panda 机械臂环境配置
机械臂环境配置请看上一篇博客:Franka Emika Panda 机械臂环境配置

如果这些都准备好了,那就进行下一步吧!
机械臂的环境是配置好了,但是我们怎么能在rviz里看到franka机械臂的模型呢?

franka仿真

panda_moveit_config下载及编译

在配置好环境之后,是不是能够在rviz规划机械臂呢?
尝试在终端输入命令:roslaunch panda_moveit_config demo.launch rviz_tutorial:=true
在看到tab键能够补全panda_moveit_config时,还是挺高兴的,没想到报出了很多错误。
经过一番研究,这里的panda_moveit_config是在/opt/ros/kinetic/share/panda_moveit_config 路径下的包,可能是之前下载机器人模型的遗留。
后来找了教程来看,决定在home目录重新编译moveit的包。
首先,先把ros软件包更新一下。

rosdep update
sudo apt-get update
sudo apt-get dist-upgrade

因为之前已经安装了catkin和moveit,这里就不需要再装了。如果没有安装:

sudo apt-get install ros-kinetic-catkin python-catkin-tools
sudo apt install ros-kinetic-moveit

回到home目录

mkdir -p ~/ws_moveit/src
cd ~/ws_moveit/src
git clone -b kinetic-devel https://github.com/ros-planning/moveit_tutorials.git
git clone -b kinetic-devel https://github.com/ros-planning/panda_moveit_config.git

这里git clone 可能会失败,建议换个好一点的网络,多git clone几次。

配置环境,设置自动source。

cd ~/ws_moveit/src
rosdep install -y --from-paths . --ignore-src --rosdistro kinetic
cd ~/ws_moveit
catkin config --extend /opt/ros/kinetic
catkin build
source ~/ws_moveit/devel/setup.bash
echo 'source ~/ws_moveit/devel/setup.bash' >> ~/.bashrc

在rodep的时候出现了Cannot locate rosdep definition for [moveit_visual_tools]
只需要sudo apt install ros-kinetic-moveit-visual-tools(缺什么安装什么)

rviz机械臂仿真

终于来到这一步了。启动rviz,让我们看看机械臂吧。

roslaunch panda_moveit_config demo.launch rviz_tutorial:=true

但是,万万没想到,rviz里啥也没有。

点击Add,从moveit_ros_visualization文件夹中,选择"Motion Planning“作为显示类型。按"Ok”。如图所示:


这里,我们发现规划轨迹的球呢?
所以还需要设置一下:
Global Option 里的Fixed Frame设置为/panda_link0
Motion Planning里的Robot Description设置为robot_description
Motion Planning里的Planning Scene Topic设置为/planning_scene
Planning Request里的Planning Group设置为panda_arm
Planned Path里的Trajectory Topic设置为/move_group/display_planned_path

这个时候,你就可以尽情拖动你的机械臂了!

如果你还想进一步设置的话,可以在Planned Path、Scene Robot 、Planning Request中设置碰撞显示等,这里就不赘述了。

配置静态IP

没有想到写了那么久才写到正文,真是令人头大。
要连接真实机器人,首先当然得配置好电脑得静态ip,当然一根优秀的网线也必不可少。
首先,编辑连接。

打开之后,点击有线连接,点击编辑,选择IPv4设置。接下来的设置和截图一样就行了。

因为机器人的ip是172.16.0.2,此处笔记本的ip设置为172.16.0.1即可。设置完了,别忘记点保存。
设置静态ip需要重启电脑,打开终端,输入reboot。重启电脑,打开终端,输入ifconfig,查看电脑ip是否已经更改为172.16.0.1。

连接机器人

franka机器人底座和控制柜都可以插网线,但是为了安全起见,还是要插在控制柜上。
插上电源,给机器人供电,打开控制柜的电源,机器人底座黄灯闪烁。这里因为之前做实验的时候没有拍照,就不附图了,大家可以在网上找一下图片,比如显扬科技的文章。
开始实验之前,别忘了把外部激活设备拿在手里,实验重要,安全更重要啊!

好了,闲话也不多说了。
打开火狐浏览器,网址上输入172.16.0.2,进入Desk界面,对机械臂解锁。这个时候底座的灯会变成蓝色。
打开终端,ping 172.16.0.2,能够通讯,说明笔记本已经和机械臂连接上了。
libfranka/build/examples里有一些编译好的示例,大家可以多多尝试一下。
这里作者君又发现了一个问题,那就是git clone 下载的franka_ros似乎不是kinetic版。作者不得不重新下载了kinetic版本的franka_ros并重新编译。这里还要提醒一下,编译完后,一定要在终端source一下,不然很可能像作者君一样,tab键只能补全franka_description
先进入libfranka/build/examples

./communication_test 172.16.0.2

这里是测试机器人与笔记本的数据传输情况,这里10000个数据作者君能接受9917个,还算不错。
这里更改了一下demo.launch的代码,在终端运行:

roslaunch panda_moveit_config demo.launch robot_ip:=172.16.0.2

可是,模型虽然可以plan和execute,但是机械臂并没有发生相应运动。所以还需要进一步的学习。
这里提供一个网友的控制机械臂的命令:

roslaunch panda_moveit_config panda_control_moveit_rviz.launch robot_ip:=172.16.0.2 load_gripper:=false

这里提供传送门:【ROS】ROS驱动UR和FRANKA机器人

Franka Emika Panda连接真实机械臂(一)相关推荐

  1. Franka Emika Panda连接真实机械臂(二)

    Franka Emika Panda连接真实机械臂(二) 虚拟环境下已经可以进行机械臂的拖动了,下一步就是PC连接机械臂,并通过plan控制机械臂运动. 前文[Franka Emika Panda连接 ...

  2. ur机械臂 + robotiq gripper + robotiq ft sensor + gazebo + 连接真实机械臂 + 网页控制

    ur机械臂 + robotiq gripper + robotiq ft sensor + gazebo + 连接真实机械臂 + 网页控制 仓库地址:[ur_ws](https://github.co ...

  3. Franka Emika Panda机械臂规划路径时,rviz中手爪显示碰撞

    [Franka Emika Panda连接真实机械臂(二)] 本文是对上文的一些补充. 前文中的franka_ros功能包和panda_moveit_config功能包是分别在不同的工作空间编译的,所 ...

  4. ros melodic控制真实机械臂之获取moveit规划插补点

    关于该点可查看前辈博客.本文对其中不一致的地方进行记录,但为了查阅方便,该文也记录了完整的操作步骤. 1.demo.launch文件中参数fake_execution的值改为false <arg ...

  5. 使用 MoveIt 控制自己的真实机械臂【2】——编写 action server 端代码

    上一篇文章中, 使用 MoveIt 控制自己的真实机械臂[1]--配置 action client 端,已经完成了 MoveIt 这边 action client 的基本配置,MoveIt 理论上可以 ...

  6. 通过ROS控制真实机械臂(15) --- 视觉抓取之手眼标定

    通过视觉传感器赋予机械臂"眼睛"的功能,配合ATI力和力矩传感器,就可以完成机械臂"手眼"结合的能力,完成视觉抓取过程.目前测试的视觉传感器为 ZED mini ...

  7. UR机械臂学习(5-1):驱动真实机械臂准备工作——示教器配置

    在使用Universal_Robots_ROS_Driver驱动真实机械臂前,需要在示教器上安装urcap 版本说明 使用的版本是 Ubuntu18.04 + ROS melodic + UR3(CB ...

  8. 机器人学习必看系列:如何使用moveit控制真实机械臂?

    大家好,我是你们可爱的小鱼.最近关于moveit相关的问题感觉非常多,毕竟机械臂+视觉的应用的确是非常的火爆,小鱼都想直接开课教机械臂运动规划相关的了. 有的同学问小鱼,怎么使用moveit控制真实机 ...

  9. UR机械臂学习(5-2):使用Universal_Robots_ROS_Driver驱动真实机械臂

    使用的版本是 Ubuntu18.04 + ROS melodic + UR3(CB3.12) 因为后续需要使用手控器,手控器的驱动需要在Ubuntu18.04下才可以使用. 这篇文章是电脑上的设置,关 ...

最新文章

  1. 青少年编程竞赛交流群周报(第040周)
  2. 男生和女生的差别(转载)
  3. “ yield”关键字有什么作用?
  4. 谭浩强C程序设计的课后习题答案
  5. 这场戏里,到底是谁脏了?
  6. 状态压缩 之 UVA 10944 - Nuts for nuts..
  7. DevOps 在移动应用程序开发中扮演什么角色?
  8. Array.prototype.slice.call
  9. 过完年进入BAT 需要做哪些准备
  10. 让Terminal显示git分支
  11. java string 栈_Java堆和栈的区别(String类)
  12. 一个特殊的事件绑定程序(通用于各种浏览器)
  13. [Java] 蓝桥杯ADV-102 算法提高 单词个数统计
  14. 如何用一台计算机控制多台计算机,怎么用一套鼠标键盘操作两台或多台电脑?...
  15. 软件测试常考面试题-软件测试面试宝典(一篇足矣)
  16. 测试技术-兼容性测试
  17. 浅谈 BOM、EBOM、MBOM
  18. 9.0系统XPOSED框架安装经验
  19. 微信小助手:专为mac微信3.1.0发行!支持发朋友圈!支持僵尸粉清理
  20. js页面指定div刷新(局部刷新)

热门文章

  1. DJL-Java开发者动手学深度学习之线性回归
  2. Google chrome谷歌浏览器,打开后是百度搜索或其他搜索怎么办?
  3. Linux系统中的管道通信
  4. Qt QSqlQueryModel详解
  5. Java Integer值范围问题
  6. CrowdHuman数据集转成VOC格式并训练模型
  7. Java-8-Collectors类
  8. 服务器omv系统,开源NAS系统OpenMediaVault安装与体验
  9. Java工程师的工资待遇如何?
  10. 全面解析大数定律:大数定律实现超额增长!