此技能用于在用户需要生成、定制或部署 QuecPython 代码读取安信华锐 AX100 系列气体检测器数据时使用。
AX100 气体探测控制器 HTTP 上报技能
功能概述
AX100 气体探测控制器 HTTP 上报技能是一项面向实际任务的技能,主要用于本技能基于安信华瑞 AX100 系列气体报警控制器 + 移远通信(Quectel)QuecPython 模组;提供一套完整的「读取传感器数据 → 组包 → HTTP 上报」程序模板;
核心要点
- 使用场景:;
- 为新客户定制上报地址和上报频率;
- 调整上报 JSON 格式以符合不同平台协议;
使用与执行
修改 Modbus 寄存器地址以适配其他控制器型号;在已有基础上。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
结果检查与注意事项
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
AX100 气体探测控制器 HTTP 上报技能
技能用途
本技能基于安信华瑞 AX100 系列气体报警控制器 + 移远通信(Quectel)QuecPython 模组, 提供一套完整的「读取传感器数据 → 组包 → HTTP 上报」程序模板。
使用场景:
- 为新客户定制上报地址和上报频率
- 调整上报 JSON 格式以符合不同平台协议
- 修改 Modbus 寄存器地址以适配其他控制器型号
- 在已有基础上添加新的传感器类型或扩展字段
资源清单
assets/template/— 完整可运行的 QuecPython 代码模板(5个文件)references/code_guide.md— 各文件职责、所有配置项含义、JSON 格式说明、状态码表
工作流程
第一步:了解定制需求
在开始写代码前,向用户确认以下关键信息(未提供的项不要假设):
- 上报 URL — 客户平台接收数据的 HTTP 接口地址(必须)
- 上报频率 — 多少分钟上报一次(默认 3 分钟)
- 设备标识 — 厂商名称、终端型号(可选,若不改则保留模板默认值)
- JSON 格式 — 客户平台是否有自己的协议格式?若有,需要用户提供字段说明
- 寄存器地址 — 控制器型号是否标准 AX100?若是非标,需要用户提供寄存器地址表
- OTA 地址 — 是否需要 OTA 升级功能?若不需要,将
URL_OTA设为空字符串
第二步:读取参考文档
读取 references/code_guide.md,了解:
- 所有
config.py配置项的含义和默认值 build_payload()组装的 JSON 结构- 状态码映射表
第三步:生成定制代码
以 assets/template/ 中的 5 个文件为基础进行定制:
只修改 config.py 的场景(最常见)
直接输出修改后的 config.py,其余4个文件照搬模板。
需要修改的典型字段:
URL_CLIENT = "https://客户平台地址/接口路径" # 必改 URL_OTA = "" # 不需要OTA则留空 REPORT_CYCLE_MIN = 5 # 按客户约定的频率(分钟) MANUFACTURER = "xxx公司" TERMINAL_TYPE = "型号" FW_VERSION = "版本号"
需要修改 JSON 格式的场景
修改 main.py 中的 build_payload() 函数,按客户平台协议重新组装字典。
保持其他函数(check_network, http_post, check_ota, init, loop)不变。
需要修改寄存器地址的场景
只修改 config.py 中的 REG_* 常量,sensor.py 中所有地址均从 config 读取,无需改动。
第四步:输出交付物
向用户输出需要修改的文件(通常只有 config.py,其余不变的文件注明"使用模板原文"即可)。
同时提示用户:
- 将所有
.py文件上传到模组/usr/目录(使用 QPYcom 工具) - 确认
main.py已在模组启动脚本中设为自动运行
常见定制示例
示例一:换上报地址 + 改频率
用户:上报地址改成 https://api.xxx.com/gas/upload,每5分钟上报一次
→ 只修改 config.py:
URL_CLIENT = "https://api.xxx.com/gas/upload" REPORT_CYCLE_MIN = 5
示例二:客户平台要求不同的 JSON 格式
用户:客户平台要的格式是 {"imei":"...","sensors":[{"id":1,"val":0.0,"status":2}]}
→ 修改 main.py 中的 build_payload() 函数,按新格式重组字典。
→ config.py 中 URL 和周期照常配置。
示例三:控制器寄存器地址不同
用户:这个控制器探头状态起始地址是 0x0200,浓度起始地址是 0x0201
→ 只修改 config.py:
REG_SENSOR_STAT_BASE = 0x0200 REG_SENSOR_DENS_BASE = 0x0201
代码部署说明(提示用户)
- 工具:使用 QPYcom(移远官方 PC 工具)连接模组
- 上传路径:所有
.py文件 → 模组/usr/目录 - 自动运行:在 QPYcom「文件」标签页中,将
main.py设为auto run - 日志查看:通过 QPYcom 串口终端查看
print输出,定位问题
注意事项
config.py中WDT_TIMEOUT_SEC建议设为REPORT_CYCLE_MIN × 60 × 3,留足余量URL_OTA若为空字符串,需在check_ota()调用前加空值判断(已在模板中处理)- 不同移远模组的 GPIO 引脚编号不同,
LED_NET_PIN/LED_BUS_PIN需对照硬件图纸确认 - Modbus 从机地址
MODBUS_SLAVE默认为 1,若控制器地址不同需修改
热门AI工具
相关专题
Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。
0
2026.10.28
Vite搭配Vue.js专题汇集创建Vue 3项目、配置开发环境、路径别名、Vue插件、代理、多环境构建与调试的已审核文章,帮助读者完成从初始化到日常开发的配置。
0
2026.10.28
Vite项目目录专题汇集入口文件、src源码、public静态资源、路径别名、项目根目录和构建输出目录相关的已审核文章,帮助读者理解各文件夹的用途与引用方式。
0
2026.10.28
本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。
0
2026.10.22
本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。
0
2026.10.22
本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。
0
2026.10.22
本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。
0
2026.10.22
本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。
0
2026.10.22
本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。
0
2026.10.22
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.6万人学习
共6课时 | 54.7万人学习