想象一座巨大的工厂舞池。从前,工厂里的“主力舞者”——传统工业机器人,像被铁笼关着的独舞者:力气大、速度快,却完全不懂配合,人一旦靠近就有危险,所以只能隔着围栏远远地工作。如今,一位轻盈的新舞伴登场了:协作机器人。它不再被关在笼子里,而是能感知你的位置、感应你手上的力度,在你靠近时自动放慢脚步甚至停下。这就像两个人跳双人舞:既要默契配合完成任务,又要守住安全的边界——不冲撞、不踩脚、在极限前及时收住。这篇文章会带你从它的“身体构造”讲起,再讲它如何“编排舞步”(路径规划)、如何“守住信任”(安全控制)、如何“考级拿证”(安全标准),最后教你“教会它新手势”(编程示教)。读完你会明白:协作机器人的本质,不是让机器取代人,而是让机器学会与人共舞。

岗位关联

对 AI 从业者而言,工业机器人协作与安全是智能制造落地的关键一环。理解人机协同的原理、安全标准与工程实现,能让你在工业 AI 方案设计中真正解决“机器与人如何安全共事”的客户痛点,提升方案的可交付性与商业价值。

目录
  1. 可视化演示
  2. 协作机器人概述
  3. 系统架构组成
  4. 人机协同模式
  5. 路径规划技术
  6. 安全控制策略
  7. 安全标准体系
  8. 编程示教方法
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示协作机器人与传统机器人对比、ISO/TS 15066四种安全协作模式及逆运动学路径规划核心机制。切换模式查看不同环节。

本节配有交互动效(进入视口后自动加载,约 3KB)。

协作机器人与传统机器人对比 协作机器人设计用于与人共享工作空间,强调安全性与灵活性 传统工业机器人追求高速高精度,需安全围栏隔离运行 Cobot = Safety + Flexibility 协作机器人通过力控传感实现人机共存

协作机器人概述

以前的工厂舞池里,传统工业机器人是“铁笼里的独舞者”:力量惊人、轨迹固定,却对人毫不理会,谁靠近都得隔着围栏。而协作机器人就像一位“会聆听的舞伴”——它能感知人的位置、感受接触的力度,在被触碰时主动退让。舞池从“一人独舞”变成了“双人共舞”。

协作机器人(cobot)诞生于 1996 年的一项研究,核心理念是“人可以安全地待在机器旁边”而不是“人必须离机器远远的”。它并不追求更快的速度,而是追求“可控的力”与“可停的响应”。批量生产的协作机器人通常自重轻、关节圆润、速度受限,并且关节内部集成了力矩传感器。

在工程上,无论哪种协作方式,都必须回答一个问题:人和机器之间到底要留多少距离?这就引出了协作安全设计的第一块基石——安全距离公式:

ds=vr⋅tr+db+dm\displaystyle d_s = v_r \cdot t_r + d_b + d_m

1. 机器人的速度 v_r:机器人当前的运动速度,速度越快,停下来所需的路程越长,因此需要更大的安全距离。

vr\displaystyle v_r

2. 系统的响应时间 t_r:从传感器检测到人靠近,到控制系统发出并真正执行制动指令的时间,包含感知延迟与控制周期。

tr\displaystyle t_r

3. 制动距离 d_b:急停指令发出后,机器人依靠惯性滑行到完全停止所走过的距离,这由机构质量、驱动方式决定。

db\displaystyle d_b

4. 安全余量 d_m:为测量误差、负载波动、零部件磨损等不确定性额外保留的缓冲距离。

dm\displaystyle d_m

就像两位舞者无论跳得多投入,都要留出“一个急停就能刹住”的间距。理解了这个距离,就理解了协作机器人所有安全设计的起点。

系统架构组成

一位优秀的舞者需要三样东西:能灵活摆动的身体、能感知舞伴的感官,以及负责协调动作的大脑。协作机器人同样由三大部分组成:机械本体、传感系统和控制系统。

