Installation of OpenRTM-aist Python for Windows
Windows OS上にOpenRTM-aist Python版をインストールする方法を解説します。
▶ 更新履歴
-
20/06/2014 OpenRTM-aist C++版との共存のために、環境変数に関して追記しました。
-
15/08/2013 ブラウザによってレイアウトが崩れる問題に対処しました。
2. ソフトウェアのインストール
ダウンロードしたPythonとOpenRTM-aist Python版のインストーラ、Java SE Development Kitインストールを行います。
作業はインストーラーに従い、クリックしていけばインストールを完了できます。
インストール作業は必ず最初にPythonをインストールしてから、OpenRTM-aistをインストールしてください。
Pythonのインストール後に、環境変数にPythonのパスを登録します。
デフォルトでは以下のようになります。
C:\Python26
環境変数の設定後に、コマンドプロンプト上で以下のコマンドを実行してください。
Pythonのインタラクティブシェルが起動すれば、正しく設定できています。
1. インストールに必要なソフトウェアの準備
インストールに必要なソフトウェアを準備します。皆さんの環境に合わせたソフトウェアをダウンロードして下さい。
以降のインストール作業ではOSの違いはあまりなく、インストーラに従ってクリックするだけで簡単にインストールできます。
Vistaは未検証ですが、同様の方法でインストールできるかもしれません。
■Windows XP / 7 / 8 64bitの場合
・Python 2.6.6 32bit
Python 2.6.6 32bitをデフォルトで考えますが、2.4.4以降で2系列の32bit版Pythonなら動作すると思います。
*インストーラーを利用したインストールではPython 2.7系列ではインストールできません。
OpenRTM-aist Python版は32bit版でしか動作しないので、OSが64bitであっても32bit版をインストールしてください。
Windows x86 MSI Installer (2.6.6)
・OpenRTM-aist Python
OpenRTM-aist-Python-1.1.0-RC1.msi
・Java SE Development Kit 7 / 6
OpenRTM-aist Java版を使用する場合はJava SE Development Kit 6を選択して下さい。
Java SE Development Kitは32bit版をインストールしないとRT SystemEditorが動作しませんが、
既にC++版を入れている方は64bit版でも構いません。
RT SystemEditorはC++版インストール時に付属していたものを使用してください。
jdk-7u21-windows-i586.exe / jdk-6u45-windows-i586.exe
■Windows XP / 7 / 8 32bitの場合
・Python 2.6.6 32bit
Python 2.6.6 32bitをデフォルトで考えますが、2.4.4以降で2系列の32bit版Pythonなら動作すると思います。
*インストーラーを利用したインストールではPython 2.7系列ではインストールできません。
Windows x86 MSI Installer (2.6.6)
・OpenRTM-aist Python
OpenRTM-aist-Python-1.1.0-RC1.msi
・Java SE Development Kit 7 / 6
OpenRTM-aist Java版を使用する場合はJava SE Development Kit 6を選択して下さい。
jdk-7u21-windows-i586.exe / jdk-6u45-windows-i586.exe
Java SE Development Kitをダウンロードするには下図のように、ラジオボタンにチェックを入れてライセンスに同意する必要があります。

3. 動作確認
インストールしたOpenRTM-aistの動作確認を行います。
3.1 ソフトウェアとツールの確認
インストール時にデフォルトでインストールしていれば各ソフトウェアやツールは、下記アドレスにあるはずです。
見つからない場合は、検索して探してみて下さい。
-
rtm-naming.py
■Windows 32bitの場合
C:\Program Files (x86)\OpenRTM-aist\1.1\bin
■Windows 64bitの場合
C:\Program Files (x86)\OpenRTM-aist\1.1\bin
-
ConsoleIn.py
■Windows 32bitの場合
C:\Program Files\OpenRTM-aist\1.1\examples\Python\SimpleIO
■Windows 64bitの場合
C:\Program Files (x86)\OpenRTM-aist\1.1\examples\Python\SimpleIO
-
ConsoleOut.py
■Windows 32bitの場合
C:\Program Files\OpenRTM-aist\1.1\examples\Python\SimpleIO
■Windows 64bitの場合
C:\Program Files (x86)\OpenRTM-aist\1.1\examples\Python\SimpleIO
-
RT System Editor
■Windows 32bitの場合
C:\Program Files\OpenRTM-aist\1.1\OpenRTP\1.1
■Windows 64bitの場合
C:\Program Files (x86)\OpenRTM-aist\1.1\OpenRTP\1.1

