美文网首页
ROS安装与小乌龟测试

ROS安装与小乌龟测试

作者: 浓雾中前行 | 来源:发表于2018-12-20 18:58 被阅读0次

最近做一些机器人相关学习,老板让学习了解一下ROS系统,手头有一块树莓派3B+的板子,恰巧可以用来学习一下ROS系统。

最初想法是在树莓派官方Raspberry系统下编译安装ROS-kinetic-desktop系统。参考网上博客捣鼓了一天之后,今天早上终于在一次黑屏重启之后,系统成功罢工。遂不得已还是在 Unbantu mate 16.04 系统下安装了ros-kinetic-desktop,并且运行小乌龟成功(QAQ)。简要记录如下,以备后面系统崩溃,重新安装。

安装环境

树莓派3B+
TF卡 32GB(理论上8GB足够用)
Ubuntu Mate 16.04
ROS-kinetic-desktop

安装过程

此处安装过程参考:
http://www.52pi.net/archives/918

https://blog.csdn.net/qq_35239859/article/details/77938646

https://www.cnblogs.com/yhlx125/p/5138317.html

最新Kinect版本的ROS只能在16.04上运行,因此我们首先要在树莓派上安装Ubuntu Mate 16.04。

到ubuntu mate 下载最新的镜像,注意一定要选16.04不要下载成16.10了

https://ubuntu-mate.org/raspberry-pi/

下载完成后会得到一个如下的镜像文件

ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img.xz

将它解压得到

ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img

Windows的用户可以使用ImageWrite将镜像烧录到SD卡上,如果找不到工具可以在这里下载 https://sourceforge.net/projects/win32diskimager/

经过漫长的等待。。。。。

2. 首次启动Ubuntu Mate

将烧录好的SD卡插入树莓派3,接上电源,HDMI显示器和键盘鼠标

注意: 这里有同学可能跟我一样平时玩树莓派从来不接键盘鼠标和显示器,全部靠ssh远程操作。不过Ubuntu Mate在首次启动需要人工完成一下安装过程和配置,因此还是老老实实接上外设吧:)

安装过程基本就是一路Next,还有就是配置Ubuntu的用户名和密码。

进入系统后可以先将SD卡扩容到真实大小。具体操作是点击欢迎界面右下角的红色树莓派图标,里面有一个SD卡扩容选项。

也可以通过下面命令行手动重新分区sd卡。
$sudo fdisk /dev/mmcblk0

在fdisk的提示框下按下d,2删除第二个分区,之后重新建立分区(n,p,回车,回车),最后按下w保存。重启系统,之后执行下面命令行:
$sudo resize2fs /dev/mmcblk0p2

注意:安装完系统后配置wifi连接并不能生效,这是一个bug重启系统后解决。

3. 安装ROS Kinect

接下来的步骤基本就是照着http://wiki.ros.org/kinetic/Installation/Ubuntu 走了

打开树莓派的终端,或者远程ssh连到树莓派。

首先加入ROS官方的源
$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://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116

Ok,现在更新Package的列表
$sudo apt-get update
$sudo apt-get upgrade

在树莓派上安装ROS包,这里我们只安装ROS内核。因为平时机器人在运动的时候基本上是在PC上远程查看信息的,因此不需要安装ROS的GUI相关工具。

$sudo apt-get install ros-kinetic-ros-base

更新ROS相关依赖和环境

$sudo rosdep init
$rosdep update

注意第二个命令有可能会超时,这是GFW经常卡gist.github造成丢包,多重试几次应该就能过了。

接着将ROS环境导入到bashrc,这样每次启动新的终端都有ros的命令和环境参数了。

$echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
$source ~/.bashrc

注意这里一定要添加环境变量,否则运行时会报错***包未找到

最后安装常用的ROS命令行工具
$sudo apt-get install python-rosinstall
到这里位置ROS基本安装完毕了,打开一个新的终端,并且输入:
$roscore
看看ROS内核是不是跑起来了呢?
看看显示 started core service [/rosout] 了没有?如果没问题,恭喜,你成功了。
然后重新打开一个终端,运行
$sudo apt-get install rosbash
$rosrun turtlesim turtlesim_node
再重新打开一个终端
$rosrun turtlesim turtle_teleop_key

如果在运行时出现rospack:command not found
可以在每个终端下输入$source /opt/ros/indigo/setup.bash

启动页面 运行页面

如果运行到这里了,恭喜你,ROS已经成功安装啦!

踩的一些坑:

ROS学习笔记1:在树莓派3上部署ROS - 简书

这个链接在配置完源之后 安装(--recv-key) 时一直报错,后使用以下两个方法解决:

方法一:换了别另一篇文章中滴代码
$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
方法二:下载key
$ $ wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -O - | sudo apt-key add -

此文档在进行编译,进行到下面这一步时再次遇到报错。
rosdep install --from-paths src --ignore-src --rosdistro kinetic -y -r --os=debian:jessie

缺乏依赖包
进而又参考示例:
http://lib.csdn.net/article/embeddeddevelopment/30200

https://blog.csdn.net/AMDS123/article/details/71105003

https://blog.csdn.net/u010235853/article/details/77548593

然后在执行$sudo apt-get build-dep console-bridge时报错,
然后参照$sudo apt-get install libboost-system-dev libboost-thread-dev
$git clone https://github.com/ros/console_bridge.git
$cd console_bridge
$cmake .
$sudo checkinstall make install

在用checkinstall生成.deb包时报错 最终未解决。

然后今天中午系统就G了,果断换Ubuntu mate 16.04
后面有空再研究一下树莓派官方系统的编译,到时候再上传更新上来。

相关文章

  • ROS安装与小乌龟测试

    最近做一些机器人相关学习,老板让学习了解一下ROS系统,手头有一块树莓派3B+的板子,恰巧可以用来学习一下ROS系...

  • ROS安装教程(3) - 测试

    ROS安装教程目录 ROS安装教程(1) - 安装ROS安装教程(2) - 配置ROS安装教程(3) - 测试(本...

  • 22.ROS初探

    ROS初探 ROS简介 安装 安装完成后测试ROS是否安装完成 哦了~ 安装MAVRos 编译PX4固件 PX4固...

  • ROS安装教程(1) - 安装

    ROS安装教程目录 ROS安装教程(1) - 安装(本章)ROS安装教程(2) - 配置ROS安装教程(3) - ...

  • ROS安装教程(2) - 配置

    ROS安装教程目录 ROS安装教程(1) - 安装ROS安装教程(2) - 配置(本章)ROS安装教程(3) - ...

  • 2018-11-08 ros功能包的安装和卸载

    安装某个ros包,以乌龟的教程包为例: 卸载某个功能包: 删除包的依赖项:

  • RK3288中ROS的安装

    安装ubuntu Firefly RK3288升级内核支持USB Serial 安装ROS 测试结果 安装完成,运...

  • ROS 控制 Motoman 真实机器人

    环境 Ubuntu 18.04 ROS Melodic 步骤 1.安装ROS   安装ROS, 创建并初始化ROS...

  • ROS安装

    ROS安装 此安装过程参考->ROS wiki Ubuntu18 对应的ros版本为ROS Melodic Mor...

  • ROS turtlesim包详解

    十一前就仔细看了下ros_tutorials源码,下面是ROS初学者练习时会涉及的小乌龟包的源码个人详解,供参考。...

网友评论

      本文标题:ROS安装与小乌龟测试

      本文链接:https://www.haomeiwen.com/subject/etqukqtx.html