新しいものづくりがわかるメディア

RSS


マイコンボードをはじめませんか?

ラズパイとの違いは? 初心者向けArduinoの使い方とオススメキット

小中学生のとき、「図画工作」や「技術・家庭」の授業がありましたよね。自分のアイデアを形にすることを楽しんだ人も多いのではないでしょうか? 大人の趣味としてあの楽しみをもう一度味わってみませんか? どうせなら「動く作品」作りはどうでしょう? 今なら工作に使える安くて小型のコンピュータ=マイコンボードが簡単に手に入ります。

初めてチャレンジする人にとって、マイコンボード選びは大変です。
「自分のやりたいことに合ってるのはどれ?」
「マイコンボードって聞いたことがあるけど、何ができるの?」
このように、初心者にとっては悩みが多いのが電子工作。
「適当にマイコンボードを買ったけど、思っていたのと違った……」
ということがないように、人気のマイコンボード、「Arduino(アルドゥイーノ)」「Raspberry Pi(ラズベリーパイ)」「micro:bit(マイクロビット)」「M5Stack(エムファイブスタック)」について紹介します。

初回はArduino編。使い方や必要な付属品など、Arduinoを使って電子工作をするときに知っておきたいことをお話ししましょう。

Arduinoとは?

2005年にリリースされたArduinoは「電子工作向けマイコンボードのルーツ」といってもいいでしょう。

コンピュータに詳しくない初心者向けに開発されたマイコンボードで、今では電子工作ファンの定番です。
電子工作は初心者でも、プログラミングをかじったことがある人にオススメです。

基板には何が載っているの?

基板上にはCPUのほかに14本のデジタル入出力ピン(I/O*ピン)、6本のアナログ入力ピン、電源出力ピン、USBポート、電源ジャック(ACアダプタ用)などが載っています。

工作物とデータのやりとりをするピンの種類と数としては十分でしょう。

Arduino(Arduino Uno)の基板上に配置された電子部品。 Arduino(Arduino Uno)の基板上に配置された電子部品。

*I/O(アイオー):IはInput、OはOutputの略です。I/Oでデータの入出力を意味します。

ほかに何が必要なの?

最低限必要なのは、一方がType-Aで、もう一方がType-BになっているUSBケーブルです。パソコンとつないで、プログラムを送り込んだり、給電したりするのに使います。

その他、ジャンパワイヤー*、ブレッドボード*などもそろえておくと、回路を組むのに役立つでしょう。

(左から)Type-A to Type-BのUSBコード、ジャンパワイヤー(オス〜オス)、ブレッドボード。 (左から)Type-A to Type-BのUSBコード、ジャンパワイヤー(オス〜オス)、ブレッドボード。

*ジャンパワイヤー:基板のピンとブレッドボードをつないだり、ブレッドボード上で配線したりするためのリード線。先端形状によってオス~オス、オス~メス、メス~メスの3種類があります。

*ブレッドボード:電子部品やジャンパワイヤーを抜き差しできる穴がたくさん並んでいて、はんだ付け不要で回路を組める台です。試作や実験などに使います。

どうやってプログラミングするの?

IDE*という専用のソフトウェアをパソコンにインストールして使います。IDEには「プログラムを書く」「プログラムを、検証する/送り込む/保存する」「作例を呼び出す」、といった開発のための環境がセットになっています。

Arduinoには「Arduino IDE」というソフトウェアがあります。開発元であるArduinoのWebサイトからパソコンに日本語版をインストールして使います。

プログラミング言語は、Arduino用に開発された言語を使います。C/C++言語*を基にしており、慣れれば分かりやすいでしょう。ただ「プログラム」のことを「スケッチ」、「ボードへの書き込み」のことを「アップロード」と呼ぶなど、Arduino独特の用語の使い方があるので注意しましょう。

初心者にとってありがたいのは、ライブラリにある豊富なスケッチ(プログラム)作例です。自分が思い描く動作に近いプログラムを見つけ、コピーし、自分用に修正することで、一からプログラミングする手間が省けるでしょう。

Arduino IDEのスケッチ(プログラム)のための画面。 Arduino IDEのスケッチ(プログラム)のための画面。

IDE(アイディーイー):Integrated Development Environment の略。プログラムの統合開発環境のことです。Arduinoには「Arduino IDE」という専用IDEがあります。

