EyeWriter 2.0 のつくりかた

本マニュアルはYCAM(山口情報芸術センター)で2011年10月に制作公開された展覧会LabActVol1 The EyeWriterに際し、当館の教育普及事業の一環として制作されたThe Eyewriterの日本語制作マニュアルです。2011年現在のTheEyeWriterの公開状況をふまえ、Mac OSX上で動作するシステムの作り方の説明になりますが、多くの部分はWindowsやLinux上で動作するシステムの開発にも利用が可能です。作業工程には一部ですが電子工作初心者には難易度の高い部分もありますので、自信のない方は経験者と一緒に作業することをおすすめします。下記の動画は行程のハイライトを集めたデモ映像です。英語版マニュアルはこちらのinstractablesサイトから。

なお、本マニュアルはCC BY-SAライセンスによって許諾されています。

同じEyewriterといっても使用する目的や制作者のアイデアによって様々に形を変えていきます。こういった自由度の高さはオープンソースの醍醐味といえるでしょう。

全工程

STEP1.準備

STEP2.作る

STEP3.使う

STEP1「準備」

工具を揃える

 

まず最初にEyewriterを作るうえで必要な工具を準備しましょう。使用する工具はホームセンターでも購入できる一般的なものです(写真.1)。細かいはんだ付け作業時には補助クリップスタンドが非常に役立ちます(写真.2)。電子工作に慣れていない方は購入しておいたほうが良いでしょう。

パーツを揃える

必要なパーツを集めましょう。YCAMでつくったパーツリストは日本国内での購入し易さで部品を選定しています。レンズマウントのみ現状海外の取り扱いしかないのが難点ですが、図面が公開されているので代替品を自作している事例もあります。

統合開発環境(IDE)をインストールする

統合開発環境(IDE)は、プログラマにソフトウェア開発用包括的な機能を提供するソフトウェアアプリケーションです。必要に応じてopenFrameworksを実行するための統合開発環境(IDE)をダウンロードしてインストールします。今回はアップルのIDEであるXcodeを使います。

・Xcode4.xの場合の注意
EyeWriterが開発された当初よりも、XcodeやOSなどのいくつかの環境はバージョンが更新されています。YCAMではXCode4.xとOSX10.7Lion環境下で動作を確認出来ましたが、OSX10.6とXCode3.xを使用した場合と比べやや設定手順が多くなります。詳しくは後述。

openFrameworksをインストールする

openFrameworks (オープンフレームワークス) は,C++で記述された「クリエイティブなソフトウェア開発」のためのオープンソースのツールキットです。Eyewriterで使用するバージョンは最新版ではないので注意が必要。

EyeWriterのソースコードをダウンロードする

Xcodeの設定変更(Xcode4以降の人向け、Xcode3の人は省略)

 

 

 

コンパイル作業

インストールしたXcodeを用いてEyeWriterのソースコードをコンパイルします。コンパイルとは、ソフトウェアのソースコード(設計図のようなもの)をコンピュータ上で実行できるような形式に変換する作業のことです。EyeWriterの最新版はソースコードのみが公表されているのでこの作業が必要になります。

カメラ用ドライバのインストール
カメラ(PSEye)とパソコンを接続する為のドライバをインストールします。

 

Arduinoへスケッチの読み込み
Ardunioとは、マイコンと開発環境がセットになったものです。これにプログラム(スケッチ)を読み込ませることで様々な制御を行ってくれます。

STEP2.つくる

赤外線LED制作


    

 

次にこれらをはんだ付けしていきます。

  

カメラ-分解作業

Eyewriter制作でPSEye(PlaystationEye)を使用する理由はVsync(垂直同期信号:後の作業工程で詳しく記述)を取るためですが、Vsyncシグナル自体は現行のほとんどのカメラを改造すれば取得できます。ただPSEyeはその取得方法がユーザー達の手(23年度YCAMで滞在研究したKyleMacdonald氏など)によって一般公開されているためEyewriterのカメラデバイスとして採用されるに至りました。この分解作業では力を入れて工具を使うので、けがをしないように注意しながら行うこと。力の入れ方や角度が重要な作業なので動画を中心に解説します。

カメラ-Vsync

この行程ではPSEyeを改造してVsyncを取れるようにします。 Vsyncとは簡単にいうとカメラが写真を撮るタイミングを知らせてくれる信号です。EyeWriterでは外側の赤外線LEDと中央の赤外線LEDが交互に光り、その点滅がカメラのフレームと同期している必要があります。なお、PSEyeのバージョンの違いにより、グラウンド接続部分の数やVsyncの位置が変わっている場合があります。違いがある場合は、以下のInstructablesのサイト(英語)にあるバージョン別の写真を参照すること。バージョンの違いはPSEye基盤に書かれている「NEW EYE TOY xxxx SOLUTION (Vx.x)」という場所で確認できます。YCAMで使用したのは、「NEW EYE TOY 5702 SOLUTION(V8.4)」です。

