Linux下简单几步安装AI开发环境-ROS(超有意思)

系统 Linux
ROS(Robot Operating System,下文简称“ROS”)是用于编写机器人软件程序的一种具有高度灵活性的软件架构,是一个开源的元操作系统。

一口君机缘巧合,接触到了一个开源的项目ROS,只需要根据本文操作,就可以很容易搭建一个具有3d效果的开发环境,非常有意思,和大家分享下。

0、什么是ROS

[[408881]]

ROS(Robot Operating System,下文简称“ROS”)是用于编写机器人软件程序的一种具有高度灵活性的软件架构,是一个开源的元操作系统。ROS的原型源自斯坦福大学的STanford Artificial Intelligence Robot (STAIR) 和 Personal Robotics (PR)项目。

它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。

ROS设计者将ROS表述为“ROS = Plumbing + Tools + Capabilities + Ecosystem”,即ROS是通讯机制、工具软件包、机器人高层技能以及机器人生态系统的集合体 。

1. ROS安装

ROS Kinetic 只 支持Wily (Ubuntu 15.10), Xenial (Ubuntu 16.04) 和Jessie (Debian 8) 的debian包。ubuntu 16.04安装,请参考文章《linux环境搭建-ubuntu16.04安装》

1.1 配置Ubuntu软件仓库

配置你的Ubuntu软件仓库(repositories)以允许使用“restricted”“universe”和“multiverse”存储库。你可以根据Ubuntu软件仓库指南来完成这项工作。

1.2 设置sources.list

设置电脑以安装来自packages.ros.org的软件。

打开终端,输入以下命令:

  1. sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' 

若下载速度缓慢,推荐就近选择一个镜像源替换上面的命令。例如,Tsinghua University为:

  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' 

如果依旧遇到连接问题,请尝试为Ubuntu apt换源(非ROS网站)。

1.3 设置密钥

  1. sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 

若无法连接到密钥服务器,可以尝试替换上面命令中的 hkp://keyserver.ubuntu.com:80 为 hkp://pgp.mit.edu:80 。

你也可以使用curl命令替换apt-key命令,这在使用代理服务器的情况下比较有用:

  1. curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add - 

1.4 安装

首先,确保你的Debian软件包索引是最新的:

  1. sudo apt-get update 

在ROS中,有很多不同的库和工具。我们提供了默认的配置来开始。你也可以单独安装ROS包。

如果以下步骤出现问题,可以使用以下存储库,而不是上面提到的那些ros-shadow-fixed

桌面完整版: (推荐) : 包含ROS、rqt、rviz、机器人通用库、2D/3D 模拟器、导航以及2D/3D感知

  1. sudo apt-get install ros-kinetic-desktop-full 

实际操作可能会出错,多试几次即可。

1.5 初始化 rosdep

在开始使用ROS之前你还需要初始化rosdep。rosdep可以方便在你需要编译某些源码的时候为其安装一些系统依赖,同时也是某些ROS核心功能组件所必需用到的工具。

  1. sudo rosdep init 

但是初始化经常会失败, 解决方法:

  1. sudo su 
  2. sudo gedit /etc/hosts 

在hosts中添加以下内容并保存,在执行完后继续rosdep update

  1. 199.232.28.133 raw.githubusercontent.com 
  2. 151.101.228.133 raw.github.com 

在此执行 sudo rosdep init

1.6 更新 rosdep

该步骤可以不执行,如果需要更新rosdep ,可以执行以下命令:

  1. rosdep update 

但是由于服务器不稳定,通常需要多试几次,

或者直接直接下载对应的更新文件UAV_ROS.tar,拷贝到ubuntu中,

然后拷贝到/etc/ros/rosdep/下

  1. cd ~/ros 
  2. sudo cp * /etc/ros/rosdep/ 

2. 编译

1. 下载demo的解压包hw_1,并解压

  1. tar zxvf hw_1.tar 

2. 创建工作空间

Ctrl+alt+t,打开终端,复制并逐条运行以下命令

  1. mkdir -p ~/catkin_ws/src 
  2. cd ~/catkin_ws/src 

之后将 hw_1/src 中的三个文件夹复制到/catkin_ws/src 路径下:

  1. cp ~/hw_1/src/*  ~/catkin_ws/src -r 
  2. cd ~/catkin_ws/src 

继续在终端执行命令:

  1. catkin_init_workspace 
  2. cd ~/catkin_ws/ 
  3. catkin_make 

成功!

声明环境变量:

  1. source devel/setup.bash 

3. 打开 rviz

在终端执行命令

  1. roscore 

ctrl+shift+t,打开新一页终端,执行以下命令

  1. rviz 

显示出 rviz 初始页面

最终界面如下:

4. 打开 rviz 配置文件

鼠标放在左上方,点击添加配置文件(open Config),

配置文件路径为:

  1. ~/catkin_ws/src/grid_path_searcher/launch/rviz_config/demo.rviz 

点击open,进入下面对话框:

点击save后,显示如下画面,此时因为还未运行程序,所以地图没有初始化,看不到点云三维地 图。

5. 运行程序,载入地图

ctrl+shift+t,打开新一页终端,执行以下命令

  1. cd ~/catkin_ws 
  2. source devel/setup.bash 
  3. roslaunch grid_path_searcher demo.launch 

画面切到 rivz,可以看到,程序自动载入了点云地图

成功!

 

责任编辑:姜华 来源: 一口Linux
相关推荐

2015-09-17 17:49:13

华三/UIS

2021-03-25 06:12:55

SVG 滤镜CSS

2022-07-11 13:09:26

mmapLinux

2013-08-28 09:46:09

Debian LinuLinux发行版

2022-06-15 07:21:47

鼠标指针交互效果CSS

2022-08-15 22:34:47

Overflow方向裁切

2020-12-12 13:50:16

云开发

2017-08-01 00:52:07

kafka大数据消息总线

2021-01-27 13:54:05

开发云原生工具

2018-06-24 16:39:28

Tomcat异常线程

2021-04-09 08:23:30

Css前端加载动画

2022-07-04 09:18:30

AI应用平台

2012-06-19 16:49:19

Web开发

2012-05-22 10:12:59

jQuery

2015-10-28 13:57:29

融合架构华三UIS

2010-04-09 11:24:59

Oracle 排序

2021-11-17 10:45:58

Chrome 95新特性前端

2022-09-21 22:19:16

CSS面试题

2021-02-20 16:01:26

Github前端开发
点赞
收藏

51CTO技术栈公众号