Skip to main content
Home >>

RTM contest 2011

移動ロボットのソフトウェア開発のための屋内環境シミュレータRTC



問合先(メールアドレス): 
rtc@aisl.cs.tut.ac.jp

概要

 環境シミュレータは屋内環境、そこで行動するロボット、そして環境内の人の動きを再現します。このシミュレータはセンサ出力や人物検出結果、地図などさまざまな情報を出力します。また、ロボット制御命令(指定する速度)を入力することによってシミュレータ上の仮想移動ロボットを制御することができます。

 このRTコンポーネントを使用することによって実際に実験することが難しい多数の人が行動する環境での試験を行うことができるようになり、また開発したアルゴリズムのそのような環境での動作を安全に検証することができます。

 図の橙色の丸がロボットを、緑の丸が人を表しています。

注意事項

下記ライブラリを使用しています。
●OpenCV 2.1
●CGAL

ライセンス

修正BSDライセンスを適用しています。

連絡先

豊橋技術科学大学 情報・知能工学系
rtc@aisl.cs.tut.ac.jp
〒441-8580 愛知県豊橋市天伯町雲雀ヶ丘1-1
TEL: 0532-44-6826 URL: http://www.aisl.cs.tut.ac.jp/

OS:  Windows
言語:  C++
OpenRTM ver.:  1.0
5
Your rating: None Average: 5 (1 vote)

RTミドルウェアの学習を目的とした安価で入手容易なロボット上での実行環境



問合先(メールアドレス): 
openrtm@design.mech.saitama-u.ac.jp

概要

  • RTミドルウェアの導入教育を目的とした安価&入手容易&多人数向け&初心者向けのRTミドルウェア学習環境
  • 開発した移動ロボットは自律移動を実現
  • 移動能力に関しては,リファレンスハードウェアを使用した場合と同等の学習環境を実現

特徴

1.安価で製作容易な移動ロボットを開発

  • 移動に関する最低限の機能を搭載した3輪移動ロボットを開発
  • 部品には入手容易な市販品を使用
  • コストは3988円(ロボット胴体部の板,スイッチなどを安価なものに変更することにより2千円台も可能)
  • ガーバデータが用意されているので,基板を自分で発注可能(上記の値段には,1台当たりのプリント基板作成費(P板.com利用時)も含まれます)

2.リファレンスハードウェアの移動能力を再現

  • リファレンスハードウェア上で動作するRTC群「来訪者受付システム」のVer1.0をリファレンスソフトウェアだと想定し,再利用
  • 来訪者受付システムの再利用性を実証
  • リファレンスハードウェアから取得していた情報で3輪移動ロボットでは取得できない情報は,動力学シミュレータOpenHRP3を用いて取得
  • 安価なロボットでもリファレンスソフトウェアを利用可能であることを実証

3.RTミドルウェアの導入教育を行うための教育課程を編成

【学習目標】

  • RTミドルウェアの使用方法の習得
  • リファレンスソフトウェアにより実現可能な移動能力の把握
  • シミュレーションと実環境との誤差の体感

【所要時間】

  • 実習:180分
  • 教育効果の評価:100分

【教育対象】

  • PC,プログラミング,機械工学の基礎知識を有する工学部学生
  • RTミドルウェアの使用方法を習得したい企業の技術者

【教育効果の評価方法】

  • アンケート,筆記テスト,実践形式の習熟度確認テスト
  • 講義内容の一部を再実施することによる初回との所要時間の比較

4.全情報をオープンソースとして公開

  • 本学習環境や教育課程の入手・配布が容易
  • ソフトウェア・ハードウェア両面で自由な修正や改善が可能
  • 修正BSDライセンスに基づき配布

使用環境

  • 言語:C++
  • 動作確認OS:Ubuntu 10.04 LTS
  • RTミドルウェア:OpenRTM-aist-1.0.0
  • 動力学シミュレータ:OpenHRP Ver.3.1.1

コンポーネント群

【再利用したRTC】

