osc nagoya 2008

77
Open Source Conference Nagoya 2008 Gainer/Funnel が誘う フィジカルコンピューティングへの招待状 小林茂(IAMAS:岐阜県立国際情報科学芸術アカデミー)

Upload: shigeru-kobayashi

Post on 31-May-2015

2.636 views

Category:

Technology


1 download

DESCRIPTION

The slides for my presentation at Open Source Conference Nagoya 2008.

TRANSCRIPT

Open Source Conference Nagoya 2008

Gainer/Funnelが誘うフィジカルコンピューティングへの招待状

小林茂(IAMAS:岐阜県立国際情報科学芸術アカデミー)

このセッションの内容

• フィジカルコンピューティングとは• Gainer / Funnelとは

– オープンソースハードウェア– オープンソースソフトウェア

資料→www.slideshare.net/kotobuki

自己紹介

• 1970年愛知県名古屋市生まれ• ローランド株式会社(1993~2004)

– サウンドデザイナー– 技術研究所– ソフトウェアエンジニア

• IAMAS(2004~)– フィジカルコンピューティング– ユーザーインタフェース

普段使用しているオープンソースソフトウェア

• Ruby• Eclipse• Subversion• Firefox• Thunderbird• Processing• Arduino

普段使用しているプロプライエタリソフトウェア

• Mac OS X• Adobe Creative Suite 3• Adobe Flex Builder 3• Microsoft Office• TextMate(テキストエディタ)• Eagle(プリント基板CAD)

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

• ニューヨーク大学の ITP*1でTom Igoeらが中心となって教えているコースの名前

• インタラクションデザインを教えるための方法の1つ

• コンピュータが理解したり反応できる人間のフィジカルな表現の幅をいかに増やすか

• デザインやアート教育の1つの分野として定着

*1 Interactive Telecommunications Program

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

一般的なPCから見た人間は?

• キー情報(ASCIIキーボードから)• マウス情報(1つのマウスから)

Alto (1973)

出典:http://toastytech.com/guis/

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

• PC+標準入出力デバイスの世界で実現できるインタラクションには限界がある– 人間が直接触れて感じることができない– PCのパラダイムに縛られてしまう

• 統一されたプラットホームならではの良さも勿論ある(例:Flashなどによるウェブ上での表現)

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

• 物理的な入出力を活用することによって表現力は拡大する(例:Nintendo Wii)

• 電子楽器などではずいぶん昔からのテーマ

フィジカルコンピューティングの構成要素

• センサー(例:光、圧力、音、温度、加速度など)• アクチュエータ(例:LED、モータ、ソレノイドなど)• プロセッサ(例:マイコン、I/Oモジュール+PCなど)

→ものすごく簡単にまとめると プログラミング+電子工作

プログラミング+電子工作?

最近では扱いやすいツールキットが登場→「ハードウェアでスケッチ」が可能に

• プログラミング– Processing– Flash

• 電子回路のプロトタイピング– Gainer– Arduino– Phidgets

フィジカルコンピューティングの実現方法

マイコンのみ(例:PIC、AVR)a

b

c

d

A

B

C

D

マイコンmicrocontroller

program

a0]=ain.o;aout.1 = 255;

フィジカルコンピューティングの実現方法

マイコン+PC(例:Arduino)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;

Arduino

フィジカルコンピューティングの実現方法

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;

Phidgets

ワークショップの紹介

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

• 日時:2007.12.22-23• 場所:山口情報芸術センター• 参加者:19名• 言語:日本語• 環境:Processing×Funnel×Gainer I/O

作品紹介:Mountain Guitar

• 金箱淳一(大学院6期生)• 音楽表現のためのギター型インタフェース

– 親しみやすさ– 演奏の奥深さ

• 各種センサ+ I/Oモジュール+PC• IAMAS東京展「いまからだ」などで展示• 学生CGコンテストなど受賞多数

作品紹介:Mountain Guitar(スケッチ)

作品紹介:Mountain Guitar(1号)

作品紹介:Mountain Guitar(2号)

作品紹介:Mountain Guitar(2号の製作中)

作品紹介:Mountain Guitar(3号)

作品紹介:Mountain Guitar(4号)

作品紹介:Mountain Guitar(4号の製作中)

作品紹介:Mountain Guitar(4号の配線)

作品紹介:Mountain Guitar(5号)

作品紹介:Mountain Guitar(5号の内部)

作品紹介:Mountain Guitar(展示)

• リンツ(オーストリア)アルスエレクトロニカフェスティバル

• 青山(東京)IAMAS東京展「いまからだ」

作品紹介:Mountain Guitar(展示)

作品紹介:Mountain Guitar(展示)

関連トピック:Make Magazine

Make: Technology on Your Time Volume 04オライリー・ジャパン編(オライリー・ジャパン・2008年)

関連トピック:Fashioning Technology

Fashioning TechnologyA DIY Intro to Smart Crafting

Syuzi Pakhchyan(O’Reilly Media・2008年)

Gainerとは?

オープンソースハード&ソフトのツールキット

• I/Oモジュール• ソフトウェアライブラリ

– ActionScript 2/3– Processing– Max/MSP

Gainer I/Oモジュール

I/Oモジュール+ブレッドボード

さまざまな電子部品

I/Oモジュール+ブレッドボード+部品

入力:曲げ

出力:LEDアレイ

出力:振動モータ

オープンソースハードウェア

Spark Fun Electronics版Gainer I/O

• v1.0をベースにリ・デザイン• PSoC + FT232RL

