• Ros驱动Ur5e过程 | 手把手教程 | Ros驱动真实机器人Ur5e | Ros与Ur5e建立通讯 | Ubuntu20.04驱动Ur5e机器人


    目录

    环境

    Ubuntu20.04 + Ur5e + 一根网线 + 一个U盘

    安装ROS

    省略,网络搜索即可

    安装moveit

    sudo apt install ros-noetic-moveit
    
    • 1

    电脑端UR机器人驱动安装

    其实当前UR机器人的驱动不止一种,所以搜一下可以看到好几种,但是现在Universal_Robots_ROS_Driver 是比较推荐的。

    • 这里需要在工作空间内准备三个文件

      • 官方驱动Universal_Robots_ROS_Driver 用于机器人控制的驱动文件

        https://github.com/UniversalRobots/Universal_Robots_ROS_Driver

      • fmauch_universal_robot里全都是xx_moveit_config格式的文件,都是MoveIt的配置文件,即Setup Assist生成的现成文件,我们也就不需要额外进行Setup Assist操作了。

      • ur_msgs是一些机器人通信使用的msg和srv文件格式

    cd  工作空间
    
    git clone https://github.com/UniversalRobots/Universal_Robots_ROS_Driver.git src/Universal_Robots_ROS_Driver
    git clone -b calibration_devel https://github.com/fmauch/universal_robot.git src/fmauch_universal_robot
    git clone https://github.com/ros-industrial/ur_msgs.git src/ur_msgs
    
    #安装依赖
    rosdep install --from-paths src --ignore-src -y
    
    #回到工作空间后编译
    catkin_make
    source devel/setup.bash
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    UR实体机器人-软件安装与通信建立

    urcap软件安装

    这里需要安装一个externalcontrol-1.0.5.urcap软件

    • 上面下载的Universal_Robots_ROS_Driver里就有,打开Universal_Robots_ROS_Driver/ur_robot_driver/resources文件夹里就有,拷贝至U盘中,注意U盘是FAT格式的
      在这里插入图片描述

    • 把U盘插到UR机器人控制面板上(我格式化u盘插到控制面板的时候不知道为啥还是提示格式不支持,用控制面板格式化后再在电脑上格式化了一下才行。而且UR控制面板格式化后Ubuntu突然就读不出来了,换到windows就能读出来)

    • 右上角【settings】-【System】-【URCaps】

      • 单机底部的【+】,选择U盘里的externalcontrol-1.0.5.urcap 文件,单机打开,最后选择右下角的【Restart】重启
    • 重启后,应该就能看到【Installation】和【Program】里都多了【URCaps】的选项

    • 点击【Program】-【URCaps】,点一下【External Control】,会创建一个空程序,将External Control插入到程序树中标题栏【Save】-【Save as】,我存为了external_control.urp

    电脑端ip问题

    这里我们首先需要用一根网线将电脑和ur5e控制箱直连,随后将电脑的ip填到ur5e功能面板中。

    这个地方我卡了很久,也验证了计网的知识我还在入门阶段。

    • 如何查看我们电脑的ip地址呢?

    • 电脑上直接在终端输入ifconfig,理论上来讲第一个选项比如eno1 后面跟的就是ip地址。(但是我这里没有,只在第三个选项wlp4s0后面跟了inet,我就直接把他填到了host’s IP上(第一天还是能联通的,第二天完全就ping不通了);如果你的ip正常(例如192开头)那就直接填写到ur5e控制面板好了-跳到下方【不需指定临时ip】就可以了)

    需要指定临时ip的情况

    在这里插入图片描述

    • 在此情况下,输入以下来指定电脑端的临时IP地址。

      sudo ifconfig eno1 192.168.56.1 netmask 255.255.255.0
      
      • 1

    在这里插入图片描述

    • 这时候我们再输入ifconfig检查一下,已经有了ip地址
      在这里插入图片描述

    不需指定临时ip

    • 然后在【Installation】-【URCaps】-【External Control】,然后设置你PC电脑的IP地址(上面得到的IP),端口为50002不用动。

    在这里插入图片描述

    UR机器人IP

    给UR机器人配置静态IP,使得电脑可以连接到UR机器人

    • 点击【Setting】-【System】-【Network】-【Static Address】,【IP address】前三位与电脑地址一样,【Subnet mask】填255.255.255.0。
      在这里插入图片描述

    • 检查:我们在电脑上直接输入ping UR机器人的ip,如果正常响应,那就说明联通了。

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-geFF0WxJ-1669341632040)(image/image_E2AgOMWv35.png)]

    机器人的启动

    左下角电源按钮,把机器人启动

    驱动UR机器人

    这一步就是跑程序的过程了,先记录一下我的ip

    电脑-ip : 192.168.56.1

    ur5e-ip :192.168.56.101

    • 官方教程

    UniversalRobots/Universal_Robots_ROS_Driver: Universal Robots ROS driver supporting CB3 and e-Series (github.com)

    • 每台UR机器人在工厂内都进行了正逆运动学矫正。虽然这个过程非必要,但是官方非常推荐先提取机器人的校准信息,可以保证运动精度。直接在命令行中输入
    $ roslaunch ur_calibration calibration_correction.launch \
      robot_ip:= target_filename:="${HOME}/my_robot_calibration.yaml"
      
    
    #==========我的,(我直接把我的地址改为了绝对地址)
    $ roslaunch ur_calibration calibration_correction.launch robot_ip:=192.168.56.101 target_filename:="/home/zhangshidi/GitHub/Ros_control/src/fmauch_universal_robot/ur_description/config/ur5e_calibration.yaml"
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    注意,其中的robot_ip换成你自己的机器人ip,而target_filename是生成的文件地址,自己指定就好,可以像我一样指定绝对地址

    • 启动驱动程序(直接)
    $ roslaunch ur_robot_driver _bringup.launch robot_ip:=192.168.56.101
    
    #========我的
    $ roslaunch ur_robot_driver ur5e_bringup.launch robot_ip:=192.168.56.101
    
    • 1
    • 2
    • 3
    • 4
    • 在Ur5e面板上,点击【Run】,选择【加载文件】,选择上面自己保存的external_control.urp文件,底栏是有一个【播放按钮】的,按下就可以开始运行程序

    • 打开新终端,启动moveit

    roslaunch ur5e_moveit_config ur5e_moveit_planning_execution.launch limited:=true
    
    
    • 1
    • 2
    • 打开新终端,启动rviz
    roslaunch ur5e_moveit_config moveit_rviz.launch config:=true
    
    
    • 1
    • 2
    • 通过【Add】添加【MotionPlanning】,再在MotionPlanning的Planning Request中选择Planning Group 为mainpulator,就可以看到规划球出来了
      在这里插入图片描述

    • 然后把球拖到一个位置,看能不能plan,plan完execute就可以看到机械臂跟着动了

    任务完成!

    最后放下参考,前前后后先后看了数十篇博客,我觉得以下博客写的还是不错并且有帮助的。

    [ubuntu20.04安装ros-noetic,moveit,ur机器人驱动...指南!\_Dawn\_yc的博客-CSDN博客](https://blog.csdn.net/Dawn_yc/article/details/114791755 "ubuntu20.04安装ros-noetic,moveit,ur机器人驱动...指南!_Dawn_yc的博客-CSDN博客")
    
    [ROS noetic与UR3真实机械臂通信\_junkie\_luo的博客-CSDN博客\_机械臂通信](https://blog.csdn.net/luojunqi2017/article/details/119272683 "ROS noetic与UR3真实机械臂通信_junkie_luo的博客-CSDN博客_机械臂通信")
    
    [如何使用ROS控制真实UR5机器人\_梧桐w的博客-CSDN博客\_ros控制ur5](https://blog.csdn.net/weixin_44715231/article/details/114796006 "如何使用ROS控制真实UR5机器人_梧桐w的博客-CSDN博客_ros控制ur5")
    
    [https://blog.csdn.net/chch2010523/article/details/124552586](https://blog.csdn.net/chch2010523/article/details/124552586 "https://blog.csdn.net/chch2010523/article/details/124552586")
    
    [https://blog.csdn.net/zxxxiazai/article/details/103568577](https://blog.csdn.net/zxxxiazai/article/details/103568577 "https://blog.csdn.net/zxxxiazai/article/details/103568577")
    
    [https://blog.csdn.net/santututu39/article/details/123719808](https://blog.csdn.net/santututu39/article/details/123719808 "https://blog.csdn.net/santututu39/article/details/123719808")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
  • 相关阅读:
    马氏距离原理介绍
    CAD图纸如何快速查看?CAD图纸如何快速查找?实用技巧分享!
    Android开发:Camera2+MediaRecorder录制视频后上传到阿里云VOD
    EVPN基本原理
    【C++】模板初阶
    mac打开exe文件的三大方法 mac怎么运行exe文件 mac打开exe游戏 macbookpro打开exe
    linux入门---用匿名管道实现一个功能
    用Python编写自己的微型Redis
    SpringIOC之Lifecycle 接口
    scp 跨服务器传输命令,把一个服务器上的文件复制传到当前服务器目录下
  • 原文地址:https://blog.csdn.net/dolpin_ink/article/details/128032809