来訪者受付システムVer1.0の移動能力に関するRTC群

  • PositionInput:目的地入力
  • PathPlanning:経路計画
  • Navigation:経路走行
  • PathFollower:軌跡追従
  • SwitchInputRTC:自律と操作の入替え(本学習環境では入替え機能は未実装)
  • Odometry:オドメトリ推定
  • LocalizeCenter:自己位置姿勢推定
  • DispPosition:位置表示

SerialPortRTC

  • ysuga様のysuga.netにて公開されているSerialPortRTCを再利用しました
  • RTC群と3輪移動ロボットとでRS232C通信が可能となります

【新規に開発したRTC】

DataConversionRTC

  • 来訪者受付システムVer1.0内にあるシミュレーション用RTC「MotorControl」のアルゴリズムを参考に開発しました
  • 入力された目標速度を,3輪移動ロボットへ渡す動作指令値と,OpenHRP3のロボットモデルへ渡すトルクに変換することができます

CommunicationRTC(withOpenHRP3)

  • OpenHRP3のロボットモデルと通信します
  • OpenHRP3のコントローラブリッジです

DataIntegrationRTC

  • CommunicationRTC(withOpenHRP3)とSerialPortRTCの出力を統合して,来訪者受付システムのRTC群へ渡します

一般公開情報

ホームページにて以下の情報を公開しております
※ダウンロードしたファイルが解凍できない場合,任意の名称にリネームした後再度解凍をお試し下さい

【3輪移動ロボット・ハードウェア情報】

  • 製作に関係する全情報
  • 部品表,ガーバデータ,電子回路図,PICプログラム

【ユーザマニュアル関連情報】

  • RTミドルウェア学習環境の仕様や構築方法などの詳細な解説書
  • ユーザマニュアル(全6章,計110ページ)と関連ファイル群

【教育課程関連情報】

  • テキスト(全4章,計54ページ),アンケート,テスト,教育課程実施可能な環境を構築するための資料とファイル群,教員用資料

【SI2011・RTミドルウェアコンテスト2011関連情報】

  • 発表スライド,発表原稿,概要スライド

ライセンス(公開条件)

修正BSDライセンスに基づき配布致します
ただし,再利用したRTCについては,各モジュールのライセンス条項に帰属します

RTミドルウェアコンテスト2011

3つの奨励賞を受賞させて頂きました
誠にありがとうございました

  • RTコンポーネント再利用賞 【提供:千葉工業大学 平井成興様】
  • 初心者にやさしいRTCで賞 【提供:菅佑樹様】
  • ヴイストン賞 【提供:ヴイストン株式会社様】

謝辞

本RTミドルウェア学習環境は,独立行政法人新エネルギー・産業技術総合開発機構「次世代ロボット知能化技術に関する研究開発の総合的展開」の支援を受けて実施されました.記して感謝の意を表します.

また,来訪者受付システムの再利用にあたり,富士ソフト株式会社,独立行政法人産業技術総合研究所,東北大学様,RTC再利用センターの皆様に多大なるご助言を承りました.本学習環境の開発にあたり,ysuga様のWebサイトを参考にさせて頂きました.本学習環境で用いる3輪移動ロボットの開発には,本学の先輩諸氏にご協力を頂きました.心から感謝致します.

連絡先

E-Mail:openrtm@design.mech.saitama-u.ac.jp

埼玉大学 設計工学研究室
〒338-8570
埼玉県さいたま市桜区下大久保255
URL:埼玉大学設計工学研究室

OS:  Linux
言語:  C++
OpenRTM ver.:  1.0
4
Your rating: None Average: 4 (2 votes)

初心者向けシステム開発支援用RTC



問合先(メールアドレス): 
arai1352@gmail.com

概要

  • 各RTコンポーネントのデータポートから出力されるデータをグラフ化するRTコンポーネント(OpenRTM-Osiloscope)
  • OpenRTM-Osiloscopeの使い方を確認するためのRTコンポーネント(OpenRTM-Osillator)

特徴

データポートから出力されるデータをまとめてグラフにするRTコンポーネントです.複雑な設定がいらないため手軽に使用することができます.RTミドルウェアを触り始めた初学者を主な対象としています.計測したデータはcsv形式で出力可能です.
このRTコンポーネントの使用例を以下に示します.

  • モータのゲイン調整をおこなう場合
  • センサの感度調整をおこなう場合

