ubuntu系统下使用ros控制UR真实机械臂,逻辑清晰,亲测有效

news2024/11/28 6:53:50

梳理一下在ubuntu系统使用ros控制UR真实机械臂的思路,逻辑清晰,亲测有效,并记录踩过的坑。从0开始,使用ros控制真实UR机械臂。
环境:ubuntu18.04
ros版本:melodic
机械臂型号:UR5e

一:安装ubuntu18.04系统+ROS melodic
这个教程太多了,也可以参考我前面写的CSDN,这篇博客假设你已经成功安装ubuntu18.04系统+ROS melodic,这里不再赘述。

二:下载Universal_Robots_ROS_Driver驱动
说明&写在前面:下载Universal_Robots_ROS_Driver驱动的过程中,已经下载了universal_robot的相关包,不要再单独重复下载,不然后期编译工作空间的时候会报错。
虽然不用单独下载universal_robot包,但还是贴一下该包的官方网址,里面主要包括urdf等描述文件和官方配置好的moveit
网址:https://github.com/ros-industrial/universal_robot

a:Universal_Robots_ROS_Driver驱动下载地址:
https://github.com/UniversalRobots/Universal_Robots_ROS_Driver
按照README里的步骤安装即可。
这里贴一下安装流程:

# source global ros
$ source /opt/ros/<your_ros_version>/setup.bash

# create a catkin workspace
$ mkdir -p catkin_ws/src && cd catkin_ws

# clone the driver
$ git clone https://github.com/UniversalRobots/Universal_Robots_ROS_Driver.git src/Universal_Robots_ROS_Driver

# clone the description. Currently, it is necessary to use the melodic-devel branch.
$ git clone -b melodic-devel https://github.com/ros-industrial/universal_robot.git src/universal_robot

# install dependencies
$ sudo apt update -qq
$ rosdep update
$ rosdep install --from-paths src --ignore-src -y

# build the workspace
$ catkin_make

# activate the workspace (ie: source it)
$ source devel/setup.bash

#号前面的是解释,终端执行$后的命令

驱动安装完成后,在工作空间的src文件夹下会有universal_robot和Universal_Robots_ROS_Driver两个文件,universal_robot就是前面提到的ur机械臂描述文件和moveit包,Universal_Robots_ROS_Driver就是ur机械臂和ros连接的驱动程序

三:在实体UR机器人安装URCap
URCap相当于UR机械臂可以被外部设备控制的一个插件,如果不安装的话,应该只能使用示教器控制机械臂。
a:下载URCap网址:
https://github.com/UniversalRobots/Universal_Robots_ROS_Driver/blob/master/ur_robot_driver/doc/install_urcap_cb3.md

b:根据文档提示For using the ur_robot_driver with a real robot you need to install the externalcontrol-x.x.x.urcap which can be found here,点击here
下载最新版本的URCap,我这里下载的是externalcontrol-1.0.5.urcap

c:将下载好的externalcontrol-1.0.5.urcap拷贝到U盘,然后U盘插入到UR的控制柜

d:打开UR5e机械臂,我们示教器面板的界面和官方文档不一样,我这里选择—右上角的三个横线—设置—系统----URCap—下面的+号—添加U盘的externalcontrol-1.0.5.urcap—打开该文件—重启机械臂

e:重启后,选择最上面的程序—URCap—External Control—我这里显示
Host IP:192.168.0.102
Custrom port:50002
依据此IP设置电脑ubuntu系统下的IP,端口为50002不用动。

四:UR机械臂和电脑IP设置
a:UR机械臂示教器IP设置
示教器右上角的三个横线—设置—系统—网络
网络:选择静态地址
ur机械臂IP地址 : 192.168.0.101
ur机械臂子网掩码: 255.255.255.0
默认网关:0.0.0.0
首选DNS服务器:0.0.0.0
备用DNS服务器:0.0.0.0
然后应用即可

b:电脑ubuntu系统下IP设置:
右上角设置–Network–Wired设置按钮—IPv4
手动设置manual
Address:192.168.0.102
Netmask: 255.255.255.0

此时UR机械臂和电脑IP均设置完毕,检测机械臂实体和电脑是否通讯:
打开终端,执行以下命令:

ping 192.168.0.101

这里ping的是机械臂IP,根据大家实际情况而定,若提示如下,则说明机械臂和电脑IP配置成功。
在这里插入图片描述
五:ubuntu系统下使用ros驱动UR5e机械臂
依旧参考官方文档:https://github.com/UniversalRobots/Universal_Robots_ROS_Driver
a:提取标定信息

$ roslaunch ur_calibration calibration_correction.launch robot_ip:=<robot_ip> target_filename:="${HOME}/my_robot_calibration.yaml"

