V1.5: 电能/功率上报改固定每3分钟一次(不按功率阈值区分)
This commit is contained in:
parent
70772f021e
commit
e22bf71318
|
|
@ -355,10 +355,9 @@ static void oled_home_refresh(uint32_t up_ms)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 电能上报策略:功率 > 10W 时每 30s 上报一次;<=10W 仅首次联网报一次
|
/* 电能上报策略:无论功率多少,每 3 分钟上报一次(energy+power 同一条报文)。
|
||||||
* (开关切换随状态大报文带 energy,无需单独发)。串口日志固定 10s 一条 */
|
* 串口日志固定 10s 一条 */
|
||||||
#define ENERGY_REPORT_INTERVAL_MS 30000u
|
#define ENERGY_REPORT_INTERVAL_MS 180000u
|
||||||
#define ENERGY_REPORT_POWER_W 10.0f
|
|
||||||
|
|
||||||
/*==== sys_task:系统辅助(LED/电量/蓝牙命令/运行时长)====*/
|
/*==== sys_task:系统辅助(LED/电量/蓝牙命令/运行时长)====*/
|
||||||
static void sys_task(void *arg)
|
static void sys_task(void *arg)
|
||||||
|
|
@ -426,8 +425,7 @@ static void sys_task(void *arg)
|
||||||
if (!energy_first_reported) {
|
if (!energy_first_reported) {
|
||||||
report = 1;
|
report = 1;
|
||||||
energy_first_reported = 1;
|
energy_first_reported = 1;
|
||||||
} else if (pw > ENERGY_REPORT_POWER_W &&
|
} else if ((HAL_GetTick() - energy_report_tick) >= ENERGY_REPORT_INTERVAL_MS) {
|
||||||
(HAL_GetTick() - energy_report_tick) >= ENERGY_REPORT_INTERVAL_MS) {
|
|
||||||
report = 1;
|
report = 1;
|
||||||
}
|
}
|
||||||
if (report) {
|
if (report) {
|
||||||
|
|
|
||||||
|
|
@ -54,14 +54,14 @@ extern UART_HandleTypeDef huart3;
|
||||||
//#define MQTT_PASSWORD "b612c2839c135934"
|
//#define MQTT_PASSWORD "b612c2839c135934"
|
||||||
|
|
||||||
////RTOS版-投料机-无蠕变磅秤-01
|
////RTOS版-投料机-无蠕变磅秤-01
|
||||||
#define MQTT_CLIENT_ID "46c080c385c3652e"
|
//#define MQTT_CLIENT_ID "46c080c385c3652e"
|
||||||
#define MQTT_USERNAME "766990788193702677"
|
//#define MQTT_USERNAME "766990788193702677"
|
||||||
#define MQTT_PASSWORD "6ae9622b7034326b"
|
//#define MQTT_PASSWORD "6ae9622b7034326b"
|
||||||
|
|
||||||
//RTOS版-投料机-无蠕变磅秤-03
|
//RTOS版-投料机-无蠕变磅秤-03
|
||||||
//#define MQTT_CLIENT_ID "5791a8579d459290"
|
#define MQTT_CLIENT_ID "5791a8579d459290"
|
||||||
//#define MQTT_USERNAME "766990788193702677"
|
#define MQTT_USERNAME "766990788193702677"
|
||||||
//#define MQTT_PASSWORD "5f6cd7748ec9db35"
|
#define MQTT_PASSWORD "5f6cd7748ec9db35"
|
||||||
|
|
||||||
#define MQTT_SERVER_IP "58.17.14.95"
|
#define MQTT_SERVER_IP "58.17.14.95"
|
||||||
#define MQTT_SERVER_PORT 1880
|
#define MQTT_SERVER_PORT 1880
|
||||||
|
|
|
||||||
|
|
@ -117,7 +117,7 @@
|
||||||
- **防噪声假同步**:要求连续 3 帧且间隔 20~150ms 才认定在线(PD2 悬空时电磁干扰偶发也能凑出校验和正确的假帧,但不可能连续卡在 50ms 节奏上)
|
- **防噪声假同步**:要求连续 3 帧且间隔 20~150ms 才认定在线(PD2 悬空时电磁干扰偶发也能凑出校验和正确的假帧,但不可能连续卡在 50ms 节奏上)
|
||||||
- **滤波与零漂**:电压/电流/功率经 EMA 滑动平均(系数 1/8,约 0.4s 响应)压空载跳变;电流再减零点偏移 `HLW_I_ZERO_A`(0.02A) 钳位到 0;功率死区 `HLW_P_DEAD_W`(2W) 以下显示 0、超出再减 `HLW_P_ZERO_W`(0.5W)——宏都在 main.h
|
- **滤波与零漂**:电压/电流/功率经 EMA 滑动平均(系数 1/8,约 0.4s 响应)压空载跳变;电流再减零点偏移 `HLW_I_ZERO_A`(0.02A) 钳位到 0;功率死区 `HLW_P_DEAD_W`(2W) 以下显示 0、超出再减 `HLW_P_ZERO_W`(0.5W)——宏都在 main.h
|
||||||
- **持久化**:累计脉冲数(uint64)存 EEPROM 偏移 164~171;每攒约 0.1kWh 写一次(限制擦写),所有计划内复位(`reset_log_mark` 覆盖的复位点)复位前写一次,断电预警(法拉电容续航内)再写一次——除突然死机外基本不丢电量
|
- **持久化**:累计脉冲数(uint64)存 EEPROM 偏移 164~171;每攒约 0.1kWh 写一次(限制擦写),所有计划内复位(`reset_log_mark` 覆盖的复位点)复位前写一次,断电预警(法拉电容续航内)再写一次——除突然死机外基本不丢电量
|
||||||
- **上报策略**:功率 >10W 时每 30s 上报一次 `{"energy":%.2f}`;≤10W 时仅首次联网报一次(省流量);继电器开关切换随状态大报文携带 energy。串口电能日志固定 10s 一条。阈值宏 `ENERGY_REPORT_POWER_W`、间隔宏 `ENERGY_REPORT_INTERVAL_MS` 在 app_loop.c
|
- **上报策略**:无论功率多少,每 3 分钟上报一次 `{"energy":%.2f,"power":%.1f}`;继电器开关切换随状态大报文携带 energy。串口电能日志固定 10s 一条。间隔宏 `ENERGY_REPORT_INTERVAL_MS` 在 app_loop.c
|
||||||
- **调试日志**:芯片在线时每 10s 打印一条(`电能: x.xxkWh 电压: xxx.xV 电流: x.xxA 功率: xxxx.xW`),与上报节奏无关
|
- **调试日志**:芯片在线时每 10s 打印一条(`电能: x.xxkWh 电压: xxx.xV 电流: x.xxA 功率: xxxx.xW`),与上报节奏无关
|
||||||
|
|
||||||
## OLED 屏幕显示(128x64 + GB2312 字库 IC)
|
## OLED 屏幕显示(128x64 + GB2312 字库 IC)
|
||||||
|
|
|
||||||
|
|
@ -208,3 +208,4 @@
|
||||||
- 断电时序改为:先发掉电消息(等OK) → 屏幕显示"发生掉电事件!"亮 3 秒 → 熄屏复位
|
- 断电时序改为:先发掉电消息(等OK) → 屏幕显示"发生掉电事件!"亮 3 秒 → 熄屏复位
|
||||||
- 蓝牙设置流程开头先硬复位模块(BT_RST/PA7 拉高 100ms),防模块状态异常时 PC5 进不了 AT 模式
|
- 蓝牙设置流程开头先硬复位模块(BT_RST/PA7 拉高 100ms),防模块状态异常时 PC5 进不了 AT 模式
|
||||||
- OLED 新增复位脚 PB14:初始化前给 10ms 低脉冲硬件复位屏幕,防止上电时序异常花屏
|
- OLED 新增复位脚 PB14:初始化前给 10ms 低脉冲硬件复位屏幕,防止上电时序异常花屏
|
||||||
|
- 电能/功率上报改为固定每 3 分钟一次(不再按功率阈值区分)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue