Skip to Content
IoT 应用开发应用参数

应用参数

无需构建完整的 Web 界面,即可向用户公开可配置参数。使用 env-template.yml 定义表单,IronFlock 会自动渲染。

何时使用参数

当用户需要按设备或按组调整简单配置时,使用参数:

  • 传感器采集间隔
  • 数据端点 URL
  • 告警阈值
  • 功能开关
  • API 密钥和凭据

对于更复杂的配置(机器人训练、摄像头 AI 设置、硬件配置),请改为构建自定义的边缘用户界面

定义参数

.ironflock/ 目录中创建 env-template.yml 文件:

RECORDING_INTERVAL: label: "Recording Interval (seconds)" defaultValue: 5 type: numeric optional: true ALERT_THRESHOLD: label: "Temperature Alert Threshold (°C)" defaultValue: 80 type: numeric optional: true API_ENDPOINT: label: "Data API Endpoint" defaultValue: "https://api.example.com/data" type: text optional: true ENABLE_DEMO: label: "Enable Demo Data" defaultValue: true type: boolean optional: true DATA_FORMAT: label: "Output Format" defaultValue: "json" type: select options: - json - csv - xml optional: true SECRET_KEY: label: "API Secret Key" defaultValue: "" type: text secret: true optional: true

参数类型

类型渲染为示例
text文本输入框URL、名称、密钥
numeric数字输入框间隔、阈值
boolean开关切换功能标志
select下拉菜单预定义选项

参数如何传递到应用

参数以 Linux 环境变量的形式注入到容器中:

import os interval = int(os.environ.get("RECORDING_INTERVAL", 5)) threshold = float(os.environ.get("ALERT_THRESHOLD", 80))

大型参数

超过 20 KB 的参数由于系统限制不会设置为环境变量。所有参数(包括大型参数)始终以文件形式可用:

/data/env/PARAMETER_NAME.txt

开发模式

env-template.yml 中指定的 defaultValue 会在开发模式下运行应用时使用。这提供了一致的开发体验,无需手动配置参数。

批量参数化

当参数在设备组级别设置时,它们会同时应用于组内的所有设备。这非常适合:

  • 为所有数据采集设备设置统一的 S3 存储桶
  • 在整个项目范围内更新 AI 模型参数
  • 为整条生产线更改传感器配置

即使设备离线,也可以设置参数——设备重新连接时会自动应用。

Last updated on