本文由 KeepRobots 团队根据公开资料整理。KeepRobots 是温哥华的机器人现场服务公司,给别家生产的机器人做北美现场部署和售后。本文是工程笔记,不是法律或规范解释;电梯和消防相关的判断,以当地监管机构、持照电梯承包商和消防工程师的意见为准。

国内做过楼宇配送的团队,对「梯控」不陌生:装一个梯控盒子,接上呼梯按钮,机器人就能自己上下楼。

到了北美,同样的盒子可能在第一步就停下来:物业说电梯的事得找维保公司,维保公司说在电梯上加装设备可能要走改造许可,许可要持照承包商来报。而这家维保公司,很可能就是电梯原厂。

这不是对方刁难。在北美,电梯是受监管的设备。2026 年 4 月,美国伊利诺伊州电梯安全主管部门提交州电梯安全审查委员会讨论的建议里,就把机器人和电梯的交互按需要许可的电梯改造(alterations of an elevator requiring a permit)来处理。

这篇讲工程上要先想清楚的几件事:三条集成路线怎么选、谁有资格动电梯、门禁怎么接、火警时机器人该做什么,以及一份现场勘查清单。

机器人在北美坐电梯、过门禁


一、三条路线:OEM 云 API、自带梯控模块、机械按按钮

路线怎么做改不改电梯北美的现实
A. 电梯原厂(OEM)API机器人或云端调用原厂接口呼梯、选层、拿轿厢状态原厂装少量硬件,许可和检验由原厂配合当地要求办理最「正规」,但要业主和原厂签约或订阅,周期和费用由原厂定
B. 机器人厂商自带梯控模块在轿厢、轿顶或机房加 IoT 模块,模拟按键或取信号碰到按钮回路、加装电气设备,就可能算改造国内最常见;在北美要先确认这算哪一类改造、谁来装
C. 机械方式按按钮机器人用机械臂或推杆按按钮,靠视觉识别楼层不改电梯通常不涉及电梯改造许可(物业和当地要求仍要问),但可靠性、速度、按钮样式兼容性都是问题

A 路线:原厂 API 已经能用的几家

  • Otis Integrated Dispatch(OID):官网写明是「云端或本地部署的 API」,用来把服务机器人接到 Otis 电梯;Otis 工程师在楼里装少量硬件,业主买订阅后,加机器人不再另收费;兼容 2000 年以后生产的大多数 Otis 电梯;安装时由 Otis 配合当地安全检查员确保合规。公开案例里有 Keenon(波兰酒店)和 Pudu(新西兰奥克兰酒店)。
  • KONE:Elevator Call API 走 WebSocket,可以发层站召唤或目的楼层呼梯,实时收到呼梯状态和分配的电梯;另有面向机器人的 Service Robot API(KONE 越南 2025 年的新闻稿介绍过医院试点)。接入条件(是否要业主签约、是否要求 KONE 维保)以 KONE 的答复为准。
  • TK Elevator(TKE):美国官网有 API 页面。北美有公开实例:TKE 2022 年 9 月公告,阿尔伯塔省卡尔加里癌症中心约 30 台电梯中,主楼 12 台服务梯带机器人接口,机器人可通过 Wi‑Fi 或 5G LTE 呼梯、选层,用机器视觉判断轿厢装不装得下(公告说明的是接口能力,没写机器人品牌和运行情况)。
  • Schindler、Mitsubishi:我们没找到它们在北美公开提供机器人乘梯 API 的资料(三菱电梯在新加坡有和机器人厂商的对接合作)。我们查到的 Schindler PORT 接口公开资料,用途是人员门禁和目的楼层,不是机器人调度。

B 路线: 不少中国厂商同时提供两条路。比如 Pudu 官网写了「云方案」(不改电梯,兼容 KONE、OTIS)和自研的「硬件方案」梯控模块,文档里说明模块通过模拟人的操作乘梯、不接入电梯内部系统。

要注意的是: 「不接入内部系统」是技术描述,监管上怎么归类,是当地监管机构和持照承包商的判断,跟哪家的模块无关。在北美,任何梯控模块只要装进机房、井道或轿厢,或者接到按钮回路上,都要先问持照电梯承包商这算哪一类改造。 下一节讲为什么。

二、谁有资格动电梯:以 BC 省为例

