今日のおすすめ

PICK UP

2016.01.18

特集

顔認識もロボット制御も! 話題の「Raspberry Pi」で作ってみた

ここ数年、電子工作の人気が高まっていることをご存知でしょうか。電子工作と聞くと、「一部のマニアだけが楽しんでいる」といった印象が根強いかもしれませんが、それはもはや過去のものとなりつつあります。
今や、これまでは電子工作とは縁遠かった人が電子工作を始めています。また、電子工作を愛する女子大生ハルちゃんが主人公のマンガ『ハルロック』が人気となったこともあり、幅広い層の人たちが「電子工作って面白そう」という印象を持つようになっています。
この人気に大きく貢献しているのがRaspberry Piという超小型コンピューターです。そこで今回は、講談社ブルーバックス刊『実例で学ぶRaspberry Pi電子工作 作りながら応用力を身につける』を取り上げます。電子工作の醍醐味を、Raspberry Piを通じて体験してみましょう。

電子工作と親和性の高いRaspberry Pi

Raspberry Pi 写真画像
図1 左からRaspberry Pi Model B+とRaspberry Pi 2 Model B。いずれも名刺サイズの大きさである

Raspberry Pi(ラズベリーパイ)は2012年に英国で誕生した、名刺サイズの超小型コンピュータです(図1)。プログラミングの学習用に作られたものですが、ものづくりの作品に搭載するコンピュータ、という電子工作用でも人気を集めています。

人気の理由のひとつに、電子工作との親和性の高さが挙げられます。通常のPCと異なり、Raspberry Piには電子工作のパーツであるLEDやモーターなどを直接つないで制御することができます。たとえば、複数のLEDをRaspberry Piにつないで点灯パターンを制御したり、サーボモーターをRaspberry Piにつないでロボットアームの関節を制御したりできるのです。

Raspberry Piと電子工作のパーツを使えば、何か作れそうな感じがしてきますよね。どんなものが作れるでしょうか。Raspberry Piによる電子工作の楽しさを十分実感できるものから作れるとよさそうですね。

実例で学ぶRaspberry Pi電子工作 作りながら応用力を身につける』では、電子工作の世界では定番とも言える作例を6つ取り上げ、その作り方を丁寧に解説します。作品づくりをとおして、電子工作の基礎的な知識にも触れることができるので、電子工作にハマっていきたいという人には、特にオススメです。

Raspberry Piを使うために最低限必要なもの

Raspberry Pi用のケース
図2 GPIOポートの部分に穴の空いたケース。保護用ケースに収めておくと安心だ。ケースが用意できない場合、電流を通さないものの上にRaspberry Piを置き、濡れた手で触らないなどの注意が必要
Raspberry Piソフトウェアダウンロードページ

図3 Raspberry Piソフトウェアダウンロードページ。NOOBSをここよりダウンロードする

Raspberry Piを使うには、Raspberry Pi本体と共にいくつか用意しなければならない物品があります。WindowsやMacなどのパソコンは買ってきたらすぐに電源を入れて操作できますが、Raspberry Pi本体だけでは、電源すら入りません。

Raspberry Piを使うために最低限必要なものは以下のとおりです。「あれこれ買い集めるのは面倒」と思うかもしれませんが、みなさんがすでにお持ちのものもあるはずです。使っていないマウスやキーボード、HDMI接続のディスプレイなどがあれば、Raspberry Piで再利用できるかもしれませんよ。

