Install OpenRTM-aist 2.0

Installing to Windows

Install

windows10-logo.png

Installation of software required for development

RTC development requires installation of Python, CMake, Doxygen, and Visual Studio.

Visual Studio

It is necessary not only for developing the C ++ version, but also for building the installer when creating the Python version and Java version of the RTC. Install it by downloading from the link, or obtain and install Visual Studio 2015/2017/2019/2022 separately.

The latest version of Visual Studio that has been confirmed to work is 2022. 
I often forget to include the C ++ development environment. We recommend that you read the following instructions.

Python

Python is used not only for developing the Python language version of RTC, but also for various tools of OpenRTM-aist, so it must be installed. Python supported by OpenRTM-aist is 3.7, 3.8, 3.9, 3.10, 3.11. We recommend that you install the latest version.

Please note the following points when installing.

CMake

CMake is required to automatically generate the files required for build (Visual Studio project file, Makefile on Linux, etc.) in various environments such as Windows and Linux.
Please install the latest version as much as possible.

Doxygen & Graphviz

Doxygen is a tool that automatically generates documents from comments such as source code.
Graphviz is a tool required to generate diagrams such as class diagrams when generating documents with Doxygen.
In OpenRTM-aist, various design information can be entered in RTCBuilder when designing RTC, and they are output as comments in the source code. By processing this with Doxygen, you can generate a beautiful RTC document.
Please install the latest version as much as possible.

During the installation, you will be asked what to do with the system PATH as the Install Options, but we recommend that you select Add Graphviz to the system PATH for all users. Download and execute the Windows version binary executable file from the web page.

After installation, run dot -v at the command prompt and check that the plugin information is displayed.

 >dot -v
 dot - graphviz version 7.1.0 (20230121.1956)
 libdir = "C:\Program Files\Graphviz\bin"
 Activated plugin library: gvplugin_dot_layout.dll
 Using layout: dot:dot_layout
 Activated plugin library: gvplugin_core.dll
 Using render: dot:core
 Using device: dot:dot:core
 The plugin configuration file:
        C:\Program Files\Graphviz\bin\config6
                was successfully loaded.
    render      :  cairo dot dot_json fig gdiplus json json0 map mp pic pov ps svg tk visio vml xdot xdot_json
    layout      :  circo dot fdp neato nop nop1 nop2 osage patchwork sfdp twopi
    textlayout  :  textlayout
    device      :  bmp canon cmap cmapx cmapx_np dot dot_json emf emfplus eps fig gif gv imap imap_np ismap jpe jpeg jpg json json0 metafile mp pdf pic plain plain-ext png pov ps ps2 svg tif tiff tk vdx vml xdot xdot1.2 xdot1.4 xdot_json
    loadimage   :  (lib) bmp eps gif jpe jpeg jpg png ps svg

JDK8

Required when developing in Java versions of OpenRTM. Please see the explanation on the following page.

Install OpenRTM-aist

After installing the above software, install OpenRTM-aist.

Download installer

Download and execute "msi" file.

OpenRTM-aist-2.0.1-RELEASE_x86_64.msi MD5:057354e97e6dd531801a9ae435ed2abe 771MB
If you are using Microsoft Edge and cannot download, please see the explanation on the following page.

This installer contains the following.

  • Development environment for C ++
    • OpenCV4.4
    • Past versions of DLLs for C ++ (Required when running the old RTC)
  • Development environment for Python
  • Development environment for Java
  • omniORB4.2.5
  • OpenRTP (GUI tool, RTCBuilder,RTSystemEditor)
    • JRE8 environment (Required for OpenRTP)
  • VCVerChanger (GUI tool)
  • rtshell (CUI tool)

Install

Please see the following page for details on the installation process. Try running the sample components to see if they are installed correctly. For details on system environment variables set by the installer, files to be installed, etc., see the following page.

Specify the version of Visual Studio

The system environment variable "RTM_VC_VERSION'' is set according to the installed version of Visual Studio. If you want to change it after installation, you can set it using GUI tools. See the VCVerChanger page for how to use it.

Visual Studio version Specified value of RTM_VC_VERSION
2015、2017 vc14
2019、2022 vc16 default

※Even if you do not change the version of Visual Studio after installation, check the system environment variable settings once with VCVerChanger. If there are any unnecessary paths left, delete them.

Operation Check

Run the sample component

After successful installation, you can check the operation with the attached sample component. We have prepared a bat file, so you can start it by double-clicking it.

The bat file is easily accessible by opening the start menu folder from [OpenRTM-aist 2.0.0 x86_64] in the start menu.
There is a bat file under each folder of "C ++_Examples" "C ++_OpenCV-Examples" "Python_Examples" "Java_Examples". For more information, see Let's start OpenRTM-aist in 10 minutes!.


The installation destination of the sample component is as follows.

 C:\Program Files\OpenRTM-aist\2.0.x\Components\C++\Examples
 C:\Program Files\OpenRTM-aist\2.0.x\Components\Python
 C:\Program Files\OpenRTM-aist\2.0.x\Components\Java
 C:\Program Files\OpenRTM-aist\2.0.x\Components\C++\OpenCV

List of sample components

Below is a brief description of the included sample components and a link to a page that explains how to use them.

Included with C ++, Python, and Java

bat file name brief description of the sample component Explanation page
ConsoleIn.bat
ConsoleOut.bat
ConsoleIn.bat : Start ConsoleIn component that outputs the number entered from the console from OutPort.
ConsoleOut.bat :Start ConsoleOut component that displays the number entered in the InPort on the console.
SimpleIO
SeqIn.bat
SeqOut.bat
SeqIn.bat : Start SeqIn component that outputs random numbers (Short, Long, Float, Double and their sequence types). 
SeqOut.bat : Start SeqOut component that displays the numbers (Short, Long, Float, Double and their sequence types) that will be input to the InPort.
SeqIO
MyServiceProvider.bat
MyServiceConsumer.bat
MyServiceProvider.bat : Start MyServiceProvider component that provides a service of type MyService.
MyServiceConsumer.bat : Start MyServiceConsumer component that provides the MyService type service.。
SimpleService
ConfigSample.bat Start ConfigSample component, which is an example of using the Configuration function. This is a sample to understand the behavior of Configuration by changing Configuration from RtcLink. ConfigSample
Composite.bat Start composite component creation sample PeriodicECSharedComponent component. It combines three sub-components, Sensor, Controller, and Motor. It is a good idea to connect to a component such as ConsoleIn and use it. Composite

Included with Python

bat file name brief description of the sample component Explanation page
TkJoystickComp.bat Sample GUI component using Tcl/Tk. Simple joystick component. TkJoyStick
TkMobileRobotSimulator.bat A simple simulator for mobile robots. The speed of the robot is received by InPort, and the position after movement is output from OutPort. TkMobileRobotSimulator
TkMotorComp.bat Sample GUI component using Tcl/Tk. GUI displays how the InPort rotates at the speed of the value received. TkMotorComp
SliderComp.bat Sample GUI component using Tcl/Tk. Output the value specified by Slider from OutPort. SliderComp
TkMotorPosComp.bat Sample GUI component using Tcl/Tk. GUI displays how the value received by InPort moves as the angle of rotation. TkMotorPosComp
TkLRFViewer.bat Sample GUI component using Tcl/Tk. Display the data output from the laser range sensor, etc. tkLRFViewer
AutoControl.bat Output speed with a component for mobile robots. The data of the positioning sensor is received by InPort, the speed of the robot is calculated, and it is output from OutPort. Autocontrol

Included with Python, and Java

bat file name brief description of the sample component Explanation page
ExtConsoleIn.bat
ExtConsoleOut.bat
ExtConnector.bat
ExtConsoleIn.bat : Console controlled by an external trigger Starts a component that outputs the input numerical value from Outport.
ExtConsoleOut.bat : Starts a component that outputs the numerical value input to the Inport controlled by an external trigger to the console.
ExtConnector.bat : Launches a program that sends external triggers to ExtTrigger / ConsoleInComp.class or .py and ExtTrigger / ConsoleOutComp.class or .py.
ExtTrigger

Included with Java

