Download
latest Releases : 2.0.0-RELESE
2.0.0-RELESE | Download page |
Number of Projects
RT-Component | 153.5 |
RT-Middleware | 35 |
Tools | 22 |
Documentation | 2 |
Choreonoid
Motion editor/Dynamics simulator
OpenHRP3
Dynamics simulator
OpenRTP
Integrated Development Platform
AIST RTC collection
RT-Components collection by AIST
TORK
Tokyo Opensource Robotics Association
DAQ-Middleware
Middleware for DAQ (Data Aquisition) by KEK
RT-Component FAQ.
Naming rules for RT-Component instances
The default rule used to name RT-Component isntances is:
The type name is specified in the component profile (usually specified in the component's source file). The index is used for components instantiated using the same type in the same manager.
If components are instantiated using the same type but separate managers, they may use the same instance name on the name server. The most recent component that registers will overwrite any previous registrations. You can avoid this by:How can I use non-standard data types for InPort or OutPort
Usually, in OpenRTM-aist, you can use a large number of data types defined in IDL files supplied with OpenRTM-aist, such as TimedShort, TimedDoubleSeq and RangeData.
When you want to define and use data types other than these for your InPorts and OutPorts, you need to define them in your own IDL, and compile and link that when you compile the components.
Let's assume we want use a data type to store images, which has size (width, height), depth, and image data as members (note that OpenRTM-aist supplies a CameraImage data type). Define the following data type in your IDL:
The Time type is a type for timestamps that is defined in OpenRTM-aist. You may not need to include it but it is typically a good idea. Save this to a file named TimedImage.idl. Put this file in the directory where the component source is located. Next, generate the component with rtc-template. At that time, specify this IDL file to --consumer-idl option.
In this example, we use the TimedImage type defined in TimedImage.idl as the data type of OutPort. Let's compile the generated code.
As a result, TimedImage.idl is compiled by the IDL compiler and linked to the component. Usage of data in the component is the same as usual.
If you want use the same data type as this one in another component, please copy this IDL file and specify the file to consumer-idl option of rtc-template in a similar way.
Now you can connect components using this data type.
Check the following points when it doesn't work.
1. Is TimedImage.idl correct?
2. Is there an entry related to the stub in the Makefile?
3. Is the stub.h included by foo.h? Is the type declared?
Sending more than 2MB via data ports
When data that exceeds 2MB is sent through data ports, it is necessary to specify this. In omniORB, the size that can be treated with the GIOP (General Inter-ORB Protocol) s 2097152B (2MB) by default. When data that exceeds this size is sent, the correct data cannot be sent because of the GIOP limitation. The maximum size can be changed:
A new Java project cannot be made with JDK6 (1.6)
JDK might not be able to be selected by the following dialogs being displayed when trying to make a new Java project.
In RTCBuilder project, it is necessary to specify JDK for the value of JRE of this dialog (Java execution environment). Enable the selection of JDK in the following way. Click the "JRE is composed" link in the JRE intraframe as shown in the above figure.
Push the "Addition" button.
Select the standard VM and click Next. The dialog for adding a JRE is displayed.
Click the "Directory" button, and select the path to JDK6. (Typically, C:\Program Files\Java\jdk1.6.0_XX)
The following dialog will be displayed if the path is correct.
Return to the "Installed JRE" dialog (with JDK added), and change the value of the JRE assumed to be active as shown in the figure below to JDK, and click the "OK" button.
Building a project that exists in an arbitrary folder with Ant
This explains how to set a new class path not set in RTM_JAVA_ROOT.
Open the Ant settings dialog in Eclipse.
Right-click on build_<CompName>.xml in the Package Explorer, and select "Execution">"Ant build".
Set the class path.
Select the class path tab.
Select "User entry" and click "External JAR addition."
Specify the path of the target JAR library in the dialog. It will appear in the Ant settings dialog.
Important note
It is necessary to set RTM_JAVA_ROOT (however, there is no problem even if a dummy value is set). Please do not delete the RTM_JAVA_ROOT variable when it is not needed. An error occurs in the build when RTM_JAVA_ROOT is not set. Moreover, RTM_JAVA_ROOT should indicate the directory of the name of "jar".