OpenRTM-aist(Java版)1.2系のインストール

ここではOpenRTM-aist(Java)のインストール方法を説明します。

Windowsへのインストール

OpenRTM-aistのインストール

MSIインストーラーによるOpenRTM-aistのインストール手順については下記のページに記載。
  • OpenRTM-aist1.2系のインストール(Windows、MSIインストーラー使用) より、.msiファイルをダウンロードしてください。ファイル名は、64ビット版なら"x86_64.msi"で、32bit版なら"64.msi"で終端された名前となります。ダウンロードした後は、拡張子.msiのファイルをダブルクリックすればインストールプログラムが起動されます。インストール途中で[標準]を選択するとこの.msiファイルが対応している全ての構成がインストールされます。一部の構成のみをインストールしたい場合は[カスタム]を選択してください。(一部の構成のみの検証は十分にはなされていないので、[標準]でインストールすることを推奨します。)

JDK8のインストール

OpenRTM-aist-Java-1.2.xの動作にはJDK8相当のJDK(JDK11では正常動作しません)が前もってインストールされている必要があります。JDK8の入手やインストールについては以下を参照してください。

JDKのインストール確認

コマンドプロンプトを開き、

 C:\>java -version
と入力します。インストールしたJavaのバージョンが表示されればインストールは完了です。例えば以下のように表示されます。
 openjdk version "1.8.0_232"
 OpenJDK Runtime Environment (build 1.8.0_232-b09)
 OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

インストーラーの作業内容

インストーラーは以下の作業を行います。
  • インストールディレクトリ(デフォルトはC:\Program Files)以下に各種ファイルをコピー
  • スタートメニュー以下にOpenRTM-aistフォルダーを作成し各種ショートカットを設定
  • 環境変数の設定
    • 64bit版MSIファイルの場合
       RTM_BASE=C:\Program Files\OpenRTM-aist\ RTM_IDL_DIR=C:\Program Files\OpenrRTM-aist\1.2.1\rtm\idl\ RTM_JAVA_ROOT=C:\Program Files\OpenRTM-aist\1.2.1\ RTM_ROOT=C:\Program Files\OpenRTM-aist\1.2.1\ RTM_VC_VERSION=vc14
       OMNI_ROOT=C:\Program Files\OpenRTM-aist\1.2.1\omniORB\4.2.1_%RTM_VC_VERSION%\ OpenCV_DIR=C:\Program Files\OpenRTM-aist\1.2.1\OpenCV3.4\ OpenRTM_DIR=C:\Program Files\OpenRTM-aist\1.2.1\cmake\
    • 32bit版MSIファイルの場合
       RTM_BASE=C:\Program Files (x86)\OpenRTM-aist\ RTM_IDL_DIR=C:\Program Files (x86)\OpenrRTM-aist\1.2.1\rtm\idl\ RTM_JAVA_ROOT=C:\Program Files (x86)\OpenRTM-aist\1.2.1\ RTM_ROOT=C:\Program Files (x86)\OpenRTM-aist\1.2.1\ RTM_VC_VERSION=vc14
       OMNI_ROOT=C:\Program Files\OpenRTM-aist\1.2.1\omniORB\4.2.3_%RTM_VC_VERSION%\ OpenCV_DIR=C:\Program Files\OpenRTM-aist\1.2.1\OpenCV3.4\ OpenRTM_DIR=C:\Program FilessOpenRTM-aist\1.2.1\cmake\
    • 64bit版MSIファイルの場合に追加されるパス
       C:\Program Files\OpenRTM-aist\1.2.1\bin\%RTM_VC_VERSION%\ C:\Program Files\OpenRTM-aist\1.2.1\omniORB\4.2.3_%RTM_VC_VERSION%\bin\x86_win32\ C:\Program Files\OpenRTM-aist\1.2.1\OpenCV3.4\x64\%RTM_VC_VERSION%\bin\
    • 32bit版MSIファイルの場合に追加されるパス
       C:\Program Files (x86)\OpenRTM-aist\1.2.1\bin\%RTM_VC_VERSION%\ C:\Program Files (x86)\OpenRTM-aist\1.2.1\omniORB\4.2.3_%RTM_VC_VERSION%\bin\x86_win32\ C:\Program Files (x86)\OpenRTM-aist\1.2.1\OpenCV3.4\x86\%RTM_VC_VERSION%\bin\

      インストールされるファイル

ファイルは以下のような構造でインストールされます。

 <install_dir>
   + OpenRTM-aist
      + 1.x.x: 旧バージョンのランタイム
      + 1.2.1
         + bin: dll、lib各種コマンド
         + cmake: OpenRTMConfig.cmake
         + coil: coilヘッダファイル
         + Components
            + C++
               + Examples: C++サンプルコンポーネント
               + OpenCV: OpenCVのC++サンプルコンポーネント
            + Java: Javaサンプルコンポーネント
            + Python: Pythonサンプルコンポーネント
         + etc: rtc.confサンプル
         + jar: jarファイル
         + jre: OpenJDK JRE
         + omniORB
         + OpenCV3.4
         + rtm: OpenRTM-aistヘッダファイル
            + ext: 拡張モジュール用ファイル 
            + idl: OpenRTM-aistIDLファイル
         + util
            + ExcelControlpy: PythonベースのMicrosoft Office用RTC
            + OpenRTP: RTCBuilderとRTSystemEditorツール
            + PowerPointControlpy: Microsoft Office PowerPoint用RTC
            + python_dist: pythonベースツール共通ライブラリ
            + RTCDT: PythonベースRTCの開発を支援するツール
            + rtc-template: RTCBuilderと似た機能を提供する古いツール
            + RTSystemEditor: RTSystem Editorのみのファイル
            + VCVerChanger: 使用しているVisual Studioのバージョンを指定するツール
            + WordContrlpy: PythonベースMicrosoft Office Word用RTC

Ubuntu/Debianへのインストール

ubuntu_logo2.png

Java版のOpenRTM-aistは、UbuntuやDebian GNU Linuxで利用可能なdebパッケージが提供されています。 対応しているディストリビューションのバージョンは、ダウンロードページで確認できます。 Ubuntu/Debian GNU Linuxへのサポートバージョンや対応の有無は、予告なしに変更されることがありますので、あらかじめご了承ください。

一括インストールスクリプト

openrtm.orgが提供するインストール・スクリプトpkg_install_ubuntu.shまたはpkg_install_debian.shを指定のURLからダウンロードし、root権限で実行します。このスクリプトでは必要なパッケージを順次apt-getを用いてインストールしていきます。

オプションを指定することで、目的に合わせたパッケージをインストールすることが可能です。

一括インストールスクリプトは、ダウンロードした後、ダウンロード先ディレクトリに移動し、

Ubuntuの場合は

 $ sudo sh pkg_install_ubuntu.sh -l java --yes
Debianの場合はsuでroot権限を得た後に

 # sh pkg_install_debian.sh -l java --yes
でインストールできます。

一括インストールスクリプトのダウンロードや詳しいインストール方法、指定可能なオプションの種類につきましては、「一括インストールスクリプト」のページをご確認ください。

OpenRTPのインストール

一般的なUbuntu/Debian環境での開発にはRTC BuilderやRTSystem Editorを使用しますが、その場合にはOpenRTPが必要です。一括インストールスクリプトを用いてOpenRTPをインストールしてください。Ubuntuではpkg_install_ubuntu.shが置いてあるディレクトリで

Ubuntuの場合は

 $ sudo sh ./pkg_install_ubuntu.sh -l openrtp --yes

Debianの場合はsuでroot権限を得た後に

 # sh pkg_install_debian.sh -l openrtp --yes

