昨今、色々なところで見かけるようになったラズベリーパイ(Raspberry Pi)、略してラズパイ。Amazonで検索すると、本体のみならず、周辺機器も様々なものが売られていることがわかるでしょう。いったい、これはどの様なものなのでしょうか。そして何に使えるのでしょうか。
今回は気になるラズベリーパイの特徴や使い方など、その魅力を詳しく紹介します。
この記事は現役エンジニアによって監修済みです。
この記事の目次
ラズベリーパイ(ラズパイ)とは
出典:Raspberry Pi
Raspberry Pi(ラズベリーパイ)は、ARMプロセッサを搭載したシングルボードコンピュータです。
見た目は基盤や部品がむき出しで、大きさ85mm x 56 mm、重量45グラムというサイズ。一見何かのパーツのようにしか見えないのですが、実は立派なコンピューターです。
ラズベリーパイはイギリスのラズベリーパイ財団が開発を行い、全世界で販売しています。2012年の発売以来、徐々に出荷台数も増え続け、現在では年間の出荷台数が 500万台程度にまで増えています。
現在は相当な数が出回っていることとなります。ちなみに日本では省略して「ラズパイ」とも呼ばれています。
「Raspberry Pi 3 Model B+」の本体価格は35ドル。日本円では4000円程度ですから、安いですよね。
2020年8月現在の最新モデルは「Raspberry Pi 4 4G Model B」。こちらも7,000円以下で購入できます。
最新版は3 Model B+
ラズベリーパイは発売以来、何回かのバージョンアップを実施。だいたい年1回程度の頻度で行われています。
そして2018年5月段階での最新版は「Raspberry Pi 3 Model B+」です。
CPUは先にも書きましたがARM系で、メモリは1GB。記憶媒体はmicroSDを使用できますので、OSなどはこれにインストールすることになります。
映像出力はHDMIなどを備え、有線・無線の両方のネットワークに対応しています。
USBのポートも4つ持っていますから、周辺機器としてUSB機器を接続することもできますし、カメラやマイクの入力用インターフェースも持っています。
ここまでいろんなものが搭載されているということがわかると、確かにコンピューターだと思えるようになってきますよね。
ラズベリーパイ(ラズパイ)とIoTの関係とは
こんな小さなコンピューターで何ができるのか、と不思議に思われる方もいらっしゃるでしょう。
私たちが普段使っているパソコンと比較すると確かに小さく、サイズだけみるとほとんど何もできないように見えます。
しかし、この小ささとシンプルさがラズベリーパイの長所なのです。そしてその長所ゆえに、現在伸びつつあるIoT分野での活用が期待されています。
コンパクトなサイズですので、各種センサーとの多様な組み合わせが可能。特にIoT機器との相性が抜群です。
ハードウェアから設計して一から構築するという手間をかけなくても、まずはラズベリーパイをコアモジュールとして利用すれば動かすことができます。
そこに必要なセンサーを取り付けて制御するプログラムを書けば、動作確認を行うためのプロトタイプを簡単に作り上げることが可能。
大学の研究室やスタートアップ(もちろん大手企業でも)の試作品作りに、ラズベリーパイはとても適しています。
もともとは教育用
もともとはプログラムをこども達に教えるための教育用コンピューターとして開発されたのが、このラズベリーパイです。
いろんなセンサーを取り付けたりして、タイヤで走る簡単なロボットを作ってみたりするための基盤として準備されました。
特にイギリスでは1980年代から、学校で基本的なコンピューター科学の教育を促進するという目的で、小型のコンピューターが作られてきたという経緯があります。
その流れをくむ形で作られたのがラズベリーパイなのです。
今では世界中で、こども向けのプログラミング教育用の教材としても使われています。日本国内でも、こども向けプログラミング教室の教材として採用しているところも多いです。
もちろん大人用のプログラミング教室もありますので、「ラズベリーパイを使ってみたいけど、一人だとちょっと自信がないな」という方は、教室に通ってみるという方法も1つの手でしょう。
IoTで使える
この小ささ、そしてシンプルさ、そしてそれゆえの安さがIoT分野で大注目されています。
もともと教育用ですから、センサーでの入力と、移動したりするための部品も数多く準備されているため、組み合わせることで今流行のIoT機器を手軽に作ることができるのです。
IoTを産業として考えると、専用のハードウェアを用意し、組み込みソフトウェアをC言語で作って動作させる、ということを考えがちです。
でも「ちょっと試してみたい」というレベルですと、お金も時間もかかりすぎてしまいます。
特に、現在は開発速度が重要になってきていますから、時間がかかってしまうと、同じ様なアイデアを持った誰かに先を越されてしまうでしょう。
そのような場合には、やはりラズベリーパイが役立ちます。各種センサーとの多様な組み合わせが可能になっているラズベリーパイを用意。
それをコアモジュールとして利用して、必要なセンサーを取り付けて制御するプログラムを構築します。このようにラズベリーパイを活用すれば、IoT機器のプロトタイプをスピーディーに作り上げることができます。
大学の研究室でちょっとした研究に使う場合には、予算も安上がりにすみます。またスタートアップやもちろん大手企業でも、ちょっとした試作品作りを行う程度でしたら、これを使わない手はありません。
余談
ちなみに、イギリス製のラズベリーパイに対抗したわけではないのでしょうが、日本国産のイチゴジャム(Ichigo Jam)というシングルボードパソコンも販売されています。
こちらは昔懐かしいBASICで動作するというもので、1980年代からプログラムに親しんでいる人には、懐かしさとともに遊べるものです。
ラズベリーパイ(ラズパイ)の使い道
ラズベリーパイの使い道は、何と言っても様々なセンサーとの組み合わせです。ここではセンサーの値を取るという使い方から、もっと積極的に何かを動かすための制御基盤としての使い方などを紹介しましょう。
さまざまなセンサーを搭載した「デジタル百葉箱」
ラズパイ→LINE経由で部屋の気温がわかるIoTできた! pic.twitter.com/iCtzQPWK7L
— ざこぷろ (@zakopilo) April 25, 2018
まずは、センサー類から情報を取って環境の状態を知るための、いわば「デジタル百葉箱」とでもいうべきラズベリーパイの使い方が最もポピュラーでしょう。
ラズベリーパイで使えるセンサーは温度センサー・湿度センサー・気圧センサー・圧力センサー・光センサー・マイク・カメラなど、さまざまです。
例えば温度センサー・湿度センサー・気圧センサー・全天カメラを繋げば、天気予報で使われているアメダスと同じ様なデータを取得することができます。
しかもネットワークに繋いでおけば、離れた所からでもこの情報を入手でき、グラフ化も可能です。
もちろん室内の環境を測定する事もできます。室内環境が悪くなってきたらアラームを出す、特定のアドレスにメールを送信するなどの応用もできるでしょう。
ラズベリーパイは多くのセンサーを繋げることができます。目に見えない環境データを可視化して、それを利用したサービスを考える時にもラズベリーパイは役立ちます。
身の回りのものを制御する
しかし、データを収集するだけがラズベリーパイの魅力ではありません。コンパクトなコンピュータで身の回りのモノを制御してみたいと考えた方もいらっしゃると思います。
そのような場合はラズベリーパイにアクセスして、繋がっている機器に命令を送って制御をしましょう。
例えばラズベリーパイに向きの変えられるカメラを取り付ければ、リモート制御できる定点カメラを作ることができます。
防犯用として家の様子をネットワーク越しに見ることのできるカメラなどを自作することもできるわけです。
それ以外にも、LED電球の明るさを制御するベースとして用意しておき、手元のスマートフォンから明るさをコントロールしたりもできます。
うまくプログラムを作れば、最近流行のスマートスピーカーを使って、声をかければ明るさを変えたりもできるようになるでしょう。
また、ラズベリーパイには移動させるためのモジュールもあります。自動巡回ロボットのようなものや、頑張ればルンバのような自動掃除機も自作できるでしょう。
センサーによる完全自動化
また、人感センサーと組み合わせて人が通るとセンサーからの情報でそれを感知し、廊下の電気を付けるといった事もできます。もっと言えばセンサーの値を取得し、それを使って別の機器を動かすという完全自動化も可能です。
しかも市販の商品と異なるのは、その時の環境データが手元に残りますから、あとで動作をチューニングすることもできる点です。
例えば温度・湿度センサーにエアコンのスイッチを連動してAIを組み合わせれば、あなたの好みに合わせた室内環境を自動構築できるでしょう。
近い将来、部屋の気温・湿度・明るさは、IoTとAIの組み合わせで個人個人の好みに自動で合わせるのが当たり前の時代になっているはずです。
その他にも、畑の状態を自動監視するという活用も行われ始めています。光センサーで日照時間を計測したり、土の中の水分を土壌センサーで取得したりしています。
これに水やりなどのシステムを組み合わせれば、人間が監視しなくても広い畑を一括管理できるようになるはずです。
超コンパクトWebサーバー
実は、これまでの方向性とは全く異なる使い方ですが、超コンパクトなWebサーバーとして活用することもできます。
もちろん仕事上で使う様なものや、大きなサービスを立ち上げるためのサーバーとしては非力で使い物にはなりません。
しかし、自宅でちょっとサーバーを立ててみたい、自宅に置いてあるファイルに外出先からアクセスしてみたいという程度の要望であれば、ラズベリーパイが活躍する場となります。
後で書きますが、実はラズベリーパイはLinuxで動作する様にもともと作られています。Linuxはサーバーに用いられることが多いOSです。
そのため、ラズベリーパイはWebサーバー用のコンピュータとしても最適なのです。
この記事のハッシュタグ
ラズベリーパイ(ラズパイ)のOS
では、このラズベリーパイはどのようにして動いていて、どのようにプログラムを作成するのでしょうか。そのベースとなるOSを絡めて紹介していきます。
ラズベリーパイ(ラズパイ)はLinuxベース
ラズベリーパイは2012年の発売以来、一貫してLinux系のOSを公式サポートしています。当初はDebian、Fedora、Arch Linuxと、RISC OSがサポートされていました。
見ての通り、RISC OS以外はすべてLinux系のディストリビューションです。
これに2015年発売のRaspberry Pi2 Model BからUbuntuが追加されました。従って、主要なLinuxディストリビューションはほぼ網羅されていると言っても良いでしょう。
先に「超コンパクトWebサーバー」として使えるという話を書きましたが、これらの各種OSにApache HTTP Serverをインストールすれば良いというわけです。もちろん超コンパクトメールサーバーとしても利用できます。
ちょっと本筋から逸れました。ラズベリーパイのベースOSはLinuxですから、Linux上で開発を行ったことのある人はラズベリーパイを活用した開発を(センサーの制御関係は勉強が必要ですが)スムーズに行えると言えるでしょう。
プログラミング言語は、基本はなんでも
では実際の開発となると、どのようなプログラミング言語で行う必要があるのでしょうか。
もちろん突っ込んだことをやろうとするとC言語が良いのですが、Linuxで使えるプログラミング言語であれば、Python、Ruby、Javaなども利用できますので、自分が得意なものを使って開発を行えば良いのです。
ちなみにこども向けのプログラミング教室ではRubyやJavaは難しいので、Scratch(スクラッチ)というグラフィカルな部品を並べていくビジュアルプログラミング言語が採用されています。
ラズベリーパイでもスクラッチが動作しますので、「プログラミングには興味は無いけど、せめて基本だけ知っておきたい」という方であれば、この「ラズベリーパイ+スクラッチ」という組み合わせがおすすめです。
MicrosoftはWindows 10を移植
とはいえ、LinuxではなくWindowsでの開発ができないか、と考える人もいるでしょう。
実は、Microsoftも「あらゆるシーンでWindowsを」というスローガンのもと、2015年にWindows 10 IoT CoreというOSをリリースしています。
これも公式に提供されているOSです。これを使えば、Windowsのアプリの開発環境を利用して、ラズベリーパイを活用したIoT機器開発が可能になります。
最後に
IoTはAIやブロックチェーンなどと並んで、次世代の中心となる技術だと考えられています。その学習のために、IoT機器をハードウェアから全部作っていくということもできなくはありません。
しかし、それは決してはじめるのは簡単とは言えないでしょう。「まずは試してみる」というレベルから始めるのであれば、ラズベリーパイがぴったりです。
ラズベリーパイを使い各種センサーを取り付けて制御するというやり方は、お金も少なくてすみ、すぐに制作がはじめられます。
また、スピーディーに制作が行えるので、スピード感を持った開発方法をお探しの方も試してみてはいかがでしょうか。
はじめての転職、何から始めればいいか分からないなら
「そろそろ転職したいけれど、失敗はしたくない……」そんな方へ、テックキャンプでは読むだけでIT転職が有利になる限定資料を無料プレゼント中!
例えばこのような疑問はありませんか。
・未経験OKの求人へ応募するのは危ない?
・IT業界転職における“35歳限界説”は本当?
・手に職をつけて収入を安定させられる職種は?
資料では、転職でよくある疑問について丁寧に解説します。IT業界だけでなく、転職を考えている全ての方におすすめです。
「自分がIT業界に向いているかどうか」など、IT転職に興味がある方は無料カウンセリングにもお気軽にお申し込みください。