新树莓派系统安装ROS记录
树莓派系统更新了,作为版本控的我怎么能忍住不更新系统,为了提高系统的速度,买了张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, rqt, rviz, 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记录的更多相关文章
- 树莓派系统安装(ubuntu版本)无需屏幕
0.前提 所需物品:一个手机.一台电脑.一个树莓派.一张tf卡和一个读卡器.所需软件:Win32DiskImager.putty还需要ubuntu系统镜像源.这些我都放在百度网盘上了链接:https: ...
- XUbuntu18.04(Bionic河狸)正式发布,系统安装升级记录
XUbuntu18.04(Bionic河狸)正式发布,系统安装升级记录 详细介绍: https://blog.pythonwood.com/2018/04/XUbuntu18.04(Bionic河狸) ...
- Windows7 + Ubuntu双系统安装过程记录
本文为在已安装Windows7系统的前提下安装Ubuntu Kylin 14.10系统的过程以及期间出现的各种问题的记录. Ubuntu系统下载 Ubuntu Kylin中文官方网站:http://w ...
- 树莓派系统安装、HDMI显示
树莓派上可以安装多种操作系统,我们采用的是官方的基于debian的raspbian.系统安装方式见 安装完系统由于我使用的是7寸的HDMI屏,装完系统如果配置不该的话会导致右边有一部分无法显示,所以在 ...
- 树莓派安装ros
之前电脑安装过ros感觉还好,没成想这次在树莓派上安装费老劲了,出现了很多错误,装了卸,卸了装废了半天劲下面将一些安装的错误和问题做个总结方便以后的安装也希望给别人一个参考 ros安装(对照自己的版本 ...
- linux下sendmail邮件系统安装操作记录
电子邮件系统的组成:1)邮件用户代理(Mail User Agent , MUA),MUA是一个邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口. 最常用的 MUA 有: linux ...
- 树莓派学习路程No.1 树莓派系统安装与登录 更换软件源 配置wifi
在官网下载raspbian系统镜像,用Win32DiskImager写入TF卡 Image File 选择系统镜像,Device 选择TF卡盘符,Write即可.这样系统就写好了.把内存卡插进树莓派里 ...
- java萌新尝试搭建WordPress记录
问题1:安装好PHP环境没找好mysql路径,导致不能调用数据库模块 解决方案:重装一次,参考链接 https://www.cnblogs.com/yangxia-test/p/4174372.htm ...
- <20180927>新开一篇章记录常用到的IT名词
(一)有些名词在市场化的今天用的很多,和IT的名词重叠和易混淆, 有些缩写根本连外国人都很少用, 国人却用的津津乐道.这篇是专门用来记录的. 1.1 SMB , 这个在IT领域用的很多, 阐述的是 “ ...
随机推荐
- SOAP-1概述
简单对象访问协议 SOAP(简单对象访问协议)一般指简单对象访问协议 简单对象访问协议是交换数据的一种协议规范,是一种轻量的.简单的.基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WE ...
- IDEA安装及默认配置习惯配置(一)
最新新转战IDEA,每次安装完需要做一些操作习惯的设置,在这里记录一下,下次安装可以快速上手用. 第一步,JAVA安装 JDK官方下载地址:https://www.oracle.com 下载JDK时根 ...
- ajax:用于创建快速动态网页的技术
ajax是一种用于创建快速动态网页的技术. 异步的javascript和XML(JSON),主要是完成一个局部刷新. 异步:你传输吧,我先干我自个儿的事,你传好了告诉我一声 同步:你传输,我停下活儿看 ...
- 关于一个mvc架构的cms的后台getshell
都知道,mvc的话 除了根目录还有public目录可以访问,其他的访问都是不行的,因为会默认都是会解析url 然后我们来看今天的猪脚 大概的图片上传还有远程文件加载我黑盒测过了 就是想捞一个快一点的 ...
- XCode5环境下利用crash log调试线上Crash的流程
1.前言 本文主要介绍在XCode5环境下,如何根据App自己生成的crashlog来调试真机上运行时产生的crash问题. 2. 步骤 (1)构造一段会crash的代码,并放到viewDidLoad ...
- IDEA部署项目到远程服务器
一.idea安装阿里插件Alibaba Cloud Toolkit 二.添加Host 三.应用部署 四.修改源程序重新部署 五.查看实时日志 欲买桂花同载酒,终不似,少年游
- MySQL操作规范总结
来源:静以致远√团团 用户权限管理创建用户命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';说明:Username所创建的用户名hos ...
- 用javafx webview 打造自己的浏览器
背景 项目需要做一个客户端的壳,内置浏览器,访问指定 的url 采用技术 java 1.8 开始吧! java环境配置略 hello world import javafx.application.A ...
- Bind Mounts and File System Mount Order
When you use the bind option of the mount command, you must be sure that the file systems are m ...
- sqlmap中文帮助文档
Options(选项): -h,--help 显示基本帮助消息并退出 -hh 显示高级帮助消息并退出 --version ...