もうバージョン1.0RELEASEからはインストールで問題になることはありません.
環境構築の概要
このページではOpenRTM-aistのヴァージョン1.0RELEASE,C++バージョンについて解説します.
本ページでは入門者向け内容ですので,Windowsバージョン,C++版について解説します.
1. パッケージのダウンロード
パッケージをここからダウンロードしていきます.Visual Studio 2008版を使います.2005でなければ動かないコードはわずかです.無償のExpress Editionでも簡単にGUIを追加設計できますし,いまさらVC2005で開発する必要性は薄いと思っています.
1.1 インストールするモジュールのダウンロード(すべてVisual Studio 2008版)
- JDK6
- Python 2.6.4
- PyYAML 3.09
- (OpenCV) (ver. 1.0)
- OpenRTM-aist (C++バージョン1.0) *omniORBが含まれるようになりました.
!!注意点!!
Visual Studio 2008 用と書いてあるリンクからダウンロードしてください.ひとつでもVC2005用を使っていると動きません.ファイル名にvc9という文字が入っていれば大丈夫です.
1.2 GUIツールのダウンロード
つぎにGUIツールです.System Editorが上記のRTミドルウエアに含まれるようになりましたが,RTC開発を行うにはRTC Builderが必要不可欠ですので,下記のURLからダウンロードします.
GUIツールはこのリンクからダウンロードしてください.
Eclipse全部入り
同様に公式サイトからEclipse全部入りをインストールし,展開しておきます.
サイトトップからダウンロードへ.
ツールのダウンロードサイトへ入ります.
Eclipse for Windowsをダウンロードし,展開します.
Eclipseは特にインストールせずに,eclipse.exeを実行すればよいので,Cドライブに直接コピーして,eclipse.exeへのショートカットをデスクトップ等に造っておくとよいでしょう.
Javaの実行環境も必要です.JRE6以降ですが,Java開発の可能性がある人はJDK6を入れるといいと思います.こちらの方がオススメ.
- JDK6
1.3 開発ツールのダウンロード
最後にC++の開発環境です.ここからダウンロードしてください.
- VisualStudio (2008 C++ Express Edition)
2. インストール手順と注意点
2.1. Python, PyYAML, OpenCV
産総研のページにあるパッケージでインストールする場合は,Setup.msiを実行するだけです.この辺の順序は関係ないです(PyYAMLを入れるまえに Pythonを入れたほうが良いと思います).
特に促されないのですが,この3つ(2つでもOK)のパッケージが全部入った時点で,一度再起動するほうがいいです.再起動しないと環境変数がちゃんと設定されないようです.
2.2. OpenRTM-aist
つぎに,OpenRTM-aistをインストールします.これもSetupを実行するだけです.
やはり再起動するほうが良いと思います.
2.3. Eclipseのツール類
ダウンロードしたパッケージを展開すると,eclipseというフォルダが出来て,中にeclipse.exe本体があります.これを「フォルダごと」好きな場所に移動するだけです.
僕はCドライブの直下に入れ,ショートカットをスタートメニューに入れています.これで便利に使えます.
*注意 ツール群を使うためには,さらにJavaの実行環境が必要になります.RTミドルウエアのツール群は,JREのバージョン6以降に対応していますので,Sunのページからダウンロードが必要です.
RTM Toolsデイリービルトの入れ替え
これで上手く動けばいいのですが,どうやら最新のRTC Builderに変更した方が便利です.
デイリービルドのページ
のリンクをクリックして,最新のRTC BuilderとRT System Editorをダウンロードしましょう.
ファイル名のrtmtools-r***-+++++.zipの***の数字が大きいものほど新しいものです.
ZIPファイルを展開して,eclipseのpluginフォルダに中身のファイルを全部上書きコピーすればOKです.
2.4. Visual Studio 2008
普通にインストールします.無料のExpress Editionを使って開発することが出来ます.ダウンロードしたファイルはネットからダウンロードしながらインストールするものですのでお気をつけを.
3. 動作確認
動作確認を行います.
3.1 ネームサーバー起動
ネームサーバーを起動します.スタートメニュー→「OpenRTM-aist」→「C++」→「tools」→「Start Naming Service」を起動.
ショートカットをスタートメニューに追加しておくと便利ですよ.
3.2 Eclipse起動
Eclipse起動します.メニュー→パースペクティブ→RT System Editorで準備.
ネームサーバーの追加.左側のネームサービスビューのコンセントのアイコンのボタンをクリック.localhostでネームサービスビューに表示される.
3.3 サンプルRTC起動
スタートメニュー→OpenRTM-aist→C++→example→ConsoleInComp.exeおよび,ConsoleOutComp.exeを起動.
図のようにネームサーバー上にRTCが表示されます.
3.4 RT System EditorでRTCをつなぐ!
Eclipseのメニュー→ファイル→Open New System EditorでSystem Editorを起動.
左側のネームサービスビューから,ConsoleInCompとConsoleOutCompを真ん中上段のSystem Diagram上にドラッグ&ドロップする.
凸があるのがConsoleInComp.凹があるのがConsoleOutCompです.凸が出力ポートで,凹が入力ポートを表しています.この凸と凹をつなげるわけですね.凸と凹をドラッグ&ドロップしてつなぎます.