1. 规范基础。 美国和加拿大的电梯安全规范 ASME A17.1 和 CSA B44 是两国协调(harmonized)编写的。A17.1-2022 新增了第 2.26.13 节 Remote Interaction Operation(RIO,远程交互运行),允许场外系统和电梯控制器交换信号、登记呼梯;同时新增第 8.14 节网络安全要求。这是目前跟「机器人接电梯」最接近的条文。

但各辖区采用的版本不一样。BC 省现行的是 CSA B44-16(2020-04-30 起,Technical Safety BC 官网),早于 RIO 条文;Technical Safety BC 曾就采用 B44-19 征求意见,而 B44-19 对应的 A17.1-2019 也还没有 RIO。

2. 改造要走许可。 在 BC 对电梯做受监管的工作,承包商必须持 Technical Safety BC 的执照;改造前由持照承包商提交技术资料。Technical Safety BC 把改造分成两类:

  • Major(重大改造):要 BC 注册工程师盖章,恢复使用前做验收检验。
  • Minor(一般改造):完工 30 天内提交声明,需要检验的按要求申请。

哪一项算哪一类,查它的《List of Alterations》表(对应 A17.1/B44-2016 第 8.7 节)。表里没有「机器人接口」这一行,但有三行跟梯控模块最相关(以下是曳引梯 8.7.2.x,液压梯看 8.7.3.x 的对应条目):

表里的条目类别
8.7.2.8 在井道和机房新装或改动电气设备、布线、线槽、线缆(含 HVAC、监控/视频设备)minor
8.7.2.27.4 控制器(Controllers)major
8.7.2.27.6 运行控制方式变更(Change in type of operational control)major
8.7.2.27.4(e) 应急电源或消防运行(FEO)用的控制器改造 minor,新增 major
8.7.2.28© 消防运行的应急操作和信号装置minor

所以模块装在哪、接到哪,决定它可能落在哪一格。 只在机房加一个盒子、拉一根线,可能落在 minor;动到控制器或改变运行控制方式,很可能落在 major;想从控制器取消防信号给机器人,可能碰到最后两行。最终怎么归类,由持照承包商和 Technical Safety BC 判断,不要自己下结论。

3. 美国的参照:伊利诺伊州,口径还在变。 伊利诺伊州消防局电梯安全审查委员会从 2024 年起讨论 Relay Robotics 让机器人乘梯的申请(适用于芝加哥以外地区,芝加哥单独管):

  • 2026-04-09 的议程里,电梯安全主管部门提交委员会的建议是:现行规范没有明确依据,A17.1-2022 第 2.26.13 节(RIO)可以作为方向;不算「新技术」;建议条件是符合 2.26.13 和 8.14,机器人交互按需要许可的电梯改造办理,许可申请里写「Installing Robot Interaction Operation」。
  • 2026-06-11 的会议(纪要附在 2026-09-10 的议程里),委员会表决同意拟采用 A17.1-2025(accept for adoption,规则还要走州立法程序,尚未生效),但明确排除 RIO(2.26.13);同时把此前通过的机器人动议改成「机器人与电梯的交互建议符合 A17.1-2025 第 8.14 节网络安全要求」。原先建议里的「按改造办许可」这一条是否保留,纪要里没写。

我们的解读:监管方愿意放行机器人乘梯,但对「场外系统直接接电梯控制器」仍然很谨慎,网络安全是他们最看重的一点。 美国各州、甚至各城市流程都不一样,同一个州几个月里口径也会变,每个项目都要按当地当时的要求来。

4. 别忽视电梯工会的态度。 国际电梯工人工会(IUEC,覆盖美国和加拿大)在 2021 年 A17.1 公众评审时公开表示,对 RIO、联网电梯控制的漏洞、谁能访问这些系统有「serious safety concerns」。所以现场的电梯技工对「外来设备接电梯」可能有顾虑,项目早期就要把他们拉进来。

三、门禁:先看防火门,再谈接口

先看路线上的门是什么门。

  1. 防火门。 按 NFPA 80,用电磁门吸保持常开的防火门,在烟感动作、火警或断电时必须自动关闭。所以机器人的路线不能依赖「这扇门一直开着」,更不能让人用楔子把防火门撑住给机器人让路。火警时门会关,机器人要能处理「门关了,任务中止或改道」。
  2. 自动门。 全能量自动门(人一靠近就开)按 ANSI/BHMA A156.10,要有安全传感器;低能量门按 A156.19,要求「有意识的触发动作」(knowing act),手机 App 等方式也可以作为触发方式。机器人通过无线或干接点触发低能量门,接线和设置由门的安装商负责,不要自己改门机。

