rtabmap_ros: Is it possible to continue running SLAM when a sensor is disabled?
Hardware: Turtlebot 2 (Kobuki), Hokuyo URG-04LX, PrimeSense RGB-D
Software: ROS Kinetic (ubuntu 16.04), turtlebot_bringup, turtlebot_description, urg_node, openni2_camera, rtabmap_ros
Context: I am developing an algorithm for fault tolerance in mobile robots, in which we aim to compensate for faulty sensors at run-time. The experiments require me to disconnect a sensor and verify the fault's effects in the robot's operation, and later if the algorithm is correctly compensating them.
Problem: I need to test the effects of a faulty sensor in the rtabmap_ros package (i.e., how it affects SLAM), however when I disconnect a sensor to simulate a failure (either laser or camera), the package stops transmitting map and localization data, as it probably should. When the sensor is reconnected, the package resumes operation. I have tried to change the "subscribe_depth" and "subscribe_scan" parameters, then calling the "update_parameters" service, as well as the "reset" and "resume" services, all to no avail.
Question: Is it possible for RTABMAP to continue performing SLAM in the event of a sensor disconnection? Could it be a simple tweak in the source code, to not check for a certain flag? If this is not possible with RTABMAP, are there any recommendations for packages which allow for this behavior?
Thanks in advance!