イントロダクションRaspberry Pi ―仕様説明からセットアップまで 前編

2013年8月7日(水)
インプレスジャパン コンピューターテクノロジー編集部

※この記事は、書籍『Raspberry Piユーザーガイド』の内容を、Think IT向けに特別にオンラインで公開しているものです。詳しくは記事末尾の書籍紹介欄をご覧ください。記事の後半はこちら

Rasberry Pi ボードは驚くほど小さく、クレジットカードほどの大きさにぎっしりと処理能力が詰め込まれている。Raspberry Pi はすばらしい能力を秘めているが、ラズベリー畑に飛び込む前に、頭に入れておかなければならないことがいくつかある。

ARM とx86

Raspberry Pi システムの心臓部は、Broadcom BCM2835 SoC(System-on-Chip)マルチメディアプロセッサである。つまり、ボードの中央にあるメモリチップの下に隠れたこのたった1 つのチップに、CPU やGPU、オーディオや通信ハードウェアを含めた、システムコンポーネントの大部分が組み込まれている(図1-1)。

ただし、BCM2835 がデスクトップPC やノートPC に搭載されているプロセッサと異なるのは、このSoC の設計だけではない。BCM2835 は、ARM と呼ばれるPC 向けCPU(x86)とは別の命令セットアーキテクチャ(ISA)を採用している。

1980 年代にAcorn Computers によって開発されたARM アーキテクチャは、PC 環境ではあまり見かけないISA だが、モバイルデバイスでは他を圧倒している。あなたのポケットに入っている電話には、ARM ベースの処理コアが少なくとも1 つは搭載されているはずだ。シンプルなRISC(Reduced Instruction Set Computer)アーキテクチャに省電力機能が組み合わされた結果、ARM は、消費電力が多いCISC(Complex Instruction Set Computer)アーキテクチャのチップを押し退けて、その地位を揺るぎないものにしている。

Raspberry Pi がオンボードのMicro-USB コネクタに提供される5V 1A の電源で稼働する秘密は、ARM ベースのBCM2835 にある。デバイスにヒートシンクが見当たらないのも、同じ理由だ。チップの消費電力が少ないため、複雑なタスクを処理している最中でも、排熱はほとんどない。

ただしそれは、Raspberry Pi に従来の PC ソフトウェアとの互換性がない、ということでもある。デスクトップ PC やノート PC のソフトウェアの大半は、Intel や AMD、VIA といったプロセッサのベースである x86 アーキテクチャに基づいている。このため、ARM ベースの Raspberry Pi では、そうしたソフトウェアは動作しない。

BCM2835はARM11ファミリと呼ばれるプロセッサデザインを採用している。ARM11ファミリは、ARMv6 と呼ばれる命令セットアーキテクチャに基づいた設計になっている。ARMv6 は軽量にして強力なアーキテクチャだが、ARM Cortex プロセッサファミリで採用されている ARMv7 という上位版の強力なライバルがいる。残念ながら、ARMv7 用に開発されたソフトウェアは、x86 用に開発されたソフトウェアと同様に、Raspberry Pi の BCM2835 では動作しない。

だからといって選択肢が限られるわけではない。開発者が BCM2835 に合わせてソフトウェアを書き換えるのは一般に可能である。また、後述するように、ARMv6 命令セット用のソフトウェアはいくらでもある。Raspberry Pi がこの調子で人気を伸ばせば、その数は増える一方だろう。プログラミングの経験がまったくなくても、Raspberry Pi 用のソフトウェアを開発することは可能である。本書では、その方法についても説明する。

Windows と Linux

Raspberry PiとデスクトップPC/ノートPCとの間には、サイズや価格の他にも重要な違いが1つある。それは、オペレーティングシステム(OS)、つまりコンピュータを制御するための基本ソフトウェアである。

最近のデスクトップ PC /ノート PC の大半は、OS に Windows か Mac OS X のどちらかを採用している。どちらのOSもクローズドソースであり、専用の技術を使って非公開の環境で開発されている。 これらの OS がクローズドソースと呼ばれている理由は、ソースコード、つまり OS の設計図が公開されていないことにある。クローズドソースのソフトウェアの製法は極秘であり、ユーザーは完成したソフトウェアを入手できるが、それがどのように作成されているのかはまったくわからない。