再谈接口。 北美商业楼宇的门禁一般由楼宇的安防集成商维护,机器人厂商不直接动门禁系统。常见三种接法,各有要问清楚的工程细节:

接法怎么接要问清楚的
干接点 / 继电器集成商给一路「开门」输入,机器人通过网关触发脉冲还是保持?开门保持多久?有没有门状态(开/关/被挡)回传给机器人
读卡器协议老系统多是 Wiegand(单向、不加密);新系统多是 OSDP(双向、可加密、有链路监控,2020 年成为国际标准 IEC 60839-11-5)机器人用的是哪种凭证?门禁日志里怎么标记「机器人通过」
门禁平台里建「机器人凭证」集成商在平台里给机器人建凭证,按时段和区域授权授权范围、过期和吊销流程、出了事谁看日志

无论哪种,门的开关状态最好能回传给机器人,否则机器人只能靠激光雷达和相机自己判断门开没开。

四、火警时机器人该做什么:写进乘梯状态机

北美电梯有消防员紧急运行(Phase I 召回):火警系统或电梯厅钥匙开关触发后,轿厢不再响应呼梯,直接回到指定的召回层,开门停在那里;如果召回层本身的烟感动作了,就去备用召回层。

规范里没有专门针对机器人的条文,下面是我们的工程建议:

  • 分清三种「不可用」:消防模式、电梯接口不可用、轿厢里断网,处理方式完全不同,不要合并成一个标志位。
  • 在等梯、正在进梯或出梯时遇到消防模式:取消已登记的呼梯,退回电梯厅一侧,离开门口。进梯进到一半不要跟车。
  • 已经完全在轿厢里:跟车到召回层(可能是备用召回层),开门后立刻出梯,并且离开电梯厅门口,不要挡住消防员。
  • 接口不可用但没有消防信号:没进梯就取消任务;已经在轿厢里就按本地状态走完。
  • 轿厢里常常没信号。 金属轿厢会挡住 Wi‑Fi 和 LTE。进梯前把目标楼层锁定在本地,轿厢里断网时靠本地状态机和楼层识别完成出梯。

断网时机器人拿不到云端的消防信号,只能靠本地判断。下面这些是可以考虑的本地信号(组合使用,单一信号容易误判):

本地信号怎么取说明
轿厢没在目标层停,一路直达某一层楼层估计(气压计 / IMU 积分 / 视觉识别楼层显示)到达层等于已知的主召回层或备用召回层时,可信度更高
到站后门开着不再关激光雷达 / 相机看门的状态Phase I 召回到站后门保持打开
轿厢内消防指示灯亮、有蜂鸣相机 / 麦克风不同电梯的指示方式不同,要现场采样
出梯后重新联网,接口返回消防模式API 状态联网后第一件事就是确认状态

一个乘梯状态机骨架(示意,接口名按你们实际的 OEM API 或梯控模块替换;拿不到 car_id 的路线,退化为「到站且方向一致的任一轿厢」):

from enum import Enum, auto

class Ride(Enum):
    IDLE = auto(); CALLING = auto(); WAITING = auto(); BOARDING = auto()
    IN_CAR = auto(); ALIGHTING = auto(); RETREAT = auto(); FIRE_EXIT = auto(); PARKED = auto()

