クラウドコンピューティング化が加速しており、私たちの普段目に見えないところで動作をしているソフトウェアや仮想ハードウェアが増えています。このような時代だからこそ、コンピュータ基板を眺めながらプログラミングやデバイスを制御してみるのはいかがでしょうか。
ラズベリーパイ (英語表記: Raspberry Pi) は、元々は教育現場でプログラミングやデバイス制御などの学習のために開発された名刺サイズの小型コンピューターです。特にラズベリーパイと電子回路とを組み合わせて電子回路をプログラムで制御するという使い方が非常に向いていると思います。
ぜひ、一度手に取りハードウェアを身近に感じながらプログラミングをしてみませんか。
図1. 奥: “Raspberry Pi Model B”(旧式) 手前: “Raspberry Pi2 ModelB”
クアッドコアのCPUを搭載した最新モデル(Raspberry Pi2 Model B)でも五千円ほどで購入できます。この値段なら、いろいろと実験して壊してしまっても何とかなる金額ですね。例えば定期的にメールを送信したり、ディスプレイに案内を表示させたりするためだけに高価で消費電力の高いPCを用意するのであれば、安価で低消費電力のラズベリーパイを利用した方がコストを削減できます。
推奨OSはRaspbianと言うDebianベースのLinuxですので、単純にLinuxを利用した簡易サーバとしても利用可能です。もちろん、ディスプレイに接続してデスクトップPCとしてGUIベースでの操作も可能です。
特別なことをせずに、本体の基板上のGPIO(General Purpose Input/Output(汎用入出力))ポートから直接電子回路に結線が可能で、pythonなどで簡単に制御が可能です。
特殊な電源コードなどではなく、マイクロUSB端子にて電源が取れます。使用状況によりますが “Raspberry Pi2 Model B” の消費電力は多くても5ワット程度ですので、スペックを問わない処理の場合には数十ワットを消費するPCを起動しておくよりも省エネです。
名刺サイズで小さく、軽く、スマートフォン用の携帯バッテリーから電源も取れます。移動しながらも動作させ続けることもできます。特別なバッテリーでは無く、スマートフォンなどで利用する汎用バッテリーがそのまま利用可能です。
意外と大事なのがファンの音です。ラズベリーパイには冷却ファンも無いために、寝室などでつけっぱなしで置いておいても全く問題ありません。
図2: “Raspberry Pi2 Model B” にケースを付けたところ
材料を揃えましょう。ラズベリーパイ専用の何かが必要というわけではなく、一般的に広く使われているもので調達が可能というのも魅力の一つです。
ラスベリーパイにはいくつか種類があります。特別な理由がなければ最新モデルであるRaspberry Pi2 Model Bがよいと思います。ネット上(Amazonなど)や秋葉原などで購入可能です。
https://www.raspberrypi.org/products/
コンソール入力用に利用する一般的なキーボードです。
GUIで操作をしたいのであればマウスも接続した方がよいでしょう。
今となっては一般的なHDMIに対応したディスプレイ(古い機種はコンポジットも可能)です。
ラスベリーパイをネットワーク接続する場合に必要となります。
ラズベリーパイのOSをインストールするストレージとなります。容量は8GB以上のものを用意します。
マイクロUSB給電なので、スマートフォンやタブレット端末などの充電器がそのまま使えたりします。
PCなどから給電するよりも、ACアダプタから給電した方が安定します。
公式サイトからダウンロードした Raspbian などのイメージやインストーラーをマイクロSDカードに書き込むために必要となります。
※特に上記全てが必須というわけではなく、インストールの仕方や用途によっては例えばキーボード、ディスプレイなどが無くても動作が可能です。
ラズベリーパイで公式サポートされているOSはいくつもありますが、特別な理由が無ければRaspbianがよいです。
https://www.raspberrypi.org/downloads/
いくつものOSを用意しておいて、気分に応じてマイクロSDカードを差し替えて使うというのも面白いと思います。まずは、いろいろと試してみましよう。
あまり詳しくない方はインストーラーである “NOOBS” を起動させて、その後にインストールするOSを選択することもできます。
マイクロSDカードにコピーしたインストーラ、またはOSイメージから起動させ、セットアップを完了させます。ネットワーク設定などについては、debianと同様の方法で設定してください。
インストールについてはこちらのドキュメントなどが参考になります。
https://www.raspberrypi.org/documentation/
いかがでしたか。ユーザーの発想次第で小型のデスクトップPCにもサーバーにもなり、また電子工作のコントローラとしても使えるラズベリーパイの魅力をほんの一部ご紹介いたしました。
これを機会にぜひ一度触って頂き、ハードウェアやプログラミングの素晴らしさについて改めて感じて頂きたいと思っています。
図3: ラズベリーパイをテレビに接続し、Raspbianを起動 (Raspberry Pi Model B)
今回は、ラズベリーパイの初期設定が完了しました。次回のコラムでは、いよいよ非常にシンプルな電子回路と接続してLEDをPythonでコントロールしてみたいと思います。
LEDが点灯、点滅するだけでは面白くないと思われるかもしれませんが、例えば特定のメールを受信した時にLEDを点灯させたり、温度センサーと連動させて室温が30度以上になったらLEDを3秒おきに点滅させるなど、発想次第で色々なことが簡単に実現できます。
一般的なPCでこのようなことを実現しようとするとUSBケーブルに特殊なデバイスを接続し、その先に更に電子部品を接続することはできるかと思いますが、なにぶん敷居が高いです。ラズベリーパイなら直接本体のGPIOポートに配線すればよいので、特別なものは必要ありません。
次回もお楽しみに!
図4: GPIOの “Hello world!”と言うべきLEDの点灯試験
記事は、予告なく変更または削除される場合があります。
記載された情報は、執筆・公開された時点のものであり、予告なく変更されている場合があります。
また、社名、製品名、サービス名などは、各社の商標または登録商標の場合があります。