CATALOG

共享麻将馆的无人化运营,核心挑战是如何让用户在小程序上自助完成开门、通电,订单结束后又能自动断电锁门。以下方案基于芯步的智能包间控制器和开放接口,帮你把硬件选型、接口对接和业务联动串起来。

1. 项目概述与选型分析

在共享麻将馆的无人值守场景中,痛点是“人房比”过高以及“电耗管理”粗放。传统的管理模式依赖人工现场开关门、送电,不仅运营成本高,而且无法实现 24 小时自助服务。

本方案基于芯步的开放平台,旨在通过其成熟的智能硬件与全开放的 HTTP API 接口,将传统麻将馆改造为“用户手机下单 -> 系统自动授权 -> 远程通电开灯 -> 订单结束自动断电关门”的全流程自动化场所。

核心选型:智能包间控制器

针对共享麻将馆的特定场景,普通插座无法控制门禁,而单路通断器无法独立管理麻将机、空调、照明、排风等多路负载。因此,推荐使用 芯步的“智能包间控制器” (如 7 路版本)。

该设备专为服务型门店包间设计,具有以下优势

  • 多路独立控制:提供 1 路 30A(空调用)、3 路 10A(照明/排风)、2 路 10A(插座/麻将机)、1 路门禁控制。实现一个包间单设备全覆盖。

  • 门禁直连:直接提供直流输出接口控制电磁锁/电插锁,无需额外采购门禁控制器。

  • TTS 语音播报:支持远程下发文字转语音,可在订单即将结束时提醒顾客续费。

2. 硬件设备选型清单与拓扑结构

为了实现“门禁+照明+电器”的联动,我们需要利用包间控制器内的多个独立“继电器”来分别管理不同的线路。

推荐设备清单

设备名称型号/规格推荐功能作用对接关键点
智能包间控制器芯步 7路控制器核心控制单元,负责通断电、门磁控制HTTP/MQTT 双协议,支持远程下发指令
电磁锁/电插锁标准 12V 磁力锁控制大门开关必须接入控制器的 NC(常闭)或 NO(常开) 端口
出门开关86型复位开关内部紧急出门使用接入门禁控制器的信号线接口
强电线路2.5㎡/4㎡ 线缆负责照明、麻将机、空调线路需区分线路,分别接入控制器的 L1-L4 等接线端

物理接线拓扑

在项目的落地实施中,强电布线是集成的基础。将配电箱内的原有回路进行拆分:

  1. 总闸 -> 智能包间控制器(进线端)

  2. 控制器出线端

    • Relay 1 (L1):接 照明灯 线路(灯光控制)。

    • Relay 2 (L2):接 麻将机/插座 线路(设备供电)。

    • Relay 3 (L3):接 排风扇/吸烟灯

    • NC/COM 端口:串联至 电磁锁(门禁控制)。

  3. 独立供电:控制器保持 24 小时通电,确保门禁控制板在关门状态下依然有电,但门锁本身的电路通过继电器断开。

3. 开放接口集成开发方案

芯步的开放接口是连接“业务端(小程序/SAAS系统)”“硬件设备”的桥梁。整个集成过程基于标准的 HTTP 请求,签名机制简单,可在 10 分钟内完成首次对接测试

3.1 接口基础设定

  • 请求地址http(s)://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

  • 鉴权方式动态签名sign = md5( md5(AppSecret) + ts )。这种双重 MD5 的加密方式既保证了传输安全,又避免了明文传输密钥的风险。

  • 数据格式application/json

3.2 关键指令集成逻辑

针对麻将馆场景,我们需要封装以下核心 API 指令(以 Java/Python/Node 后端均可实现):

