芯步AC4-10A智能控制器通过开放的HTTP API接口,可实现远程通断控制、状态查询等核心功能,支持云端调用和纯局域网部署两种模式。以下方案涵盖接口对接流程、代码示例及典型场景。
一、 背景与选型分析
在物联网(IoT)项目中,对于仓库、农业大棚、智慧楼宇等场景,往往需要对现有照明、风机或水泵进行交流供电管理。传统的改造方式布线复杂,而采用成品智能控制器可以大幅缩短开发周期。
芯步 UNI-TDQ-AC4-10A 是一款支持 Wi-Fi 直连的交流智能通断器。选择它的核心优势在于:
免开发硬件:无需设计电路,直接串联在 85V-265V AC 电路中,支持最高 2200W 阻性负载。
接口开放性:设备自带标准的 HTTP 接口。这意味着无论你的后台是 Java、Python 还是 PHP,甚至前端 JavaScript,只要能够发起 HTTPS 请求,即可控制设备,无需复杂的 MQTT 协议栈开发。
部署灵活性:支持私有化部署。对于数据安全要求比较高的项目,设备可以完全运行在局域网内,不经过外网云端。
二、 对接设计
在本方案中,我们采用 “业务系统-芯步云/私有云-硬件” 的三层架构:
设备层(AC4-10A):连接 WiFi,通过心跳维持与服务器的连接。
平台层(API 网关):芯步提供的云端接口,或者是客户自建的私有化消息服务器。
应用层(你的项目):你的 Web 后台、App 后端或 SCADA 系统。
三、 实施步骤详解
1. 环境准备与网络配置
在写代码之前,需要确保设备联网。这一步骤与阿里云 IoT 平台类似,但芯步支持直接配置 WiFi,不需要网关中转。
操作流程:通过“芯步小程序”或“物联网控制台”进行配网。
关键点:设备仅支持 2.4G WiFi。在配置时,需要将手机热点或现场 WiFi 的密码通过蓝牙/AirKiss 技术写入设备,设备听到指令后会尝试连接指定的目标 WiFi。
2. 获取 API 凭证
在芯步控制台完成注册并创建“工作台”后,你会获得两个关键凭证:
AppID:标识你的应用身份。
AppKey/Secret:用于生成签名(Sign),确保接口安全,防止被恶意调用。
3. 核心接口调用逻辑
该设备的 HTTP 接口设计采用了 签名验证机制。除了必要的参数(如设备ID、开关状态)外,请求头中需要携带三个关键值:
appId:你的应用IDts:当前时间戳(Unix 时间戳,精确到秒),用于防止请求重放攻击。sign:签名值。
签名算法示例(通用逻辑)
为了防止你在对接过程中遇到 401 签名错误,签名规则通常是将
AppKey、设备ID、时间戳按照特定顺序排序后进行 MD5 或 SHA-1 加密。具体签名算法请参照官方最新文档,以下代码逻辑可供参考:
4. 关键指令集
在你的业务逻辑开发中,主要调用以下指令:
开启设备:发送
{“switch”: “on”}或{“status”: 1}。关闭设备:发送
{“switch”: “off”}。查询状态:发送查询指令,接口会返回设备的实时通断状态以及当前功率(部分版本支持)。
延时任务:如果需要定时关闭,可以利用接口参数中的
delay字段,或者在你的服务器本地设置定时任务(Cron Job)来触发关闭接口。
四、 高级场景与优化
1. 局域网私有化部署
对于不允许数据出公网的场景,芯步支持 私有化部署。
做法:将设备配置指向你自建的服务器 IP(如
192.168.1.100)。优势:延时更低(毫秒级),不依赖外网宽带。
对接变化:只需将上述代码中的
api.yoyoiot.net换成你的服务器内网地址即可,接口协议完全一致。
2. 状态同步机制
虽然有 HTTP 接口可以查询状态,但为了实时性,最好配合回调(Webhook)。
配置 Webhook:在芯步控制台配置你的服务器接收地址。
触发逻辑:当设备状态发生变化(物理按键按下或自动断电)时,平台会主动 POST 数据到你的服务器,告知设备最新状态。
业务价值:这可以解决“手动按了设备按钮,但软件界面显示不一致”的问题,实现双向同步。
3. 负载安全注意事项
在将设备集成到你的项目说明书或方案中时,必须提醒最终用户:
感性负载限制:AC4-10A 虽然标称 10A,但针对电机、水泵等感性负载,启动电流极大,降额使用(如控制在 300W 以内),否则容易导致继电器触点粘连。
接线规范:L(火线)进 L 出,N(零线)直通,严禁接反,必须符合国家电气安装标准。
五、 总结
将芯步 AC4-10A 对接到自有项目,本质上是一个简单的 HTTP 协议调用过程。你不需要关心底层 Wi-Fi 协议栈,只需要:
配网(让设备上网)。
拿凭证(获取 AppID 和 Key)。
写代码(构造带签名的 HTTP 请求)。
这套方案非常适合快速迭代的传统行业软件开发商,可以在 1天内 完成从拆箱到软件功能上线的全过程。