0

有没有办法在 ROS 工作空间内运行 ROS 节点的简单 python 脚本中导入 Webots 控制器库?

我看过 Webots ROS_Python 示例并理解其背后的概念。但我无法导入

from controller import Robot

并得到错误

ImportError: No module named rospy

在运行已经提供的 ROS_Python 示例包时。

编辑:更改 python 变量 /usr/local/webots/lib/python35 找到了控制器,但现在出现了一个新错误:

ImportError: libCppController.so: cannot open shared object file: No such file or directory
4

1 回答 1

3

您从 ROS 工作空间中调用 libcontroller 的方法非常好。这实际上是用于 Webots-ROS2 集成的方法。

它们是您在启动节点之前需要设置的一些环境变量。它们主要是LD_LIBRARY_PATHPYTHONPATH,您可以在此处找到有关如何在 Webots 之外启动控制器的完整描述:

https://www.cyberbotics.com/doc/guide/running-extern-robot-controllers#environment-variables

作为参考,这是在 ROS2 的 webots_ros2 包中实现的:

于 2019-09-30T12:03:40.670 回答