零力拖动
Zero-Force Drag (Free-Drive / Hand Guiding Mode)常用让机械臂抵消自身重力和摩擦,人用很小的力就能推着它走。
零力拖动是协作机械臂的一种手动引导模式,UR 叫 Freedrive,Franka 叫 Guiding mode。开启后,控制器实时输出抵消自身重力(重力补偿)和关节摩擦(摩擦补偿)所需的力矩,机械臂像失重一样停在原处,人轻轻一推就跟着动。实现大致有三种:带关节力矩传感器的臂直接在力矩模式下做补偿;不少没有力矩传感器的协作臂靠电机电流估计外力;传统工业臂则在腕部装六维力传感器,用导纳控制把测到的力换成运动。它最主要的用途是拖动示教:人手把手带着机械臂做一遍动作,控制器记下轨迹或存成演示数据。「零力」指人需要施加的力接近零,并不是电机不出力。
例子Franka 机械臂按住法兰附近两个相对的按钮即可进入引导模式,libfranka 的 setGuidingMode 还能只放开部分方向(比如只允许平移、锁住转动);UR 的 ROS 2 驱动提供 freedrive_mode_controller,需要持续发布 True 消息,默认 1 秒收不到就自动退出。
- 也叫
- 拖动模式、自由驱动模式、零力控制、手动引导、Hand guiding、Freedrive、Guiding mode
- 相关
- 拖动示教、重力补偿、摩擦补偿、导纳控制、关节力矩传感器、演示数据
- 来源
- libfranka robot.h(setGuidingMode:Guiding mode can be enabled by pressing the two opposing buttons near the robot's flange)
Universal Robots ROS 2 Driver: ur_controllers 文档(FreedriveModeController / ForceModeController)
Enabling Scalable Kinesthetic Teaching via Observer-based Hand-guiding with Active Support (arXiv:2608.10847) - 信息截至
- 2026-09