2010年11月26日

フィジカルコンピューティング

こんにちは、イワサキです。手(パー)
Xbox360 Kinectが発売されましたね。社内でも楽しくプレイしています。
Kinectはまったく何も手に持たなくても遊べる、というのはまさに新しい世界!不思議な面白さがあります。

TVゲームでは昨今は「体感」をキーワードにした取り組みが各社で行なわれています。
WiiやXbox360のKinect、PlayStation3のPlayStationMoveなど、センサーを活用した応用としてゲームへの取り込みを行なっていますよね。
今までのゲームパッドを握ってプレイするスタイルとは違い、別の面白さがそこにはあります。

このようなセンサーなどの外部デバイスを駆使したコンピューティングを『フィジカルコンピューティング』を呼ぶそうです。
フィジカルコンピューティングでは入出力デバイスをマイクロコンピュータとつなぐ電子工作とマイコンのプログラミングを行います。

WiiリモコンやSIXAXISコントローラーが持つ加速度センサーや、テレビのリモコンや携帯電話などに使われているや赤外線センサーの他、
距離センサー、流量センサー、光センサー、温度センサー、圧力センサー、超音波センサーなどがあります。
出力では液晶やモーター、スイッチ、LEDなどのデバイスがあります。
Kinectではセンサーで人の動きを検知することでゲームに反映しています。

フィジカルコンピューティングは『電子工作』が必要になってきて、回路を組んだりする知識が必要です。
ちなみに私は、というと過去に電子工作をしたことは中学校の技術家庭の授業以来全くといってよいほど無く、初心者同然の状態ですがく〜(落胆した顔)
回路に至っても理科で学んだ電流Aと電圧Vと抵抗Ω程度の知識しかありませんでした。
ICチップやマイコンになってくるともはや分野外になってほとんどわからないほどの初心者です。

興味はあれどもなかなか踏み出せなかったそんな折、WEB上で面白いキットを見つけました目
イタリア製のフィジカルコンピューティングキット『Arduino』ですひらめき

Arduino公式サイト
http://www.arduino.cc/

Arduino【Wikipedia】
http://ja.wikipedia.org/wiki/Arduino
読み方は「アルドゥイーノ」だそうです。イタリアーン♪

早い話、簡単にマイコン制御ができるキットです。
中には工業高校出身の人や大学で工学を学んでいた方もきっと居ると思います。
そんな方にはこのArduinoは最高に楽しめるデバイスになるに違いありません。
PICなどのプログラミング可能なチップは今までにも存在しましたが、私が衝撃を受けたのはそのとっつき易さです。
私のような初心者でもArduinoはとても敷居が低く、プログラマーだったら誰でも使えるものになっていると思いますぴかぴか(新しい)

理由はその特徴にあります。
Arduinoの特徴は・・・



単体で動作するひらめき
これは一旦プログラムを転送してしまえばひとつのデバイスとして完結するということです。
PCに依存せず使用することができるようになります。入手も数千円で手に入りますので極端に高価というわけではありません。

2010-11-26-1.jpg
手のひらサイズ!

プログラムが動くひらめき
VisualStudioのような統合環境が用意されており、しかもプログラミングはC言語ライクに記述できます。
C言語が使える人なら自在にプログラミングができます。USBで繋いで実行できます。
たとえばLEDを1秒おきにチカチカ点滅させるプログラムは下記のようになります。
 http://www.arduino.cc/en/Tutorial/Blink
2010-11-26-2.png
慣れ親しんだ言語だとすぐに内容を理解できますグッド(上向き矢印)

SDKがオープンソースですべての情報が公開・ライブラリも充実ひらめき
【Arduino 日本語リファレンス】
http://www.musashinodenpa.com/arduino/ref/
モーターの制御やLAN経由のEthernetアクセス、無線通信などライブラリが多彩でとても使いやすいです。
又、コミュニティではたくさんの自作ライブラリが公開されています。
とくに私の中で面白いと思ったのは『Twitterで喋る便器』です。

hacklab.TOilet - a twitter-enabled toilet at hacklab.to
http://aculei.net/~shardy/hacklabtoilet/
http://twitter.com/hacklabTOilet
トイレのコックにセンサーがついており、それに反応してTwitterにつぶやきを自動投稿する仕組みのようです。

拡張ボードが多彩ひらめき
シールドと呼ばれるアドオンキットで追加機能をボード上に簡単追加することができます。
LANコネクタやBluetoothボード、温度センサー、スライダーつまみやゲームコントローラー、リレーやSDカードスロットなどかなり多くのアドオンが存在しています。
工作の知識が少なくてもスロットにさすだけで簡単に追加できます。
http://arduino.cc/en/Main/Hardware

デジタル入出力・アナログ入出力が使えるひらめき
デジタル(0か1か)だけでなく、アナログの値(範囲がある数値)も取得可能です。
たとえば音量ボリュームはアナログだったりします。




個人的には自宅でも生活を便利にするために使ってみたいと思っています。
どう便利に面白く作っていくかはゲームの延長上にある感じがして楽しそうです。
仕事ではシェーダーでBRDFを利用する際のデータ計測する機器の自作などに活用できそうです。

フィジカルコンピューティングは応用の幅と自由度が無限にあり、ゲームプログラマーとして遊び要素を付け加えたりできる余地がたくさんある分野だと思います。
「物を作る楽しさ」をプログラミングだけに留めずに視野を広げる敷居を下げてくれる意味でもArduinoはとても良いデバイスだと思いますわーい(嬉しい顔)

ゲームプログラマは視覚・聴覚・触覚を刺激するゲームを作ることができる最高に楽しい職業だと思います。
Let'sフィジカルコンピューティング!パンチ


posted by 管理人 at 13:06 | 商品紹介