机械本体相当于舞者的“骨骼与肌肉”。协作机器人普遍采用轻量化材料,关节模块化设计,机身圆润避免夹伤手指。每个关节都由伺服电机、减速器和编码器组成,允许机器人做出流畅的多轴姿态。传感系统则如同舞者的“触觉与视觉”:关节力矩传感器实时测量各轴受力,外部视觉、激光雷达追踪人的位置,末端力传感器感知接触力。其中,关节力矩传感器是协作机器人的标志性硬件,它的原理可以简化为一个“弹簧测力”模型:

F=k⋅Δx\displaystyle F = k \cdot \Delta x

1. 接触力 F:人与机器人接触时传感器输出的力值,是安全判断的核心输入。

F\displaystyle F

2. 刚度系数 k:由弹性体材料与结构决定的常数,描述了“形变多大对应多大力”。

k\displaystyle k

3. 形变量 \Delta x:受到外力后弹性体产生的微小位移,通常只有几微米到几十微米。

Δx\displaystyle \Delta x

控制系统是舞者的“大脑”,它运行实时运动学、动力学算法,并将安全逻辑交给独立的安全控制器执行。传感信息与运动指令通过总线高速交互,确保“感觉到”到“做出反应”之间的时间足够短。骨骼、感官、大脑三位一体,协作机器人才拥有了与人类共舞的基本条件。

人机协同模式

双人舞有不同境界:有时两人同台却各跳各的,有时一人领舞一人跟随,有时真正交织出统一的舞步。人机协同也分三种模式:安全共融、任务协作和空间共享。

安全共融指人和机器人在同一区域内同时工作,但各自完成不同的任务。比如工人做装配前的检查,机械臂在旁做物料的搬运。任务协作指双方围绕同一个任务互相配合,比如工人扶住车门,机械臂拧紧螺栓。空间共享则指人与机器分时使用同一空间,人离开后机械臂进入执行,人进入时机械臂退出。这三者的选择,直接影响生产效率和安全设计复杂度。工程上常用一个指标来衡量协同带来的收益:

η=Tseq−TcobTseq×100%\displaystyle \eta = \frac{T_{seq} - T_{cob}}{T_{seq}} \times 100\%

1. 纯人工周期时间 T_{seq}:没有机器人参与时,操作者独立完成某项任务的总时间。

Tseq\displaystyle T_{seq}

2. 协作周期时间 T_{cob}:引入协作机器人后,人和机器并行/配合完成同样任务的总时间。

Tcob\displaystyle T_{cob}

3. 效率提升率 \eta:两者之差除以纯人工时间,反映协作模式带来的时间节省比例。

η\displaystyle \eta

并不是所有任务都适合协作。那些“人需要频繁转身、机器人动作范围大”的场景,效率反而可能降低。选对了舞种,才能跳出好看的舞。

路径规划技术

舞步不是临场乱跳的,而是事先编排好的。路径规划就是为机械臂“编排舞步”:既要到达目标位置,又要避开障碍物。全局路径规划在已知环境地图上离线生成一条从起点到终点的可行路线,相当于编舞师提前画出走位图;局部避障则利用传感器实时修正路线,应对突然出现的人或障碍。

规划出的路径只是一串离散的点,如果机械臂直接“点对点”急停急转,动作会生硬且损伤机构。因此需要轨迹平滑插补,让位置、速度、加速度都连续变化。工程中最常用的一种平滑方法是五次多项式插值:

q(t)=q0+(q1−q0)(10t3−15t4+6t5)\displaystyle q(t) = q_0 + (q_1 - q_0)\left(10t^3 - 15t^4 + 6t^5\right)

1. 起始位置 q_0 与目标位置 q_1:插值轨迹的起点和终点。

q0,q1\displaystyle q_0, q_1

2. 插值函数 10t^3 - 15t^4 + 6t^5:当 t 从 0 变化到 1 时,输出一个平滑的 0→1 曲线,且在两端的速度和加速度都为零。

10t3−15t4+6t5\displaystyle 10t^3 - 15t^4 + 6t^5

3. 当前位置 q(t):在时刻 t,机械臂关节所处的位置。

q(t)\displaystyle q(t)

