階層型情報構造化環境プラットフォームの開発○清山 昂平，河村 晃宏，倉爪 亮

Development of hierarchical ROS-TMS for informationallystructured environment○ Kouhei Kiyoyama, Akihiro Kawamura and Ryo Kurazume(Kyushu University)
Abstract : This paper introduces a newly developed network module named ”tms nw” for ROS-TMS. ROS-TMS is thesoftware platform for informationally structured environment and manages various systems including sensors, service robots,and service task execution. The developed module enables to handle multiple ROS-TMSs and provide cooperative services
to/from ROS-TMSs in diﬀerent environment.

1.

緒言

2.2

TMS NW
情報レベルや空間規模の範囲の異なる複数の情報構造

ヒトの生活空間においては，ヒトやモノの位置が動的に変化するため，ロボット単体に搭載されたセンサのみです

化空間の管理機構として，複数の ROS-TMS が階層的に結べての環境情報を把握し，サービスを行うことは困難であ合された構造が考えられる．すなわち，例えば部屋レベルる．そこでロボット単体の知能化だけではなく，周囲の環の複数の ROS-TMS の上位に，住宅レベルの ROS-TMS

境に様々なセンサを配置し，サービスの実現に役立てる環があり，さらにその上に街，区域レベルの ROS-TMS が境情報構造化が提唱されている．我々はこれまでに，環境存在する構造である．この階層構造を持つ ROS-TMS に内に配置された多数のセンサの情報を集約し，ロボットをおいて，外部の ROS-TMS からの問い合わせやサービス通して多様なサービスを提供するための情報構造化環境ソタスクを受け付けるためには，それらの処理の実行に必

フトウエアプラットフォーム ROS-TMS や，その開発と研要で時々刻々と変化する各種情報が外部環境と共有され究の為のハードウェアプラットフォームである屋内情報構ている必要がある．例えば，ロボットやヒトが関わるサー造化環境 Big Sensor Box(B-Sen) を開発してきた [1][2]．

ビスを実際に実行可能かどうかは環境の状況に大きく依

これまでの ROS-TMS は一つの部屋や住宅レベルの管存する．しかし，サービスの実行中に，ヒトやロボットが理システムとして開発されてきた．一方で，ロボットが住ROS-TMS の管理範囲を跨いで移動する場合，サービス開始前にサービスが実行される各環境についての最新の情報にアクセスできなければ，移動先においても同様に所望のサービスが実行可能かを事前に判断することができない．
一方で，同階層に位置する ROS-TMS 同士がそれぞれの環境の情報について容易にいつでもアクセスできることは，セキュリティやプライバシーの観点から望ましくない．
それらの情報に常時アクセスできるのは，部屋レベルのROS-TMS であればフロアや建物レベルの ROS-TMS のように，より管理権限の大きな環境を管理する ROS-TMSに限定し，その他の環境からは，両環境において同意の得られたサービスの実行時のみアクセス可能であることが望ましい．そこで，他の ROS-TMS が管理する環境でなんらかのサービスタスクを実行する際には，下記の手順で実行を行うことにした．

宅から外の空間へ移動する場合のように複数の環境を跨いでサービスを行う場合においては，複数の環境に導入された ROS-TMS や管理範囲の異なる複数の ROS-TMS が通信し，連携動作を行う必要がある．本稿では，現在開発中の階層型 ROS-TMS の概要と新たに開発した機能について報告する．

2.

システム構成2.1

基本構成

ROS-TMS は，ROS におけるノードを機能ごとに分類，整理したモジュール構造を有している．既存のモジュールとして，Robot Controller(TMS RC)，User Re-quest(TMS UR)，Task scheduler(TMS TS)， Database(TMS DB) 等が開発されており，情報構造化環境において，ユーザーのタスク要請に基づいた各種サービスを実行することができる [2]．

(1) 上位層の ROS-TMS に対して，サービスタスクを実行可能な環境について問い合わせる．
(2) 上位層が各環境の ROS-TMS に対してそのサービスを実行可能か確認を行う．

第19回システムインテグレーション部門講演会（SI2018）（2018年12月13日～15日・大阪）- 2064 -SY0010/18/0000 - 2064 © 2018 SICE

2.2.3Upper-TMS
tms_nw_svr⋇ ਖः়ॎच঱ਜ਼ಽ

⋌サービスを実⾏可能な706भ,3॔ॻঞ५ৣਜ਼ಽ

