МОСКОВСКАЯ ВСТРЕЧА
Форум самогонщиков Сайт Барахолка Магазин МОСКОВСКАЯ ВСТРЕЧА

Автоматика Самовар

Форум самогонщиков Вопросы по электр(он)ике
1 2 3 4 ... 16 1
lkosoj Куратор Видное 81 77
31 Марта 21, 00:27
Хочу поделиться с вами проектом "Самовар". Проект реализован на ESP32.

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

ESP32 контролирует 5 температур, управляет 4 реле (через них включает через пускатель нагрев куба, открывает клапан подачи воды), управляет шаговиком с насосом для отбора из РК, управляет сервоприводом для фракционного отбора (10 + 1 емкость), работает с экраном и энкодером, работает через веб-сервер ESP32, сохраняет у себя лог погона, на своем веб-сервере рисует графики по логу (5 температур, давление, скорость отбора), работает через Blynk - можно удаленно с телефона смотреть за всеми параметрами и управлять основными функциями. Сохраняет лог в облако с возможностью в онлайне смотреть логи с сервера www.samovar-tool.ru
Еще одна возможность: можно задавать программу отбора на весь погон. В программе отбора можно указать в какую емкость, какой объем, в каком температурном режиме отбирать текущую часть погона. Может управлять по UART регулятором мощности для управления нагревом в кубе. Напряжение регулятора задается в программе отбора.

Самовар может обеспечить отслеживание следующих аварийных ситуаций в процессе работы:
1.Если превышена заданная в скетче температура в кубе, Самовар выключит регулятор напряжения, и отправится сообщение об ошибке.
2.Если превышена заданная в скетче температуры пара, Самовар выключит регулятор напряжения, и отправится сообщение об ошибке.
3.Если будет превышена заданная в скетче температура воды, и используется регулятор напряжения, Самовар понизит напряжение, и отправит сообщение об ошибке. Если через 20 секунд температура воды будет еще превышать заданную, Самовар еще понизит напряжение на регуляторе. И так, пока температура не упадет ниже заданной, или не превысит критическую температуру, при которой Самовар отключит регулятор напряжение, и отправит сообщение об ошибке.
4.Если установлен датчик уровня жидкости на трубочке уровня на голове РК, Самовар, при срабатывании этого датчика более чем на 5 секунд, при подключенном регуляторе напряжения понизит напряжение на регуляторе, и отправит сообщение об ошибке. Если через двадцать секунд датчик уровня жидкости будет продолжать показывать наличие жидкости выше узла отбора, Самовар будет скидывать напряжение, пока датчик не перестанет срабатывать. Каждое снижение напряжения на регуляторе будет сопровождаться оповещением.
5.Если установлен датчик потока на выход воды охлаждения, он не только показывает скорость расхода и общий расход воды. Самовар так же с его помощью контролирует наличие постоянного расхода воды. Если расхода воды нет в течении 20 секунд – выключится регулятор напряжения, и отправится сообщение об ошибке.

Самовар поддерживает скриптовый язык Lua, можно относительно просто расширять возможности Самовара, добавляя необходимые функции. Так же поддерживаются расширители портов - аналоговый и цифровой, что в сочетании со скриптами позволяет автоматизировать любой процесс, не меняя скетч и логику работы Самовара.

Для работы всего функционала необходимо подключение к интернету. Без интернета не будет работать Blynk, лог не будет сохраняться в облако и не будут строиться графики (библиотека для графиков грузится из сети, она большая, ее на внутренней памяти ESP32 не сохранить). Все остальное будет работать.

Проект открытый, разводка платы, скетч, модели для печати, все доступно в открытом доступе.
Файлы проекта доступны на гитхабе github.com/LKosoj/Samovar

Единственная просьба - если будете делать под себя и что-то добавлять/изменять - рассказывайте пожалуйста об этом, чтобы можно было все собрать в одном месте.
И главное! Не смотря на то, что многое автоматизировано, присутствие оператора рядом с колонной обязательно! Автоматика позволяет упростить отбор, но сама ничего не сделает.

