人追従モジュールマニュアル

NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
1.0 版
セグウェイジャパン株式会社
株式会社セック
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
改版履歴
版数
改版日
1.0
2012/02/29
改版内容
初版作成
-i-
備考
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
目次
1
総則 ............................................................................................................................ 1
1.1.
目的 ........................................................................................................................ 1
1.2.
適用範囲 ................................................................................................................. 1
1.3.
関連文書等 ............................................................................................................. 1
1.3.1.
適用文書.......................................................................................................... 1
1.3.2.
関連文書.......................................................................................................... 2
1.3.3.
参考文書.......................................................................................................... 2
1.4.
1.4.1.
用語 ................................................................................................................. 2
1.4.2.
座標系 ............................................................................................................. 3
1.5.
2
定義 ........................................................................................................................ 2
ライセンス ............................................................................................................. 4
コンポーネント構成.................................................................................................... 5
2.1.
コンポーネント概要 ............................................................................................... 5
2.2.
動作環境 ................................................................................................................. 8
2.3.
ハードウェア仕様................................................................................................... 8
2.3.1.
2.4.
ハードウェア仕様(BLACKSHIP) ....................................................................... 10
2.5.
ハードウェア仕様(ゲームパッド) .................................................................... 12
2.5.1.
3
RMP................................................................................................................ 8
ハードウェア仕様(レーザーレンジ) ......................................................... 13
2.6.
ハードウェア仕様(カメラ)............................................................................... 14
2.7.
利用ソフトウェア仕様.......................................................................................... 15
コンポーネント仕様...................................................................................................16
3.1.
コンポーネント一覧 ............................................................................................. 16
3.2.
データ型一覧........................................................................................................ 17
3.3.
コンポーネント仕様(RMP).............................................................................. 25
3.3.1.
基本情報........................................................................................................ 25
3.3.2.
アクティビティ ............................................................................................. 26
3.3.3.
インタフェース仕様 ...................................................................................... 27
3.4.
コンポーネント仕様(BLACKSHIP).................................................................... 32
3.4.1.
基本情報........................................................................................................ 32
3.4.2. ........................................................................................................................... 33
3.4.3.
アクティビティ ............................................................................................. 33
-ii-
NEDO 次世代ロボット知能化技術開発プロジェクト
3.4.4.
3.5.
インタフェース仕様 ...................................................................................... 34
コンポーネント仕様(GAMEPAD)...................................................................... 39
3.5.1.
基本情報........................................................................................................ 39
3.5.2.
アクティビティ ............................................................................................. 40
3.5.3.
インタフェース仕様 ...................................................................................... 41
3.6.
コンポーネント仕様(CAM_V4L2)..................................................................... 43
3.6.1.
基本情報........................................................................................................ 43
3.6.2.
アクティビティ ............................................................................................. 44
3.6.3.
インタフェース仕様 ...................................................................................... 45
3.7.
コンポーネント仕様(URG)............................................................................... 47
3.7.1.
基本情報........................................................................................................ 47
3.7.2.
アクティビティ ............................................................................................. 48
3.7.3.
インタフェース仕様 ...................................................................................... 49
3.8.
コンポーネント仕様(HUMANRECOG) .............................................................. 51
3.8.1.
基本情報........................................................................................................ 51
3.8.2.
アクティビティ ............................................................................................. 52
3.8.3.
インタフェース仕様 ...................................................................................... 53
3.9.
4
人追従モジュールマニュアル
コンポーネント仕様(HUMANFOLLOW) ............................................................ 57
3.9.1.
基本情報........................................................................................................ 57
3.9.2.
アクティビティ ............................................................................................. 59
3.9.3.
インタフェース仕様 ...................................................................................... 60
取扱手順 ....................................................................................................................64
4.1.
環境構築(UBUNTU) .......................................................................................... 64
4.1.1.
インストール準備.......................................................................................... 64
4.1.2.
インストール................................................................................................. 67
4.1.3.
動作確認環境の準備 ...................................................................................... 68
4.2.
設定・カスタマイズ手順 ...................................................................................... 72
4.3.
起動・終了手順 .................................................................................................... 73
4.3.1.
起動 ............................................................................................................... 73
4.3.2.
終了 ............................................................................................................... 74
4.4.
環境構築(WINDOWS)........................................................................................ 75
4.4.1.
インストール準備.......................................................................................... 75
4.4.2.
インストール................................................................................................. 75
4.4.3.
動作確認環境の準備 ...................................................................................... 75
4.5.
設定・カスタマイズ手順 ...................................................................................... 77
-iii-
NEDO 次世代ロボット知能化技術開発プロジェクト
4.6.
人追従モジュールマニュアル
起動・終了手順 .................................................................................................... 78
4.6.1.
起動 ............................................................................................................... 78
4.6.2.
終了 ............................................................................................................... 78
5
制限事項 ....................................................................................................................79
6
付録 ...........................................................................................................................80
6.1.
メッセージ ........................................................................................................... 80
6.2.
トラブルシューティング ...................................................................................... 81
-iv-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
表目次
表 1-1 関連文書一覧 ........................................................................................................... 2
表 1-2 参考文書一覧 ........................................................................................................... 2
表 1-3 人追従モジュール群 用語一覧 .................................................................................. 2
表 2-1 コンポーネント概要 .................................................................................................. 5
表 2-2 動作環境.................................................................................................................... 8
表 2-3
Segway RMP 200/Segway RMP 200 ATV仕様 ................................................. 8
表 2-4 Segway RMP 400 仕様........................................................................................... 8
表 2-5
Segway BlackShip 4 Wheels/2 Wheels仕様 ................................................... 10
表 2-6
Logicool GPW-600 仕様 ..................................................................................... 12
表 2-7
HOKUYO UTM-30LX仕様 ................................................................................ 13
表 2-8 DIGITAL COWBOY DC-NCR130 仕様............................................................... 14
表 2-9 動作に必要なソフトウェア ..................................................................................... 15
表 2-10 操作に必要なソフトウェア ................................................................................... 15
表 3-1 コンポーネント一覧 ................................................................................................ 16
表 3-2 データ型一覧........................................................................................................... 17
表 3-3 型名定義 ................................................................................................................ 18
表 3-4 TimedPositionデータフォーマット ...................................................................... 18
表 3-5 TimedOdometryデータフォーマット ................................................................... 19
表 3-6
TimedVelocity2Dデータフォーマット ................................................................ 20
表 3-7
Velocity2Dデータフォーマット........................................................................... 20
表 3-8 TimedVelocity2Dデータ詳細 ................................................................................ 21
表 3-9 TimedPose2Dデータフォーマット ....................................................................... 22
表 3-10 Pose2Dデータフォーマット................................................................................ 22
表 3-11 Point2Dデータフォーマット............................................................................... 23
表 3-12
TimedPose2Dデータ詳細 .................................................................................. 23
表 3-13
TimedScanデータフォーマット ........................................................................ 24
表 3-14 RMPコンポーネントプロファイル...................................................................... 25
表 3-15 アクティビティ一覧 ............................................................................................ 26
表 3-16 インポート一覧 ................................................................................................... 27
表 3-17 アウトポート一覧................................................................................................ 27
表 3-18 コンフィギュレーション一覧 .............................................................................. 28
表 3-19 ファイル一覧 ....................................................................................................... 29
表 3-20 rtc.conf設定項目一覧.......................................................................................... 29
表 3-21 rmp.conf設定項目一覧........................................................................................ 30
-v-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
表 3-22 Blackshipコンポーネントプロファイル.............................................................. 32
表 3-23 アクティビティ一覧 ............................................................................................ 33
表 3-24 インポート一覧 ................................................................................................... 34
表 3-25 アウトポート一覧................................................................................................ 34
表 3-26 コンフィギュレーション一覧 .............................................................................. 35
表 3-27 ファイル一覧......................................................................................................... 36
表 3-28 rtc.conf設定項目一覧.......................................................................................... 36
表 3-29 bs.conf設定項目一覧........................................................................................... 36
表 3-30 GamePadコンポーネントプロファイル.............................................................. 39
表 3-31 アクティビティ一覧 ............................................................................................ 40
表 3-32 アウトポート一覧................................................................................................ 41
表 3-33 コンフィギュレーション一覧 .............................................................................. 42
表 3-34 ファイル一覧......................................................................................................... 42
表 3-35 Cam_v4l2 コンポーネントプロファイル............................................................. 43
表 3-36 アクティビティ一覧 ............................................................................................ 44
表 3-37 アウトポート一覧................................................................................................ 45
表 3-38 コンフィギュレーション一覧 .............................................................................. 45
表 3-39 ファイル一覧 ....................................................................................................... 46
表 3-40
cam_v4l2.conf設定項目一覧 ............................................................................. 46
表 3-41 Urgコンポーネントプロファイル........................................................................ 47
表 3-42 アクティビティ一覧 ............................................................................................ 48
表 3-43 アウトポート一覧................................................................................................ 49
表 3-44 コンフィギュレーション一覧 .............................................................................. 49
表 3-45 ファイル一覧 ....................................................................................................... 50
表 3-46
urg.conf設定項目一覧....................................................................................... 50
表 3-47 HumanRecogコンポーネントプロファイル........................................................ 51
表 3-48 アクティビティ一覧 ............................................................................................ 52
表 3-49 インポート一覧 ................................................................................................... 53
表 3-50 アウトポート一覧................................................................................................ 53
表 3-51 コンフィギュレーション一覧 .............................................................................. 54
表 3-52 ファイル一覧 ....................................................................................................... 55
表 3-53 rtc.conf設定項目一覧.......................................................................................... 55
表 3-54
humanrecog.conf設定項目一覧 ........................................................................ 56
表 3-55 HumanFollowコンポーネントプロファイル ...................................................... 58
表 3-56 アクティビティ一覧 ............................................................................................ 59
表 3-57 インポート一覧 .................................................................................................. 60
-vi-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
表 3-58 アウトポート一覧................................................................................................ 60
表 3-59
HumanFollow:コンフィギュレーション一覧 ................................................ 61
表 3-60 ファイル一覧 ....................................................................................................... 62
表 3-61 rtc.conf設定項目一覧.......................................................................................... 62
表 3-62
humanfollow.conf設定項目一覧 ....................................................................... 63
表 4-1 OpenRTM-aistのダウンロードURL ..................................................................... 64
表 4-2 EclipseのダウンロードURL.................................................................................. 65
表 4-3 JREのダウンロードURL ...................................................................................... 66
表 4-4 rtc.conf設定項目.................................................................................................... 71
表 4-5 OpenRTM-aistのダウンロードURL ..................................................................... 75
表 4-6 rtc.conf設定項目.................................................................................................... 76
図目次
図 1-1 ロボット中心座標系 ............................................................................................... 3
図 1.2 地図座標系................................................................................................................ 3
図 2-1 システム構成(RMP)........................................................................................... 6
図 2-2 システム構成 (Blackship) ..................................................................................... 7
図 2-3
Segway RMP 200.................................................................................................. 9
図 2-4
Segway RMP 200 ATV.......................................................................................... 9
図 2-5
Segway RMP 400.................................................................................................. 9
図 2-6 Segway BlackShip 4 Wheels................................................................................ 11
図 2-7 Segway BlackShip 2 Wheels................................................................................ 11
図 2-8
Segway BlackShip オプションパーツ バルーンタイヤ装着例 .......................... 11
図 2-9
Logicool GPW-600 .............................................................................................. 12
図 2-10
HOKUYO UTM-30LX ...................................................................................... 13
図 2-11
DIGITAL COWBOY DC-NCR130 .................................................................... 14
図 3-1 ターゲットの認識.................................................................................................. 51
図 3-2 ターゲットへの直線的な追従 ................................................................................ 57
図 3-3 ターゲット位置をトレースする追従 ..................................................................... 57
図 6-1
Activate時に表示されるHumanRecogコンポーネントの画面 ........................... 80
図 6-2
Activate時に表示されるUrgコンポーネントの画面........................................... 80
-vii-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
1 総則
1.1. 目的
本書は、人追従モジュールで使用するコンポーネントの利用方法について、記述した文書
である。
1.2. 適用範囲
本書は、以下のコンポーネントに対して適用する。
・RMP 制御 RTC
・Blackship 制御 RTC
・ゲームパッド RTC
・人認識 RTC
・人追従制御 RTC
・距離取得 RTC
・カメラ画像取得 RTC
1.3. 関連文書等
本書の適用文書、関連文書、参考文書について記述する。
1.3.1. 適用文書
関連文書で使用している文書を、本人追従システムに適用している。
-1-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
1.3.2. 関連文書
本書の関連文書を表 1-1に示す。
表1-1
No
関連文書一覧
文書名
版数
人追従モジュールシステム マニュアル
1
発行元
最新版
株式会社セック
1.3.3. 参考文書
本書の参考文書を表 1-2に示す。
表1-2
No
参考文書一覧
文書名
版数
発行元
1
【Web】OpenRTM –aist Webサイト
(http://www.openrtm.org/openrtm/ja/content/
openrtm-aist-official-website)
-
独立行政法人産業技術総合研究所
2
次世代ロボット知能化技術開発プロジェクト
移動知能(社会・生活分野)の研究開発
モジュール仕様書
1.0
セグウェイジャパン株式会社
1.2
セグウェイジャパン株式会社
基本台車モジュール+ゲームパッドモジュール
3
次世代ロボット知能化技術開発プロジェクト
移動知能(社会・生活分野)の研究開発
モジュール仕様書
人追従モジュール群
1.4.
定義
1.4.1. 用語
表 1-3 人追従モジュール群 用語一覧
No
用語
説明
1
AIST
独立行政法人産業技術総合研究所(産総研)
2
RTM
RT ミドルウェア
3
RTC
RT コンポーネント
4
ツール
単独で機能するプログラム
5
OmniORB
ORBA を使うためのブローカー
6
CORBA
分散オブジェクト技術の仕様
7
RMP
Robotic Mobility Platform
8
Blackship
汎用移動プラットフォーム
-2-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
1.4.2. 座標系
コンポーネントが使用している座標系について記述する。
○ロボット中心座標系
ロボット側の座標系としては、ロボット中心に原点があり、ロボット進行方向を X 軸方向
とした右手系を想定している。また、各要素の単位は、位置[m]、速度[m/s]、角度[radian]、角
速度[radian/s]を想定している。
図 1-1
ロボット中心座標系
○地図座標系
地図側の座標系としては、原点、X 軸方向ともに任意の位置、方向に指定可能な右手系を
想定している。また、各要素の単位は、位置[m]、速度[m/s]、角度[radian]、角速度[radian/s]を
想定しており、radian の範囲は 0~2π で正規化されていると仮定している。更に、可能で
あれば平面直角座標系を推奨している。
Y
X
図 1.2 地図座標系
-3-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
1.5. ライセンス
ライセンスは、商用利用の際には連絡を要する。使用条件は個別に検討される。
連絡先
セグウェイジャパン株式会社
E-MAIL
[email protected]
TEL
045-263-6151
商用以外の利用の場合、BSD ライセンスが適用される。
なお、本書は、クリエイティブ・コモンズ 表示 2.1 ライセンス
(http://creativecommons.org/licenses/by-sa/2.1/jp/)の下に提供される。
-4-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
2 コンポーネント構成
2.1. コンポーネント概要
人追従モジュール群は、ロボットシステムがカメラを使って、登録された人を認識し、
追従する機能を有する。これは、6つの RTC から構成されている。台車は、RMP ま
たは Blackship のいずれかを選択する。
本ソフトウェアは、カメラの画像から登録された人を測域センサと併用して画像認識
をしながら追従を行う。
各コンポーネントを表 2-1に記述する。
表2-1 コンポーネント概要
No.
コンポーネント
説明
RTC/ツール名
1
RMP 制御 RTC
台車 RMP を制御する。
RMP Comp
2
Blackship 制御 RTC
台車 Blackship を制御する。
Blackship Comp
3
ゲームパッド取得 RTC
ゲームパッドのキーを取得する。
GamePad Comp
4
カメラ画像取得 RTC
カメラから画像を取得する。
Cam_v4l2 Comp
5
距離取得 RTC
測域センサから距離を取得する。
Urg Comp
6
人認識 RTC
画像から人を認識する。
HumanRecog Comp
7
人追従 RTC
画像から認識した人に追従する。
HumanFollow Comp
二輪型移動ロボットで使用する人追従モジュール群は、以下の順番で処理を行う。
ゲームパッドのボタンを押すと、ターゲットの色情報を更新し、ボタンを離した時点の色
情報を追従するターゲットの情報として確定する。また、ボタンを離した時点でロボット
の追従が開始される。(ゲームパッド取得 RTC→人認識 RTC)
測域センサにより距離情報を取得し、障害物とターゲットとなる人の情報を判別する。(距
離取得 RTC→人認識 RTC)
カメラの画像と測域センサの情報からターゲットの人の位置を特定し、位置を出力する。
(カメラ画像取得 RTC→人認識 RTC)
特定したターゲットの人の位置情報を元に、速度と方向の修正を行う。(人認識 RTC→人
追従 RTC)
速度と方向の情報を元に台車を制御する。(人追従 RTC→RMP(あるいは Blackship)制
御 RTC)
台車の位置情報を更新する。(RMP(あるいは Blackship)制御 RTC→人追従 RTC、人認
識 RTC)
人追従モジュール群のシステム構成を図 2-1、図 2-2に示す。図 2-1は台車がRMPのシス
テム構成図であり、図 2-2は台車がBlackshipのシステム構成図である。
-5-
NEDO 次世代ロボット知能化技術開発プロジェクト
図 2-1
システム構成(RMP)
-6-
人追従モジュールマニュアル
NEDO 次世代ロボット知能化技術開発プロジェクト
図 2-2
システム構成 (Blackship)
-7-
人追従モジュールマニュアル
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
2.2. 動作環境
人追従モジュール群の動作環境を表 2-2に記述する。
表2-2 動作環境
OS
WindowsXP、Ubuntu 10.04 LTS Desktop 日本語 Remix (32bit 環境)
開発言語
C++、C 言語
2.3. ハードウェア仕様
本書で扱う RTC で使用するハードウェアについて記述する。
2.3.1. RMP
表 2-3
No.
Segway RMP 200/Segway RMP 200 ATV 仕様
Segway RMP 200
パラメータ
Segway RMP 200 ATV
1
サイズ (幅×高さ×長さ)
63 × 75 × 48 cm
78 × 78 × 53 cm
2
総重量
3
走行距離
64 kg
13~19 km
73 kg
13~19 km
4
最高速度
16 km/h
16 km/h
5
積載重量
6
登坂角度
45 kg
10 度
67 kg
10 度
7
バッテリ
Li-ion(リチウムイオン電池)
Li-ion (リチウムイオン電池)
8
自立機構
倒立振子(2 輪駆動、2 点接地) 倒立振子(2 輪駆動、2 点接地)
表 2-4
No.
Segway RMP 400 仕様
Segway RMP 400
パラメータ
1
サイズ (幅×高さ×長さ)
79 × 53 × 111 cm
2
総重量
3
走行距離
100 kg
10~19 km
4
最高速度
29 km/h
5
積載重量
6
登坂角度
90 kg
45 度
7
バッテリ
Li-ion (リチウムイオン電池)
8
自立機構
無し(4 輪駆動、4 点接地)
-8-
NEDO 次世代ロボット知能化技術開発プロジェクト
図 2-3
図 2-4
図 2-5
Segway RMP 200
Segway RMP 200 ATV
Segway RMP 400
-9-
人追従モジュールマニュアル
NEDO 次世代ロボット知能化技術開発プロジェクト
2.4.
人追従モジュールマニュアル
ハードウェア仕様(BlackShip)
表 2-5
No.
Segway BlackShip 4 Wheels/2 Wheels 仕様
パラメータ
Segway BlackShip 4 Wheels/2 Wheels
1
サイズ (幅×高さ×長さ)
46×31×64 cm (4 Wheels)
46×31×64 cm (2 Wheels)
2
タイヤ直径
20 cm (4Wheels)
31 cm (2Wheels)
3
総重量
約 20kg (バッテリ込み)
4
駆動モータ
DC24V 90W×2 (MaxonMotor 社製)
5
内蔵センサ
エンコーダ×2
バッテリ残量計×1
バッテリ電流計×1
モータ電流計×2
6
移動速度
最大約 1m/s
7
積載重量
最大 40kg (路面状況により減少)
8
バッテリ
24V8Ah (鉛蓄電池)
9
接続方法
シリアル接続(RS-232C)
10
連続稼動時間
約 2~3 時間(走行条件により増減)
-10-
NEDO 次世代ロボット知能化技術開発プロジェクト
図 2-8
図 2-6
Segway BlackShip 4 Wheels
図 2-7
Segway BlackShip 2 Wheels
人追従モジュールマニュアル
Segway BlackShip オプションパーツ バルーンタイヤ装着例
-11-
NEDO 次世代ロボット知能化技術開発プロジェクト
2.5.
人追従モジュールマニュアル
ハードウェア仕様(ゲームパッド)
表 2-6
No.
Logicool GPW-600 仕様
Logicool GPW-600
パラメータ
1
電源
単 3 乾電池 2 本
2
本体サイズ(Wx D x H)
3
本体重量
153×94×52mm
240g (電池挿入時:280g)
4
USB レシーバー
ケーブル長
119 cm
5
レシーバー重量
6
操作範囲
55g
約 10m(使用環境により異なる)
7
コントローラ入出力機能
ボタン 12 個
(1/2/3/4/5/6/7/8/9/10 左スティック(11) 右スティック(12))
MODE 切り替えボタン、VIBRATION(オン、オフボタン)
方向キー、MODE LED 表示
8
接続
USB 1.1/2.0
図 2-9
Logicool GPW-600
-12-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
2.5.1. ハードウェア仕様(レーザーレンジ)
表 2-7
No.
HOKUYO UTM-30LX 仕様
HOKUYO UTM-30LX
パラメータ
1
電源電圧
DC12V±10%
2
消費電流
700mA 以下 但し起動時は約 1A
3
光源
半導体レーザ
4
測距範囲
定格:0.1~30m(500mm□以上、白色紙)角度:270°
5
測距精度
0.1~10m:±30mm、10~30m:±50mm※1
6
角度分解能
ステップ角:0.25°(360°/1,440 分割)
7
光軸径
400mm(30m における参考値)
8
走査時間
25ms/scan
9
騒音
25dB 以下
10
インタフェース
USB2.0(Full Speed)
11
通信仕様
専用コマンド(SCIP Ver.2.0)
12
表示灯
電源表示灯(緑):電源 ON 時点灯
λ=905nm(FDA レーザ安全クラス 1)
同期出力(NPN オープンコレクタ DC30V 30mA 以下)
動作表示灯(赤):正常動作時点灯、故障時→点滅
13
接続
電源及び同期出力:ケーブル引出し式 2m
USB:TypeA プラグ付きケーブル 2m
14
使用周囲照度
10,000lx※1
15
使用周囲温度
-10~+50℃(保存時-25~+75℃)
16
使用周囲湿度
85% RH 以下(但し、結露・氷結しないこと)
17
耐振動
複振幅 1.5mm、10~55Hz、X・Y・Z 各方向、各 2 時間
18
耐衝撃
196m/s2、 X・Y・Z 各方向、各 10 回
19
絶縁抵抗
10MΩ、DC500V メガー
20
保護構造
IP64(IEC 規格)
21
寿命
5 年(モータ寿命。但し、使用条件により異なる)
22
ケース材質
ポリカーボネート
23
質量
約 370g(ケーブル含む)
図 2-10
HOKUYO UTM-30LX
-13-
NEDO 次世代ロボット知能化技術開発プロジェクト
2.6.
人追従モジュールマニュアル
ハードウェア仕様(カメラ)
表 2-8
No.
DIGITAL COWBOY DC-NCR130 仕様
Logicool QCAM-200V
パラメータ
1
有効画素数
130 万画素
2
最大解像度
3
最大フレームレート
1280×1024
1280×1024:15fps 640x480:30fps
※USB1.1 動作時はパフォーマンスが低下する。
4
最大フレームレート
30fps
5
接続 I/F
6
電源
USB 2.0 / 1.1
USB バスパワー
7
ケーブル長
8
設置タイプ
9
サイズ (幅×高さ×奥行)
52(W)×65(D)×70(H)mm
10
総重量
105g
1.5m
スタンド式、クリップ式
図 2-11
DIGITAL COWBOY DC-NCR130
-14-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
2.7. 利用ソフトウェア仕様
本書で扱う RTC の動作に必要なソフトウェアを表 2-9 に、RTC を操作するために必要なツ
ールを
表 2-10に示す。
これらのインストール手順および基本操作については、「4.1.1インストール準備」を参照
のこと。
表2-9 動作に必要なソフトウェア
名称/バージョン
OpenRTM-aist_C++/
1.0.0-RELEASE
OpenRTM
Eclipse
1.0-RELEASE
Java
参考 URL
説明
tools
RT ミドルウェア本体(C++/
VC++)
http://www.openrtm.org/openrtm/ja
RT コ ン ポ ー ネ ン ト を 扱 う
RTCBuilder
お よ び
RTSystemEditor が組み込ま
れた Eclipse 統合開発環境
http://www.openrtm.org/openrtm/ja/conte
nt/openrtm-eclipse-tools-10-release#toc0
プログラミング言語。Eclipse
の動作に必要
http://java.com/ja/
表 2-10 操作に必要なソフトウェア
名称/バージョン
RTSystemEditor/1.0.0
説明
RTC に対する基本操作機能を
提供する GUI ツール
-15-
参考 URL
http://www.openrtm.org/openrtm/ja
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3 コンポーネント仕様
3.1. コンポーネント一覧
人追従モジュール群の一覧を表 3-1に記述する。
表3-1 コンポーネント一覧
No.
RTC 名
説明
1
RMP Comp
RMP 制御 RTC
2
Blackship Comp
Blackship 制御 RTC
3
GamePad Comp
ゲームパッド取得 RTC
4
Cam_v4l2 Comp
カメラ画像取得 RTC
5
Urg Comp
距離取得 RTC
6
HumanRecog Comp
人認識 RTC
7
HumanFollow Comp
人追従 RTC
-16-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.2. データ型一覧
人追従モジュール群のインタフェースとして取り扱うデータ型について記述する。
表 3-2 データ型一覧
(人追従)
HumanFollow
(人認識)
HumanRecog
(距離取得)
Urg
(カメラ画像取得)
Cam_v4l2
(ゲ ームパッド取得)
GamePad
概要
( Blackship
制御)
Blackship
データ型名
( RMP
制御)
RMP
№
1
TimedLong
―
O
O
2
TimedFloat
―
O
3
TimedDobule
―
4
TimedULong
―
5
TimedUShortSeq
―
6
TimedLongSeq
―
7
TimedULongSeq
―
8
TimedPosition
位置情報
O
O
9
TimedOdometry
オドメトリ情報
O
O
10
TimedVelocity
速度情報
I/O
I/O
O
O
11
TimedVelocity2D
走行情報
I/O
I/O
O
O
12
TimedPose2D
確率的自己位置姿勢
O
O
13
TimedScan
距離情報
O
O
I/O
I
O
I
O
I
O
O
I
I/O
O
-17-
I
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(1)
型名定義
人追従モジュール群独自の型定義について記述する。
表 3-3
型名定義
No.
型名
既存データ型
説明
1
TimedLongSeq
int [1081]
距離データ
(2)
データ型定義
(a)
TimedPosition
TimedPosition は、移動知能ロボットの位置情報を格納するための型。ロボット中心座標
系における位置を保持する。データ構造について記述する。
表 3-4
TimedPosition データフォーマット
概要
位置情報のデータフォーマット
ラベル
type
メンバ
tm タイムスタンプ
id ID 番号(配列)
RTC::Time
sequence<long>
x 位置情報データ
double
y 位置情報データ
double
theta 位置情報データ
double
error エラーデータ(配列)
sequence<double>
-18-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(b)
TimedOdometry
TimedOdometry は、移動知能ロボットの現在位置と姿勢を格納するための型。ロボット
中心座標系における位置と姿勢を保持する。データ構造について記述する。
表 3-5
TimedOdometry データフォーマット
概要
オドメトリ情報のデータフォーマット
ラベル
type
メンバ
tm タイムスタンプ
RTC::Time
x 位置情報データ
double
y 位置情報データ
double
theta 位置情報データ
double
-19-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(c)
TimedVelocity2D
TimedVelocity2D は、移動知能ロボットの走行情報を格納するための型。ロボット中心座
標系における速度を保持する。データ構造について記述する。
表 3-6
TimedVelocity2D データフォーマット
概要
二次元直交座標系上での走行情報のデータフォーマット
ラベル
type
メンバ
tm タイムスタンプ
id ID 番号(配列)
RTC::Time
sequence<long>
data 速度情報
RTC::Velocity2D
error エラーデータ(配列)
sequence<double>
表 3-7
Velocity2D データフォーマット
概要
二次元直交座標系上での速度情報のデータフォーマット
ラベル
type
メンバ
vx X 方向速度情報
double
vy Y 方向速度情報
double
va Z 軸周りの角速度情報
double
-20-
NEDO 次世代ロボット知能化技術開発プロジェクト
表 3-8
人追従モジュールマニュアル
TimedVelocity2D データ詳細
ラベル/メンバ
内容
tm/タイムスタンプ
時刻情報。位置推定を行った時刻やデー
タ送受信時刻を格納するために利用。
id/ID 番号
走行情報に対する ID 情報
data/二次元位置情報
二次元直交座標系上での速度情報を表
現するための型。
(Velocity2D)
二次元直交座標系上での X 方向速度情
vx/X 方向速度情報
報。単位:m/s
二次元直交座標系上での Y 方向速度情
vy/Y 方向速度情報
報。単位:m/s
二次元直交座標系上での Z 軸周りの角速
vz/Z 軸周りの角速度情報
度情報。単位:rad/s
error/エラーデータ
自己位置姿勢推定時の誤差情報
※RTC::Time 型、RTC::Velocity2D 型は OpenRTM-aist で用意している標準型。
※id に格納する ID 情報の付番方法、コード体系については未定義。
※error に格納する誤差
-21-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(d)
TimedPose2D
TimePose2D は、二次元直交座標上での確率的自己位置姿勢の推定結果を格納するための
型。位置の推定結果に加えて、ID 情報、推定誤差などを保持することができる。データ構
造について記述する。
表 3-9
TimedPose2D データフォーマット
概要
二次元直交座標上での確率的自己位置姿勢の推定結果のデータフォーマット
ラベル
type
メンバ
tm タイムスタンプ
id ID 番号(配列)
RTC::Time
sequence<long>
data 二次元位置情報
RTC::Pose2D
error エラーデータ(配列)
sequence<double>
表 3-10
Pose2D データフォーマット
概要
二次元直交座標系上での位置・姿勢情報のデータフォーマット
ラベル
type
メンバ
position 位置情報
RTC::Point2D
heading 姿勢情報。
double
-22-
NEDO 次世代ロボット知能化技術開発プロジェクト
表 3-11
人追従モジュールマニュアル
Point2D データフォーマット
概要
二次元直交座標系上での位置情報のデータフォーマット
ラベル
type
メンバ
x X 方向位置情報
double
y Y 方向位置情報
double
表 3-12
TimedPose2D データ詳細
ラベル/メンバ
内容
tm/タイムスタンプ
時刻情報。位置推定を行った時刻やデー
タ送受信時刻を格納するために利用。
id/ID 番号
位置推定結果に対する ID 情報。
data/二次元位置情報
二次元直交座標系上での位置・姿勢情報
を表現するための型。
(Pose2D)
position/二次元直交座標系上での位置情報
(Point2D)
二次元直交座標系上での位置情報を表
現するための型。
x/X 方向位置情報
二次元直交座標系上での X 方向位置情
報。単位:m
y/Y 方向位置情報
二次元直交座標系上での Y 方向位置情
報。単位:m
error/エラーデータ
自己位置姿勢推定時の誤差情報
※RTC::Time 型、RTC::Pose2D 型、RTC::Point2D 型は OpenRTM-aist で用意している標
準型。
※id に格納する ID 情報の付番方法、コード体系については未定義。
※error に格納する誤差情報の表現方法については未定義。
-23-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(e)
TimedScan
TimedScan は、測域センサなどで取得した距離値を格納するための型。データ構造につい
て記述する。
表 3-13
TimedScan データフォーマット
概要
距離情報のデータフォーマット
ラベル
type
メンバ
tm タイムスタンプ
scan 距離値
RTC::Time
TimedLongSeq
-24-
NEDO 次世代ロボット知能化技術開発プロジェクト
3.3.
人追従モジュールマニュアル
コンポーネント仕様(RMP)
3.3.1. 基本情報
SegwayRMP 向けの台車モジュール。速度指示値に対する台車ハードウェアへの速度指示や、
制御結果の速度の出力、台車固有のステータスの出力を行う。
表 3-14
RMP コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Windows (VC2008),
Ubuntu 10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0 (Linux)
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
Libftd2xx
実行周期
1000Hz
バージョン
0.1.0
最大インスタンス数
10
-25-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.3.2. アクティビティ
RMP のアクティビティを示す。
表 3-15
No.
1
アクション関数名
onInitialize
処理概要
以下の処理を行う。
・
2
3
4
アクティビティ一覧
onActivated
onExecute
onDeactivated
コンフィギュレーションの初期化処理
以下の処理を行う。
・
デバイスの起動
・
コンフィギュレーションの取得
以下の処理を行う。
・
速度の取得
・
台車の操作
・
台車の各種情報出力
以下の処理を行う。
・
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
デバイス停止
-26-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.3.3. インタフェース仕様
(1)
データポート
(a)
インポート
RMP コンポーネントで定義しているインポートについて記述する。
表 3-16
No
ポート名
型
インポート一覧
インタフェース型
説明
1
Input
TimedULong
RTC
入力
2
Velocity
TimedVelocity
RTC
速度指示
3
VellocityIIS
TimedVelocity
IIS
速度指示
4
Velocity2DIIS TimedVelocity2D
IIS
速度指示
(b)
アウトポート
RMP コンポーネントで定義しているアウトポートについて記述する。
表 3-17
No
ポート名
型
アウトポート一覧
インタフェース型
説明
1
EncoderL
TimedLong
RTC
左車輪エンコーダ値
2
EncoderR
TimedLong
RTC
右車輪エンコーダ値
3
Battery
TimedFloat
RTC
バッテリ電圧
4
UiBattery
TimedFloat
RTC
UI バッテリ電圧
5
PitchAngle
TimedFloat
RTC
本体角度ピッチ
6
PitchRate
TimedFloat
RTC
本体角速度
7
RollAngle
TimedFloat
RTC
本体角度ロール
8
RollRate
TimedFloat
RTC
本体角速度ロール
9
YawRate
TimedFloat
RTC
本体角速度ヨー
10
Odometry
TimedOdometry
RTC
11
OdometryB
TimedOdometry
RTC
12
RobotVelIIS
TimedVelocity
IIS
モジュール内部オドメ
トリ
モジュール内部オドメ
トリ
本体速度
13
RobotPosIIS
TimedPosition
IIS
14
RobotVel2DII
S
RobotPose2D
IIS
TimedVelocity2D
IIS
モジュール内部位置情
報
制御結果の速度情報
TimedPose2D
IIS
制御結果の位置情報
15
(2)
サービスポート
RMP コンポーネントで定義しているサービスポートはない。
-27-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(3)
コンフィギュレーション
RMP コンポーネントで定義しているコンフィギュレーションについて記述する。
OpenRTM-1.0.0 では、コンフィグレーションパラメータは常時変更可能であるが、コンフ
ィグレーションパラメータの変更は、表内の説明に記述されているタイミングでのみ反映
される。
表 3-18
No.
パラメータ名
データ型
コンフィギュレーション一覧
デフォルト
値
説明
1
Kodotheta
double
1.0
自己位置(オドメトリ)計算時の theta 角度移動成分
に乗じられる係数
2
Kodoxy
double
1.0
自己位置(オドメトリ)計算時の x,y 座標移動成分に
乗じられる係数
3
KSpeed
double
1.0
速度指示の速度にかかる係数
4
KSpeedA
double
-0.01630197
RMP 速度制御の係数
※1
5
KSpeedB
double
1.412417763
RMP 速度制御の係数
※1
6
Kturn
double
1.0
角速度指示の角速度にかかる係数
7
MaxV
double
2.0
最大速度(m/sec)
8
MaxW
double
2.0
最大角速度 (radian/sec)
9
Mode
int
0
将来削除予定のパラメータ(0固定)
10
idIIS
int
200
ロボットの ID
11
simulator
int
0
将来削除予定のパラメータ(0固定)
12
startthetaIIS
double
0.0
自己位置(オドメトリ)の theta 角度初期位置(radian)
13
startxIIS
double
0.0
自己位置(オドメトリ)の x 座標初期位置(m)
14
startyIIS
double
0.0
自己位置(オドメトリ)の y 座標初期位置(m)
15
str_port
string
FTDI
使用ポート
16
wheelwidth
double
0.54
内部オドメトリ計算に用いられるホイールレッド幅
17
wheelradiusL
double
0.235
内部オドメトリ計算に用いられる左ホイール半径
18
wheelradiusR
double
0.235
内部オドメトリ計算に用いられる右ホイール半径
19
wheelcount1rot
double
49646.0775
内部オドメトリ計算に用いられるタイヤ 1 回転で生ず
るエンコーダカウント値
※1 V=V*(KspeedA*|V|+KspeedB)*Kspeed
RMP 台車の生成速度が線形でないため、調整係数を用いて線形に近い指令値に変換する。
-28-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(4)
設定ファイル
RMP コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-19
No.
ファイル一覧
ファイル名
説明
1
rtc.conf
ネームサービスやログ関連等の基本項目を設定する。
2
rmp.conf
RMP コンポーネント固有の設定が記述されている。
(※)ファイル名はコンフィギュレーションにて変更可
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。ここでは、独自の設定項目につい
て記述する。
表 3-20
No.
項目名
rtc.conf設定項目一覧
デフォルト値
rmp.conf
説明
RMP 独自設定項目の設定ファイル
名を指定する。
1
Generic.Rmp.config_file
2
Generic.Blackship.config_file bs.conf
Blackship 独自設定項目の設定ファ
イル名を指定する。
3
Generic.GamePad.config_file
GamePad 独自設定項目の設定ファ
イル名を指定する。
gamepad.conf
-29-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(c)
rmp.conf
rmp.conf で設定される項目について記述する。
表 3-21
No.
1
項目名
conf.real.str_port
rmp.conf 設定項目一覧
デフォルト
FTDI
説明
接続先に実機を設定(実機の場合「FTDI」に
固定)(ポート名:文字列)
2
conf.real.Kspeed
1.0
速度指示の速度にかかる係数(単位:実数)
3
conf.real.KspeedA
0.0
実機の速度指示を線形とした場合の設定(単
位:実数)
4
conf.real.KspeedB
1.0
実機の速度指示を線形とした場合の設定(単
位:実数)
5
conf.real.Kturn
6
conf.real.wheelwidth
1.0
0.545
角速度指示の角速度にかかる係数(単位:実数)
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の左右幅(単位:実数)
7
conf.real.wheelradiusL
0.235
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の半径(左)(単位:実数)
8
conf.real.wheelradiusR
0.235
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の半径(右)(単位:実数)
9
conf.real.wheelcount1rot
50000.0
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の 1 回転のエンコーダカウント
数(単位:実数)
10
conf.real2.str_port
FTDI
接続先に実機を設定(実機の場合「FTDI」に
固定)(ポート名:文字列)
11
conf.real2.Kspeed
12
conf.real2.KspeedA
1.0
-0.01630197
速度指示の速度にかかる係数(単位:実数)
実機の速度指示を線形とした場合の設定(単
位:実数)
13
conf.real2.KspeedB
1.412417763
実機の速度指示を線形とした場合の設定(単
位:実数)
14
conf.real2.Kturn
15
conf.real2.wheelwidth
1.0
角速度指示の角速度にかかる係数(単位:実数)
0.54
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の左右幅(単位:実数)
16
conf.real2.wheelradiusL
0.235
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の半径(左)(単位:実数)
17
conf.real2.wheelradiusR
18
conf.real2.wheelcount1rot
0.235
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の半径(右)(単位:実数)
49646.0775
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の 1 回転のエンコーダカウント
数(単位:実数)
19
conf.simulator.str_port
/dev/ttySIMa0
接続先にシミュレータのシリアル通信デバイ
ス名(/dev/ttySIM*)を指定
-30-
NEDO 次世代ロボット知能化技術開発プロジェクト
No.
項目名
20
conf.simulator.Kspeed
21
conf.simulator.KspeedA
人追従モジュールマニュアル
デフォルト
1.0
-0.01630197
説明
速度指示の速度にかかる係数(単位:実数)
実機の速度指示を線形とした場合の設定(単
位:実数)
22
conf.simulator.KspeedB
1.412417763
実機の速度指示を線形とした場合の設定(単
位:実数)
23
conf.simulator.Kturn
24
conf.simulator.wheelwidth
1.0
角速度指示の角速度にかかる係数(単位:実数)
0.54
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の左右幅(単位:実数)
25
conf.simulator.wheelradiusL
0.235
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の半径(左)(単位:実数)
26
conf.simulator.wheelradiusR
27
conf.simulator.wheelcount1rot
0.235
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の半径(右)(単位:実数)
49646.0775
自己位置(オドメトリ)、自己速度の計算時に
使用する車輪の 1 回転のエンコーダカウント
数(単位:実数)
-31-
NEDO 次世代ロボット知能化技術開発プロジェクト
3.4.
人追従モジュールマニュアル
コンポーネント仕様(Blackship)
3.4.1. 基本情報
Blackship 向けの台車モジュール。速度指示値に対する台車ハードウェアへの速度指示や、
制御結果の速度の出力、台車固有のステータスの出力を行う。
表 3-22
Blackship コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Windows (VC2008),
Ubuntu 10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0-RELEASE
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
なし
実行周期
1000Hz
バージョン
1.0.0
最大インスタンス数
10
-32-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.4.2.
3.4.3. アクティビティ
Blackship コンポーネントのアクティビティを示す。
表 3-23
アクティビティ一覧
No.
アクション関数名
処理概要
1
onInitialize
以下の処理を行う。
・
2
3
4
onActivated
onExecute
onDeactivated
コンフィギュレーションの初期化処理
以下の処理を行う。
・
デバイスの起動
・
コンフィギュレーションの取得
以下の処理を行う。
・
速度の取得
・
台車の操作
・
台車の各種情報出力
以下の処理を行う。
・
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
デバイス停止
-33-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.4.4. インタフェース仕様
(1)
データポート
(a)
インポート
Blackship コンポーネントで定義しているインポートについて記述する。
表 3-24
No
ポート名
型
インポート一覧
インタフェース型
説明
1
Input
TimedULong
RTC
入力
2
Velocity
TimedVelocity
RTC
速度指示
3
VellocityIIS
TimedVelocity
IIS
速度指示
4
Velocity2DIIS TimedVelocity2D
IIS
速度指示
(b)
アウトポート
Blackship コンポーネントで定義しているアウトポートについて記述する。
表 3-25
No
ポート名
型
アウトポート一覧
インタフェース型
説明
1
EncoderL
TimedLong
RTC
左車輪エンコーダ値
2
EncoderR
TimedLong
RTC
右車輪エンコーダ値
3
Odometry
TimedOdometry
RTC
4
OdometryB
TimedOdometry
RTC
5
RobotVelIIS
TimedVelocity
IIS
モジュール内部オドメト
リ
モジュール内部オドメト
リ
本体速度
6
RobotPosIIS
TimedPosition
IIS
モジュール内部位置情報
7
RobotVel2DII
S
RobotPose2D
IIS
TimedVelocity2D
IIS
制御結果の速度情報
TimedPose2D
IIS
制御結果の位置情報
8
(2)
サービスポート
Blackship コンポーネントで定義しているサービスポートはない。
-34-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(3)
コンフィギュレーション
Blackship コンポーネントで定義しているコンフィギュレーションについて記述する。
OpenRTM-1.0.0 では、コンフィグレーションパラメータは常時変更可能であるが、コンフ
ィグレーションパラメータの変更は、表内の説明に記述されているタイミングでのみ反映
される。
表 3-26
No.
パラメータ名
コンフィギュレーション一覧
データ型
デフォルト値
説明
1
Kodotheta
double
1.0
自己位置(オドメトリ)計算時の theta 角度移動成分
に乗じられる係数
2
Kodoxy
double
1.0
自己位置(オドメトリ)計算時の x,y 座標移動成分に
乗じられる係数
3
Kslip
double
0.0
自己位置(オドメトリ)計算時の左右タイヤスリップ
率(0~1)。通常 0 で使用。
4
KSpeed
double
1.0
速度指示の速度にかかる係数
5
Kturn
double
1.6
角速度指示の角速度にかかる係数
6
MaxV
double
2.0
最大速度(m/sec)
7
MaxW
double
2.0
最大角速度 (radian/sec)
8
ODOoutput
int
0
自己位置(オドメトリ)の標準出力のオンオフ。(オ
ン 1 オフ 0)
9
idIIS
int
250
ロボットの ID
10
mps2bs
double
152.0
速度単位変換係数。
m/sec から Blackship 固有単位への係数。
Blackship 入力 = mps2bs * speed(m/sec)
11
simulator
int
0
将来削除予定のパラメータ(0固定)
12
startthetaIIS
double
0.0
自 己 位 置 ( オ ド メ ト リ ) の theta 角 度 初 期 位 置
(radian)
13
startxIIS
double
0.0
自己位置(オドメトリ)の x 座標初期位置
14
startyIIS
double
0.0
自己位置(オドメトリ)の y 座標初期位置
15
str_port
string
/dev/ttyUSB0
使用ポート
16
wheelwidth
double
0.405
内部オドメトリ計算に用いられるホイールレッド幅
17
wheelradiusL
double
0.1535
内部オドメトリ計算に用いられる左ホイール半径
18
wheelradiusR
double
0.1535
内部オドメトリ計算に用いられる右ホイール半径
19
wheelcount1rot
double
2294.6
内部オドメトリ計算に用いられるタイヤ 1 回転で生
ずるエンコーダカウント値
-35-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(4)
設定ファイル
Blackship コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-27 ファイル一覧
No.
ファイル名
1
rtc.conf
ネームサービスやログ関連等の基本項目を設定する。
2
bs.conf
Blackship コンポーネント固有の設定が記述されている。
説明
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。ここでは、独自の設定項目につい
て記述する。
表 3-28
No.
1
rtc.conf設定項目一覧
項目名
デフォルト値
Generic.Rmp.config_file
rmp.conf
説明
RMP 独自設定項目の設定ファイル名を
指定する。
2
Generic.Blackship.config_file
bs.conf
Blackship 独自設定項目の設定ファイ
ル名を指定する。
3
Generic.GamePad.config_file
gamepad.conf
GamePad 独自設定項目の設定ファイ
ル名を指定する。
(c)
bs.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。ここでは、独自の設定項目につい
て記述する。
表 3-29
No.
1
項目名
conf.bs4.str_port
bs.conf設定項目一覧
デフォルト
説明
COM0
Blackship 接続先のシリアルポート(文字列)
Windows(COM*), Linux(/dev/tty*)
2
conf.bs4.Kspeed
1.0
速度指示の速度にかかる係数(単位:実数)
3
conf.bs4.Kturn
1.6
角速度指示の角速度にかかる係数(単位:実数)
4
conf.bs4.Kslip
0.0
自己位置(オドメトリ)計算時の左右タイヤスリップ率(0~
1)。通常 0 で使用。
-36-
NEDO 次世代ロボット知能化技術開発プロジェクト
No.
5
項目名
conf.bs4.mps2bs
人追従モジュールマニュアル
デフォルト
説明
152.0
速度単位変換係数。
m/sec から Blackship 固有単位への係数。
Blackship 入力 = mps2bs * speed(m/sec)
6
conf.bs4.Kodoxy
1.0
自己位置(オドメトリ)計算時の x,y 座標移動成分に乗じら
れる係数(単位:実数)
7
conf.bs4.Kodotheta
1.0
自己位置(オドメトリ)計算時の theta 角度移動成分に乗じ
られる係数(単位:実数)
8
conf.bs4.wheelwidth
0.405
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
左右幅(単位:実数)
9
conf.bs4.wheelradiusL
0.1535
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
半径(左)(単位:実数)
10
conf.bs4.wheelradiusR
0.1535
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
11
conf.bs4.wheelcount1rot
2294.6
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
半径(右)(単位:実数)
1 回転のエンコーダカウント数(単位:実数)
12
conf.bs4.simulator
0
13
conf.bs4.idIIS
250
ロボットの ID (単位:整数)
14
conf.bs4.startxIIS
0.0
自己位置(オドメトリ)の x 座標初期位置(単位:実数)
15
conf.bs4.startyIIS
0.0
自己位置(オドメトリ)の y 座標初期位置(単位:実数)
16
conf.bs4.startthetaIIS
0.0
自己位置(オドメトリ)の theta 角度初期位置 (単位:実数)
17
conf.bs4.MaxV
2.0
最大速度(単位:実数)
18
conf.bs4.MaxW
2.0
最大角速度(単位:実数)
19
conf.bs4caster.str_port
COM0
将来削除予定のパラメータ(0固定)
Blackship 接続先のシリアルポート(文字列)
Windows(COM*), Linux(/dev/tty*)
20
conf.bs4caster.Kspeed
1.0
速度指示の速度にかかる係数(単位:実数)
21
conf.bs4caster.Kturn
1.0
角速度指示の角速度にかかる係数(単位:実数)
22
conf.bs4caster.Kslip
0.0
自己位置(オドメトリ)計算時の左右タイヤスリップ率(0~
1)。通常 0 で使用。
23
conf.bs4caster.mps2bs
152.0
速度単位変換係数。
m/sec から Blackship 固有単位への係数。
Blackship 入力 = mps2bs * speed(m/sec)
24
conf.bs4caster.Kodoxy
1.0
25
conf.bs4caster.Kodotheta
1.0
自己位置(オドメトリ)計算時の x,y 座標移動成分に乗じら
れる係数(単位:実数)
自己位置(オドメトリ)計算時の theta 角度移動成分に乗じ
られる係数(単位:実数)
26
conf.bs4caster.wheelwidth
27
conf.bs4caster.wheelradiusL
0.405
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
左右幅(単位:実数)
0.1535
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
半径(左)(単位:実数)
28
conf.bs4caster.wheelradiusR
0.1535
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
半径(右)(単位:実数)
-37-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
No.
項目名
29
conf.bs4caster.wheelcount1rot
30
conf.bs4caster.simulator
31
conf.bs4caster.idIIS
250
ロボットの ID (単位:整数)
32
conf.bs4caster.startxIIS
0.0
自己位置(オドメトリ)の x 座標初期位置(単位:実数)
33
conf.bs4caster.startyIIS
0.0
自己位置(オドメトリ)の y 座標初期位置(単位:実数)
34
conf.bs4caster.startthetaIIS
0.0
自己位置(オドメトリ)の theta 角度初期位置 (単位:実数)
35
conf.bs4caster.MaxV
2.0
最大速度(単位:実数)
36
conf.bs4caster.MaxW
2.0
最大角速度(単位:実数)
37
conf.bs2.str_port
デフォルト
説明
2294.6
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
1 回転のエンコーダカウント数(単位:実数)
0
COM0
将来削除予定のパラメータ(0固定)
Blackship 接続先のシリアルポート(文字列)
Windows(COM*), Linux(/dev/tty*)
38
conf.bs2.Kspeed
39
conf.bs2.Kturn
40
conf.bs2.Kslip
41
conf.bs2.mps2bs
1.5
1.376
0.0
速度指示の速度にかかる係数(単位:実数)
角速度指示の角速度にかかる係数(単位:実数)
自己位置(オドメトリ)計算時の左右タイヤスリップ率(0~
1)。通常 0 で使用。
152.0
速度単位変換係数。
m/sec から Blackship 固有単位への係数。
Blackship 入力 = mps2bs * speed(m/sec)
42
conf.bs2.Kodoxy
1.0
自己位置(オドメトリ)計算時の x,y 座標移動成分に乗じら
れる係数(単位:実数)
43
conf.bs2.Kodotheta
1.0
自己位置(オドメトリ)計算時の theta 角度移動成分に乗じ
られる係数(単位:実数)
44
conf.bs2.wheelwidth
0.33
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
左右幅(単位:実数)
45
conf.bs2.wheelradiusL
0.1
46
conf.bs2.wheelradiusR
0.1
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
半径(左)(単位:実数)
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
半径(右)(単位:実数)
47
conf.bs2.wheelcount1rot
2294.6
自己位置(オドメトリ)、自己速度の計算時に使用する車輪の
1 回転のエンコーダカウント数(単位:実数)
48
conf.bs2.simulator
0
49
conf.bs2.idIIS
250
ロボットの ID (単位:整数)
50
conf.bs2.startxIIS
0.0
自己位置(オドメトリ)の x 座標初期位置(単位:実数)
51
conf.bs2.startyIIS
0.0
自己位置(オドメトリ)の y 座標初期位置(単位:実数)
52
conf.bs2.startthetaIIS
0.0
自己位置(オドメトリ)の theta 角度初期位置 (単位:実数)
53
conf.bs2.MaxV
2.0
最大速度(単位:実数)
54
conf.bs2.MaxW
2.0
最大角速度(単位:実数)
将来削除予定のパラメータ(0固定)
-38-
NEDO 次世代ロボット知能化技術開発プロジェクト
3.5.
人追従モジュールマニュアル
コンポーネント仕様(GamePad)
3.5.1. 基本情報
PC 用ゲームパッド向けのデバイスモジュール。ゲームパッドのボタンの状態や、アナロ
グスティックの方向値の出力行う。
表 3-30
GamePad コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Windows (VC2008),
Ubuntu 10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0 (Linux)
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
なし
実行周期
1000Hz
バージョン
0.1.0
最大インスタンス数
10
-39-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.5.2. アクティビティ
表 3-31
アクティビティ一覧
No.
アクション関数名
処理概要
1
onInitialize
以下の処理を行う。
・
2
onActivated
以下の処理を行う。
・
3
4
onExecute
onDeactivated
コンフィギュレーションの初期化処理
デバイス起動
以下の処理を行う。
・
デバイスの更新
・
ボタンデータを取得
・
アナログスティックのデータを取得
・
ボタンデータ出力
・
アナログスティックデータ出力
・
速度生成データ出力
・
15 ミリ秒スリープ
以下の処理を行う。
・
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
デバイス停止
-40-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.5.3. インタフェース仕様
(1)
データポート
(a)
インポート
GamePad コンポーネントはインポートを定義しない。
(b)
アウトポート
GamePad コンポーネントで定義しているアウトポートについて記述する。
表 3-32
アウトポート一覧
No
ポート名
型
インタフェース
型
説明
1
2
Button
StickLX
TimedULong
TimedFloat
RTC
3
StickLY
TimedFloat
RTC
4
StickRX
TimedFloat
RTC
5
StickRY
TimedFloat
RTC
6
StickLXd
TimedDouble
RTC
7
StickLYd
TimedDouble
RTC
8
StickRXd
TimedDouble
RTC
9
StickRYd
TimedDouble
RTC
10
Velocity
TimedVelocity
RTC
11
VelocityIIS
TimedVelocity
IIS
12
Velocity2DI
IS
TimedVelocity
2D
IIS
ボタン状態(各 bit)
左アナログスティックの x 方
向値
左アナログスティックの y 方
向値
右アナログスティックの x 方
向値
右アナログスティックの y 方
向値
左アナログスティックの x 方
向値
左アナログスティックの y 方
向値
右アナログスティックの x 方
向値
右アナログスティックの y 方
向値
左アナログスティックからの
速度生成。(旧 IDL)
左右アナログスティックから
の速度生成。(旧 IDL)
左右アナログスティックから
の速度生成
RTC
(2)
サービスポート
GamePad コンポーネントで定義しているサービスポートはない。
-41-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(3)
コンフィギュレーション
GamePad コンポーネントで定義しているコンフィギュレーションについて記述する。
表 3-33
No.
パラメータ名
データ型
コンフィギュレーション一覧
デフォルト値
説明
1
Klx
float
1.0
左アナログスティック水平値に乗じられる係数
2
Kly
float
1.0
左アナログスティック垂直値に乗じられる係数
3
Krx
float
1.0
右アナログスティック水平値に乗じられる係数
4
Kry
float
1.0
右アナログスティック垂直値に乗じられる係数
5
str_port
string
/dev/input/js0
デバイスのポート名
Windows (無視), Linux (/dev/input/js*)
(4)
設定ファイル
GamePad コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-34 ファイル一覧
No.
1
ファイル名
rtc.conf
説明
ネームサービスやログ関連等の基本項目を設定する。
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。
-42-
NEDO 次世代ロボット知能化技術開発プロジェクト
3.6.
人追従モジュールマニュアル
コンポーネント仕様(Cam_v4l2)
3.6.1. 基本情報
UVC (USB Video Class)に対応したカメラ向けデバイスモジュール。カメラ画像を raw
データにて出力する。Video4Linux2 を使用する。
表3-35
Cam_v4l2 コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Ubuntu 10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0 (Linux)
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
libx11-dev
実行周期
1000Hz
バージョン
1.0.0
最大インスタンス数
10
-43-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.6.2. アクティビティ
表 3-36
アクティビティ一覧
No.
アクション関数名
処理概要
1
onInitialize
以下の処理を行う。
・
2
3
4
onActivated
onExecute
onDeactivated
コンフィギュレーションの初期化処理
以下の処理を行う。
・
コンフィギュレーションの取得
・
画像用メモリ領域の確保
以下の処理を行う。
・
画像をキャプチャ
・
画像情報を出力
以下の処理を行う。
・
デバイス停止
・
メモリの解放
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
-44-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.6.3. インタフェース仕様
(1)
データポート
(a)
インポート
Cam_v4l2 コンポーネントで定義しているインポートはない。
(b)
アウトポート
Cam_v4l2 コンポーネントで定義しているアウトポートについて記述する。
表 3-37
No
1
2
ポート名
型
アウトポート一覧
インタフェース型
Image
TimedULongS
eq
ImageYUY TimedUShortS
V
eq
説明
RTC
24bitRGB 値の画像 (4byte/pixel)
RTC
YUYV 形式の画像
(2byte/pixel)
(2)
サービスポート
Cam_v4l2 コンポーネントで定義しているサービスポートはない。
(3)
コンフィギュレーション
Cam_v4l2 コンポーネントで定義しているコンフィギュレーションについて記述する。
表 3-38
No.
パラメータ名
コンフィギュレーション一覧
データ型
デフォルト値
説明
1
width
int
640
画像幅
2
height
int
480
画像高
3
str_port
string
/dev/video0
デバイスポート名
-45-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(4)
設定ファイル
ObstacleAvoidanceComp コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-39
No.
1
ファイル一覧
ファイル名
rtc.conf
説明
ネームサービスやログ関連等の基本項目を設定する。
Cam_v4l2 コンポーネント固有の設定が記述されてい
る。
(※)ファイル名はコンフィギュレーションにて変更可
2
cam_v4l2.conf
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。
(c)
cam_v4l2.conf
cam_v4l2.conf で設定される項目について記述する。
表 3-40
No.
項目名
cam_v4l2.conf設定項目一覧
デフォルト
説明
1
conf.custom.width
320
画像幅
2
conf.custom.height
240
画像高
3
conf.custom.str_port
/dev/video0
-46-
デバイス名
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.7. コンポーネント仕様(Urg)
3.7.1. 基本情報
HOKUYO UTM-30LX 向けのデバイスモジュール。mm 単位の距離値をスキャン数(1081)
出力する。デバイス内部のタイマ値から、PC 時間タイムスタンプを見積もる機能を有して
いる。
表 3-41
Urg コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Ubuntu 10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0 (Linux)
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
なし
実行周期
1000Hz
バージョン
1.0.0
最大インスタンス数
10
-47-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.7.2. アクティビティ
表 3-42
アクティビティ一覧
No.
アクション関数名
処理概要
1
onInitialize
以下の処理を行う。
・ コンフィギュレーションの初期化処理
2
onActivated
以下の処理を行う。
・ 距離値用メモリ領域を確保
・ デバイス開始
3
onExecute
以下の処理を行う。
・ スキャン結果を格納
・ スキャン結果を出力
・ 10 ミリ秒スリープ
4
onDeactivated
以下の処理を行う。
・ デバイス停止
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
-48-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.7.3. インタフェース仕様
(1)
データポート
Urg で定義しているデータポートについて記述する。
(a)
インポート
Urg コンポーネントで定義しているインポートはない。
(b)
アウトポート
Urg コンポーネントで定義しているアウトポートについて記述する。
表 3-43
No
ポート名
1
Scan
TimedLongSeq
RTC
2
ScanTS
TimedScan
RTC
型
アウトポート一覧
インタフェース型
説明
タイムスタンプ付距離データ(mm)
tm: PC 時間動機タイムスタンプ
(Scan と同じ内容のため将来削除予定)
タイムスタンプ付き距離データ(mm)
(2)
サービスポート
Urg コンポーネントで定義しているサービスポートはない。
(3)
コンフィギュレーション
Urg コンポーネントで定義しているコンフィギュレーションについて記述する。
表 3-44
コンフィギュレーション一覧
No.
パラメータ名
データ型
デフォルト値
説明
1
end
int
1080
スキャン終了位置
2
skip
int
1
スキャンスキップ数
3
start
int
0
スキャン開始位置
4
str_port
int
/dev/ttyACM0
デバイスポート名(/dev/ttyACM0)
5
timesynccount
int
20
デバイス・PC 時間同期間隔
6
timesyncperiod
double
60.0
デバイス・PC 時間同期回数
7
win
int
1
スキャンデータの Windows 表示
8
end
int
1080
スキャン終了位置
-49-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(4)
設定ファイル
Urg コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-45
ファイル一覧
No.
ファイル名
説明
1
rtc.conf
ネームサービスやログ関連等の基本項目を設定する。
urg コンポーネント固有の設定が記述されている。
(※)ファイル名はコンフィギュレーションにて変更可
2
urg.conf
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。
(c)
urg.conf
urg.conf で設定される項目について記述する。
表 3-46
No.
項目名
1
conf.simulator.str_port
2
conf.simulator.start
3
urg.conf設定項目一覧
デフォルト
説明
/dev/ttySIMb0
デバイスポート名
0
スキャン開始位置
conf.simulator.end
1080
スキャン終了位置
4
conf.simulator.skip
1
スキャンスキップ数
5
conf.simulator.win
1
スキャンデータの Windows 表示
-50-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.8. コンポーネント仕様(HumanRecog)
3.8.1. 基本情報
最初に登録した人の位置を認識してその位置を出力する。カメラによる対象人物の色ヒ
ストグラム成分とのマッチングにより、対象人物の方向を認識する。その認識された方向
に対して、レーザーレンジより距離を算出し、対象人物の位置を特定してその位置を出力
する。
Input への入力がある間、ターゲットとなる人の色情報を更新する。入力が0になると
確定となり、その時点での色情報が人の位置認識に使用される。色成分はカメラ画像の右
側に表示される。認識できない場合、位置はロボット位置と同じ座標を出力する。
図 3-1
表 3-47
ターゲットの認識
HumanRecog コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Windows (VC2008),
Ubuntu10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0 (Linux)
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
なし
実行周期
1000Hz
バージョン
1.0.0
最大インスタンス数
10
-51-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.8.2. アクティビティ
表 3-48
アクティビティ一覧
No.
アクション関数名
処理概要
1
onInitialize
以下の処理を行う。
・
2
3
4
onActivated
onExecute
onDeactivated
コンフィギュレーションの初期化処理
以下の処理を行う。
・
メモリを初期化
・
メモリ領域を確保
・
コンフィギュレーションの取得
・
ヒストグラムをクリア
以下の処理を行う。
・
取得した画像情報を更新
・
マッチング処理
・
人検出処理
・
ヒストグラムイメージを描画
・
取得したレーザーレンジファインダ情報を更新
・
人の位置を更新
以下の処理を行う。
・
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
メモリを解放
-52-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.8.3. インタフェース仕様
(1)
データポート
HumanRecog で定義しているデータポートについて記述する。
(a)
インポート
HumanRecog コンポーネントで定義しているインポートについて記述する。
表 3-49
No
ポート名
型
インポート一覧
インタフェース型
説明
1
Input
TimedULong
RTC
対象人物の登録(1 入力時)^
2
Image
RTC
3
ImageYUYV
RTC
32bitXRGB 形式画像 raw デ
ータ
YUYV 形式画像 raw データ
4
Scan
RTC
レーザーレンジ距離
5
RobotPose2DII
S
TimedULongS
eq
TimedUShortS
eq
TimedULongS
eq
TimedPose2D
IIS
ロボットの位置
(b)
アウトポート
HumanRecog コンポーネントで定義しているアウトポートについて記述する。
表 3-50
No
1
ポート名
型
HumanPose2DII
S
TimedPose2
D
アウトポート一覧
インタフェース型
IIS
説明
人の位置
(2)
サービスポート
HumanRecog コンポーネントで定義しているサービスポートはない。
-53-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(3)
コンフィギュレーション
HumanRecog コンポーネントで定義しているコンフィギュレーションについて記述する。
表 3-51
No.
パラメータ名
データ型
コンフィギュレーション一覧
デフォルト値
説明
1
imagew
int
640
画像サイズ
2
imageh
int
480
画像サイズ (pixel)
3
grayS
double
0.06
グレースケール判定の閾値(割合 0-1)
4
grayK
double
1.0
グレースケール要素の係数
5
matchvalue
double
0.7
マッチング判定の閾値
6
matchblur
int
1
マッチング対象をぼかす広さ
7
matchw
int
128
色情報範囲 (pixel)
8
matchh
int
192
色情報範囲 (pixel)
9
searchw
int
82
マッチング範囲 (pixel)
10
serachh
int
40
マッチング範囲 (pixel)
11
scales
int
0
マッチング範囲スケーリングの開始値
12
scalee
int
0
マッチング範囲スケーリングの終了値
13
addx
int
8
マッチング確認間隔 (pixel)
14
addy
int
8
マッチング確認間隔 (pixel)
15
adds
int
1
マッチングスケーリング確認間隔
16
maxjump
double
0.5
ターゲット認識移動距離範囲
17
angleofview0
double
75.0
カメラ画像の画角
18
angleofview1
double
45.0
現状使用されていません(削除予定)
19
angleofscan
int
40
LRF 距離判定時の判定角度
20
scanradadd
double
0.0
レーザーレンジ表示範囲(通常 0 を指定)
21
str_port
string
/dev/video0
現状使用されていません(削除予定)
22
idIIS
int
1000
出力される人位置データに付加される ID
-54-
(pixel)
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(4)
設定ファイル
HumanRecog コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-52
ファイル一覧
No.
ファイル名
説明
1
rtc.conf
ネームサービスやログ関連等の基本項目を設定する。
HumanRecog コンポーネント固有の設定が記述され
ている。
(※)ファイル名はコンフィギュレーションにて変更可
humanrecog.conf
2
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。
表 3-53
No.
1
項目名
rtc.conf設定項目一覧
デフォルト値
Generic.HumanRecog.config_file humanrecog.conf
-55-
説明
HumanRecog コンポーネント固
有の設定が記述されている。
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(c)
humanrecog.conf
humanrecog.conf で設定される項目について記述する。
表 3-54
No.
項目名
humanrecog.conf 設定項目一覧
デフォルト
説明
1
conf.custom.imagew
640 画像サイズ
2
conf.custom.imageh
480 画像サイズ
3
conf.custom.scanradadd
0.0 レーザーレンジ表示範囲(通常 0 を指
定)
4
conf.custom.angleofview0
75 カメラ画像の画角
5
conf.custom.angleofview1
45 現状使用されていません(削除予定)
6
conf.custom.matchw
128 色情報範囲
7
conf.custom.matchh
192 色情報範囲
8
conf.custom.searchw
80 マッチング範囲
9
conf.custom.searchh
40 マッチング範囲
10
conf.custom.scales
0 マッチング範囲スケーリングの開始値
11
conf.custom.scalee
0 マッチング範囲スケーリングの終了値
12
conf.custom.addx
8 マッチング確認間隔
13
conf.custom.addy
8 マッチング確認間隔
14
conf.custom.adds
1 マッチングスケーリング確認間隔
15
conf.custom.angleofscan
40 LRF 距離判定時の判定角度
16
conf.custom.matchvalue
0.7 マッチング判定の閾値
17
conf.custom.matchblur
18
conf.custom.grayS
0.06 グレースケール判定の閾値
19
conf.custom.grayK
1.0 グレースケール要素の係数
20
conf.custom.idIIS
1 マッチング対象をぼかす広さ
1000 出力される人位置データに付加される
ID
-56-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.9. コンポーネント仕様(HumanFollow)
3.9.1. 基本情報
人(位置・距離)認識 RTC によって認識された、人位置情報に対して追従する速度成分
を生成する。
(1)
Followモード ターゲットへの直線的な追従
正面方向に対して横方向のズレの距離に比例して旋回成分を生成。また、対象までの指定
間隔の距離との差に比例してその距離を詰める併進速度を生成しする。
図 3-2
ターゲットへの直線的な追従
(2)
Trace モード ターゲット位置をトレースする追従 (Mode:1)
ターゲット位置を順次記憶していき、前方方向の速度と、角速度によってその位置を辿る
ように追従する。
注意:このドキュメント中の人位置認識 RTC(HumanRecog)はカメラ正面画角範囲しかタ
ーゲットを捉えられないのでこのモードでは使用できません。別途人位置もしくはその他
物体位置を入力する機能が必要になる。
図 3-3
ターゲット位置をトレースする追従
-57-
NEDO 次世代ロボット知能化技術開発プロジェクト
表 3-55
人追従モジュールマニュアル
HumanFollow コンポーネントプロファイル
種別
RTC
提供元
Segway Japan
動作 OS
Windows (VC2008),
Ubuntu10.04 LTS Desktop 日本語 Remix (32bit 環境)
RT ミドルウェア
OpenRTM-aist-1.0.0 (Linux)
開発言語
C/C++ (OpenRTM-aist-1.0.0)
依存ライブラリ
なし
実行周期
1000Hz
バージョン
1.0.0
最大インスタンス数
10
-58-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.9.2. アクティビティ
表 3-56
アクティビティ一覧
No.
アクション関数名
処理概要
1
onInitialize
以下の処理を行う。
・
2
3
4
onActivated
onExecute
onDeactivated
コンフィギュレーションの初期化処理
以下の処理を行う。
・
ポイントリストをクリア
・
現在の日時を取得
・
画像用メモリ領域を確保を確保
以下の処理を行う。
・
ロボットの位置を最新の情報に更新
・
追従するターゲットの ID を確認
・
各モード時の追従情報を更新
・
追従するルートを計算
・
速度情報を更新
以下の処理を行う。
・
5
onAborting
-
6
onReset
-
7
onError
-
8
onFinalize
-
9
onStateUpdate
-
10
onRateChanged
-
11
onStartup
-
12
onShutdown
-
画像用メモリを解放
-59-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
3.9.3. インタフェース仕様
(1)
データポート
HumanFollow で定義しているデータポートについて記述する。
(a)
インポート
HumanFollow コンポーネントで定義しているインポートについて記述する
表 3-57 インポート一覧
No
ポート名
型
インタフェース型
説明
1
HumanPose2DIIS
TimedPose2D
IIS
人の位置
2
RobotPose2DIIS
TimedPose2D
IIS
ロボットの位置
(b)
アウトポート
HumanFollow コンポーネントで定義しているアウトポートについて記述する。
表 3-58
アウトポート一覧
No
ポート名
型
インタフェース型
説明
1
Velocity
TimedVelocity
RTC
追従のための速度情報
Vx, vw のみ有効(旧 IDL)
2
VelovityeDIIS
TimedVelocity2D
IIS
追従のための速度情報
(2)
サービスポート
HumanFollow コンポーネントで定義しているサービスポートはない。
-60-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(3)
コンフィギュレーション
HumanFollow コンポーネントで定義しているコンフィギュレーションについて記述する。
表 3-59
HumanFollow:コンフィギュレーション一覧
No.
パラメータ名
データ型
デフォルト値
1
Distance
double
1.5
Follow モード
2
IntervalTime
double
0.5
Trace モード
3
Kcurve_evec
double
1.0
現状使用されていません(削除予定)
4
Kcurve_svec
double
1.0
現状使用されていません(削除予定)
5
Kspeed
double
1.0
生成併進速度に乗じられる係数
6
Kturn
double
3.0
生成角速度に乗じられる係数
7
MAXspeed
double
1.0
Follow モード
最大速度(m/sec)
8
MAXturn
double
1.5
Follow モード
最大角速度(rad/sec)
9
Mode
int
0
動作モード
10
PathStopR
double
1.5
Trace モード
ゴール位置からの許容距離(m)
11
PathTargetR
double
0.2
Trace モード
経路情報からの許容距離(m)
12
PathTime
double
2.0
Trace モード
現在の経路の長さを移動する時間(sec)
13
PathTurn
double
1.570796
Trace モード
追従経路移動角速度(m/sec)
14
PathVel
double
1.0
Trace モード
追従経路移動速度(m/sec)
説明
※
ターゲットとの距離(m)
ターゲット位置更新時間間隔(sec)
0:Follow モード
1:Trace モード
PathTime が設定されているとき無効
15
imageh
int
640
Trace モード
経路画面のサイズ
16
imagew
int
640
Trace モード
経路画面のサイズ
-61-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(4)
設定ファイル
HumanFollow コンポーネントで使用している設定ファイルについて記述する。
(a)
ファイル一覧
表 3-60
No.
ファイル一覧
ファイル名
説明
1
rtc.conf
ネームサービスやログ関連等の基本項目を設定する。
2
humanfollow.conf
HumanFollow コンポーネント固有の設定が記述されている。
(※)ファイル名はコンフィギュレーションにて変更可
(b)
rtc.conf
rtc.confの設定項目において、本RTC独自の設定項目はない。rtc.confの設定内容について
は、「4.1.3(5) rtc.confファイルの作成」を参照のこと。
表 3-61
No.
1
項目名
Generic.HumanFollow.config_file
rtc.conf設定項目一覧
デフォルト値
humanfollow.conf
説明
humanfollow 独自設定項目の設定
ファイル名を指定する。
-62-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(c)
humanfollow.conf
humanfollow.conf で設定される項目について記述する。
表 3-62
No.
項目名
humanfollow.conf 設定項目一覧
デフォルト
説明
1
conf.mode_follow.Kspeed
1.0
生成併進速度に乗じられる係数
2
conf.mode_follow.Kturn
3.0
生成角速度に乗じられる係数
3
conf.mode_follow.MAXspeed
1.0
最大速度
4
conf.mode_follow.MAXturn
1.5
最大角速度
5
conf.mode_follow.Distance
1.5
ターゲットとの距離
6
conf.mode_follow.Output
7
conf.mode_follow.Kcurve_svec
5.0
現状使用されていません(削除予定)
8
conf.mode_follow.Kcurve_evec
5.0
現状使用されていません(削除予定)
9
conf.mode_follow.PathStopR
1.0
ゴール位置からの許容距離
10
conf.mode_follow.PathTargetR
0.2
経路情報からの許容距離
11
conf.mode_follow.PathTime
2.0
現在の経路の長さを移動する時間
12
conf.mode_follow.PathTurn
1.0
追従経路移動角速度
13
conf.mode_follow.PathVel
1.0
追従経路移動速度
14
conf.mode_follow.IntervalTime
0.5
ターゲット位置更新時間間隔
15
conf.mode_follow.Mode
16
conf.mode_trace.Kspeed
1.0
生成併進速度に乗じられる係数
17
conf.mode_trace.Kturn
3.0
生成角速度に乗じられる係数
18
conf.mode_trace.MAXspeed
1.0
最大速度
19
conf.mode_trace.MAXturn
1.5
最大角速度
20
conf.mode_trace.Distance
1.5
ターゲットとの距離
21
conf.mode_trace.Output
22
conf.mode_trace.Kcurve_svec
5.0
現状使用されていません(削除予定)
23
conf.mode_trace.Kcurve_evec
5.0
現状使用されていません(削除予定)
24
conf.mode_trace.PathStopR
1.0
ゴール位置からの許容距離
25
conf.mode_trace.PathTargetR
0.5
経路情報からの許容距離
26
conf.mode_trace.PathTime
2.0
現在の経路の長さを移動する時間
27
conf.mode_trace.PathTurn
1.0
追従経路移動角速度
28
conf.mode_trace.PathVel
1.0
追従経路移動速度
29
conf.mode_trace.IntervalTime
0.5
ターゲット位置更新時間間隔
30
conf.mode_trace.Mode
0
0
0
1
-63-
Debug 用標準出力(オン1
オフ 0)
動作モード
Debug 用標準出力(オン1
動作モード
オフ 0)
NEDO 次世代ロボット知能化技術開発プロジェクト
4
人追従モジュールマニュアル
取扱手順
4.1. 環境構築(ubuntu)
4.1.1. インストール準備
人追従モジュール群を動作させるために、以下のソフトウェアパッケージをインストール
する。
OpenRTM-aist 1.0.0 RELEASE C++ 版
OpenRTM Eclipse tools 1.0-RELEASE
(1)
OpenRTM-aist 1.0.0 RELEASE C++ 版
(a)
インストール
一括インストールスクリプトをダウンロードし、リスト 4-1に示すコマンドを実行し、イン
ストールする。
リスト4-1 OpenRTM-aistのインストール
$ wget [pkg_install100_ubuntu.shのダウンロードURL]
$ sudo sh pkg_install100_ubuntu.sh
実行途中の質問に対し、''y''あるいは''Y''を入力し、インストールを完了させる。
表 4-1
OpenRTM-aist のダウンロード URL
ダウンロードページ
http://www.openrtm.org/openrtm/ja/content/openrtm-aist-100-release#toc3
インストールスクリプト
http://www.openrtm.org/pub/OpenRTM-aist/cxx/install_scripts/pkg_install1
00_ubuntu.sh
インストール方法の解説
http://www.openrtm.org/openrtm/ja/node/1001#toc0
(b)
ネットワーク設定(Ubuntu10.04 のみ)
Ubuntu10.04 へインストールする場合、ネットワーク設定の変更を行う必要がある。
/etc/hosts ファイルの localhost 定義行の先頭に「#」を追加し、コメントアウトする。
(変更前)
::1 localhost ip6-localhost ip6-loopback
(変更後)
#::1 localhost ip6-localhost ip6-loopback
-64-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(2)
OpenRTM Eclipse tools 1.0-RELEASE
(a)
Eclipseのインストール
eclipse342_rtmtools100release_linux_ja.tar.gzをダウンロードし、リスト 4-2に示すコマ
ンドを実行し、展開する。展開するとeclipsというディレクトリができる。
リスト4-2 Eclipseのインストール
$ wget [ダウンロードURL]
$ tar xvzf eclipse342_rtmtools100release_linux_ja.tar.gz
表 4-2
Eclipse のダウンロード URL
ダウンロードページ
http://www.openrtm.org/openrtm/node/75#toc0
ダウンロードファイル
http://www.openrtm.org/pub/OpenRTM-aist/tools/1.0.0/eclipse34
2_rtmtools100rc1_linux_en.tar.gz
(b)
OpenRTM Eclipse tools 1.1
http://www.openrtm.org/openrtm/ja/node/1736
ダウンロードページ
ダウンロード
ファイル
32bit 版
http://www.openrtm.org/pub/OpenRTM-aist/tools/1.0.0/eclipse34
2_rtmtools110rc1_linux_ja.tar.gz
64bit 版
http://www.openrtm.org/pub/OpenRTM-aist/tools/1.1.0/eclipse34
2_rtmtools110-rc1_x86_64_ja.tar.gz
-65-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(c)
JREのインストール
Eclipseを動かすためには、JavaのJRE (Java Runtime Environment)またはJDK (Java
Development Kit)が必要である。JRE version1.6.02 のインストール例をリスト 4-3に示す。
展開してできたディレクトリをjreという名前でeclipseディレクトリの下へ移動する。
リスト4-3
$
$
$
$
JREのインストール
wget [ダウンロードURL]
chmod a+x ./jre-6u26-linux-i586.bin
./jre-6u26-linux-i586.bin
mv jre1.6.0_26 [eclipseインストール先のディレクトリ]/jre
表 4-3
JRE のダウンロード URL
ダウンロードページ
http://www.java.com/ja/download/manual.jsp#lin
ダウンロードファイル
http://javadl.sun.com/webapps/download/AutoDL?BundleId=52240
(d)
Eclipseの起動シェル
eclipseを起動中にプログラムが止まってしまう問題を回避するため、起動シェルをテキス
トエディタにて作成する。起動シェルの内容をリスト 4-4に示す。
リスト4-4 Eclipse起動シェル
#!/bin/sh
export GDK_NATIVE_WINDOWS=1
./eclipse -clean -vmargs -Dorg.eclipse.swt.browser.XULRunnerPath=/usr/lib/xulrunner1.9.2.18/xulrunner
環境により、xulrunner のバージョンが異なる場合がある。以下のコマンドにて、
XULRunnerPath で指定するディレクトリ名を確認し、必要に応じて、リスト 4-4 内赤字
箇所を変更すること。
$ ls /usr/lib/xulrunner-*
-66-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.1.2. インストール
(1)
ファイルの展開
インストーラなどは特になく、各コンポーネントは ZIP 形式で圧縮されているため、解
凍して任意の場所に展開する。
(2)
binディレクトリ、sjディレクトリの作成
コンポーネントは、コンパイル時に各コンポーネント直下の bin/sj ディレクトリにコピー
される。そのため、ディレクトリが存在しない場合、コンパイルエラーが発生するため、
適宜作成を行う。
例では、Blackship ディレクトリに bin/sj ディレクトリを作成している。
リスト 4-5
$
$
$
$
ディレクトリの作成
cd Blackship
mkdir bin
cd bin
mkdir sj
-67-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.1.3. 動作確認環境の準備
シンボリックリンクの作成
各コンポーネントの src ディレクトリにシンボリックリンクが存在しないため、コンパ
イルが行えないので、シンボリックリンクを作成する。シンボリックリンクの指定を行う
ファイルは、展開したディレクトリ直下の idl ディレクトリに格納されている。
例では、Urg コンポーネントのシンボリックリンクを作成している。
(1)
リスト 4-6
シンボリックリンクの作成
$ cd Following/device/sj/urg/src
$ ln –s ../../../../idl/intellirobot.idl
ライブラリのインストール
一部の RTC はライブラリに依存しており、コンパイルができないので該当の RTC で
必要なライブラリをインストールする。Ubuntu に標準で搭載されているパッケージマネー
ジャを使用して次のライブラリをインストールする。
(2)
・libx11-dev
・libjpe62-dev
-68-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
ドライバのインストール
RMP コンポーネントを使用する場合は、FTDI のドライバをインストールする必要が
ある。
(3)
*FTDI toppage
http://www.ftdichip.com/
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
* Driver
http://www.ftdichip.com/Drivers/D2XX.htm
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
* Readme
http://www.ftdichip.com/Drivers/D2XX/Linux/README.dat
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
上記サイトより、Linux 用のドライバをダウンロードし、README.dat の指示に従い、イン
ストールを行う。
リスト 4-7
$
$
$
$
$
$
$
ドライバのインストール
tar -xvf libftd2xx1.0.4.tar
cd libftd2xx1.0.4/build/i386
sudo cp libftd2xx.so.1.0.4 /usr/local/lib
cd /usr/local/lib
sudo ln -s libftd2xx.so.1.0.4 libftd2xx.so
cd /usr/lib
sudo ln -s /usr/local/lib/libftd2xx.so.1.0.4 libftd2xx.so
libftd2xx.so.****を PATH の通った所にシンボリックリンクを作成する。Ubuntu では、
README.dat の指定した場所と PATH が異なるため、次のコマンドで確認をし、適切な場所に
シンボリックリンクを作成してください。
リスト 4-8
PATH の確認
$ echo $PATH
-69-
NEDO 次世代ロボット知能化技術開発プロジェクト
リスト 4-9
人追従モジュールマニュアル
ドライバの追加
$ cd /usr/local/sbin
$ sudo ln -s /usr/local/lib/libftd2xx.so.1.0.4 libftd2xx.so
ドライバの他に、インクルードファイルも追加する必要がある。インクルードファイルは、
ftd2xx.h と WinTypes.h の二つのファイルになる。
リスト 4-10
インクルードファイルの追加
$ cd libftd2xx1.0.4
$ sudo cp *.h /usr/include
$ sudo cp *.h /usr/local/include
(4)
make
ソースコードに変更がなければ、特に実行しなくても良い。ソースコードなどに変化が
ある場合、make コマンドでコンパイル処理が行われる。
コンパイル時に作成されるファイルを削除する、make clean がある。
リスト 4-11
make コマンド
$ make
-70-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(5)
rtc.confファイルの作成
コンポーネントマネージャの設定ファイルである rtc.conf は最初から用意されている。変更
の必要がある場合は、必要に応じて編集を行う。
本モジュールでは、表 4-4にある項目が設定されていればよい。定義例をエラー! 参照元が
見つかりません。に示す。
その他の設定項目等、詳細については、OpenRTM-aistのマニュアルの設定ファイル(基礎
編)を参照のこと。
表 4-4
rtc.conf 設定項目
No.
パラメータ名
説明
1
corba.nameservers
ネーミングサーバを指定する。
指定フォーマット:host_name:port_number
デフォルトポートは 2809(omniORB のデフォルト)
2
logger.enable
ログ出力の有無を指定する。(Yes:有効、No:無効)
3
logger.file_name
ログファイル名を指定する。(stdout:標準出力)
4
corba.args
CORBA に対する引数。
リスト 4-12
rtc.conf 例
corba.nameservers: localhost:2809
logger.enable:Yes
logger.file_name:stdout
Cam_v4l2 コンポーネントと Urg コンポーネントは、Windows 版が存在しないため Linux
側で起動する必要がある。その際、rtc.conf の corba.nameservers の IP アドレスとポート
番号を Windows のネームサービスが起動している PC の IP アドレスとポート番号に修正
を行う必要がある。
例:
corba.nameservers: 192.168.0.1:2809
(6)
ネーミングサービスの起動
CORBA のネーミングサービスを起動する。ネーミングサービスの起動方法については、
OpenRTM-aist の動作確認方法を参照のこと。
動作確認方法
http://openrtm.org/openrtm/ja/content/%E5%8B%95%E4%BD%9C%E7%A2%BA%E8%
AA%8D-linux%E7%B7%A8
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
-71-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.2. 設定・カスタマイズ手順
人追従モジュール群での設定およびカスタマイズ手順はない。
(1)
コンフィギュレーションの設定
人追従モジュールコンポーネントで使用する各コンポーネントは、それぞれのパラメータ
をコンフィギュレーションとして持っており、変更可能である。
コンフィギュレーションのパラメータ項目と取り得る値については、各コンポーネントの
『コンフィギュレーション』の項を参照のこと。
コンフィギュレーション情報は RTSystemEditor 上で変更する。これは OpenRTM-aist
に共通する操作であるため、OpenRTM-aist の RTSystemEditor のマニュアルを参照のこ
と。
RTSystemEditor のマニュアル
http://openrtm.org/openrtm/ja/node/1175
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
(2)
ログの設定
人追従モジュールコンポーネントでは、ログ出力に OpenRTM-aist 標準のロギングフレ
ームワークを利用している。デフォルトでは、標準出力へ出力を行う。
ログの出力先やログレベルを変更する場合は、rtc.conf を編集する。rtc.conf の設定方法
については、OpenRTM-aist のマニュアルの「設定ファイル(基礎編)」を参照のこと。
設定ファイル(基礎編)
http://www.openrtm.org/openrtm/ja/content/%E8%A8%AD%E5%AE%9A%E3%83%95%
E3%82%A1%E3%82%A4%E3%83%AB-%E5%9F%BA%E7%A4%8E%E7%B7%A8
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
(3)
ハードウェアの起動
各種ハードウェアの電源を入れ、準備可能にする。
-72-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.3. 起動・終了手順
自律移動モジュール群の各コンポーネントの起動手順、および、終了手順について記述す
る。
4.3.1. 起動
リスト 4-13の通り、端末上よりコマンドを入力する。Urgコンポーネントのバックグラウ
ンドで起動する例をリスト 4-14に示す。
リスト4-13
起動コマンド
$ ./(実行するRTコンポーネント) –f (ディレクトリのパス)/rtc.conf
リスト 4-14
Urg コンポーネントの起動例
$./Urg -f ./rtc.conf &
また、コンパイル時に bin/sj ディレクトリに格納されるコンポーネントを使用する場合は、
rtc.conf が存在しない、あるいは各コンポーネントのコンフィギュレーションへのリンクが
記載されていない場合があるため、必要に応じて作成、または修正を行う。
リスト 4-15 各 RT コンポーネントの格納ディレクトリ一覧
No.
コンポーネント名
格納ディレクトリ
1
RMP
[展開ディレクトリ]/RMP/device/sj/rmp/src
[展開ディレクトリ]/RMP/bin/sj
2
Blackship
[展開ディレクトリ]/Blackship/device/sj/blackship/src
[展開ディレクトリ]/Blackship/bin/sj
3
GamePad
[展開ディレクトリ]/GamePad/device/sj/gamepad/src
[展開ディレクトリ]/GamePad/bin/sj
4
Cam_v4l2
[展開ディレクトリ]/Following/device/sj/camera/cam_v4l2/src
[展開ディレクトリ]/Following/bin/sj
5
Urg
[展開ディレクトリ]/Following/device/sj/urg/src
[展開ディレクトリ]/Following/bin/sj
6
HumanRecog
[展開ディレクトリ]/Following/following/sj/humanrecog/src
[展開ディレクトリ]/Following/bin/sj
7
HumanFollow
[展開ディレクトリ]/Following/following/sj/humanfollow/src
[展開ディレクトリ]/Following/bin/sj
-73-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.3.2. 終了
起動しているコンポーネントを終了させるには、RT System Editor で RT コンポーネント
を選択し、右クリックメニューから Exit を選択する。
-74-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.4. 環境構築(Windows)
4.4.1. インストール準備
人追従モジュール群を動作させるために、以下のソフトウェアパッケージをインストール
する。
OpenRTM-aist-1.0.0_vc9.msi
※以下の
http://openrtm.org/openrtm/ja/node/850
(1)
OpenRTM-aist
(a) インストール
インストーラをダウンロードし、実行するとインストーラが起動します。指示に従ってイ
ンストールします。
表 4-5
OpenRTM-aist のダウンロード URL
ダウンロードページ
http://www.openrtm.org/pub/Windows/OpenRTM-aist/cxx/OpenRTM-aist-1.
0.0-RELEASE_vc9.msi
インストール方法の解説
http://openrtm.org/openrtm/ja/node/850
4.4.2. インストール
(1)
ファイルの展開
インストーラなどは特になく、各コンポーネントは ZIP 形式で圧縮されているため、解
凍して任意の場所に展開する。
4.4.3. 動作確認環境の準備
ドライバのインストール
RMP コンポーネントを使用する場合は、FTDI のドライバをインストールする必要が
ある。
(1)
*FTDI toppage
http://www.ftdichip.com/
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
* Driver
http://www.ftdichip.com/Drivers/D2XX.htm
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
上記サイトより、Windows 用のドライバをダウンロードし、USB 機器を接続した際に表示さ
れるダイアログに従い、ドライバをインストールしてください。
-75-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
(2)
rtc.confファイルの作成
コンポーネントマネージャの設定ファイルである rtc.conf は最初から用意されている。変
更の必要がある場合は、必要に応じて編集を行う。
本モジュールでは、表 4-4にある項目が設定されていればよい。定義例をエラー! 参照元
が見つかりません。に示す。
その他の設定項目等、詳細については、OpenRTM-aistのマニュアルの設定ファイル(基礎
編)を参照のこと。
表 4-6
rtc.conf 設定項目
No.
パラメータ名
説明
1
corba.nameservers
ネーミングサーバを指定する。
指定フォーマット:host_name:port_number
デフォルトポートは 2809(omniORB のデフォルト)
2
logger.enable
ログ出力の有無を指定する。(Yes:有効、No:無効)
3
logger.file_name
ログファイル名を指定する。(stdout:標準出力)
4
corba.args
CORBA に対する引数。
リスト 4-16
rtc.conf 例
corba.nameservers: localhost:2809
logger.enable:Yes
logger.file_name:stdout
Cam_v4l2 コンポーネントと Urg コンポーネントは、Windows 版が存在しないため Linux
側で起動する必要がある。その際、rtc.conf の corba.nameservers の IP アドレスとポート
番号を Windows のネームサービスが起動している PC の IP アドレスとポート番号に修正
を行う必要がある。
例:
corba.nameservers: 192.168.0.1:2809
(3)
ネーミングサービスの起動
CORBA のネーミングサービスを起動する。ネーミングサービスの起動方法については、
OpenRTM-aist の動作確認方法を参照のこと。
動作確認方法
http://openrtm.org/openrtm/ja/content/%E5%8B%95%E4%BD%9C%E7%A2%BA%E8%AA%8Dwindows%E7%B7%A8
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
-76-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.5. 設定・カスタマイズ手順
人追従モジュール群での設定およびカスタマイズ手順はない。
(1)
コンフィギュレーションの設定
人追従モジュールコンポーネントで使用する各コンポーネントは、それぞれのパラメータ
をコンフィギュレーションとして持っており、変更可能である。
コンフィギュレーションのパラメータ項目と取り得る値については、各コンポーネントの
『コンフィギュレーション』の項を参照のこと。
コンフィギュレーション情報は RTSystemEditor 上で変更する。これは OpenRTM-aist
に共通する操作であるため、OpenRTM-aist の RTSystemEditor のマニュアルを参照のこ
と。
RTSystemEditor のマニュアル
http://openrtm.org/openrtm/ja/node/1175
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
(2)
ログの設定
人追従モジュールコンポーネントでは、ログ出力に OpenRTM-aist 標準のロギングフレ
ームワークを利用している。デフォルトでは、標準出力へ出力を行う。
ログの出力先やログレベルを変更する場合は、rtc.conf を編集する。rtc.conf の設定方法
については、OpenRTM-aist のマニュアルの「設定ファイル(基礎編)」を参照のこと。
設定ファイル(基礎編)
http://www.openrtm.org/openrtm/ja/content/%E8%A8%AD%E5%AE%9A%E3%83%95%
E3%82%A1%E3%82%A4%E3%83%AB-%E5%9F%BA%E7%A4%8E%E7%B7%A8
[2011 年 10 月 18 日現在 (URL は変更される場合があります)]
(3)
ハードウェアの起動
各種ハードウェアの電源を入れ、準備可能にする。この時、Linux に認識されたデバイス
が そ れ ぞれ存 在 す るか確 認 を すると 不 具 合が少 な く なる。 た と えば /dev/ttyACM* 、
/dev/input/js*、/dev/ttyUSB*、/dev/video*等。
-77-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
4.6. 起動・終了手順
自律移動モジュール群の各コンポーネントの起動手順、および、終了手順について記述す
る。
4.6.1. 起動
Windows で対人追従モジュールコンポーネントを起動、終了する方法について記述する。
任意の場所に展開した対象フォルダを開き components フォルダ内に存在する実行ファイ
ルをダブルクリックし起動する。
※実行ファイルは RMP の場合、RmpComp.exe である。
リスト 4-17 各 RT コンポーネントの格納フォルダ一覧
No.
コンポーネント名
格納ディレクトリ
1
RMP
[展開フォルダ]¥RMP¥device¥sj¥rmp¥srcwin¥components
2
Blackship
[展開フォルダ]¥Blackship¥device¥sj¥blackship¥srcwin¥components
3
GamePad
[展開フォルダ]¥GamePad¥device¥sj¥gamepad¥srcwin¥components
4
Cam_v4l2
[展開フォルダ]¥Following¥device¥sj¥camera¥cam_v4l2¥srcwin¥components
5
Urg
[展開フォルダ]¥Following¥device¥sj¥urg¥srcwin¥components
6
HumanRecog
[展開フォルダ]¥Following¥following¥sj¥humanrecog¥srcwin¥components
7
HumanFollow
[展開フォルダ]¥Following¥following¥sj¥humanfollow¥srcwin¥components
4.6.2. 終了
起動しているコンポーネントを終了させるには、RT System Editor で RT コンポーネン
トを選択し、右クリックメニューから Exit を選択する。
-78-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
5 制限事項
・ 各種ハードウェアの電源を入れ、準備可能な状態にした時に、Linux に認識されたデバ
イスがそれぞれ存在するか確認を行うと不具合に出会う可能性が少なくなる。
(Windows で動作させたとしても、Cam_v4l2 コンポーネントや、Urg コンポーネン
トが Linux 専用のため)
例:
/dev/ttyACM*、/dev/video*
-79-
NEDO 次世代ロボット知能化技術開発プロジェクト
人追従モジュールマニュアル
6 付録
6.1. メッセージ
各コンポーネントでログとして出力されるメッセージはない。出力メッセージはないが、
一部のコンポーネントは、Activate の際に、ウィンドウが表示される。
図 6-1
Activate 時に表示される HumanRecog コンポーネントの画面
図 6-2
Activate 時に表示される Urg コンポーネントの画面
-80-
NEDO 次世代ロボット知能化技術開発プロジェクト
6.2.
(1)
人追従モジュールマニュアル
トラブルシューティング
cam_v4l2 のコンパイルの際に、intellirobot.idlが見つからないというエラーが出
る。
Cam_v4l2 コンポーネントのディレクトリ構造は、他の RTC と違い、一つ階層が深くな
っているため、シンボリックリンクがずれている可能性がある。
次に示すコマンドを入力することで、正常なシンボリックリンクが作成され、コンパイ
ルが可能になる。
リスト 6-1
Cam_v4l2 コンポーネント用のシンボリックリンク作成
$ ln –s ../../../../../idl/intellirobot.idl
(2)
Cam_v4l2 コンポーネントを使用する際、外付けUSBカメラを接続したが、ノー
トPCに内蔵されているカメラが選択されてしまう。
Cam_v4l2 コンポーネントのコンフィギュレーションを修正することで、変更可能である。
方法は二通りあり、cam_v4l2.conf ファイルを直接変更する方法と、RT System Editor 上
で変更する方法がある。
cam_v4l2.conf ファイルを変更する場合は、当ファイルの
conf.custom.str.port:/dev/video0 を使用したいカメラに合わせて変更する。
(3)
UrgをUSBに接続したが動作しない。
Urg の電源は USB バスパワーでは動作しませんので、必ず電源ケーブルに電源を供給
してください。
-81-