def step(state, ev, ctx):
    """ev: 电梯接口 / 本地传感器事件;ctx: 本次任务上下文;ctx.actions: 待执行动作"""
    # 1) 消防模式优先:完全在轿厢里才跟车;呼梯、等梯、进梯、出梯中一律退回厅侧
    if ev.fire_service:
        if state is Ride.IN_CAR:
            return Ride.FIRE_EXIT                     # 跟车到召回层(可能是备用召回层)
        if state in (Ride.CALLING, Ride.WAITING, Ride.BOARDING, Ride.ALIGHTING):
            ctx.pending_cancel = True                 # 呼梯要取消(接口可能已不可用,先记下)
            return Ride.RETREAT
    # 2) 接口不可用:只在没进梯时放弃;取消发不出去就记下,恢复后补发,避免「幽灵呼梯」
    #    轿厢内断网(link_lost)不在这里处理,靠本地状态走完
    if ev.api_unavailable and state in (Ride.CALLING, Ride.WAITING):
        ctx.pending_cancel = True
        return Ride.RETREAT
    if ctx.pending_cancel and ev.api_available:
        ctx.actions.append("cancel_call"); ctx.pending_cancel = False

    if state is Ride.IDLE and ctx.need_floor_change:
        ctx.target_floor_locked = ctx.target_floor    # 进梯前锁定目标楼层到本地
        ctx.retries = 0; ctx.wait_cycles = 0
        ctx.actions.append("place_call")
        return Ride.CALLING
    if state is Ride.CALLING:
        if ev.call_accepted:
            return Ride.WAITING
        if ev.call_rejected or ev.timeout:            # 只在失败 / 超时时计数
            ctx.retries += 1
            if ctx.retries > 3:
                return Ride.RETREAT
            ctx.actions.append("place_call")
        return Ride.CALLING
    if state is Ride.WAITING:
        too_full = ev.door_open and ev.car_matches(ctx) and not ev.car_space_ok
        if ev.timeout or too_full:                    # 超时或装不下:重新呼梯,有次数上限
            ctx.wait_cycles += 1
            ctx.actions.append("cancel_call")
            if ctx.wait_cycles > 3:
                return Ride.RETREAT
            ctx.actions.append("place_call")
            return Ride.CALLING
        if ev.door_open and ev.car_matches(ctx):
            ctx.actions.append("enter_car")
            return Ride.BOARDING
        return Ride.WAITING
    if state is Ride.BOARDING:
        if ev.door_closing or ev.timeout:
            return Ride.RETREAT                       # 门要关了:退回厅侧,不硬闯
        return Ride.IN_CAR if ev.inside_and_clear_of_door else Ride.BOARDING
    if state is Ride.IN_CAR:                          # 不依赖网络
        if ev.local_fire_suspected:                   # 本地信号组合判断(见上表)
            return Ride.FIRE_EXIT
        if ev.door_open and ctx.local_floor_estimate == ctx.target_floor_locked:
            ctx.actions.append("exit_car"); return Ride.ALIGHTING
        if ev.ride_timeout and ev.door_open:          # 楼层估计可能错了:最近一层出梯并上报
            ctx.actions += ["exit_car", "report_wrong_floor"]; return Ride.ALIGHTING
        return Ride.IN_CAR
    if state is Ride.ALIGHTING:
        return Ride.IDLE if ev.outside_and_clear_of_door else Ride.ALIGHTING
    if state is Ride.FIRE_EXIT:                       # 门开即出梯,离开电梯厅门口后停靠
        if ev.door_open:
            ctx.actions.append("exit_car_and_clear_lobby")
        return Ride.PARKED if ev.outside_and_clear_of_door else Ride.FIRE_EXIT
    return state                                      # RETREAT / PARKED 交给上层任务调度

北美机器人乘梯:路线与状态机

五、现场勘查清单:签合同前就要问的 10 个问题

#问谁问什么为什么
1物业电梯品牌、型号、出厂年份决定能不能走原厂 API(比如 OID 兼容 2000 年后的大多数 Otis 电梯)
2物业维保合同在哪家?是不是原厂改造通常要通过维保方报批
3维保方原厂有没有机器人接口?业主要签什么、多少钱、多久A 路线的周期和费用由原厂定
4维保方如果用机器人自带模块,装在哪里算哪一类改造(BC:minor / major)决定要不要工程师盖章和验收检验
5维保方楼里有没有电梯工会要求影响谁能进机房、谁能接线
6物业机器人会经过哪些门?哪些是防火门?哪些是门禁门防火门火警必关,门禁门要接口
7安防集成商门禁平台、读卡器协议(Wiegand / OSDP)、能给什么接口决定开门方案
8物业 / 维保方主召回层和备用召回层各在哪一层写进状态机,火警时去哪出梯
9现场实测轿厢里、电梯厅的 Wi‑Fi 和 LTE 信号决定轿厢内是否必须离线完成
10客户机器人乘梯的时段、是否和人同乘、是否有专用服务梯影响调度策略和安全评估

这 10 个问题里,第 2 到第 4 个最耗时间,可能要几周,所以要在合同签订前就开始问,别等机器人到了现场才发现电梯接不上。