⋋応答︓該当サービスなし⋋応答︓該当サービスあり⋈ਖः়ॎच

TMS-2

TMS-1
tms_ur_listener⋎१‫ش‬অ५॥‫ش‬ঝ⋍१‫ش‬অ५पঢ়घॊੲਾ

⋏१‫ش‬অ५॥‫ش‬ঝ॑রಲTMS-2
tms_nw_api⋊ჾਊ१‫ش‬অ५भથ૮

tms_nw_rp⋉ਖः়ॎच

tms_dbtask_scheduler⋈ਖः়ॎच

⋐実⾏tms_nw_api⋊ჾਊ१‫ش‬অ५भથ૮⋉ਖः়ॎचtms_db

ServiceFig. 1: Service flow(3) サービスを実行可能な ROS-TMS の情報をサービス要求元の ROS-TMS へ返答する．
(4) サービス要求元 ROS-TMS と実行可能な ROS-TMS間で通信を行い，サービスタスクを実行する．

TMS NW RP

ROS-TMS 内におけるサービスタスクの登録は，ROSにおけるサービスコールの発行によって行われる．一方で，ROS 標準のサービスコールは，呼び出し元と同一のROS ネットワーク内で実行されるサービスのみ呼び出すことができ，他の ROS-TMS が管理する環境で実行されるサービスに対してサービスコールの発行を行うことはできない．そこで，ROS のパッケージである rosbridge[3]を用いて TMS NW SVR から受け取った外部環境の IP
へと WebSocket で接続を行い，サービスコールを発行する方法を採用した．この機能の実現のために，実行したいサービスとその環境の IP アドレスを HTTP リクエス
トで受け付け，外部の ROS TMS へと rosbridge を介して接続を行い，サービスコールを行うモジュールとしてRepeater(TMS NW RP) を開発した．

こうした動作を実現し，階層的に配置された ROS-TMS同士が連携するための新たなモジュールとして，Net-work(TMS NW) を開発した．TMS NW は，同階層，および異なる階層のそれぞれに配置された外部の ROS-TMSに対して通信を行うための機能を有している．これらのモジュールを用いた外部の ROS-TMS との通信，サービス実行の流れを Fig.1 に示す．以下，各モジュールの詳細について説明する．

2.3

開発したサービス

今回開発した機能を用いて，新たに実行可能となったサービスについて説明する．ここでは，Fig.2 に示すように，3 つの部屋と，各部屋の管理を行う ROS-TMS，およびそれらの ROS-TMS の管理を行う上位層の ROS-TMSを用意し，各サービスの実行を行った．

!"#$%&#

2.2.1

TMS NW SVR&'()*

下位層の ROS-TMS からの問い合わせに応じて，自分+)*!"#$%&#の下位に配置されている，問い合わせ元以外の ROS-TMS&'!"#$%&#&'!"#$%&#&'

全てに対してサービスの実行可否を確認し，実行可能な環境が存在した場合には，問い合わせへの応答として実行可能な環境の管理情報（ROS-TMS サーバの IP アドレス等）!"#を問い合わせ元に返す．

2.2.2!"$!"%

Fig. 2: System setup for service experiment

TMS NW API
2.3.1

物品探索サービス

上位階層の ROS-TMS(TMS NW SVR) からのサービ
スタスクが実行可能かの問い合わせを，問い合わせ元のユーザーから物品探索のリクエストが与えられた際に，ROS-TMS サーバの情報と共に受け付け，データベースへの問い合わせの後，実行可能かどうかを返すモジュールである．この際，実行可能な場合にはそのサービスタスクの実行に必要な各種情報を問い合わせ元の IP アドレスと紐づけて保存しておき，外部環境からサービスタスクの実行依頼が届いた場合には，依頼元の IP アドレスと紐づけられた情報が存在する場合のみ，それらを応答として返す．

指定された物品が ROS-TMS のデータベースに登録されていない場合，外部の ROS-TMS の中でその物品がデータベースに登録されているものを検索し，その環境の名前と環境内での位置を音声により案内を行う．

Fig.2 では，部屋 1 においてユーザーが「お茶はどこ」という問い合わせを ROS-TMS に行い，部屋 1 内のデータベースにお茶が存在していなかったため，外部の環境について上位層へ問い合わせを行う．すると，上位層から部屋 1 を除くすべての部屋へ，データベースにお茶が登録されているか問い合わせが行われる．その結果，部屋 2 から

