スケッチング(物理コンピューティング) チュートリアル/ワークショップ
ウェルネス・エンタテインメントやバイオフィードバックを実現する
フレームワーク/ツールキットとしてのメディアアート--- "ポストGainer"の新しい展開、生体センシングと内受容感覚の可能性---
2019年12月 長嶋洋一(SUAC) ★ ★
スケッチングを活用したメディアアート学生作品の実例
概要
Part 1 脳科学とBFウェルネスの可能性 背景とイントロダクション Part 2 インタラクティブなシステムのデザインとは "Interactive Entertainment System" の事例紹介 - 「メディアアート」の世界 Part 3 "post-Gainer" の時代 (1) Gainer (2) Arduino (3) Platforms - Max7, Processing, PureData (4) Firmata + Maxuino (5) Arduino2Max (6) Arduino-USBMIDI (7) Propeller (8) mbed (9) Raspberry Pi Part 4 生体センシングとその応用 (1) Myo, DoubleMyo (2) Muse (3) OpenBCI (4) PAW sensor (5) VPP-SUAC (6) Vibration-Tactile Display1. ヒトの「より良い状態」とは(脳科学とBFウェルネスの可能性)
- ウェルネス/ウェルビーイング、リハビリの意義、バイオフィードバックの意義
- ウェルネスとウェルビーイング
- ウェルネス(Wellness)あるいはウェルビーイング(Well-being)
- 根元には人間のホメオスタシス(恒常性)本能に基づく
- WHO"健康"(1948) - 「身体的/精神的/社会的に完全に良好な状態であり、単に病気/虚弱でないことではない」を拡張
- 「個々人が前進/成長して、より高い機能を獲得する可能性に向かって向上する変化の状態」という概念(Halbert L. Dunn,1961)
- 医学的な物理療法だけでなくストレス社会におけるメンタル領域を対象とした心理療法まで含めた概念
- 広義の「エンタテインメント」(15世紀から続く単語"entertain"の語源の3つの意味「ゲストをもてなす」・「人々を楽しませる」・「心の中に何かを持つ」の3番目)に対応した意義(長嶋)
- リハビリテーションとハビリテーション
- リハビリテーション(rehabilitation)とは - 「能力低下の状態を改善し、障害者の社会的統合を達成するための手段、障害者が環境に適応するための訓練」(WHO 1981)
- リハビリテーション(rehabilitation)とは - 「身体的/精神的/社会的に最も適した生活水準を達成することで、各人が自らの人生を変革していくことを目指す過程」(国連・障害者に関する世界行動計画 1982)
- 一般にリハビリテーションは「獲得済みの機能が何らかの原因で失われたときに行われる」とされる
- ハビリテーション(habilitation) - 「出生前後に罹患した病気や外傷によって起きる先天的な障害を持った者の、もともと獲得されていない機能の獲得」を支援する(Anthony L. Brooks,2013)
- 「内受容感覚」の可能性
- 情動/感情/意識と関係した「内受容感覚」(Interoception)が注目されている
- 視覚/聴覚/味覚/嗅覚/触覚などの外受容感覚(Exteroception)
- 内臓/血管/内分泌系/横紋筋などの情報から脳が受容する内受容感覚(Interoception)
- Antonio R. Damacioの提唱するソマティック・マーカー仮説と対応
- 人間の感情や意思決定に大きく関係している(胸騒ぎやギャンブル等の鳥肌)
- 身体の恒常性を維持するために無意識下で脳に送られる内受容感覚に従った脳内の状況予測マップが何らかの原因で予測から外れた場合に喚起されるのが情動
- 生物進化論的には - 原初的には危機回避の感情(怒り/怖れ)と関係
- バイオフィードバック
- 狭義のリハビリテーション(運動療法/物理療法/心理療法など)で必須となる
- 自覚/制御が難しい身体状況や生体情報をセンシングにより検出し、人間が感覚できる音/光/振動などのメディアに変換/提示して対象者(クライアント)に自覚させるフィードバック
- その利用により対象者が自身の身体状況などを意識的あるいは無意識的に制御する(→これにより自分自身について深く気付く)、という概念までBF
- (一例)脳波/筋電/心拍/皮膚電気抵抗(緊張)/体温/呼吸などの計測情報を対象者が知覚できるような情報として提示し、この情報をもとにリラックス状態など身体の状態を希望する方向へ導くトレーニングによって、実際にリハビリ療法を行ったりストレス解消のメンタルトレーニングを実現
- 本研究では「BFというインタラクションが単なる機械的な[刺激-反応]に留まらず、メディアアートの支援によって、人間の意識/心理の領域でより深い可能性を持つ」ことを追求している
- 生態学(ecology)からの視点
- 意識/無意識 - 基礎心理学の世界
- 脳科学/心理学と生体情報
- 「情動」をめぐるいろいろな仮説 - 基礎心理学の世界
- 「快」はどこから来るのか
- ダマシオ「生存する脳」(デカルトの誤り)から
- ダマシオ「無意識の脳 自己意識の脳」(身体と情動と感情の神秘)から
- ダマシオ「感じる脳」(蘇るスピノザ)から
2. スケッチング(物理コンピューティング)とは
- 過去の「ものづくり(デザイン)」
- 企画
- 実験
- 設計
- 試作
- 制作・製造・量産
- 新しい「ものづくり(デザイン)」
- 企画
- 実験・設計・試作 ← 「スケッチング」〜「実際に動く試作モデル」による検討
- 制作・製造・量産
- 「ものづくり(デザイン)」の2つのスタイル
- ニーズ指向 - 「こういうテーマを追求したい」
→ 実現する方法を考える- シーズ指向 - 「こんな新しい技術/モノ/センサ/システム等がある」
→ 作品として活用できないか考える- 「ものづくり(デザイン)」の3つの階層
- ハードウェア - 電子回路、機構、筐体
- ソフトウェア - いわゆる「プログラム」 - 何度でも書き換え更新/改訂が可能
- ファームウェア - 不揮発メモリ(FlashEEPROM)に書き込まれたプログラム ※スケッチング技術の基盤
(参考)メモリのいろいろ- 「オープンソース」の文化
- 「皆んなでHAPPYになろう」
- (C)で縛られない → 一例は(CC) Creative Commons
- クラウド、ユビキタス、モバイル、コンテンツ、n次創作、・・・
- オープンソース・ソフトウェア
- オープンソース・ハードウェア
- 3Dプリンティングも同じ流れに
- ファウンドリ - 「メーカ」のvirtual化
- クラウドファンディング
- ソフトウェア・プラットフォームと開発環境
- Max7
- (かつての"Director"→) Flash (ActionScript) → "Animate"へ
- Processing (Java)
- .Net (?)
- Xcode (C++)
- gcc (C)
- 各マイコン用IDE - Arduino、Propeller、mbed、AKI-H8、・・・
- 詳しくは以下も参考に
- スケッチング/プロトタイピングへの警鐘
- 画像認識(CV: ComputerVision, Kinect, WebCamera・・・)もいいけど、物理的センサのリアリティも忘れないで
- ブレッドボード - 信頼性がまったく無い、ライブのシステムに使う非常識はなんとかならないか(^_^;)
- P板屋 - 特急設計サービス、特急製造サービスは活用できる(台湾・香港・韓国が凄い)
- ハンダ付け - この王道を忘れてはいけない(^_^)
- インタラクティブなシステム実現の例 - SUAC碧風祭・メディア造形学科企画 「お化け屋敷」の事例
- 碧風祭2011「お化け屋敷」
- 碧風祭2013「お化け屋敷」
- 碧風祭2014「お化け屋敷」
- センサを使うための定番Max/MSP/jitterのテクニック集
- 値を見たい → マルチスライダー
- 値を反転したい → 数値演算オブジェクト
- 変化イベントを検出したい → "change"オブジェクト
- 「ある範囲の数値」で識別 → "if"オブジェクト
- 一定期間、反応をマスクする「不応期」のテクニック → "switch"オブジェクト
- 値の範囲を変更する → "scale"オブジェクト
- とびとびの値を滑らかに繋ぎたい → "line"オブジェクト
- 平均的な値を取り出したい → "mean"オブジェクト(移動平均)
- あとは → 以下も参考に
3. Sketchingの実例 - 新・筋電センサシステム「VPP-SUAC」
→詳しくはこちら4. Sketchingの実例 - 新・触覚センサシステム「PAW-double」
→詳しくはこちら5. 色々なハードウェア・プラットフォーム ★
- Arduino
- PCナシでスタンドアロン・システムを実現
- いろいろなファミリがある(上の写真は左から "UNO"、"nano"、"micro")
- フリーのIDE、サイトにはサンプル多数あり (C言語)
- 外部インターフェースのための増設基板(シールド)多数、XBeeも使える
- アナログ入力6ポート (Arduino Microは12ポート)
- ディジタル出力6ポート
- PWM(擬似アナログ)/ディジタル出力6ポート
- XBee通信は出来る(可能な範囲にプロトコルを定義すればよい)
- MIDI送信は出来るがMIDI受信は出来ない(データを落とすのは音楽用途には致命的) ※Arduino Microを「Arduino-USBMIDI」modeで使うとOK !
- 「+5V」系
- 活用システム例
- ふわり (スタンドアロン、音センサに反応して電球の輝度制御)
- hikiribi (ガラスとアクリルで制作したデスクランプ。目覚めてランプに息を吹きかけると、次第に明るくなっていく)
- Coloration (色センサ情報をArduinoがシリアルで受けてD/AしてGainerに渡してFlashが利用)
- ジャミーズ娘+ (MIDI出力→Maxへ)
- 日本の音風景 (XBeeでワイヤレス伝送→Maxへ)
- 三味線の兵(つわもの) (XBeeでワイヤレス伝送→Maxへ)
- パラパランプ (スタンドアロン、ボリュームを回すとステッピングモータを制御)
- 詳しくは→Arduinoサイト
- Arduino日記も要参照
- Firmata(+Maxuino)
- PCと実世界とのインターフェース専用(スタンドアロン無し)
- Firmataとは「ArduinoをGainer化するオープンソース・ファームウェア」のこと
- FirmataはUSBシリアル経由でいろいろな環境に対応している
- Gainerで不足する入出力をArduinoファミリの機能に拡張できる
- 「Firmataの走るArduino」をMaxからGainerのように扱うのがMaxuino
- シリアル通信は出来ない
- 「+5V」系
- 活用システム例 (ClydeとLittleBitsArduinoをFirmata化してMaxuino経由で使用)
- 詳しくは→FirmataサイトとMaxuinoサイト
- 制作例はこちらも参考に
- Arduino2Max
- PCと実世界とのインターフェース専用(スタンドアロン無し)
- Firmataよりもお手軽にArduinoをMaxの外部世界インターフェースとする手法
- スピードは115200bpsでなかなかに高速
- 元々のものはこのサイトのこれをゲットできる
- 元々のものはArduino2Max_1(→zipを解凍)
- Arduinoの"Arduino2Max_1"スケッチは元々のものを共用
- Maxの"Arduino2Max_1_01"パッチも元々のもの。これは大きくて見にくい(^_^;)
- Maxの"Arduino2Max_1_02"パッチはエッセンスをコンパクトにまとめたもの
- これをMaxの"Arduino2Max_1_03"パッチや"Arduino2Max_1_04"パッチのように活用していける
- このスタートラインはArduino_with_Max7(→zipを解凍)
- Arduinoの"Analog_to_Serial"スケッチは単にアナログ入力を刻々とシリアル出力する
- これをMaxの"Serial_Receive"パッチによって受け取る、というのが基本原理
- Arduino Microならアナログ12チャンネル可能なので→Arduino2Max_2(→zipを解凍)
- Arduinoの"Arduino2Max_2"スケッチは12チャンネルのアナログ入力を刻々とシリアル出力する
- これをMaxの"Arduino2Max_2_01"パッチや"Arduino2Max_2_02"パッチのように活用していける
- 1バイトの数値(0-255)をArduinoの8ビットのディジタル出力するのがArduino2Max_3(→zipを解凍)
- Maxの"Arduino2Max_3_01"パッチは1バイトの数値をシリアル出力する
- Arduinoの"Arduino2Max_3"スケッチは1この受信したシリアルデータをデコードして8ポートのディジタル出力から出す
- ごく普通のArduinoで6チャンネルのアナログ入力をMaxに返すのがArduino2Max_4(→zipを解凍)
- Arduinoの"Arduino2Max_4"スケッチは6チャンネルのアナログ入力を刻々とシリアル出力する
- これをMaxの"Arduino2Max_4_01"パッチなどはそれぞれ活用している。移動平均とかscaleオブジェクトによるマッピングなどの例
- LED内蔵スイッチのために「スイッチ入力」・「LED点灯」・「ホストシリアル出力」を合体させたのがArduino2Max_5(→zipを解凍)
- 単純に2個のスイッチ状態をデジタル入力してホストにシリアル出力するのがArduino2Max_6(→zipを解凍)
- これらを自在に必要なArduinoスケッチに改造して、対応するMaxパッチも改良していけるのが「Arduino2Max」の楽しみ方(^_^)
- Arduino-USBMIDI
- PCと実世界とのインターフェース専用(スタンドアロン無し)
- 通常のArduinoでは「MIDIは出来ない」ことに注意
- ArduinoのシリアルをMIDI速度の31250bpsにしてMIDIインターフェース(フォトカプラ入力とオープンコレクタ出力とDIN端子)を実現した場合
- MIDI出力は「Arduinoが暇な時に出力する」ことで実現OK → ジャミネータと遊ぼうでフル活用
- MIDI入力はArduinoがシリアル入力を取りこぼすので使用できない
- 普通のArduinoでなく、「Arduino Micro」だけは使えるMIDIとしてMaxと連携可能
- スピードは31250でなく115200と高速、ライブラリがFIFO処理するのでMIDI受信も取りこぼしナシ(^_^)
- ホストのMacからは「Mac OSX標準MIDIデバイス」と見え、Maxでは「普通のUSB-MIDI機器」として、MIDI関係オブジェクトが扱える
- 長谷部さんが「奇楽堂」ブランドで公開しているTouchMIDI32と同等に扱える
- Arduinoスケッチをコンパイルする際に、同じディレクトリ内に「MIDIUSB.cpp」と「MIDIUSB.h」とを置いておくこと。これにより「OSに認識されるUSB-MIDIデバイス」となってくれる
- ArduinoからテストMIDIを連続出力するのがMIDIUSB_test.zip(→zipを解凍)
- Arduinoの"MIDIUSB_test"スケッチはMIDIノートの36から71までを1秒間隔でノートオン/オフ(duration=250ms)を繰り返す
- Maxの"note_receive"パッチは、「notein」オフジェクトを叩いてMIDI機器としてArduinoを選ぶとこのMIDI情報を受け取って表示する
- ArduinoがMIDIをとりこぼさないかの「いじわるテスト」がMIDIUSB_loop.zip(→zipを解凍)
- Arduinoの"MIDIUSB_loop"スケッチは、MIDI受信したデータをMIDI出力する、というエコーバック動作。通常のArduinoだと受信しきれず異常になる
- Maxの"heavy_traffic_MIDI."パッチは「noteout」「midiin」オフジェクトを叩いてMIDI機器としてArduinoを選ぶと、多量のMIDIノート情報をガンガンに出力し、かつ受信したMIDIノート情報を表示する。エコーバックしているArduinoがデータを落とした場合にはこの両者が対応しなくなるが、ちゃんと対応してくれている事を確認できる
- ArduinoをUSB-MIDIデバイスとしてMaxの出張所にしたサンプルがMIDIUSB_read.zip(→zipを解凍)
- Arduinoの"MIDIUSB_read"スケッチはMIDIコントロールチェンジを受信するとエコーバック送信しつつ、LEDを点滅させる
- Maxの"read_test"パッチは「ctlout」「ctlin」オフジェクトを叩いてMIDI機器としてArduinoを選ぶと、MIDIコントロールチェンジとして色々なデータを送り、エコーバックされてきた情報で確認している
- 秋月電子のステッピングモータを制御するサンプルがMIDIUSB_stepping(→zipを解凍)
- 秋月電子のステッピングモータを5個、個別に制御するサンプルがMIDIUSB_stepping2(→zipを解凍)
- 同様に自在に必要なArduinoスケッチに改造して、対応するMaxパッチも改良していけるのが「Arduino-USBMIDI」の楽しみ方(^_^)
- Propeller
- PCナシでスタンドアロン・システムを実現
- オープンソース・コミュニティはあるがParallax社だけ。「マイコン界のApple」
- 内部に8個のCPU(80MHz)があり、並列動作(割り込み無し)
- フリーの専用IDE(Windows)、さらにフリーIDEのbst(Windopws/MacOSX/Linux)あり
- 専用言語spinとアセンブラで超強力
- アナログ入力は最大で14ポート可能
- ディジタル出力は最大で28ポート可能
- PWM出力は最大で28ポート可能
- シリアル送受信は最大で同時に6チャンネル可能、MIDIの受け落としナシ
- 「+3.3V」系
- 活用システム例
- 「電子十二影坊」・新楽器 「Peller-Min」 ・「万変鏡」
- OTOkakecco (4つのシリアルマウスと通信してGainer経由でホストに伝送)
- 誰かを待つ街 ★ ★ ★ ★
- 「Hikari」
- Nepic
- 新楽器「GHI2014」
- 詳しくは→Propellerサイト
- Propeller日記も参考に
- mbed
- Raspberry Pi
- PCナシでスタンドアロン・システムを実現
- ローコストのLinuxボード、いろいろなファミリがある
- USB、イーサネット、ビデオ出力、シリアル通信、汎用I/Oなど搭載 - 単体でパソコン/サーバとなる
- CPUは800MHzで高性能、ただし大電流の電源が必要なため事実上は電池動作不可
- Unixの開発環境、gcc
- 簡易言語PythonもOK
- 「+3.3V」系
- 動作例
- ホストMaxから刻々とOSC経由で与えられる情報をイーサネットで受けとったRaspberry Piが、接続されている「SUACボード」に接続された64個のLEDを個別にPWM制御・点灯させている
- 3台のRaspberry PiとホストMac上のMaxプログラムがOSC通信している。MacのMaxからそれぞれのRaspberry Piで走るPythonプログラムに8種類の変化するデータを送り、Pythonプログラムは画面内にウインドウを開いて受けとったデータを8個のスライダーとしてグラフィック表示している。MacはそれらRaspberry Piの画面情報をVNC経由で取得して同時に表示している
- USB接続のWebカメラ画像を入力しているRaspberry Piの画面情報をVNC経由でMacが取得して表示
- 詳しくはRaspberry Piサイトを参考に
- Raspberry Pi日記も参考に
- AKI-H8
- これです
- 日立のH8マイコンを搭載、アセンブラで書けばいまだに超強力(Arduinoを軽く凌駕)
- なんせ古いので書き込み環境が弱く、Windows(MSDOS)専用(;_;)
- アセンブラでMIDI割り込みを記述すれば超強力、64個のLEDの個別PWMも楽勝 → 「靄夜」(もや)
- 「+5V」系
- AKI-H8の解説
- AKI-H8で信号処理
- AKI-H8で電子楽器
- 活用システム例★
- Gainer
- メーカー製造販売中止(作者の小林茂氏も了承)、正式に過去のものとなった(;_;)
- PCと実世界とのインターフェース専用(スタンドアロンmode無し)
- Max, Flash, Processingに対応
- 8種類(実質は5種類)の入出力動作モードがある
- シリアル通信は出来ない
- 「+5V」系
- 活用システム例
- 詳しくは→gainerサイト (真っ白なページのみ。閉鎖された模様です)
6. 代表的な入出力/ホスト通信の方式とその対応法
- ディジタル入力
- 電源/信号電圧(H)とGND(L)とのいずれかをとる
- ディジタルICの出力を接続する
- スイッチを使う場合にはpull-up回路を使用する
- クロック(周波数)出力タイプのセンサは低周波数なら対応可能
- アナログ(電圧)入力
- 電源電圧とGNDとの間の電圧を連続値として入力
- 規定範囲外の電圧は素子破壊するので厳禁(保護回路)
- サンプリング時間に注意(→S/H)
- 電源供給・電圧出力型センサは直結
- 電圧生成型センサもレンジを検討して直結
- 抵抗値が変化するセンサは分圧抵抗を使用する
- 交流信号は規定範囲に変換する回路が必要
- ディジタル出力
- 電源/信号電圧(H)とGND(L)とのいずれかを出力
- LEDのドライブは電流供給能力に注意
- LEDのドライブには正論理と負論理がある
- モーター/リレー等は専用のドライバ素子を使用
- 「R-2Rラダー」を使用するとアナログ電圧出力できる(ビット数の精度で)
- 疑似アナログ(PWM)出力
- LED点灯でMaxとゼロの中間値を表示する
- 細かく時分割したON/OFFの比率(デューティ比)を制御 - PWM Pulse Width Modulation
- モーター等には適さない
- 最小値あたりでチラチラして、最大値近くでは視覚的には飽和する
- アナログ電圧出力
- GainerやArduinoでは出ない
- AKI-H8では出る
- ディジタル出力に「R-2Rラダー」を使用すると出来る
- シリアル通信
- 電圧制御システムのコントロール用に使用
- シリアル通信 - シリアル/RS232C/USBシリアル
- Max, Flash, Processingが対応
- GainerやFirmataでは出来ない(ホストとのUSB通信に使うため)
- 昔のパソコンでは「RS-232-C」としてモデムなどと通信した
- PC側はシリアルでも、ハードウェアとしてUSBを経由するドライバが充実している
- Maxでは「serial」オブジェクトで対応
- 活用システム例 - 「RFID」や「カラーセンサ」や「加速度センサ」や「超音波距離センサ」がシリアル対応
- 白い絵本 (RFID)
- はやくスシになりたい (RFID)
- おはなしパネル (RFID)
- Color Odyssey (色センサ)
- 二人はウラハラ (RFID)
- 空からの贈り物 (RFID)
- Coloration (色センサ)
- 新楽器「GHI2014」 (超音波距離センサ)
- ウチュウハウス (RFID)
- シリアル通信 - MIDI
- シリアル通信 - XBee
- Max, Flash, Processingが対応
- マイコンのシリアル端子に繋ぐと簡単にWiFi化できる
- Maxでは「serial」オブジェクトで対応
- 詳しくはWikipedia
- 「Arduino〜XBee〜Max」ビデオマニュアル(長嶋の下手な英語(^_^;))
- こちらも要参照 (XBeeの設定)
- こちらも要参照 (PropellerとXBee)
- 活用システム例
- こちらも要参照 (Raspberry PiとXBee)
- ネットワーク通信 - OSC
7. 「多数」の入力/出力に拡張する方法
- スリーステートゲート : ディジタル入力の拡張
- 入力をスルーするだけのバッファゲート
- 制御入力Gにより出力禁止にすると、出力がハイインピーダンス(絶縁)状態になる
- 多数の出力を結線することが出来る、ただし出力が許可されるのは必ず排他的にどれか一つだけ
- 74HC245
- ラッチ : ディジタル出力の拡張
- 入力はクロック入力CKの立ち上がりで保持(記憶)されて出力される
- CKが変化しなければ入力は変化しても出力は変わらない
- ある信号線を多数に分配してそれぞれ必要なところでラッチすることで多重化
- 74HC574
- デコーダ : 多チャンネルを管理するカギ
- 8ビット等のまとまりを1つのアドレスとして管理
- アドレスの2進状態を解読して排他的な選択信号を与える
- 一般的に負論理である事に注意
- 74HC138/139
- アナログスイッチ : アナログ入力/アナログ出力の拡張
- 規定範囲内の信号電圧であることを厳守する
- 半導体スイッチなので抵抗がそこそこある事に注意
- 簡単なシステムではとても重宝する
- 74HC4053/4052/4051
- 詳しくは→センサとマイクロエレクトロニクスの概要
- 実際にマルチホストマイコン(Gainer、Arduino、AKI-H8。Propeller)に対応して製作した汎用入出力拡張基板「SUACボード」の開発物語も参考に
8. 「同時にいくつもの仕事をさせる」ための方法
- ここではArduinoによる手法(ポーリング)をサンプルとして取り上げる
- 別途に、mbedの場合には割り込みを利用したイベントメソッド、Propellerの場合には並列処理手法がある
- Arduinoサイトや解説本の欠点 --- 「一つの事しか出来ない」
- CPUの本質は「逐次処理」の連結(羅列)
- 「時分割多重化」の考え方
- CPUに"wait"を使うのはあまりに無駄
- 「delay」を使ったプログラムは役に立たない
- 「sleep」を使ったプログラムは役に立たない
- 実はArduinoはそこそこ速いのに使いこなしていない
- 「グローバル変数」を使おう
- Arduinoブログラムの変数には2種類ある
- 関数内で定義するローカル(局所)変数
- 全体で定義するグローバル(広域)変数
- ローカル変数を持続させるにはstatic宣言
- 「ソフトウェアタイマ」を使おう
- 任意に定義できるフトウェアタイマ
- ハードに対応したハードウェアタイマ
- 再初期化を忘れずに
- ソフトウェアタイマの条件判定は「=」か「>」か?
- 正確な時間の管理方法
- システムタイマを参照する
- CPUに「厳密に正確な時間」は無い
- 平均してみればほぼ正しい時間
- Arduinoの割り込み処理 - ライブラリに任せる
9. メディアアート(インスタレーションやインタラクティブ展示)の例
- 時間の関係で過去の作品事例の紹介はごく一部ですので、後日、以下のリンクを参照して下さい
- Art & Science Laboratory(長嶋洋一サイト)
- 静岡文化芸術大学1106長嶋研究室
- SUACインスタレーション(1)
- SUACインスタレーション(2)
- SUACインスタレーション(3)
- SUACインスタレーション(4)
- 新楽器「GHI2014」
- ジャミネータと遊ぼう
- 電子十二影坊
- 「靄夜」(もや)
- インタラクティブアートの統合的システム・プラットフォームとしてのMax/MSP
- 作るサウンドエレクトロニクス
- アーティストのための汎用センサ自作応援講座
- 筋電センサ"MiniBioMuse-III"
- 電気刺激フィードバック装置の開発と音楽パフォーマンスへの応用
- オリジナルMIDIセンサを作ろう
- メディア・アートと生体コミュニケーション
- MIDI日曜大工日記
- 「なでなで」センサ
- 「いじいじ」センサ
- 身体情報と生理情報
- 実録・笙ブレスセンサを作る
- センサを利用したメディア・アートとインスタレーションの創作
- インタラクティブ・アートのための技術講座
- Propeller日記
- Arduino日記
- Processing日記
- SuperCollider日記
- 続・Propeller日記
- 続々・Propeller日記
- Raspberry Pi日記
- PureData日記
- Max6日記
- mbed日記
- Myo日記
- Xcode日記
- postGainer日記
- Max7日記
- 続・Max7日記
- Basic日記
- Sketching日記