仕様

  • 言語: Java
  • OS: Windows 7, windowsXP

データ型

現在サポートしているデータ型は以下のとおりです.

  • RTC::TimedLong
  • RTC::TimedShort
  • RTC::TimedDouble
  • RTC::TimedFloat

グラフの種類

横軸が時間軸(秒),縦軸がデータ値となっています. 最大表示可能なデータ数を10に制限しています.

注意事項

OpenRTM-Osiloscopeの動作が重い場合は,描画のフレームレートを下げて下さい.

今後のアップデート予定

  • サポートするデータ型の追加(配列型など)
  • グラフの種類の追加
  • 他のOSのサポート
  • OpenRTM-Osiloscopeの動作軽量化

ソースコード

ソースコードはgithubからダウンロード可能です。

OS:  Windows
言語:  Java
OpenRTM ver.:  1.0
4
Your rating: None Average: 4 (3 votes)

RTMの教育への活用



問合先(メールアドレス): 
niimi@cit.sangitan.ac.jp

2011年8月29日~9月2日に産業技術総合研究所において,RTミドルウエアサマーキャンプ2011が開催された.

参加の目的は,RTMの基礎的な技術を習得すると共に,教育へ活用するための手法について調査・研究を行うためである.5日間のハードな研修であったが,楽しく有意義なものであった.そのときの成果を踏まえて,RTMを教育へ活用する意義,方法,教育を目的としたRTコンポーネントについて報告を行う.

OpenRTM ver.:  1.1
3
Your rating: None Average: 3 (1 vote)

RoISフレームワークとRTコンポーネントの接続アダプタの開発



問合先(メールアドレス): 
miki@atr.jp

概要

OMG において標準化が進められているロボットサービスアプリケーションとHRI(Human Robot Interaction)機能コンポーネント間の共通インタフェース(メッセージ交換)の枠組みである Robotic Interaction Service (RoIS) Framework に基づくメッセージ交換機能を実現するミドルウェア、RTコンポーネントをRoIS FrameworkにおけるHRI機能コンポーネントとして利用するための接続アダプタ、接続アダプタを用いたサンプルプログラムを提供する。

rois.png

特徴

  • サービスアプリ層とHRI機能層を分離
  • 複数のサービスアプリーHRI機能間の接続、メッセージ交換を管理
  • サービスアプリ、HRI機能ともに随時追加が可能
  • サービスアプリ側接続アダプタはC++言語に対応
  • HRI機能側接続アダプタはC++, JAVA言語に対応
  • サービスアプリ側からHRI機能の動作確認を行うためのインタフェースマニュアル操作ツールも提供

仕様

  • 言語: C++, JAVA
  • OS: Windows XP
  • C++開発環境: Visual Studio 2005
  • JAVA開発環境: JDK1.6.0_20, Eclipse 3.4

ライブラリ

  • libRoISApp: サービスアプリ側RoIS接続アダプタライブラリ(C++)
  • libRoISComp: コンポーネント側RoIS接続アダプタライブラリ(C++)
  • libRoIS: コンポーネント側RoIS接続アダプタライブラリ(JAVA)

ツール

  • RoIS_HRI: HRIエンジン(サービスアプリ‐コンポーネント間のメッセージ管理)
  • RoIS_APP: サービスアプリ側インタフェースのマニュアル操作ツール

コンポーネント

  • SoundDetection4RoIS: 音検出RTC(C++サンプルHRIコンポーネント)
  • Reaction4RoIS: 応答動作RTC(JAVAサンプルHRIコンポーネント)

サービスアプリ

  • sample: 音検出、応答動作RTCを使ったサンプルシナリオ

ソースファイル

使い方やソースファイルなどは Google Code にて公開しています。

詳しくは ホームページ をご覧ください。

ライセンス

本プログラムは、MITライセンスに基づいてオープンソース形式として公開しており、著作権は、株式会社国際電気通信基礎技術研究所(ATR)に帰属します。

OS:  Windows
言語:  C++ ,  Java
OpenRTM ver.:  1.0
3
Your rating: None Average: 3 (1 vote)

インタラクションのための指差し位置推定コンポーネント



問合先(メールアドレス): 
koizumi@ais.ics.ritsumei.ac.jp