3.3 ConsoleInの起動
ConsoleIn.pyをダブルクリックしてConsoleInを起動します。
下図のようにターミナルが立ち上がるのを確認します。
3.5 RT SystemEditorの起動
RTSystemEditorRCP.exeをダブルクリックしてRT SystemEditorを起動します。
Windows Vista / 7以降のOSでは管理者権限で起動する必要があります。
「プロパティ」→「交互性」→「特権レベル」 「管理者としてこのプログラムを実行する」にチェックを入れて起動して下さい。
下図のようにeclipseベースのエディタが起動します。
インストール時にJava SE Development Kitで64bit版を選択した場合は、このエディタは起動できません。
OpenRTM-aist C++ 64bit版に付属するエディタか、OpenRTPをダウンロードして使用してください。
3.4 ConsoleOutの起動
ConsoleOut.pyをダブルクリックしてConsoleOutを起動します。
下図のようにターミナルが立ち上がるのを確認します。



追加された「localhost:2809」を展開します。すると、円筒形のアイコンが現れるのでそれも展開します。
その中に、先ほど起動したConsoleInとConsoleOutが登録されていることを確認します。


3.7 コンポーネントの接続
「New Open System Edior」ボタンを押して、新しいSystem Diagramを開きます。

3.8 コンポーネントのActive化
「All Acitvate」ボタンを押して、すべてのコンポーネントをアクティブ状態に遷移させます。



3.9 RTミドルウェアのHello World!
ConsoleInのターミナル上に「Please input number」と表示されています。
そこで数値(今回は1)を入力しています。するとConsoleInに入力された数値がConsoleOutに表示されていることがわかります。

4. おわりに
これでOpenRTM-aist Python版のインストールは終わりです。
インストールそのものは簡単だったと思います。
動作確認として、RTミドルウェアの「Hello World!」とも言うべき、ConsoleInとConsoleOutが構築するシステムを体験しました。
このシステムはConsoleInでキー入力された数値をConsoleOutのターミナルに上に表示しました。
このように、RTミドルウェアはお互いにデータをやり取りして、ひとつのシステムを構築します。
他のサンプルも動作させて遊んで見て下さい。
3.2 ネームサーバーの起動
rtm-naming.batをダブルクリックしてネームサーバーを起動します。
下図のように「Checkpointing completed.」と表示されるのを確認します。



3.6 ネームサーバーの追加
RT System Editor上にある「ネームサーバーの追加」ボタンを押します。
すると「ネームサーバへ接続」というダイアログが現れるので、「localhost:2809」と入力し、OKを押します。
Sytem Diagram上にコンポーネントをドロップします。するとコンポーネントを示す図が表示されます。
consoleInコンポーネントの凸の部分をドラッグするとラインが伸びるのが分かります。
このラインをConsoleOutコンポーネントの凹までドッラグしていき、
ドロップすると「Connector Profile」というダイアログが現れるのでOKを押します。


各コンポーネントのターミナル上に表示されたメッセージが変わっていることがわかります。
コンポーネントの状態が遷移し、メインの処理が開始されています。


しばらく数値を入力して遊んでみて下さい。
遊び終わったら、RT System Editor上のAll Deacitveボタンを押して下さい。
各コンポーネントがInactive状態に遷移します。
Inactive状態に遷移したら各コンポーネントのコンソール上で「Ctrl + c」を押して終了して下さい。
*ここでDeactive命令が受付られない場合は、ConsoleInに何か数値を入力して下さい。
これはキー入力待状態からConsoleInが抜けられないため発生する問題です。


chdir /
python
* OpenRTM-aist C++版を併用する場合は、Pythonの環境変数をOpenRTM関連の変数より後ろに登録する必要があります。
どれがRTM関連の変数かわからない場合は、一番後ろにPythonの環境変数を登録してください。
独自定義型とサービスに必要な、IDLファイルのコンパイルを正常に行うために必要な処置となります。