В проекте использовались:
ESP32 30 pin
Servo SG90
Encoder
Stepper drive
Toggle switch
Perestaltic pomp
Contactor
Wattmeter
DS18b20 x 4
GX16-3 (3A+3B) x 4
Silicone tube
BME680 (можно заменить на BME180, BME280, для этого надо будет заменить библиотеки)
LCD 2004 I2C
Stepper driver A4988
XKC-Y25-PNP 5-12V

Стоимость железа на ali без пересылки ориентировочно 100 - 200 USD в зависимости от набора функций. Плюс печать на 3d принтере, если хочется красиво.

Схема
Samovar_bb.png
Samovar_bb. Автоматика Самовар. Вопросы по электр(он)ике.

И немного фотографий
IMG_8949.png
IMG_8949. Автоматика Самовар. Вопросы по электр(он)ике.
IMG_8987.png
IMG_8987. Автоматика Самовар. Вопросы по электр(он)ике.
IMG_8989.png
IMG_8989. Автоматика Самовар. Вопросы по электр(он)ике.
IMG_8990.png
IMG_8990. Автоматика Самовар. Вопросы по электр(он)ике.

Вот так выглядит приложение в интерфейсе Blynk
Самовар - 1 из 13.png
Самовар - 1 из 13. Автоматика Самовар. Вопросы по электр(он)ике.
Самовар - 2 из 13.png
Самовар - 2 из 13. Автоматика Самовар. Вопросы по электр(он)ике.

Так - в браузере
Самовар - 6 из 13.png
Самовар - 6 из 13. Автоматика Самовар. Вопросы по электр(он)ике.
Самовар - 5 из 13.png
Самовар - 5 из 13. Автоматика Самовар. Вопросы по электр(он)ике.


