If the edge uses human aware navigation, everything works as expected. While the robot is driving it subscribes to the ppl perception. If no goal is active it unsubscribes.
If the edge uses move_base, human ware navigation is unsubscribed from the ppl perception, not causing any processing.
If the ppl perception is not running, human aware navigation behaves like move_base + some gazing behaviour
Therefore, having it running by default does not cause additional load on the CPU if it is not used but it prevents confusion if it is used in the edge but not running.
Now that https://github.com/strands-project/strands_hri/pull/91 is merged, human aware navigation dynamically subscribes and unsubscribes from the ppl perception pipeline. this means:
Therefore, having it running by default does not cause additional load on the CPU if it is not used but it prevents confusion if it is used in the edge but not running.