导航菜单

智能机器人/机器人操作系统
课程进度 44% · 第6/12章6/12章 · 标签 1/4
1

ROS基础

ROS(Robot Operating System)是开源的机器人操作系统框架,提供分布式通信、硬件抽象、设备驱动、工具库等功能。ROS采用节点-话题-服务的通信架构。

通信机制

  • 话题(Topic):异步发布/订阅通信
  • 服务(Service):同步请求/响应通信
  • 动作(Action):带反馈的长时间任务
2

ROS2发布节点

python
1
# ROS2发布节点示例
2
import rclpy
3
from rclpy.node import Node
4
from std_msgs.msg import String
5
 
6
class Talker(Node):
7
def __init__(self):
8
super().__init__('talker')
9
self.pub = self.create_publisher(String, 'topic', 10)
10
self.timer = self.create_timer(0.5, self.callback)
11
def callback(self):
12
msg = String()
13
msg.data = 'Hello ROS2'
14
self.pub.publish(msg)
15
 
16
rclpy.init()
17
rclpy.spin(Talker())
18
rclpy.shutdown()