BeagleBone Black(BBB) 是一种基于ARM Cortex A8处理器的低成本开发平台。此开发板是基于发行版制作的。由一支希望统一嵌入式系统发行版的小型团队开发,他们希望操作系统是稳定且用户是友好的。
考虑到社区的开发人员需要一个具有一些通用输入/输出(GPIO)引脚的机载机器人设备,德州仪器设计了BeagleBone Black。BeagleBone Black平台是BeagleBone的改进版。开发版的主要特性包括ARM Cortex A8处理器(时钟频率为1GHz,内存为512MB),具有以太网、USB接口、HDMI、46引脚GPIO接口。这些GPIO 可以设置为I/O、ADC、脉宽调制,以及I2C、SPI或者UART等通信协议接口。GPIO是一种直接将传感器和执行器与BeagleBone连接的简单方法。
我们选择在Ubuntu ARM上安装ROS因为这个发行版更常用,推荐在运行ROS的平台上使用Ubuntu 13.04 ARM raring armhf的镜像。此外还可以用于其他基于ARM 的开发版,如UDOO OdroioU3、Odroio X2或Gumstick.
一、在安装ROS 到BeagleBoneBlack之前,需要做一些准备工作。
首先,必须安装一个与ROS兼容的ubuntu ARM发行版。所以需要ubuntu ARM 的安装镜像。可以通过下面的命令使用wget 获得ubuntu 13.04 Raring armhf:
$wget https://rcn-ee.net/deb/flasher/raring/BBB-eMMc-flasher-ubuntu-13.04-2013-10-08.img
下载镜像,将其安装到SD卡上:
1.将BeageBoneblack Ubuntu镜像放到micro SD卡上,并插入到封闭的BBB。还要确保有键盘、鼠标、显示器和以太网连接。
2.同时按住“开始”按钮,为电源板供电。继续按住“开始”按钮,直到USER LED开始闪烁,你应该使用一个5V外部电源,USB电源可能无法正常工作。
3.大约一分钟之后屏幕应显示登录提示。
4.移开板大约10分钟后,图像将会闪烁到eMMC。
5.经过十分钟后,4个LED应牢固而不闪烁。取出mirco SD卡,然后重新接通电源。
6.要花一两分钟才能启动到登录屏幕用户是:ubuntu
密码是:temppwd 注意:输入密码的回音是关闭的
7.你现在应该在ubuntu的命令终端上,你的BeagleBone Black将从此开始启动。
7.窗体顶端
窗体底端
一旦在开发平台上安装好ubuntuARM,就需要配置BeagleBone Black的网络接口以实现网络访问,必须配置如IP、DNS和网关等网络配置。最简单的方式就是在另一台计算机上挂载SD卡并编辑 /etc/network/interfaces 设置好网络后,为了安装ROS中如CMake、Python或Vim等可能需要的功能包、程序和库,使用以下命令:
$ sudo apt-get install cmakepython-catkin-pkg python-empty python-nose python-setuotools libgtest-devbuild-essential
$ sudo apt-get install g++ curl pkg-configlibv41-dev libjpeg-dev build-essential libssl-dev vim
用于BeagleBoneBlack的操作系统在微型SD卡上配置的空间为1至4GB,如果需要使用一个大的ROS Hydro功能包,我们可以使用空间更大的SD卡,重新分区,扩大文件系统占可用空间的比例。通过下列命令可以实现以下目的:
1. 需要切换到超级用户模式,输入以下的命令并输入密码:
$ sudo su
2.查看SD卡的分区信息:
$fdisk /dev/mmcblk0
3.输入p,可见SD卡的两个分区:
$ p
4.输入‘d’删除分区,然后输入2指定要删除的分区/dev/mmcblk0p2:
$ d
$ 2
5.输入n,创建一个新分区;如果输入p将创建一个主分区,输入2指定第二个分区的编号。
$ n
$ p
$ 2
6.如果没有问题,输入w保存这些操作,或者按ctrl+Z组合键取消更改:
$ w
7.完成后重启开发版
$ reboot
8.完成重启后,再次切换到超级用户模式:
$ sudo su
9.最后,运行下面的命令执行操作系统内存文件系统的扩容。
$ resize2fs /dev/mmcblk0p2
然后开始安装ROS,不能安装ROSfull-desktop,必须单独安装每一个功能包。
二、配置主机和source.list文件
现在开始配置主机:
$sudo update-locate LANG=C LANGUAGE=C LC_ALL=C LC_MESSAGES=POSIX
之后我们将配置源列表,目前活跃的发行版是ubuntu 13.04 Raring armhf,它也是ubuntu ARM 最受欢迎的版本。
$ sudo sh -c ‘echo “deb http://packages.namniart.com/repos/rosraring main” > /etc/apt/sources.list.d/ros-latest.list’
三、设置密钥
$wget http://packages.namniart.com/repos/namniart.key-O - | sudo apt-key add –
四、安装ROS 功能包
在安装ROS 功能包之前,必须更新系统以避免出现库依赖的问题。
$ sudo apt-get update
ROS-base 会安装包括编译和通信库以及以及ROS 功能包,但不包括GUI工具:
$ sudo apt-get install ros-hydro-ros-base
我们可以按照下面的命令来安装指定的ROS功能包,运行下面的命令:
$ sudo apt-get install ros-hydro-PACKAGE
如果我们需要查找在BeagleBoneBlack中可用的ROS功能包,运行下面的命令:
$ apt-cache search ros-hydro
例如,下面的包为ROS正常工作的基础,可以使用apt-get单独安装:
$ sudo apt-get install ros-hydro-ros
$ sudo apt-get install ros-hydro-roslaunch
$ sudo apt-get installros-hydro-ros-rosparam
$ sudo apt-get install ros-hydro-rosservice
五、初始化rosdep
在使用ROS之前,必须首先安装并初始化rosdep命令行工具,可以轻松的安装库并解决准备编译源代码的系统依赖问题,以及提供ROS 运行需要的一些核心组件。可以用下面的命令进行安装并初始化rosdep:
$ sudo apt-get install python-rosdep
$ sudo rosdep init
$ sudo update
六、在BeagleBone Black中配置环境:
添加下面ROS 环境变量到bash中,这样它们每次命令行启动时就可以自动加载:
$ echo “source /opt/ros/hydro/setup.bash” >> ~/.bash
$ source ~/.bashrc
如果在系统中有多个版本的ROS必须注意.bashrc 的变量设置为正在使用的版本。
如果我们想要在当前命令行中配置环境,运行命令如下:
$ source /opt/ros/hydro/setup.bash
七、在BeagleBone Black中安装rosinstall
Rosinstall 是ROS中一个常见的命令行工具,使安装功能包更方便。需要在 ubuntu 中使用下面的命令进行安装:
$ sudo apt-get install python-rosinstall