有了平滑轨迹,机器人的动作就不再是“忽快忽慢的机械点头”,而是“行云流水的舞步”。这对人机协作尤其重要——生硬的动作会让人本能的紧张,平滑的动作才能让人安心靠近。

安全控制策略

舞伴之间的默契,体现在“知道何时收力、何时停下”。安全控制策略就是这套“默契规则”在机器人身上的实现。它包含三个层次:速度监控、力与功率限制、碰撞检测与响应。

速度监控是最基础的安全策略,核心思想是“离人越近,跑得越慢”。系统实时计算人与机器人的距离,当距离进入警示区时,把允许速度按比例降低;进入制动区时直接令机器人停止。这种关系可以用一个分段函数描述:

vsafe=min⁡(vcmd,  vmax⋅(d−dstop)dwarn−dstop)\displaystyle v_{safe} = \min\left(v_{cmd},\; \frac{v_{max}\cdot(d - d_{stop})}{d_{warn} - d_{stop}}\right)

1. 当前距离 d:传感器测得的操作者与机器人之间的最短距离。

d\displaystyle d

2. 制动边界 d_{stop} 与警示边界 d_{warn}:当距离小于 d_{stop} 时必须停车,大于 d_{warn} 时不受限制。

dstop,dwarn\displaystyle d_{stop}, d_{warn}

3. 线性缩放项 \frac{d - d_{stop}}{d_{warn} - d_{stop}}:把警示区内的距离映射到 0~1,距离越近值越小,速度上限也越小。

d−dstopdwarn−dstop\displaystyle \frac{d - d_{stop}}{d_{warn} - d_{stop}}

4. 取最小值 \min:最终速度取“指令速度”与“安全许可速度”中更小的一个,确保任何时刻都不会超速。

min⁡(vcmd,vsafe)\displaystyle \min(v_{cmd}, v_{safe})

除了速度监控,力与功率限制会在伺服层面设定力矩上限,防止夹伤;碰撞检测则通过力矩信号的突变判断“撞到人了”,一旦触发立即停止,随后手臂会微微回退释放压力——就像舞者被踩到脚后,立刻收住动作给你让出空间。

安全标准体系

双人舞有舞池规则,协作机器人也有自己的“竞赛章程”。国际标准化组织为工业机器人协作制定了体系化的安全标准,最核心的是 ISO 10218 系列和 ISO/TS 15066。ISO 10218 分为两部分:第一部分针对机器人本体,规定急停逻辑、速度限制、力限制等基础要求;第二部分针对机器人系统和集成,规定工作单元布局、周边设备与安全验证。而 ISO/TS 15066 进一步细化了协作场景的操作要求,给出了人体不同部位的生物力学限值,比如头部、颈部允许承受的力远小于躯干。

标准的核心是风险评估。每个协作工位在上线前都必须回答:会发生什么危险、有多大概率发生、会造成多大伤害?工程中把风险等级量化为:

R=P×S\displaystyle R = P \times S

1. 风险等级 R:用于判断是否需要追加安全措施的综合指标。

R\displaystyle R

2. 危险事件发生概率 P:包含人的行为、机器失效、环境因素等多方面的概率评估。

P\displaystyle P

3. 伤害严重度 S:一旦发生危险可能造成的人员伤害程度,从轻微擦伤到重大伤害分档评估。

S\displaystyle S

当风险等级超标,就需要从工程设计上降低风险:比如加装光栅、减小速度、改变工具形状。标准不是挂在墙上的奖状,而是贯穿需求分析、方案设计、现场调试和运行维护全过程的安全底线。

编程示教方法

教会一位新舞伴跳舞,最自然的方式是拉着他的手一步步走一遍——这正是协作机器人最流行的编程方式:拖拽示教。工程师直接抓住机械臂末端,像带着舞伴走位一样做出动作,机器人实时记录关节轨迹,之后便能自动复现。这种方式直观、上手快,尤其适合装配、分拣这类路径简单的任务。

