树莓派3B用raspbian编译ros

简介:

 这里用的树莓派官方原版系统(raspbian-jessie),ROS Kinetic Kame。工作机为 Windows。

【系统安装】

1、下载 raspbian 并解压出 img 文件。

2、用 SDFormatter 格式化 sd 卡。

3、用 Win32 Disk Imager 将 img 写入 sd 卡。


【ssh连接】

1、编辑 sd 卡里面的 cmdline.txt 文件,在最前面添加字符串 ip=192.168.77.88  。(注意后面有个空格)

2、在 sd 卡里面添加一个名为 ssh 的空白文件。

3、将 sd 卡插入树莓派板子并通电,树莓派与 PC 用网线直连即可。

4、然后就可以通过 ssh 192.168.77.88 连接 raspbian 系统了。

5、注意要 Windows 与 raspbian 应为同一个网段。

6、初始账号为 pi,密码为 raspbarry

7、至此,实现了无屏幕 ssh 连接。


【wifi连接】

1、编辑 /etc/wpa_supplicant/wpa_supplicant.conf 文件。添加:

1
2
3
4
5
network={
     ssid="WiFi-name"
     psk="WiFi-password"
     priority=5
}

2、重启无线网卡。

1
2
sudo  ifdown wlan0
sudo  ifup wlan0

  注意与 ifconfig wlan0 up/down 的区别。

3、iwlist scanning 命令可以扫描无线网,iwconfig 查看无线网卡状态。

4、更多信息:树莓派连接WiFi


【更改 raspbian 软件源】

  本节内容依据官方文档

1、编辑 /etc/apt/sources.list 文件,注释掉里面所有内容,然后添加中科大软件源:

1
deb http: //mirrors .ustc.edu.cn /raspbian/raspbian/  jessie main contrib non- free  rpi

2、执行以下命令。

1
2
sudo  apt update
sudo  apt upgrade

3、由于 /etc/apt/sources.list.d/raspi.list 文件里面的 ui 库,国内源并没有,所以不建议替换 raspi.list 里面内容。

1
2
3
deb http: / / archive.raspberrypi.org / debian /  jessie main ui
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ jessie main ui

【编译安装 ROS Kinetic】

  本节内容依据官方文档

1、添加 ros 仓库,并update。

1
2
3
4
5
6
sudo  sh -c  'echo "deb http://mirrors.ustc.edu.cn/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
# or
sudo  apt-key adv --keyserver hkp: //keyserver .ubuntu.com:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sudo  apt update
sudo  apt upgrade

2、安装 Bootstrap 依赖。

1
sudo  apt  install  -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake

3、初始化 rosdep。

1
2
sudo  rosdep init
rosdep update

4、创建 catkin workspace。

1
2
3
4
mkdir  -p ~ /ros_catkin_ws
cd  ~ /ros_catkin_ws
rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only -- tar  > kinetic-ros_comm-wet.rosinstall
wstool init src kinetic-ros_comm-wet.rosinstall

5、又是依赖。

1
2
3
4
5
6
7
8
9
10
11
12
mkdir  -p ~ /ros_catkin_ws/external_src
cd  ~ /ros_catkin_ws/external_src
wget http: //sourceforge .net /projects/assimp/files/assimp-3 .1 /assimp-3 .1.1_no_test_models.zip /download  -O assimp-3.1.1_no_test_models.zip
unzip assimp-3.1.1_no_test_models.zip
cd  assimp-3.1.1
cmake .
make     #编译大约一刻钟
sudo  make  install
 
cd  ~ /ros_catkin_ws
#下面这步网络正常的情况下约一刻钟
rosdep  install  -y --from-paths src --ignore-src --rosdistro kinetic -r --os=debian:jessie

6、组建 catkin workspace

1
2
#下面这步大约20分钟
sudo  . /src/catkin/bin/catkin_make_isolated  -- install  -DCMAKE_BUILD_TYPE=Release -- install -space  /opt/ros/kinetic  -j2

walker 开始没加 -j2 参数,在下面这里卡了一个多小时,然后被 walker 强制中断。

[ 43%] Building CXX object CMakeFiles/roscpp.dir/src/libros/single_subscriber_publisher.cpp.o

7、刷环境变量后就可以用啦。

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


相关阅读:

1、树莓派3B用Ubuntu MATE安装ros

2、ROS 常用命令字典

3、树莓派备份镜像 制作镜像 一键制作 脚本(dump/restore)


*** walker ***

本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1947694如需转载请自行联系原作者


RQSLT

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
7月前
ROS创建工作空间添加包并编译
ROS创建工作空间添加包并编译
89 0
|
8月前
LearnVIORB 项目编译实现及双目ROS 补充
LearnVIORB 项目编译实现及双目ROS 补充
48 0
ROS noetic 安装编译Cartographer踩坑记录
ROS noetic 安装编译Cartographer踩坑记录
393 0
ROS noetic 安装编译Cartographer踩坑记录
ROS学习-编译Package包
ROS学习-编译Package包
87 0
|
算法 机器人 定位技术
ROS中阶笔记(八):机器人SLAM与自主导航—机器人自主导航
ROS中阶笔记(八):机器人SLAM与自主导航—机器人自主导航
856 0
ROS中阶笔记(八):机器人SLAM与自主导航—机器人自主导航
|
1月前
|
网络协议 机器人 中间件
单片机和FreeRTOS上跑机器人ROS的应用
单片机和FreeRTOS上跑机器人ROS的应用
46 0
|
3月前
|
传感器 机器人 C++
ROS 2机器人编程实战:基于现代C++和Python 3实现简单机器人项目
ROS 2机器人编程实战:基于现代C++和Python 3实现简单机器人项目
175 0
|
5月前
|
传感器 机器人 C++
机器人操作系统ROS 编程开发--详细总结
最近工作涉及到自动驾驶的,需要学习ROS,学习中总结了一些知识点,分享给大家。 机器人操作系统ROS,是一种分布式处理框架(又名Nodes),ROS常用C++和python编程语言开发;(这里项目开发采用C++ 11版本)。ROS的点对点设计以及服务和节点管理器等机制,可以分散由计算机视觉和语音识别等功能带来的实时计算压力,能够适应多机器人遇到的挑战。ROS免费并且开源。
288 0

推荐镜像

更多