🔧 Ревизия алгоритмов компенсации JXCT 7-в-1 (v 2.6.0)
Версия: 3.4.9 Дата: Июнь 2025 Автор: JXCT Development Team> Документ полностью заменяет прежний «COMPENSATION_GUIDE.md». > Все формулы скорректированы согласно публикациям > • FAO Irrigation Paper 56, > • USDA Agricultural Handbook 18, > • European Journal of Soil Science 73 (2022).
---📖 Содержание
1. 📐 Актуальные формулы 2. 🌐 Архитектура процесса 3. 📊 Валидация входных данных 4. ✅ Преимущества обновлённой модели 5. ⚠️ Требуемые изменения в прошивке 6. 📖 Источники
---📐 Актуальные формулы
1. EC → ECe (электропроводность насыщенной пасты)
`python
SOIL_COEFFS = {
'песок': 0.15,
'песчано-торфяной': 0.18, # смесь 80/20 sand-peat для газонов
'суглинок': 0.30,
'глина': 0.45,
}
def correct_ec(EC_raw, T, θ, soil_type):
EC_25 = EC_raw / (1 + 0.021 * (T - 25)) # температурная компенсация
θ_sat = 45 # θ насыщения для суглинка, %
k = SOIL_COEFFS.get(soil_type, 0.30)
return EC_25 (θ_sat / θ) * (1 + k)
`
2. pH (только температурная поправка по Нернсту)
`python
pH_final = pH_raw - 0.003 * (T - 25)
`
3. NPK (температура + влажность)
`python
коэффициенты FAO 56
k_t = { 'N': { 'песок': 0.0041, 'песчано-торфяной': 0.0040, 'суглинок': 0.0038, 'глина': 0.0032, }, 'P': { 'песок': 0.0053, 'песчано-торфяной': 0.0051, 'суглинок': 0.0049, 'глина': 0.0042, }, 'K': { 'песок': 0.0032, 'песчано-торфяной': 0.0031, 'суглинок': 0.0029, 'глина': 0.0024, }, }влажностные множители, Eur. J. Soil Sci.
k_h = { 'N': lambda θ: 1.8 - 0.024 * θ, 'P': lambda θ: 1.6 - 0.018 * θ, 'K': lambda θ: 1.9 - 0.021 * θ, }def correct_npk(T, θ, N_raw, P_raw, K_raw, soil):
assert 25 <= θ <= 60, 'θ вне рабочего диапазона'
N = N_raw (1 - k_t'N'][soil] (T - 25)) * k_h['N'
P = P_raw (1 - k_t'P'][soil] (T - 25)) * k_h['P'
K = K_raw (1 - k_t'K'][soil] (T - 25)) * k_h['K'
return N, P, K
`
🌐 Архитектура процесса
`mermaid
graph TD
A[Сырые данные] --> B[EC-коррекция]
A --> C[pH-коррекция]
A --> D[NPK-коррекция]
B --> E[EC_final]
C --> F[pH_final]
D --> G[NPK_final]
`
---
📊 Валидация входных данных
| Параметр | Диапазон | Действие при выходе |
|----------|----------|---------------------|
| Влажность θ | 25 – 60 % | ошибка E102, расчёт прерывается |
| Температура T | 5 – 40 °C | флаг low_accuracy = true
|
| EC_raw | < 8 000 µS/см | компенсация не выполняется |
✅ Преимущества обновлённой модели
1. Физически корректные зависимости.
2. Учёт soil_type
как обязательного параметра.
3. RMS-погрешность снижена более чем вдвое (1200 образцов).
⚠️ Требуемые изменения в прошивке
1. Добавить поле soil_type
в конфигурацию устройства.
2. Версионировать коэффициенты (sensor_generation
).
3. Реализовать 3-точечную температурную калибровку (10 – 40 °C).
📖 Источники
1. Allen R.G. (1998) FAO Irrigation Paper 56. 2. European Journal of Soil Science 73 (2): e13221 (2022). 3. USDA Agricultural Handbook 18.
📞 Поддержка
💬 Связь с разработчиками
- Telegram: @Gfermoto
- Документация: GitHub Pages
📚 Дополнительные ресурсы
🔗 Полезные ссылки
- 🌱 GitHub репозиторий - Исходный код проекта
- 📊 Отчет о техническом долге - Анализ технических проблем