概要

近年,ロボット技術や情報技術の発展により,ロボットは産業分野だけにとどまらず,私たちの生活に密に係わる予想される.今までロボットの操作は特別な訓練を受けた人が主であったが,今後社会においてより多くの人々がロボットの操作を行う可能性があるため,今後のロボットには直感的かつ容易な操作方法が望まれる.そこで,人とロボットとのインタラクティブな意思疎通により操作を容易にする研究を行っている.インタラクティブな意思疎通の方法の1つとして指差しに着目し,直感的に物体の位置情報やロボットの移動経路などの入力を行うためのコンポーネントを開発した.

特徴

  • データポートの型に共通カメラインタフェースを採用
  • ステレオカメラ(Bumblebee 2)や深度カメラ(Kinect)に対応
  • 指差し状態を認識し,誤動作を防ぐ

注意事項

下記ライブラリを使用しています.

  • OpenCV2.3.0
  • Microsoft Kinect for Windows SDK Beta2 (Kinectコンポーネント)
  • Flycapture v1.8.3 (Bumblebeeコンポーネント)
  • Triclops v3.3 (Bumblebeeコンポーネント)

ライセンス

修正BSDライセンスを適用しています。

ソースコード・マニュアル

連絡先

立命館大学 理工学研究科 李研究室
〒525-8577
滋賀県草津市野路東1丁目1-1
URL: http://www.ais.ics.ritsumei.ac.jp

OS:  Windows
言語:  C++
OpenRTM ver.:  1.0
0
Your rating: None

音声認識による物体認識システムの開発



問合先(メールアドレス): 
iwane@arai-lab.sys.es.osaka-u.ac.jp

随時更新していきます.(Windowsに対応しました.)

概要

近年サービスロボットが発展してきており,サービスロボットが人間の日常環境で動作するためには人間とロボットのインタラクション方法は重要な課題である.この課題に対して,本システムでは,直接的なインタラクションとしての音声認識技術と,サービスロボットに必要な能力の1つの物体認識を組み合わせたシステムを構築した.本システムは,公開されているRTコンポーネントをベースに構築しており,音声認識コンポーネントの群のOpenHRI,さらにアピアランスベース物体認識コンポーネントや,共通カメラインタフェースに基づくカメラコンポーネントなどから構成されており,幅広いロボットシステムへの応用可能なシステムとなっている.

特徴

  • 音声認識コンポーネントとしてOpenHRIのコンポーネント群の利用
  • 共通カメラインターフェイス(参考サイト)に基づいた認識系コンポーネント
  • 認識のアルゴリズムとして,SIFT特徴量やテンプレートマッチングを用意

コンポーネント群

  • RecognitionManager 音声認識の結果から,物体認識のモデルを指定
  • ObjectSensor SIFT特徴量を用いた物体位置姿勢推定
  • CameraCapture USBカメラコンポーネント
  • Viewer 画像表示
  • TemplateMatching テンプレートマッチング
  • PulseAudioInput 音声入力
  • PulseAudioOutput 音声出力
  • JuliusRTC 音声認識
  • SEAT 対話コンポーネント
  • OpenJTalkRTC 音声合成 

動作環境

  • 言語: C++, python
  • OS: Ubuntu10.04, Windows7

依存パッケージ

  • OpenCV2.3
  • CUDA4.0 (ObjectSensor使用時)
  • rtshell(スクリプトファイル使用時)

システム概要

TemplateMatchingとObjectSensorを入れ替えるだけで,簡単に認識のアルゴリズムの変更が可能

ソースコード

マニュアル

詳しくはこちらのWikiを参照 

OS:  Windows ,  Linux
言語:  C++
OpenRTM ver.:  1.0
0
Your rating: None

ポータブルコンポーネントマネージャの実装



問合先(メールアドレス): 
yosuke.matsusaka@aist.go.jp

概要