オープンソースハードウェア

Ginger/Pepper(桑田さん)

• v1.0をベースにリデザイン• AVRのみでUSB接続も実現

http://web.mac.com/kuwatay/

オープンソースハードウェアとは

• Creative Commonsなどのライセンス下でハードウェアのデータを公開– 回路図– ボードレイアウト– ファームウェア

• 公開されたデータを元に再配布や改変ができる• 少量生産&頒布が容易になった状況を反映したものづくりの新しい流れ

オープンソースハードとソフトの共通点

• 4つの自由• コミュニティが鍵• コミットにはさまざまな方法がある• 利益を得ることもできる• さまざまなライセンス方法がある

オープンソースハードとソフトの相違点

• 開発にはより多くの資金が必要• 簡単には「コンパイル」できない• 動作検証が簡単ではない• CADソフトは多くがプロプライエタリ• 広範囲のスキル(部品~流通)を要求される• 頒布するには手間がかかる• diffのようなツールがない• リリース後にアップグレードできない

オープンソースハードウェアの例:Chumby

オープンソースハードウェアの例:BUG

オープンソースソフトウェア

開発コアチーム以外への広がり

• C++ / QuartzComposer(高山さん)• .NET(布留川さん)• Perl(川崎さん)• PureData / vvvv(EXPRE55.NET)• Python(芝尾さん)• Ruby(加藤さん)• Squeak(横川さん)

書籍:+GAINER

+GAINERPhysical Computing with Gainer

GainerBook Labo+くるくる研究室(九天社・2007年)

Funnelとは?:背景

• Gainerはいわばシンプルなドライバ→複雑な現実世界を扱うにはもう少し高次の レベルが必要なのでは?

• 全ての用途をカバーできるツールキットはない→ツールキットの使い分けは容易ではない

• 有線接続だと体験に制限がでてしまう→簡単に利用できる無線接続が必要

Funnelとは?:コンセプト

• スケッチからプロトタイプまでシームレスに使えるツールキット

• デザイナー/アーティストとエンジニアの「共通言語」を目指す

※2007年第 I期未踏ソフトウェア創造事業(美馬PM)

Funnelとは?:関連

Sketching User ExperiencesGetting the Design Right and the Right Design

Bill Buxton(Morgan Kaufmann Pub・2007年)

Funnelとは?:関連

出典:Bill Buxton, Sketching User Experiences (2008)

Funnelの特徴

入出力をより簡単に扱うためのフィルタ

• ローパス、ハイパス• アナログ入力を設定した閾値で分割• スケーリング• オシレータ

Funnelの特徴

複数の I/Oモジュールに対応

• Gainer• Arduino• XBee• Funnel I/O

Funnelの特徴

複数のプログラミング言語をサポート

• Processing• ActionScript 3(FlashまたはFlex)• Ruby

Funnel:Rubyのコード例

コード例 1 ボタンで I/Oモジュール上のLEDを制御

@gio = Gainer.new

# ボタンが押された(0から1に変化した)らLEDを点灯@gio.button.on RISING_EDGE [email protected] = 1

end

# ボタンが離された(1から0に変化した)らLEDを消灯@gio.button.on FALLING_EDGE [email protected] = 0

end

Funnelの構成

USB XBeeDongle

GainerI/O Module

Arduino(with Firmata)

USB XBeeDongle

Funnel Server

ActionScript 3 Processing Max/MSPetc.Ruby

AS3 Library Processing Library OSC LibrariesRuby Library

Funnel I/OMaxStreamXBee

Funnel I/OMaxStreamXBee

Funnel I/O Module v1.0

オリジナル:LilyPad Arduino

オリジナル:LilyPad Arduino

Funnel I/O Module v1.0

Funnel I/O Module v1.0

デモ:action-coding×Funnel×Gainer I/O

action-codingとは?

• 開発者:増田一太郎(株式会社メタファー)• JRubyからProcessing APIを利用• プログラムの動的な書き換え• スケッチするような感覚でコーディング

デモ:action-coding×Funnel×Gainer I/O

センサ入力でグラフィックをコントロール

• ボタン• ボリューム

デモ:action-coding×Funnel×Gainer I/O

ain 0にボリュームを接続

デモ:action-coding×Funnel×Gainer I/O

ain 0にボリュームを接続

デモ:action-coding×Funnel×Funnel I/O

フィルタ&スケーラ

• 加速度センサの値を取得• スムージング• スケーリング• 画面上のキューブをコントロール

デモ:Ruby×Funnel×Funnel I/O

ブロードキャスト+オシレータ

• LEDをチカチカ点滅• LEDをふわふわ点滅• 位相を変えた複数のサイン波でドライブ

参考書籍

はじめてのGainerプログラミングガイド布留川英一(工学社・2008年)

参考書籍

Making Things TalkPractical Methods for Connecting Physical Objects

Tom Igoe(O’Reilly Media・2007年)

参考書籍

Built with Processing [改訂版]デザイン/アートのためのプログラミング入門

前川峻志+田中孝太郎(ビー・エヌ・エヌ新社・2008年)

参考書籍

ProcessingA Programming Handbook for Visual Designers and Artists

Casey Reas + Ben Fry(MIT Press・2007年)

参考書籍

デザイン思考の道具箱イノベーションを生む会社のつくり方

奥出直人(早川書房・2007年)

Open Source Conference Nagoya 2008

Gainer/Funnelが誘うフィジカル・コンピューティングへの招待状

小林茂(IAMAS:岐阜県立国際情報科学芸術アカデミー)