研究課題:ユビキタス環境におけるユーザインタフェース
研究代表者:守分 滋
所属:政策・メディア研究科 修士課程
ユーザインタフェースに連続的なメディアデータを用いる場合、再生が途切れるのは望ましくない。しかし、ユーザが移動した際に、単純にあるディスプレイから別のディスプレイに切り替えると、ネットワークコネクションの再接続などで、メディアデータの再生が途切れる「サービス断絶時間」が発生する。この際、単純に再生箇所を移動するのではなく、再生モジュールを複製して移送し、移送先で再生を始めてからコピー元モジュールを削除することで、「サービス断絶時間」をなくすことができる。これを、「コピー&ムーブモデル」と呼ぶ。
従来のモジュール移送は、一度アプリケーションの実行を中断してローミングを実現する。しかし、この手法を用いると、アプリケーションを移送している間、ユーザに何もサービスが提供されないサービス断絶時間が生じてしまう(図1)。もしユーザが、サービスに時間的連続性を持った電話や音楽プレーヤーなどのアプリケーションを実行していたとすると、移送時間中は会話が途切れてしまったり、音楽が聴けなくなってしまうといったように、アプリケーションの連続性での問題が生じる。音楽プレーヤーや電話などのマルチメディア・アプリケーションのような、時間的連続性が重要な意味を持つデータを扱うアプリケーションにとって、サービス断絶時間は問題となる。例えば、電話での会話が途切たり、音楽が聴けない時間が存在することになる。
そこで本システムでは、ユーザが、アプリケーションを移動させる時にサービス断絶時間をなくすCopy and Moveモデルを提案する。Copy and Moveモデルでは、実行中のアプリケーションを非実行状態で複製し、その複製を他端末へ送信するという手法を用いることによって、アプリケーションの時間的連続性を実現している。しかし、このままでは移送する度に複製が増え続け、端末の計算資源を浪費してしまう。そこで、SaRaRiは複製状態監視機能を備えており、その複製が実行状態へ遷移したことを検知した後にオリジナルを削除する(図2)。
図1.単純な移送の場合、サービス断絶時間が発生する。
図2.コピー&ムーブモデルを利用することで、サービス断絶時間がなくなる。
リアルタイム拡張を施したLinuxを携帯端末に移植した。携帯端末は、Intel StrongARMプロセッサを利用しているiPAQ H3600/H3800シリーズ、及びPXA250/255プロセッサを利用しているiPAQ H3900/H5400シリーズとZaurus SL700/760である。これによって、ネットワーク越しに連続的にデータを受信しユーザに提示する際の時間のずれを低減できた。
ThinkPad 240Xをサーバとして,動画ファイルをTCPにて送信しiPAQ上で動画再生を行った.サーバであるThinkPadとiPAQ間は無線アクセスポイントを使用しIEEE 802.11bでつなげ,無線LANカードにはメルコ社製のWLI-CF-S11を使用した.
ThinkPadにはRedHat Linux 8.0をインストールし,インテル386アーキテクチャに対応したLinux/RKカーネルを搭載した.ThinkPadで動作する動画ファイル送信ソフトウェアにも,周期スレッドを用
いた.またネットワークのQoSとしてLinuxカーネルに標準で付属しているCFQを利用し,ネットワーク帯域を保障した.クライアントであるiPAQでは第~\ref{local}節と同様にMplayerを用い動画を再生し,フレームギャップを測定した.
まずLinuxを用い外乱プロセスを発生させ動画再生を行った.再生時のフレームギャップは図3となる.外乱プロセスが動作しているため,フレームギャップは約100から450ミリ秒となり大きく動画再生が遅れている.また偏差が73.9とフレームギャップに大きなバラツキがでて
おり,ローカルで再生した場合より周期が安定せず正しく動画を再生できない.最後に外乱プロセスを動作させ,RKを用い動画再生を行った.再生時のフレームギャップは図4となる.外乱プロセスが動作中であってもフレームギャップは約40から50ミリ秒であり,また偏差が4.7となった.
図3.リアルタイム拡張なしLinuxでのデータ提示の時間のずれ
図4.リアルタイム拡張を施したLinuxでのデータ提示の時間のずれ
位置情報を用いたユーザインタフェースを、ユーザが自由に構成できるシステムを設計、実装した。Space Programと呼ばれる記述方法でユーザのアクションとデバイスの動作を結び付ける。たとえば、あるユーザAがディスプレイの1メートル以内に近づいた場合に、ディスプレイの電源をつけるという動作は、
If UserA approach Display within 1 m , Display on .
のように記述する。このシステムをNICOLAと呼ぶ。
センサ類が埋め込まれたユビキタス空間は、ユーザの空間内での動きや、空間自体の状態(室温、室内音量レベル等)を認識できる。それに伴い、センサ類から得られたコンテキスト情報をもとに空間内の状況を把握し、その状況に応じた環境をユーザに提供する機構が必要とされている。
NICOLAはこのような背景をふまえ、ある空間の状態における機器の挙動を、ユーザ自身が柔軟に定義できる環境を構築する。NICOLAではこのようにある空間の状態における機器の動作を定義する文章をSpace Programと呼び、Space
Programを作成する行為をSpace
Programmingと呼ぶ。Space Programming例として、図5のようなシナリオを想定してみる。ユーザはディスプレイに近付くとiPAQ上のアプリケーションがディスプレイに移動する、という定義を行う。そして実際に空間内でユーザが定義した動きを行うと、予めユーザが定義した挙動を空間が行う。複数のSpace Programを組み合わせて、ユーザは空間内に様々なサービスを構築していく。
図5.Space Programming概要
Linuxのリアルタイム拡張について、情報処理学会 第2回ユビキタスコンピューティングシステム研究発表会で、複数のインタフェース間の継続性及びアドホックユーザインタフェースについて、情報処理学会 第3回ユビキタスコンピューティングシステム研究発表会で発表した。
1.ユビキタスデバイス向けのLinux
Real-Time拡張
Linux Real-Time Extensions for Ubiquitous
Devices
滝澤允, 高橋ひとみ, 守分滋, 権藤俊一, 永田智大, 徳田英幸
情報処理学会 第2回ユビキタスコンピューティングシステム研究発表会
Vol.2003 (115) 2003年11月 pp.195-200
2.Smart Furniture間の柔軟なサービスローミングを実現するミドルウェアの構築
Middleware for Flexible Service Roaming
between Smart Furnitures
米澤拓郎, 小泉健吾, 守分滋, 永田智大, 徳田英幸
情報処理学会 第3回ユビキタスコンピューティングシステム研究発表会
2004年1月 pp.39-46