六维力矩传感器
概述
六维力矩传感器(6-axis Force/Torque Sensor)是机器人领域最完整的力感知方案,能同时测量三个方向的力和三个方向的力矩:
这六个分量完整描述了一个刚体所受的广义力(wrench)。
工作原理
应变片 + 惠斯通电桥
六维力矩传感器的核心是一组精密布置的应变片。传感器弹性体(elastic body)在受力时产生微小变形,应变片将变形转换为电阻变化。
单个惠斯通电桥:
当应变片电阻变化很小时(\(\Delta R \ll R\)):
其中 \(G_F\) 为应变片灵敏因子(Gauge Factor),\(\varepsilon\) 为应变。
多通道测量
一个六维力矩传感器通常包含 6~8 个惠斯通电桥通道,每个通道对不同方向的力/力矩组合有不同的灵敏度。
原始输出为电压向量 \(\vec{V} \in \mathbb{R}^n\)(\(n \geq 6\))。
标定矩阵
从原始电压到力/力矩的转换通过标定矩阵 \(C\) 完成:
其中:
- \(\vec{F} \in \mathbb{R}^6\) — 力/力矩输出
- \(C \in \mathbb{R}^{6 \times n}\) — 标定矩阵(Calibration Matrix)
- \(\vec{V} \in \mathbb{R}^n\) — 原始电压信号
标定过程:
- 施加已知的力/力矩组合(通常使用精密砝码)
- 记录对应的电压输出
- 通过最小二乘法求解标定矩阵:
其中 \(V_{measured}^+\) 为伪逆。
标定矩阵示例
典型的 \(6 \times 6\) 标定矩阵:
理想情况下 \(C\) 为对角阵(各通道解耦),但实际中非对角元素不为零,这就是轴间耦合(cross-talk),好的传感器耦合误差 < 2%。
主流产品
ATI Industrial Automation
ATI 是六维力矩传感器的"金标准",广泛用于学术研究和工业。
ATI Mini45
| 参数 | 规格 |
|---|---|
| 量程 (Fx, Fy) | ±580 N |
| 量程 (Fz) | ±1160 N |
| 量程 (Mx, My) | ±20 N·m |
| 量程 (Mz) | ±20 N·m |
| 分辨率 (Fx, Fy) | 1/8 N |
| 直径 | 45 mm |
| 高度 | 15.7 mm |
| 重量 | 92 g |
| 过载保护 | 5.5x ~ 20x |
ATI Nano17
| 参数 | 规格 |
|---|---|
| 量程 (Fx, Fy) | ±12 N |
| 量程 (Fz) | ±17 N |
| 量程 (Mx, My) | ±120 N·mm |
| 分辨率 (Fx, Fy) | 1/160 N |
| 直径 | 17 mm |
| 高度 | 14.5 mm |
| 重量 | 9.1 g |
Nano17 以极小的体积提供高精度测量,常用于灵巧手指尖力传感。
ATI 数据采集系统
- Net F/T:基于以太网的数据采集盒,最高 7 kHz
- DAQ F/T:USB 接口,适合实验室环境
- EtherCAT F/T:工业总线接口,与 PLC/工业控制器集成
OnRobot HEX-E / HEX-H
OnRobot 面向协作机器人市场:
| 型号 | HEX-E | HEX-H |
|---|---|---|
| 量程 (Fz) | 200 N | 600 N |
| 量程 (Mz) | 5 N·m | 16 N·m |
| 分辨率 | 0.2 N | 0.5 N |
| 接口 | USB / UR专用 | USB / UR专用 |
| 特点 | 高精度 | 大量程 |
集成友好:OnRobot 为 Universal Robots 提供即插即用方案。
Robotiq FT 300-S
| 参数 | 规格 |
|---|---|
| 量程 (Fx, Fy, Fz) | ±300 N |
| 量程 (Mx, My, Mz) | ±30 N·m |
| 分辨率 | 0.2 N / 0.002 N·m |
| 接口 | USB / UR / ROS |
| 采样率 | 100 Hz |
国产方案
- 宇立仪器(Hypersen):HPS-FT 系列,EtherCAT 接口
- 坤维科技(Kunwei):KWR 系列,性价比较高
- 海伯森:六维力矩传感器,针对协作机器人
接口与通信
模拟输出
- 每个通道输出 ±10V 或 ±5V 模拟电压
- 需要外部 ADC(16-bit 以上推荐)
- 优点:延迟最低
- 缺点:易受噪声干扰,接线复杂
数字接口
传感器 ──[SPI/I2C]──> MCU ──[USB/Ethernet]──> PC
传感器 ──[EtherCAT]──> 工业控制器
传感器 ──[USB]──> PC(实验室方案)
EtherCAT(推荐工业方案)
- 确定性通信,周期 1 ms
- 多设备菊花链拓扑
- 与伺服驱动器同一总线
- ATI EtherCAT F/T:直接挂在 EtherCAT 总线上
ROS 集成
ATI 传感器的 ROS 驱动:
# 典型 ROS2 节点发布力/力矩数据
# 消息类型: geometry_msgs/msg/WrenchStamped
from geometry_msgs.msg import WrenchStamped
msg = WrenchStamped()
msg.header.stamp = self.get_clock().now().to_msg()
msg.header.frame_id = "ft_sensor_link"
msg.wrench.force.x = F[0]
msg.wrench.force.y = F[1]
msg.wrench.force.z = F[2]
msg.wrench.torque.x = F[3]
msg.wrench.torque.y = F[4]
msg.wrench.torque.z = F[5]
self.publisher.publish(msg)
安装位置
腕部安装(最常见)
传感器安装在机械臂末端法兰与末端执行器之间:
[关节6法兰] ── [六维力矩传感器] ── [末端执行器/夹爪]
测量的是末端执行器与环境之间的交互力。
注意:传感器测量值包含末端执行器自重(需要重力补偿)。
重力补偿
安装后需要进行重力补偿,消除末端执行器自重的影响:
重力补偿步骤:
- 在多个姿态下记录无负载时的传感器读数
- 拟合末端执行器的质量 \(m\) 和质心位置 \(\vec{r}_{CoM}\)
- 实时计算并减去重力项:
其中 \(\vec{g}_{sensor}\) 是重力加速度在传感器坐标系中的投影(随机器人姿态变化)。
典型应用
精密装配
轴孔装配(Peg-in-Hole)是六维力矩传感器的经典应用:
- 搜索阶段:螺旋搜索,检测接触力
- 对准阶段:根据力矩信息调整姿态
- 插入阶段:沿轴向施加恒定力,横向力矩归零
判据:\(|F_z| > F_{threshold}\) 且 \(\sqrt{M_x^2 + M_y^2} < M_{tolerance}\)
表面抛光/打磨
保持恒定法向接触力:
控制器根据力偏差调整位置:
碰撞检测
通过力矩突变检测碰撞:
使用注意事项
- 避免过载:超过量程可能永久损坏传感器
- 温度漂移:开机后预热 15-30 分钟
- 定期归零(Biasing):消除零点漂移
- 线缆应力释放:避免线缆拉扯影响测量
- 安装扭矩:按照厂商要求使用扭矩扳手
- 标定验证:定期用已知砝码验证精度
相关内容
参考资源
- ATI Industrial Automation: ati-ia.com
- OnRobot: onrobot.com
- Robotiq: robotiq.com
- Siciliano, B. et al., Robotics, Ch. 9: Force Control