ロクナナワークショップ NEWS & REPORT

レポート「小林茂に学ぶフィジカルコンピューティング-Funnelの可能性とActionScriptでの活用実演-」

この記事を読むのに必要な時間:およそ 2.5 分

フレームワークとしてのFunnel

イベントの途中,小林氏の紹介によりロクナナワークショップGainer入門講座の講師であり,合同会社アライアンス・ポートのグラフィックデザイナーの山辺真幸氏が登壇。実際にFlash ActionScriptを使用し,加速度センサとPapervision3Dでの実装デモをライブコーディングで実演。ActionScriptとの親和性を解説した。

山辺真幸 氏

山辺真幸 氏

デモでは,Papervision3Dで生成されたキューブが,加速度センサの入力データに応じて動作した。ライブコーディングでは,ハードにGainerを使用。Funnelサーバの設定からGainerのI/Oモジュールに適したコードの書き換えを行った。Funnelライブラリを使用しているため非常にシンプルに記述することが可能なようだ。また,Funnelの特徴でもあるフィルタについても解説し,入力される値を指定の下限値と最大値へリニアにスケーリングが可能なScaler,入力に対して移動平均フィルタをかけて滑らかにするConvolution,アナログの入力値に対してしきい値と不感帯を設定し,0か1かの2つに分割するSetPointを紹介。このような複雑なフィルタ処理も,Funnelならば一行で記述が出来るとした。

続いてFIOを使用した無線通信での実演。FunnelサーバのSettingファイルやActionScript側での生成インスタンスなど,若干の変更はあるものの移行はスムーズで,ドライバやライブラリの換装もなくかなりシンプルだったといえる。山辺氏によれば,⁠最初からFunnelで開発すれば,あとで無線にしたい場合でもモジュールを選ばない利点があるので,細かいところを気にしなくて良い」と語った。

イベント後半では主に電子回路の基礎知識から,Funnelでのイベント処理,センサに応じた入出力制御についてデモを交えて解説。前述のとおり,Funnelは,非常に優れたフィルタ処理クラスを持つ。これによって,異常な値を受け取っても適正な値に,専門知識が無くても簡単に変換させることができるのが嬉しいのは筆者だけではないだろう。フィルタでは入力以外に出力にも対応し,LEDの点滅を制御するOscクラスも紹介された。味気ないチカチカ点滅や,Macのスリープランプようなふわふわとした点滅まで,パラメータを調節するだけで制御可能だ。ただし,LEDなどをOscクラスからしかコントロールできないわけではなく,⁠TweenerやTweensyなどのライブラリから,通常のアニメーションと同様にコントロールすることも可能だ」と語った。

画像

Funnelライブラリでのイベント処理についても,ActionScript 3.0でのイベント処理を踏まえ,addEventListenerで入力をキャッチできるとし,客観的に見てもActionScript 3.0との親和性が高いことへの理解は容易で,特徴を存分に活かしているといえるだろう。

Arduinoの拡張性とGainerのシンプルさ,そこから生まれたFIO

FIOはLilyPad Arduino v1.6から派生してデザインされたArduino互換機だ。Arduinoとは世界的に有名なオープンソース・プラットフォームで,IDE(ソフトウェア開発環境)とArduino I/Oボードから構成される。Arduinoは回路図・基板レイアウトが公開されているオープンソース・ハードウェアの側面も持つため様々な派生形が存在する。FIOもその一つと言え,Gainerでは難しかった無線モジュールを実装している。

Arduinoの各部紹介

図版:柏木恵美子

FIOの無線通信方式にはWi-Fi(無線LAN)やBluetoothと比べて低速だが接続ノード数が非常に多いZigBee(IEEE802.15.4)を採用。これについて小林氏は「もともと家庭内でリモコンの役割だとか,工場にセンサを多数配置し,監視システムの役割を担うという話もあった。その背景でZigBeeは電池寿命についても前者に比べると断然長く,ネットワークにおいてもBluetoothとは異なりセッションを張らないため,接続の確立までに数ミリ秒のみしかかからないところに注目した」と語り,実際にFIOで無線通信を準備から動作確認までを実演した。

画像

この他にも,イベント当日時点で未公開の最新バージョンFunnel009RC2にも触れ,来場者の関心度はさらに増した。デジタルコンパスやカラーセンサなどのI2Cデバイスのサポート,Funnelサーバのアプリケーション化など新機能は多い。会場で小林氏はFunnelライブラリに追加されたfunnel.i2c.HMC6352 クラスによるデモを実演し「向いてる方向がとれるため,加速度センサと連携した星座アプリや,3Dブラウザなどが実現できるのではないか」と語った。Funnel009RC は本稿執筆時点(2009年04月23日)既に公開されているので,是非チェックしてほしい。

今回のイベントではライブコーディングというアプローチで,FunnelのActionScriptとの親和性,そしてなにより手軽さが来場者に実証されたのではないだろうか。フィジカルコンピューティングのハードルは一見高そうに思えるし,とっつきづらい感があるのは否めない。しかし,実際は非常に手軽で簡単,そのうえ自由度が高いのが事実だ。本稿を読んで興味をもったならば,是非チェレンジしてみて欲しい。

ロクナナワークショップは様々なGainer入門講座を開講しておりFlashとFunnelで始めるGainer入門講座では,今回ゲストとして参加した山辺氏が講師を担当。受講者にはGainer I/Oモジュールとブレットボードを含むツールキットがもれなくプレゼントされる。これを機会にぜひGainer・Funnelを実際に触ってみてはいかがだろうか?

(2009/4/23 加茂 雄亮)

著者プロフィール

ロクナナワークショップ(ロクナナワークショップ)

アドビ認定トレーニングセンター ロクナナワークショップでは,Web業界の第一線で活躍中の講師陣による,実践的な講座を開講しています。全ての講座は最大6名・1日6時間で完結する,PCを操作しながらの集中トレーニングです。

また,各方面で活躍中のクリエイターをお迎えし,最新技術やアイデアをご紹介いただくイベントも開催しています。学生割引もありますので,是非一度参加してみてください。

URL:https://67.org/ws/