bat file name brief description of the sample component Explanation page
GUIIn.bat Launch a GUI sample that outputs the slider position from Outport. You can also connect to ConsoleOutComp.class. GUIIn

OpenCV C ++ version

bat file name brief description of the sample component Explanation page
Affine.bat Affine transforms the input image.
BackgroundSubtractionSimple.bat Outputs the change from the image when the key was input in the input image.
Binarization.bat Converts an input image to a binary black and white image.
CameraViewer.bat The image received by ImPort is displayed on the screen. CameraViewer
Chromakey.bat Extracts an object by removing a specific color from the image. Chromakey
DialationErosion.bat Perform dialing / erosion processing
Edge.bat Outputs the first-order derivative image in the X direction, the first-order derivative image in the Y direction, and the Laplacian image (second-order derivative image)
Findcontour.bat Extract the outline and display the outline in the image.
Flip Invert the image. Flip usage example
Histgram.bat Displays changes in histogram while changing brightness / contrast of black and white image
Hough.bat Line extraction by Hough transform
ImageCalibration.bat Calibrate the camera. Automatically start from TkCalibGUI
ImageSubtraction.bat Background image is extracted from the input image, the foreground image part is output as a mask image and the background image is output. ImageSubtraction
ObjectTracking.bat Tracks an object selected on the screen and show the position by a red oval. ObjectTracking
OpenCVCamera.bat Output the captured image of the USB camera from OutPort. OpenCVCamera
Perspective.bat Perspective conversion of image (Convert as viewed from below.
RockPaperScissors.bat Judgment of Goocho kipper in image.
Rotate.bat Rotates and scales images
Scale.bat Processes images for scaling
Sepia.bat Separates images
SubtractCaptureImage.bat Updates the background in real-time using the dynamic background subtraction method. SubtractCaptureImage
Template.bat Template matching
TkCalibGUI.bat GUI for ImageCalibration component that performs camera calibration. TkCalibGUI
Translate.bat Performs two-dimensional translation of images

Build from the source code (C++)

If you want to modify OpenRTM-aist itself and use it on Windows, you can get the source code of OpenRTM-aist and build it. Since CMake is supported from 2.0 series, the procedure is different from 1.2 series.

Required software and libraries

Following software is required. For details, see Installation of OpenRTM-aist 2.0 series on Windows

  • Visual Studio
  • Python
  • CMake
  • Doxygen & Graphviz(If you also want to do a document build.)
You also need the omniORB library.
  • omniORB 4.2.5 (As of 2022/06)

The pre-built binary package provided by openrtm.org is available under the name omniORB-4.2.5-x64-vc14-pyXX.zip at the link below. Please replace it with the version of python to install XX, download the appropriate one, and extract it to a suitable location (C:\workspace\omniORB in the explanation below).

For more information on building with other libraries, see RT System Development (Advanced)・Build process of OpenRTM-aist(C++) by using CMake

Command procedure at build/installation

Get the source code. Check out the master branch for the latest OpenRTM-aist 2.0 source, and v2.0.0 for the 2.0.0 release source.

 git clone https://github.com/OpenRTM/OpenRTM-aist
 cd OpenRTM-aist
 git checkout -b v200-src refs/tags/v2.0.0

Specify the following in the CMake option and execute.
  • -DORB_ROOT : Downloaded and unzipped omniORB path
  • -G :Visual Studio version("Visual Studio 17 2022" "Visual Studio 16 2019" etc.)
  • -DCMAKE_INSTALL_PREFIX : Installation path from source

 mkdir build
 cd build
 cmake -DORB_ROOT=C:/workspace/omniORB-4.2.5-x64-vc14-py310 -G "Visual Studio 17 2022" -DCMAKE_INSTALL_PREFIX=C:/workspace/openrtminstall ..

Then execute the following command. Finally, if you see the following, the build is successful.

 cmake --build . --verbose --config Release 
 The build was successful.
     0 Warnings
     0 Error

If the build is successful, complete the installation with the following command:

 cmake --build . --config Release --target install

Batch processing with script

I will introduce a script (cxx_src_build.bat) that batch processes from download of omniORB to source build and installation. It is executed by placing it under the OpenRTM-aist directory that has been git cloned.

 cd OpenRTM-aist
 cxx_src_build.bat > 1.log

When executing the script, specify only the three items "Visual Studio version", "Python version", and "Installation destination" according to the environment.

 set CMAKE_GENERATOR="Visual Studio 16 2019"
 set PY_VERSION=39 ・・・ Specify one of 37, 38, 39, 310
 set INSTALL_PREFIX=C:\localRTM-test

cxx_src_build.bat

 @echo off
 @rem
 @rem ---------- Fit to the environment.   -------
 set CMAKE_GENERATOR="Visual Studio 16 2019"
 set PY_VERSION=39
 set INSTALL_PREFIX=C:\localRTM-test
 @rem ---------- Fit to the environment.  -------
 set OMNI_VERSION=4.2.5
 set VC_VERSION=vc14
 if exist %INSTALL_PREFIX% rmdir /s/q %INSTALL_PREFIX%
 @rem
 @rem Convert "\" in the path to "/"
 set current_dir=%~dp0
 set RTM_ROOT=%current_dir:\=/%
 set INSTALL_PREFIX=%INSTALL_PREFIX:\=/%
 @rem
 @rem omniORB download
 set base_omni_url="https://openrtm.org/pub/omniORB/win32/omniORB-%OMNI_VERSION%/"
 set OMNIORB_DIR=omniORB-%OMNI_VERSION%-x64-%VC_VERSION%-py%PY_VERSION%
 set OMNIORB_ZIP=%OMNIORB_DIR%.zip
 set OMNIORB_URL=%base_omni_url%/%OMNIORB_ZIP%
 if not exist %OMNIORB_ZIP% (
   powershell wget -O %OMNIORB_ZIP% %OMNIORB_URL%
 )
 if exist %OMNIORB_DIR% rmdir /s/q %OMNIORB_DIR%
 powershell Expand-Archive .\%OMNIORB_ZIP% -DestinationPath .\ 
 set OMNIORB_ROOT=%RTM_ROOT%/%OMNIORB_DIR%
 @rem
 @rem set cmake parameter
 set CMAKE_OPT=-DORB_ROOT=%OMNIORB_ROOT% ^
   -DCMAKE_INSTALL_PREFIX=%INSTALL_PREFIX% ^
   -G %CMAKE_GENERATOR% ^
   -A x64 ..
 call :CMAKE_Release
 exit /b
 @rem
 :CMAKE_Release
 if exist build-release rmdir /s/q build-release
 mkdir build-release
 cd build-release
 cmake %CMAKE_OPT% 
 cmake --build . --verbose --config Release
 cmake --install .
 cd ..
 exit /b

Reference:Build script for msi generation

Build script for creating msm (for vc2019, 2022) to be embedded in msi. I am using the following.
  • Boost libraryライブラリ 1.78.0
  • OpenSSL 3.0.1
  • Fluent Bit v1.8.9 Build from source

OpenRTM-aist has both Release/Debug builds. As for the binary of omniORB, there is no problem using the binary built with vc14, but the binary for vc16 is prepared and used.

 @echo off
 @rem
 set CMAKE_GENERATOR="Visual Studio 16 2019"
 set VC_VERSION=vc16
 set SSL_VC_VERSION=vc14
 set PY_VERSION=39
 set INSTALL_PREFIX=C:\localRTM
 set OMNI_VERSION=4.2.5
 set SSL_VERSION=3.0.1
 set BOOST_PATH=C:\local\boost_1_78_0
 set FLB_ROOT=C:\localFLB
 @rem
 if exist %INSTALL_PREFIX% rmdir /s/q %INSTALL_PREFIX%
 @rem ------------
 @rem Convert "\" in the path to "/"
 set current_dir=%~dp0
 set RTM_ROOT=%current_dir:\=/%
 set BOOST_PATH=%BOOST_PATH:\=/%
 set INSTALL_PREFIX=%INSTALL_PREFIX:\=/%
 set FLB_ROOT=%FLB_ROOT:\=/%
 @rem ------------
 @rem omniORB download
 set base_omni_url="https://openrtm.org/pub/omniORB/win32/omniORB-%OMNI_VERSION%/"
 set OMNIORB_DIR=omniORB-%OMNI_VERSION%-x64-%VC_VERSION%-py%PY_VERSION%
 set OMNIORB_ZIP=%OMNIORB_DIR%.zip
 set OMNIORB_URL=%base_omni_url%/%OMNIORB_ZIP%
 if not exist %OMNIORB_ZIP% (
   powershell wget -O %OMNIORB_ZIP% %OMNIORB_URL%
 )
 if exist %OMNIORB_DIR% rmdir /s/q %OMNIORB_DIR%
 powershell Expand-Archive .\%OMNIORB_ZIP% -DestinationPath .\
 set OMNIORB_ROOT=%RTM_ROOT%/%OMNIORB_DIR%
 @rem ------------
 @rem OpenSSL download
 set base_ssl_url="https://openrtm.org/pub/OpenSSL/%SSL_VERSION%"
 set OPENSSL_ZIP=openssl-%SSL_VERSION%-win64-%SSL_VC_VERSION%.zip
 set OPENSSL_URL=%base_ssl_url%/%OPENSSL_ZIP%
 if not exist %OPENSSL_ZIP% (
   powershell wget -O %OPENSSL_ZIP% %OPENSSL_URL%
 )
 if exist OpenSSL rmdir /s/q OpenSSL
 powershell Expand-Archive .\%OPENSSL_ZIP% -DestinationPath .\
 set SSL_ROOT=%RTM_ROOT%OpenSSL/build
 @rem ------------
 @rem set cmake parameter
 set CMAKE_OPT=-DRTM_VC_VER=%VC_VERSION% ^
   -DORB_ROOT=%OMNIORB_ROOT% ^
   -DCORBA=omniORB ^
   -DSSL_ENABLE=ON ^
   -DOPENSSL_ROOT=%SSL_ROOT% ^
   -DCMAKE_INSTALL_PREFIX=%INSTALL_PREFIX% ^
   -DWINDOWS_MSM_BUILD=ON ^
   -DBOOST_ROOT=%BOOST_PATH% ^
   -DFLUENTBIT_ENABLE=ON ^
   -DFLUENTBIT_ROOT=%FLB_ROOT% ^
   -G %CMAKE_GENERATOR% ^
   -A x64 ..
 call :CMAKE_Debug
 call :CMAKE_Release
 exit /b
 @rem ------------
 :CMAKE_Release
 if exist build-release rmdir /s/q build-release
 mkdir build-release
 cd build-release
 cmake %CMAKE_OPT% 
 cmake --build . --verbose --config Release
 cmake --install .
 cd ..
 exit /b
 @rem ------------
 :CMAKE_Debug
 if exist build-debug rmdir /s/q build-debug
 mkdir build-debug
 cd build-debug
 cmake %CMAKE_OPT%
 cmake --build . --verbose --config Debug
 cmake --install . --config Debug
 cd ..
 exit /b

What the installer does


What the installer does

The installer copies the files and configures the system according to the following work contents. It is described below for reference when confirming that the installation and uninstallation are performed correctly.

  • Copy various files under the installation directory (C:\Program Files)
  • Create an OpenRTM-aist folder under the start menu and set various shortcuts.
  • Environment variable settings (when OpenRTM-aist 2.0.0 version is installed with default settings)
     RTM_BASE=C:\Program Files\OpenRTM-aist\
     RTM_ROOT=C:\Program Files\OpenRTM-aist\2.0.0\
     RTM_VC_VERSION=vc16  (※If you selected Visual Studio versions 2015, 2017 during installation, vc14)
     RTM_JAVA_ROOT=C:\Program Files\OpenRTM-aist\2.0.0\
     RTM_IDL_DIR=C:\Program Files\OpenRTM-aist\2.0.0\rtm\idl\
     OMNI_ROOT=C:\Program Files\OpenRTM-aist\2.0.0\omniORB\4.2.5_vc16\
     OpenCV_DIR=C:\Program Files\OpenRTM-aist\2.0.0\OpenCV4.4\
     OpenRTM_DIR=C:\Program Files\OpenRTM-aist\2.0.0\cmake\
  • Additional settings to PATH (when OpenRTM-aist 2.0.0 version is installed with default settings)
     C:\Program Files\OpenRTM-aist\2.0.0\bin\vc16\
     C:\Program Files\OpenRTM-aist\2.0.0\omniORB\4.2.5_vc16\bin\x86_win32\ 
     C:\Program Files\OpenRTM-aist\2.0.0\OpenCV4.4\x64\vc16\bin\

Files to be installed

The files are installed with the following structure.

 <install_dir>
   + OpenRTM-aist
      + 1.x.x  : Older version runtime
      + 2.0.x
         + bin: dll、lib Various commands
         + cmake: OpenRTMConfig.cmake
         + coil: coil header files
         + Components
            + C++
               + Examples: C++ sample component
               + OpenCV: OpenCV C ++ sample component
            + Java: Java sample component
            + Python: Python sample component
         + ext: Extension module file
         + hrtm: HRTM Wrapper Library
         + jar: jar files
         + jre: AdoptOpenJDK JRE
         + omniORB 4.2.5
         + OpenCV 4.4
         + rtm: OpenRTM-aist header files
            + idl: OpenRTM-aistIDL files
         + util
            + OpenRTP: RTCBuilder and RTSystemEditor tools
            + RTSystemEditor: 
            + VCVerChanger: Tool to specify the version of Visual Studio you are using

Installing to Linux

Install

ubuntu_logo2.png

OpenRTM-aist is provided with a deb package that can be used on Ubuntu and Debian GNU Linux.

2.0 is currently compatible with Ubuntu 18.04, 20.04 (amd64, arm64 respectively). Please note that the supported version and support for Ubuntu/Debian GNU Linux are subject to change without notice.

Changes in 2.0 series

C ++ and OpenRTP can coexist in 1.2 series and 2.0 series. With this support, the following changes have been made regarding installation.

  • Changed the name of the 2.0 series deb package
  • Python and Java cannot coexist in 1.2 series and 2.0 series
    • Use the bulk install script to automatically uninstall different installed versions
  • Separated 1.2 series and 2.0 series batch installation scripts
    • 1.2 series installation : pkg_install_ubuntu.sh
    • 2.0 series installation : openrtm2_install_ubuntu.sh

Installation script (both 1.2 series and 2.0 series) supports batch processing from download to installation.

Bulk installation script

To install 2.0 series, paste the following into the shell prompt and execute it. C ++ version, Python version, Java version, OpenRTP (amd64 only), rtshell, JDK8 will be installed. Scripts are not saved locally.
※By executing the script, even if multiple versions of Java are installed, it is switched to using Java8.

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/openrtm2_install_ubuntu.sh)

