I/Oボードとは?
簡単に言うと「電気信号のInputやOutputを行えるマイコンボード」のことです。
今有名なのはArduinoやRaspberry Piあたりですね。
特にRaspberry Piは今年になりRaspberry Pi 3が発売され、Wi-fi・Bluetooth標準装備、CPU性能UP等々、より使いやすくなりました。
具体的に何ができるの?
プログラムを書き込むことで、電気信号のInput/Outputの制御をします。
Inputとしては、
- 感圧センサから荷重値を読み取る
- 人感センサで人が居るかどうかを確認する
などなど、センサからの電気信号を読み取ることが可能です。
Outputでは、
- LEDを光らせる
- モーターの制御信号を送る
- ON/OFFのスイッチングをする
等々のことが出来ます。
I/Oボード紹介
本題に入ります。紹介に当たってのポイントとしては、
- 入門者向けの一般的なボード
- 知っていると便利なボード
- これは楽しい!夢が広がるボード
ってところ。
今回紹介するのはこのボードたち。
これらのボードは、おおかたAmazonかスイッチサイエンスで購入できます。
1. Arduino UNO R3
Arduinoの最も一般的なモデルです。安価な互換ボード(びんぼうでいいの等)も続々と発売されています。
見た目はこんな感じ。
出典:スイッチサイエンス
デジタル入出力ピンが14本(うち6本はアナログ出力が可能)、アナログ入力ピンが6本あります。
Arduino UNOの場合、ボードとPCをUSB A-Bのケーブルで接続します。miniBやmicroBではなく、ただのBです。
そしてArduino系のボードは、PCよりArduino IDEというソフトウェアからプログラムが書き込まれます。
これで各々のピンの挙動等をセッティングします。
基本的に、プログラムはC言語を基としたArduinoの独自言語で記述されます。詳しくはArduino 日本語リファレンスを参照してください。
設定によってはpython等でも書けるらしい。
Arduinoを使って遊んでみたい場合は、オライリーのPrototyping Labを読むことをオススメします。
良い導入書であると同時に、使えると楽しいセンサ等の電子部品もがっつり紹介されており、長く愛読できる本となっています。
(余談ですがR3とはRevision 3のことで、UNOは今までに3回のアップグレードがされています。)
2. Raspberry Pi 3 Model B
ArduinoはPC経由でプログラムを書き込みましたが、Raspberry Piはそれ自体がPCみたいなものなのでそんな必要はありません。
見た目はこんな感じ。
ただArduinoと違ってセットアップが面倒くさい。詳しくは「Raspberry Pi 3にRaspbianをインストール(Mac OS X を使用)」をご参考ください。
上記に習ってOSを入れてしまえばもうLinux PCと大差ありません。ちなみにRaspbianはDebian系です。
近年ではwindows10のRaspberry Pi用OSが出ているみたいなので、そちらを入れても面白いと思います。
Raspberry PiとArduino、操作方法はだいぶ違いますがどちらもI/Oボードとして利用が可能です。
そしてRaspberry PiはWi-FiとBluetooth、イヤホンジャックにHDMIまで標準で積んでいるので、そういう遊び方をしたいときはArduinoよりも使い勝手が良いかもしれません。
しかしRaspberry Piにはアナログ入力ピンが存在せず、アナログ(PWM)出力ピンも1つしかないので、「センサから値を読み取る」「複数のモータの挙動を制御する」等のことはArduinoの方が簡単に出来ます。
また、イヤホンジャックはそのまま使用すると随分ノイズが乗るので、対策が必要です。
後述のおまけにてArduinoとRaspberry Piの簡単な比較を行います。
3. LilyPad Arduino 328
さて、ここからはちょっと便利な変形Arduinoボードの紹介になります。
出典:スイッチサイエンス
直径50[mm]厚さ0.8[mm]というサイズ感のボードで、布地に縫い付けて使用することを主目的としています。薄いですね。
なので、通電糸やLilyPad用のモジュール類を組み合わせて服やバック等を楽しく加工することができます。
出典:DFROBOT
上は使用例。通電糸で縫いつけているようです。
Arduino IDEでプログラムを書き込むには、変換アダプタとmicroBケーブルが必要となります。
変換アダプタの必要ないタイプもありますが、ピンの数がぐっと少なくなってしまいます。使用例の写真のボードはコレですね。
4. FLORA, GEMMA
これらはAdafruitのボードになります。
出典:Adafruit
FLORAは直径45[mm]厚さ7[mm]、GEMMAは直径28[mm]厚さ7[mm]です。LilyPadに比べサイズは小さいですが、厚みがあります。
使用用途はLilyPadと似たような感じで布に縫い付けて使用することが多いようです。
また、PCとの接続に変換アダプタが必要でなく、microBのケーブルさえあれば通信を行えます。
こちらも専用のモジュール類があります。しかしFLORA用のモジュールはGEMMAでは使えないこともあるので注意してください。
(例えば、FLORA用のGPSモジュールはGEMMAだとピンが足りず使用できません。)
5. 8pino
これはすごい!日本発の超々小型Arduino互換ボードです。
出典:スイッチサイエンス
幅8[mm]厚さ0.8[mm]と、とても小さいです。
しかもmicroBポートに基盤が直接ささります。これもArduino IDEでプログラムを書き込めます。
また、サイズから価格からピンの数まですべて8で統一されており、そういう凝りようも半端じゃないです。
詳しくは、開発者さまの記事「Arduinoを自作して量産して販売する(超小型Arduino互換機 8pinoを例に)」へ。
6. Touch Board
各ポートがタッチセンサとして機能するArduino互換ボードです。これはなかなか楽しいですよ。
(基板は画像下の白いヤツ)
出典:BARE CONDUCTIVE
このBARE CONDUCTIVE社、通電インクペンで結構有名なんです。
上の画像のインクもコレですね。
まあしかし、そもそも、Arduinoでも静電容量式のタッチセンサは簡単に作ることはできます。(参考:INTER-ARTEQ、建築発明工作ゼミ)
このようなArduino用のシールドまで販売されています。
ではこのボードは何がすごいのか、
- なんら拡張せずともmicroSDが入りイヤホンジャックもあるので、「タッチすると音が出る」ものを簡単に作れる
- 測距センサを取り付けなくとも「ピンに取り付けた導電体」と「モノ」との距離がざっくり測定できる
ということなんです。機能を特化させ見事にモジュール化していますね。
(詳しくはBARE CONDUCTIVEのチュートリアルへ・・・)
下はこのTouch Boardの使用例の動画です。
クリックするとYoutubeに飛びます。
少々お高いですが、それに見合うくらいの機能性はあるかと思います。
おまけ:ArduinoとRaspberry Piの簡単な比較
フィジカルコンピューティングをする上での比較を簡潔に。
メリット | デメリット | |
---|---|---|
Arduino | ・アナログ(PWM)入出力が同時に複数可能 ・操作がとにかく簡単 |
・音楽再生やWi-Fi通信などには外付けのシールド等が必要 ・ストレージがない(要拡張) ・メモリが小さい |
Raspberry Pi | ・Wi-Fi、Bluetooth、イヤホンジャック、HDMIが標準搭載 ・microSDを挿入するためストレージがある ・メモリ1GB |
・アナログ(PWM)入力を行うには別途ICチップが必要 ・アナログ(PWM)出力ピンが1つしかない ・Linuxが面倒 |