И небольшое видео от форумчанина, собравшего себе Самовар:
Автоматика. Своими руками: космос винокурения за не очень много денег и прямые руки
сообщения удалены (2)
cxx Магистр Домодедово 258 145
Отв.1  31 Марта 21, 11:25
забыл ссылку на гитхаб) https://github.com/LKosoj/Samovar
lkosoj Куратор Видное 81 77
Отв.2  31 Марта 21, 11:31, через 7 мин
забыл ссылку на гитхаб)cxx, 31 Марта 21, 11:25
Есть текстом в первом сообщении Улыбающийся
Ссылки пока не могу вставлять на форум
cxx Магистр Домодедово 258 145
Отв.3  31 Марта 21, 12:16, через 45 мин
А слона то я и не увидел) Жаль с вакуумом не работает а так да, вполне прилично все.
сообщение удалено
lkosoj Куратор Видное 81 77
Отв.4  31 Марта 21, 13:14, через 59 мин
автоматика должна обеспечивать нагрев с охлаждением (раз), отбор продукта (два) и безопасность процесса (три)
Желательно с автоподстройкой под железо, с минимальным участием человека в этом процессе)))игорь223, 31 Марта 21, 12:39
первое обеспечивает отдельный блок - регулятор напряжения, и водопровод, Самовар может ими управлять Улыбающийся, второе и третье - непосредственно сам Самовар.
Датчики висят на одной шине и их х нужно прописывать или каждый имеет свое четкое место в системе?игорь223, 31 Марта 21, 12:39
Висят на одной шине, адреса прописываются в настройках
Все четыре силовые и контактные?игорь223, 31 Марта 21, 12:39
Наверное зависит от того, какие реле поставить Улыбающийся, у меня стоят силовые и контактные. Одно реле управляет пускателем для управления регулятором.
то есть это шаговик вращения головки перестальтики отбора, верно?игорь223, 31 Марта 21, 12:39
Верно
вещь абсолютно бесполезная, но вопрос - есть ли обратная связь по положению головки?игорь223, 31 Марта 21, 12:39
На такое категоричное заявление могу только сказать - кто понимает, о чем идет речь - использует Улыбающийся. Сервопривод сам обеспечивает точность позиционирования. Это заложено в конструкцию сервопривода.
мощность нагрева задается или напряжениеигорь223, 31 Марта 21, 12:39
В моем варианте задается напряжение, так как мой регулятор использует регулировку по напряжению. При этом в интерфейсе Самовара показывается мощность (знаем напряжение, знаем сопротивление тена - знаем мощность). Сделать сопряжение с другим регулятором и принципом регулирования не сложно (если регулятор позволяет внешнее управление). Так же можно управлять РМ-2, но управление ограничено вкл/выкл, и вкл разгон/выкл разгон
Что это за входа, явно не описаные в преамбуле? Аналоговые - уровня - цифровые?игорь223, 31 Марта 21, 12:39
Аналоговые, работают на замыкание.
Есть ли еще неявно описанные входа-выхода?игорь223, 31 Марта 21, 12:39
Все отражено на картинке Схема в начале темы.
игорь223 Академик таганрог 27.7K 19.6K
Отв.5  31 Марта 21, 13:29, через 15 мин
Все отражено на картинкеlkosoj, 31 Марта 21, 13:14
кто понимает, о чем идет речь - используетlkosoj, 31 Марта 21, 13:14
Сервопривод сам обеспечивает точность позиционированияlkosoj, 31 Марта 21, 13:14
Понял-понял-понял.
Извиняюсь, что влез в ветку с такой крутой автоматикой.
Oleg Kusnezov Бакалавр Московская область 52 48
Отв.6  31 Марта 21, 13:55, через 27 мин
игорь223, на мой вкус, ваша реакция на ответ коллеги lkosoj совершенно адекватна его ответу. Хотел вам вопрос задать про смену приемных емкостей. Теперь не знаю в какой теме...
lkosoj Куратор Видное 81 77
Отв.7  31 Марта 21, 14:25, через 30 мин
Я на все вопросы ответил, и, если будут возникать новые - тоже готов ответить и помочь. игорь223, если есть уточняющие вопросы - не стесняйся, спрашивай.
Понял-понял-понял.игорь223, 31 Марта 21, 13:29
Какая-то странная реакция на простые ответы. Спишем на весну и хорошую погоду Улыбающийся
игорь223 Академик таганрог 27.7K 19.6K
Отв.8  31 Марта 21, 16:27
Блин, вам в Видном хорошо...а у нас три дня лил дождь.
И только сегодня - благодатное солнце греет душу.
Так что тут ты не прав)))

Реакция может быть и странная, но поверь на слово - я адекватен и вменяем, до упора.
Более того, автоматик я перевидал немало на своем веку, всяких. И разработчиков этих автоматик тоже.
Возможно конечно, я ошибся; но опять же, зубы сточены вполовину на общении с разработчиками, и написании всяких ТЗ и алгоритмизации процессов винокурения))) поэтому по манере твоих ответов я сообразил, что тебя интересует обсуждение именно того, что есть в автоматике сейчас.
А не того, что в принципе нужно винокурам.

Следовательно, какой смысл задавать вопросы, если конкретная сборка меня лично не интересует, а тебя не интересует иные варианты?

П.С. Если желание есть, можем организовать соцопрос на форуме - нужен ли винокуру сервопривод, дробящий погон на 11 баночек?
Или на 10.
Или даже на 5 фракций.

Увидишь сам результаты голосования)))...хотя возможно, что среднестатистический винокур просто не понимает кайфа в 10-ти баночка, а "кто понимает - тот использует" (с)

Добавлено через 2мин.:

Oleg Kusnezov, спрашивай тут - возможно, топикстартеру будет интересно обсуждение.
Ну или потрем, а че нет?
Oleg Kusnezov Бакалавр Московская область 52 48
Отв.9  31 Марта 21, 16:37, через 11 мин
игорь223, да я рад "потереть", но ответ уже получил. (Хотел спросить: "Ты считаешь, что дробить на 4 (четыре) емкости тоже "абсолютно бессмысленно"? Или ты имел ввиду именно "бессмысленный" перебор с одиннадцатью?).

Добавлено через 17мин.:

Да, а в целом, мне комплекс малой механизации ТС-а нравится. Может и потому, что у меня почти такой же. Только еще один электрический девайс (доохладитель) перед насосом имеется [сообщение #13808080]
И распределитель с сервоприводом у меня избыточный есть. Из крышки кастрюли и воронок сделал (нет 3d принтера).
Крышка 22 26 с нержавеющая сталь.jpg
Крышка 22 26 с нержавеющая сталь. Автоматика Самовар. Вопросы по электр(он)ике.

Нафиг мне так много емкостей не нужно. У меня 7 "сосков"- использую 4.
Обратную связь по положению "носика" пока не сделал. Плохо, знаю. Сделаю.

PS. Ну и ко всему этому колхозу - управление другим контроллером (регулятор-стабилизатор мощности) через аппаратный интерфейс - у ТСа это serial, у меня I2C. "Фишка" в том, что на эти интерфейсы легко ставится оптическая развязка и модуль управления мощностью может не иметь собственной гальванической развязки (как РМ2 (не имеет развязки)).
И еще добавлю. Вешать DS-ки на один провод, на мой взгляд, - это форменное безобразие. Если уж ног не хватает - демультиплексоры просты, дешевы и приятны. А геморой с датчиками на ровном месте разводить не стоит.
lkosoj Куратор Видное 81 77
Отв.10  31 Марта 21, 17:06, через 29 мин
по манере твоих ответовигорь223, 31 Марта 21, 16:27
Хорошо, что не по интонации Улыбающийся

Нет, честно говоря, обсуждение того, что реализовано, интересует не очень, оно реализовано, работает, что его обсуждать?
Я поделился реализацией для того, чтобы у заинтересовавшихся была возможность повторить. Это основная цель Улыбающийся
Если кто-то сможет что-то улучшить, и поделится потом со всеми - тоже хорошо, почему нет?

А количество баночек (фракций) определяется из задач, которые встают в процессе ректификации.
Минимально конечно хватит двух, если мы говорим про сахарную брагу. Но. Как понять, что головы уже закончились и началось тело? А если головы еще идут, а мы уже считаем, что должно идти тело? Если автоматики нет - все просто, сиди и нюхай. Как запах устроил - ставь другую баночку. Автоматика нужна для того, чтобы в процессе работы колонны не нюхать Улыбающийся. Поэтому мы можем заложить на головы определенный процент от АС с небольшим запасом, и отобрать головы в три емкости. Первая сразу на выброс, а что делать со второй и третьей - можно решить после. Тело лучше отобрать тоже в две емкости. Одна - чуть меньше, чем надо, а другая - остальное расчетное тело. И еще одну-две емкости можем использовать после тела, на случай, если наши расчеты оказались ошибочными. При такой стратегии ни лишние головы, ни не нужный хвост не попадет в тело.
А если мы говорим про фракционное разделение фруктов или зерна - то может и 11 емкостей не хватить для реализации подобной стратегии. Так как в этом случае нужно не только отсечь головы, но и захватить легкие эфиры в начале, и при необходимости, жирные кислоты в конце. И все это можно сделать автоматом. Но для этого нужно или много баночек, или хим. лабораторию, которая прям на лету дает анализ того, что идет из колонны. У меня лаборатории нет Улыбающийся. А если делать разделение по баночкам - то вопрос количества при том, что это делает сервопривод, не стоит. Можно сделать 2, 3, или 20. Все зависит от угла поворота сервопривода.
Ключевой момент всей этой истории - полная автоматизация. А что из какой баночки вылить или выпить - решать все равно тому, чья колонна Улыбающийся

Для сервопривода не нужны датчики положения, так как датчик положения стоит в самом сервоприводе. Из википедии статья про сервопривод:
сервопривод является «автоматическим точным исполнителем» — получая на вход значение управляющего параметра (в режиме реального времени), он «своими силами» (основываясь на показаниях датчика) стремится создать и поддерживать это значение на выходе исполнительного элемента.

Добавлено через 29мин.:

Да, забыл уточнить. Если кому то 11 емкостей много - их количество можно изменить в скетче, оно задано как параметр. Ну а если мало - то там же можно скорректировать Улыбающийся
игорь223 Академик таганрог 27.7K 19.6K
Отв.11  31 Марта 21, 21:33
Ты считаешь, что дробить на 4 (четыре) емкости тоже "абсолютно бессмысленно"? Или ты имел ввиду именно "бессмысленный" перебор с одиннадцатью?Oleg Kusnezov, 31 Марта 21, 16:37
Тут нужно разобраться, что и на каком оборудовании мы делаем.
На правильной колонне (с буфером и пастеризатором) достаточно иметь два клапана - на отбор тела из пастеризатора и голов из дефлегматора. Ни подголовников, ни хвостов в данном случае нет

Если взять другой случай, когда есть только колонна и дефлегматор, то тогда количество емкостей (в режиме полной спиртоварки) варьируется от двух до четырех.
Я бы предпочел хвосты не дожимать (неблагодарное занятие, овчинка выделки не стоит) и обойтись одним клапаном и гидромеханическим автопереводом потока между емкостями головы-тело.
Ну или двумя клапанами, по настроению.
Замечание - надо понимать, что железо важнее автоматики, и в этом случае, сколь не фракционируй, толку большого не добьешся, но бывает и такой вариант у народа.

А если мы говорим про фракционное разделение фруктов или зерна - то может и 11 емкостей не хватить для реализации подобной стратегии.lkosoj, 31 Марта 21, 17:06
Когда мы были молодыми, и верующими в возможность автоматизации процесса классической дистилляции, то такая стратегия казалась нам очевидной. С годами пришло понимание, что это - утопия. Но каждое поколение неофитов обязано наступить на эти грабли, это нормально.

Есть два пути более-менее реализуемой полуавтоматизации классической дистилляции.
Отгабриэливание, с отбором Тела1 и Тела2.
Для реализации достаточно иметь один клапан.
И стратегия с колонной: Головы_на_колонне - Дистилляция_тела - Добор_на_колонне.
На вакууме это работает на 100%, на атмосфере...ну, почти работает.
Это - два клапана.

Для сервопривода не нужны датчики положения, так как датчик положения стоит в самом сервоприводе. Из википедии статья про сервопривод:lkosoj, 31 Марта 21, 17:06
В конце прошлого века, когда я их обслуживал на военном заводе, работая КИПовцем после радиотехнического института, википедии еще не было. А они были.
И энкодеры были.
И многое еще чего было...у меня даже интеграл был, в виде свернутой полутораметровой арматурины.
Я этим интегралом пальцы от робота, упавшие под станину могучего японского станка, успешно извлекал.

А счас, вишь, что у людей с приводами бывает. Даром, что в википедии писано(((
Обратную связь по положению "носика" пока не сделал. Плохо, знаю. Сделаю.Oleg Kusnezov, 31 Марта 21, 16:37

управление другим контроллером (регулятор-стабилизатор мощности) через аппаратный интерфейс - у ТСа это serial, у меня I2C.Oleg Kusnezov, 31 Марта 21, 16:37
Есть такой простейший промпротокол управления нагревателями, называется он умным словом SSR
Ну, к примеру, твердотельные фазовые реле им управляются.
В старину эта хрень называлась медленным ШИМом с заполнением. ШИМ с периодом скажем 1секунда (чаще приемник делают с самонастройкой периода, но и фиксированный тоже вполне годится). И заполнением от 0 до 100%, шаг 1%.
Этого ЗА ГЛАЗА необходимо и достаточно в бытовом винокурении - хочешь стабилизатором мощности управляй, хочешь твердотелом.
Хоть на 10 метров, хоть на 20, хоть с опторазвязкой, хоть без нее. И никаких тебе хлипких идваэс...но это опять же, пусть расцветают сто цветов)))
lkosoj Куратор Видное 81 77
Отв.12  31 Марта 21, 22:52
Когда мы были молодыми, и верующими в возможность автоматизации процесса классической дистилляцииигорь223, 31 Марта 21, 21:33
Тема как раз про это Улыбающийся. Не очень понимаю, зачем нужны такие сложности с оборудованием, когда все намного проще и дешевле.

игорь223, ты уже сказал, что делать не будешь. У меня нет цели тебя убедить или заставить. Мне это не нужно. Проект с открытым кодом. Кому интересно - тот попробует, сделает, о результатах наверное отпишется. Никто не попробует - я ничего не потеряю Улыбающийся
игорь223 Академик таганрог 27.7K 19.6K
Отв.13  31 Марта 21, 22:57, через 5 мин
Проект с открытым кодом.lkosoj, 31 Марта 21, 22:52
То есть "тебе надо - ты и пиши".
Верно.
А если тебе мало входов, и термометры висят криво впараллель - то "бери и переделывай железо"- тоже логика понятна.

Поглядим, сколько будет желающих))))

