RaspberryPi 3B+にROSを導入する
Simple Wiki Based Contents Management System
Home Projects Memo Misc Topics Software
関心分野 >> RaspberryPi 3B+にROSを導入する

RaspberryPi 3B+にROSを導入する

Raspberry Pi 3B+は、2018年7月現在で、最新モデルであり、Raspberry Pi 3からCPU, LAN,無線LANおよびBluetoothが更新されたCPUボードです。LANの最大速度が3倍と無線LANが5GHzに対応したのは大きいのですが、最新のRaspbianでないと起動しないのが難点です。
RaspberryPiにROS(Robot Operating System)をインストールするには、UbuntuMateを導入するのが一番早いのですが、現在のところWebで配布されているイメージでは起動することができません。
このサイトでは、UbuntuMateを起動する方法について書いておきます。

UbuntuMateのダウンロードし、インストール用microSDカードの作成

まずは、Ubuntu Mate RaspberryのページからRaspberry Pi 2 or 3のイメージをダウンロードします。
次に、microSDカードに、ダウンロードしたイメージを焼いてください。Ubuntu Mate Raspberryのページには、LinuxのホストPCを用いてイメージを焼く方法が記載されていますが、Windowsの場合には、イメージの展開には、7zipを使い、イメージを焼くには、Win32DiskImagerを使って下さい。
ここまでで、RaspberryPi2または3の起動イメージのmicroSDカードができたのですが、このままでは、3 B+ では虹色のテストパターンから先に進みません。
そのため、Raspbianの起動イメージから、必要なファイルをコピーします。
修正には、PI_ROOTの領域(ext4ファイスシステム)の部分にあるファイルをコピーする必要があります。そのため、ext4のファイルシステムにアクセスできるホストマシン(Linuxマシン)または Ext2Fsdのようなソフトウェアが必要です。ただし、Fxt2FsdをWindows10にインストールするとシステムが不安定になる場合がありますので、自己責任でお願いいたします。
可能であれば、Linuxマシンをお使いください。
作成したmicroSDカードはPI_BOOTとPI_ROOTの2つのパーティションに分割されています。
修正は、
  • PI_BOOTについては、bootcode.bin, fixup.dat, start.elf,kernel7.imgの上書きと bcm2710-rpi-3-b-plus.dtb の追加
  • PI_ROOTについて /lib/modules/4.14.54*+ と /lib/firmware/brcm/ のコピー
です。
上記の修正が終われば3B+で起動でき、インストールすることができますが、他のボードでは起動しないと思います。また、3B+で可能になっているUSBメモリからの起動もこのままでは正常に動作しません。
USBメモリから起動するには、PI_ROOTの /etc/fstab と PI_BOOTのcmdline.txtを修正する必要があります。
このページに、SDメモリ用のインストールイメージとUSBメモリ用のイメージを添付していますので、ダウンロードして、展開し、SDカード(またはUSBメモリ)へ書き込めばUbuntuMateのインストールメディアの完成です。
SDカードを3B+に装着して、初期設定を行って下さい。

ROS Kineticのインストール

UbuntuMateのインストールが終われば、ROS Kineticをインストールします。
このページのイメージは、16.04になっていますので、通常のROSのインストールと手順は同じです。

資料