时间:2020.09.11
目的:有个turtle bot,瞎玩
本文主要记录的是ROS的安装和小乌龟运行测试,由于小白一枚因此存在很多问题,特此记录一下。
ROS(robot operating system)是一个开源的机器人操作系统,由Willow Garage公司在2010年发布,现在已经成为了当下最火的操作人系统之一。
ROS是开源的,它提供类似操作系统所提供的功能,包含硬件抽象描述、底层驱动程序管理、共用功能的执行、程序间的消息传递、程序发行包管理,它也提供一些工具程序和库用于获取、建立、编写和运行多机整合的程序。
简单来说,ROS就是一个专门针对于机器人开发的一套操作系统。
参考文章:
http://wiki.ros.org/ROS/Introduction
https://www.guyuehome.com/227
ROS目前一般都在基于unix的系统下运行,虽然目前也支持部分其他的系统,但目前最多的还是使用ubuntu进行开发。所以在安装ROS前你需要有一个Ubuntu系统,本文使用的也是Ubuntu系统,具体为ubuntu16.04,考虑到兼容性(一般是一代ubuntu一代ROS一一对应)以及ROS 的官方推荐,具体安装的为ROS Kinetic版本,安装流程如下:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt-get update
sudo apt-get install ros-kinetic-desktop-full
sudo rosdep init
rosdep update
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential
至此ROS 的基本安装及配置就算完全完成了,这个步骤比较容易,一般不会出现error。
在ROS 安装之后,为了检验是否安装成功,需要进行检验,也就是运行小乌龟,基本步骤如下:
1、对ROS 进行初始化
roscore
安装成功后一般会显示如下界面:
可能出现的问题总结及解决方法:
unable to contact my own server at
这个问题出现的原因是你在测试时不需要进行主从设备的通信,所以你需要将ROS配置为单机模式,具体解决步骤如下:
(1)配置单机模式
export ROS_HOSTNAME=localhost
export ROS_MASTER_URI=http://localhost:11311
(2)对bashrc文件进行修改(原因:可能出现每次单开都需要单机配置的问题,以及后续小乌龟无法通过键盘控制的问题)
gedit ~/.bashrc //打开bashrc文件
(3)修改文件中两个指令(如图所示)
export ROS_HOSTNAME=localhost
export ROS_MASTER_URI=http://localhost:11311
如上操作一般可解决以上问题。
2、新开一个terminal,运行以下命令,打开小乌龟窗口:
rosrun turtlesim turtlesim_node
3、新开一个terminal,运行以下命令,打开乌龟控制窗口,可使用方向键控制乌龟运动:
rosrun turtlesim turtle_teleop_key
4、选中控制窗口(即将鼠标选中上一个窗口),按方向键,可看到小乌龟窗口中乌龟在运动。
5、新开一个terminal,运行以下命令,可以看到ROS的图形化界面,展示结点的关系:
rosrun rqt_graph rqt_graph
至此,测试完成,说明ROS安装没有问题,下图为我的小乌龟。。。。
参考文章:
http://wiki.ros.org/kinetic/Installation/Ubuntu
https://www.bbsmax.com/A/1O5EZVE7d7/
https://www.cnblogs.com/saneri/p/10105422.html
https://wiki.ros.org/ROS/NetworkSetup