Closed gpdas closed 3 years ago
Hi @ayu135 can you test this? and check with @gpdas you are not doing the same task :grin:
@ayu135 you should be able to test this using the multisim https://github.com/LCAS/RASberry/wiki/In-Field-Logistics-For-Soft-Fruit-Production. Use the callarobot (CAR) interface. Or you can work with a single robot simulation as well. Send a small executive_policy_goal with one or two edges.
Will test it today thanks
While testing with a single robot simulation scenario "transportation_riseholme_polytunnel_sim" I am getting the following error
[ERROR] [1614607369.327302, 1414.485000]: bad callback: <bound method PolicyExecutionServer.MapCallback o
f <execute_policy_server.PolicyExecutionServer object at 0x7fcff044cfd0>>
Traceback (most recent call last):
File "/opt/ros/melodic/lib/python2.7/dist-packages/rospy/topics.py", line 750, in _invoke_callback
cb(msg)
File "/home/n0mad/rasberry_ws/src/topological_navigation/topological_navigation/scripts/execute_policy_
server.py", line 903, in MapCallback
for i in self.lnodes:
TypeError: 'TopologicalMap' object is not iterable
I am definitely not trying to do @ayu135 's work :) I was just trying to get the robot moving in multisim. My intention was only to get the ball rolling.
i think the error Ayush got could be from some files in rasberry repo. I will have a look.
There seem to be a few other errors that I am getting when testing with the toponav-2 devel scenario
[WARN] [1614608311.295095, 1462.200000]: I couldn't create reconfigure client /move_base/move_base/DWAPla
nnerROS. remaining tries 1
Traceback (most recent call last):
File "/home/n0mad/rasberry_ws/src/topological_navigation/topological_navigation/scripts/navigation.py",
line 990, in <module>
policy_server = PolicyExecutionServer(use_tmap2)
File "/home/n0mad/rasberry_ws/src/topological_navigation/topological_navigation/scripts/execute_policy_
server.py", line 162, in __init__
service_created = self.create_reconfigure_client(i)
File "/home/n0mad/rasberry_ws/src/topological_navigation/topological_navigation/scripts/execute_policy_
server.py", line 221, in create_reconfigure_client
% (rcnfsrvrname, i)
NameError: global name 'i' is not defined
@ayu135 please do a git pull
. @adambinch made changes to that today.
I have the latest branch I think I am still getting this error. There seems to be an unassigned variable on line 221 and 172 that seems to be causing this issue.
And thanks for this by the way I definitely appreciate the help.
I tried to add some logical fixes to the random undefined variables here and there noted by @ayu135. The main issue is that the topological_navigation
and execute_policy_mode
actions have diverged a lot in the past years.
On a good note, after the fix I added, executive_policy_mode
action works with a value of DWAPlannerROS
for move_base_planner
. But topological_navigation
action expects this to be move_base/DWAPlannerROS
. So it breaks topological_navigation
action. Similarly the other value will break the execute_policy_mode
action.
I have the toponav2-devel PR in rasberry repo updated with values to make it work with execute_policy_mode
. (rasberry-robot.yaml
, rasberry-simple-robot.yaml
and rasberry-multisim.yaml
)
I think, any further debugging or development activities on this clearly falls into Ayush's workplan to allow non-move_base
type actions, removing monitored_navigation
and merging both actions together. So I would stop working on this here.
Comments please @adambinch @Jailander @ayu135
Sounds good to me! I am working on the combined version and will create a pr for that soon hopefully.
How are you approaching it @ayu135 ? Combined navigation + execute policy (with tmap2 only) in a first PR, then remove monitored nav and implement non move base goals in a second PR? Or are you going to do it all together? You could split the last 2 tasks into two PRs I suppose.
execute_policy_mode
is brought to working state using tmap2. This is with the ExecutePolicyMode object innavigate.py
.