物品 必須 備考
Raspberry Pi Raspberry Pi Model B+かRaspberry Pi 2 Model Bが対象
8GB以上のmicroSDカード 高速なクラス10のものを推奨
Raspberry PiへOSをインストールしたり、ユーザーの作成データを保存するのに必要
インターネットに接続されたPC microSDカードの読み書きができること
microSDカード対応マルチカードリーダー/ライター microSDカードの読み書きができないPCでは必須
USBキーボード 実例で学ぶRaspberry Pi電子工作 作りながら応用力を身につける』では有線の日本語キーボードを前提に解説。PS/2タイプは使用不可
USBマウス 有線のマウスを前提に解説。PS/2タイプは使用不可
マイクロUSB接続の電源(1.2A以上推奨) 「USB充電対応ACアダプタ」と「USB(A)オス-USB(Micro-B)オスタイプのUSBケーブル」の組み合わせでもOK
ディスプレイケーブル
(右の2つのいずれかを選択)
HDMI接続可能なPC用ディスプレイケーブルおよびHDMIケーブル。PC用の他、HDMI搭載液晶テレビも使える
DVI-D接続可能なPC用ディスプレイおよびDVI-HDMI変換ケーブル
Raspberry Pi用のケース 任意だがあると安心。GPIOポートの所に穴が開いているもの(図2)
ネットワーク接続用機器 Raspberry Piをネットワークに接続するためのもの

これらを用意したら、無料で配布されているRaspberry Pi用のOS(図3)をダウンロードし、Raspberry Piにインストールします。『実例で学ぶRaspberry Pi電子工作 作りながら応用力を身につける』では、OSのダウンロードからインストール、セットアップの方法までを1章で解説しています。セットアップまでの作業で行う操作は、特別難しいものではありません。WindowsやMacといったパソコンを普段使っている人なら問題なく行えるでしょう。

さて、このあとは『実例で学ぶRaspberry Pi電子工作 作りながら応用力を身につける』で作る作品の課題例を3つ紹介します。それぞれの作例がわかりやすくなるように、動画も掲載していますので、ぜひご覧ください。

【課題例1】お天気Webサービスを利用して天気予報をLCD(小型液晶)に表示する

温度センサ、小型液晶、タクトスイッチを接続したブレッドボード
図4 Raspberry Pi(左)と、温度センサ、小型液晶、タクトスイッチを接続したブレッドボード(右)
今日の天気予報を表示させた例 写真

図5 今日の天気予報を表示させた例。ブレッドボード中央のタクトスイッチを押すと、明日の天気が表示される

インターネットで提供されている天気予報サービスのデータをダウンロードして小型液晶(LCD)に表示する、天気予報機能付きの温度計を作成します。
Raspberry Piはコンピュータのカテゴリに属しますから、インターネットに接続してデータをやりとりすることを得意としています。その機能を活用した課題例です。

この課題では、LCDモジュールや温度センサモジュールをはんだづけするなどして組み立てていきます(図4)。はんだ付けは電子工作の楽しみのひとつですよね。
また、天気予報データはLivedoorが提供している「Weather Hacks(気象データ配信サービス)」内の「お天気Webサービス(Livedoor Weather Web Service / LWWS)」を活用します。

上記で紹介したお天気WebサービスのデータをRaspberry Piが読めるようにしたり、天気予報のデータと温度センサのデータを結合してLCDに表示するのがこの課題の目標です。本書では実際のプログラム例を交え、丁寧に手順を解説しています。

実際の工作例を下記の動画で見てみましょう。図5のようにタクトスイッチを切り替えることで、今日の天気や温度、明日の天気を表示します。

クリックして動画を再生
【課題例1】の動画を見る

【課題例2】OpenCVによる画像処理と対象物追跡を実行する

カメラの前に人の絵を置いて動かす様子
図6 サーボモーターを搭載し、自由に動かせるカメラモジュールとRaspberry Piを接続。カメラの前に人の顔写真を持っていき動かすと、カメラがそれを追跡する
モニター上で顔を認識する様子 写真

図7 赤枠が人の顔と認識した箇所。カメラが顔を認識し、写真に合わせて動く様子が、カメラモジュールからの映像でも分かる

OpenCV(正式名称Open Source Computer Vision Library)はコンピュータで画像や動画を処理するためのさまざまな機能を提供するライブラリです。

例えばデジタルカメラやスマートフォンのカメラには、撮影時に人の顔を見つけ、色を自動で調整する機能を持つものがあります。映像から顔を見つけることや色の調整は画像処理で実現されますが、この画像処理を行うためには自分でプログラムを書く必要があります。しかし、OpenCVを用いると、数行の命令の呼び出しで高度な画像処理を簡単に実現できます。そのため、OpenCVは画像処理を必要とするプログラマや電子工作ファンに大人気です。

本書の課題例でも、このOpenCVを利用します。

この例では、カメラモジュールを用いて画像の2値化とエッジ検出、そして映像中の円や顔の検出を行います。さらに、その結果を用いて映像中の円や顔をカメラ台で追跡するという演習を行います。

その工作例を、下記の動画をクリックしてご覧ください。顔を検出している様子と、顔写真が動くのに合わせてカメラが動いているのが分かります。
映像内でリアルタイムに画像を処理するには、高い計算能力を持ったコンピュータが求められますが、Raspberry Piのような超小型のコンピュータでも、複雑な画像処理を行えるのです。

クリックして動画を再生
【課題例2】の動画を見る

【課題例3】6脚ロボットを制御する

6脚ロボットの進行方向を制御している様子 写真
図8 タブレットのコントローラーから6脚ロボットの進行方向を制御している様子

6個のサーボモーターを使って6脚ロボットを作成します。
6個のサーボモーターの制御のために、「サーボドライバー」とよばれる電子部品を利用します。このように、電子部品を別途追加することで、Raspberry Piを用いた電子工作の可能性が広がります。

最終的な目標は、スマートフォンやタブレットのブラウザからこの6脚ロボットを操作することです。

下記の動画でその工作例を見てみましょう。タミヤの工作キットで作成した6脚ロボットはカメラモジュールを搭載しており、タブレットのブラウザにカメラからの映像が出力されます。タブレットでその映像を見ながら、ロボットをコントロールすることができます。

クリックして動画を再生
【課題例3】の動画を見る

Raspberry Piを使った電子工作の例、いかがでしたか?
さまざまな電子部品を組み合わせることで、実に多彩な電子工作を楽しめるのがRaspberry Piの最大の特長といえるでしょう。
ブルーバックスのサポートページでは、本書で用いた演習用のサンプルプログラムファイルや回路の配線図、応用に活用できるさまざまな追加データを配布しています。本書と合わせてぜひご活用ください。
電子工作は、ちょっとしたアイディアの思いつきから試行錯誤を繰り返し、機能を実現していく過程にこそ醍醐味があります。あなたのアイディアを形にするものづくりの一歩を、本書を片手に踏み出してみましょう!

本書では応用例を中心にしてRaspberry Piの電子工作を学びます。前著『Raspberry Piで学ぶ電子工作 超小型コンピュータで電子回路を制御する』では、「どうすればLEDが点灯するのか」、「ADコンバータとは何を行うもので、どのように使うか」、「モーターの速度制御はどのように実現するか」などのように、電子工作にしばしば用いられあるパーツの基本的な使用法に重点をおいて解説しています。前著も合わせてお読みいただくと、より理解を深めることができるでしょう。

『実例で学ぶRaspberry Pi電子工作 作りながら応用力を身につける』のご案内
『Raspberry Piで学ぶ電子工作 超小型コンピュータで電子回路を制御する』のご案内
『ハルロック』のご案内

表紙画像

ここ数年、電子工作の人気が高まっていることをご存知でしょうか。この人気に大きく貢献しているのがRaspberry Piという超小型コンピューターです。電子工作の醍醐味を、Raspberry Piを通じて体験してみましょう。

アマゾンで買う

おすすめの記事

2014.09.04

レビュー

電気の重要性とその意義を原理から説き明かす

2014.08.28

レビュー

進化し続けるパソコンの底にある普遍的なもの

2015.09.23

レビュー

災害防止だけではありません。学者の良心あふれるものです

最新情報を受け取る