Raspberry Pi は GNU/Linux と呼ばれる OS を実行する設計になっている(これ以降は、単に Linux と呼ぶことにする)。Windows や Mac OS X とは異なり、Linux はオープンソースである。つまり、 OS の完全なソースコードをダウンロードし、必要に応じて変更することが可能である。秘密の部分はどこにもなく、すべての変更が完全に公開されている。Raspberry Pi に合わせて Linux をすばやく移植できたのは、このオープンソースの開発理念のおかげである。本書の執筆時点では、Debian、Fedora Remix、Arch Linux など、さまざまな Linux ディストリビューション(配布パッケージ)がRaspberry Pi の BCM2835 チップに移植されている。

これらのディストリビューションはさまざまなニーズに合わせて開発されているが、すべてのディストリビューションに共通しているのはオープンソースであることだ。また、全体的に見て、すべてのディストリビューションに互換性がある。つまり、Debian システムで書かれたソフトウェアは Arch Linux で問題なく動作するし、Arch Linux システムで書かれたソフトウェアは Debian で問題なく動作する。

Raspberry Pi だけが Linux を採用しているわけではない。デスクトップ PC、ノート PC、さらにはモバイルデバイス用のディストリビューションがそれこそ数百種類も提供されているし、Googleの AndroidプラットフォームはLinuxコアに基づいて開発されている。Raspberry PiでLinuxを使ってみて気に入ったら、手持ちの他のコンピューティングデバイスに追加してみるのもよいだろう。Linux は現在インストールされている OS と問題なく共存できるはずだ。そのようにすれば、両方の利点を享受できるし、Raspberry Piが利用できない場合はいつもの環境に戻ればよい。

ARM と x86 の違いを挙げたついでに、Windows、Mac OS X、Linux の実装上の違いについてもまとめておこう。Windows または Mac OS X 用に書かれたソフトウェアは、Linux では直接動作しない。ただありがたいことに、一般的なソフトウェア製品の圧倒的大多数については、互換性のある代替ソフトウェアが山ほどある。しかも、その大部分は自由に使用でき、OS と同じようにオープンソースである。

Raspberry Pi を使用するための準備

Raspberry Pi と他のコンピューティングデバイスとの基本的な相違点を理解したところで、Raspberry Pi を使用するための準備に取りかかろう。Raspberry Pi を静電気防止袋から取り出し、非電導の平らな場所に置いたら、準備は完了である。

ディスプレイの接続

Raspberry Pi を使用するには、ディスプレイを接続する必要がある。Raspberry Pi は、コンポジッ 1 トビデオ、HDMI ビデオ、DSI ビデオの 3 種類のビデオ出力をサポートしている。以下で説明するように、コンポジットビデオと HDMI ビデオを利用するのは容易だが、DSI ビデオの場合は専用の特別なハードウェアが必要になる。

コンポジットビデオ

コンポジットビデオは、Raspberry Pi をアナログテレビなどのディスプレイデバイスに接続するためのもので、Raspberry Pi の上に付いている RCA フォノコネクタという黄色とシルバーのコネクタを通じて提供される(図 1-2)。RCA フォノコネクタは画像の色(赤、緑、青)を合成し、1 本のケーブルでディスプレイデバイスに信号を送信する。

他に利用できるディスプレイデバイスがなければ、コンポジットビデオ接続で Raspberry Pi の準備をすることになる。ただし、画質はあまりよくない。コンポジットビデオ接続は干渉を受けやすく、クリアではなく、解像度も限られている。要するに、スクリーン上に一度に表示できるアイコンやテキスト行の数は限られている。

HDMI ビデオ

HDMI(High Definition Multimedia Interface)コネクタを使用すれば、より高品質な画像を表示できる(図 1-3)。アナログのコンポジットビデオ接続とは異なり、HDMI コネクタは PC のディスプレイとハイビジョンテレビの両方で、高精細な表示を実現する。HDMI コネクタを使用する場合は、最近のほとんどのハイビジョンテレビで、フル HD(1,920×1,080)解像度で映像を表示できる。この解像度では、スクリーン上にかなり細かな部分までが映し出される。