本研究では移植性の高いコンポーネントを実現する手段として、LLVMの中間コードを用いたコンポーネントマネージャ(ポータブルコンポーネントマネージャ)の実装を行う。LLVMはよく知られたJava仮想マシン(JVM)とは異なり、より機械語に近い中間コードを用いるコンパイラ技術である。ポータブルコンポーネントマネージャは、C++を用いたコンポーネントのソースコードからLLVMの中間コードを生成し、実行時に中間コードを各プロセッサに適した機械語に変換することで従来と変わらないコンポーネントの実行速度を確保しつつ高い移植性を実現することができる。Linux(x86), Linux(ARM), Windowsの各アーキテクチャで同一の中間コードを動作させる例を示すと共に、リアルタイム性に関する初期の分析結果を示す。

OS:  Windows ,  Linux
言語:  C++
OpenRTM ver.:  1.0 ,  1.1
0
Your rating: None

再利用可能なRTミドルウエアコンポーネントを利用した異種ロボット間での相互位置推定手法



問合先(メールアドレス): 
j-taka@is.naist.jp

概要

  • LIDARやカメラで検出された人をランドマークとして異種ロボット間の相互位置を推定するコンポーネント

特徴

  • 移動ロボットで通常使われるLIDAR・カメラのどちらにも対応 (ただし少なくとも1台はLIDARでなければならない)
  • 一般的な自己位置推定コンポーネントとの接続が比較的容易
  • ネットワークを介した通信は自己位置推定・人検出および相互位置推定結果のみまで削減可能

仕様

  • 言語: C++
  • OS:Linux(Ubuntu10.04 LTS)

コンポーネント群

  • センサデータ取得コンポーネント
    • CameraCapture1394:IEEE1394カメラのデータを取得
    • LRFCapture_SICK:SICKの計測データを取得
    • LRFCapture_URG:北陽電機社製URGシリーズの計測データを取得
  • 自己位置推定コンポーネント
    • MonteCarloLocalizationLRF:LIDARのデータに対しモンテカルロ位置推定を利用した自己位置推定
    • CeilingNavigation:天井カメラに対し天井地図を利用した自己位置推定
  • 人検出コンポーネント
    • HumanDetectHOG:カメラ画像に対しHOG特徴を利用した人検出
    • HumanDetectLM:LIDARのデータに対する人検出
  • 相互位置推定コンポーネント
    • RobotPoseOptimizer:相互位置推定

ソースコード

OS:  Linux
言語:  C++
OpenRTM ver.:  1.0
0
Your rating: None

RTS研究及び開発の独立・再利用化へのサポートツール



問合先(メールアドレス): 
shinsuke.yonenaga.3q@stu.hosei.ac.jp

概要

RT-Middlewareによるコンポーネント指向ロボット開発により、ロボットモデル、低レベルのコンポーネント、高レベルのコントローラコンポーネントなど、以前より明確にロボット開発の役割を分担することが可能になった。この分担されたコンポーネント指向による開発作業において重要なのは、自分が集中すべき、得意な役割以外は、気にすること無く研究・開発が可能な点である。本ツールは、モデルの骨組みや抽象動作パターン、クラウドなどの概念を利用することでロボットシステムの分担された各工程をより独立・再利用化し、それぞれの研究・開発を促進するアプローチ方法、及びそれらを機能的、視覚的にサポートするツールを提供する。

特徴

以下のアプローチを補助するツールを提供します。

  • 『ロボットモデルの』『モデルの動作』『モデルに搭載するコントローラ』の研究・開発分野を独立化します。
  • 独立化することによって、研究・開発者は得意な分野だけに集中することができます。
  • ロボットモデルに『継承』の概念を取り入れることで、各分野の再利用性を向上させます。
  • 自分の持っていない情報はクラウド上から取得することが可能です。 また、従来の開発手法に情報を付加することで実現しているため、本ラプローチで開発したモデルやコントローラは従来の開発アプローチでも利用することが可能です。

仕様

  • 対応OS:Windows
  • 対応言語:Java
    ※モデルのコントローラ開発にJava言語を使用します。
    ※また、ツール内でC++、Java実装のRTCを使用しているため、両方のOpenRTM-aistが必要となります。
    対応OSや言語は今後追加していく予定です。

ホームページ

こちらからダウンロードが可能です。 https://sites.google.com/site/kokaiopensdt/

OS:  Windows
言語:  C++ ,  Java
OpenRTM ver.:  1.0
0
Your rating: None