树莓派系统更新了,作为版本控的我怎么能忍住不更新系统,为了提高系统的速度,买了张170M的告诉sd卡,我要说的是,这个高速SD卡的钱花的最值得了,千万不要觉得树莓派都买了4,还要什么高速SD卡(自行车)呢,这样想是不对的,谁用谁知道,自从用了高速SD卡,卡顿没有了。切入正题,上篇帖子中用的,这次居然不行了,无语啊。看来看去,还是官网教程最靠谱,就他了,不行再更改吧。

 一、前期准备:安装必要的软件的环境了,安装pyqt5-dev pyqt5-dev-tools是为了避免编译catkin工作空间在第64个文件包时出现错误, pyqt5-dev pyqt5-dev-tools

  sudo apt-get install python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential

如果上边的命令出错了,就乖乖的执行下面两条命令:

  sudo pip install -U rosdep rosinstall_generator wstool rosinstall

  sudo pip install --upgrade setuptools

安装初始化:
  sudo rosdep init
  rosdep update 二、安装
1、创建catkin工作空间
  mkdir ~/ros_catkin_ws
  cd ~/ros_catkin_ws
2、安装ros,建议Desktop Install: ROS, rqtrviz, and robot-generic libraries
  rosinstall_generator desktop --rosdistro melodic --deps --tar > melodic-desktop.rosinstall
  wstool init -j8 src melodic-desktop.rosinstall
  如果执行中有错误:
  wstool update -j 4 -t src
3、解决安装依赖的问题:
  rosdep install --from-paths src --ignore-src --rosdistro melodic -y
4、编译catkin工作空间
  ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release
  如果在这个过程中出现了qt_gui_cpp错误的话,就安装pyqt5-dev和pyqt5-dev-tools两个软件包
  sudo apt install pyqt5-dev pyqt5-dev-tools,当然也可以提前安装即可。
  source ~/ros_catkin_ws/install_isolated/setup.bash
5、保持源的更新
  mv -i melodic-desktop-full.rosinstall melodic-desktop-full.rosinstall.old
  rosinstall_generator desktop_full --rosdistro melodic --deps --tar > melodic-desktop-full.rosinstall
  比较新旧的包的升级情况:
  diff -u melodic-desktop-full.rosinstall melodic-desktop-full.rosinstall.old

  如果正好需要需要的升级,那么就升级吧:
  wstool merge -t src melodic-desktop-full.rosinstall
  wstool update -t src   重新编译你的工作空间:
  ./src/catkin/bin/catkin_make_isolated --install   初始化环境:
  source ~/ros_catkin_ws/install_isolated/setup.bash
6、到此就是一个闭合的环节了,安装,升级,还可以一直这么升级下去的。赶紧试试小乌龟,看看能不能动下吧。
  无论什么时间出现没有命令之类的错误:执行命令:source ~/ros_catkin_ws/install_isolated/setup.bash基本没有问题

  打开一个终端:roscore                              #运行ros环境


  打开一个终端:rosrun turtlesim turtlesim_node        #打开小乌龟运行场景


  打开一个终端:rosrun turtlesim turtle_teleop_key                                           #使用终端控制箭头可以控制小乌龟了

到此为止,树莓派4b上的ROS可以告一个段落了。

7接着:创建工作空间

一、source /opt/ros/melodic/setup.bash        //环境变量生效

二、mkdir -p ~/catkin_ws/src                   //建立工作空间

三、cd   ~/catkin_ws/src                     //进入空间源目录

四、catkin_init_workspace                    //初始化工作空间

五、cd   ~/catkin_ws/                     //进入工作空间

六、catkin_make                          //编译工作空间

七、source devel/setup.bash                 //空间变量生效

八、echo $ROS_PACKAGE_PATH              //查看空间变量

九、echo "WORKSPACE=~/catkin_ws" >> ~/.bashrc         //让空间变量在所有的终端中都有效

  echo "source /WORKSPACE/devel/setup.bash" >> ~/.bashrc


8然后:创建功能包

一、cd ~/catkin_ws/src/                  //进入空间源目录

二、catkin_create_pkg learning_communication std_msgs rospy roscpp   //创建功能包,指定包名和包的依赖

三、cd ~/catkin_ws/ && catkin_make              //编译工作空间

四、source ~/catkin_ws/devel/setup.bash          //空间变量生效

