Raspberry Pi 2从裸板到ubuntu14.04,一步一步安装Robot Operating System(机器人操作系统)

来源:互联网 发布:单片机控制3.3v 编辑:程序博客网 时间:2024/05/16 12:43

Raspberry Pi 2从裸板到ubuntu14.04,一步一步安装Robot Operating System(机器人操作系统)

 

目录:

1.     Ubuntu 14.04 LTS安装

1.1      操作系统下载

1.2      系统安装

1.3      通过SSH远程访问

1.4      ROOT账号设置

1.5      扩展可用空间

1.6      安装desktop 用户界面

1.7      设置无线网络

2.     ROS系统安装

2.1      配置你的ubuntu

2.2      设置你的区域

2.3      设置你的镜像源列表

2.4      设置你的秘钥

2.5      安装加载

2.6      初始化rosdep

2.7      设置ubuntu环境

2.8      获得rosinstall

2.9      确认系统信息

2.10  到官网去找教程

 

 

 

 

 

 

 

 

1.     Ubuntu 14.04 LTS安装

1.1操作系统下载

因为是为了安装ROS系统,所以没有选择树莓派官网的Raspbian系统。虽然官网有Ubuntu15.04,但是基于稳定性和兼容性的考虑,这里还是选择了Ubuntu 14.04 LTS。

Ubuntu 14.04 LTS系统及安装地址:https://wiki.ubuntu.com/ARM/RaspberryPi

图1 系统下载

1.2系统安装

安装系统没什么难度和树莓派1一样,用到两个工具:SDFormatter (格式化TF卡)和Win32DiskImager(写入系统镜像)。


图2 格式化TF卡

直接点“格式化”;


图3 系统镜像写入

选择“2015-04-06-ubuntu-trusty.img”,点保存,然后Write,静静等待,写入速度跟你的TF卡有关。

1.3通过SSH远程访问

给RaspberryPi 2上电,插上显示器,插上网线。

Ubuntu系统貌似和Raspbian系统有一些不同,不能直接用SSH,必须用带有HDMI或者AV接口的显示器,先配置SSH,才能远程登录。

先进入root: sudo –s (默认root密码:ubuntu)

下载ssh:    apt-get install openssh-server

ssh下载完成后是自动安装和启动的。可用export | grep ssh 查看SSH是否启动 。

 

 