- 2065 -ళलলख੪ ৖ોਖः়ॎच੪ ৖ો
お茶はどこ︖'RXEOH
太郎さんのところに⾏って部屋内にお茶なし'RXEOH︓◯
太郎さん︓✕

৖ો

実⾏環境 ৖ો
冷蔵庫にお茶あり'RXEOH︓◯
太郎さん︓◯

お茶は部屋भ
冷蔵庫にありますFig. 3: Search object request for ROS-TMS
登録されている旨の応答を受け，部屋 2 の管理情報 (部屋2 の ROS-TMS サーバの IP アドレス) が部屋 1 へ送信される．この情報を受け，部屋 1 から部屋 2 へ直接通信が行われ，「お茶はどこ」という問い合わせが送信される．部屋
2 を管理する ROS-TMS は，データベースから，「お茶は冷蔵庫にある」という情報を発見し，この情報を部屋 1 へと返答する．一連の処理によって，所望の物品が管理範囲外にある場合においても探索を行うことでき，取得した情報がユーザーへ伝えられる．

Fig. 4: Request service robot(Double) to go to the person in the other room
まず，部屋 3 において，ユーザーが「Double」に，「太郎さん」のところに行くというサービスの要求を行う．この際，部屋 3 内のデータベースに「Double」は登録されているものの，「太郎さん」が登録されていなかったため，外部環境へのサービス要求と判断して「Double」と「太郎さん」が登録されている外部環境について上位層へ問い合わせが行われる．上位層から部屋 3 以外の全ての部屋に対し2.3.2て，両者がデータベースに登録されているか問い合わせがロボットサービス行われる．その結果，部屋 1 に登録されているという情報

ユーザーからロボットタスクの実行リクエストが与えらが得られ，部屋 1 の管理情報 (部屋 1 の ROS-TMS サーバれた際に，ROS-TMS のデータベース内に登録されていなの IP アドレス) が部屋 3 へ送信される．この情報により，いユーザー，オブジェクト，ロボット，場所が，そのリク

部屋 3 から部屋 1 へと直接通信を行い，WebScoket を介

エストに含まれていた場合，そのタスクを実行可能な環境してサービスコールを発行する．このサービスコールを受を検索する．実行可能な環境が見つかった場合には，そのけ，部屋 1 において Double が太郎さんの元へ移動を行う．

環境へ rosbridge を用いて WebSocket で接続し，サービまた，今回サービスに使用した Double は遠隔とのコスコールを行う．サービスコールを受けた外部環境では，ミュニケーション手段として，ビデオ通話等の機能が使用そのタスクが Task scheduler(TMS TS) に登録され，実行できる．そのため，今回のように自分の部屋の Double をされる．本機能の確認のために Double というロボットを自分の元へ呼び寄せた上で，別の部屋にある Double を話用いて実験を行った (Fig.4)．このロボットを用いたサーしたい相手の位置へ移動させ，2 つの Double 間でビデオビスとして，環境情報を用いた目的地への自律移動サービ通話を行うことによって，遠隔とのコミュニケーションがスがこれまでに開発されている [4]．

可能となった．

- 2066 -3.

結言

本稿では，複数の環境に導入された ROS-TMS の連携，通信のための機能を紹介し，これらの機能によって新たに実現可能となったサービスについて説明した．

謝辞
本研究は，JST CREST JPMJCR1786 の支援を受けたものである．

参考文献[1] 倉爪亮，”情報構造化環境プラットフォーム ROSTMS 4.0, 5.0”，第 18 回計測自動制御学会システムインテグレーション部門講演会 SI2017, pp.1071-1074,2017.
[2] 倉爪亮，ピョユンスク，辻徳生，河村晃宏，”情報構造化環境プラットフォーム ROS-TMS と Big Sensor
Box の提案”．日本ロボット学会誌， Vol.35，No.4，
pp. 346-357, 2017．
[3] rosbridge, http://wiki.ros.org/ja/rosbridge, (最終確認日：2018/8/29)[4] 清山 昂平，坂本 潤弥，河村 晃宏，倉爪 亮，”呼び寄せコミュニケーションロボットを用いた見守りセンシング”．第 18 回計測自動制御学会システムインテグレーション部門講演会 SI2017, pp.1969-1971,2017.12.20-22.

- 2067 -