つなぐとすぐにダイアログが出てきます.これは繋がり(コネクション)自体もオブジェクトですので,そのタイプなどを設定する必要があるからです.
ここでは必ず,「Data Flow Type」を「push」とします.
古いOpenRTM-aistでは,push型の接続しかサポートされていませんでしたので,基本的にpushを選択します.デフォルトでpullが表示されるので,ここで間違いがち.
最後にSystem Diagramがアクティブになっている状態で,ツールバーにある再生ボタン(緑の三角)をクリックします.これはAll
Activateボタンで,全部のRTCがアクティブ化されます.
3.5 ConsoleInから数値を送信.
ConsoleInCompのDOS窓を選択し,数値をキーボードで入力.Enterを押す.
数値がRTCの凸(出力ポート)から送信され,ConsoleOutCompに送られます.ConsoleOutCompのDOS窓を確認すると,送信された数値が.やったぜ!
4. 用語の解説
OmniORB
OmniORBはCORBAという枠組みを使うためのブローカーというソフトウェア群です.CORBAとはRTミドルウェアと同じく,分散的コンピューティングを行うための基本ソフトです.OpenRTM-aistでは,他のCORBAミドルウェアにも対応していますが,産総研のサイトからダウンロードでき,とくにコンフィグが必要になりませんから,OmniORBを使ってもよいでしょう.
Python
Python(パイソン)はウェブ系のプログラム開発に使われるスクリプト言語で,オブジェクト指向のプログラムが開発が可能です.OpenRTM-aistのインストール時や開発時にいくつかのスクリプトをPythonで処理しています.このサイトで解説するレベルであれば,Python自体を覚える必要はありません.
PyYAML
PythonでYAMLを扱えるライブラリです.YAMLとは,XMLに似た,データを構造化して記述する方法です.
OpenCV
画像処理のための基本ソフトウェアです.OpenRTM-aistの本体には関係ありませんが,ExampleとしてOpenRTM-aistのパッケージに含まれているプログラムが利用しています.インストールしておいてもよいでしょう.
OpenRTM-aist
RTミドルウェアの本体です.
Eclipse(RTSystem Editor, RTCBuilder)
Eclipseは,IBMが中心となって開発した総合開発環境(IDE)です.
RTSystemEditorは,RTミドルウェア上のコンポーネント群の接続,およびコンフィグレーションを行うためのGUIソフトです.
RTCBuilderは,RTコンポーネントを開発するときに,骨格となるプログラムコードを自動生成するためのツールです.
VisualStudio2008 C++ Express Edtion (VC2008EE)
開発環境です.もちろん正規バージョンのVisual Studio 2008でも開発が可能です.










