添加电池数据

This commit is contained in:
孙小云 2026-02-06 15:41:40 +08:00
parent 5eafcff343
commit 2dca7d780c
1 changed files with 28 additions and 7 deletions

View File

@ -603,14 +603,35 @@ public class TuohengBufferDeviceImpl implements IBufferDeviceService {
dto.setBatteryLevel(value.getValue()); dto.setBatteryLevel(value.getValue());
}); });
telemetry.get(TuohengDeviceTelemetry.VOLTAGE) // 优先使用 battery_totalVoltageBMS电池电压如果没有则使用 voltage无人机电压
Double voltageValue = telemetry.get(TuohengDeviceTelemetry.BATTERY_TOTAL_VOLTAGE)
.map(TelemetryValue::getValue)
.orElse(null);
if (voltageValue != null) {
log.info("BATTERY_TOTAL_VOLTAGE 总电压: {}", voltageValue);
dto.setVoltage(voltageValue.intValue());
} else {
telemetry.get(TuohengDeviceTelemetry.VOLTAGE)
.ifPresent(value -> {
log.info("VOLTAGE 电压(备用): {}", value.getValue());
Double voltage = value.getValue();
if (voltage != null) {
dto.setVoltage(voltage.intValue());
}
});
}
telemetry.get(TuohengDeviceTelemetry.BATTERY_CELL_TEMP)
.ifPresent(value -> { .ifPresent(value -> {
log.info("VOLTAGE 电压原始值: {}", value.getValue()); log.info("BATTERY_CELL_TEMP 电池温度: {}", value.getValue());
Double voltage = value.getValue(); dto.setBatteryTemperature(value.getValue());
if (voltage != null) { });
dto.setVoltage(voltage.intValue());
log.info("VOLTAGE 电压转换后: {}", voltage.intValue()); telemetry.get(TuohengDeviceTelemetry.BATTERY_NUM_CYCLES)
} .ifPresent(value -> {
log.info("BATTERY_NUM_CYCLES 循环次数: {}", value.getValue());
dto.setCycleCount(value.getValue());
}); });
// 设置飞行时长 // 设置飞行时长