Добавлено через 1мин.:

ты уже сказал, что делать не будешьlkosoj, 31 Марта 21, 22:52
Не, не буду.
То что есть - неинтересно. А что интересно - то я только языком болтать умею, кодировать разучился за 25 лет болтовни(((
lkosoj Куратор Видное 81 77
Отв.14  31 Марта 21, 23:08, через 12 мин
То есть "тебе надо - ты и пиши".игорь223, 31 Марта 21, 22:57
Ты тролишь? Если да, то не умело.
В самом начале написано, что проект полностью рабочий.

я только языком болтать умеюигорь223, 31 Марта 21, 22:57
:)
makh Профессор Sаmara 2.1K 1K
Отв.15  01 Апр. 21, 00:17
Уважаемые, а разъясните пожалста, чем не нравятся датчики на одной шине? Что-нибудь, кроме назначения ролей датчиков вручную в коде, или 20-ти строчек кода для оного назначения без перепрошивки?
serjrv Магистр Камышин 281 109
Отв.16  01 Апр. 21, 02:02
lkosoj, продолжай делать что задумал. Тут насоветуют уйму вариантов, лишь бы твой конструктив "не выстрелил", а то продажи уже реализованных конструкций рухнет Улыбающийся
На данном форуме привычка у большинства - обсосать, обосрать и опошлить, не дай боже ты умнее остальных окажешься.
игорь223 Академик таганрог 27.7K 19.6K
Отв.17  01 Апр. 21, 02:45, через 43 мин
Что-нибудь, кроме назначения ролей датчиков вручную в кодеmakh, 01 Апр. 21, 00:17
Скажи пожалуйста, ты когда-нибудь видел холодильник, в котором термометры нужно назначать вручную, при первом включении?
Духовую печь?
Ноутбук?
А смартфон, в котором пользователь вручную указывает, какая камера фронтальная, а какая тыловая?

или 20-ти строчек кода для оного назначения без перепрошивки?makh, 01 Апр. 21, 00:17
А где ты в этой ветке видел такой код?
А на этом форуме?
makh Профессор Sаmara 2.1K 1K
Отв.18  01 Апр. 21, 04:25
холодильник, в котором термометры нужно назначатьигорь223, 01 Апр. 21, 02:45
Аналогия некорректна, у нас термометр находится вне устройства. Мы их всех кабелями подключаем в коробку. Принимая и смиряясь с этим непреодолимым фактом, алгоритмы назначения функциональных ролей градусника кажутся настолько самоочевидными, что "где ты видел" удивило. Поставить задачу и сделать, кто во што горазд.. В меню добавить пункт "назначить градусники", написать на дисплей "подключить датчик в кубе", потом "датчик в царге", и т.д., ну и подключать по одному.. Адреса сохранить в eeprom.. ИМХО тривиально.. У мну без дисплеев как правило, там эта процедура происходила при подаче питания с отключенными градусниками -- просто подключаешь в правильной последовательности.. Не менее тривиально..
lkosoj Куратор Видное 81 77
Отв.19  01 Апр. 21, 10:25
продажи уже реализованных конструкций рухнутserjrv, 01 Апр. 21, 02:02
игорь223 не просто так переживает Подмигивающий
Как я писал выше - все сильно проще и дешевле и реально работает.