独自ミドルウェアでT-KernelとWindows CEの共存を実現 ――TRONSHOW2005
2004年12月7~9日に,東京国際フォーラムにてTRONプロジェクトのシンポジウム「TRONSHOW2005」が開催された.トロン協会やT-Engineフォーラムの参加企業が,それぞれの開発成果を展示した.例えば,イーソルはT-KernelとWindows CEを並行動作させるためのブリッジ・モジュール「TWister」のデモンストレーションを行った.
[写真1] TRONSHOW2005
東京国際フォーラム(東京都千代田区)にて開催された.
●T-KernelとWindows CEが一つのCPU上で並行動作
イーソルは,T-KernelとWindows CE 5.0を並行動作させるためのブリッジ・モジュール「TWister」のデモンストレーションを行った.TWisterはT-KernelのタスクとWindows CE 5.0のスレッドの優先度を管理してスケジューリングを行う.OS間相互の多重割り込みや排他制御などにも対応している.
T-Engineフォーラムと米国Microsoft社は,T-KernelとWindows CEをT-Engine上で共存させるための仕様策定および技術開発に関して,2003年9月に提携を結んでいる.当時は,T-KernelとほかのOSを共存させるために,「T-Bus」と呼ばれるミドルウェアを利用することを想定していた.しかし,2004年12月現在,T-Busはまだ構想段階で,具体的な仕様などがまだ公開されていないもよう.一方,イーソルは今回のブリッジ・モジュールを独自に開発した.同社は2003年11月にμITRON OSとWindows CEのハイブリッドOSを発表しているが,TWisterはその技術をベースに開発したという.
[写真2] TWisterのデモンストレーション(マイクロソフトのブースの展示)
画面の下側に表示しているのがT-Kernelのタスクによる表示であり,画面の上側に表示しているのがWindows CEのスレッドによる表示である.
[図1] TWisterの動作のイメージ図(イーソルの発表資料より)
TWisterは,T-Kernel(イーソルが開発・提供したもの)とWindows CEが備えているhook関数を利用して割り込みの調停やスケジューリングを行う.T-Kernelのhook関数はイーソルが組み込んだ.一方,Windows CEのhook関数は,Microoft社が2004年7月に発表したWindows CE 5.0から組み込まれている.
●nT-Engine,pT-Engineを利用した住宅を展示
T-Engineフォーラムは,有線/無線のセンサ・ネットワークを利用したモデル住宅「TRON電脳住宅」を展示した.人間は情報端末「ユビキタス・コミュニケータ」を持ち歩くことにより,部屋のどの位置にいるかを住宅内のサーバに伝える.サーバはその位置に応じて,電灯の点灯/消灯,ブラインドの開閉,エアコンやテレビのON/OFFなどを実行する.各機器には有線で接続された通信ボード「nT-Engine」が付属している.
[写真3] 電脳住宅のデモンストレーション
住宅内に設置されたnT-Engineは赤外線を発しており,それをユビキタス・コミュニケータが受信すると,受信したことを無線LAN(IEEE802.11b)経由でサーバに伝える.サーバはその位置に応じてnT-Engineに適切な制御を行うように指示する.例えば,ソファに座ると正面のテレビが点き,エアコンが作動する.
[写真4] さまざまな形状のnT-Engine
T-EngineやμT-Engineはおもに開発や評価のためのボードという意味で,「開発プラットホーム」と呼ばれている.これに対して,nT-EngineとpT-Engineはそのまま実際の製品に組み込んで利用することから,「実行プラットホーム」と呼ばれている.今回のデモンストレーションで利用したnT-EngineとpT-Engineは,YRPユビキタス・ネットワーキング研究所が試作した.
YRPユビキタス・ネットワーキング研究所は,nT-Engineに実装する通信プロトコルとして,UNP(Ubiquitous Network Protocol)を規定している.UNPでは,物理層レベルの通信プロトコルとしてRS-485を採用している.UNPとnT-Engineの仕様はほぼ固まっており,2005年4月に公開される予定.
また,ワインのびんやおもちゃなどに双方向無線機能を搭載した通信ボード「pT-Engine」を取り付けて,ユビキタス・コミュニケータと双方向で通信するデモンストレーションを行った.ユビキタス・コミュニケータの画面上でリストから品物を選択すると,該当する品物に取り付けられたpT-Engineの情報がユビキタス・コミュニケータ上に表示される.また,画面上の「探す」ボタンを押すと,pT-EngineのLEDが点滅する.LEDの点滅の代わりに音声を出力するようにもできるという.
[写真5] pT-Engineのデモンストレーション
それぞれのおもちゃやびんなどにpT-Engineが取り付けられている.pT-Engineは電池を備えており,見通せる10m以内で双方向通信が可能.
現在試作しているpT-Engineの通信には,315MHz帯の微弱無線通信(アクティブ方式で双方向通信が可能)を利用している.また,UWB(Ultra Wide Band)通信の採用も検討している.なお,pT-Engineの仕様が確定するのはもう1~2年ほど先になる予定.
●凸版印刷のRFIDタグを利用した点字ブロック
凸版印刷は,視覚障害者用の白杖と点字ブロックを使った経路誘導システムを展示した(写真6).点字ブロックにはRFIDタグが,白杖の先端にはリーダ・アンテナが組み込まれている.利用者は,方向センサとタグ・リーダの付いた携帯情報端末(PDAなど)を手に持つ.携帯情報端末で目的地を指定すると,RFIDタグが示す位置情報と方向センサの情報を参照しながら,目的地に着くためにはどのように歩けばよいか(ここで右に曲がる,など)を音声でガイドする.
本システムは,国土交通省が中心となって実施している「自立的移動支援プロジェクト」に採用され,2004年度から2005年度にかけて,兵庫県神戸市で実証実験が行われている.
[写真6] 経路誘導システム
点字ブロックの表面のゴム部分に,RFIDタグを内蔵している.
●TRON上で2次元や3次元の地図を表示
パスコは,同社の地理情報表示ソフトウェアをユビキタス・コミュニケータやBTRON OS上で動作させるデモンストレーションを行った(写真7).2次元地図表示についてはすでに開発を終えている.また,開発中の3次元地図も展示した.
[写真7] ユビキタス・コミュニケータで航空地図を表示
街頭に設置された地図に取り付けられたRFIDタグにユビキタス・コミュニケータをかざすと,その地点の周囲の地図を表示する.表示領域の拡大や移動が可能.
●T-Engineを電話機に搭載
YRPユビキタス・ネットワーキング研究所は,ユビキタス・コミュニケータの機能を搭載したPHS電話機「UC-Phone」を展示した.UC-Phoneはユビキタス・コミュニケータと同じようにRFIDリーダやバーコード・リーダを搭載している.ユビキタスIDセンターが認定したucodeタグのIDを読み取って,ucodeが取り付けられた品物の情報をユビキタスIDセンターから取得することができる.UC-PhoneはPHSのPIAFS通信網を利用してUC-Phoneのゲートウェイ・サーバにアクセスし,そのサーバがユビキタスIDセンターと通信する.
なお,同研究所は,PHS電話機だけでなく,携帯電話機にもユビキタス・コミュニケータの機能を搭載するための研究を行っている.
[写真8] UC-Phone
UC-Phoneは,2004年12月に発表された.
●μT-Engineボードを利用してロボットを作製
三菱電機は,μT-Engine(M32104)を利用した家庭用ロボット「Maple」の試作機を展示した.留守番や監視のほか,アームを使った簡単な作業も行える.同社は,身の回りの手助けをするロボットという位置付けで,本ロボットを開発している.動作制御ボードにはμT-Engineを採用した.
[写真9] 家庭用ロボット「Maple」の外観
動作制御ボード(μT-Engineボード)は,制御情報を伝達するためのマスタ・ボード(FPGAボード)に指令を与える.そして,マスタ・ボードが四肢のそれぞれに取り付けられたスレーブ・ボード(FPGAボード)に指令を伝え,手足の制御を行う.
過去の関連記事
ニュース:T-Engine上でT-KernelとWindows CE.NETが共存
http://www.kumikomi.net/article/news/2003/09/25_03.html
レポート:μITRONとCE.NETを統合して動作させる環境が早くも登場
http://www.kumikomi.net/article/report/2003/32et03re/01.html
関連リンク
マイクロソフトの発表資料(Windows CE 5.0 日本語版提供開始) http://www.microsoft.com/japan/presspass/detail.aspx?newsid=2042Windows CE 5.0のホームページ
http://www.microsoft.com/japan/windows/embedded/ce50/