Я работаю над графическим интерфейсом, созданным с помощью PyQt4 и Python 2.7, который запускает различные демонстрации для Clearpath Husky под управлением ROS Indigo. Графический интерфейс пользователя переключается между запуском демонстраций навигации и визуализацией моего физического робота. Для этого он должен переключаться между запуском демонстраций на локальной ROS и ROS на моем Husky. При переключении между двумя разными экземплярами ROS мне нужно иметь возможность «исходить» из devel / setup.bash для каждой ОС, чтобы пакеты были собраны правильно и визуализация Husky внутри Rviz не ломалась (ошибки с кадрами TF, например " Нет данных tf. Фактическая ошибка: Фиксированный фрейм [одом] не существует », а с RobotModel« Модель URDF не удалось проанализировать »). В моем .bashrc, если я использую setup.bash для Husky, визуализация работает нормально, пока я не попробую запустить локальную демонстрацию. Так бывает и наоборот; в то время как источник локального setup.bash будет нормально запускать локальные демонстрации, визуализация Husky прерывается.
Есть ли способ использовать подпроцесс python (или другую альтернативу) для получения соответствующего файла devel / setup.bash в экземпляре GUI, чтобы визуализация не нарушалась?