六、写在最后

在国内,「梯控」是机器人厂商自己能搞定的技术问题;在北美,它首先是一个跟电梯原厂、持照承包商、安防集成商、物业一起推进的协调问题。技术方案很少是卡点,卡点通常是谁签字、谁报批、谁付钱。

KeepRobots 提供的部署服务包含现场勘查,以及和电梯、门禁承包商的协调;我们只做服务,不卖机器人。如果你们在规划加拿大的部署,可以看看这两页:

  • 加拿大机器人售后与现场服务(各省覆盖方式和公开价格):https://keeprobots.com/zh/service/canada/
  • 温哥华服务点(面向中国机器人品牌):https://keeprobots.com/zh/partners/vancouver/

资料来源

  • Otis Integrated Dispatch 产品页:https://otis.com/en/us/products-services/products/otis-integrated-dispatch
  • Otis × Keenon(波兰):https://elevatorworld.com/news/daily-news/otis-elevators-integrate-with-delivery-robot-at-polish-hotel/ ;Otis × Pudu(新西兰):https://www.mannpublications.com/mannreport/2025/04/30/otis-elevator-integrates-with-a-delivery-robot-at-new-zealand-hotel/
  • KONE Elevator Call API(WebSocket):https://www.kone.co.uk/existing-buildings/smart-solutions/health-and-wellbeing/elevator_call/ ;KONE Service Robot API(越南新闻稿):https://www.kone.vn/en/stories-and-references/press-releases/KONE-Vietnam-Awarded-Sao-Khue-2025-for-Service-Robot-API.aspx
  • TKE API:https://www.tkelevator.com/us-en/products/digital-solutions/api/ ;卡尔加里癌症中心:https://www.newswire.ca/news-releases/tk-elevator-installs-digitally-advanced-elevators-with-remote-and-robotic-capabilities-at-the-new-calgary-cancer-centre-846702414.html
  • Pudu FlashBot(云方案 / 硬件方案):https://www.pudurobotics.com/products/flashbot-new ;Pudu 梯控说明:https://academy.pudutech.com/en/docs/huan-le-song-2-pei-jian
  • ASME A17.1 / CSA B44:https://www.asme.org/codes-standards/find-codes-standards/safety-code-for-elevators-and-escalators
  • 伊利诺伊州消防局电梯安全审查委员会 2026-04-09 议程(附录 C):https://sfm.illinois.gov/content/dam/soi/en/web/sfm/events/documents/elevatorsafetyreviewboardagenda04-09-2026.pdf ;2026-09-10 议程(附录 A 上次会议纪要:采用 A17.1-2025、排除 2.26.13,机器人动议改为建议符合 8.14):https://sfm.illinois.gov/content/dam/soi/en/web/sfm/events/documents/elevatorsafetyreviewboardagenda09102026.pdf
  • IUEC A17.1 公众评审提醒(2021):https://iuec.org/wp-content/uploads/IUEC-Codes-Standards-Alert-A17.1-Public-Review-Period-1.pdf
  • Technical Safety BC 电梯(现行 CSA B44-16):https://www.technicalsafetybc.ca/technologies/elevating-devices ;执照:https://technicalsafetybc.ca/technologies/elevating-devices/elevating-devices-licences
  • Technical Safety BC Directive「Major and Minor Alterations」:https://www.technicalsafetybc.ca/regulatory-resources/regulatory-notices/directive-major-and-minor-alterations ;List of Alterations(A17.1/B44-2016):https://www.technicalsafetybc.ca/regulatory-resources/regulatory-notices/list-alterations-asme-a171b44-2016
  • SIA:OSDP 成为 IEC 60839-11-5:https://www.securityindustry.org/2020/06/08/sia-open-supervised-device-protocol-approved-as-an-international-standard/
  • NFPA 80 防火门常开装置(FCIA 讲义):https://www.fcia.org/Portals/0/Documents/Resources/Presentations/Educational-Webinar-Series-Presentations/2022-01-FCIA-Fire-Doors-Have-One-Job.pdf
  • A156.10 / A156.19:https://www.constructionspecifier.com/power-operated-doors-maintaining-safe-egress-with-updated-standards/
  • 消防员紧急运行(Phase I):https://www.fireengineering.com/firefighter-training/fire-service-operations-with-elevators/
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