herolab-uga / cqlite

CQLite: Coverage-biased Q-Learning Lite for Efficient Multi-Robot Exploration
MIT License
13 stars 2 forks source link

Bad Callback function #1

Open MayooranT opened 1 month ago

MayooranT commented 1 month ago

I initialized a system with two turtlebots and their navigation nodes with the corresponding prefixes as instructed. I started pretending there is only one robot to explore to keep things simpler. Cqlite is working up to the filter node. I'm receiving Frontier points from cqlite_filter but the following error emerges along with. Centroids are not visible either. Rviz says, "Points should not be empty for specified marker type."

[ERROR] [1717524200.888219]: bad callback: <function callBack at 0xffffb06ee3a0>
Traceback (most recent call last):
  File "/opt/ros/noetic/lib/python3/dist-packages/rospy/topics.py", line 750, in _invoke_callback
    cb(msg)
TypeError: callBack() missing 1 required positional argument: 'args'

I attach the Rviz and node graph herewith. Screenshot from 2024-06-04 14-10-50

The node graph. rosgraph

ehsanlatif commented 2 weeks ago

Filter points contain pointArray, not the marks, and hence cannot be visualized in rviz. The filter points are directly used by cqlite_planner. If you want to visualize filter points, you can easily remap them to markers inside cqlite_filter.py.

ramviyas commented 2 weeks ago

@ehsanlatif The callback issue seems to be independent of the RVIZ visualization error. Can you look into this callback issue and provide a solution? @MayooranT can you provide more information on the callback issue? Which node is triggering this error and if you have changed any configuration/settings other than what we described in the README steps.

MayooranT commented 2 weeks ago

@ehsanlatif The callback issue seems to be independent of the RVIZ visualization error. Can you look into this callback issue and provide a solution? @MayooranT can you provide more information on the callback issue? Which node is triggering this error and if you have changed any configuration/settings other than what we described in the README steps.

Frontier filter must be the one which is triggering while publishing those three topics. This must be triggered when line 22 or 32 in cqlite_filter.py. I get this twice every time a frontier point detected by local or global frontier detector.