我正在使用PyQt4和Python 2.7构建GUI,为在ROS Indigo上运行的Clearpath Husky启动各种演示。该GUI在导航演示和可视化我的物理机器人之间进行切换。为此,它必须在本地ROS和我的Husky上启动演示之间进行切换。在切换两个不同的ROS实例时,我需要能够“source”每个操作系统的devel/setup.bash,以便正确构建软件包并且在Rviz中可视化Husky不会出错(TF帧错误,如“无tf数据。实际错误:固定帧[odom]不存在”以及与RobotModel“URDF模型无法解析”的错误)。在我的.bashrc中,如果我source Husky的setup.bash,则可视化工作正常,直到我尝试运行本地演示。反之亦然;虽然在源本地setup.bash时可以很好地运行本地演示,但Husky的可视化会出现问题。
有没有一种方法可以使用Python的subprocess(或其他替代方案)在GUI实例中源化适当的devel/setup.bash,以便可视化不会中断?
有没有一种方法可以使用Python的subprocess(或其他替代方案)在GUI实例中源化适当的devel/setup.bash,以便可视化不会中断?