C/C++言語(シー、シープラスプラス):C言語は、1970年代に開発されたプログラミング言語で、OSや家電などでよく使われエンジニアにはおなじみです。C++はCの機能を拡張した言語です。

どんなものを作るのに合っているの?

Arduinoは、何かを単純に入力して何かを単純に出力するのに向いているマイコンボードだといわれています。例えば、温度に連動して扇風機を回すとか、周囲の明かりに連動してライトをつけるとかといったことが得意です。

反対に複雑な手順を組み合わせるとか、通信して他のコンピュータやクラウドと連携するなどといったことは、どちらかといえば苦手です。できなくはないですが、初心者にとっては少々ハードルが上がります。
fabcrossでも過去にいろいろな作品を取り上げてきたので、参考にしてみたらいかがでしょうか?


【頭の悪いメカ by 藤原麻里菜】
「全く盛れない自撮り棒」を作ってイノベーションを起こしたい|fabcross

テレワークで大活躍! キットできっと作れるZoom専用キーボード|fabcross

arduinoに関する記事の一覧|fabcross

どんな機種があるの? 機能を追加することはできないの?

Arduinoは互換機も含めて、いろいろな種類があります。ただ、定番は「Arduino Uno」。使いやすく、値段も手頃なので、初心者が使うにはこの機種がオススメです。
他に、よりハイスペックな「Arduino Mega」、小型の「Arduino Nano」などがあります。用途によって機種を選ぶこともできますが、たいていのものは「Arduino Uno」で作れるでしょう。
通信など「Arduino Uno」だけでは難しい場合は、機能を追加するためのボード(拡張用ボード)を使うこともできます。

左が「Arduino Mega」、右が「Arduino Nano」。 左が「Arduino Mega」、右が「Arduino Nano」。

「Lチカ」してみませんか?

LEDを短い時間でつけたり、消したりして点滅させることを「Lチカ」といいます。「LEDをチカチカさせる」の略ですね。

「マイコンボードでLチカなんて大げさじゃない?」
確かにそうですが、外付けのLEDを一からLチカさせるとなると意外に手間がかかります。必要な電子部品をそろえ、IDEをインストールして、プログラミング。そして回路を組んで光らせます。

実は一連の作業に、マイコンボードを使う電子工作の流れがすべて含まれています。Lチカができれば、基本はわかったも同然でしょう。あなたもやってみませんか?

ArduinoにおけるLチカまでの一連の流れを紹介しましょう。

◆ 部品をそろえましょう
プログラミングに使用するパソコン、Arduino本体(ここではArduino Unoを使います)、USBケーブル、のほかに、LED、抵抗、ジャンパワイヤー、ブレッドボードを準備しましょう。

初心者用に全部入りのキットも市販されています。例えば、スイッチサイエンスの「Arduinoをはじめようキット」では、上記の部品のほかタクトスイッチ(押しボタン)やCdsセル(光センサーになる)などがセットになっています。

初心者向けの簡単な電子工作なら、たいていこれで作れます。

スイッチサイエンスの「Arduinoをはじめようキット」(4400円)。Arduino UNOとすぐに使える電子部品がセットになっています。本体には永久保証が付いているので、万が一壊してしまっても安心です。 スイッチサイエンスの「Arduinoをはじめようキット」(4400円)。Arduino UNOとすぐに使える電子部品がセットになっています。本体には永久保証が付いているので、万が一壊してしまっても安心です。

◆ 部品を配置しましょう
まずは部品を配置するために、回路を考えてみましょう。

「『回路』っていわれても……」
こう思う人もいるかもしれませんが、難しく考える必要はありません。

回路は単なる電気の通り道のことです。小学生の時に習った豆電球の実験を思い出していただければ、分かりやすいのではないでしょうか? プラスからマイナス(GND*)へと電気の通り道を考え、間に電子部品を配置すれば回路の出来上がりです。

複雑な回路の場合、図を描くと分かりやすくなります。特殊な記号を使って描く回路図や具体的な部品の配置や配線を示した実体配線図があると便利です。検索すればまったく同じではなくとも似たような図がネット上にあることも多いので、それらを参考にしてみたらどうでしょう。

LEDを点灯させる回路図の例。一定のルールに基づいて描かれています。電子回路の設計図ですね。 LEDを点灯させる回路図の例。一定のルールに基づいて描かれています。電子回路の設計図ですね。
Lチカのために電子部品をブレッドボードに配置し、Arduino Unoにつなげたときの実体配線図。回路をより実体に近い形で捉えるための図です。 Lチカのために電子部品をブレッドボードに配置し、Arduino Unoにつなげたときの実体配線図。回路をより実体に近い形で捉えるための図です。

GND(グランド):Ground「地面」の略です。回路の場合は「動作の基準となる電位」を意味します。「電極のマイナス」と考えればよいでしょう。

「ブレッドボード」って何?

一般になじみのないブレッドボードですが、電子工作をするときには大変便利です。はんだ付けすることなく、ソケット(穴)に電子部品の脚やジャンパワイヤーの先端を挿し込むだけで、確実に電子部品を接続できるからです。両側の2列の穴は縦に、真ん中は5列ごとに横に配線されています。配線されていない列をまたぐときは、ジャンパワイヤーを挿して、電気の通り道を作ります。

ブレッドボードの配線図。両側の2列は縦に、真ん中は5列ごとに横に配線されています(ピンク部分のソケットはつながっています)。 ブレッドボードの配線図。両側の2列は縦に、真ん中は5列ごとに横に配線されています(ピンク部分のソケットはつながっています)。

LEDを使うときのコツ

LEDの扱いに関してはコツが2つあります。ひとつはLEDは電流が流れる向きが決まっているということ。脚の短い方がマイナスで長い方がプラスです。また流せる電流の適正値が決まっているので、それを超えると簡単に壊れてしまいます。それを防ぐためにLEDが壊れないよう回路に適正な抵抗を組み込みましょう。

LEDと抵抗。LEDの足にはプラスとマイナスがあります。抵抗に描かれている色の帯(カラーコード)は抵抗値を表しています。 LEDと抵抗。LEDの足にはプラスとマイナスがあります。抵抗に描かれている色の帯(カラーコード)は抵抗値を表しています。
LEDと抵抗をブレッドボード上に配置したところ。 LEDと抵抗をブレッドボード上に配置したところ。

◆プログラミングのための準備をしましょう
プログラミングはパソコンで行います。まずはArduinoのWebサイトからOSに合ったIDEとドライバーソフト*をダウンロードし、インストールしましょう。

ドライバーソフト:プリンターなどの周辺機器やマイコンボードなどを、OSに認識させて使えるようにするためのソフトウェア

インストールの際、注意していただきたいことがあります。セキュリティソフトがインストールを邪魔する(あるいは結果としてインストールされない)ことがあるので、その場合は機能をオフにしておきましょう。
Macの場合はシステム環境の「セキュリテイとプライバシー」の許可ボタン(鍵のマーク)をクリックします。

Arduino IDEを開くと下のような画面(画面1)が出てきます。次にパソコンとArduino本体をUSBケーブルでつなぎ、Arduinoの種類と接続したシリアルポートを確認しましょう(画面2)。
*画面はお使いのパソコン、OSによって異なります。

画面1:Arduino IDEのプログラミング画面。 画面1:Arduino IDEのプログラミング画面。
画面2:シリアルポートなどを確認しましょう。 画面2:シリアルポートなどを確認しましょう。

最後に「ファイル」→「環境設定」と開いて(Macの場合、上部のメニューバーから「Arduino」→「Preferences」と開きます)、「行番号を表示する」にチェック(✓)を入れておきましょう。(画面3)プログラム画面で行番号が表示されていると、エラーが出たときなど、どの行でエラーが出たかすぐに分かって便利です。

画面3:「行番号を表示する」にチェックを入れましょう。 画面3:「行番号を表示する」にチェックを入れましょう。

◆プログラミングしましょう
いよいよプログラミングですが、作例を利用すると便利でしょう。

スケッチ例の「Blink(点滅)」を指定しましょう(画面3)。「Blink」をクリックすると、「Blink」のプログラムが書かれた新たなウインドウが立ち上がります。➡︎をクリックしてArduino本体にプログラムを書き込みましょう。終わると「マイコンボードへの書き込みが完了しました。」というメッセージが下に出ます(画面4)。
Arduino本体を見てください。左上のオレンジの小さなLEDが点滅していれば成功です。(写真1)

