RTミドルウェア/OpenRTM-aistについて


RTミドルウエアとは

単体のロボットだけでなく、利用可能な様々ロボット機能要素を指してRT (Robot Technology/Robotic Technology) と呼びます。 RTミドルウエアとは、こうした様々な機能要素をモジュール化しソフトウエア的に統合するためのプラットフォームです。 RTミドルウエアの目的は、仕様をオープンにし様々な実装同士が相互接続できるようなオープンアーキテクチャのプラットフォームを確立することです。 従って、RTミドルウエアはこうしたプラットフォーム全体を指す言葉です。

RTコンポーネントとは

RTミドルウエアにおいては、ロボット機能要素はRTコンポーネントと呼ばれるソフトウエアコンポーネントとしてモジュール化され、ロボットはRTミドルウエア上でRTコンポーネント組み合わせることで実現されます。 RTコンポーネントは、他のコンポーネントと通信・相互作用を行うデータポート・サービスポートを備えており、これらのインターフェース仕様を共通化することで、様々なコンポーネント同士を容易に結合することができます。 また、RTコンポーネントは共通の内部状態及び状態遷移を持ち、上位のアプリケーションプログラムは、多くのコンポーネントを統一的に扱うことができるようになっているます。 さらに、内部パラメータ設定を外部から操作できる標準インターフェースを持つため、再コンパイルすることなく様々な用途に再利用することができます。

OpenRTM-aistとは

OpenRTM-aistは産総研が実装・配布しているRTミドルウエアの実装の一つです。 RTコンポーネントを作成するためのRTコンポーネントフレームワーク、RTコンポーネントのライフサイクルの管理・運用を行うRTミドルウエア、さらにコンポーネントの雛形コードを作成するためのRTCBuilder、RTコンポーネントを操作・接続するためのGUIツールRTSystemEditorから構成されています。 現在産総研からは C++、Python 及び Java に対する実装が提供されています。

対応言語は?

OpenRTM-aistは C++、Python 及び Java 言語でRTコンポーネントを開発するためのフレームワークを提供しています。

対応OSは?

OpenRTM-aistは現在FreeBSD、Linux 及び Windows で動作確認をしています。

ライセンスは?

OpenRTM-aistは LGPL(GNU Lesser General Public License) および産総研と個別に契約するライセンスのデュアルライセンス方式で提供されています。 個別ライセンスとは、OpenRTM-aistのソースコードを改変し商用利用したい場合、ソースをクローズにしたまま配布可能にするためのライセンスです。 特に、組込み等の用途では通常ソースの改変が必要とされますので、企業等での利用を促進するためにこうしたライセンスが用意されています。

作成したコンポーネントのライセンスは?

コンポーネントは動的リンク可能なライブラリ(UNIXではShared Object, WindowsではDLL(Dynamic Link Library)と呼ばれる)として作成し配布することができますので、OpenRTM-aistのコアライブラリと動的リンクし利用されるコンポーネントはLGPLライセンスのもとでは特に制約を受けません。 作成者が個別にライセンスを設定することができます。 ただし、コンポーネントの再利用を促進するという我々の趣旨に賛同いただける方は、ソースコードレベルで作成したコンポーネントをオープンにしていただければ幸いです。

最新バージョン

初めての方へ

Windows msi(インストーラ) パッケージ (サンプルの実行ができます。)

C++,Python,Java,
Toolsを含む
1.1.2-RELEASE

RTコンポーネントを開発するためには開発環境のインストールが必要です。詳細はダウンロードページ

統計

Webサイト統計
ユーザ数:1604
プロジェクト統計
RTコンポーネント286
RTミドルウエア21
ツール20
文書・仕様書1

OpenHRP3

動力学シミュレータ

Choreonoid

モーションエディタ/シミュレータ

OpenHRI

対話制御コンポーネント群

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク

VirCA

遠隔空間同士を接続し、実験を行うことが可能な仮想空間プラットホーム