为了进一步降低门槛,图形化编程把运动指令包装成“流程图或积木块”,工程师像画流程图一样编排逻辑:什么时候夹取、什么时候放下、什么时候等待人料到位。编程完成后,还要走安全验证流程:逐条速度验证、碰撞力测试、边界距离检查,确保自动运行时不会超出安全包络。拖拽示教中“拖得越快,跟得越快”的直觉体验,背后是一个简单的比例控制关系:

vtcp=kdrag⋅Fhand\displaystyle v_{tcp} = k_{drag} \cdot F_{hand}

1. 末端执行器速度 v_{tcp}:机械臂末端(工具中心点)在示教过程中的移动速度。

vtcp\displaystyle v_{tcp}

2. 人力拖拽力 F_{hand}:操作者施加在机器人末端上的力,由力传感器读取。

Fhand\displaystyle F_{hand}

3. 比例系数 k_{drag}:决定“给多大劲跑多快”的增益参数,需要调整到既灵敏又可控。

kdrag\displaystyle k_{drag}

图形化编程的价值则在于把复杂的运动控制抽象成一个个可拼装的积木。换句话说,拖拽示教教你“身体力行”,图形编程教你“写乐谱”——两者结合,普通人也能在一天内教会机器人完成一个新的协作任务。

AI 应用场景

汽车总装线的车门安装工位

阶段:感知与执行控制

解决的问题:传统车门安装由工人手动搬抬沉重的车门对准铰链,劳动强度大、易磕碰;全自动机器人又难以应对车门型号多、定位偏差大的柔性需求。协作机器人通过视觉识别车门到位信号、力传感器感知对孔力,与人配合完成“人扶机拧”的安装。

具体案例:某车企总装车间引入协作机械臂,工人把车门推到铰链附近,机械臂自动接管并完成螺栓锁付。机器人感知到工人手未离开时绝不动作,一旦检测到异常阻力立即停下等待,安装节拍由 90 秒降至 55 秒。

电子工厂的柔性装配与上下料

阶段:任务规划与调度

解决的问题:电子产品换线频繁,传统专机难以适应多品种小批量;纯人工重复插拔、锁付动作易导致疲劳和一致性差。协作机器人能记录多条装配轨迹,配合视觉定位实现快速切换。

具体案例:一家 3C 代工厂在组装线上部署多台协作机器人,拖拽示教完成不同型号的 PCB 板搬运与连接器插装。机器人之间通过中央调度系统共享任务队列,当某工位人手不足时,周围机器可自动补位。

物流仓储中的拣选辅助臂

阶段:感知与运动规划

解决的问题:仓储拣选是典型的“人机混合”场景:货物种类杂乱、形状不规则,纯自动化难以全覆盖。协作机器人可用于“货到人”拣选工位,帮工人把沉重货箱从高位取下,并用路径规划避开通道里穿梭的人员。

具体案例:某电商仓库使用协作机械臂辅助拣选,机械臂依据订单自动把目标货箱从货架搬至操作台,工人只需完成扫码与分装。当工人进入机械臂工作半径时,速度监控自动触发,将机械臂降至安全速度。

Python 演示

