Копирование моего предложения из проблемы:
Если вы установите переменную среды LCM_DEFAULT_URL на другое значение для каждой пары (процесс визуализатора, процесс симулятора), сообщения будут передаваться по разным адресам сокета и не мешать друг с другом.
(Для симулятора вы также можете установить URL-адрес в конструкторе DrakeLcm, хотя переменная среды часто проще всего при запуске нескольких процессов.)
Значение по умолчанию для LCM_DEFAULT_URL показано здесь:
drake / lcm / drake_lcm. cc
Строка 22 в 20d799e constexpr const char * const kLcmDefaultUrl = "udpm: //239.255.76.67: 7667? ttl = 0 ";
Использование другого номера порта, например, обеспечит независимые пары процессов.
env LCM_DEFAULT_URL = udpm: //239.255.76.67: 7666? Ttl = 0 bazel-bin / tools / drake_visualizer &
или
экспорт LCM_DEFAULT_URL = udpm: //239.255.76.67: 7666? ttl = 0
bazel-bin / tools / drake_visualizer &
bazel-bin / stuff / my_simulator &