python3里面能否subscribe ros melodic的message
时间: 2023-07-02 08:20:56 浏览: 120
在 Python3 中,您可以使用 rospy 和 rospkg 包来订阅 ROS Melodic 中的消息。下面是一个简单的订阅器示例,可以订阅 `/rosout` 主题上的消息:
```python
#!/usr/bin/env python3
import rospy
from rospy import ROSException
from rospy import ROSInterruptException
from std_msgs.msg import String
def callback(data):
rospy.loginfo(rospy.get_caller_id() + "I heard %s", data.data)
def listener():
rospy.init_node('listener', anonymous=True)
try:
rospy.Subscriber("/rosout", String, callback)
rospy.spin()
except (ROSException, ROSInterruptException):
pass
if __name__ == '__main__':
listener()
```
在这个例子中,`rospy.Subscriber` 函数用来订阅 `/rosout` 主题,`String` 类型的消息将会被传递给 `callback` 函数进行处理。`rospy.spin()` 函数用来保持节点在运行状态,以便可以接收新的消息。
您需要确保 ROS Melodic 包已经正确安装并配置,然后在 Python3 环境中安装 rospy 和 rospkg 包。
阅读全文