1.4ROOT账号设置((Ctrl+Alt+F1~F6切换本地终端tty1~tty6Ctrl+Alt+F7切换到图形界面)

Ubuntu 14.04镜像系统默认用户名:ubuntu,默认密码:ubuntu;

ROOT账号的密码:ubuntu;

或者sudo passwd root自行设置。

1.5扩展可用空间

由于不是Raspbian系统,不能用raspi-config命令来进行自动调整,只有手动调整了,首先:

sudo fdisk /dev/mmcblk0

删除第二分区(d,2);然后重新创建第二分区(n,p,2,enter,enter);最后保存退出(w)。然后重启系统之后输入:

sudo resize2fs/dev/mmcblk0p2

OK,扩展分区成功。

更新系统:sudo apt-get updatesudo apt-get upgrade

(注意:如果中间有操作不成功,先更新系统之后再试试)

1.6安装Desktop用户界面

有三种图形界面可以选择: Kubuntu使用的是KDE,Xubuntu使用的是Xfce,Lubuntu使用的是LXDE。不讨论电脑版Ubuntu使用的GNOME。

sudo apt-get install xubuntu-desktop  # or

sudo apt-get install lubuntu-desktop  # or

sudo apt-get install kubuntu-desktop  # etc

三种系统界面任选其一,本人使用的是KDE

1.7设置无线网络

1.6.1 检查USB无线网卡是否已经正确识别

将无线USB网卡插入树莓派后启动树莓派2,比较不建议热插拔,因为插入的一瞬间会有比较高的电流,如果电源输出不够可能导致树莓派2重启。用SSH进入shell界面后输入命令:lsusb

如果树莓派2已经正常识别,会出现如下的信息,可以看到USB无线网卡设备ID和芯片型号


以我的EDUP为例,使用的是Realtek RTL8188CUS的芯片。

先下载wifi必要的包:

sudo apt-get install wireless-tools wpasupplicant firmware-realtek

然后输入:iwconfig 确认一下包是否安装成功,若成功,显示如下:


如果出现了wlan0,那说明网卡已经正常工作了。(这里的示例是已经用usb无线网卡连接上网络了,所以会显示ESSID。)

输入如下命令可以搜索附近所有可连接的Wifi AP:iwlist wlan0 scan


(我这边的wifi比较多,返回信息太长了,所以就不贴过来了)

确定树莓派可以检测到你建立的wifiap之后,按照如下方法配置,使用如下命令获得wifi设置:

wpa_passphrase SSID名称 密码 

回显如下:


复制这段回显并保存到自己的配置文件中

sudo nano/etc/wpa_supplicant/wpa_supplicant.conf

然后配置/etc/network/interfaces

sudo nano/etc/network/interfaces

如果自动获取IP地址,配置内容如下:

allow-hotplug wlan0  

auto wlan0  

iface wlan0 inet dhcp  

pre-up wpa_supplicant -B w -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf  

post-down killall -q wpa_supplicant  

如果设置固定IP地址,配置内容如下:

allow-hotplug wlan0  

auto wlan0  

iface wlan0 inet manual  

  address 192.168.1.137  

  netmask 255.255.255.0  

  network 192.168.1.0  

  broadcast 192.168.1.255  

  gateway 192.168.1.1  

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface defaultinet dhcp 

最后连接网络(输入命令后会有一段回显信息):

sudo ifup wlan0

关闭连接网络(输入命令后会有一段回显信息):

sudo ifdown wlan0

 注意:设置成静态ip时,需要修改DNS解析:

因为以前是dhcp解析,所以会自动分配dns服务器地址

而一旦设置为静态ip后就没有自动获取到的dns服务器了

要自己设置一个

sudo vim /etc/resolv.conf

写上一个公网的DNS

nameserver 202.96.128.86

(注意:8.8.8.8是谷歌的DNS服务器,但是解析速度慢,还是找到一个国内的dns来用)

重启网卡:

sudo /etc/init.d/network restart


2.     ROS系统安装

2.1    配置你的ubuntu

在第一部分已经详细介绍了ubuntu的配置,这里要强调的是此安装步骤完全按照ros官网提供的教程安装,这里只是翻译过来方便大家使用。

官方教程地址:http://wiki.ros.org/indigo/Installation/UbuntuARM

2.2    设置你的locale

Boost和一些ROS工具需要系统locale被设置,你能如下设置它:

sudo update-locale LANG=C LANGUAGE=C LC_ALL=C LC_MESSAGES=POSIX

2.3    设置你的镜像源列表

设置您的计算机从packages.ros.org的ARM镜子接受软件。

由于资源有限,只为Trusty armhf(14.04)构建了有效的,稳定的发布包,ubuntu 14.04(Trusty armhf)是与ROS Indigo结合最完善的系统。

Ubuntu 14.04(Trusty armhf)设置镜像源命令如下:

sudo sh -c 'echo"deb http://packages.ros.org/ros/ubuntu trusty main" >/etc/apt/sources.list.d/ros-latest.list'

2.4    设置你的秘钥

wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -O - | sudoapt-key add -

2.5    安装加载

首先,确定你的Debian包索引是最新的:

sudo apt-get update

          ROS的各种包和工具并不是全部编译到ARM平台上了,因此有些包需要自己编译,同时你也能单独的去加载一些包。

ROS基础版( (Bare Bones) ROSpackage, build, and communication libraries. No GUI tools.):

sudo apt-get install ros-indigo-ros-bas

2.5.1          加载单独的包

你能加载一个特定的ROS包(替换PACKAGE)

sudo apt-get install ros-indigo-PACKAGE

e.g.

sudoapt-get install ros-indigo-navigation

                              找有效的包,使用:

apt-cache search ros-indigo

2.6    初始化rosdep

在你使用使用ROS之前,你需要安装和初始化rosdep。 rosdep使您可以轻松地安装你能编译的源代码的系统依赖并且rosdep也是运行一些核心零部件是必需的组件。

执行如下命令:

sudo apt-get install python-rosdep

sudo rosdep init

rosdep update

2.7    设置ubuntu环境

将ROS的系统变量自动添加到~/.bashrc中,每次启动shell时自动加载:

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

source ~/.bashrc

2.8    获得rosinstall

rosinstall是一个经常使用的ROS单独发行的命令行工具。用这个命令使你可以轻松地下载许多源代码树的ROS包。

在ubuntu上加载这个工具,运行:

sudo apt-get install python-rosinstall

 

2.9    确认系统信息

输入:lsb_release –a

回显如下:


2.10            到官网去找教程

关于ROS系统应用一些官方教程的地址:http://wiki.ros.org/ROS/Tutorials


0 0