Non-critical messaging between two PCs per ROS2 using DDS OpenSplice
What is available and what is installed, how is started:
Computer 1
1) Ubuntu 18.04 LTS
2) ROS2 Dashing
3) DDS Opensplice 69
4) The units are started through the console to the manual
5) In .bashrc it is written as follows:
export ROS_DOMAIN_ID=120
export RMW_IMPLEMENTATION=rmw_opensplice_cpp
source /opt/ros/dashing/setup.bash
Computer 2
1) Ubuntu 18.04 LTS
2) ROS2 Crystal
3) DDS Opensplice 69
4) The nodes are started via the following service:
[Unit]
Description="MyService"
[Service]
Environment="ROS_DOMAIN_ID=120"
Environment="LD_LIBRARY_PATH=/opt/project/install/lib:/home/rtp/SURTP/SURTP/install/can/lib:/opt/ros/crystal/lib:/home/rtp/SURTP/SURTP/install/marker_msgs/lib"
Environment="PYTHONPATH=/opt/project/install/lib/python3.6/site-packages:/opt/ros/crystal/lib/python3.6/site-packages/"
Environment="AMENT_PREFIX_PATH=/opt/project/install:/opt/ros/crystal:/home/rtp/SURTP/SURTP/install/can:/home/rtp/SURTP/SURTP/install/marker_msgs"
WorkingDirectory=/home/rtp/SURTP/SURTP/
Type=simple
ExecStart=/bin/bash /home/rtp/SURTP/SURTP/StartNode.bash
Restart=on-failure
[Install]
WantedBy=multi-user.target
On the first computer in the console I write ros2 topic list
Receive only two system topics
/parameter_events
/rosout
Although the second computer is running a node and publishing to topics. And the topics should be displayed more.
Starting a node on a computer (Computer 1). No error messages are output to console.
On the second computer, I run the ros2 topic list
I receive an error message:
Full Version Image
After on the second computer I tried to release the ros2 topic list
again
And I got the following output to the console:
Full Version Image
This time there were two system topics but with errors
Next I decided to try again to write the ros2 topic list
on the second computer. As a result, I got the names of the topics of the running node.
Full Version Image
As a result, after the third attempt I managed to get the name of the axe from the first computer. As a result, after the third attempt I managed to get the name of the axe from the first computer, it
/joydriver/privatejoy
But after entering the third command ros2 topic list
on the first computer, the following errors occurred:
Full Version Image
Result
The result of all the manipulations done is that from the computer one, I cannot see the axes of the node running on the computer two. But on computer two I see the axes of the remote node from computer one and the axes of the node running on computer two. Also on the computer two I can receive and display messages through the command ros2 topic joy_driver/private_joy
, but the node running on the computer two cannot receive messages from the topics from the remote computer. And I have a question about what the mistake is and what am I doing wrong?
Asked by D0l0RES on 2019-12-11 05:05:58 UTC
Comments
I'm sorry, but I've closed your question due to the fact that it doesn't follow the support guidelines.
Specifically, the parts about not posting screenshots of terminals, code or error output.
Please review the guidelines and edit your post to fix this.
After you've done that, we can re-open it.
Asked by gvdhoorn on 2019-12-11 05:23:05 UTC
These guidelines are a good place to start
Asked by jayess on 2019-12-11 16:40:07 UTC