设备模拟器
设备模拟器用于在真实硬件就绪前运行当前设备智能体:它会按设备规格在浏览器中启动临时设备,连接 MQTT、注册设备、上报状态并响应对话命令,方便先验证设备列表、状态、事件和消息链路。
先跑通设备流程
设备模拟器适合在这些阶段使用:
- 创建设备智能体后,快速确认命令、遥测和事件是否符合预期。
- 硬件原型还没有准备好,但需要先验证对话控制和状态展示。
- 接入 SDK 或 MQTT 前,先检查设备规格里的字段、参数和事件设计。
- 演示或联调时,需要一台能立即上线、能被控制的测试设备。
模拟器不会访问真实传感器或执行器,也不会验证固件、驱动、网络和系统权限。它主要用于验证设备智能体和设备规格,真实上线仍需要接入真实设备。
启动模拟设备
进入设备智能体工作区,在左侧 设备 面板点击 用模拟设备试试。弹窗中会显示这台模拟设备的基本信息:
- 设备名称:默认使用当前设备智能体名称生成。
- 设备 ID:默认生成一个
sim-开头的唯一 ID,可以重新生成。 - 连接信息:展开后可以查看命名空间、MQTT Broker、用户名和密码状态。
点击 模拟连接 后,浏览器会启动这台模拟设备,连接 MQTT,并向当前设备智能体上报第一条状态和数据。

连接成功后,设备列表中会出现带有 模拟 标记的设备。选中它后,右侧状态面板会显示:
- 设备在线状态。
- 当前数据。
- 可用命令。
- 最近上报事件。

状态上报
模拟设备会根据设备规格中的遥测字段生成初始状态。如果字段配置了默认值,会优先使用默认值;如果没有默认值,会按字段类型生成一个基础值,例如布尔值为 false,数字为 0,对象为空对象,数组为空数组,字符串为空字符串。
连接成功后,模拟设备会持续保持 MQTT 连接,并定期上报当前状态。状态面板中的当前数据会随上报内容更新。
如果设备规格中包含 online 或 connected 字段,模拟设备连接时会把它们更新为 true,断开时会更新为 false。
对话控制
保持模拟设备处于选中状态,在对话区输入控制指令,例如:
把目标温度设置为 24 度,并切换到自动模式。设备智能体会根据设备规格选择命令并生成参数。模拟设备收到命令后,会先校验命令名和参数;校验通过后更新本地状态,并继续上报最新状态。
可以通过这些结果判断命令是否生效:
- 当前数据是否变化。
- 命令是否出现在可用命令中。
- 对话中是否返回命令执行结果。
如果命令名不存在、参数缺失或类型不匹配,模拟设备会返回失败结果。此时通常需要回到设备规格,调整命令名称、参数字段或字段类型。
模拟事件
如果设备规格定义了事件,可以在对话中要求模拟设备上报一次事件,例如:
让当前模拟设备上报一次温度过高事件。设备智能体会根据当前设备规格生成符合事件定义的事件消息。事件上报成功后,可以在状态面板的 最近上报事件 中查看记录。
事件不会自动写入当前数据。需要改变当前数据时,应同时让模拟设备上报新的状态。
断开与重新连接
模拟设备运行在当前浏览器中。关闭页面、刷新页面或点击断开后,它会变为离线。设备列表中可能仍保留这条模拟设备记录,可以继续选择它查看最后一次状态,也可以删除后重新启动一台新的模拟设备。
同一个设备智能体下通常只需要一台浏览器模拟设备。如果需要更换设备 ID,删除旧的模拟设备后重新创建即可。
切换到真实设备
| 项目 | 模拟设备 | 真实设备 |
|---|---|---|
| 运行位置 | 当前浏览器 | 设备端固件、网关或后端服务 |
| 状态来源 | 根据设备规格和命令结果生成 | 来自真实传感器、执行器或业务系统 |
| 命令执行 | 更新模拟状态并返回结果 | 控制真实硬件或业务服务 |
| 适合用途 | PoC、演示、调试设备规格 | 生产接入、真实联调和上线 |