This will install the following packages:

 $ dpkg -l | grep openrt
 ii  openrtm2:amd64                 2.0.0-0     amd64     OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-dev:amd64             2.0.0-0     amd64     OpenRTM-aist headers for development
 ii  openrtm2-doc                   2.0.0-0     all       Documentation for openrtm2
 ii  openrtm2-example:amd64         2.0.0-0     amd64     OpenRTM-aist examples
 ii  openrtm2-idl:amd64             2.0.0-0     amd64     OpenRTM-aist idls for development
 ii  openrtm2-java:amd64            2.0.0-0     amd64     OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-java-doc              2.0.0-0     all       Documentation for openrtm2-java
 ii  openrtm2-java-example:amd64    2.0.0-0     amd64     OpenRTM-aist-Java examples
 ii  openrtm2-python3               2.0.0-0     amd64     OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-python3-doc           2.0.0-0     all       Documentation for openrtm2-python3
 ii  openrtm2-python3-example       2.0.0-0     amd64     OpenRTM-aist-Python examples
 ii  openrtp2:amd64                 2.0.0-0     amd64     OpenRTP, Open RT Platform distributed by AIST

By specifying the option, it is possible to install the package according to the purpose. help can be found below.

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/openrtm2_install_ubuntu.sh) --help

For details on the installed packages, see What the installer does

Installing packages for ROS

