create_service方法
- Node.create_service(self, service_name: str) ServiceServer
在当前节点上创建一个服务端,用于提供指定名称的服务并处理客户端请求。
- Parameters:
service_name (str) – 服务名称(字符串),需符合ROS服务命名规范; 建议使用斜杠分隔的层次结构(如”robot/calculate”), 客户端需通过相同名称调用服务。
- Returns:
新创建的服务端对象,需通过其`register_callback()`方法注册具体动作的处理函数。
- Return type:
ezros.ServiceServer
示例代码
import ezros
# 定义加法服务的回调函数
def add_callback(a, b):
return a + b
# 创建节点
node = ezros.Node("math_service_node")
# 创建名为"math_service"的服务端
service = node.create_service("math_service")
# 为服务注册"add"动作的处理回调
service.register_callback("add", add_callback)
ezros.spin(node) # 启动节点事件循环,等待客户端调用
node.shutdown()