物理授業実践記録
計測・制御が手軽になった
Gainer mini で始める
フィジカルコンピューティング
鳥取県立鳥取工業高等学校
足利裕人
 高度情報化社会が訪れ,コンピュータを用いた計測・制御および通信機能は,現代社会の医療や産業,交通等あらゆる分野の基盤となっている。一方,社会の変化に比べ,学校現場での理科実験へのコンピュータの活用は,遅々とした変化しか感じられない。しかし,誰でも手軽にコンピュータに様々な機器を接続し,自分用に発展させることができるフィジカルコンピューティングが登場し,理科での計測・制御の救世主になろうとしている。
 
1 はじめに

 計測・制御の理科実験への活用が進まない原因には,高価な教材パッケージや,プログラミング等ソフトウェアのしきいの高さがある。
 フィジカルコンピューティングとは,既存のディスプレイやキーボードやマウスだけではなく,必要に応じて新しいハードウェアを使って,コンピュータと人間とのコミュニケーションを実現するという考え方である。コンピュータのユーザインタフェースをハードウェアを使って拡張したり,コンピュータで電子機器を制御したりするのに便利な手法であり,2006年に小林茂氏らによってGainer(ゲイナー) ツールキットが開発された。 Gainerを利用することにより,センサーからの情報をパソコンに取り込んだり,パソコンからアクチュエータの制御を行ったりすることができる。 Gainerは,工学系・美術系(メディアアート系)の学生や研究者,ハードウェアに興味があるコンピュータファンを意識して開発された。また,Gainerの小型版Gainer miniが株式会社アールティにより発売されている。
 
2 Gainer miniによる計測・制御

図1 ブレッドボード上に配置したセンサー
 Gainer miniはPICを搭載したI/0インタフェースである。価格は4,200円。USBケーブルでパソコンと接続する。センサーや抵抗,配線材等は,半田付けがいらないブレッドボードに差し込むだけであり,製作のしきいを下げている。図1には光センサー(Cds),曲げセンサー,温度センサー,距離センサー,音センサーが搭載されている。
 また,プログラミングにはProcessingやFlash,Max/MSPを用いた例がGainer miniのサイトで紹介されており,サンプルソフトを見ながら,目的のソフトを作成することができる。最近は,C++やJava,Ruby等での活用例も見られる。Processingはオープンソースプロジェクトであり,スケッチと呼ばれる小窓で視覚的なフィードバックが即座に行われるため,プログラミング初体験者にも適している。
 図2は図1の距離センサー,照度センサー,温度センサーを測定するためのProcessingのプログラミング例である。

図2 Processing による距離,照度,温度の測定プログラム

 
3 加速度の測定

図3 Gainer mini と加速度センサー
 図3は3軸加速度センサーモジュールKXM52-1050(秋月電子で1,000円)を接続したものである。これだけでxyz方向の加速度が測定できる。この装置を自由落下させて得たxyz方向の加速度データを表計算ソフトに読み込み,グラフ表示したものが図4である。z方向の加速度(図4のグラフの緑の線)が重力加速度を示す。大きく振動している部分は,落下の衝撃による大きな力が働いたためである。
 図3の装置を斜面に乗せ,斜面の角度と落下の加速度の関係を測定する装置が図5である。

図4 3軸加速度センサーを用いた重力加速度のグラフ

図5 斜面上の加速度の測定

 
4 Gainerの学習参考書と学習キット

 全くの初心者が計測・制御を行うのに最適な一冊が「+GAINER」である。ブレッドボードにGainer miniや,センサー,抵抗等を接続する方法が実態配線図で書かれており,サンプルプログラムも書かれている。これ一冊である程度使いこなせる。
 また,(株)アールティーから様々なセンサーや,抵抗,制御機器であるサーボモーターなどがセットになった,Gainer miniスターターキットが販売されている。書籍「+GAINER」のチュートリアルの大半の部品が集められている。

+GAINER Physical Computing with Gainer
3,990円 くるくる研究室著 Ohm社
 フィジカルコンピューティングとは何か,ブレッドボードの使い方から始まり,様々なチュートリアル,レシピ,作例を写真と図版を多用して分かりやすく解説した一冊。