In 2.0 series, you can install the package for ROS communication function.
This section describes how to install the package in an environment where both ROS and ROS2 are installed.

As mentioned in help, the ROS package installation options are supported below.
[-e ros|ros2|all] [--ros|--ros2]

If you have already executed the installation script without any options and want to install additional packages for ROS and ROS2, you can use "-l c ++ -e all".

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/openrtm2_install_ubuntu.sh) -l c++ -e all

If you want to install all the packages for ROS and ROS2 from the beginning, you can do it with "-l all -e all".

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/openrtm2_install_ubuntu.sh) -l all -e all

Check the installed packages.

 $ dpkg -l | grep openrt
 ii  openrtm2:amd64               2.0.0-0   amd64        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-dev:amd64           2.0.0-0   amd64        OpenRTM-aist headers for development
 ii  openrtm2-doc                 2.0.0-0   all          Documentation for openrtm2
 ii  openrtm2-example:amd64       2.0.0-0   amd64        OpenRTM-aist examples
 ii  openrtm2-idl:amd64           2.0.0-0   amd64        OpenRTM-aist idls for development
 ii  openrtm2-java:amd64          2.0.0-0   amd64        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-java-doc            2.0.0-0   all          Documentation for openrtm2-java
 ii  openrtm2-java-example:amd64  2.0.0-0   amd64        OpenRTM-aist-Java examples
 ii  openrtm2-python3             2.0.0-0   amd64        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-python3-doc         2.0.0-0   all          Documentation for openrtm2-python3
 ii  openrtm2-python3-example     2.0.0-0   amd64        OpenRTM-aist-Python examples
 ii  openrtm2-ros-tp:amd64        2.0.0-0   amd64        OpenRTM-aist extension ROS package
 ii  openrtm2-ros2-tp:amd64       2.0.0-0   amd64        OpenRTM-aist extension ROS2 package
 ii  openrtp2:amd64               2.0.0-0   amd64        OpenRTP, Open RT Platform distributed by AIST

2.0 series installation in 1.2 series installation environment

1.2 series installation script can also be executed by specifying the URL. Install all packages with no options for the script.

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/pkg_install_ubuntu.sh)

Check the installed packages.

 $ dpkg -l | grep openrt
 ii  openrtm-aist:amd64                  1.2.2-0
 ii  openrtm-aist-dev:amd64              1.2.2-0
 ii  openrtm-aist-doc                    1.2.2-0
 ii  openrtm-aist-example:amd64          1.2.2-0
 ii  openrtm-aist-idl:amd64              1.2.2-0
 ii  openrtm-aist-java:amd64             1.2.2-0
 ii  openrtm-aist-java-doc               1.2.2-0
 ii  openrtm-aist-java-example:amd64     1.2.2-0
 ii  openrtm-aist-python3                1.2.2-0
 ii  openrtm-aist-python3-doc            1.2.2-0
 ii  openrtm-aist-python3-example        1.2.2-0
 ii  openrtp:amd64                       1.2.2-4

If you install 2.0 series continuously, c ++ and openrtp will coexist with 1.2 series and 2.0 series, but java and python will be in the state where only 2.0 series is installed.

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/openrtm2_install_ubuntu.sh)

While the script is running, you will be asked "Do you want to continue? [Y / n]" about uninstalling the 1.2 series java and python packages, so press the Enter key.
Check the installed packages.

 $ dpkg -l | grep openrt
 ii  openrtm-aist:amd64                    1.2.2-0
 ii  openrtm-aist-dev:amd64                1.2.2-0
 ii  openrtm-aist-doc                      1.2.2-0
 ii  openrtm-aist-example:amd64            1.2.2-0
 ii  openrtm-aist-idl:amd64                1.2.2-0
 ii  openrtm2:amd64                        2.0.0-0
 ii  openrtm2-dev:amd64                    2.0.0-0
 ii  openrtm2-doc                          2.0.0-0
 ii  openrtm2-example:amd64                2.0.0-0
 ii  openrtm2-idl:amd64                    2.0.0-0
 ii  openrtm2-java:amd64                   2.0.0-0
 ii  openrtm2-java-doc                     2.0.0-0
 ii  openrtm2-java-example:amd64           2.0.0-0
 ii  openrtm2-python3                      2.0.0-0
 ii  openrtm2-python3-doc                  2.0.0-0
 ii  openrtm2-python3-example              2.0.0-0
 ii  openrtp:amd64                         1.2.2-4
 ii  openrtp2:amd64                        2.0.0-0

Along with this, rtshell will also be reinstalled.

 $ pip3 list | grep aist
 OpenRTM-aist-Python    2.0.0
 rtctree-aist           4.2.3
 rtshell-aist           4.2.9
 rtsprofile-aist        4.1.5

1.2 series installation in 2.0 series installation environment

1.2 series and 2.0 series coexist for c ++ and openrtp, but only 1.2 series is installed for java and python.

 $ dpkg -l | grep openrt
 ii  openrtm-aist:amd64                 1.2.2-0
 ii  openrtm-aist-dev:amd64             1.2.2-0
 ii  openrtm-aist-doc                   1.2.2-0
 ii  openrtm-aist-example:amd64         1.2.2-0
 ii  openrtm-aist-idl:amd64             1.2.2-0
 ii  openrtm-aist-java:amd64            1.2.2-0
 ii  openrtm-aist-java-doc              1.2.2-0
 ii  openrtm-aist-java-example:amd64    1.2.2-0
 ii  openrtm-aist-python3               1.2.2-0
 ii  openrtm-aist-python3-doc           1.2.2-0
 ii  openrtm-aist-python3-example       1.2.2-0
 ii  openrtm2:amd64                     2.0.0-0
 ii  openrtm2-dev:amd64                 2.0.0-0
 ii  openrtm2-doc                       2.0.0-0
 ii  openrtm2-example:amd64             2.0.0-0
 ii  openrtm2-idl:amd64                 2.0.0-0
 ii  openrtp:amd64                      1.2.2-4
 ii  openrtp2:amd64                     2.0.0-0

rtshell will also be reinstalled for OpenRTM-aist-Python1.2.2.

 $ pip3 list | grep aist
 OpenRTM-aist-Python    1.2.2
 rtctree-aist           4.2.3
 rtshell-aist           4.2.9
 rtsprofile-aist        4.1.5

Operation Check

Run the sample component

After successful installation, you can check the operation with the attached sample component. The installation destination of the sample component is as follows.

 /usr/share/openrtm-2.0/components/c++/examples
 /usr/share/openrtm-2.0/components/python3/
 /usr/share/openrtm-2.0/components/java

Start OpenRTP, a tool for operating the RTC and building the RT system.

  • OpenRTM-aist 2.0 series is started by the openrtp2 command.

 $ openrtp2

In OpenRTM-aist 1.2 series, it is started by the openrtp command. Although the command name is different, the startup procedure and usage are the same as 1.2 series, so please see the following page for details.

※OpenRTP can coexist with 1.2 series and 2.0 series. Therefore, it is possible to run both openrtp and openrtp2.

The attached sample components are listed on the following pages for the Windows version. There is no difference between the Windows version and the Linux version in terms of component operation. If you want to know a little more about the procedure for executing the sample component in the Linux environment, see the 1.2 series explanation page below. If you read the component path, the execution procedure is the same for 2.0 series.

Installation of OpenCV sample components

OpenCV's C ++ sample components do not provide a deb package for installation. We provide a script to generate a deb package from the source, so please build and install it.

Installation example of OpenCV4.5.4

This is an example of building and installing the OpenCV main unit of version 4.5.4 and the extension module group (opencv_contrib) together.

  • First, comment in the following deb-src line in /etc/apt/sources.list.

 $ sudo vi /etc/apt/sources.list
      :
 deb-src http://jp.archive.ubuntu.com/ubuntu/ *** universe
    or
 deb-src http://us.archive.ubuntu.com/ubuntu/ *** universe

  • The installation of OpenCV is completed by executing the following command.

 sudo apt build-dep opencv
 wget https://github.com/opencv/opencv/archive/refs/tags/4.5.4.tar.gz -O opencv-4.5.4.tar.gz
 tar xvzf opencv-4.5.4.tar.gz
 wget https://github.com/opencv/opencv_contrib/archive/refs/tags/4.5.4.tar.gz -O opencv_contrib-4.5.4.tar.gz
 tar xvzf opencv_contrib-4.5.4.tar.gz
 cd opencv-4.5.4
 mkdir build
 cd build
 cmake -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.5.4/modules -DBUILD_opencv_java=OFF ..
 make -j$(nproc)
 sudo make install
 sudo ldconfig