新树莓派系统安装ROS记录的更多相关文章

  1. 树莓派系统安装(ubuntu版本)无需屏幕

    0.前提 所需物品:一个手机.一台电脑.一个树莓派.一张tf卡和一个读卡器.所需软件:Win32DiskImager.putty还需要ubuntu系统镜像源.这些我都放在百度网盘上了链接:https: ...

  2. XUbuntu18.04(Bionic河狸)正式发布,系统安装升级记录

    XUbuntu18.04(Bionic河狸)正式发布,系统安装升级记录 详细介绍: https://blog.pythonwood.com/2018/04/XUbuntu18.04(Bionic河狸) ...

  3. Windows7 + Ubuntu双系统安装过程记录

    本文为在已安装Windows7系统的前提下安装Ubuntu Kylin 14.10系统的过程以及期间出现的各种问题的记录. Ubuntu系统下载 Ubuntu Kylin中文官方网站:http://w ...

  4. 树莓派系统安装、HDMI显示

    树莓派上可以安装多种操作系统,我们采用的是官方的基于debian的raspbian.系统安装方式见 安装完系统由于我使用的是7寸的HDMI屏,装完系统如果配置不该的话会导致右边有一部分无法显示,所以在 ...

  5. 树莓派安装ros

    之前电脑安装过ros感觉还好,没成想这次在树莓派上安装费老劲了,出现了很多错误,装了卸,卸了装废了半天劲下面将一些安装的错误和问题做个总结方便以后的安装也希望给别人一个参考 ros安装(对照自己的版本 ...

  6. linux下sendmail邮件系统安装操作记录

    电子邮件系统的组成:1)邮件用户代理(Mail User Agent , MUA),MUA是一个邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口. 最常用的 MUA 有: linux ...

  7. 树莓派学习路程No.1 树莓派系统安装与登录 更换软件源 配置wifi

    在官网下载raspbian系统镜像,用Win32DiskImager写入TF卡 Image File 选择系统镜像,Device 选择TF卡盘符,Write即可.这样系统就写好了.把内存卡插进树莓派里 ...

  8. java萌新尝试搭建WordPress记录

    问题1:安装好PHP环境没找好mysql路径,导致不能调用数据库模块 解决方案:重装一次,参考链接 https://www.cnblogs.com/yangxia-test/p/4174372.htm ...

  9. <20180927>新开一篇章记录常用到的IT名词

    (一)有些名词在市场化的今天用的很多,和IT的名词重叠和易混淆, 有些缩写根本连外国人都很少用, 国人却用的津津乐道.这篇是专门用来记录的. 1.1 SMB , 这个在IT领域用的很多, 阐述的是 “ ...

随机推荐

  1. 如何画svg路径图

    在画路径图之前,首先得在package.json引入2个依赖 废话不多说,直接上代码 <style> .green { position: absolute; } .blue { posi ...

  2. C语言对齐、补齐

    加快CPU读取数据的速度 aligned(n) 让所作用的结构成员对齐在n字节自然边界上.如果结构中有成员的长度大于n,则按照最大成员的长度来对齐 struct s { char c; int i; ...

  3. Hibernate入门第一讲——Hibernate框架的快速入门

    Hibernate框架的概述 什么是框架? 框架指的是软件的半成品,已经完成了部分功能. JavaEE开发的三层架构 了解框架的基本概念之后,我们就来看看Hibernate框架处于JavaEE开发的经 ...

  4. XML文件解析之DOM4J解析

    1.DOM4J介绍 dom4j的官网是http://www.dom4j.org/dom4j-1.6.1/,最新的版本是1.6.1,根据官网介绍可知.dom4j是一个易用的.开源的库,应用于Java平台 ...

  5. [LeetCode] 219. Contains Duplicate II ☆(存在重复元素2)

    每天一算:Contains Duplicate II 描述 给出1个整形数组nums和1个整数k,是否存在索引i和j,使得nums[i] == nums[j] 且i和j之间的差不超过k Example ...

  6. 微信企业红包api接入

    项目描述:基于微信浏览器的H5页面,接入微信支付接口和微信红包接口 一.接入前准备条件 1.微信公众号 需要基于已认证的微信公众号承载该H5页面.该条件默认已具备,本文重点为红包接口. 2.微信支付商 ...

  7. 使用yield处理文件

    写文件 # -*- coding:utf-8 -*- import random import threading import string import time t1 = time.time() ...

  8. C++——namespace

    scope和namespace scope就是我们常说的作用域,namespace是C++引入的一个关键字.这两种都和作用域有些微妙的联系,下面 引自Global scope vs global na ...

  9. lvs+keepalived+application部署(只使用两台机器)

    目前大家用LVS+Keepalived + APP 架构都是 2台LVS +Keepalived 然后后端跟着 应用设备 然而针对小客户来说,  2台LVS平常没什么压力 还有一台备着(虽然可以跑双主 ...

  10. idou老师教你学Istio 24:如何在Istio使用Prometheus进行监控

    使用Prometheus进行监控是Istio提供的监控能力之一.Istio提供丰富的监控能力,为网格中的服务收集遥测数据.Mixer是负责提供策略控制和遥测收集的Istio组件. Istio通过Mix ...