python39 行
class SafetyMonitor:    """Monitor robot speed based on human-robot distance."""     def __init__(self, max_vel=2.0, d_stop=0.3, d_warn=0.8):        self.max_vel = max_vel        self.d_stop = d_stop        self.d_warn = d_warn        self.stop_count = 0     def limit_velocity(self, distance, cmd_vel):        if distance <= self.d_stop:            self.stop_count += 1            return 0.0        if distance >= self.d_warn:            return min(cmd_vel, self.max_vel)        ratio = (distance - self.d_stop) / (self.d_warn - self.d_stop)        allowed = ratio * self.max_vel        return min(cmd_vel, allowed)     def run_simulation(self, timeline):        print("time(s)  dist(m)  cmd(m/s)  safe(m/s)")        for t, d, v_cmd in timeline:            v_safe = self.limit_velocity(d, v_cmd)            status = "OK" if v_safe > 0 else "STOP"            print("{:>4.0f}   {:>6.2f}   {:>6.2f}   {:>7.2f}   {}".format(                t, d, v_cmd, v_safe, status))        print("stop_count = {}".format(self.stop_count)) if __name__ == "__main__":    monitor = SafetyMonitor()    timeline = [        (0.0, 1.20, 1.50),        (5.0, 0.90, 1.50),        (10.0, 0.62, 1.50),        (15.0, 0.28, 1.50),        (20.0, 0.70, 1.50),        (25.0, 1.05, 1.50),    ]    monitor.run_simulation(timeline)
目的:实现一个与“安全控制策略”一节完全对应的速度监控器,模拟工人从远处走近再离开的过程中,机器人速度被逐步限制的过程。
  1. def limit_velocity(self, distance, cmd_vel):安全监控核心函数,输入当前距离和控制器请求速度,输出安全速度
  2. if distance <= self.d_stop:当进入红色制动区,机器人直接返回 0.0 速度
  3. ratio = (distance - self.d_stop) / (self.d_warn - self.d_stop)计算工人在警示区内的相对位置,0 表示刚进警示区
  4. allowed = ratio * self.max_vel把安全速度上限与距离线性绑定
  5. return min(cmd_vel, allowed)用取小值确保机器人永不超速
  6. monitor = SafetyMonitor()用默认参数创建监控器,最大速度 2.0 m/s
  7. monitor.run_simulation(timeline)执行一段“工人靠近再离开”的时序模拟

常见误区

误区商家宣传“即插即用、无需围栏”,很多初学者以为协作机器人可以完全裸奔,人机零距离随便接触也不用防护。

正解协作机器人只是“降低了”人与机器共事的风险,并没有消除风险。ISO/TS 15066 要求的是一种协作操作方式,前提是完成风险评估并验证力、速度、功率等参数都在限值内。很多实际场景仍需搭配安全光栅、急停按钮或安全区域扫描仪。就像舞伴再默契,舞池边上依然要有防滑垫和护栏。

为何常见:厂商宣传聚焦“无围栏”卖点,导致用户把“协作”误读为“零风险”。

误区有人觉得协作机器人动作慢吞吞,碰一下也最多被“推一下”,不会造成伤害。

正解安全与否不只看速度,还看质量、接触面形状、碰撞部位和夹持力。一个慢速但负载 10 公斤、末端是尖角的机械臂依然可能造成严重伤害。ISO/TS 15066 提供的是人体各部位的生物力学限值,必须验证的是“最坏情况下的接触力”是否在限值内。

为何常见:直觉上“慢=安全”很符合日常经验,忽视了动能与接触压强的真实物理作用。

误区新手去现场看到工程师抓着机械臂走来走去,以为拖拽示教就是“用力拖,机器人学什么是什么”,完全不需要编程技巧。

正解拖拽示教只是记录路径,关键动作的质量完全取决于操作者:路径是否避开了所有干涉、速度是否均匀、关键点是否合理。拖完还需要在图形化环境中补充逻辑(夹取、放置、等待信号)和安全参数(速度上限、力矩限制),并做碰撞力复测。拖拽是“走一遍”,但“走得好”需要方法与经验。

为何常见:示教过程看起来太像“手动教学”,让人误以为它没有技术含量。

误区不少工程师认为:机器人通过了 ISO 10218 认证,工厂直接部署就安全了,不需要再做额外评估。

正解ISO 10218 规定的是机器人本体和集成的基本安全要求,但每个工位的人机距离、工件形状、人员流动、异常工况各不相同,必须针对具体应用做风险评估。就像舞者拿到了舞技证书,但在不同舞台跳舞前,仍然要检查地板有没有水、灯光会不会刺眼。

为何常见:认证给人一种“权威背书”的错觉,让人忽略了“风险存在于具体场景”这一事实。

面试题

Q1. 协作机器人与传统工业机器人相比,最突出的设计特点是?

单选题 · easy

  • A.重量更大不易搬运
  • B.内置安全感知与力控← 正确答案
  • C.必须安装安全围栏
  • D.只能完成单一动作

答案:B。协作机器人的核心设计是安全感知能力——位置感知、力矩感知、速度限制,使人可以安全靠近。A 错误是反向描述,C 是传统机器人的做法,D 是错误限制。

Q2. ISO/TS 15066 与 ISO 10218 的关系是?

