Sep. 24, Thu. RTCの粒度は難しい。

ロボット

RTミドルウエアでは、RTCの粒度の選択が自由であり、RTCの外部に公開するインターフェースの決定も自由であるため、再利用性の高いRTC化は各開発者に委ねられる。また、再利用性を高めるためには、デバイスごとに異なる処理をRTC内に隠蔽する必要があるが、適切になされていないと、たとえRTC化をしても実際には再利用できないものになる。
 2層化RTCは、こうした課題を踏まえての提案である。また、ロボット開発企業がRTCに取り組むと自社製品向けのRTCばかりを開発することが予想されるが、「当社はロボットユーザー企業であり、しがらみがないので、標準化に向けた提案になり得る」(米澤氏)という考えもある。

RTCの粒度の問題はどの研究者も頭を悩ませるところです。
OpenINVENTのようなあらゆるセンサ情報を処理する複雑なシステムではポートが大量に出現し、RTCLinkのようなツールでは把握しきれません。かといって1ポートにデータをまとめすぎると通信オーバーヘッドが大きくなります。
私のところではRtcHandleを用いて手間を省いています。Javaを使って同じことができるという情報を聞いていますが、粒度を解決したことにはなりません。
IDECさんのこの発想もモジュール化の観点では粒度の調整が楽なのでいいですね。ただ粒度を粗くした場合、RTS外とのIFはシンプルになる一方、RTS内で多くのRTCを起動・接続する手間が発生しますし、やはり通信オーバーヘッドがあるのでリアルタイム性を要求されるデバイスを制御するなら何らかの解決策が必要かと。IDECさんの千手観音(PDF)みたいなのでは無理だろーな。