と入力するとOpenRTPをインストールできます。

JDK8のインストール

Java版OpenRTM-aistの使用にはJDK8相当のJava環境が必要です。(デフォルトの環境でJDK8がインストールされている場合もありますが、Ubuntu 18.04ではJDK11がインストールされているため、JDK8のインストールが必要です。) JDK8の入手やインストールについては以下を参照してください。

インストールの確認

インストールを確認します。

 $ dpkg -l 'openrt*'
 要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持
 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留
 |/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常)
 ||/ 名前                     バージョン        アーキテクチャ    説明
 +++-========================-=================-=================-======================================================
 ii  openrtm-aist:amd64       1.2.1-0           amd64             OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm-aist-dev:amd64   1.2.1-0           amd64             OpenRTM-aist headers for development
 ii  openrtm-aist-idl:amd64   1.2.1-0           amd64             OpenRTM-aist idls for development
 ii  openrtm-aist-java:amd64  1.2.1-0           amd64             OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm-aist-java-doc    1.2.1-0           all               Documentation for openrtm-aist-java
 ii  openrtm-aist-java-exampl 1.2.1-0           amd64             OpenRTM-aist-Java examples
 ii  openrtp:amd64            1.2.1-0           amd64             OpenRTP, Open RT Platform distributed by AIST

パッケージの詳細

各パッケージの内容は以下の通りです。

openrtm-aist

openrtm-aistにはランタイムライブラリとコマンド群が含まれています。

  • コマンド
     /usr/bin/rtcd
     /usr/bin/rtcprof
     /usr/bin/rtm-config
     /usr/bin/rtm-naming
  • ライセンスなど
     /usr/share/doc/openrtm-aist/changelog.gz
     /usr/share/doc/openrtm-aist/README.Debian
     /usr/share/doc/openrtm-aist/README
     /usr/share/doc/openrtm-aist/README.jp
     /usr/share/doc/openrtm-aist/copyright
     /usr/share/doc/openrtm-aist/changelog.Debian.gz
  • 設定ファイルサンプル
     /usr/etc/rtc.conf.sample
  • ライブラリ
    • 32bit
       /usr/lib/i386-linux-gnu/libRTC-X.X.X.so
       /usr/lib/i386-linux-gnu/libRTC.a
       /usr/lib/i386-linux-gnu/libRTC.la
       /usr/lib/i386-linux-gnu/libcoil-X.X.X.so
       /usr/lib/i386-linux-gnu/libcoil.a
       /usr/lib/i386-linux-gnu/librtmCamera.a
       /usr/lib/i386-linux-gnu/librtmCamera.la
       /usr/lib/i386-linux-gnu/librtmCamera.so.X.X.X
       /usr/lib/i386-linux-gnu/librtmManipulator.a
       /usr/lib/i386-linux-gnu/librtmManipulator.la
       /usr/lib/i386-linux-gnu/librtmManipulator.so.X.X.X
       /usr/lib/i386-linux-gnu/openrtm-1.2/ec/FileNameservice.la
       /usr/lib/i386-linux-gnu/openrtm-1.2/ec/FileNameservice.so.X.X.X
       /usr/lib/i386-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.a
       /usr/lib/i386-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.la
       /usr/lib/i386-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.so.X.X.X
       /usr/lib/i386-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.a
       /usr/lib/i386-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.la
       /usr/lib/i386-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.so.X.X.X
       /usr/lib/i386-linux-gnu/openrtm-1.2/ssl/SSLTransport.la
       /usr/lib/i386-linux-gnu/openrtm-1.2/ssl/SSLTransport.so.X.X.X
       /usr/lib/i386-linux-gnu/pigconfig/openrtm-aist.pc
    • 64bit
       /usr/lib/x86_64-linux-gnu/libRTC-X.X.X.so
       /usr/lib/x86_64-linux-gnu/libRTC.a
       /usr/lib/x86_64-linux-gnu/libRTC.la
       /usr/lib/x86_64-linux-gnu/libcoil-X.X.X.so
       /usr/lib/x86_64-linux-gnu/libcoil.a
       /usr/lib/x86_64-linux-gnu/librtmCamera.a
       /usr/lib/x86_64-linux-gnu/librtmCamera.la
       /usr/lib/x86_64-linux-gnu/librtmCamera.so.X.X.X
       /usr/lib/x86_64-linux-gnu/librtmManipulator.a
       /usr/lib/x86_64-linux-gnu/librtmManipulator.la
       /usr/lib/x86_64-linux-gnu/librtmManipulator.so.X.X.X
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/FileNameservice.la
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/FileNameservice.so.X.X.X
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.a
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.la
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.so.X.X.X
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.a
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.la
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.so.X.X.X
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ssl/SSLTransport.la
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/ssl/SSLTransport.so.X.X.X
       /usr/lib/x86_64-linux-gnu/pigconfig/openrtm-aist.pc

openrtm-aist-dev

openrtm-aist-devには、開発に必要なコマンド群とヘッダが含まれています。

  • コマンド
     /usr/bin/coil-config
     /usr/bin/rtc-template
     /usr/bin/rtm-skelwrapper
  • ライセンスなど
     /usr/share/doc/openrtm-aist-dev/changelog.Debian.gz
     /usr/share/doc/openrtm-aist-dev/changelog.gz
     /usr/share/doc/openrtm-aist-dev/copyright
  • ヘッダなど
     /usr/include/coil-1.2/coil/Affinity.h
     /usr/include/coil-1.2/coil/Allocator.h
     中略
     /usr/include/coil-1.2/coil/stringutil.h
     /usr/include/openrtm-1.2/rtm/BufferBase.h
     /usr/include/openrtm-1.2/rtm/BufferStatus.h
     中略
     /usr/include/openrtm-1.2/rtm/config_rtc.h
     /usr/include/openrtm-1.2/rtm/ext/CameraCommonInterface.hh
     /usr/include/openrtm-1.2/rtm/ext/CameraCommonInterface.idl
     中略
     /usr/include/openrtm-1.2/rtm/ext/ManipulatorCommonInterface_MiddleStub.h
     /usr/include/openrtm-1.2/rtm/ext/ec/artlinux/ArtExecutionContext.h
     /usr/include/openrtm-1.2/rtm/ext/ec/artlinux/rtc.conf.sample
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredEC.h
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredEC.idl
     中略
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredECStub.h
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredEC.hh
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredEC.idl
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredECDynSK.cc
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredECSK.cc
     /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt
     /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt/RTPreemptEC.h
     /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt/rtc.conf.sample
     /usr/include/openrtm-1.2/rtm/ext/local_service/nameservice_file/FileNameservice.h
     /usr/include/openrtm-1.2/rtm/ext/logger/fluentbit_stream/FluentBit.h
     /usr/include/openrtm-1.2/rtm/ext/logger/fluentbit_stream/fluentbit.conf
     /usr/include/openrtm-1.2/rtm/ext/sdo/logger/Logger.hh
     /usr/include/openrtm-1.2/rtm/ext/sdo/logger/Logger.idl
     中略
     /usr/include/openrtm-1.2/rtm/ext/sdo/logger/LoggerStub.h
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserver.idl
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserverConsumer.h
     中略
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserverStub.h
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserver.hh
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserver.idl
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserverDynSK.cc
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserverSK.cc
     /usr/include/openrtm-1.2/rtm/idl/BasicDataType.hh
     /usr/include/openrtm-1.2/rtm/idl/BasicDataType.idl
     中略
     /usr/include/openrtm-1.2/rtm/idl/device_interfaces/Ranger.idl
     /usr/include/openrtm-1.2/rtm/version.h
     /usr/include/openrtm-1.2/rtm/version.txt
  • ライブラリ・その他
    • 32bit
       /usr/lib/i386-linux-gnu/openrtm-1.2/cmake/OpenRTMConfig.cmake
       /usr/lib/i386-linux-gnu/openrtm-1.2/py_helper/README_gen.py
       /usr/lib/i386-linux-gnu/openrtm-1.2/py_helpver/cxx_gen.py
       中略
       /usr/lib/i386-linux-gnu/openrtm-1.2/py_helpver/yat.py
       /usr/lib/i386-linux-gnu/pkgconfig/libcoil.pc
       
    • 64bit
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/cmake/OpenRTMConfig.cmake
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/py_helper/README_gen.py
       /usr/lib/x86-64-linux-gnu/openrtm-1.2/py_helpver/cxx_gen.py
       中略
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/py_helpver/yat.py
       /usr/lib/x86_64-linux-gnu/pkgconfig/libcoil.pc

