news 2026/4/18 3:10:29

Moveit Servo 发送指令给自己的action server

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Moveit Servo 发送指令给自己的action server

一、先告诉你一句话真相
MoveIt Servo / MoveIt 本身不直接发指令给真机械臂,
它只发指令给:
controller_manager → 你的 Action Server → 真机械臂
你要做的只有一件事:
让 controller_manager 把轨迹指令转发给你自定义的 action server

二、指令流完整路径(你必须懂)
plaintext

你的视觉程序

moveit_servo 计算轨迹

controller_manager (ros2_control)

【你自定义的 Action Server】

真实机械臂硬件

你现在缺的就是:让 controller_manager 找你写的 action。

三、如何让 launch 文件把指令发给你的 action server?
只需要改 2 个文件:
1. moveit_controllers.yaml
2. 你的 ros2_controllers.yaml
我直接给你正确配置。

1. 修改:moveit_controllers.yaml
这个文件告诉 MoveIt:“轨迹要发给 xxx_controller 这个控制器”
yaml

controller_names:
-
arm_controller

arm_controller:
action_ns:
follow_joint_trajectory
type:
FollowJointTrajectory
default: true
joints:
-
JM0
- JM1-2
- JM4-3
-
JM4
-
JM5
-
YB

重点:
• action_ns: follow_joint_trajectory
• 你自己写的 Action Server 必须监听这个话题:
/arm_controller/follow_joint_trajectory

2. 修改:ros2_controllers.yaml(关键)
这个文件告诉 ros2_control:“用 joint_trajectory_controller,并且把指令转发给 action”
yaml

controller_manager:
ros__parameters:
update_rate: 100

arm_controller:
type:
joint_trajectory_controller/JointTrajectoryController

joint_state_broadcaster:
type:
joint_state_broadcaster/JointStateBroadcaster

arm_controller:
ros__parameters:
command_interfaces:
-
position
state_interfaces:
-
position
-
velocity
joints:
-
JM0
- JM1-2
- JM4-3
-
JM4
-
JM5
-
YB

这个配置的作用:
joint_trajectory_controller 内部自带 action server!
它会自动:
• 订阅 /arm_controller/follow_joint_trajectory
• 接收 MoveIt 发的轨迹
• 然后你只需要订阅这个 action 就能拿到指令
四、你自己写的 Action Server 要写什么?
你只需要写一个 FollowJointTrajectory.action 的服务器:
plaintext

/arm_controller/follow_joint_trajectory

你一监听这个话题,所有 MoveIt/Servo 指令都会发给你!
这就是 ROS2 控制真实机械臂的标准方式。

五、launch 文件不需要大改!
你原来的 launch 文件 99% 都不用改
只需要保证:
python


运行




moveit_config = (
MoveItConfigsBuilder
("collaborativearm")
.trajectory_execution(file_path="config/moveit_controllers.yaml") # 这个文件对就行
.to_moveit_configs()
)

然后启动:
• controller_manager
• arm_controller
• joint_state_broadcaster
指令就会自动流到你的 action!

六、最终指令流(你现在马上就能实现)
plaintext

视觉程序 → moveit_servo → controller_manager → arm_controller → 【你的 action】 → 真机

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 3:07:24

如何3步搞定蓝奏云下载?LanzouAPI直链解析终极指南

如何3步搞定蓝奏云下载?LanzouAPI直链解析终极指南 【免费下载链接】LanzouAPI 蓝奏云直链,蓝奏api,蓝奏解析,蓝奏云解析API,蓝奏云带密码解析 项目地址: https://gitcode.com/gh_mirrors/la/LanzouAPI 还在为蓝…

作者头像 李华
网站建设 2026/4/18 3:09:29

保姆级图解:5分钟搞懂ROS2的Executor和CallbackGroup,告别回调阻塞

保姆级图解:5分钟搞懂ROS2的Executor和CallbackGroup,告别回调阻塞 想象一下你正在一家银行办理业务,柜台只有一个窗口,前面排着长队。突然有个客户需要办理一项耗时很长的业务,后面的人只能干等着——这就是ROS2中回调…

作者头像 李华
网站建设 2026/4/18 3:05:08

C 语言入门教程:基础概念、文件类型及函数执行顺序全解析

你好,各位朋友们你们都好,从今天起就要开启C语言的学习之旅。C语言可是极为基础的一门编程语言,它是程序员迈向开发领域入门时的首要选择。C语言教程总共设有15个课时,接下来我会逐步为大家展现C语言所蕴含的独特魅力。在刚开始学…

作者头像 李华
网站建设 2026/4/18 3:08:08

2026最权威的五大降重复率神器推荐榜单

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 市场当下有好些能有效降低文本AI检测几率的在线工具存续着呢。这类网站多会采用替换同义词、…

作者头像 李华
网站建设 2026/4/14 14:42:47

LangChain Middleware 技术解析:从“插槽机制”到 Agent 运行时控制

根据 LangChain 官方文档,Middleware 是 LangChain agent 运行时里的一个“拦截层 / 扩展层”,用来在 agent 执行的各个阶段插入控制逻辑。官方给它的定位很明确:它让你可以更精细地控制 agent 内部发生的事情,比如日志追踪、prom…

作者头像 李华