マイコンボードをはじめませんか?
趣味から仕事まで使える!Raspberry Pi(ラズパイ)の使い方とオススメキット
小中学生のとき、「工作」や「技術家庭」の授業がありましたよね。自分のアイデアを形にすることを楽しんだ人も多いのではないでしょうか? 大人の趣味としてあの楽しみをもう一度味わってみませんか? どうせなら「動く作品」づくりはどうでしょう? 今なら工作に使える安くて小型のコンピューター=マイコンボードが簡単に手に入ります。
初めてチャレンジする人にとって、マイコンボード選びは大変です。
「自分のやりたいことに合ってるのはどれ?」
「なんとなくマイコンボードって聞いたことがあるけど、何ができるの?」
このように、初心者にとっては悩みが多いのが電子工作。
「適当にマイコンボードを買ったけど、思っていたのと違った……」
ということがないように、人気のマイコンボード、「Arduino(アルドゥイーノ)」「Raspberry Pi(ラズベリーパイ)」「micro:bit(マイクロビット)」「M5Stack(エムファイブスタック)」について紹介します。
今回はRaspberry Pi編。使い方や必要な付属品など、Raspberry Piを使って電子工作をするときに知っておきたいことをお話ししましょう。
Raspberry Piとは?
2013年にイギリスのRaspberry Pi財団が学校のコンピューター教育向けにリリースしたマイコンボード。2019年末に3000万台出荷を達成した、世界で最も売れているマイコンボードです。
学生や電子工作ファンのみならず、仕事で使うエンジニアも多いというのも売れている理由のひとつでしょう。
前回ご紹介したArduinoなどが一度に一つのプログラムを実行するのに対して、Raspberry PiはOSを使って複数のプログラムを同時に実行できます。最新バージョンのRaspberry Piは処理のスピードやメモリー、機能などもノートパソコンやタブレット並みのハイスペックです。安価で小型ながら、最高級のマイコンボードといっていいでしょう。
一方で
- できることが多すぎる
- 電子工作にたどり着くまでに手間がかかる
といった点もあり、初心者にとってはちょっとハードルが高いかもしれません。ある程度パソコンやプログラミングに慣れた人にオススメです。
基板には何が載っているの?
Raspberry Piには、登場した年代によっていくつかのバージョンがあります。最新機種(2020年8月現在)は、2019年にリリースされた「Raspberry Pi 4 Model B」です。
主な部品としては
CPU(1.5GHz quad-core ARM Cortex-A72)を含んだSoC*に、入出力端子となる40ピンのGPIO*、ポートとしては、USB、有線LAN、micro HDMI出力があります。
他にオーディオ用3.5mmジャック、Camera Serial Interface(CSI)、Display Serial Interface(DSI)などがあり、スピーカーやカメラ、モニターなどをつなぐことができます。また、BluetoothやWi-Fiの機能も搭載されていて通信にも強いのが特徴です。
電子工作からプロユースの製品開発までさまざまなニーズに対応できる拡張性が魅力のマイコンボードです。
SoC:“System-on-a-Chip”の略。CPUやメモリーなど必要な機能のすべてが一つのシステムとして働くよう、1個のチップにまとめたものです。小型化や高速化に役立ちます。 GPIO:“General-purpose input/output”の略。「汎用入出力」という意味です。ピンごとに入力、出力などを指定できます。)
ほかに何が必要なの?
最低限必要な周辺機器と接続ケーブルをご紹介しましょう。他のマイコンボードより用意しなければならないものは少々多いかもしれません。
- パソコン(インターネットにつながるパソコン。OSダウンロード時に使用)
- ディスプレイ(HDMI端子があれば普通のTVでも可)
- USBキーボード
- USBマウス
- HDMIケーブル(micro HDMI to HDMIケーブル)
- ACアダプター(USB Type-C コネクター出力)
- microSDカード
- カードリーダー
どうやってプログラミングするの?
IDE*という専用のソフトウェアを使います。IDEでは「プログラムを書く」、「プログラムを、送り込む・保存する」、「作例を呼び出す」、といった開発のための環境がセットになっています。
Raspberry Piの場合は、複数のOSが使えます。公式推奨OS「Raspberry Pi OS(旧名称:Raspbian)」の中にはIDEが含まれるので、インストールすれば、IDEもすぐに使えます。
OSのインストールのためには、いくつかの手順を踏まなくてはなりません。初心者にとっては少々面倒かもしれませんが、がんばって作業していきましょう。
以下、Raspberry Pi OSをインストールする場合の標準的なケースについて紹介します。
- OSをmicroSDカードにコピーしましょう。
・パソコン(Raspberry Piとは別)にカードリーダーをつなぎ、microSDカードを挿します。Raspberry Piの公式サイトから「NOOBS(「ヌーブス」。Raspberry PiにOSをインストールするためのソフトウェア。Raspberry Pi OSも含まれている)」をダウンロードし、カードリーダーを介してmicroSDカードにコピーします。 - microSDカードからRaspberry Piに「NOOBS」をインストールしましょう。
・microSDカードをRaspberry Piのカードスロットに挿し、ディスプレイ、キーボード、マウスを各接続ケーブルでつなぎます、最後に電源ケーブルを挿して電源をONにします。NOOBSの初期画面が出るので、手順に沿ってRaspberry Pi OSをインストールしましょう。 - インストールが完了したら、Raspberry Pi OSを立ち上げ、設定画面から各種の設定を行いましょう。
・無線LANを設定し、日本語入力ソフトをLXTerminal*の画面からコマンドを入力してインストールします(画面1)。続いてパスワード、地域と言語、時刻などを設定しましょう。
プログラミングのときは、左上のRaspberry Piマークから「プログラミング」→「Thonny Python IDE」を起動します。ウィンドウが開いて画面が上下に2つ現れます。上の「Untitled」にプログラムを書くと、下の「Shell*」に実行した結果が表示されます。
Raspberry Pi OSにはさまざまなプログラミング言語が用意されていますが、Python*が最もよく使われています。(一説には「Raspberry Pi」の「Pi」は「Python」の「Py」で、もともと基本言語としてPythonを考えていたと言われています)。
Shell:正式には「Python Shell」。キーボードから入力されるテキストベースの命令を実行し、結果を表示します。ミスがあれば指摘もしてくれます。
LXTerminal:Raspberry Pi OSでCUI画面を使うためのアプリケーション。CUIは「Character User Interface」の略でキーボードでしか操作できない画面のことです。みなさんが通常使う、マウスやタッチパネル等から入力できる画面はGUI(「Graphical User Interface」)と呼ばれます。
Python:1991年に登場したプログラミング言語です。シンプルで読みやすいコードが書けます。比較的初心者にやさしい言語といえるでしょう。Raspberry Piだけでなく、WindowsやMacで作成したプログラムが別のプラットフォームでも同じように動作するのも魅力です。数値計算に強く、AIを扱うときなどに便利なので、今、最も注目を浴びています。
どんなものを作るのに合っているの?
Raspberry Piは他のマイコンボードと比較すると、CPU、メモリーなどたいへんスペックが高いのが特徴です。電子工作用として使うのであれば、ほぼ全ての用途に使えるでしょう。ただ、周辺機器をそろえたり、OSなどのインストール手順が複雑だったりと、初心者には少々ハードルが高いボードであることも否定できないでしょう。それでも電子工作で以下のような作品を作りたいと思う人にはオススメです。ハードルを乗り越える価値があるでしょう。
- データ分析の結果などを画面表示したい人
「センサーでデータを集めて分析結果をグラフィカルな画面に表示したい」そんな人にはRaspberry Piの高いスペックが役に立つでしょう。
- ネットワークにつないで使いたい人
Raspberry PiならBluetooth、Ethernet、Wi-Fiといった通信機能がすぐ使えます。ネットワークを前提にした作品作りに向いているといえるでしょう。「複数のモノ同士を近距離ネットワークで連動させる」、「Webにつないでモノを動かす」といった作品を作りたい人にオススメです。
- ミュージックサーバーを作りたい人
Raspberry Piにはデジタルオーディオデバイスを接続するためのバス規格(I²S*)が標準装備されています。また「Volumio」というオーディオデータ処理用のOSもあります。異なるメディアから音源を取り込み、さまざまな装置から出力するミュージックサーバーを作りたい人にはぴったりのボードです。
- プログラミング教育に関心がある人
Raspberry Pi OSには子ども向けのビジュアルプログラミング言語「Scratch」や子どもの創造性を養う人気ゲーム「Minecraft」といったプログラミング教育用のアプリが標準装備されています。ScratchからセンサーやLED、モーターのコントロールなどもできます。Scratchになれた子どもに電子工作をさせるときはRaspberry Piを使うと分かりやすいでしょう。
fabcrossでもRaspberry Piを使ったいろいろな作品を取り上げてきたので、参考にしてみたらいかがでしょうか?
それ、ラズパイでつくれるよ|fabcross |
どんな機種があるの?
Raspberry Piはリリース時期によって第1世代から第4世代に分かれます。さらに搭載しているCPUやメモリーの容量など、ハードウェアの構成によって同じ世代でもいくつかのバージョンがあります。全部合わせると10以上のバリエーションとなっています。消費電力にも差があり、用途によって選ぶのが基本です。
初心者にとってはどれを選べばいいのか、迷うところでもあります。用途が広く、かつ扱いやすいという点では、やはり紹介した最新機種Raspberry Pi 4 Model Bが初心者にはオススメです。ただ、Raspberry Pi 4の場合、用途によってはCPUを含んだ心臓部のチップの発熱が大きい場合があります。気になるようなら、ヒートシンク*で放熱対策をしたほうがいいかもしれません。
ヒートシンク:チップに直接取り付けて、チップの熱を空気中に放出する放熱板のことです。たいていアルミ製です。
「Lチカ」してみませんか?
LEDを短い時間でつけたり、消したりして点滅させることを「Lチカ」といいます。「LEDをチカチカさせる」の略ですね。
「マイコンボードでLチカなんて大げさじゃない?」
確かにそうですが、外付けのLEDを一からLチカさせるとなると意外に手間がかかります。必要な電子部品をそろえ、IDE等をインストールして、プログラミング。実際に回路を組んで光らせます。
実は一連の作業に、マイコンボードを使う電子工作の流れがすべて含まれています。Lチカができれば、基本は分かったも同然でしょう。あなたもやってみませんか?
Raspberry PiにおけるLチカまでの一連の流れを紹介しましょう。
◆部品をそろえましょう
Raspberry Pi本体と周辺機器一式の他に、ブレッドボード*、ジャンパワイヤー*(オス〜メス)、LED、抵抗を用意しましょう。
ブレッドボード:はんだ付け不要で回路を組める台です。部品の接続にはジャンパワイヤーを使います。
ジャンパワイヤー:基板のピンとブレッドボードを結ぶ、ブレッドボード上で配線するためのリード線。先端形状によってオス〜オス、オス〜メス、メス〜メスの3種類があります。
また、本体の他にmicroSDカード(NOOBS 書き込み済み)、マウス、キーボード、ACアダプター、HDMI接続ケーブルなどがセットになったキットも市販されています。例えば、スイッチサイエンスの「Raspberry Pi 4 コンプリートキット」(1万5730円 税込)では、上記の部品のほかオフィシャルケースやスタートアップガイドなどがセットになっています(ディスプレイは付いていません)。
◆部品を配置しましょう
まずは部品を配置するために、回路を考えてみましょう。
「『回路』っていわれても……」
こう思う人もいるかもしれませんが、難しく考える必要はありません。
回路は単なる電気の通り道のことです。小学生の時に習った豆電球の実験を思い出していただければ、分かりやすいのではないでしょうか? プラスからマイナス(GND*)へと電気の通り道を考え、あいだに電子部品を配置すれば回路の出来上がりです。
複雑な回路の場合、さらに図を描くと分かりやすくなります。特殊な記号を使って描く回路図や具体的な実体配線図があると便利です。検索すればまったく同じではなくとも似たような図がネット上にあることも多いので、それらを参考にしてみたらどうでしょう。
回路図や実体配線図を見ながら、ブレッドボード上にLEDと抵抗を配置します。LEDのプラス(足の長い方)、マイナス(足の短い方)に注意しましょう。最後にジャンパワイヤー(オス〜メス)でブレッドボードとRaspberry Piをつなぎます。ブレッドボード側にオスを、Raspberry Pi側にメスを差します。差し間違えないようRaspberry Piのピンの位置に特に注意しましょう。ここではコネクターのピン番号*「11」を使いました。
コラム:『ブレッドボード』って何?
一般になじみのないブレッドボードですが、電子工作をするときには大変便利です。はんだ付けすることなく、ソケット(穴)に電子部品の脚やジャンパワイヤーの先端を挿し込むだけで、確実に電子部品を接続できるからです。両側の2列は縦に、真ん中は5列ごとに横に配線されています。配線されていない列をまたぐときは、ジャンパワイヤーを挿して、電気の通り道を作ります。
コラム: LEDを使うときのコツ
LEDの扱いに関してはコツが2つあります。ひとつはLEDにはプラスとマイナスがあるということ。脚の短い方がマイナスで長い方がプラスです。また流せる電流の適正値が決まっているので、それを超えると簡単に壊れてしまいます。それを防ぐためにLEDを使った回路には適正な抵抗を組み込みましょう。
GND*:Ground「地面」の略です。回路の場合は「動作の基準となる電位」を意味します。「電極のマイナス」と考えればよいでしょう。)
コネクターのピン番号:Raspberry Piのピン番号の振り方には、物理的に配列順に振る場合と、GPIOピンとして機能別に振る場合があります。プログラム上は、前者は「GPIO.BOARD」、後者は「GPIO.BCM」と指定します。
◆プログラミングしましょう
「どうやって プログラミングするの?」のところで紹介した方法で、Raspberry PiにあらかじめRaspberry Pi OSをインストールしておきます。本体に周辺機器一式をつなぎ、最後に電源ケーブルを挿して電源をONにして、Raspbianを起ちあげましょう。Thonny Python IDEを呼び出し、<untitled>画面にプログラムを書きます。
ポイントはLEDの出力(GPIO.OUT)の最高値(GPIO.HIGH)と最低値(GPIO.LOW)を、時間(time.sleep)をおいて交互に繰り返すことです。出力の最高値ではLEDが点灯し、最低値では消えるので、時間差をつけて交互に行うと、結果として点滅します。時間差をつけないと点滅が速すぎて点灯したままにしか見えません。
言語はPythonを使うとよいでしょう。プログラムのポイントはGPIOのピンを制御すること。冒頭に「RPi.GPIOライブラリ」を使用するコマンドを入れておくとピンの制御に役立ちます。また、プログラムの最後にポートをクリアするコマンド「GPIO.cleanup()」を入れておくのも重要です(画面1)。
◆実行してみましょう
LEDと抵抗を配置したブレッドボードを、Raspberry Piにジャンパワイヤーでつなぎましょう。LEDのマイナスにつながったジャンパワイヤーをGNDに、抵抗につながったジャンパワイヤーをコネクタピンの11番に挿します。
RUN(▶︎)をクリックしましょう。プログラムが実行され、LEDが点滅したらLチカ大成功です。エラーがある場合にはShell画面にメッセージが出て「∧」マークでエラー箇所を指摘してくれます。
◆作ったプログラムを保存しましょう
作ったプログラムは保存しておきましょう。「File」→「Save」をクリックします。表示されたダイアログで保存するフォルダを選択し、ファイル名を入力します。ファイルに名前を付けるときは、半角アルファベットを使いましょう(ひらがな、カタカナ、漢字は使えません)。
保存したプログラムを呼び出すときは、プログラムを保存したフォルダにアクセスし、ファイルを選択します。削除するときも、プログラムを保存したフォルダにアクセスし、ファイルを選択して削除してください。
Raspberry Piを使ったLチカにかかった費用
*価格はいずれもスイッチサイエンスでの税込価格。
- Raspberry Pi 4 Model B / 2GB 5225円
- ACアダプター(USB Type-C コネクター出力) 1430円
- HDMI(オス) - Micro-HDMI(オス)ケーブル 770円
- ジャンパワイヤ(オス〜メス) 501円 *10本セット
- ブレッドボード 275円
- 抵抗コンデンサLED詰め合わせパック(計20種) 693円
※上記以外に以下のような機器が必要です。
- ディスプレイ(HDMI端子付き)1万円前後
- USBキーボード 2000円前後
- USBマウス 1000円前後
- microSDカード 1000円前後
- カードリーダー 1000円前後
<そもそもマイコンボードって何?>
「マイコンボード」でググれば、いろいろな説明が出てきます。「マイクロコントローラー」「マイコン」等々。
細かい定義はともかく、一言で言えば、「CPUと入出力用のピンやポートなどが付いた電子基板」といった感じです。
電子工作をするとき、「センサーと組み合わせて何かを測りたい」、「音や光を出したい」、「モーターと組み合わせて何かを動かしたい」と思うとことがよくあります。そんなとき、マイコンボードが便利です。プログラミングができて、単独で動かせるからです。
加速度、光、温度などの各種センサー、LED、スピーカー、モーターなどを使った工作を作りたいなら、マイコンボードは欠かせない道具でしょう。
次回は、micro:bitについてご紹介します。
<写真=SHIGS/スイッチサイエンス>
<監修>
牧井 佑樹︎(1988 年生まれ。大学生の時にスイッチサイエンス︎でアルバイトを始め、その後同社に就職する。カスタマーサポート、マーケティングを経て、現在はWebショップ店長として電子部品の仕入れ・販売を担当。
新連載スタート! 土日で完成! 趣味のラズパイ
この連載では初心者の方向けに、ラズパイを使った楽しい電子工作をご紹介していこうと考えています。目標は部品を集めてからその週末、土日で作り上げられることです。
連載スタート! 今さらきけない「ラズパイってなんですか?」
ラズパイの基礎から始めて、ラズパイに用意されている「GPIO」を使い、いろいろな電子工作ができるようになることを目指します。その昔に電子工作をたしなんでいた人だけでなく、ラズパイって何となく面白そうだぞ、と思っている人でも楽しめる連載にしていきたいと考えています。