既存の PC 向けディスプレイで Raspberry Pi を使用したいが、ディスプレイに HDMI コネクタがないとしよう。そのような場合でも問題はない。HDMI ケーブルで送信されるデジタル信号は、DVI(Digital Video Interconnect)と呼ばれる一般的なコネクタ規格と互換性がある。HDMI-DVI 変換ケーブルを購入すれば、DVI-D 接続を使用しているディスプレイと Raspberry Pi の HDMI コネクタを接続できるようになる。

残念ながら、VGA コネクタに Raspberry Pi を直接接続することはできない。VGA コネクタは、通常はシルバーと青のかまぼこ型をした D-Sub 15 ピンコネクタである。デジタルの DVI 信号をアナログの VGA 信号に変換するためのアダプタも販売されているが、値が張る上にかさが大きい。このため、DVI または HDMI コネクタが付いた新しいディスプレイを購入するほうが得策である。

DSI ビデオ

Raspberry Pi にはビデオ出力がもう 1 つある。プリント基板の SD メモリカードスロットの上に付いている、プラスチックの層で保護された小さなリボンコネクタである。これは DSI(Display Serial Interface)という規格のビデオ出力で、タブレットやスマートフォンのフラットパネルディスプレイで使用されている。DSI コネクタが付いたディスプレイが店頭に並ぶことはほとんどなく、通常は小型の内蔵型システムを作成するためのキットとして販売されている。DSI ディスプレイを接続するには、Raspberry Pi の対応するコネクタにリボンケーブルを差し込めばよいが、初心者にはテレビやPC 向けディスプレイの使用をお勧めする。

オーディオの接続

Raspberry Pi の HDMI コネクタを使用する場合、オーディオの接続は簡単である。うまく認識されれば、HDMI コネクタからビデオ信号とオーディオ信号を両方ともデジタル送信できる。つまり、ハイビジョンテレビなどのディスプレイデバイスにケーブルを 1 本つなげば、音と映像を両方とも楽しむことができるのだ。

Raspberry Pi を標準的な HDMI ディスプレイに接続する場合、必要となる作業はほとんどない。ひとまず、ケーブルをつなぐだけでよい。Raspberry Pi を DVI-D ディスプレイにアダプタかケーブルで接続する場合、オーディオ信号は送信されない。これは HDMI と DVI の主な違いである。HDMI はオーディオ信号を送信できるが、DVI は送信できない。

DVI-D ディスプレイかアナログテレビを使用する場合は、Raspberry Pi の黄色いフォノコネクタの隣にある黒い 3.5mm オーディオジャックでアナログオーディオを送信できる(図 1-2)。これは家庭用オーディオ機器のヘッドフォンやマイクに使用されているコネクタと同じもので、回路の設計もまったく同じだ。このコネクタにヘッドフォンをつなげば、すぐにオーディオを聴くことができる。

Raspberry Pi にヘッドフォンを直接差してもよいが、ボリューム(音量)が十分ではないかもしれない。できれば、パワードスピーカーに接続するとよいだろう。スピーカーに内蔵されたアンプによって信号が聞き取りやすいレベルにまで増幅されるはずだ。

もう少し固定的なものがよければ、3.5mm のコネクタが付いた PC スピーカーを使用するか、アダプタケーブルを購入するとよいだろう。コンポジットビデオを使用している場合は、3.5mm-RCA フォノケーブルがあると便利である。この場合は、テレビの黄色いコネクタのそばにある赤と白の 2 つのRCA フォノコネクタに接続し、ステレオオーディオ信号をテレビに伝送する。

Raspberry Pi をアンプやステレオシステムに接続する場合は、3.5mm-RCA フォノケーブルか 3.5mm-3.5mm ケーブルが必要になる。どちらのケーブルも家電量販店で安く手に入る。また、Amazon などのオンラインショップでも扱っている。