OpenCV sample component build procedure

Get the source ImageProcessing, build it, and generate a deb package.

 git clone https://github.com/OpenRTM/ImageProcessing
 cd ImageProcessing/opencv
 mkdir build
 cd build
 cmake ..
 ./build_linux_package.sh

This will generate imageprocessing_2.0.0_amd64.deb and install it.

 sudo dpkg -i imageprocessing_2.0.0_amd64.deb
 ls /usr/share/openrtm-2.0/components/c++/opencv-rtcs/
 Affine                       CameraViewer     Edge         Histogram         ImageSubtraction  Perspective        Scale                 Template
 BackGroundSubtractionSimple  Chromakey        Findcontour  Hough             ObjectTracking    RockPaperScissors  Sepia                 Translate
 Binarization                 DilationErosion  Flip         ImageCalibration  OpenCVCamera      Rotate             SubtractCaptureImage  rtc.conf

An executable file (*** Comp) is installed under each sample directory, so please try it.

Precautions when CMake in an environment where 1.2 series and 2.0 series coexist

The C ++ sample components have been regenerated so that they can be built mostly with CMake.
Let's take ConsoleIn as an example.

In the coexistence environment of 1.2 series and 2.0 series, OpenRTMConfig.cmake is installed in the following two places. For this reason, the OpenRTMConfig.cmake found earlier is used.

 /usr/lib/x86_64-linux-gnu/openrtm-2.0/cmake/OpenRTMConfig.cmake
 /usr/lib/x86_64-linux-gnu/openrtm-1.2/cmake/OpenRTMConfig.cmake

In this environment, try running ConsoleIn cmake.

 git clone https://github.com/OpenRTM/OpenRTM-aist
 cd OpenRTM-aist/examples/ConsoleIn/
 mkdir build
 cd build
 cmake ..
      :
 -- OpenRTMConfig.cmake 2.0.0 found.

In 2.0 series OpenRTMConfig.cmake, the version number is output. The version number is not output in 1.2 series.
If you want to build with 1.2 series, specify OpenRTM_DIR as follows in the cmake option.

 cmake -DOpenRTM_DIR=/usr/lib/x86_64-linux-gnu/openrtm-1.2/cmake ..
    :
 -- OpenRTMConfig.cmake found.

Build from the source code

If you want to change the source of OpenRTM-aist itself and use it, you can get the source code of OpenRTM-aist and build it.

Build with Docker

I will introduce the procedure to build in the environment where only the minimum library required for OpenRTM-aist source build is installed using Dockerfile.
I use the docker build command to generate a Docker image, but it is recommended because it can be built in a clean environment every time.

If you are using Docker for the first time, please install it as follows. If you have an Ubuntu desktop environment, the docker.io package is probably provided.

 sudo apt install docker.io

  • Reference:Installation if the docker.io package is not provided
    • Manually get the GPG key of Docker, write the repository information, and install docker-ce.
    • When I built aarch64 environment with ubuntu-20.04-server-cloudimg-arm64.img on QEMU, I installed it by the following procedure.
       sudo apt install apt-transport-https ca-certificates curl software-properties-common
       curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
       sudo add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" 
       sudo apt update
       sudo apt install docker-ce

Build C ++ source

The OpenRTM-aist 2.0 series source includes Dockerfile for Ubuntu18.04, 20.04 and 22.04.

 OpenRTM-aist/scripts/ubuntu_1804/Dockerfile
 OpenRTM-aist/scripts/ubuntu_2004/Dockerfile
 OpenRTM-aist/scripts/ubuntu_2204/Dockerfile

The build procedure is as follows. This is a build example for Ubuntu 20.04. 
Here, the latest OpenRTM-aist source is obtained from GitHub, but you can do the same procedure for building the modified source.

 git clone https://github.com/OpenRTM/OpenRTM-aist
 sudo docker build -t test -f OpenRTM-aist/scripts/ubuntu_2004/Dockerfile .

If the build finishes without error, you can see that the Docker image named test specified by the -t option has been generated.

 sudo docker images
 REPOSITORY       TAG           IMAGE ID          CREATED           SIZE
 test             latest        0bc00f471b64      27 seconds ago    1.52GB

If you modify the source and repeat until the build passes, many images <none> will be generated. You can delete by specifying IMAGE ID with docker rmi, but if you want to delete all at once, it is convenient to execute the following command.

 sudo docker rmi $(sudo docker images -f dangling=true -q)

About Docker image "openrtm/develop-rtm"

The first line of the Dockerfile used in the source build looks like this for Ubuntu 18.04, 20.04 and 22.04 respectively, and uses the image with this name uploaded to the Docker hub.

 FROM openrtm/devel-rtm:ubuntu18.04
 FROM openrtm/devel-rtm:ubuntu20.04
 FROM openrtm/devel-rtm:ubuntu22.04

These images are generated from the Docierfile.devel-rtm below. fluent-bit, ROS and ROS2 are installed.
  • For Ubuntu 18.04:dashing、melodic
  • For Ubuntu 20.04:foxy、noetic
  • For Ubuntu 22.04:humble

 OpenRTM-aist/scripts/ubuntu_1804/Dockerfile.devel-rtm
 OpenRTM-aist/scripts/ubuntu_2004/Dockerfile.devel-rtm
 OpenRTM-aist/scripts/ubuntu_2204/Dockerfile.devel-rtm

Script that batch processes up to deb package creation with Docker

The script introduced here is used when creating the deb package for the release of OpenRTM-aist.
If you want to modify and install the OpenRTM-aist source, you can easily try it with the deb package.

This script performs from source build to deb package generation with Docker, and performs the process of copying the deb package that is the deliverable from the Docker container to the host side at once.

The procedure for creating a deb package for Ubuntu 20.04 is as follows.

 git clone https://github.com/n-kawauchi/RTM-src-pkgs-docker-build
 cd RTM-src-pkgs-docker-build/ubuntu_2004/
 sh build-cxx.sh
 ls -l
 drwxr-xr-x  2 root    root    4096 Jun 30 15:53 cxx-deb-pkgs/

The deb package of the deliverable is output under cxx-deb-pkgs. Since the owner is root, it is easier to access if you change it to the execution user.
Since we are using a Docker image with ROS installed, a package for ROS (openrtm2-ros * -tp) will also be generated.

 ls cxx-deb-pkgs/
 openrtm2-dev_2.0.0-0_amd64.deb        openrtm2-ros-tp_2.0.0-0_amd64.deb     openrtm2_2.0.0-0_amd64.buildinfo
 openrtm2-doc_2.0.0-0_all.deb          openrtm2-ros2-tp_2.0.0-0_amd64.deb    openrtm2_2.0.0-0_amd64.changes
 openrtm2-example_2.0.0-0_amd64.deb    openrtm2_2.0.0-0.dsc                  openrtm2_2.0.0-0_amd64.deb
 openrtm2-idl_2.0.0-0_amd64.deb        openrtm2_2.0.0-0.tar.gz

(※)Running this script in an amd64 environment will generate a deb package for amd64, and running it in an aarch64 environment will generate a deb package for arm64.

If you want to modify and install the OpenRTM-aist source, comment out the following part of the build-cxx.sh script, place the OpenRTM-aist source in the same directory as build-cxx.sh, and execute it.

 #----- OpenRTM-aist
 echo "${password}" | sudo -S rm -rf ${TARGET}-*
 #rm -rf OpenRTM-aist    <-- Comment out
 #git clone https://github.com/OpenRTM/OpenRTM-aist    <-- Comment out

Build Python source

OpenRTM-aist-Python source does not include Dockerfile. The following Dockerfile is used when creating the deb package for the release of OpenRTM-aist-Python.

As with C ++ source build, I will introduce a script that performs from source build to deb package generation with Docker, and the process of copying the deb package that is the deliverable from the Docker container to the host side at once.

The procedure for creating a deb package for Ubuntu 20.04 is as follows.

 git clone https://github.com/n-kawauchi/RTM-src-pkgs-docker-build
 cd RTM-src-pkgs-docker-build/ubuntu_2004/
 sh build-python.sh

The deb package of the deliverable is output under python-deb-pkgs, and the source package is output under python-src-pkgs.

 ls python-deb-pkgs/
 openrtm2-python3-doc_2.0.0-0_all.deb 
 openrtm2-python3-example_2.0.0-0_amd64.deb     openrtm2-python3_2.0.0-0_amd64.changes
 openrtm2-python3_2.0.0-0.dsc                   openrtm2-python3_2.0.0-0_amd64.deb

 ls python-src-pkgs/
 OpenRTM-aist-Python-2.0.0.tar.gz  OpenRTM-aist-Python-2.0.0.zip  

If you want to modify and install the OpenRTM-aist-Python source, comment out the following part of the build-python.sh script. Place the OpenRTM-aist-Python source in the same directory as build-python.sh and Dockerfile-python-deb and execute it.

 #----- OpenRTM-aist-Python
 echo "${password}" | sudo -S rm -rf ${TARGET}-*
 #-------- Comment out
 #rm -rf OpenRTM-aist-Python
 #git clone https://github.com/OpenRTM/OpenRTM-aist-Python
 #cd OpenRTM-aist-Python
 #git checkout ${BRANCH}
 #cd -
 #-------- Comment out

Build Java source

OpenRTM-aist-Java source does not include Dockerfile. The following Dockerfile is used when creating the deb package for the release of OpenRTM-aist-Java.

As with C ++ source build, I will introduce a script that performs from source build to deb package generation with Docker, and the process of copying the deb package that is the deliverable from the Docker container to the host side at once.

The procedure for creating a deb package for Ubuntu 20.04 is as follows.

 git clone https://github.com/n-kawauchi/RTM-src-pkgs-docker-build
 cd RTM-src-pkgs-docker-build/ubuntu_2004/
 sh build-java.sh

The deb package of the deliverable is output under java-deb-pkgs, and the source package is output under java-src-pkgs.

 ls java-deb-pkgs/
 openrtm2-java-doc_2.0.0-0_all.deb        openrtm2-java_2.0.0-0_amd64.buildinfo
 openrtm2-java-example_2.0.0-0_amd64.deb  openrtm2-java_2.0.0-0_amd64.changes
 openrtm2-java_2.0.0-0.dsc                openrtm2-java_2.0.0-0_amd64.deb

 ls java-src-pkgs/
 OpenRTM-aist-Java-2.0.0-jar.zip  OpenRTM-aist-Java-2.0.0.zip
 OpenRTM-aist-Java-2.0.0.tar.gz  

If you want to modify and install the OpenRTM-aist-Python source, comment out the following part of the build-python.sh script. Place the OpenRTM-aist-Python source in the same directory as build-python.sh and Dockerfile-python-deb and execute it.

 #----- OpenRTM-aist-Java
 echo "${password}" | sudo -S rm -rf ${TARGET}-*
 #-------- Comment out
 #rm -rf OpenRTM-aist-Java
 #git clone https://github.com/OpenRTM/OpenRTM-aist-Java
 #cd OpenRTM-aist-Java
 #git checkout ${BRANCH}
 #cd -
 #-------- Comment out

What the installer does

Package details

The contents of each package are as follows.

openrtm2

openrtm2 contains runtime libraries and commands.

  • Command
     /usr/bin/rtcd2
     /usr/bin/rtcprof2
     /usr/bin/rtm2-config
     /usr/bin/rtm2-naming
  • Sample configuration file
     /usr/etc/logger/rtc.fluentbit_stream.conf
     /usr/etc/rtc.conf.sample2
     /usr/etc/rtc.names.ssl.conf
     /usr/etc/ssl/rtc.ssl.conf
     /usr/lib/x86_64-linux-gnu/pkgconfig/openrtm2.pc
  • Libraries, etc.
     /usr/lib/x86_64-linux-gnu/libRTC2.a
     /usr/lib/x86_64-linux-gnu/libRTC2.so.2.0.0
     ...
     /usr/lib/x86_64-linux-gnu/librtmCamera2.so
     /usr/lib/x86_64-linux-gnu/librtmManipulator2.so
     ...
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/ec/LogicalTimeTriggeredEC.so
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/local_service/FileNameservice.so
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/logger/FluentBit.so
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/sdo/ComponentObserverConsumer.so
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/sdo/ExtendedFsmServiceProvider.so
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/sdo/LoggerConsumer.so
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/ssl/SSLTransport.so

openrtm2-dev

openrtm2-dev contains the commands and headers needed for development.

  • Command
     /usr/bin/rtm2-skelwrapper
  • Header files
     /usr/include/coil-2.0/coil/Affinity.h
     /usr/include/coil-2.0/coil/Async.h
     ...
     /usr/include/openrtm-2.0/rtm/BufferBase.h
     /usr/include/openrtm-2.0/rtm/BufferStatus.h
     ...
     /usr/include/openrtm-2.0/rtm/config_rtc.h
     /usr/include/openrtm-2.0/rtm/ext/FastRTPSMessageInfo.h
     /usr/include/openrtm-2.0/rtm/ext/ROSMessageInfo.h
     /usr/include/openrtm-2.0/rtm/idl/BasicDataType.hh 
     /usr/include/openrtm-2.0/rtm/idl/BasicDataTypeSkel.h
     ...
     /usr/include/openrtm-2.0/rtm/idl/SharedMemoryStub.h
     /usr/include/openrtm-2.0/rtm/version.h
  • Libraries and others
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/cmake/OpenRTMConfig.cmake
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/cmake/OpenRTMConfigVersion.cmake
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/py_helper/skel_wrapper.py
     /usr/lib/x86_64-linux-gnu/openrtm-2.0/py_helper/yat.py

openrtm2-example

openrtm2-example contains samples for standalone RTC and loadable RTC respectively.

  • Sample (Stand alone RTC)
     /usr/share/openrtm-2.0/components/c++/examples/CompositeComp
     /usr/share/openrtm-2.0/components/c++/examples/ConfigSampleComp
     ...
     /usr/share/openrtm-2.0/components/c++/examples/rtc.conf
  • Sample (Loadable RTC)
     /usr/share/openrtm-2.0/components/c++/examples/rtc/ConfigSample.so
     /usr/share/openrtm-2.0/components/c++/examples/rtc/ConsoleIn.so
     ...
     /usr/share/openrtm-2.0/components/c++/examples/rtc/Throughput.so

openrtm2-ros-tp

ROS communication function library is installed.

 /usr/lib/x86_64-linux-gnu/openrtm-2.0/transport/ROSTransport.so

openrtm2-ros2-tp

ROS2 communication function library is installed.

 /usr/lib/x86_64-linux-gnu/openrtm-2.0/transport/FastRTPSTransport.so
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/transport/ROS2Transport.so

openrtm2-doc

openrtm2-doc contains Japanese and English class references and IDL interface definition references.

  • Class Reference (Japanese)
     /usr/share/openrtm-2.0/doc/c++/ClassReference/html/BufferBase_8h.html
     /usr/share/openrtm-2.0/doc/c++/ClassReference/html/BufferBase_8h__dep__incl.map
     ...
     /usr/share/openrtm-2.0/doc/c++/ClassReference/html/structSDOPackage_1_1Organization__impl_1_1sdo__id.html
  • IDL Reference (Japanese)
     /usr/share/openrtm-2.0/doc/idl/IDLReference/html/BasicDataType_8idl.html
     /usr/share/openrtm-2.0/doc/idl/IDLReference/html/BasicDataType_8idl_dep_incl.map
     ...
     /usr/share/openrtm-2.0/doc/idl/IDLReference/html/unionSDOPackage_1_1Numeric.html
  • Class Reference (English)
     /usr/share/openrtm-2.0/doc/c++/ClassReference-en/html/BufferBase_8h.html
     /usr/share/openrtm-2.0/doc/c++/ClassReference-en/html/BufferBase_8h__dep__incl.map
     ...
     /usr/share/openrtm-2.0/doc/C++/ClassReference-en/html/version_8h_source.html
  • IDL Reference (English)
     /usr/share/openrtm-2.0/doc/idl/IDLReference-en/html/BasicDataType_8idl.html
     /usr/share/openrtm-2.0/doc/idl/IDLReference-en/html/BasicDataType_8idl__dep__incl.map
     ...
     /usr/share/openrtm-2.0/doc/idl/IDLReference-en/html/unionSDOPackage_1_1Numeric.html

