From ba830d61faa6f7ad15319c7cbfe3b08486d963e0 Mon Sep 17 00:00:00 2001 From: Eugene Date: Mon, 26 Jan 2026 16:59:24 +0300 Subject: [PATCH] added README.md --- README.md | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..df34545 --- /dev/null +++ b/README.md @@ -0,0 +1,81 @@ +# Грунтометрия - Измеритель влажности грунта + +Прибор для определения влажности почвы методом высушивания на базе Arduino. + +## Принцип работы + +Прибор определяет влажность грунта по формуле: + +``` +W = 100 × (m1 - m0) / (m0 - m) +``` + +Где: +- **m** — масса пустой кюветы +- **m1** — масса кюветы с влажным грунтом +- **m0** — текущая масса во время нагрева (высушивания) + +## Компоненты + +- Arduino (Uno/Nano/Mega) +- LCD Keypad Shield 1602 +- Тензодатчик с модулем HX711 +- Индукционный нагреватель +- Кнопка управления + +## Подключение + +| Компонент | Пин Arduino | +|-----------|-------------| +| LCD RS | D8 | +| LCD EN | D9 | +| LCD D4-D7 | D4, D5, D6, D7 | +| LCD Подсветка | D10 | +| HX711 DOUT | A3 | +| HX711 SCK | A2 | +| Кнопка | D13 | +| Нагрев | D3 | +| Напряжение | A1 | + +## Управление + +### Короткое нажатие кнопки +Переход между этапами измерения: +1. **Готовность** → Взвешивание пустой кюветы +2. **Пустая кювета** → Сохранение массы (m) +3. **Заполненная кювета** → Сохранение массы (m1) и начало нагрева +4. **Нагрев** → Прерывание нагрева и показ результата +5. **Результат** → Возврат в режим готовности + +### Удержание кнопки (4-6 секунд) +Автоматическое тарирование (обнуление весов) + +### Удержание кнопки (8-10 секунд) +Калибровка с эталонным грузом 100г + +## Режим нагрева + +- Общая длительность: 15 минут +- Циклический режим: 30 сек нагрев / 20 сек пауза +- Измерение массы происходит во время паузы (для точности) +- Отображается максимальное значение влажности (Wmax) + +## Фильтрация данных + +Для стабильности показаний используются: +- Медианный фильтр (7 значений) +- Экспоненциальное скользящее среднее (EMA) +- Дедбэнд для уменьшения дрейфа показаний + +## Калибровка + +1. Удерживайте кнопку 8-10 секунд +2. Уберите все с платформы, нажмите кнопку +3. Установите груз 100г, нажмите кнопку +4. Коэффициент калибровки сохраняется в EEPROM + +## Библиотеки + +- `LiquidCrystal` — управление LCD дисплеем +- `HX711` — работа с тензодатчиком +- `EEPROM` — сохранение настроек