本文用于学习记录
文章目录
- 前言
- 一、ROS 安装
- 1.1 设置安装源
- 1.2 设置 key
- 1.3 更新 apt
- 1.4 安装 ros
- 二、ROS 环境配置
- 2.1 配置环境变量
- 2.2 安装构建依赖相关工具
- 2.3 初始化 rosdep
- 2.4 替换 20-default.list
- 2.5 测试 ros
- 三、RVIZ 运行仿真机械臂
- 3.1 RVIZ
- 3.2 运行步骤
- 3.3 报错与问题解决
- 总结
前言
ROS 安装与测试 & RVIZ 运行仿真机械臂实现
一、ROS 安装
1.1 设置安装源
终端输入清华国内安装源:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
1.2 设置 key
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
1.3 更新 apt
sudo apt update
1.4 安装 ros
sudo apt install ros-noetic-desktop-full
二、ROS 环境配置
2.1 配置环境变量
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.2 安装构建依赖相关工具
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
2.3 初始化 rosdep
sudo rosdep init
rosdep update
问题:update 报错
原因:境外资源网络延时
解决:替换 20-default.list
2.4 替换 20-default.list
- 备份 rosdistro/rosdep/sources.list.d/20-default.list 文件
终端输入:sudo cp /home/rosnoetic/20-default.list /etc/ros/rosdep/sources.list.d 进行替换
- 文件中涉及的 URL 内容,如果是: raw.githubusercontent.com/ros/rosdistro/master 都替换成 gitee.com/zhao-xuzuo/rosdistro/raw/master 即可
4) 修改完毕,再重新执行命令:
sudo rosdep init
rosdep update
2.5 测试 ros
快捷键 (ctrl + alt + T) 启动终端
roscore
rosrun turtlesim turtlesim_node (此时会弹出图形化界面)
rosrun turtlesim turtle_teleop_key (光标停留在此处,可以通过上下左右图形化界面中乌龟的运动)
三、RVIZ 运行仿真机械臂
3.1 RVIZ
- 中间部分为 3D视图显示区,能够显示外部信息;
- 上部为工具栏,包括视角控制、目标设置、地点发布等,还可以添加自定义的一些插件左侧为显示项目,显示当前选择的插件,并且能够对插件的属性进行设置;
- 下侧为时间显示区域,包括系统时间和ROS时间等;
- 右侧为观测视角设置区域,可以设置不同的观测视角;
3.2 运行步骤
- 安装 Movelt:sudo apt-get install ros-noetic(版本号)-moveit
- 查看版本号:moveit version
- 创建工作空间:mkdir -probotic arm/src
- 下载并解压源码放入工作空间,编译功能包:catkin make
- 追加环境变量:source ./devel/setup.bash
- 运行 launch 文件:roslaunch panda moveit config demo.launch
3.3 报错与问题解决
-
针对权限问题,只需点击 demo 文件右键属性,把权限的允许文件作为程序执行打勾即可;
-
第二个是语法错误: Python3 中取消了以前 Python2 中的语法,错误信息已经提示你需要加上括号,字符串可以用单引号或双引号括起来;
-
第三个错误是版本问题:raw input 是 2x 版本的输入函数,在新版本环境下会报错该函数未定义,在3版本中应该用 input0 代替 raw_input。
总结
以上就是 ROS 的安装与测试 & RVIZ 运行仿真机械臂实现。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)