You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This needs to be fixed simultaneously with logic in the Wrapper (monitors objectives) and in the MROS Observer (which apparently in ROS2 monitors components/nodes)
The text was updated successfully, but these errors were encountered:
@chcorbato I've been thinking how to solve this but it is not that easy. The problem is that the Observer only handles components and the Wrapper only handles objectives. When a component is RECOVERED we have two options:
Extend the observer to also handle objectives:
Send a objective UPDATABLE status and handle it as if the Objective were in INTERNAL ERROR -> need to select the best, available and realizable FD to ground
Keep the structure as it is:
The observer sends a component RECOVERED status to the ontology
We apply a rule to set the objective to UPDATABLE status
For the next loop, the component shall be in NONE status (not updatable, not in error) so in Python we remove the status of the component
In both cases, once a FD is grounded, the objective status is reset to NONE in the ontology
mc_mros_reasoner/mros2_reasoner/mros2_reasoner/ros_reasoner.py
Line 381 in 9698265
This needs to be fixed simultaneously with logic in the Wrapper (monitors objectives) and in the MROS Observer (which apparently in ROS2 monitors components/nodes)
The text was updated successfully, but these errors were encountered: