Базовая Автоматика. Дисплей и Датчики аварии

Немного модернизируем нашу Автоматику
Начиная с версии прошивки 4.3, она умеет отображать данные на дисплее и поддерживает датчики аварии

Дисплей отображает:
— Режим работы Автоматики – Автоматический (Старт-Стоп), Ручной (ШИМ), Контроль состояния датчиков;
— Температуру Куба, Дефлегматора, Атмосферное давление;
— Процент открытия ШИМ, Температуру отбора, Состояние колонны;

Датчики Аварии:

Датчики протечки – это компаратор и резистивные сенсоры, их можно подключать параллельно сколько угодно, срабатывает компаратор при попадании воды или спирта на чувствительный элемент, что позволяет использовать датчики как для контроля появления воды на полу или под кубом, так и в качестве контроля переполнения приемной емкости;

Датчик пара – защищает аппарат от отключения охлаждения и от прорыва пара на выходе холодильника возникающего при превышении мощности выше допустимой. При нагреве отбора выше 65 градусов происходит срабатывание.

При срабатывании любого из Аварийных датчиков устройство включает сигнал тревоги, пульсацию подсветки дисплея и выдает на пин «А0» Автоматики состояние «Авария».

Как видно – схема стала чуть сложнее, но польза от этой модернизации очень даже немалая, находясь рядом с дистиллятором не нужно смотреть в телефон, основные параметры можно видеть непосредственно на дисплее. Ну и самое главное – конечно же безопасность.
Теперь Автоматика может самостоятельно выявить аварийную ситуацию, подать сигнал на исполнительный механизм и оповестить нас о нештатной ситуации.
При обнаружении аварийной ситуации Автоматика использует 5-секундную задержку включения тревоги. Это сделано для того, чтобы «отсеять» возможные ложные срабатывания. Обмен данными происходит раз в 2 секунды, 5 секунд задержки – это 3 цикла обмена данными, таким образом тревога включится только если аварийный режим не исчезнет в течение этих самых 3х циклов.

Ну, например, с датчика температуры пришло неверное значение, пусть — 125 градусов, Автоматика насторожилась (включила обратный отсчет 5 сек), в следующем цикле датчик вернул уже верное значение, Автоматика расслабилась (отключила обратный отсчет), ложное срабатывание не прошло, процесс перегонки продолжился в штатном режиме и не был прерван из-за ошибки датчика.
Если же температура датчика все 3 цикла остается за рамками допустимых значений, Автоматика (Убедившись что срабатывание не ложное) включает сирену с пульсацией подсветки дисплея, подает через пин «А0» сигнал на внешние устройства и отправляет признак «Тревоги» на телефон.

Теперь о деталях, комплектующие я использовал такие:
Дисплей LCD1602 – желательно с уже распаянным модулем I2С;
Датчик протечки – компаратор с платой-чувствительным элементом;
Датчик пара – DS18B20;

Начнем сборку
На обновленной плате выводы для подключения дисплея и датчиков уже есть. Они обозначены как «Авар», «Терм», «SDA», «SCL». Если же Вы используете плату без этих выводов, все просто:
Датчик пара (DS18B20) подключаем параллельно r существующим Термодатчика;
Дисплей подключаем параллельно барометру «BMP180» к пинам «SDA», «SCL», «+» и «-»;
— пин «D0» Компаратора подключаем к пину «D9» Ардуино, «+» и «-» берем из любого места на плате.
Дисплей. ВАЖНО! Дисплей имеет довольно большое потребление, стабилизатор ардуины вывозит его с большим трудом. Нам нужно запитать дисплей мимо встроенного в Ардуино преобразователя.
Так как вся схема питается от 5В подаваемых на вход «Vin», у нас есть 2 варианта:
Сложный – перерезать дорожку питания контроллера и завести питание +5В непосредственно на пин «+5V» Ардуино, таким образом мы обходим встроенный стабилизатор контроллера;
Простой – не париться и впаять перемычку между ногами Vin и +5V Ардуино.
Я использую второй вариант, все работает без нареканий.

Прошивка и тестирование
Дисплеи с интерфейсом I2C, как правило имеют адрес 0х27, хотя бывают и другие. В файлах прошивки есть скетч-сканер шины I2C. Заливаем его в контроллер, в терминале видим все доступные адреса, барометр обычно имеет адрес 0х77, второй адрес – это и есть адрес дисплея.

Также выясняем адрес датчика пара – заливаем скетч-сканер шины OneWare и получаем адрес датчика DS18B20

В прошивке контроллера вставляем полученные адреса дисплея и датчика пара и заливаем ее в Ардуино. Версия прошивки не должна быть ниже 4.3.

Все готово
Можно проверять работоспособность устройства
Регулятором на задней стороне дисплея выставляем комфортную яркость
Таким же регулятором настраиваем чувствительность компаратора. Его срабатывание сопровождается включением светодиода. Светодиод должен загораться только при прикосновении влажного пальца к плате-сенсору.

Все получилось!
Собираем устройство в корпус и пользуемся 😉

 

Автоматика

Описание

Сборка

Прошивка

Тестирование

Дисплей и Датчики аварии

Корпус, датчики, 3d-печать