这里的<robot_ip> 填写机械臂的IP

b:步骤一:终端1启动机器人驱动程序

cd UR_ws
source devel/setup.bash
roslaunch ur_robot_driver ur5e_bringup.launch robot_ip:=192.168.0.101

提示:
UR_ws是我的工作空间名字,根据你们情况修改,一般为catkin_ws;
ur5e是我们的机械臂型号,如果你的是ur3,则改为ur3;
robot_ip:=后面是自己的机械臂IP,根据实际情况修改。

c:步骤二:在机器人示教器上,点击【程序】,选择【URCaps】,然后【External Control】,teach-panent最下面三角号运行程序。之后可以看到运行驱动的终端显示:

在这里插入图片描述

d:步骤三:终端2启动moveit:

roslaunch ur5e_moveit_config moveit_planning_execution.launch limited:=true

e:步骤四:终端3启动rviz:

roslaunch ur5e_moveit_config moveit_rviz.launch config:=true

f:步骤五:rviz界面配置
Fixed Frame:base
Add:添加RobotModel,添加机械臂模型
ADD:添加MotionPlanning,添加规划界面,拖动小球可以plan机械臂的轨迹,excute机械臂执行运动。

切忌,实体机械臂执行运动时,手一定要放在示教器上的急停按钮,防止机械臂打到人或损坏机械臂。

在这里插入图片描述

完结~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/533200.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

当我与单链表分手后,在酒吧邂逅了双向循环链表.....

链表的种类有8种&#xff0c;但我们最常用的为无头单向非循环链表和带头双向循环链表。 带头双向循环链表 当带头双向循环链表只有哨兵位头的时候&#xff0c;双向链表的指向如下图。 head->pre和head->next都是指向自己&#xff0c;这个是有巨大优势的&#xff0c;代码…

CTFHub | 文件包含

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习&#xff0c;实训平台。提供优质的赛事及学习服务&#xff0c;拥有完善的题目环境及配套 writeup &#xff0c;降低 CTF 学习入门门槛&#xff0c;快速帮助选手成长&#xff0c;跟随主流比赛潮流。 0x01 题目描述…

一篇文章让你上手Canal数据同步神技~

视频教程传送门&#xff1a; Canal极简入门&#xff1a;一小时让你快速上手Canal数据同步神技~_哔哩哔哩_bilibiliCanal极简入门&#xff1a;一小时让你快速上手Canal数据同步神技~共计13条视频&#xff0c;包括&#xff1a;01.课前导学与前置知识点、02.Canal组件了解、03.My…

光纤收发器可以连接光模块吗?

随着科技的进步发展&#xff0c;城市信息化速度的加快&#xff0c;光通信产品在数据中心和安防监控等场景中的运用越来越广泛&#xff0c;而这之间的连接则需要光模块和光纤收发器来实现。很多用户对光模块和光纤收发器的使用有些疑虑&#xff0c;两者该如何连接&#xff1f;又…

2023年5月实时获取地图边界数据方法,省市区县街道多级联动【附实时geoJson数据下载】

首先&#xff0c;来看下效果图 在线体验地址&#xff1a;https://geojson.hxkj.vip&#xff0c;并提供实时geoJson数据文件下载 可下载的数据包含省级geojson行政边界数据、市级geojson行政边界数据、区/县级geojson行政边界数据、省市区县街道行政编码四级联动数据&#xff0…

第7章链接:重定位、可执行目标文件、加载可执行目标文件

文章目录 7.7 重定位7.7.1 重定位表目7.7.2 重定位符号引用重定位PC相关的引用重定位绝对引用 7.8 可执行目标文件7.9 加载可执行目标文件 7.7 重定位 一旦链接器完成了符号解析这一步&#xff0c;它就把代码中的每个符号引用和确定的一个符号定义&#xff08;也就是&#xff…

自学成材的黑客很多,但还是得掌握方法,给你黑客入门与进阶建议

建议一&#xff1a; 黑客七个等级&#xff08;仅供参考&#xff09; 黑客&#xff0c;对很多人来说充满诱惑力。很多人可以发现这门领域如同任何一门领域&#xff0c;越深入越敬畏&#xff0c;知识如海洋&#xff0c;黑客也存在一些等级&#xff0c;参考知道创宇 CEO ic&#…

如何把图片无损放大?教你图片怎么无损放大

随着数字图像技术的不断发展&#xff0c;图片无损放大成为了许多人关注的问题。当我们需要将小图片放大到更大的尺寸时&#xff0c;使用传统的放大方法可能会导致图片失真、模糊等质量问题。那么如何在保持高清晰度和精度的同时进行无损放大&#xff0c;一直是一个备受关注的课…

数字化时代,如何从战略设计到架构来打造智慧银行?