openrtm-aist-idl

  • idlファイルなど
     /etc/profile.d/openrtm-aist-idl.sh
     /usr/include/openrtm-1.2/rtm/idl/BasicDataType.idl
     /usr/include/openrtm-1.2/rtm/idl/CameraCommonInterface.idl
     中略
     /usr/include/openrtm-1.2/rtm/idl/SharedMemory.idl
     /usr/share/openrtm-1.2/idl/BasicDataType.idl
     /usr/share/openrtm-1.2/idl/CameraCommonInterface.idl
     中略
     /usr/share/openrtm-1.2/idl/SharedMemory.idl
  • ライセンスなど
     /usr/share/doc/openrtm-aist-idl/changelog.Debian.gz
     /usr/share/doc/openrtm-aist-idl/changelog.gz
     /usr/share/doc/openrtm-aist-idl/copyright

openrtm-aist-java

  • コマンド
     /usr/bin/rtcd_java
     /usr/bin/rtcprof_java
  • 環境変数設定用スクリプト
     /etc/profile.d/openrtm-aist-java.sh
  • jarファイル
    • 64 bit
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/License.txt
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/LogicalTimeTriggeredEC.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/NameserviceFile.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/OpenRTM-aist-1.2.0.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/commons-cli-1.1.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/jna-4.2.2.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/jna-platform-4.2.2.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/rtcd.jar
       /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/rtcprof.jar
    • 32 bit
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/License.txt
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/jna-platform-4.2.2.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/rtcprof.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/rtcd.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/commons-cli-1.1.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/NameserviceFile.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/LogicalTimeTriggeredEC.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/jna-4.2.2.jar
       /usr/lib/i386-linux-gnu/openrtm-1.2/jar/OpenRTM-aist-1.2.1.jar

openrtm-aist-java-example