业务动作下发指令 (Order JSON)指令解析
开门 + 通电{"device":"xxx","order":{"power1":1, "power2":1, "reset_time": 3600}}power1 控制门禁断电(开门);power2 控制照明线路闭合;reset_time 是定时任务,即 1 小时后自动执行全关,用作看门狗保护
临时关门(打扫){"device":"xxx","order":{"power1":0}}单独控制门锁继电器吸合(关门),但保持屋内灯光和麻将机不断电,方便保洁人员打扫。
订单续费提醒{"device":"xxx","order":{"play:gbk:16":"[message_3]您的订单还剩15分钟,请续费"}}调用 TTS 语音播报功能。[message_3] 为提示音前缀。
订单结束全关{"device":"xxx","order":{"batch":{"relay":[1,2,3],"power":0}}}批量控制。将门禁(线路1)、照明(线路2)、麻将机(线路3)同时断电

3.3 状态同步机制

为了保证系统稳定性,除了主动下发指令,还需利用消息推送机制。

  • 场景:用户在包间内按了“出门开关”,物理断开了门禁。

  • 处理:芯步云端会向我们的服务器推送设备状态变更。我们的系统收到推送后,更新订单状态为“已结束”或“门未锁”,防止出现订单进行中但门被意外打开的安全漏洞。

4. 业务流程控制逻辑

将上述接口与业务逻辑结合,共享麻将馆的无人化流程如下:

4.1 用户端小程序下单

  1. 用户支付成功 -> 后端系统获取订单开始时间与时长。

  2. 生成动态密码(可选):若需配合密码门禁,可通过接口下发密码:{"device":"xxx","order":{"pwd":"123456"}}

4.2 联动控制执行

步骤一:授权开门系统调用设备控制接口,发送 {"power1": 1}

  • 物理结果:Relay 1 断开,门禁电磁铁失电,门体吸力消失,顾客推门进入。

步骤二:进房通电为了防止“干烧”或安全隐患,门磁传感器检测到门打开(或简单逻辑:开门指令发出 10 秒后),系统自动发送 {"power2": 1, "power3": 1}

  • 物理结果:灯光亮起、麻将机得电、排风扇启动。

步骤三:计时中间状态

  • 在订单剩余 15 分钟时,系统自动调用 TTS 语音指令,包间内喇叭播报:“剩余时间不足,请及时续费”。

  • 若用户未续费,倒计时结束。

步骤四:自动断电与锁门订单结束后,系统发送全关指令 {"batch":{"relay":[1,2,3],"power":0}}

  • 物理结果:所有电器断电、电磁锁上电(如果是断电开门的锁型,需注意逻辑;配套使用断电开锁型磁力锁,即平时通电吸合,断电开门)。

    • :为了保证安全,此方案通常使用 通电上锁 的锁型,即控制器继电器默认为闭合状态保持门锁通电锁住;断电或异常时门自动打开,符合消防安全要求。

5. 异常处理与安全机制

在集成开发中,需要特别关注以下几个边界情况:

5.1 设备离线处理

  • 问题:调用接口返回 code:200 但设备未执行。

  • 机制code:200 仅代表平台收到指令,不代表设备收到。此时需轮询设备状态 API 或等待设备重连后的消息补发。

  • 策略:在系统设计时,如果执行开门指令后 5 秒内未收到设备状态反馈,应触发短信告警通知管理员,防止顾客被锁在门外。

5.2 防劫持与签名安全

所有接口均需携带 sign 签名和时间戳 ts。服务端需验证时间戳与当前时间的差值(只允许 5 分钟内的请求),防止重放攻击

5.3 最长通电保护

在 order 指令中增加 reset 或定时任务。例如:{"reset": 14400} (4小时后自动断开)。作为保险机制:即便软件层面因为死循环未发送“关闭”指令,硬件本身会在 4 小时后强制断开所有继电器,从根本上避免火灾隐患。

5.4 本地应急方案

当网络故障或服务器宕机时,集成方案需保留“本地应急”能力。

  • 利用包间控制器自带的 RJ45 网口/WiFi 健壮性,若网络中断,通过配置在网关层面的触发器(如:本地物理按键)仍可开启灯光。

  • 在软件层面,开发“管理员 24 小时应急码”功能,本质是一个存储在本地数据库的预设指令,用于极端情况下的手动放行。