ubuntu20.04安装ros并配置相关环境以及驱动AUBO i5机械臂

ubuntu20.04安装ros并配置相关环境以及驱动AUBO i5机械臂

  • 安装ros
  • 安装rosdep(小鱼的rosdepc,又快又好用)
  • 环境配置
  • 下载并编译aubo ros
  • lib库环境变量配置
  • aubo gazebo
  • aubo rviz
  • 驱动真实机械臂

安装ros

搜索鱼香ros网站https://fishros.com/,根据一键安装ros里提供的指令

wget http://fishros.com/install -O fishros && . fishros

按着运行的提示,选择1noetic(ros)继续安装,具体选择看运行的提示即可。

安装rosdep(小鱼的rosdepc,又快又好用)

根据一键安装ros里提供的指令

wget http://fishros.com/install -O fishros && . fishros

在这里插入图片描述
按着运行提示选择3安装即可。

环境配置

1.industrial依赖安装,终端输入如下指令。

sudo apt install ros-noetic-industrial-*

安装这个依赖可能会遇到如下报错:
在这里插入图片描述
解决方案:

#使用这个指令:sudo dpkg -i --force-overwrite <filename>
$ sudo dpkg -i --force-overwrite var/cache/apt/archives/python3-catkin-pkg-modules_0.4.24-1_all.deb
#然后继续输入修复依赖指令:
$ sudo apt-get -f install```提示:var/cache/apt/archives/python3-catkin-pkg-modules_0.4.24-1_all.deb为我自己的路径,你自己看自己sudo apt --fix-broken install后报错。

如果上面两条命令用完依然会出现同样的报错,如下:
在这里插入图片描述
上次是1.5.0版本报错,这次是1.0.0报错,同一类型错误,重新输入上面两条方案指令,即可解决!
解决完报错,再重新输入执行指令安装industrial依赖:
在这里插入图片描述

2.Gazebo、rviz等依赖安装,终端输入如下指令。

sudo apt install ros-noetic-gazebo-ros ros-noetic-gazebo-plugins ros-noetic-gazebo-ros-control ros-noetic-joint-state-controller ros-noetic-position-controllers ros-noetic-joint-trajectory-controller
sudo apt-get install ros-noetic-gazebo-ros-control 
sudo apt-get install ros-noetic-moveit-simple-controller-manager
sudo apt-get install ros-noetic-rviz-visual-tools
sudo apt-get install ros-noetic-moveit-visual-tools

3.修改系统eigen3软链接,在终端中输入如下指令。

sudo ln -sf /usr/include/eigen3/Eigen/ /usr/include/Eigen
sudo ln -sf /usr/include/eigen3/unsupported/ /usr/include/unsupported

4.安装libprotobuf9,在终端中输入如下指令

wget http://archive.ubuntu.com/ubuntu/pool/main/p/protobuf/libprotobuf9v5_2.6.1-1.3_amd64.deb
sudo dpkg -i libprotobuf9v5_2.6.1-1.3_amd64.deb

下载并编译aubo ros

1.新建名称为 aubo_ws 的工作空间,并在 src 目录下下载官方最新 noetic 版本源码。执行如下命令:

mkdir -p ~/aubo_ws/src
cd ~/aubo_ws/src/
git clone https://github.com/AuboRobot/aubo_robot.git -b Noetic

git clone命令执行不了,可直接去对应的官网下载aubo_robot的zip包然后放到src文件夹下,注意不是aubo_robot这个名的最好改一下。
2.通过rosdep安装源码依赖

rosdepc install -y --from-paths . --ignore-src --rosdistro noetic -r

出现rosdep update错误
在这里插入图片描述
这里运行后会有一条白色Error,无需处理,看到successfully即为成功。
解决方法:使用的鱼香ros下载配置ros的话可以改成rosdepc再运行,即输入指令

rosdepc update

结束后,再继续输入一开始的rosdepc安装指令安装源码依赖:
在这里插入图片描述
3.使用catkin工具配置工作空间并进行源码编译,在终端输入如下指令。

cd ~/aubo_ws
catkin_make

lib库环境变量配置

1.输入如下指令进入aubo sdk库的路径

cd ~/aubo_ws/
source devel/setup.bash
roscd aubo_driver/lib/lib64/

2.通过输入 pwd 命令打印当前文件夹绝对路径,示例路径如下(具体以实际打印为准):

pwd
//输出结果:/home/cxh/aubo_ws/src/aubo_robot/aubo_driver/lib/lib64

实际与你的路径不同之处在于cxh这个地方
这里是在1.的基础上使用pwd命令打印路径为下面4.作准备
3.执行如下命令新建 ldconfig 配置文件:

sudo gedit /etc/ld.so.conf.d/aubo_driver.conf

运行完后会打开一个新建的空文件(打开文件有点慢,稍微等一下,不要乱点)
4.将下列库的路径拷贝到文件中,保存后退出。注意以第二步中打印的实际路径为准。

/home/cxh/aubo_ws/src/aubo_robot/aubo_driver/lib/lib64
/home/cxh/aubo_ws/src/aubo_robot/aubo_driver/lib/lib64/aubocontroller
/home/cxh/aubo_ws/src/aubo_robot/aubo_driver/lib/lib64/config
/home/cxh/aubo_ws/src/aubo_robot/aubo_driver/lib/lib64/log4cplus

5.在终端输入如下指令使能新建的配置文件。

sudo ldconfig

aubo gazebo

cd ~/aubo_ws
source devel/setup.bash
roslaunch aubo_gazebo aubo_i5_gazebo_control.launch

运行报错
解决办法:
1、修改aubo_i5_gazebo_control.launch文件
找到aubo_ws文件夹,在该文件夹下右键打开终端,输入命令

code .

会通过vscode打开aubo_ws代码文件,找到要修改的代码文件,如下是修改过的:
在这里插入图片描述
主要修改了两个地方:
(1)

<param name="robot_description" command="$(find xacro)/xacro '$(find aubo_gazebo)/urdf/aubo_i5.xacro'"/>

直接将这句话复制粘贴到对应代码文件中的位置,原先这句话是被注释的,而且没有command内容,按着现在这里修改好的这句的内容直接粘贴过去即可完成修改
(2)

<!-- 2.Run a python script to the send a service call to gazebo_ros to spawn a URDF robot -->
<node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"
args="-urdf -model arm -param robot_description -model robot -x 0 -y 0 -z 0.001"/>

同样的将修改好的这块内容复制粘贴到代码文件对应位置覆盖即可!
修改完成后记得保存!!!然后再用下面两条命令在终端aubo_ws下更新+执行gazabo

source devel/setup.bash
roslaunch aubo_gazebo aubo_i5_gazebo_control.launch

即可弹出aubo_i5的gazabo显示:
在这里插入图片描述

aubo rviz

cd ~/aubo_ws
source devel/setup.bash
roslaunch aubo_i5_moveit_config moveit_planning_execution.launch robot_ip:=127.0.0.1

运行完,即可弹出aubo_i5的rviz显示:
在这里插入图片描述

驱动真实机械臂

我们使用的网线进行控制实际的机械臂运行
方法一:电脑主机与机械臂两根网线分别连接路由器
查看电脑ip

//打开终端输入:
ifconfig
//输出示例:ip 192.168.31.84 子网掩码:255.255.255.255(24)  网关:192.168.31.255

查看机械臂ip
打开示例器后依次点击->设置->系统->网络->ifconfig
得到机械臂ip 192.168.31.83
最后在电脑终端输入:

ping 192.168.31.83

验证是否连接成功
操作机械臂
配成成功后运行:

roslaunch aubo_i5_moveit_config moveit_planning_execution.launch robot_ip:=192.168.31.83

然后就可以控制真实的机械臂进行运动。
方法二:电脑主机用网线连接机械臂
查看电脑ip

//打开终端输入:
ifconfig
//输出示例:ip 192.168.31.84 子网掩码:255.255.255.255(24)  网关:192.168.31.255

设置机械臂ip
打开示例器后依次点击->设置->系统->网络
设置机械臂ip地址 192.168.31.**(**不能与电脑相同,0-255取值)
设置机械臂网关与电脑相同
最后在电脑终端输入:

ping 192.168.31.**

验证是否连接成功
操作机械臂
配置成功后运行:

roslaunch aubo_i5_moveit_config moveit_planning_execution.launch robot_ip:=192.168.31.**
//**为上面设置值

然后就可以控制真实的机械臂进行运动。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

看一看阿里云,如何把抽象云概念,用可视化表达出来。

云数据库RDS_关系型数据库 云数据库RDS_关系型数据库 专有宿主机 云数据库RDS_关系型数据库_MySQL源码优化版 内容协作平台CCP-企业网盘协同办公-文件实时共享

(五)关系数据库标准语言SQL

注&#xff1a;课堂讲义使用的数据库 5.1利用SQL语言建立数据库 5.1.1 create Database 5.1.2 create schema...authorization... 创建数据库和创建模式的区别&#xff1a; 数据库是架构的集合&#xff0c;架构是表的集合。但在MySQL中&#xff0c;他们使用的方式是相同的。 …

图论练习6

[NOIP2013]车站分级 Here 解题思路 由于起始点之间所选的站号&#xff0c;相互之间一定满足那么对于起始点间未选择的站号&#xff0c;一定满足选择的站号考虑用边来维护信息&#xff0c;表示的级别大于按题意&#xff0c;则车站会被分为几个联通块&#xff0c;且保证块内无环…

社区店选址案例研究:成功与失败的经验教训

大家好&#xff0c;我是一名鲜奶吧5年的创业者&#xff0c;在社区店经营方面有着丰富的经验。 今天&#xff0c;我将分享一些关于社区店选址的成功与失败案例&#xff0c;希望能给想开实体店或创业的朋友们提供有价值的干货信息。 首先&#xff0c;让我们来看看成功的社区店选…

C++程序设计-第四/五章 函数和类和对象【期末复习|考研复习】

前言 总结整理不易&#xff0c;希望大家点赞收藏。 给大家整理了一下C程序设计中的重点概念&#xff0c;以供大家期末复习和考研复习的时候使用。 文章目录 前言第四章 函数 函数和类和对象4.1 说明带参数的宏与内联函数有什么不同4.2 全局变量和局部变量有什么区别是怎么实现的…

聊一聊ThreadLocal的原理?

1.ThreadLocal创建方式 ThreadLocal<String> threadlocal1 new ThreadLocal(); ThreadLocal<String> threadlocal2 new ThreadLocal(); ThreadLocal<String> threadlocal3 new ThreadLocal(); 2.首先介绍一下&#xff0c;ThreadLocal的原理&#xff1a; 如…

腾讯云拼了,腾讯云99元一年服务器购买链接发布

腾讯云服务器99元一年是真的吗&#xff1f;真的&#xff0c;99元优惠购买入口 txybk.com/go/99 折合每天8元1个月&#xff0c;腾讯云99元服务器配置为2核2G3M带宽&#xff0c;2024年99元服务器配置最新报价为61元一年&#xff0c;如下图&#xff1a; 腾讯云服务器99元一年 腾讯…

Axure RP 10:让原型设计更快、更直观、更智能 mac版

Axure RP 10是一款强大的原型设计工具&#xff0c;它能够帮助设计师快速创建高保真、交互式的原型&#xff0c;从而更好地展示和测试设计方案。这款软件凭借其直观易用的界面和丰富的功能&#xff0c;已经成为了许多设计师的首 选工具。 Axure RP 10 for Mac版软件获取 首先&a…

汽车零部件制造中的信息抽取技术:提升效率与质量的关键

一、引言 在汽车制造业中&#xff0c;零部件的生产是整个制造流程的关键一环。这些零部件&#xff0c;包括但不限于制动系统、转向系统和传动系统&#xff0c;是确保汽车安全、可靠运行的基础。为了满足现代汽车工业对效率和质量的严格要求&#xff0c;制造商们纷纷投入到高度…

如何在Linux用Docker部署MySQL数据库并远程访问本地数据库

文章目录 前言1 .安装Docker2. 使用Docker拉取MySQL镜像3. 创建并启动MySQL容器4. 本地连接测试4.1 安装MySQL图形化界面工具4.2 使用MySQL Workbench连接测试 5. 公网远程访问本地MySQL5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 前言 本文主…

大规模语言模型中新的思想和方法

大规模语言模型的发展引入了多项创新的思想和方法&#xff0c;这些创新对实际效果产生了深远的影响&#xff1a; 1. 深度神经网络架构创新 如Transformer模型的引入&#xff0c;利用自注意力机制解决了长序列输入的处理难题&#xff0c;使得模型能够更有效地捕获语言中的长距离…

【机器学习】包裹式特征选择之基于遗传算法的特征选择

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;机器学习 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进…