JXCT Soil Sensor 7-in-1 3.10.1
IoT система мониторинга почвы на базе ESP32
Загрузка...
Поиск...
Не найдено
calibration_manager.h
См. документацию.
1#pragma once
2
3#ifdef TEST_BUILD
4#include "esp32_stubs.h"
5#elif defined(ESP32) || defined(ARDUINO)
6#ifdef TEST_BUILD
7#include "../test/stubs/esp32_stubs.h"
8#else
9#include "Arduino.h"
10#endif
11#include <FS.h>
12#include <LittleFS.h>
13#else
14#include "esp32_stubs.h"
15#endif
16#include "sensor_types.h"
17
18// Структура одной записи калибровочной таблицы (сырое значение -> скорректированное)
20{
21 float raw;
22 float corrected;
23};
24
25namespace CalibrationManager
26{
27// Инициализация файловой системы (LittleFS) и каталога /calibration
28bool init();
29
30// Сохранение CSV-файла, полученного через upload, в каталог /calibration/<profile>.csv
31bool saveCsv(SoilProfile profile, Stream& fileStream);
32
33// Загрузка таблицы калибровки в оперативную память
34bool loadTable(SoilProfile profile, CalibrationEntry* outBuffer, size_t maxEntries, size_t& outCount);
35
36// Проверка существования таблицы
37bool hasTable(SoilProfile profile);
38
39// Удаление таблицы
40bool deleteTable(SoilProfile profile);
41
42// Преобразование профиля в имя файла
43const char* profileToFilename(SoilProfile profile);
44
45// Применение калибровочной таблицы к значению датчика
46float applyCalibration(float rawValue, SoilProfile profile);
47} // namespace CalibrationManager
Definition calibration_manager.cpp:6
bool deleteTable(SoilProfile profile)
Definition calibration_manager.cpp:128
bool loadTable(SoilProfile profile, CalibrationEntry *outBuffer, size_t maxEntries, size_t &outCount)
Definition calibration_manager.cpp:67
bool hasTable(SoilProfile profile)
Definition calibration_manager.cpp:119
const char * profileToFilename(SoilProfile)
Definition calibration_manager.cpp:12
float applyCalibration(float rawValue, SoilProfile profile)
Definition calibration_manager.cpp:142
bool saveCsv(SoilProfile profile, Stream &fileStream)
Definition calibration_manager.cpp:41
bool init()
Definition calibration_manager.cpp:17
Типы данных для датчиков почвы
SoilProfile
Профили почвы
Definition sensor_types.h:36
Definition calibration_manager.h:16
float raw
Definition calibration_manager.h:17
float corrected
Definition calibration_manager.h:18