キーボードとマウスの接続

Raspberry Pi の映像/音声出力デバイスを選択したところで、次は入力デバイスについて考えてみよう。最低でもキーボードは必要であり、大半のユーザーにはマウスやトラックボールも必要だろう。

まずは悪い知らせからだ。手持ちのキーボードやマウスが PS/2 コネクタで接続するタイプのものである場合は使用できない。つまり、キーボードに付いているプラグが、馬蹄形にピンが配列された丸いプラグである場合だ。PS/2 コネクタは使用されなくなっており、Raspberry Pi では、周辺機器を USB(Universal Serial Bus)コネクタで接続することを想定している。

Model A と Model B のどちらを購入したかによって、Raspberry Pi に USB コネクタが 1 つ付いている場合と 2 つ付いている場合がある(図 1-4)。Model B を使用している場合は、キーボードとマウスをこれらのコネクタに直接接続できる。Model A を使用している場合、2 つの USB デバイスを同時に接続するためには、USB ハブを購入する必要がある。

Raspberry Pi を使用するなら、USB ハブに投資するのは悪くない選択だ。Model B を購入した場合でも、キーボードとマウスを接続すればコネクタが両方とも塞がってしまうため、外付けの光学ドライブやストレージデバイス、ジョイスティックなどに使用できるコネクタは残っていない。USB ハブを購入する場合は、必ず AC アダプタが付属するセルフパワード USB ハブを購入すること。バスパワード USB ハブは小型で価格も安いが、外付け CD ドライブや HDD のような消費電力が大きいデバイスを稼働させるほどの性能はない。

使用する電源ソケットの数を減らしたい場合は、Raspberry Pi の USB 電源ケーブルをセルフパワードUSB ハブに接続すればよい。このようにすれば、Raspberry Pi の電源を USB ハブから直接取れるので、専用の電源ソケットと電源アダプタは要らなくなる。なお、この方法がうまくいくのは、他の周辺機器に必要な電力の他に、700mA を Raspberry Pi の USB コネクタに供給できる電源が USB ハブに付いている場合だ。

キーボードとマウスを接続する方法は簡単だ。Model B の場合は直接、Model A の場合は USB ハブ経由で、USB コネクタにプラグを差し込むだけである。

ストレージについて

もう気づいているかもしれないが、Raspberry Pi には HDD を直接接続できず、代わりに SD(Secure Digital)メモリカードを使用する。SD メモリカードは、一般にデジタルカメラで使用されている SSD(Solid-State Drive)システムである。ほとんどの SD メモリカードは Raspberry Pi に対応しているが、OS をインストールするため、必要なファイルをすべて格納するのに少なくとも 2GB の容量が必要となる。

OS があらかじめロードされた SD メモリカードは、Raspberry Pi の公式ストアや、インターネット上のその他多くの Web サイトで提供されている。そうした SD メモリカードを購入するか、そのような SD メモリカードが Raspberry Pi にバンドルされている場合は、SD メモリカードスロットにそれを差し込むだけでよい。そうでない場合は、OS を SD メモリカードにインストールして、使用できる状態にする必要がある。この作業をフラッシュと呼ぶ。

SD メモリカードによっては、他よりも高性能なモデルや、Raspberry Pi にまったく対応しないモデルもある。Raspberry Pi に対応することが確認されている SD メモリカードモデルの最新リストについては、 eLinux Wiki サイトを参照のこと。

この記事のもとになった書籍
Raspberry Piユーザーガイド

Raspberry Piユーザーガイド

発売後1年で100万台以上を出荷し、イギリスを中心に世界的なブームとなっているカードサイズのコンピューター「Raspberry Pi」。本書では、Linuxのセットアップやコマンドの使い方をはじめ、環境の構築方法などの基本的な情報を解説しています。

Eben Upton、Gareth Halfacree 著
価格:2,940円 (本体 2,800円+税)
発売日:2013年3月15日発売
ISBN:978-4-8443-3374-6
発行:インプレスジャパン

 
著者
インプレスジャパン コンピューターテクノロジー編集部

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています