+
Skip to content

fkie/iop_core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository lets your ROS software communicate with IOP services. You can find an overview of all supported services at doc/other_packages.md.

IOP package Noetic Jazzy
iop_core CI CI
iop_msgs noetic jazzy
iop_platform noetic jazzy
iop_sensing noetic jazzy
iop_sensing_clients noetic jazzy
iop_gui noetic jazzy
iop_jaus_manipulator noetic
iop_jaus_manipulator_clients noetic
iop_jaus_mobility noetic jazzy
iop_jaus_mobility_clients noetic jazzy
iop_jaus_sensing noetic jazzy
iop_jaus_sensing_clients noetic jazzy
iop_jaus_ugv noetic jazzy
iop_jaus_ugv_clients noetic jazzy
iop_examples noetic jazzy
iop_node_manager noetic jazzy
iop_wireshark_plugin noetic

Installation of the ROS/IOP Bridge

Install dependencies for JAUS Toolset

ROS/IOP Bridge uses JAUS Toolset (JTS) to generate basic C++ code from JSIDL definitions of JAUS. You find the JAUS Toolset desciption here. Currently only a part of sources of JTS is used. This part will build while you build the ROS/IOP Bridge sources. For successful build JTS needs follow external software:

Install OpenJKD:

sudo apt-get install default-jdk -y

If you prefer Oracle Java, see here

Set up your ROS environment

Make sure, that your ROS workspace is set up correctly:

For easier download of bridge packages install vcstool:

sudo apt-get install vcstool -y

Download the ROS/IOP-Bridge packages

The sourcecode of the ROS/IOP-Bridge is splitted into different Git repositories. Depending on your configuration you need a different set of packages. An overview of existing packages you find here

For download the ROS/IOP-Bridge sources we use the vcstool:

Merge the iop.rosinstall file and fetch code.

cd ros/
mkdir src/iop
vcs import --input https://raw.githubusercontent.com/fkie/iop_core/refs/heads/ros2/iop_robot.rosinstall src/iop

Install dependencies

Go to the root folder of your ROS workspace and type:

rosdep install --from-paths src --ignore-src

Build the sources

Go to the root folder of your ROS workspace and type:

colcon build --symlink-install

If some errors occur while JTS build regarding missing pthread and timer the libpthread and librt have to be included. This can be done by replacing LIBS=[] by LIBS=['-lpthread', '-lrt'] in jaustoolset/GUI/templates/Common/SConstruct

Additional Information

For convenient usage of ROS environment use the mas gui of fkie-multi-agent-suite. You can install it from https://github.com/fkie/fkie-multi-agent-suite.

On each host you run IOP components you need to start a Node Manager. There are two alternatives:

1. JTSNodeManager

This Node Manager is part of JausToolSet and included in iop_core. You can start this Node Manager with following command:

bash rosrun jaustoolset jaus_node_manager.sh start

To exit the script press CTRL+C or type bash rosrun jaustoolset jaus_node_manager.sh stop in a new terminal window. See example below how to integrate the JTS-nodeManagerinto launch-file.

2. IOPNodeManager

This Node Manager is written in Python and is an alternative development to JTSNodeManager. You need to install it as separate package from https://github.com/fkie/iop_node_manager using

wstool merge -t src/iop https://raw.githubusercontent.com/fkie/iop_node_manager/master/iop_node_manager.rosinstall
wstool update -t src/iop
catkin build

Example

For a simple example with turtlesim see fkie_iop_cfg_sim_turtle package.

You find other examples in iop_examples repository.


About

The packages required by all other IOP ROS packages

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载