5#include "esp32_stubs.h"
6#elif defined(ESP32) || defined(ARDUINO)
7#include <ModbusMaster.h>
10#include "esp32_stubs.h"
34#define MIN_TEMPERATURE SENSOR_TEMP_MIN
35#define MAX_TEMPERATURE SENSOR_TEMP_MAX
36#define MIN_HUMIDITY SENSOR_HUMIDITY_MIN
37#define MAX_HUMIDITY SENSOR_HUMIDITY_MAX
38#define MIN_EC SENSOR_EC_MIN
39#define MAX_EC SENSOR_EC_MAX
40#define MIN_PH SENSOR_PH_MIN
41#define MAX_PH SENSOR_PH_MAX
42#define MIN_NPK SENSOR_NPK_MIN
43#define MAX_NPK SENSOR_NPK_MAX
118 for (
int i = 0; i < 15; i++)
Централизованные константы системы JXCT.
constexpr uint16_t REG_FIRMWARE_VERSION
Definition modbus_sensor.h:21
void setupModbus()
Инициализация Modbus и SP3485E.
Definition modbus_sensor.cpp:332
void preTransmission()
Подготовка к передаче данных
Definition modbus_sensor.cpp:556
constexpr uint16_t REG_CONDUCTIVITY
Definition modbus_sensor.h:17
void postTransmission()
Завершение передачи данных
Definition modbus_sensor.cpp:568
void testSerialConfigurations()
String & getSensorLastError()
Definition modbus_sensor.cpp:711
constexpr uint16_t REG_PHOSPHORUS
Definition modbus_sensor.h:19
void startRealSensorTask()
Definition modbus_sensor.cpp:592
void initMovingAverageBuffers(ModbusSensorData &data)
Definition modbus_sensor.cpp:640
SensorCache sensorCache
Definition modbus_sensor.cpp:728
bool readFirmwareVersion()
Definition modbus_sensor.cpp:387
constexpr int SENSOR_MAX_VALUE
Definition modbus_sensor.h:28
ModbusSensorData getSensorData()
Definition modbus_sensor.cpp:690
constexpr uint16_t REG_CALIBRATION
Definition modbus_sensor.h:22
void addToMovingAverage(ModbusSensorData &data, const ModbusSensorData &newReading)
Definition modbus_sensor.cpp:658
constexpr int SENSOR_MIN_VALUE
Definition modbus_sensor.h:29
constexpr uint16_t REG_SOIL_MOISTURE
Definition modbus_sensor.h:15
ModbusSensorData sensorData
Definition modbus_sensor.cpp:727
constexpr uint16_t REG_NITROGEN
Definition modbus_sensor.h:18
bool readErrorStatus()
Definition modbus_sensor.cpp:403
constexpr float SENSOR_DEFAULT_FLOAT
Definition modbus_sensor.h:26
bool changeDeviceAddress(uint8_t new_address)
constexpr size_t SENSOR_BUFFER_SIZE
Definition modbus_sensor.h:25
void testSP3485E()
Тестирование работы SP3485E.
Definition modbus_sensor.cpp:297
constexpr uint16_t REG_POTASSIUM
Definition modbus_sensor.h:20
bool validateSensorData(ModbusSensorData &data)
Definition modbus_sensor.cpp:361
void readSensorData()
Definition modbus_sensor.cpp:534
float convertRegisterToFloat(uint16_t value, float multiplier)
constexpr uint16_t REG_ERROR_STATUS
Definition modbus_sensor.h:23
bool getCachedData(ModbusSensorData &data)
Definition modbus_sensor.cpp:372
constexpr float SENSOR_DEFAULT_SCALE
Definition modbus_sensor.h:27
float calculateMovingAverage(const float *buffer, uint8_t window_size, uint8_t filled)
void printModbusError(uint8_t errNum)
Definition modbus_sensor.cpp:599
constexpr uint16_t REG_DEVICE_ADDRESS
Definition modbus_sensor.h:24
constexpr uint16_t REG_PH
Definition modbus_sensor.h:14
bool testModbusConnection()
Definition modbus_sensor.cpp:415
constexpr uint16_t REG_SOIL_TEMP
Definition modbus_sensor.h:16
Типы данных для датчиков почвы
Definition modbus_sensor.h:47
float temp_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:68
float raw_humidity
Definition modbus_sensor.h:80
float prev_ph
Definition modbus_sensor.h:61
float raw_ph
Definition modbus_sensor.h:82
float prev_ec
Definition modbus_sensor.h:60
bool valid
Definition modbus_sensor.h:52
uint8_t buffer_filled
Definition modbus_sensor.h:76
float prev_temperature
Definition modbus_sensor.h:58
float prev_phosphorus
Definition modbus_sensor.h:63
float ph_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:71
float conductivity
Definition modbus_sensor.h:49
unsigned long last_update
Definition modbus_sensor.h:54
float prev_humidity
Definition modbus_sensor.h:59
unsigned long last_mqtt_publish
Definition modbus_sensor.h:65
uint8_t error_status
Definition modbus_sensor.h:51
float hum_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:69
float k_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:74
float p_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:73
float raw_phosphorus
Definition modbus_sensor.h:84
float ec_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:70
bool recentIrrigation
Definition modbus_sensor.h:86
float raw_nitrogen
Definition modbus_sensor.h:83
bool isValid
Definition modbus_sensor.h:53
ModbusSensorData()
Definition modbus_sensor.h:88
uint8_t buffer_index
Definition modbus_sensor.h:75
uint16_t firmware_version
Definition modbus_sensor.h:50
float prev_nitrogen
Definition modbus_sensor.h:62
float prev_potassium
Definition modbus_sensor.h:64
float raw_temperature
Definition modbus_sensor.h:79
float n_buffer[SENSOR_BUFFER_SIZE]
Definition modbus_sensor.h:72
float raw_ec
Definition modbus_sensor.h:81
float raw_potassium
Definition modbus_sensor.h:85
unsigned long timestamp
Definition modbus_sensor.h:55
float moisture
Definition modbus_sensor.h:48
Definition modbus_sensor.h:133
ModbusSensorData data
Definition modbus_sensor.h:134
unsigned long timestamp
Definition modbus_sensor.h:136
bool is_valid
Definition modbus_sensor.h:135
Данные датчика
Definition sensor_types.h:77