导语 | 随着人工智能、大数据、云计算等技术向纵深发展&#xff0c;数字化转型已成为银行发展的“必答题”。调整战略规划和架构重组、加大信息科技投入、推进科技人才队伍建设、持续推出数字化产品……近年来&#xff0c;深化数字化转型&#xff0c;以科技赋能金融服务已成为不…

【C++初阶】第十三篇:模板进阶(非类型模板参数、模板的特化以及模板的分离编译)

文章目录 一、非类型模板参数二、模板的特化2.1 概念2.2 函数模板特化2.3 类模板特化2.3.1 全特化2.3.2 偏特化/半特化 三、模板的分离编译3.1 什么是分离编译3.2 模板的分离编译3.3 解决方法 四、模板总结 一、非类型模板参数 模板参数类型可分为&#xff1a;类型形参和非类型…

通达信SCTR强势股选股公式,根据六个技术指标打分

SCTR指标(StockCharts Technical Rank)的思路来源于著名技术分析师约翰墨菲&#xff0c;该指标根据长、中、短三个周期的六个关键技术指标对股票进行打分&#xff0c;根据得分对一组股票进行排名&#xff0c;从而可以识别出强势股。 与其他技术指标一样&#xff0c;SCTR的设计…

中国社科院与美国杜兰大学能源管理硕士项目是你职场通关的密码吗

职场是一场没有硝烟的战争&#xff0c;想要在职场取得取胜&#xff0c;就要拥有超能力。从职场小白晋升到管理层一路走来诸多不易&#xff0c;想要坐稳或升得更高&#xff0c;要不断提升自己能力&#xff0c;要不间断地学习。社科院与美国杜兰大学能源管理硕士项目是你通关的密…

navicat连接oracle报错 ORA-28547

报错 原因 Navicat自带的oci.dll并不支持oracle11g 具体操作 1. 先用idea连接oracle&#xff0c;查看oracle版本 select * from v$version; 2. 去官网下载 Instant Client 地址&#xff1a; Oracle Instant Client Downloads 下载 选择对应的版本&#xff08;下载时&#x…

未注册老域名扫描软件-免费未注册老域名挖掘

未注册老域名挖掘教程 在SEO优化中&#xff0c;老域名的价值不言而喻&#xff0c;它们的搜索引擎权重、离线广告效果等都比新域名更高。然而&#xff0c;如何挖掘出高质量的老域名并进行注册并非易事。今天&#xff0c;我们将介绍一款名为“147SEO老域名挖掘软件”的工具&…

【SpringBoot】二:自动配置

文章目录 1.自动配置类2. Import3. AutoConfigurationImportSelector4. AutoConfiguration 1.自动配置类 Spring Boot的自动装配机制会试图根据你所添加的依赖来自动配置你的Spring应用程序。 例如&#xff0c;如果你添加了Mysql依赖&#xff0c;而且你没有手动配置任何DataS…

从今天起,不再为 API 烦恼 !

做技术管理的童鞋&#xff0c;往往会陷入这样一种困境&#xff1a;疲于奔命&#xff0c;到处救火填坑&#xff0c;沟通推进&#xff0c;却挤不出时间思考对团队和项目来说真正重要的事情。 你有没有经历过这样的场景&#xff1a; 1. 下属老是改了接口但不维护文档&#xff0c;屡…

初探高并发—ExecutorCompletionService

初探高并发—ExecutorCompletionService 为什么要引入高并发 众所周知&#xff0c;程序中的代码是从下往下顺序执行的&#xff0c;当我们需要在一个方法中同时执行多个耗时的任务时所消耗时间就会大于等于这些任务消耗的累加时间。那么有没有一种办法可以让这些耗时的任务同时…

微信小程序入门04-后端脚手架搭建

我们上一篇已经介绍了权限系统的库表搭建&#xff0c;光有表还是不够的&#xff0c;我们还需要有一个后台系统和数据库进行交互。搭建后台的时候既需要选择使用什么语言&#xff0c;也需要选择框架。 框架分为前端框架和后端框架。在第一篇微信开发者工具搭建的时候我们其实前…

面试官:什么是防抖和节流?如何实现?应用场景?

防抖 与 节流 大厂面试题分享 面试题库 前后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 web前端面试题库 VS java后端面试题库大全 前言 防抖和节流作为很多大厂的经典面试题&#xff0c;问倒了许多小伙伴&a…

【Python-ESL】python-esl安装

pip install python-esl 时会报错&#xff1a; “error: command ‘swig’ failed with exit status 1” 报错原因是 因为 swig 软件未正确安装&#xff0c;当然对swig的版本也是有要求的&#xff0c;目前测试以下版本没有问题&#xff1a; swig3.0.63 python-ESL1.4.18(app-…