Таймер автоклава для работы с терморегулятором
Легковесное решение для автоматизации процессов стерилизации в автоклаве на базе микроконтроллера Wemos D1 Mini (ESP8266) под управлением прошивки NodeMCU Lua (версия integer-only, без плавающей точки).
Система управляет циклом нагрева и выдержки времени по сигналу от внешнего термостата. Настройка времени работы осуществляется локально с помощью ползункового фейдера, а удаленный мониторинг доступен через автономный веб-интерфейс по WiFi.
Особенности системы
- Защита при старте: Встроенная программная пауза 5 секунд при включении устройства в розетку для предотвращения ложных срабатываний до стабилизации питания.
- Аппаратная фиксация таймера: Уставка времени жестко блокируется в памяти в момент первого достижения рабочей температуры. Случайное смещение ползунка во время стерилизации не повлияет на обратный отсчет.
- Фильтрация шумов АЦП: Сглаживание показаний потенциометра методом скользящего среднего по 10 замерам для устранения дребезга значений.
- Нелинейная шкала времени: Дискретность шага составляет 5 минут в диапазоне до 1 часа и 10 минут в диапазоне от 1 до 3 часов для удобной физической разметки панели.
- Автономный Веб-интерфейс: Точка доступа WiFi (
192.168.4.1) работает без пароля и выводит адаптивную страницу со статусом системы и поминутным округлением оставшегося времени (с автообновлением каждые 5 секунд). - Ориентированность на отказоустойчивость: Код разработан с учетом совместной работы с независимой механической защитой по питанию.
Коммутация и распиновка (Pinout)
| Компонент | Пин Wemos D1 | ID пина в NodeMCU | Логический уровень / Питание | Описание |
|---|---|---|---|---|
| Реле ТЭНа | D1 (GPIO5) |
1 |
Выход 3.3V | Управляет силовым реле или контактором ТЭНов. |
| Сигнал термостата | D2 (GPIO4) |
2 |
Вход 3.3V (Pull-up) | Подключается к сухим контактам внешнего термостата. Пока идет нагрев, контакты замкнуты на GND. При достижении уставки размыкаются (переход в HIGH). |
| Фейдер времени | A0 (ADC0) |
0 |
Аналоговый 0V - 3.3V | Ползунковый потенциометр 10 кОм. Подключается строго к линиям 3V3 и GND. |
| Аварийный термостат | Внешний | Отсутствует | Силовая линия ~220В | Биметаллический выключатель KSD301 (130°C/140°C NC с кнопкой ручного сброса) на корпусе. Включается последовательно в разрыв питания ТЭНа. |
⚠️ Предупреждение по питанию потенциометра
Несмотря на то, что периферийные датчики могут питаться от 5V, ползунковый резистор времени ОБЯЗАТЕЛЬНО должен быть запитан от пина 3V3 платы Wemos. Это гарантирует, что аналоговый сигнал не превысит допустимый предел встроенного делителя напряжения ESP8266 (3.2V).
Description