openrtm2-idl

  • idl files etc.
     /etc/profile.d/openrtm2-idl.sh
     /usr/include/openrtm-2.0/rtm/idl/BasicDataType.idl
     /usr/include/openrtm-2.0/rtm/idl/CameraCommonInterface.idl
     ...
     /usr/include/openrtm-2.0/rtm/idl/SharedMemory.idl
     /usr/share/openrtm-2.0/idl/BasicDataType.idl
     /usr/share/openrtm-2.0/idl/CameraCommonInterface.idl
     ...
     /usr/share/openrtm-2.0/idl/SharedMemory.idl

openrtm2-python3

  • Command
     /usr/bin/rtcd2_python3
     /usr/bin/rtcprof2_python3
  • Python module of OpenRTM-aist body
     /usr/lib/python3/dist-packages/OpenRTM_aist/* 
  • Python search path file for OpenRTM-aist
     /usr/lib/python3/dist-packages/OpenRTM-aist.pth 
  • utility
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/__init__.py
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtc-template/*
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtcd/*
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtcprof/*
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtm-naming/*

openrtm2-python3-example

 /usr/share/openrtm-2.0/components/python3/__init__.py
 /usr/share/openrtm-2.0/components/python3/component.conf
 /usr/share/openrtm-2.0/components/python3/rtcd.conf
 /usr/share/openrtm-2.0/components/python3/AutoControl/*
 /usr/share/openrtm-2.0/components/python3/AutoTest/*
 /usr/share/openrtm-2.0/components/python3/CSPSample/*
 /usr/share/openrtm-2.0/components/python3/CSPSelectSample/*
 /usr/share/openrtm-2.0/components/python3/CSPStaticFsmSample/*
 /usr/share/openrtm-2.0/components/python3/Composite/*
 /usr/share/openrtm-2.0/components/python3/ConfigSample/*
 /usr/share/openrtm-2.0/components/python3/ExtTrigger/*
 /usr/share/openrtm-2.0/components/python3/MobileRobotCanvas/*
 /usr/share/openrtm-2.0/components/python3/SeqIO/*
 /usr/share/openrtm-2.0/components/python3/Serializer/*
 /usr/share/openrtm-2.0/components/python3/SimpleIO/*
 /usr/share/openrtm-2.0/components/python3/SimpleService/*
 /usr/share/openrtm-2.0/components/python3/Slider_and_Motor/*
 /usr/share/openrtm-2.0/components/python3/Throughput/*
 /usr/share/openrtm-2.0/components/python3/TkJoyStick/
 /usr/share/openrtm-2.0/components/python3/TkLRFViewer/*

openrtm2-python3-doc

Install English/Japanese class reference.

  • Class reference
     /usr/share/openrtm-2.0/doc/python3/ClassReference-en/html/_async_8py.html
     /usr/share/openrtm-2.0/doc/python3/ClassReference-en/html/_buffer_base_8py.html
     ...
     /usr/share/openrtm-2.0/doc/python3/ClassReference-jp/html/_async_8py.html
     /usr/share/openrtm-2.0/doc/python3/ClassReference-jp/html/_buffer_base_8py.html
     /usr/share/openrtm-2.0/doc/python3/ClassReference-jp/html/_buffer_status_8py.html
     ...

openrtm2-java

 /etc/profile.d/openrtm-java.sh
 /usr/bin/rtcd2_java
 /usr/bin/rtcprof2_java
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/License.txt
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/LogicalTimeTriggeredEC.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/NameserviceFile.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/OpenRTM-aist-2.0.0.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/commons-cli-1.1.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/jna-4.2.2.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/jna-platform-4.2.2.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/rtcd.jar
 /usr/lib/x86_64-linux-gnu/openrtm-2.0/jar/rtcprof.jar

openrtm2-java-example

Java version sample RTC, Class file, source file, startup script

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

openrtm2-java-doc

openrtm2-java-doc contains Japanese and English class references.

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

openrtp2

In openrtp installation, since so many files are installed, the listing is not made. Depend on your needs, use the following command.

 $ dpkg -L openrtp2

Installing to Raspberry Pi OS

Supported version

The version of Raspbian for which packages are currently available is

  • Buster (32bit)
  • Bullseye (32bit / 64bit)

SD card preparation

It is convenient to use Raspberry Pi Imager, a tool that can be downloaded from the official website, to write the OS image.
https://www.raspberrypi.com/software/

You can download and write by selecting the following.
  • Debian GNU/Linux version (Latest / Legacy)
  • With or without GUI (Desktop / Lite)
  • system architecture (32-bit / 64-bit)

Changes in 2.0 series

C++ can coexist in 1.2 series and 2.0 series. However, 1.2 series can only be installed on Buster(32bit).
With this support, the following changes have been made regarding installation.

  • Changed the name of the 2.0 series deb package
  • Python and Java cannot coexist in 1.2 series and 2.0 series
    • Use the bulk install script to automatically uninstall different installed versions
  • Separated 1.2 series and 2.0 series batch installation scripts
    • 1.2 series installation : pkg_install_raspbian.sh
    • 2.0 series installation : openrtm2_install_raspbian.sh

Installation script (both 1.2 series and 2.0 series) supports batch processing from download to installation.

Bulk installation script

To install 2.0 series, paste the following into the shell prompt and execute it. C ++ version, Python version, Java version, rtshell, JDK8(32-bit environment only) will be installed. Scripts are not saved locally.  
※In a 32-bit environment, even if multiple versions of Java are installed when executing a script, it will switch to using Java8.
※See below for 64-bit environments.

 $ bash <(curl -s https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/openrtm2_install_raspbian.sh)

This will install the following packages: (For 32bit version)

 $ dpkg -l | grep openrt
 ii  openrtm2:armhf                     2.0.1-0                         armhf        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-dev:armhf               2.0.1-0                         armhf        OpenRTM-aist headers for development
 ii  openrtm2-doc                         2.0.1-0                         all          Documentation for openrtm2
 ii  openrtm2-example:armhf        2.0.1-0                         armhf        OpenRTM-aist examples
 ii  openrtm2-idl:armhf                 2.0.1-0                         armhf        OpenRTM-aist idls for development
 ii  openrtm2-java:armhf               2.0.1-0                        armhf        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-java-doc                  2.0.1-0                        all          Documentation for openrtm2-java
 ii  openrtm2-java-example:armhf  2.0.1-0                       armhf        OpenRTM-aist-Java examples
 ii  openrtm2-python3                  2.0.1-0                         armhf        OpenRTM-aist, RT-Middleware distributed by AIST
 ii  openrtm2-python3-doc            2.0.1-0                         all          Documentation for openrtm2-python3
 ii  openrtm2-python3-example     2.0.1-0                         armhf        OpenRTM-aist-Python examples

 $ pip3 list | grep aist
 OpenRTM-aist-Python 2.0.1
 rtctree-aist        4.2.3
 rtshell-aist         4.2.9
 rtsprofile-aist     4.1.5

The package details

The contents of each package are as follows.

openrtm2

openrtm2 contains a runtime library and a set of commands.

  • Command
     /usr/bin/rtcd2
     /usr/bin/rtcprof2
     /usr/bin/rtm2-config
     /usr/bin/rtm2-naming
  • Sample configuration file
     /usr/etc/rtc.conf.sample2
     /usr/etc/rtc.names.ssl.conf
     /usr/etc/ssl/rtc.ssl.conf
     /usr/lib/arm-linux-gnueabihf/pkgconfig/openrtm2.pc
  • Libraries, etc.
     /usr/lib/arm-linux-gnueabihf/libRTC2.a
     /usr/lib/arm-linux-gnueabihf/libRTC2.so.2.0.0
     ...
     /usr/lib/arm-linux-gnueabihf/librtmCamera2.so
     /usr/lib/arm-linux-gnueabihf/librtmManipulator2.so
    ...
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/ec/LogicalTimeTriggeredEC.so
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/local_service/FileNameservice.so
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/sdo/ComponentObserverConsumer.so
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/sdo/ExtendedFsmServiceProvider.so
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/sdo/LoggerConsumer.so
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/ssl/SSLTransport.so
     ...
     /usr/lib/arm-linux-gnueabihf/openrtm-1.2/sdo/LoggerConsumer.so.0.0.0
     /usr/lib/libfluent-bit.so

openrtm2-dev

contains the commands and headers needed for development.

  • Command
     /usr/bin/rtm2-skelwrapper
  • Header files
     /usr/include/coil-2.0/coil/Affinity.h
     /usr/include/coil-2.0/coil/Async.h
     ...
     /usr/include/openrtm-2.0/rtm/BufferBase.h
     /usr/include/openrtm-2.0/rtm/BufferStatus.h
     ...
     /usr/include/openrtm-2.0/rtm/config_rtc.h
     /usr/include/openrtm-2.0/rtm/idl/BasicDataType.hh 
     /usr/include/openrtm-2.0/rtm/idl/BasicDataTypeSkel.h
     ...
     /usr/include/openrtm-2.0/rtm/idl/SharedMemoryStub.h
     /usr/include/openrtm-2.0/rtm/version.h
  • Libraries and others
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/cmake/OpenRTMConfig.cmake
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/cmake/OpenRTMConfigVersion.cmake
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/py_helper/skel_wrapper.py
     /usr/lib/arm-linux-gnueabihf/openrtm-2.0/py_helper/yat.py

openrtm2-idl

  • idl files etc.
     /etc/profile.d/openrtm2-idl.sh
     /usr/include/openrtm-2.0/rtm/idl/BasicDataType.idl
     /usr/include/openrtm-2.0/rtm/idl/CameraCommonInterface.idl
     ...
     /usr/include/openrtm-2.0/rtm/idl/SharedMemory.idl
     /usr/share/openrtm-2.0/idl/BasicDataType.idl
     /usr/share/openrtm-2.0/idl/CameraCommonInterface.idl
     ...
     /usr/share/openrtm-2.0/idl/SharedMemory.idl

openrtm2-example

contains samples for standalone RTC and loadable RTC respectively.

  • Sample (Stand alone RTC)
     /usr/share/openrtm-2.0/components/c++/examples/CompositeComp
     /usr/share/openrtm-2.0/components/c++/examples/ConfigSampleComp
     ...
     /usr/share/openrtm-2.0/components/c++/examples/rtc.conf
  • Sample (Loadable RTC)
     /usr/share/openrtm-2.0/components/c++/examples/rtc/ConfigSample.so
     /usr/share/openrtm-2.0/components/c++/examples/rtc/ConsoleIn.so
     ...
     /usr/share/openrtm-2.0/components/c++/examples/rtc/Throughput.so

openrtm2-doc

contains Japanese and English class references and IDL interface definition references.

  • Class Reference (Japanese)
     /usr/share/openrtm-2.0/doc/c++/ClassReference/html/BufferBase_8h.html
     /usr/share/openrtm-2.0/doc/c++/ClassReference/html/BufferBase_8h__dep__incl.map
     ...
     /usr/share/openrtm-2.0/doc/c++/ClassReference/html/structSDOPackage_1_1Organization__impl_1_1sdo__id.html
  • IDL Reference (Japanese)
     /usr/share/openrtm-2.0/doc/idl/IDLReference/html/BasicDataType_8idl.html
     /usr/share/openrtm-2.0/doc/idl/IDLReference/html/BasicDataType_8idl_dep_incl.map
     ...
     /usr/share/openrtm-2.0/doc/idl/IDLReference/html/unionSDOPackage_1_1Numeric.html
  • Class Reference(English)
     /usr/share/openrtm-2.0/doc/c++/ClassReference-en/html/BufferBase_8h.html
     /usr/share/openrtm-2.0/doc/c++/ClassReference-en/html/BufferBase_8h__dep__incl.map
     ...
     /usr/share/openrtm-2.0/doc/C++/ClassReference-en/html/version_8h_source.html
  • IDL Reference(English)
     /usr/share/openrtm-2.0/doc/idl/IDLReference-en/html/BasicDataType_8idl.html
     /usr/share/openrtm-2.0/doc/idl/IDLReference-en/html/BasicDataType_8idl__dep__incl.map
     ...
     /usr/share/openrtm-2.0/doc/idl/IDLReference-en/html/unionSDOPackage_1_1Numeric.html

openrtm2-python3

  • Command
     /usr/bin/rtcd2_python3
     /usr/bin/rtcprof2_python3
  • Python module of OpenRTM-aist body
     /usr/lib/python3/dist-packages/OpenRTM_aist/* 
  • Python search path file for OpenRTM-aist
     /usr/lib/python3/dist-packages/OpenRTM-aist.pth 
  • utility
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/__init__.py
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtc-template/*
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtcd/*
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtcprof/*
     /usr/lib/python3/dist-packages/OpenRTM_aist/utils/rtm-naming/*

openrtm2-python3-example

 /usr/share/openrtm-2.0/components/python3/__init__.py
 /usr/share/openrtm-2.0/components/python3/component.conf
 /usr/share/openrtm-2.0/components/python3/rtcd.conf
 /usr/share/openrtm-2.0/components/python3/AutoControl/*
 /usr/share/openrtm-2.0/components/python3/AutoTest/*
 /usr/share/openrtm-2.0/components/python3/CSPSample/*
 /usr/share/openrtm-2.0/components/python3/CSPSelectSample/*
 /usr/share/openrtm-2.0/components/python3/CSPStaticFsmSample/*
 /usr/share/openrtm-2.0/components/python3/Composite/*
 /usr/share/openrtm-2.0/components/python3/ConfigSample/*
 /usr/share/openrtm-2.0/components/python3/ExtTrigger/*
 /usr/share/openrtm-2.0/components/python3/MobileRobotCanvas/*
 /usr/share/openrtm-2.0/components/python3/SeqIO/*
 /usr/share/openrtm-2.0/components/python3/Serializer/*
 /usr/share/openrtm-2.0/components/python3/SimpleIO/*
 /usr/share/openrtm-2.0/components/python3/SimpleService/*
 /usr/share/openrtm-2.0/components/python3/Slider_and_Motor/*
 /usr/share/openrtm-2.0/components/python3/Throughput/*
 /usr/share/openrtm-2.0/components/python3/TkJoyStick/
 /usr/share/openrtm-2.0/components/python3/TkLRFViewer/*

openrtm2-python3-doc

Install English/Japanese class reference.

  • Class reference
     /usr/share/openrtm-2.0/doc/python3/ClassReference-en/html/_async_8py.html
     /usr/share/openrtm-2.0/doc/python3/ClassReference-en/html/_buffer_base_8py.html
     ...
     /usr/share/openrtm-2.0/doc/python3/ClassReference-jp/html/_async_8py.html
     /usr/share/openrtm-2.0/doc/python3/ClassReference-jp/html/_buffer_base_8py.html
     /usr/share/openrtm-2.0/doc/python3/ClassReference-jp/html/_buffer_status_8py.html

openrtm2-java

 /etc/profile.d/openrtm-java.sh
 /usr/bin/rtcd2_java
 /usr/bin/rtcprof2_java
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/License.txt
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/LogicalTimeTriggeredEC.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/NameserviceFile.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/OpenRTM-aist-2.0.1.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/commons-cli-1.1.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/jna-4.2.2.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/jna-platform-4.2.2.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/rtcd.jar
 /usr/lib/arm-linux-gnueabihf/openrtm-2.0/jar/rtcprof.jar

openrtm2-java-example

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

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