Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Loading of reasoners in ROS 2 - Missing TF reasoning in skills #96

Open
matthias-mayr opened this issue Mar 1, 2024 · 0 comments
Open
Assignees
Labels
bug ROS 2 Issue affects ROS 2

Comments

@matthias-mayr
Copy link
Member

Loading reasoners in ROS 2 needs to be tackled:

  1. Currently we do not use the reasoners_pkgs parameter that is passed
  2. When loading we initialize a new node. This means that one must not override the node name when launching the skill manager
  3. It seems that the AauSpatialReasoner is not spinning and therefore does not receive TF data

1. "reasoner_pkgs" parameter

As a workaround we hard-coded this parameter here for now:

# TODO: pass the node
Element._node = rclpy.create_node('skiros_element')
# TODO: HACK! Fixes reasoners_pkgs list (currently we would also not have other ones)
Element._node.declare_parameter('reasoners_pkgs', ["skiros2_std_reasoners"], descriptor=ParameterDescriptor(description='List of reasoner pkgs (optional)', type=ParameterType.PARAMETER_STRING_ARRAY))

2. Creating a new node

When loading the reasoners for the first time we create a new node. Not only should that prevent us from accessing the parameter (afaik), but if the name of the "SkillManagerNode" is overwritten in the launch file, this name would also be used here when creating the second node. This leads to issues with ROS.

# TODO: pass the node
Element._node = rclpy.create_node('skiros_element')

3. The AauSpatialReasoner does seem to spin

It looks like the reasoner that is started with the procedure above does not spin. The would make sense since this node is never spun by any executor.
The observation is that TF operations from within skills can not be performed.


Solution:
All those 3 issues could be resolved if the node is passed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug ROS 2 Issue affects ROS 2
Projects
None yet
Development

No branches or pull requests

2 participants