ROS 是什么
ROS和ubuntu的关系
在ubuntu上安装ROS的步骤
ROS是什么?
ros是机器人操作系统(Robot Operating System)的英文缩写。ROS是用于编写机器人软件程序的一种具有高度灵活性的软件架构。ROS的原型源自斯坦福大学的STanford Artificial Intelligence Robot (STAIR) 和 Personal Robotics (PR)项目。
ROS和Ubuntu有什么关系?
ROS是建立在开源操作系统Ubuntu系统之上的开源机器人操作系统,其主要目标是为机器人研究和开发提供代码复用的支持。它提供了操作系统应有的服务,包括硬件抽象、底层设备控制、共用功能执行、进程间消息传递,以及包管理。
在Ubuntu1804上安装ROS
1 添加中科大源
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 添加密钥
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
3 更新源
sudo apt update
4 下载ROS
sudo apt-get install ros-melodic-desktop-full
5 ROS 初始化
sudo rosdep init
rosdep update
tariq@tariq-desktop:/etc$ sudo rosdep init
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize
tariq@tariq-desktop:/etc$ sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
tariq@tariq-desktop:/etc$ sudo rosdep init
Wrote /etc/ros/rosdep/sources.list.d/20-default.list
Recommended: please run
rosdep update
还有一种错误如下:
tariq@tariq-desktop:/etc$ sudo rosdep init
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
这时候需要打开hosts文件添加151.101.84.133 raw.githubusercontent.com
tariq@tariq-desktop:/etc$ sudo gedit hosts
在文件末尾添加下面一行
151.101.84.133 raw.githubusercontent.com
即便这样执行rosdep update还是会报错!!!
对于rosdep update超时解决办法,亲测有效的是这个:https://blog.csdn.net/Kenny_GuanHua/article/details/116845781
6 设置环境变量
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
如果这时候报错:
bash: export: ` ': not a valid identifier
bash: :/usr/local/cuda-10.2/lib64 : No such file or directory
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64\
>
解决办法:
改成一行的形式, 或者把空格都去掉
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
# 或者
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
7 依次打开三个终端,分别输入以下命令:
roscore
rosrun turtlesim turtlesim_node #这时候会出现一个小乌龟的窗口
rosrun turtlesim turtle_teleop_key
之后在第三个窗口中使用上下左右控制乌龟的行动。