ros2node() freezes execution

6 次查看(过去 30 天)
Hello,
I'm trying to implement and run a ROS2 node in Matlab.
Yesterday, when I first used the Matlab ROS Toolbox, everything worked seamlessly.
Today, after a reboot of my device (Windows 10, 21H2), the simple node creation command
node = ros2node("name");
causes the execution to freeze infinitely until I manually kill the process libmwros2server.
Running and connecting any other ROS2 nodes outside of Matlab is working without any trouble.
I don't receive any errors or any feedback at all. I've tried rebooting my device multiple times and reinstalled Matlab with all toolboxes but without success.
I would appreciate any help on this one.
  4 个评论
Hendrik Steidl
Hendrik Steidl 2022-4-13
Hi Jagadeesh,
thanks for your reply. You can find the output rossupport.txt in the attachments.
For external nodes (i tried it with both Python and C++ nodes), the Domain ID 0 works.
Kind regards, Hendrik
Kenneth De Leener
Kenneth De Leener 2022-6-10
Hi everyone,
I ran into the same issue, attached rossupport.txt.
Some additional info:
  • If I run a ros2 command like ros2 node list, followed by the creation of a ros2node, the ROS daemon locks up
  • If you first run ros2node, it works fine, after the creation of a second node, it locks up again.
Thank you Hendrik for the work around, this was crucial for our project.

请先登录,再进行评论。

采纳的回答

Jagadeesh Konakalla
Jagadeesh Konakalla 2022-10-12
It is observed that with FastDDS as RMW middlwware, the domain ID 0 does not work on few machines. The workaround for now is to use the Domain ID other that 0 or use change the RMW middlwware to other middleware.
Please see the following link on how to switch to different middlwares in MATLAB/Simulink.
Thanks,
Jagadeesh K.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 ROS 2 Network Connection and Exploration 的更多信息

产品


版本

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by