画面3:スケッチ例から作例の「Blink」を選択しましょう。 画面3:スケッチ例から作例の「Blink」を選択しましょう。
画面4:「Blink」のプログラムが書き込まれた新たなウインドウが開きます。 画面4:「Blink」のプログラムが書き込まれた新たなウインドウが開きます。
写真1:ボード上のオレンジの小さなLEDが点滅します。 写真1:ボード上のオレンジの小さなLEDが点滅します。

次に、ブレッドボードに配置したLEDを光らせる方法にチャレンジしてみましょう。プログラミングとしては、先ほど使った「Blink」を修正するだけです。画面の通り「LED_BUILTIN」を「2」に変えます。(画面5)

画面5:ピン番号を指定するため、「Blink」のプログラムの一部を修正します。 画面5:ピン番号を指定するため、「Blink」のプログラムの一部を修正します。

ポイントは2つあります。1つは「LEDにつながっているピン番号を最初に指定すること」。もう1つは出力(OUTPUT)の最高値(HIGH)と最低値(LOW)を、時間差(delay)をつけて交互に繰り返すことです。

出力の最高値ではLEDが点灯し、最低値では消えるので、時間差をつけて交互に行うと結果として点滅します。時間差をつけないと点滅が速すぎて点灯したままにしか見えません。

◆実行してみましょう
Arduinoにプログラムを書き込んだら、LEDと抵抗を配置したブレッドボードをジャンパワイヤーでつなぎましょう。
LEDのマイナスにつながったジャンパワイヤーをGNDに、抵抗につながったジャンパワイヤーをデジタル入出力ピンの2番に挿します。LEDが点滅したらLチカ大成功です。

プログラム済みのArduinoをブレッドボードと接続すると、LEDが点滅します。 プログラム済みのArduinoをブレッドボードと接続すると、LEDが点滅します。

◆作ったプログラムを保存しましょう
作ったプログラムは保存しておきましょう。「ファイル」→「名前をつけて保存」をクリックします。名前を付けるときは、半角アルファベットを使いましょう(ひらがな、カタカナ、漢字は使えません)。保存したスケッチを呼び出すときは、「ファイル」→「スケッチブック」と開き、選択します。削除するときは、パソコンの「マイフォルダ」(Macの場合は「ホーム」→「書類」)の中のスケッチのフォルダを削除してください。

Arduinoを使った外付けのLチカにかかった費用

*価格はいずれもスイッチサイエンスでの税込価格。

  • Arduino Uno 3300円
  • USB2.0ケーブル(A-Bタイプ) 165円
  • ジャンパワイヤ(オス〜オス) 440円 *10本セット
  • ブレッドボード 275円
  • 抵抗コンデンサLED詰め合わせパック(計20種) 693円

合計 4873円

そもそもマイコンボードって何?

「マイコンボード」でググれば、いろいろな説明が出てきます。「マイクロコントローラー」「マイコン」等々。

細かい定義はともかく、一言で言えば、「CPUと入出力用のピンやポートなどがついた電子基板」といった感じです。

電子工作をするとき、「センサーと組み合わせて何かを測りたい」、「音や光を出したい」、「モーターと組み合わせて何かを動かしたい」と思うとことがよくあります。そんなとき、マイコンボードが便利です。プログラミングができて、独立して動かせるからです。

加速度、光、温度などの各種センサー、アクチュエーター(動くもの)として働くLED、スピーカー、モーターなどを使った工作を作りたいなら、マイコンボードは欠かせない道具でしょう。

マイコンボードとパソコン、センサー、アクチュエーターの関係。コンピュータを使って何かを動かしたいときの基本構成になります。 マイコンボードとパソコン、センサー、アクチュエーターの関係。コンピュータを使って何かを動かしたいときの基本構成になります。

次回は、Raspberry Piについてご紹介します。

<写真=SHIGS/スイッチサイエンス>

<監修>
牧井 佑樹︎(1988 年生まれ。大学生の時にスイッチサイエンス︎でアルバイトを始め、その後同社に就職する。カスタマーサポート、マーケティングを経て、現在はWebショップ店長として電子部品の仕入れ・販売を担当。

ニュース

編集部のおすすめ

連載・シリーズ

注目のキーワード

もっと見る