单选题 · mid

  • A.前者是强制法规则,后者是建议
  • B.前者提供协作安全细节,后者是基础要求← 正确答案
  • C.两者只能选择其一使用
  • D.两者都只适用传统机器人

答案:B。ISO 10218 是基础安全要求,ISO/TS 15066 属于技术规范,进一步细化协作场景的速度、力、风险验证方法,两者是“基础+细节”的补充关系。

Q3. 安全距离公式 d_s = v_r · t_r + d_b + d_m 中,d_m 表示?

单选题 · easy

  • A.整机总重量
  • B.安全余量← 正确答案
  • C.电机转矩
  • D.工作半径

答案:B。d_m 是安全余量,为测量误差、负载波动等不确定性额外保留的缓冲距离。它是四位舞者间的“额外一步”,避免各种误差叠加导致意外。

Q4. 协作机器人常见的系统架构包含以下哪些部分?

多选题 · mid

  • A.机械本体← 正确答案
  • B.传感系统← 正确答案
  • C.控制系统← 正确答案
  • D.冷却润滑管路

答案:ABC。协作机器人三大核心部分是机械本体(骨骼)、传感系统(感官)和控制系统(大脑)。冷却润滑是辅助系统,不属于架构的核心组成部分。

Q5. 五次多项式轨迹 q(t)=q0+(q1-q0)(10t³-15t⁴+6t⁵) 的主要作用是?

单选题 · hard

  • A.让位置速度加速度连续平滑← 正确答案
  • B.增大机器人的负载能力
  • C.缩短工作流程的总时间
  • D.改善通信链路的延迟

答案:A。五次多项式在两端的速度和加速度都为零,能让机械臂从起点到终点平滑过渡,避免急停急转产生的冲击。它不改变负载、不必然节省时间,也不涉及通信。

Q6. 人机协同模式通常包括哪几种?

多选题 · mid

  • A.安全共融← 正确答案
  • B.任务协作← 正确答案
  • C.空间共享← 正确答案
  • D.静默旁观

答案:ABC。人机协同的三种典型模式是安全共融(同区不同务)、任务协作(同务配合)和空间共享(分时使用)。“静默旁观”不是标准中的协作模式。

Q7. 速度监控策略中,当人与机器人的距离进入警示区时机器人会?

单选题 · mid

  • A.加速完成当前任务
  • B.按比例降低允许速度← 正确答案
  • C.直接断电停止运行
  • D.发警告后维持原速

答案:B。警示区内速度按“距离越近速度越低”的比例线性限制,只有进入制动区才完全停止。这是为了在安全与效率间保持平衡,而不是一进警示区就停机。

Q8. 风险评估公式 R = P × S 中,P 和 S 分别代表?

单选题 · easy

  • A.功率与速度
  • B.概率与严重度← 正确答案
  • C.精度与强度
  • D.位置与步长

答案:B。R = P × S 中 P 是危险事件发生概率,S 是伤害严重度。两者相乘得到风险等级,是标准体系中“舞前体检”的核心指标。

Q9. 关于拖拽示教,下列说法正确的是?

多选题 · hard

  • A.需要人工手持末端引导← 正确答案
  • B.适合复杂焊接场景
  • C.直观且无需大量编程← 正确答案
  • D.不适用轻量协作机器

答案:AC。拖拽示教的核心就是人工牵引末端记录轨迹,直观易用,适合路径简单的任务。但它不适合对轨迹精度要求极高的焊接场景,也并非不适用于轻量机器人——恰恰相反,轻量机器人最常用拖拽示教。

Q10. 在 ISO/TS 15066 的人体模型评估中,限制机器人接触力的主要依据是?

单选题 · extreme

  • A.功率消耗的极限值
  • B.人体部位痛阈数据← 正确答案
  • C.电机温度的极限值
  • D.环境湿度的监测值

答案:B。ISO/TS 15066 依据生物力学研究给出人体各部位(头部、颈部、胸部等)可承受的接触力限值,用于评估瞬态接触与准静态接触的伤害风险。功率、温度、湿度都不是人体伤害评估的直接依据。