feat: 完成 issue #23 ① 采集配置外置(点位/采样率/协议参数化,去硬编码)

This commit is contained in:
2026-08-04 23:44:04 +08:00
parent 50b51d4a27
commit ecb181a79e
5 changed files with 90 additions and 7 deletions
+5 -1
View File
@@ -62,7 +62,11 @@ python -m unittest discover -s tests
## 模板化说明(换行业只改配置,不改代码)
- 点位范围 / 采样率 / 量纲 / 协议:由**点位字典 CSV** 驱动(模板 → 行业点位集)。
协议列(可选)提供点位级协议覆盖;留空则按 `gateway.yaml` drivers 段前缀路由。
- 采样率(issue #23):点位字典 CSV 的 `sampleRate` 列逐点位控制采集频率,
引擎以 `gateway.yaml` 的 `interval_ms` 为基准 tick,`sampleRate > interval_ms`
的点位按比例降频(如 5000ms / 1000ms tick → 每 5 tick 采一次);
`sampleRate ≤ interval_ms` 的点位每 tick 采集。点位采样率完全外置、零硬编码。
- 协议列(可选)提供点位级协议覆盖;留空则按 `gateway.yaml` drivers 段前缀路由。
- 协议选型与连接参数:由 `gateway.yaml` 的 `drivers` 段驱动(模板 → 行业协议栈)。
- Kafka topic 命名:`{template}.{device}.points`,随配置模板变化。
- 新增协议:实现 `drivers/base.py` 的 `Driver` 子类并注册即可,引擎与上行链路零改动。