※Vsyncの接続は細かなはんだ付けが多いので全行程中最も難易度が高いです。最悪PSEyeが壊れてしまう可能性もあるので慎重に作業を進めてください。細かな作業のニュアンスは動画が分かり易いです。

 

 

カメラ-仕上げ


 

 

 

ブレッドボード基盤制作

ブレッドボードとは電子回路の試作・実験のために使用する、パーツの接続用ボードです。はんだ付けは不要でジャンプワイヤを穴に差し込むだけで電子回路を組むことができます。ブレッドボードの仕組みを知っておくとより高度な工作が可能になるので興味のある方はご自分で調べてみて下さい。

eyewriter_breadboard_fixed eyewriter_schematic

 

 

 

台座制作

Eyewriterをはじめとする視線検出技術の精度は体験者の目とカメラの位置関係が非常に重要な要素になります。EyeWriterと体験者を共に固定する台座には様々なアイデアがあり、国内外のEyewriter制作者達の腕のみせどころでもあります。今回はYCAMがワークショップの為に作成した台座を中心に紹介していきます。みなさんもぜひEyewriterの台座つくりに挑戦してみてください。

 

 

 

 

 

検出精度を上げる為に押さえるべきポイント、YCAM版の解決策は以下

STEP3.つかう

組み上がったEyeWriterを実際に使用してみます。この過程になって今まで見えなかった問題点やミスが次々と発覚することが多々あります。不具合に直面した時、あらゆる要素を分析し、トラブルの根本的な原因を特定して解決していく力を養っていく事がが検出の精度を高める一番の近道かもしれません。配線の確認やマニュアルの見直し、検索エンジンで他サイトを調べるなど糸口はたくさんありますので諦めずに問題に立ち向かってください。「STEP4.よくあるトラブル」は不具合の種類と解決策を随時更新していく予定です。こちらも参照ください。

デモモードからカメラモードへの変更

 

 

 

EyeWriterの設定

 

 

 

視線検出の手順と確認方法

 

 

 

 

キャリブレーション

キャリブレーション(調整)作業は、視線検出の最終行程になります。今までの調整が全て上手くいった上で望みましょう。この作業中〜作業後は顔をなるべく固定して、動かさないようにしてください。無理な姿勢は疲れるので、自分の楽な姿勢をみつけてください。

 

 

各種モードの使い方
キャリブレーションが終わると、「Enter」キーを押すことで各種モードに移行することが出来ます。
各種モードは視線を表す緑の丸カーソルがマウスの様な役割を担います。長い時間(一秒間ほど)ボタンに視線カーソルを置くと、クリックになります。

 

・Catch me!モードは画面上の「Catch me!」と書かれたボタンを押すと緑色になりキャッチできます。(写真.1)
・画面の隅々を見ることになるので、キャリブレーションが成功しているかのテストにもなります。

・反射ゲームモードはブロック崩しのような、反射型ゲームです。(写真.2)
・反射するボールを視線マーカーと連動して動く下のバーを移動させて打ち返してください、
・「fast」ボタン「slow」ボタンを押すとボールのスピードが変わります。

 

・文字を入力モードでは、文字を入力できます。(写真.1)
・各ボタンを押すとキーが光り、画面上に打った文字が表示されていきます。
・「speak」ボタンで打った文字を読みあげます。

・描画モードは文字や図形を描くことが出来ます。(写真.2)
・左側にある「recording」ボタンを押すと描画が出来るようになります。
・ボタンを押すように一点を見つめ続けると始点が決定されるとともに、視線マーカーの位置する場所までの直線を引くことが出来ます。
・やり直したいときは「undo point」ボタンまたは「undo stroke」ボタンを視線マーカーで押すと直前に描いた直線を消して、そこからやり直すことが出来ます。
その直線の終点になるとともにそのポイントからの始点となり次の直線を引くことが出来ます。
・直線を一旦切り離したいときは、「next stroke」ボタンを視線マーカーで押すと、別の始点を指定して描画を再開することができます。
・別の文字や図形を描きたいときは、「next letter」ボタンで今まで描いたものが表示されるとともに、新しい描画を開始できます。

よくあるトラブル・Tips

YCAMでは展覧会やワークショップの為に計20台近くのEyewriterをつくりました。そんな制作と実践から得た経験をトラブルリストとしてみなさんと共有することで、制作過程で陥りがちなミスをよりはやく発見し解決する手助けになればと思います。トラブルを「ハード」「ソフト」「ユーザー」の3つに分けてまとめました。今後追加事項があれば更新していきます。

お問い合わせ

本マニュアルについてのお問い合わせはworkshop@ycam.jpへご連絡下さい。

本マニュアルのライセンスについて

Creative Commons License

EyeWriter2.0のつくりかた by YCAM InterLab is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

top YCAM InterLab >