ROS 1.0(Kinetic)和ROS 2.0(Ardent)安装与测试(第二版)
试用和学习机器人操作系统最便捷的打开方式
第二版(kinetic):https://www.shiyanlou.com/courses/854
ROS教程直接在实验楼更新,博客内容以机器人和人工智能理论、算法和编程实践为主。 推荐沉迷机器人操作系统的一个理由和四种修仙秘籍: https://gitbook.cn/gitchat/activity/5bb420761063e2521b6776c3
云端实验平台无需配置,网页打开即可使用,如果想了解具体过程,可参考如下内容:
1 系统更新(可忽略)
sudo apt-get update
sudo apt-get upgrade
2 安装ROS kinetic(ROS 1.0)
依据网页:http://wiki.ros.org/cn/kinetic/Installation/Ubuntu
,进行配置,具体如下:
2.1 添加sources.list
- 配置你的电脑使其能够安装来自 packages.ros.org的软件。 ROS Kinetic 支持 Ubuntu Xenial(16.04)。
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
- 注:强烈建议使用国内或者新加坡的镜像源,这样能够大大提高安装下载速度。
- USTC (China)
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'
2.2 添加keys
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
2.3 安装ros1完整版
- 首先,确保你的Debian软件包索引是最新的:
sudo apt-get update
- 桌面完整版安装:(推荐)
sudo apt-get install ros-kinetic-desktop-full
2.4 初始化rosdep
- 在开始使用ROS之前你还需要初始化rosdep。rosdep可以方便在你需要编译某些源码的时候为其安装一些系统依赖,同时也是某些ROS核心功能组件所必需用到的工具。
sudo rosdep init
rosdep update
2.5 环境设置
- 如果每次打开一个新的终端时ROS环境变量都能够自动配置好(即添加到bash会话中),那将会方便得多:
echo "source /opt/ros/kinetic/setup.zsh" >> ~/.zshrc
source ~/.zshrc
2.6 安装rosinstall
- rosinstall 是ROS中一个独立分开的常用命令行工具,它可以方便让你通过一条命令就可以给某个ROS软件包下载很多源码树。要在ubuntu上安装这个工具,请运行:
sudo apt-get install python-rosinstall
2.7 测试roscore
- 打开一个终端测试roscore是否能正常启动:
roscore
2.8 启动turtlesim
- 启动一个turtlesim节点并通过键盘控制其运动:
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key
2.9 安装S.T.D.R.二维机器人仿真软件
- STDR仿真软件的目标不是成为最真实的模拟器,也不是功能最强大的模拟器。而是通过最小化资源配置,使单个机器人或群体的模拟尽可能简单。此外,STDR可以在有或没有图形环境的情况下运行,即使使用ssh连接也可以进行实验。STDR仿真软件的创建方式使其完全符合ROS标准。每个机器人和传感器都会发出ROS转换(tf),所有测量结果都会在ROS主题中发布。通过这种方式,STDR利用所有ROS优势,旨在使用世界上最先进的机器人框架。ROS规范性还包括图形用户界面和STDR服务器可以在不同的机器上执行以及STDR可以与ROS Rviz一起工作!
- 使用如下命令安装:
sudo apt-get install ros-kinetic-stdr-*
- 使用如下命令测试安装结果,启动图形化用户界面GUI:
roslaunch stdr_launchers server_with_map_and_gui_plus_robot.launch
- 启动Rviz可视化工具:
roslaunch stdr_launchers rviz.launch
3 安装ROS ardent(ROS 2.0)
3.1 设置安装源
- 安装Debian软件包,需要将Debian存储库添加到apt源。首先,需要使用以下方式授权gpg密钥:
sudo apt update && sudo apt install curl gnupg2 lsb-release
curl http://repo.ros2.org/repos.key | sudo apt-key add -
- 然后将存储库添加到源列表:
sudo sh -c 'echo "deb [arch=amd64,arm64] http://packages.ros.org/ros2/ubuntu
lsb_release -csmain" > /etc/apt/sources.list.d/ros2-latest.list'
3.2 安装ros2完整版
- 更新:
sudo apt update
- 桌面安装(推荐):ROS,RViz,演示,教程。
sudo apt install ros-ardent-desktop
3.3 环境配置
- (可选)安装argcomplete
sudo apt install python3-pip
sudo pip3 install argcomplete
- 使用如下命令设置环境为ROS2:
source /opt/ros/ardent/setup.zsh
3.4 配置ROS1和ROS2桥接
- 安装命令如下:
sudo apt install ros-ardent-ros1-bridge
3.5 测试
- ros1
- 启动roscore后,新开窗口运行:
rosrun rospy_tutorials talker
- ros2
- 配置ros2环境后(默认环境为ros1),分别运行如下命令:
ros2 run ros1_bridge dynamic_bridge
ros2 run demo_nodes_cpp listener
完成上面全部操作后,执行如下操作:
4 打两个补丁
配套ROS机器人编程:原理与应用
详细介绍链接:https://cloud.tencent.com/developer/article/1403691
4.1 安装 install_kinetic.sh
./install_kinetic.sh
4.2 配置 setup_kinetic.sh
./setup_kinetic.sh
如果网络较慢或问题,推荐手工下载源码并解压编译。
编译过程:
更多详细教程,稍后逐步完善。