ウェアラブル・ポインティングデバイスを作りました。 yubi-oriは、人差指と中指の第2関節の曲げ角度によってカーソルの絶対座標を制御しようとするものです。 yubi-penはペンタブレットのペンを人差指に固定したものです。 2つとも右手に装着し、マウスボタンあるいはペン先のクリックに相当するものは左手で操作することを想定しています。 moguraはポインティングデバイスの性能を評価するためのソフトです。 |
下の4つの写真は、カーソルをディスプレイの4つのコーナーに移動させるための指の曲げ方を示しています。人差指はX軸に対応し、曲げれば左に、伸ばせば右に移動します。中指はY軸に対応し、曲げれば下に、伸ばせば上に移動します。 |
第2関節の角度を測るため、ボールベアリングの中心に約5ミリ角の可変抵抗器を取り付け、指を曲げ伸ばしすると真鍮板の突起物が抵抗の溝と噛み合い摺動板を回転させます。そうして回転角を電圧の変化として取り出します。これをPIC16F877AのA/Dコンバータの入力とし、出力された数値の変化の一例を示したのが下のグラフです。 ピンクが人差指、ブルーが中指で、下が曲げた状態、上が伸ばした状態を表します。2本の指を同時に曲げ伸ばしした後、中指を曲げたままで人差指を伸ばして曲げる。次に人差指を曲げたままで中指を伸ばして曲げる。・・・。 このグラフでは出力間隔を100ミリ秒としていますが、実験機では1ミリ秒間隔でA/D変換した10個の数値をソートし、中心6個の平均値を出力しています。 超小型の半固定抵抗を転用しているので、どれぐらい精度がでるか心配でしたが、思ったよりスムーズに指の動きに追随します。時々20〜30ドットほど滑ったか思うと元に戻るという動きをしますが、まあご愛敬ということで。 |
さて、ポインティングデバイスとしての性能を測定する実験ですが、結果は惨憺たるものでした。後で紹介するmoguraのクリアタイムが約157秒。マウスなら37秒程度でできることがです。片方の指だけを動かすならそれほど難しいことはありませんが、斜め方向に動かそうとすると混乱してしまいます。当初、人差指をY軸すなわち上下方向の移動に割り当てていたのを途中で変更したことも混乱を助長していますが、2本の指を同時に動かしてカーソルを思い通りに動かすのは予想以上に難しいことがわかりました。練習すればある程度のスピードを出すことは可能かもしれませんが、そう簡単にはいかないようです。 |
yubi-penはペンタブレットのペンを人差指に固定したものです。ペンそのものをくくりつけると、さすがに邪魔ですから、内部の基板とコイルを取り出し、2つ折りにした上で、ホットボンドで固めています。ワコムのペンタブレットは電磁誘導方式のため電池が不要なので軽くて小さくなります(約6グラム)。ペン先を取り付けていますが、クリックするためではありません。サイドボタンも使わないのでもっと小さくすることもできるでしょうが、とりあえずこれで良しとします。 standingと同様に左手にワイヤレスマウスを持ってそのボタンをクリックしています。 yubi-oriやyubi-penは手に装着したままでキーボードを操作できるようにしています。第1関節を越えたこの位置の指輪は装置を安定的に支持すると同時に、指の曲げ伸ばしにあまり支障をきたさないという利点があります。ウェアラブルにすると、その装置を操作することしかできなくなるのでは困ります。キーボードも使いたいし、コーヒーカップは無理でも缶コーヒーなら飲めるようにしたい。 yubi-oriの開発期間は約3ヵ月、それに引き替えyubi-penはたったの3時間。yubi-oriの失敗にもめげず次なるウェアラブル・ポインティングデバイスとしてアーム式のデバイスを製作中に、アームの上に収まるようにペンの中身を3つ折りにして固めたものを眺めていたとき、ふと思いついてゴムバンドで人差指にくくりつけ実験してみると、意外や意外、うまくいく。行きすぎる。今までの苦労は何だったのだろう。指輪の作り方はうまくなったけど。 |
moguraのクリアタイムは、約32秒でした。マウスの37秒に比べてかなり速いし、手や指を自由に動かせるので操作が楽でした。慣れてくるとカーソルを追いかけて微調整することなく、瞬時にポイントを指示することができるようになりました。 このタブレット(ワコムのBizTablet)の大きさは約15センチ*14センチで、けっして大きなものではありませんが、ウェアラブルとすればかっこわるい。ペン先が動く範囲は、ディスプレイ1280*600ドットに対して、64*30ミリ程度のごく小さいもので十分ですから、ポケットの中やズボンにマジックテープで貼り付けるなどして使えるようになるのではないかと考えています。 |
moguraは、ポインティングデバイスの性能を測定するためのソフトです。写真のように9つの円の中から赤色で表示された円をクリックすると、その円が消え、次のターゲットがランダムに選択され赤色で表示されます。円をすべて消すと、また9つの円が表示されます。このとき円の直径が20ドットずつ小さくなります。これが6回繰り返されます。合計54個の円を消すのに要した時間とミスクリックの回数を終了時に表示します。 なお、このソフトの仕様(円の配置・直径・繰り返し回数など)は今年(2005年)のヒューマンインタフェースシンポジウムで発表された、坂口広樹氏,野中英俊氏,栗原正仁氏の論文「モバイル指向指先装着型ポインティングデバイス」の中で記述されているものをベースにしています。 mogura.lzh(290KB) Windows環境で動作します。 |
私のベストスコアランキング | ||
デバイス | タイム | |
1 | pointer | 25.03 |
2 | pointer mini(机上) | 28.59 |
3 | ペン | 31.27 |
4 | yubi-pen | 32.33 |
5 | StandingBamboo | 34.86 |
6 | pointer mini(立位) | 35.44 |
7 | standing | 36.80 |
8 | マウス | 36.95 |
9 | portable(トラックボール) | 52.80 |
10 | トラックポイント | 86.82 |
11 | grip6 | 89.18 |
12 | grip5+ | 93.74 |
13 | sakura | 134.66 |
14 | grip5 | 155.98 |
15 | yubi-ori | 156.91 |
私のベストスコアを示します。ベストといってもそれぞれ数回から十数回程度しか測定していませんが。 私の本業は建築設計なのでほとんど毎日CADを使います。CADの場合、ターゲットは主に点(線の端点・交点を含む)ですから、カーソル側にヒットする範囲・大きさがあります。自作のCADではその範囲(カーソルの大きさ)を31ドット角としています。ディスプレイの解像度を1600*1200ドットとした場合、これぐらいが経験的に一番効率よく作業できると考えています。さらに、31ドット角の中に複数の点が含まれることもしばしばですから、中心の17ドット角とその外側を区別したり、カーソルの中心点に近い方が選択されるようにしていたりします。 そうしたポインティングデバイスのヘビーユーザーとしては、このテストは難易度が低すぎるようにも感じます。 「ペン」は、BizTablet付属のペンでペン先のクリックを使って測定したものです。確かに速いのですが、クリックしたときにポイントがずれたり、知らない間にタブレットにペン先がついてしまったりというエラーも多いので、私の評価は高くありません。 <2006.1.6加筆> Perkyのファームウェアを更新したのを機会に約2ヵ月半ぶりにmoguraのテストをしました。pointerの記録が29.66秒から25.03秒にあがりました。 ファームウェアの変更点は、pointerを操作しているときの同時打鍵検出時間を短くしたことです。Perkyは同時打鍵を検出するため、最初のキーが押されると80ミリ秒のタイマーが作動します。この間に押されたキーを同時打鍵と見なします。文字入力の場合は、タイムラグは全くと言っていいぐらい感じられませんが、マウスカーソルを動かしながら、マウスボタン(スペースキー)を押すと、ズレは明らかです。このズレを少なくするため、右手をpointerに置いている間(タッチセンサで検出されます)は、同時打鍵の検出時間を30ミリ秒としました。左手の同時打鍵は2指だけですから誤入力も気になるほどではありません。しかし、30ミリ秒でもまだ少し(感覚的には10〜20ミリ秒ほど)ズレます。自作のCADではこのズレをなくすため、常にマウスカーソルの座標を10ミリ秒間隔で記録し、マウスボタンが押された場合はズレの時間をさかのぼって座標を参照するようにしています。 |