Java版サンプルRTC、Classファイル、ソースファイル、起動スクリプト

 /usr/share/openrtm-1.2/components/java/* 
 /usr/share/openrtm-1.2/components/java/RTMExamples/AutoTest/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/Composite/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/ConfigSample/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/ExtTrigger/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/control/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/model/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/view/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/MyService.idl
 /usr/share/openrtm-1.2/components/java/RTMExamples/SeqIO/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SeqIO/view/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SimpleIO/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SimpleService/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SinCosOut/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/Throughput/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/TopicTest/*

openrtm-aist-java-doc

openrtm-aist-java-doc には、日本語と英語のクラスリファレンスが含まれています。

 /usr/share/openrtm-1.2/doc/java/JavaDoc/OpenRTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/OpenRTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/_SDOPackage/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/_SDOPackage/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/Constants.html
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/buffer/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/buffer/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/executionContext/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/executionContext/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/log/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/publisher/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/publisher/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/clock/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/clock/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/Version.html
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/class-use
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/OpenRTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/OpenRTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/_SDOPackage/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/_SDOPackage/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/index-files/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/Constants.html
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/buffer/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/buffer/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/executionContext/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/executionContext/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/log/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/log/class-use/Logbuf.html
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/publisher/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/publisher/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/clock/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/clock/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/*

openrtp

openrtpでは大量のファイルがインストールされるため、ここではリストしません。必要に応じて

 $ dpkg -L openrtp
と入力して各自での確認をしてください。

Raspbianへののインストール

Java版のOpenRTM-aistは、Raspbianで利用可能なdebパッケージが提供されています。 対応しているディストリビューションのバージョンは、ダウンロードページで確認できます。 Raspbianへのサポートバージョンや対応の有無は、予告なしに変更されることがありますので、あらかじめご了承ください。

JDK8のインストール

Java版OpenRTM-aistの使用にはJDK8相当のJava環境が必要です。以下のリンクを参照にJDK8を入手してインストールしてください。

一括インストールスクリプト

openrtm.orgが提供するインストール・スクリプトpkg_install_raspbian.shを指定のURLからダウンロードし、root権限で実行します。このスクリプトでは必要なパッケージを順次apt-getを用いてインストールしていきます。

オプションを指定することで、目的に合わせたパッケージをインストールすることが可能です。

一括インストールスクリプトを用いると、ダウンロードした後、ダウンロード先ディレクトリに移動し、

 $ sudo sh pkg_install_raspbian.sh -l java --yes
でJava版OpenRTM-aistをインストールできます。

一括インストールスクリプトのダウンロードや詳しいインストール方法、指定可能なオプションの種類につきましては、「一括インストールスクリプト」のページをご確認ください。

rtshellのインストール

Raspbianの環境では現在OpenRTPの対応がありません。よってRaspianの環境では、ローカルでGUI(RTSystemEditor)を用いたRTCの制御ができません。RTCの制御を行うための方法としては、リモートで他の対応ホスト上でRTSystemEditorを起動してそこから制御を行うという方法と、ローカルでrtshellというツールを用いて制御を行うという方法があります。rtshellのインストールについては以下のリンクを参照してください。 rtshellのインストール方法

インストールの確認

インストールを確認します。

 $ dpkg -l 'openrt*'
 要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持
 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留
 |/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常)
 ||/ 名前                            バージョン   アーキテクチ 説明 
 +++-===============================-============-============-===============================================
 ii  openrtm-aist:armhf              1.2.1-0      armhf        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm-aist-dev:armhf          1.2.1-0      armhf        OpenRTM-aist headers for development
 ii  openrtm-aist-idl:armhf          1.2.1-0      armhf        OpenRTM-aist idls for development
 ii  openrtm-aist-java:armhf         1.2.1-0      armhf        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm-aist-java-doc           1.2.1-0      all          Documentation for openrtm-aist-java
 ii  openrtm-aist-java-example:armhf 1.2.1-0      armhf        OpenRTM-aist-Java examples
 ii  openrtm-aist-python             1.2.1-0      armhf        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm-aist-python-example     1.2.1-0      armhf        OpenRTM-aist-Python examples

 $ pip show rtshell-aist
 Name: rtshell-aist
 Version: 4.2.2
 Summary: Shell commands for managing RT Components and RT Systems.
 Home-page: http://github.com/gbiggs/rtshell
 Author: Geoffrey Biggs and contributors
 Author-email: geoffrey.biggs@aist.go.jp
 License: LGPL3
 Location: /usr/local/lib/python2.7/dist-packages
 Requires: rtsprofile-aist, rtctree-aist
 Required-by:

パッケージの詳細

各パッケージの内容は以下の通りです。

openrtm-aist

openrtm-aistにはランタイムライブラリとコマンド群が含まれています。

  • コマンド
     /usr/bin/rtcd
     /usr/bin/rtcprof
     /usr/bin/rtm-config
     /usr/bin/rtm-naming
  • ライセンスなど
     /usr/share/doc/openrtm-aist/changelog.gz
     /usr/share/doc/openrtm-aist/README.Debian
     /usr/share/doc/openrtm-aist/README
     /usr/share/doc/openrtm-aist/README.jp
     /usr/share/doc/openrtm-aist/copyright
     /usr/share/doc/openrtm-aist/changelog.Debian.gz
  • 設定ファイルサンプル
     /usr/etc/rtc.conf.sample
  • ライブラリ
     /usr/lib/x86_64-linux-gnu/libRTC-X.X.X.so
     /usr/lib/x86_64-linux-gnu/libRTC.a
     /usr/lib/x86_64-linux-gnu/libRTC.la
     /usr/lib/x86_64-linux-gnu/libcoil-X.X.X.so
     /usr/lib/x86_64-linux-gnu/libcoil.a
     /usr/lib/x86_64-linux-gnu/librtmCamera.a
     /usr/lib/x86_64-linux-gnu/librtmCamera.la
     /usr/lib/x86_64-linux-gnu/librtmCamera.so.X.X.X
     /usr/lib/x86_64-linux-gnu/librtmManipulator.a
     /usr/lib/x86_64-linux-gnu/librtmManipulator.la
     /usr/lib/x86_64-linux-gnu/librtmManipulator.so.X.X.X
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/FileNameservice.la
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/FileNameservice.so.X.X.X
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.a
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.la
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ec/LogicalTimeTriggeredEC.so.X.X.X
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.a
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.la
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/sdo/LoggerConsumer.so.X.X.X
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ssl/SSLTransport.la
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/ssl/SSLTransport.so.X.X.X
     /usr/lib/x86_64-linux-gnu/pigconfig/openrtm-aist.pc

openrtm-aist-dev

openrtm-aist-devには、開発に必要なコマンド群とヘッダが含まれています。

  • コマンド
     /usr/bin/coil-config
     /usr/bin/rtc-template
     /usr/bin/rtm-skelwrapper
  • ライセンスなど
     /usr/share/doc/openrtm-aist-dev/changelog.Debian.gz
     /usr/share/doc/openrtm-aist-dev/changelog.gz
     /usr/share/doc/openrtm-aist-dev/copyright
  • ヘッダなど
     /usr/include/coil-1.2/coil/Affinity.h
     /usr/include/coil-1.2/coil/Allocator.h
     中略
     /usr/include/coil-1.2/coil/stringutil.h
     /usr/include/openrtm-1.2/rtm/BufferBase.h
     /usr/include/openrtm-1.2/rtm/BufferStatus.h
     中略
     /usr/include/openrtm-1.2/rtm/config_rtc.h
     /usr/include/openrtm-1.2/rtm/ext/CameraCommonInterface.hh
     /usr/include/openrtm-1.2/rtm/ext/CameraCommonInterface.idl
     中略
     /usr/include/openrtm-1.2/rtm/ext/ManipulatorCommonInterface_MiddleStub.h
     /usr/include/openrtm-1.2/rtm/ext/ec/artlinux/ArtExecutionContext.h
     /usr/include/openrtm-1.2/rtm/ext/ec/artlinux/rtc.conf.sample
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredEC.h
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredEC.idl
     中略
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredECStub.h
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredEC.hh
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredEC.idl
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredECDynSK.cc
     /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredECSK.cc
     /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt
     /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt/RTPreemptEC.h
     /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt/rtc.conf.sample
     /usr/include/openrtm-1.2/rtm/ext/local_service/nameservice_file/FileNameservice.h
     /usr/include/openrtm-1.2/rtm/ext/logger/fluentbit_stream/FluentBit.h
     /usr/include/openrtm-1.2/rtm/ext/logger/fluentbit_stream/fluentbit.conf
     /usr/include/openrtm-1.2/rtm/ext/sdo/logger/Logger.hh
     /usr/include/openrtm-1.2/rtm/ext/sdo/logger/Logger.idl
     中略
     /usr/include/openrtm-1.2/rtm/ext/sdo/logger/LoggerStub.h
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserver.idl
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserverConsumer.h
     中略
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserverStub.h
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserver.hh
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserver.idl
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserverDynSK.cc
     /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserverSK.cc
     /usr/include/openrtm-1.2/rtm/idl/BasicDataType.hh
     /usr/include/openrtm-1.2/rtm/idl/BasicDataType.idl
     中略
     /usr/include/openrtm-1.2/rtm/idl/device_interfaces/Ranger.idl
     /usr/include/openrtm-1.2/rtm/version.h
     /usr/include/openrtm-1.2/rtm/version.txt
  • ライブラリ・その他
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/cmake/OpenRTMConfig.cmake
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/py_helper/README_gen.py
     /usr/lib/x86-64-linux-gnu/openrtm-1.2/py_helpver/cxx_gen.py
     中略
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/py_helpver/yat.py
     /usr/lib/x86_64-linux-gnu/pkgconfig/libcoil.pc

openrtm-aist-idl

  • idlファイルなど
     /etc/profile.d/openrtm-aist-idl.sh
     /usr/include/openrtm-1.2/rtm/idl/BasicDataType.idl
     /usr/include/openrtm-1.2/rtm/idl/CameraCommonInterface.idl
     中略
     /usr/include/openrtm-1.2/rtm/idl/SharedMemory.idl
     /usr/share/openrtm-1.2/idl/BasicDataType.idl
     /usr/share/openrtm-1.2/idl/CameraCommonInterface.idl
     中略
     /usr/share/openrtm-1.2/idl/SharedMemory.idl
  • ライセンスなど
     /usr/share/doc/openrtm-aist-idl/changelog.Debian.gz
     /usr/share/doc/openrtm-aist-idl/changelog.gz
     /usr/share/doc/openrtm-aist-idl/copyright

openrtm-aist-java

  • コマンド
     /usr/bin/rtcd_java
     /usr/bin/rtcprof_java
  • 環境変数設定用スクリプト
     /etc/profile.d/openrtm-aist-java.sh
  • jarファイル
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/License.txt
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/LogicalTimeTriggeredEC.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/NameserviceFile.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/OpenRTM-aist-1.2.0.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/commons-cli-1.1.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/jna-4.2.2.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/jna-platform-4.2.2.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/rtcd.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/rtcprof.jar

openrtm-aist-java-example

Java版サンプルRTC、Classファイル、ソースファイル、起動スクリプト

 /usr/share/openrtm-1.2/components/java/* 
 /usr/share/openrtm-1.2/components/java/RTMExamples/AutoTest/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/Composite/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/ConfigSample/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/ExtTrigger/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/control/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/model/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/view/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/MyService.idl
 /usr/share/openrtm-1.2/components/java/RTMExamples/SeqIO/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SeqIO/view/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SimpleIO/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SimpleService/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SinCosOut/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/Throughput/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/TopicTest/*

openrtm-aist-java-doc

openrtm-aist-java-doc には、日本語と英語のクラスリファレンスが含まれています。

 /usr/share/openrtm-1.2/doc/java/JavaDoc/OpenRTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/OpenRTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/_SDOPackage/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/_SDOPackage/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/Constants.html
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/buffer/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/buffer/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/executionContext/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/executionContext/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/log/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/publisher/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/publisher/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/clock/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/clock/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/Version.html
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/class-use
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/OpenRTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/OpenRTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/_SDOPackage/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/_SDOPackage/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/index-files/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/Constants.html
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/buffer/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/buffer/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/executionContext/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/executionContext/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/log/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/log/class-use/Logbuf.html
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/publisher/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/publisher/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/clock/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/clock/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/*

openrtm-aist-python

  • コマンド
     /usr/bin/rtcd_python
     /usr/bin/rtcprof_python
  • OpenRTM-aist 本体の Python モジュール
     usr/lib/python2.7/dist-packages/OpenRTM-aist/*
  • OpenRTM-aist用Python検索パスファイル
     /usr/lib/python2.7/dist-packages/OpenRTM_aist.ph
  • ユーティリティ
     /usr/lib/python2.7/dist-packages/OpenRTM_aist/utils/__init__.py
     /usr/lib/python2.7/dist-packages/OpenRTM_aist/utils/rtc-template/*
     /usr/lib/python2.7/dist-packages/OpenRTM_aist/utils/rtcd/*
     /usr/lib/python2.7/dist-packages/OpenRTM_aist/utils/rtcprof/*
     /usr/lib/python2.7/dist-packages/OpenRTM_aist/utils/rtm-naming/*

openrtm-aist-python-example

 /usr/share/openrtm-1.2/components/python/__init__.py
 /usr/share/openrtm-1.2/components/python/rtcd.conf
 /usr/share/openrtm-1.2/components/python/components.conf
 /usr/share/openrtm-1.2/components/python/AutoControl/*
 /usr/share/openrtm-1.2/components/python/AutoTest/*
 /usr/share/openrtm-1.2/components/python/Composite/*
 /usr/share/openrtm-1.2/components/python/ConfigSample/*
 /usr/share/openrtm-1.2/components/python/ExtTrigger/*
 /usr/share/openrtm-1.2/components/python/MobileRobotCanvas/*
 /usr/share/openrtm-1.2/components/python/SeqIO/*
 /usr/share/openrtm-1.2/components/python/SimpleIO/*
 /usr/share/openrtm-1.2/components/python/SimpleService/*
 /usr/share/openrtm-1.2/components/python/Slider_and_Motor/*
 /usr/share/openrtm-1.2/components/python/Templates/*
 /usr/share/openrtm-1.2/components/python/Throughput/*
 /usr/share/openrtm-1.2/components/python/TkJoyStick/
 /usr/share/openrtm-1.2/components/python/TkLRFViewer/*

openrtm-aist-python-doc

  • クラスリファレンス(英語)
     /usr/share/openrtm-1.2/doc/python/ClassReference-en/html/_async_8py.html
     /usr/share/openrtm-1.2/doc/python/ClassReference-en/html/_buffer_base_8py.html
     中略
     /usr/share/openrtm-1.2/doc/python/ClassReference-en/html/uuid_8py.html
  • クラスリファレンス(日本語)
     /usr/share/openrtm-1.2/doc/python/ClassReference-jp/html/_async_8py.html
     /usr/share/openrtm-1.2/doc/python/ClassReference-jp/html/_buffer_base_8py.html
     中略
     /usr/share/openrtm-1.2/doc/python/ClassReference-jp/html/uuid_8py.html 

rtshell

  • コマンド用スクリプト
     /usr/local/bin/rtact
     /usr/local/bin/rtcat
     /usr/local/bin/rtcheck
     /usr/local/bin/rtcomp
     /usr/local/bin/rtcon
     /usr/local/bin/rtconf
     /usr/local/bin/rtcryo
     /usr/local/bin/rtdeact
     /usr/local/bin/rtdel
     /usr/local/bin/rtdis
     /usr/local/bin/rtdoc
     /usr/local/bin/rtexit
     /usr/local/bin/rtfind
     /usr/local/bin/rtfsm
     /usr/local/bin/rtinject
     /usr/local/bin/rtlog
     /usr/local/bin/rtls
     /usr/local/bin/rtmgr
     /usr/local/bin/rtprint
     /usr/local/bin/rtpwd
     /usr/local/bin/rtreset
     /usr/local/bin/rtresurrect
     /usr/local/bin/rtshell_post_install
     /usr/local/bin/rtstart
     /usr/local/bin/rtstodot
     /usr/local/bin/rtstop
     /usr/local/bin/rtteardown
     /usr/local/bin/rtvlog
     /usr/local/bin/rtwatch
  • コマンド本体
     /usr/local/lib/python2.7/dist-packages/rtctree/*
     /usr/local/lib/python2.7/dist-packages/rtshell/*
     /usr/local/lib/python2.7/dist-packages/rtsprofile/*
  • パッケージ情報
     /usr/local/lib/python2.7/dist-packages/rtctree_aist-4.2.0.egg-info/*
     /usr/local/lib/python2.7/dist-packages/rtshell_aist-4.2.2.dist-info/*
     /usr/local/lib/python2.7/dist-packages/rtsprofile_aist-4.1.2.dist-info/*

Fedoraへのインストール

Java版OpenRTM-aistはFedora Linuxで利用可能なRPMパッケージが提供されています。 対応しているFedora Linuxのバージョンは、ダウンロードページから確認できます。 Fedora Linuxへの対応およびそのバージョンは、予告なしに変更または停止されることがありますので、あらかじめ了承ください。

Fedora Linuxへのインストールの方法には大きく分けて以下の二種類のインストール方法があります。
  • openrtm.orgが提供する一括インストールスクリプトを使用
  • yumパッケージマネージャを使用

一括インストール・スクリプト

openrtm.orgが提供するインストール・スクリプトpkg_install_fedora.shをダウンロードページからダウンロードし、root権限で実行します。 このスクリプトは、必要なパッケージを順次yumを用いてインストールしていきます。

OpenRTM-aistを開発・実行するために必要なパッケージをもれなくインストールしてくれるので大変便利です。 オプションを指定することで、目的に合わせたパッケージをインストールできるようになったので、 初めてOpenRTM-aistをインストールしてみる方にもソースをコンパイルしてみる方にも推奨します。

一括インストールスクリプトのダウンロードや詳しいインストール方法、指定可能なオプションの種類につきましては、「一括インストールスクリプト」のページをご確認ください。

現状一括インストールスクリプトを-l javaオプションで使った場合、必要なOpenRTM-aistパッケージがインストールされないという問題が報告されています。以下の手順によりインストールしてください。

 sudo yum install OpenRTM-aist OpenRTM-aist-devel

OpenRTPのインストール

一般的なUbuntu/Debian環境での開発にはRTC BuilderやRTSystem Editorを使用しますが、その場合にはOpenRTPが必要ですので、一括インストールスクリプトを用いてOpenRTPをインストールしてください。pkg_install_fedora.shが置いてあるディレクトリで

 $ sudo sh ./pkg_install_fedora.sh -l openrtp --yes
と入力するとOpenRTPをインストールできます。

yumを使う方法

/etc/yum.repos.d/openrtm.repoの作成

openrtm.orgではyumから利用可能なパッケージリポジトリを提供しています。 ただし、デフォルトのパッケージリポジトリには含まれていませんので、yumの設定を変更する必要があります。

以下のような設定を記録したファイル/etc/yum.repos.d/openrtm.repoを作成しておきます。作成には通常root権限が必要です。

 [openrtm]
 name=Fedora $releasever - $basearch
 failovermethod=priority
 baseurl=http://openrtm.org/pub/Linux/Fedora/releases/$releasever/Fedora/$basearch/os/Packages
 enabled=1
 gpgcheck=0
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
/etc/yum.repos.d/openrtm.repo

yumによるインストール

openrtm.repoを作成したら、次の手順でインストールを行います。 途中、いくつかの応答を求められるので、yを入力しながら完了させます。

 $ sudo yum install gcc-c++ python
 $ sudo yum install omniORB omniORB-devel omniORB-doc omniORB-servers omniORB-utils
 $ sudo yum install OpenRTM-aist OpenRTM-aist-devel OpenRTM-aist-Java OpenRTM-aist-Java-doc OpenRTM-aist-Java-example
 $ sudo yum install OpenRTP

環境変数の設定

環境変数の設定が必要です。ホームディレクトリにある.bashrcに以下の行を付け加えてください。(64ビット版を使用する場合)
 export RTM_JAVA_ROOT=/usr/lib64/openrtm-1.2
この設定を有効にするためにはインストール作業終了後、再ログインしてください。

JDK8について

Fedora用のOpenRTM-aist-Javaパッケージのインストールは自動的にFedoraの標準リポジトリよりOpenJDK8をインストールし、それを使用するJava環境として設定しますが、ライセンス条件やサポート条件のために他のJDKを使いたい場合は、以下のリンクを参照してください。

最後に以下のコマンドでインストールの確認をします。

 # rpm -q OpenRTM-aist
 OpenRTM-aist-1.2.0-0.fcXX.x86_64

パッケージの詳細

各パッケージの内容は以下の通りです。

openrtm-aist

openrtm-aistにはランタイムライブラリとコマンド群が含まれています。

  • コマンド
     /usr/bin/rtcd
     /usr/bin/rtcprof
     /usr/bin/rtm-config
     /usr/bin/rtm-naming
  • 設定ファイルサンプル
     /etc/rtc.conf.sample
  • ライブラリ
     /usr/lib64/libRTC-1.2.0.so
     /usr/lib64/libRTC.a
     中略
     /usr/lib64/librtmManipulator.so.0.0.0
     /usr/lib64/openrtm-1.2/ec/FileNameservice.la
     /usr/lib64/openrtm-1.2/ec/FileNameservice.so
     中略
     /usr/lib64/openrtm-1.2/ec/RTPreemptEC.so.0.0.0
     /usr/lib64/openrtm-1.2/sdo/LoggerConsumer.a
     /usr/lib64/openrtm-1.2/sdo/LoggerConsumer.la
     /usr/lib64/openrtm-1.2/sdo/LoggerConsumer.so
     /usr/lib64/openrtm-1.2/sdo/LoggerConsumer.so.0
     /usr/lib64/openrtm-1.2/sdo/LoggerConsumer.so.0.0.0
     /usr/lib64/openrtm-1.2/ssl/SSLTransport.la
     /usr/lib64/openrtm-1.2/ssl/SSLTransport.so
     /usr/lib64/openrtm-1.2/ssl/SSLTransport.so.0
     /usr/lib64/openrtm-1.2/ssl/SSLTransport.so.0.0.0

OpenRTM-aist-devel

openrtm-aist-devには、開発に必要なコマンド群とヘッダが含まれています。

  • コマンド
     /usr/bin/coil-config
     /usr/bin/rtc-template
     /usr/bin/rtm-skelwrapper
  • ヘッダなど
      /usr/include/coil-1.2/coil/Affinity.h
      /usr/include/coil-1.2/coil/Allocator.h
      中略
      /usr/include/coil-1.2/coil/stringutil.h
      /usr/include/openrtm-1.2/rtm/BufferBase.h
      /usr/include/openrtm-1.2/rtm/BufferStatus.h
      中略
      /usr/include/openrtm-1.2/rtm/config_rtc.h
      /usr/include/openrtm-1.2/rtm/ext/CameraCommonInterface.hh
      /usr/include/openrtm-1.2/rtm/ext/CameraCommonInterface.idl
      中略
      /usr/include/openrtm-1.2/rtm/ext/ManipulatorCommonInterface_MiddleStub.h
      /usr/include/openrtm-1.2/rtm/ext/ec/artlinux/ArtExecutionContext.h
      /usr/include/openrtm-1.2/rtm/ext/ec/artlinux/rtc.conf.sample
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredEC.h
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredEC.idl
      中略
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/LogicalTimeTriggeredECStub.h
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredEC.hh
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredEC.idl
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredECDynSK.cc
      /usr/include/openrtm-1.2/rtm/ext/ec/logical_time/idl/LogicalTimeTriggeredECSK.cc
      /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt
      /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt/RTPreemptEC.h
      /usr/include/openrtm-1.2/rtm/ext/ec/rtpreempt/rtc.conf.sample
      /usr/include/openrtm-1.2/rtm/ext/local_service/nameservice_file/FileNameservice.h
      /usr/include/openrtm-1.2/rtm/ext/logger/fluentbit_stream/FluentBit.h
      /usr/include/openrtm-1.2/rtm/ext/logger/fluentbit_stream/fluentbit.conf
      /usr/include/openrtm-1.2/rtm/ext/sdo/logger/Logger.hh
      /usr/include/openrtm-1.2/rtm/ext/sdo/logger/Logger.idl
      中略
      /usr/include/openrtm-1.2/rtm/ext/sdo/logger/LoggerStub.h
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserver.idl
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserverConsumer.h
      中略
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/ComponentObserverStub.h
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserver.hh
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserver.idl
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserverDynSK.cc
      /usr/include/openrtm-1.2/rtm/ext/sdo/observer/idl/ComponentObserverSK.cc
      /usr/include/openrtm-1.2/rtm/idl/BasicDataType.hh
      /usr/include/openrtm-1.2/rtm/idl/BasicDataType.idl
      中略
      /usr/include/openrtm-1.2/rtm/idl/device_interfaces/Ranger.idl
      /usr/include/openrtm-1.2/rtm/version.h
      /usr/include/openrtm-1.2/rtm/version.txt
  • ライブラリ・その他

  /usr/lib/x86_64-linux-gnu/openrtm-1.2/cmake/OpenRTMConfig.cmake
  /usr/lib/x86_64-linux-gnu/openrtm-1.2/py_helper/README_gen.py
  /usr/lib/x86-64-linux-gnu/openrtm-1.2/py_helpver/cxx_gen.py
  中略
  /usr/lib/x86_64-linux-gnu/openrtm-1.2/py_helpver/yat.py
  /usr/lib/x86_64-linux-gnu/pkgconfig/libcoil.pc

OpenRTM-aist-Java

  • コマンド
     /usr/bin/rtcd_java
     /usr/bin/rtcprof_java
  • jarファイル
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/License.txt
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/LogicalTimeTriggeredEC.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/NameserviceFile.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/OpenRTM-aist-1.2.0.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/commons-cli-1.1.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/jna-4.2.2.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/jna-platform-4.2.2.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/rtcd.jar
     /usr/lib/x86_64-linux-gnu/openrtm-1.2/jar/rtcprof.jar

OpenRTM-aist-Java-example

Java版サンプルRTC、Classファイル、ソースファイル、起動スクリプト

 /usr/share/openrtm-1.2/components/java/* 
 /usr/share/openrtm-1.2/components/java/RTMExamples/AutoTest/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/Composite/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/ConfigSample/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/ExtTrigger/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/control/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/model/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/GUIIn/view/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/MyService.idl
 /usr/share/openrtm-1.2/components/java/RTMExamples/SeqIO/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SeqIO/view/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SimpleIO/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SimpleService/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/SinCosOut/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/Throughput/*
 /usr/share/openrtm-1.2/components/java/RTMExamples/TopicTest/*

OpenRTM-aist-Java-doc

openrtm-aist-java-doc には、日本語と英語のクラスリファレンスが含まれています。

 /usr/share/openrtm-1.2/doc/java/JavaDoc/OpenRTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/OpenRTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/RTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/_SDOPackage/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/_SDOPackage/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/Constants.html
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/buffer/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/buffer/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/executionContext/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/executionContext/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/log/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/publisher/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/port/publisher/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/clock/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/RTC/util/clock/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/Version.html
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/class-use
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/jp/go/aist/rtm/*
 /usr/share/openrtm-1.2/doc/java/JavaDoc/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/OpenRTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/OpenRTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTM/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/RTM/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/_SDOPackage/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/_SDOPackage/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/index-files/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/Constants.html
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/buffer/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/buffer/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/executionContext/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/executionContext/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/log/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/log/class-use/Logbuf.html
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/publisher/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/port/publisher/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/clock/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/RTC/util/clock/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/jp/go/aist/rtm/class-use/*
 /usr/share/openrtm-1.2/doc/java/JavaDocEn/*

openrtp

openrtpでは大量のファイルがインストールされるため、ここではリストしません。必要に応じて

 $ rpm -ql OpenRTP
と入力して各自での確認をしてください。

動作確認(Windows編)

サンプルコンポーネントの場所

インストールまたはビルドが正常に終了したら、付属のサンプルで動作テストをします。 サンプルは、通常は以下の場所にあります。

  • C:\Program Files\OpenRTM-aist\1.2.1\Components\Java
  • OpenRTM-aist\jp.go.aist.rtm.RTC\bin\RTMExamples(ソースからビルドした場合)

サンプルコンポーネントセットSimpleIOを使って、OpenRTM-aistが正しくビルド・インストールされているかを確認します。

サンプル(SimpleIO)を使用したテスト

RTコンポーネントConsoleIn、ConsoleOutからなるサンプルセットです。 ConsoleInはコンソールから入力された数値をOutPortから出力するコンポーネント、ConsoleOutはInPortに入力された数値をコンソールに表示するコンポーネントです。 これらは、最も簡単な(Simpleな)I/O(入出力)を例示するためのサンプルです。 ConsoleInのOutPortからConsoleOutのInPortへ接続を構成し、これらの2つのコンポーネントをアクティブ化(Activate)することで動作します。

以下は、msiインストーラーでOpenRTM-aistをインストールした環境で、スタートメニューから各種プログラムを起動する前提での説明です。

RTSystemEditor、ネームサーバー起動

以下の手順に従ってRTSystemEditor、ネームサーバーを起動してください。

サンプルコンポーネントの起動

ネームサーバー起動後、適当なサンプルコンポーネントを起動します。

Windows 10の場合は右下の[ここに入力して検索]にJava_Examplesと入力してサンプルのフォルダーを開きます。

rtm27.png
ネームサーバーの起動を確認

rtm28.png
サンプルコンポーネントフォルダー

ここでは、「ConsoleIn.bat」「ConsoleOut.bat」をそれぞれダブルクリックして2つのコンポーネントを起動します。 起動すると、下図のような2つのコンソール画面が開きます。

rtm29.png
ConsoleInコンポーネントとConsoleOutコンポーネント

コンポーネントが起動しない場合

コンポーネントが起動しない場合、いくつかの原因が考えられます。

コンソール画面が開いてすぐに消える

環境変数RTM_ROOTRTM_JAVA_ROOTが正しく設定されていない場合に問題が発生する可能性があります。 msiインストーラーでインストールした場合はOSを再起動すると解決する場合があります。

また、rtc.confの設定に問題があり、起動できないケースがあります。上記スタートメニューフォルダーの[rtc.conf for examples]を開いて設定を確認してください。 例えば、corba.endpoint/corba.endpointsなどの設定が現在実行中のPCのホストアドレスとミスマッチを起こしている場合などは、CORBAが異常終了します。

以下のような最低限のrtc.confに設定しなおして試してみてください。

 corba.nameservers: localhost

エディタへの配置

RTSystemEditorのツリー表示の[>]をクリックすると、先ほど起動した2つのコンポーネントが登録されていることがわかります。

rtm10.png
ConsoleInコンポーネントとConsoleOutコンポーネント

システムを編集するエディタを開きます。上部のエディタを[Open New System Editor]ボタンrtse_open_editor_icon_ja.png をクリックすると、中央のペインにエディタが開きます。

左側のネームサービスビューに icon-rtce.png のアイコンで表示されているコンポーネント(2つ)を中央のエディタにドラッグアンドドロップします。

rtm11.png
コンポーネントをエディタに配置

接続とアクティブ化

ConsoleIn0コンポーネントの右側にはデータが出力されるOutPort rtse_outport_icon_n.png 、ConsoleOut0コンポーネントの左側にはデータが入力されるInPort rtse_inport_icon_n.png がそれぞれついています。

これらInPort/OutPort(まとめてデータポートと呼びます)を接続します。 OutPortからInPort(またはInPortからOutPort)へドラッグランドドロップすると、図のようなダイアログが現れますので、デフォルト設定のまま[OK]ボタンをクリックします。

rtm13.png
データポートの接続

rtm12.png
データポート接続ダイアログ

2つのコンポーネントの間に接続線が現れます。次に、エディタ上部メニューの[Activate Systems]ボタン rtm14.png をクリックし、これらのコンポーネントをアクティブ化します。 アクティブ化されると、コンポーネントが緑色に変化します。

rtm15.png
アクティブ化されたコンポーネント

コンポーネントがアクティブ化されるとConsoleInコンポーネント側コンソールが

 Please input number: 

というプロンプト表示に変わりますので、適当な数値(short intの範囲内:32767以下)を入力しEnterキーを押します。 すると、ConsoleOut側では、入力した数値が表示され、ConsoleInコンポーネントからConsoleOutコンポーネントへデータが転送されたことがわかります。

以上で、コンポーネントの基本動作の確認は終了です。

他のサンプル

インストーラーには、このほかにもいくつかのサンプルコンポーネントが付属しています。 これらのコンポーネントも同様に起動し、RTSystemEditorでポート同士を接続し、アクティブ化することで試すことができます。

付属しているコンポーネント起動用のバッチファイルのリストとそれにより起動されるコンポーネントの簡単な説明を以下に示します。

ConsoleInComp.bat コンソールから入力された数値をOutPortから出力するコンポーネントを起動します。ConsoleOutComp.classに接続して使用します。
ConsoleOutComp.bat InPortに入力された数値をコンソールに表示するコンポーネントを起動します。ConsoleInComp.classに接続して使用します。
SeqInComp.bat ランダムな数値(Short、Long、Float、Doubleとそのシーケンス型)を出力するコンポーネントを起動します。SequenceOutComp.classに接続して使用します。
SeqOutComp.bat InPortに入力される数値(Short、Long、Float、Doubleとそのシーケンス型)を表示するコンポーネントを起動します。SequenceInComp.classに接続して使用します。
MyServiceProviderComp.bat MyService型のサービスを提供するコンポーネントを起動します。MyServiceConsumerComp.classに接続して使用します。
MyServiceConsumerComp.bat MyService型のサービスを提供するコンポーネントを起動します。MyServiceProviderComp.classに接続して使用します。
ConfigSampleComp.bat Configurationのサンプルを起動します。RtcLinkからConfigurationを変更してConfigurationの挙動を理解するためのサンプルです。
ExtConsoleIn.bat 外部からのトリガで制御されるコンソール入力された数値をOutportから出力するコンポーネントを起動します。ExtTrigger/ConsoleOutComp.classに接続して使用します。
ExtConsoleOut.bat 外部からのトリガで制御されるInportに入力された数値をコンソールに出力するコンポーネントを起動します。ExtTrigger/ConsoleInComp.classに接続して使用します。
ExtConnector.bat ExtTrigger/ConsoleInComp.classとExtTrigger/ConsoleOutComp.classへの外部トリガー送るプログラムを起動します。
GUIIn.bat スライダーの位置をOutportから出力するGUIのサンプルを起動します。ConsoleOutComp.classと接続することもできます。
Composite.bat 複合コンポーネントのサンプルを起動します。3つのコンポーネントを内包した複合コンポーネントが起動されます。|

動作確認(Linux編)

インストールが正常に終了したら、付属のサンプルで動作テストをします。サンプルは、通常は以下の場所にあります。
  • /usr/share/openrtm-1.2/components/java/
ソースからビルドした場合は、ソースディレクトリ以下の
  • OpenRTM-aist-Java/jp.go.aist.rtm.RTC/bin/RTMExamples/<サンプルコンポーネントセット名>

にあります。

サンプルコンポーネントセットSimpleIOを使って、OpenRTM-aistが正しくビルド・インストールされているかを確認します。

サンプルコンポーネントセットSimpleIO

RTコンポーネントConsoleIn、ConsoleOutからなるサンプルセットです。 ConsoleInはコンソールから入力された数値をOutPortから出力するコンポーネント、ConsoleOutはInPortに入力された数値をコンソールに表示するコンポーネントです。 これらは、最も簡単な(Simpleな)I/O(入出力)を例示するためのサンプルです。 ConsoleInのOutPortからConsoleOutのInPortへ接続を構成し、これらの2つのコンポーネントをアクティブ化(Activate)することで動作します。

以降、簡単のためサンプルは/usr/share/openrtm-1.2/components/java/SimpleIO以下にあるものとして説明を記述します。

サンプルを使用したテスト

ネームサーバー起動

以下の手順に従ってRTSystemEditor、ネームサーバーを起動してください。

ConsoleInの起動

ターミナルを起動してConsoleInを起動します。

 $ sh /usr/share/openrtm-1.2/components/java/ConsoleIn.sh

自分でビルド・インストールした場合は、まず環境変数CLASSPATHの設定が必要です。

 export CLASSPATH=.:${RTM_JAVA_ROOT}/jar/OpenRTM-aist-1.2.0.jar: \ 
 ${RTM_JAVA_ROOT}/jar/commons-cli-1.1.jar: \ 
 ${RTM_JAVA_ROOT}/jar/jna-4.2.2.jar:${RTM_JAVA_ROOT}/jar/jna-platform-4.2.2.jar: \ 
 ${RTM_JAVA_ROOT}/bin

 $ java RTMExamples.SimpleIO.ConsoleInComp

などとしてConsoleInを起動します。

ConsoleOutの起動

別のターミナルを起動してConsoleOutを起動します。

 $ sh /usr/share/openrtm-1.2/components/java/ConsoleOut.sh

自分でビルド・インストールした場合は以下のコマンドで実行します。

 $ java RTMExamples.SimpleIO.ConsoleOutComp

などとしてConsoleOutを起動します。

エディタへの配置

RTSystemEditorのツリー表示の[>]をクリックすると、先ほど起動した2つのコンポーネントが登録されていることがわかります。

/ja/node/6614
ConsoleInコンポーネントとConsoleOutコンポーネント

システムを編集するエディタを開きます。上部のエディタを[Open New System Editor]ボタンrtse_open_editor_icon_ja.png をクリックすると、中央のペインにエディタが開きます。

左側のネームサービスビューに icon-rtce.png のアイコンで表示されているコンポーネント(2つ)を中央のエディタにドラッグアンドドロップします。

/ja/node/6614
コンポーネントをエディタに配置

接続とアクティブ化

ConsoleIn0コンポーネントの右側にはデータが出力されるOutPort rtse_outport_icon_n.png 、ConsoleOut0コンポーネントの左側にはデータが入力される InPort rtse_inport_icon_n.png がそれぞれついています。

これらInPort/OutPort(まとめてデータポートと呼びます)を接続します。 OutPortからInPort(またはInPortからOutPort)へドラッグランドドロップすると、図のようなダイアログが現れますので、デフォルト設定のまま[OK]ボタンをクリックします。

/ja/node/6614
データポートの接続

/ja/node/6614
データポート接続ダイアログ

2つのコンポーネントの間に接続線が現れます。次に、エディタ上部メニューの[Activate Systems]ボタン rtm14.png をクリックし、これらのコンポーネントをアクティブ化します。 アクティブ化されると、コンポーネントが緑色に変化します。

/ja/node/6614
アクティブ化されたコンポーネント

コンポーネントがアクティブ化されるとConsoleInコンポーネント側では

 Please input number: 

というプロンプト表示に変わりますので、適当な数値(short intの範囲内:32767以下)を入力しEnterキーを押します。 すると、ConsoleOut側では、入力した数値が表示され、ConsoleInコンポーネントからConsoleOutコンポーネントへデータが転送されたことがわかります。

以上で、コンポーネントの基本動作の確認は終了です。

ソースからのビルド

OpenRTM-aist-Java本体のソースを変更して利用したい場合には、ソースからコンパイルできます。

配布ソースのビルド

OpenRTM-aist(Java版)はEclipseを利用したビルド環境を提供しています。

依存ライブラリ

OpenRTM-aistのビルドには下記の開発環境およびライブラリが必要です。

それぞれのライブラリなどのドキュメントに従いインストールを行ってください。

ソースのダウンロード

OpenRTM-aist-Javaのソースをダウンロードします。

ソースコードの展開

まずソースコードを適当なディレクトリに展開します。
  • Linuxの場合
     $ tar xvzf OpenRTM-aist-Java-X.X.X.tar.gz
  • Windowsの場合は、tgzを展開できるツールを使用して展開します。

ビルド

プロジェクトのインポート

ビルド方法を説明します。(図はWindows版のEclipse3.4.2です。) Eclipseを起動し、プロジェクトをワークスペースへインポートします。 [ファイル]>[インポート]を選択します。

rtm16.png
[ファイル]>[インポート]を選択

インポートの[選択]ウィンドウが開きます。ここで、[一般]>[既存プロジェクトをワークスペースへ]を選択して[次へ]ボタンをクリックします。

rtm17.png
インポートの「選択」ウィンドウ

[プロジェクトのインポート]ウィンドウが開きます。[ルート・ディレクトリの選択]へ展開したディレクトリを指定して[完了]ボタンをクリックします。

rtm18.png
[プロジェクトのインポート]ウィンドウ

これで、プロジェクトをワークスペースへインポートできます。

JDEの設定

ビルドに使用するJDKの設定を行います。 まず[ウィンドウ]>[設定]で設定画面を開きます。

rtm19.png
[ウィンドウ]>[設定]を選択

左側のツリーから[Java]>[インストール済みのJRE]を選択して追加ボタンを押します。

rtm20.png
インストール済みのJRE

[標準VM]を選択して次へ進みます。

rtm21.png
JREの追加

JREホームにJDKインストールフォルダー以下のjreフォルダーのパスを指定して完了する。

rtm22.png
JREの設定

インストール済みJREで設定したJDKのチェックボックスをオンにすれば完了です。

rtm23.png
JDKの設定

パッケージ・エクスプローラーから「build.xml」を右クリックして[実行]>[2 Antビルド...]を選択します。

rtm25.png
[実行]>[2 Antビルド...]を選択

構成編集のウィンドウが表示さます。ここで、jaridlCompileidlCompileEtccleancompile_winを選択して[実行]ボタンをクリックします。

rtm26.png
構成編集のウィンドウ

ビルドが始まります。

コンソールウィンドウにBUILD SUCCESSFULビルド成功の表示がでれば完了です。
日本語が文字化けしている場合は、メニューの[実行]→[外部ツール]→[外部ツールの構成]で共通タブを開き、文字コードをMS932に変更([その他]の入力ボックスで手動入力)します。