67ws funnel
TRANSCRIPT
本日の予定
• 第1部:18:00~19:30– フィジカルコンピューティング入門– 関連トピックの紹介– Gainerとは– 電子回路の基礎知識
• 第2部:19:50~21:00– Funnelとは– Funnel×Gainer I/O– Funnel×Funnel I/O
自己紹介:ツールキット開発の動機
• ハードは気軽にスケッチできない→ソフトが動いた段階で気がついても遅い
• 実際に動くまでは想像で進めるしかない→建設的なディスカッションが行われにくい
• デザイナーとエンジニアの共通言語がない→コミュニケーション上の齟齬が多発する
→インタラクションデザインのプロセスで使える ツールキットが必要なのでは?
フィジカルコンピューティングとは?
• ニューヨーク大学の ITP*1でTom Igoeらが中心となって教えているコースの名前
• インタラクションデザインを教えるための方法の1つ
• コンピュータが理解したり反応できる人間のフィジカルな表現の幅をいかに増やすか
• デザインやアート教育の1つの分野として定着
*1 Interactive Telecommunications Program
関連:ITP Spring Show 2008
概要:
• ITPで学ぶ学生の展覧会で毎年2回開催• 5月12日から13日まで開催• http://itp.nyu.edu/shows/spring2008/
フィジカルコンピューティングとは?
• PC+標準入出力デバイスの世界で実現できるインタラクションには限界がある– 人間が直接触れて感じることができない– PCのパラダイムに縛られてしまう
• 統一されたプラットホームならではの良さも勿論ある(例:Flashなどによるウェブ上での表現)
フィジカルコンピューティングとは?
• 物理的な入出力を活用することによって表現力は拡大する(例:Nintendo Wii)
• 電子楽器などではずいぶん昔からのテーマ
→Gainerを使った作例を紹介
作品紹介1:Haohao table
概要:
• 遠藤孝則+原田克彦+増田一太郎• メディアインスタレーション• 製作期間は約3週間• NTT InterCommunication Center [ICC]で展示(2006.6.6-2008.3.11)
作品紹介1:Haohao table
超音波センサ1
超音波センサ2
超音波センサ5
超音波センサ6
I/O PC
プロジェクタ
USB
VGA
プランター内部 バックヤード
センサのオン/オフ
アナログ出力
作品紹介2:ゲイナーカイダン
概要:
• メディアインスタレーション• 製作期間は約1ヵ月• NTT InterCommunication Center [ICC]で展示(2007.4.19-2008.3.9)
•「インタラクティヴ年表2008」としてリメイク
作品紹介3:Mountain Guitar
• 金箱淳一(大学院6期生)• 音楽表現のためのギター型インタフェース
– 親しみやすさ– 演奏の奥深さ
• 各種センサ+ I/Oモジュール+PC• IAMAS東京展「いまからだ」などで展示• 学生CGコンテストなど複数で受賞
作品紹介4:みくまりね その3
• 柏木恵美子(アカデミー11期生)• メディアインスタレーション• 水に関するオノマトペが題材• 水道の蛇口がインタフェース• IAMAS東京展「いまからだ」で展示(2007.8.24-26)
作品紹介6:LED BALL
• 北村穣(Rudesign)• Gainer I/O×4台+マトリクスLED• http://www.rudesign.jp/ruelog/2008/10/led-
ball.html
ワークショップの紹介
HELLO!!フィジカルコンピューティング
• 日時:2007.12.22-23• 場所:山口情報芸術センター• 参加者:19名• 言語:日本語• 環境:Processing×Funnel×Gainer I/O
関連:Sketching in Hardware 3
概要:
• フィジカルコンピューティングに関する会議• 2008.7.25~27の3日間開催• 参加者は約40名• 全員が発表• 濃密な情報交換とコミュニティ作り• 最後に「Sketching in Hardware」を実践
フィジカルコンピューティングの構成要素
• センサ(例:光、圧力、音、温度、加速度など)• アクチュエータ(例:LED、モータ、ソレノイドなど)• プロセッサ(例:マイコン、I/Oモジュール+PCなど)
→ものすごく簡単にまとめると プログラミング+電子工作
プログラミング+電子工作?
フィジカルコンピューティングは難しい?
• プログラミングはそれなりのスキルが必要(例:ActionScript、C、C++、Javaなど)• 電子工作にもそれなりのスキルが必要(例:回路設計、実装、検証)• 両方のスキルが必要ということは…
プログラミング+電子工作?
最近では扱いやすいプラットホームが登場
• プログラミング– Flash– Processing
• 電子回路のスケッチ– Gainer– Arduino– Phidgets
電子工作は大変?
• 誰でもはんだ付けくらいはやったことがある• まずは必要最小限のこと(だけ)を覚えればスタートできる– 電圧~電流~抵抗– 回路図の読み方– オームの法則など– よく使う部品のシンボルと特徴
• 失敗しながら覚えていけばいい• でもUNDOはきかない(=人生と一緒)
フィジカルな世界とつなぐ方法
マイコン+PC(例:Arduino、Wiring)a
b
c
d
A
B
C
D
マイコンmicrocontroller
PC
USB
program
a0]=ain.o;aout.1 = 255;
program
a0]=ain.o;aout.1 = 255;
フィジカルな世界とつなぐ方法
I/Oモジュール+PC(例:Gainer、Phidgets)a
b
c
d
A
B
C
D
I/OモジュールI/O module
PC
USB
program
a0]=ain.o;aout.1 = 255;
電圧~電流~抵抗
よく出てくる補助単位の例
• 1,000倍を表すキロ(例:1kΩ)• 1,000,000倍を表すメガ(例:1MΩ)• 1
1,000を表すミリ(例:1mA)• 1
1,000,000を表すマイクロ(例:50µA)
LEDを点灯させてみよう
どうして抵抗器が必要なの?
• LEDには適切な電流の範囲がある(例:20mA)• その範囲を超えると簡単に焼き切れてしまう• 適切な値の抵抗器を用いて電流を制限する• 適切な抵抗値はどうやって求める?→オームの法則を用いて計算する
※抵抗器で電流を制限する方法が全てではありません
オームの法則
電源電圧− LEDの電圧 = LEDに流したい電流× R
Rを求めるためにこの式を変形
R =電源電圧− LEDの電圧LEDに流したい電流
例:電源電圧が5.0V、LEDの電圧が1.8V、電流が10mA
R =5 − 1.8
0.01=
3.2
0.01= ?
※実際には計算結果に近い値の抵抗器を用いる
Funnelとは?:背景
• Gainerはいわばシンプルなドライバ→複雑な現実世界を扱うにはもう少し高次の レベルが必要なのでは?
• 全ての用途をカバーできるツールキットはない→ツールキットの使い分けは容易ではない
• 有線接続だと体験に制限がでてしまう→簡単に利用できる無線接続が必要
Funnelとは?:関連
Sketching User ExperiencesGetting the Design Right and the Right Design
Bill Buxton(Morgan Kaufmann Pub・2007年)
GainerとArduinoの比較
Gainer Arduino Duemilanove入出力ピン 16 20
A/D 8 (8bit) 6 (10bit)PWM 8 (8bit) 6 (8bit)
ユーザボタン 1 0ユーザLED 1 0
オープンソース Yes Yesスタンドアロン No Yes
重点 簡単 拡張性
Funnelの構成
!"#$%#&&'()*+&
,-.)&/012$3(45+&
6/45.)(78.9:$;./<-9-=
!"#$%#&&'()*+&
;5))&+$"&/>&/
6?9.()"?/.@9$A B/(?&CC.)* 3-D13"B&9?EF5GH
6"A$I.G/-/H B/(?&CC.)*$I.G/-/H 2"J$I.G/-/.&CF5GH$I.G/-/H
;5))&+$012 '.*.$0)9&/)-9.()-+%#&&;5))&+$012 '.*.$0)9&/)-9.()-+
%#&&
FIO: Funnel I/O Module v1.2
• LilyPad v1.6がベース• 3.3V動作• Arduino互換機(動作速度は8MHz)• XBee無線モデム(802.15.4またはZigBee)• 充電器内蔵• シールドでさまざまな機能を拡張
Gainer I/Oの入力について
入力には2種類ある
• デジタル入力(din:0か1かの2段階)– スイッチなど– 状態がシンプルで取扱が簡単
• アナログ入力(ain:0~1の256段階)– 出力電圧が変化するセンサなど– 連続変化を扱うことができる
Gainer I/Oの出力について
出力には2種類ある
• デジタル出力(dout:0か1かの2段階)– LED、モータなど– 状態がシンプルで取扱が簡単
• アナログ出力(aout:0~1の256段階)*2– LED、モータなど– 連続的な変化を扱うことができる
*2 実際にはPWMによる疑似アナログ出力
デモ:AS3×Funnel×Gainer I/O
Flashからリアルを動かしてみる
• TeraClock*3を利用• LEDを動かしてみる• ACソレノイドを動かしてみる
*3 http://www.libspark.org/wiki/trick7/TeraClock
ACソレノイドを動かす?
• SSR(ソリッド・ステート・リレー)によりAC100V機器もLEDと同様にオン/オフ制御できる
• ACソレノイドの直線運動を別のエネルギーに変換することでフィジカルな世界に働きかけることができる
今後の予定:展覧会
IAMAS Gangu Project―Work In Progress展
• 日時:12月25日~27日(11時~19時)• 会場:アクシスギャラリー• 詳細:http://www.iamas.ac.jp/project/ui/