[ros-users] Using orocos_toolchain_ros with custom message types

Stefan Kohlbrecher stefan.kohlbrecher at googlemail.com
Tue Oct 12 10:27:11 UTC 2010


Hi Ruben,

thanks for the hint, I indeed managed to not get the typekit loaded,
due to a wrong path I provided. Just fixed it and tested my custom In-
and Outport. Seems to work like a charm so far.

regards,
Stefan

2010/10/12 Ruben Smits <ruben.smits at mech.kuleuven.be>:
> On Tuesday 12 October 2010 09:37:49 Stefan Kohlbrecher wrote:
>> Hi everyone (and especially Ruben I guess :) ),
>>
>> I'm in the process of testing the new Orocos-ROS connectivity.
>> Specifically, I'm currently trying to generate orocos types from
>> custom ROS messages.
>> So what I've done so far is:
>>
>>
>> -Created a package brtest_msgs, with a custom test ROS message
>> "BrTest.msg" containing the following:
>> time timestamp
>> int64 int1
>> int64 int2
>>
>>
>>
>> -Created a package "rtt_ros_integration_brtest_msgs" analogous to
>> "rtt_ros_integration_std_msgs" intended to generate the typekit and
>> transport plugins for my "brtest" messages. It currently looks like
>> the following:
>>
>> manifest.xml:
>> <package>
>>   <description brief="rtt_ros_integration_br_msgs">
>>
>>      rtt_ros_integration_br_msgs
>>
>>   </description>
>>   <author>stefan</author>
>>   <license>BSD</license>
>>   <review status="unreviewed" notes=""/>
>>   <url>http://ros.org/wiki/rtt_ros_integration_br_msgs</url>
>>   <depend package="rtt_ros_integration_std_msgs"/>
>>   <depend package="roslib"/>
>>   <depend package="br_msgs"/>
>>
>>   <export>
>>     <cpp cflags="-I${prefix}/include"/>
>>   </export>
>>
>> </package>
>>
>>
>> CMakeLists.txt:
>>
>> cmake_minimum_required(VERSION 2.4.6)
>> include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
>>
>> set(ROS_BUILD_TYPE Debug)
>>
>> rosbuild_init()
>>
>>
>> #set the default path for built executables to the "bin" directory
>> set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
>> #set the default path for built libraries to the "lib" directory
>> set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
>>
>> rosbuild_include(rtt_ros_integration GenerateRTTtypekit)
>>
>> ros_generate_rtt_typekit(roslib)
>> ros_generate_rtt_typekit(br_msgs)
>>
>>
>>
>> I slightly modified the rtt_ros_integration_example so it also depends
>> on "rtt_ros_integration_brtest_msgs" and also load the typekit in
>> "/home/stefan/rosext/orocos_toolchain_ros/rtt_ros_integration_br_msgs/lib/o
>> rocos". If I use an In- or Outport with my custom message though, the
>> TaskBrowser shows it to me as "unknown_t". It also makes sense to me,
>> because without knowing much about the internal details, my custom
>> message depends on std_msgs and I guess this dependency isn't properly
>> represented in the copy&paste code I posted above. So I'm asking for
>> the proper way to do that.
>
> What does the TaskBrowser tell you when you type:
> .types
>
> does your type get listed? If not, try to execute the application with debug
> info either,
> export ORO_LOGLEVEL=7
> or append the deployer arguments with
> -ldebug
>
> and check whether your typekit gets loaded correctly.
>
> Ruben
>
>> Thanks in advance,
>> Stefan
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>



More information about the ros-users mailing list