Форум самогонщиков Сайт Барахолка Магазин Помощь солдатам

Ненавязчивая автоматизация ректификационной установки

Форум самогонщиков Автоматика
1 ... 101 102 103 104 105 106 107 ... 132 104
OldBean Доцент Красноярск 1K 1.4K
Отв.2060  25 Янв. 21, 20:25
17.11. Исполнительные устройства и датчики

В этот раздел я буду складывать описания различных "самодельных" исполнительных устройств и датчиков.

17.11.1 Фракционник

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

Фракционник состоит из двух узлов: 1) распределитель потоков, позволяющий переключать входной поток жидкости по нескольким выходным каналам и 2) контроллер, управляющий переключателем по командам управляющего компьютера. В данной конструкции распределитель переключает каналы при помощи сервопривода. Контроллер сервопривода мы рассматривали раньше. Поэтому данный топик посвящен описанию конструкции самого распределителя потока.

Конструкция распределителя представлена на рисунке ниже. Слева - модели для 3D-печати, справа - готовая конструкция, встроенная в ректификационную установку.
01_frac_ assembled.JPG
01_frac_ assembled. Ненавязчивая автоматизация ректификационной установки. Автоматика.

Основание распределителя представляет собой блок из нескольких стилизованных воронок, заканчивающихся патрубками, находящимися под основанием. Переключение потока жидкости производится путем вращения лейки, насаженной непосредственно на выходную ось редуктора сервопривода. В такой конструкции фракционника нет чего-то принципиально нового - такого рода устройства известны и неоднократно обсуждались на соответствующих форумах. Описываю ниже подробности лишь для полноты картины. Вдруг какие-то нюансы кому-нибудь да пригодятся. Да самому иногда бывает что-то вспомнить нужно. ;))

Первый этап изготовления распределителя - создание его 3D-модели. Т.е. 3D-моделирование. С него и начнем.

Моделирование

С моделированием у меня совершенно неожиданно возникли проблемы - скончался мой старенький ноутбук. Вероятно - от старости. Я им пользовался нечасто. У меня это был единственный компьютер с Windows и бесплатным Компасом 3D Home. Собственно говоря, именно из-за Компаса я его и держал. Иногда включал, когда нужно было разработать какую-нибудь модель и, соответственные чертежи для мастерской. Но в последний раз ноут напрочь отказался работать. Просто так. Взял и тихо ушел в другой мир. Даже в BIOS отказался пускать и загружаться с флэшки. Ну значит Судьба, решил я, и стал подыскивать в Сети какую-нибудь софтину для 3D-моделирования под Linux. Требования к софтине были следующие: 1) это должно быть бесплатное приложение, нативное под Linux, 2) оно должно позволять создавать параметрические 3D-модели произвольной сложности, 3) поддерживать скрипты на python и 4) уметь генерировать файлы для 3D-печати. Все остальные вещи, связанные с конструкторской документацией, спецификациями, чертежами и т.п., меня мало интересовали.

Через некоторое время поиски увенчались успехом. Я нашел подходящую библиотеку. Фраза в описании: "Это - библиотека для программистов, которым понадобилось 3D" очень заинтриговала меня и я решил познакомиться с ней поближе. Несмотря на некоторую "сыроватость", библиотека оказалась такой изящной, вполне функциональной и достаточной для моих задач, что я решил рассказать о ней уважаемому сообществу. Короче: "Прощай Компас 3D! Да здравствует python!"

Библиотека называется zencad. Разработчик российский. Поэтому есть справочник по библиотеке на родном языке здесь. Есть неплохая, в качестве введения, статья автора на хабре здесь.

Если кратко, то основная идея библиотеки заключается в том, что создаваемая модель целиком описывается на языке python. Это, так называемые, "скриптовые САПР". В данном случае, в левом окне пишешь питоновский скрипт, который описывает модель, а справа видишь результат (модель), которой можно манипулировать (сдвиг, поворот, масштабирование и отражение). Работа идет на уровне твердотельного моделирования (аналогично, как в интерактивных САПР типа Компас, SolidWorks и т.п.), только не "жестами" при помощи мышки, а словами на языке python. Ну типа: сделай параллелепипед с размерами такими-то и такими, ориентированный так-то и так-то. Это будет основание. Прилепи (просто знак +) к нему такой-то конус, повернутый так-то и смещенный туда-то. При помощи цилиндра такого-то высверли в основании отверстие (просто знак -). И так далее. Очень просто и изящно! На языке общего назначения (python). В библиотеке есть возможность экспортировать модель, в частности, в формат stl, который понимают слайсеры. Понятно, что в скрипте доступен весь богатейший арсенал библиотек и модулей python!

В общем - вещь! За неполный вечер, параллельно с изучением самого API библиотеки, я легко "накидал" модель основания фракционника. Скриншот экрана показан на рисунке ниже. Соответствующий скрипт - в раскладушке после рисунка.
02_frac_base_view_01.png
02_frac_base_view_01. Ненавязчивая автоматизация ректификационной установки. Автоматика.

Скрипт модели основания фракционника
from zencad import *
import math

n = 6 # Количество секций
r = 20 # Внутренний радиус секции
R = 40 # Внешний радиус секции
h = 12 # Высота основания
hsec = 10 # Высота (глубина) секции
d = 2 # Толщина стенок
rp = 3 # Радиус пипки
rpd = 1.5 # Радиус отверстия в пипке
hp = 15 # Высота пипки
mx = 13; my = 24 # Габариты мотора (с небольшим запасом)
moffs = 4.75 # Смещение оси двигателя по Y относительно центра

phi = deg(180/(n-1)) - d/r # Угловой размер ячейки
# Блок ячеек
sec = (cylinder(r=R, h=hsec, yaw=phi) - cylinder(r=r, h=hsec, yaw=phi)).rotZ(-phi/2).moveZ(h-hsec)
wrk = cone(r1=r, r2=0, h=hsec, center=True).rotX(deg(180))
#w1 = (box(R, R, hsec, center=True).moveZ(-hsec/2) - w1).moveX(2*R)
wrk = (box(R, R, hsec, center=True) - wrk).moveX((R+r)/2).moveZ(h-hsec/2)
sec -= wrk
asec = rotate_array(n=n, yaw=deg(180), endpoint=True)(sec)
# Основание
c = cylinder(r=R+d, h = h)
ug1 = box(R+d, R+d, 3*h, center=True).moveY(-(R+d)/2-R*math.sin(phi/2)-d).moveX(-(R+d)/2-(r+mx/2)/2)
ug2 = box(R+d, R+d, 3*h, center=True).moveY(-(R+d)/2-R*math.sin(phi/2)-d).moveX((R+d)/2+(r+mx/2)/2)
cg = box(2*R, R, 3*h, center=True).moveY(-3*R/2-25/R)
g = c - ug1 - ug2 - cg
# Штуцеры
pipka = cylinder(r=rp, h=hp, center=True).moveZ(-hp/2).moveX((R+r)/2)
apipka = rotate_array(n=n, yaw=deg(180), endpoint=True)(pipka)
pd = cylinder(r=rpd, h=2*(hp+h), center=True).moveX((R+r)/2)
apd = rotate_array(n=n, yaw=deg(180), endpoint=True)(pd)
# Отверстие под сервомашинку MG90S
motor = box(mx, my, 2*h, center=True).moveY(-moffs)
d1 = cylinder(r=0.8, h=2*h, center=True).moveY(13.85-moffs)
d2 = cylinder(r=0.8, h=2*h, center=True).moveY(-13.85-moffs)
# Отверстия для крепления основания
kr = cylinder(r=3, h = R, center=True).rotX(deg(90)).movZ(h/2).movY(-R/2 - 13.85 - moffs - 1)
gayka = box(10.5, 5.5, 3*h, center=True).moveY(2.75-R-25/R+5)

model = unify(g + apipka)
model -= asec + apd + motor + d1 + d2 + kr + gayka
model = model.moveZ(-h)
# Последние преобразования (для 3D печати) 
#model = model.rotY(deg(180))
model = unify(model)
#model = model.moveZ(hp)
disp(model)
#disp(model - halfspace().rotateX(deg(-90)))
show()


Замечательной особенностью библиотеки zencad является то, что она позволяет строить полностью параметризованные модели 3D-объектов. Это очень удобно для различных изменений модели. Пример модификации основания фракционника показан на следующих рисунках.
03_frac_base_view_02.png
03_frac_base_view_02. Ненавязчивая автоматизация ректификационной установки. Автоматика.
04_frac_base_view_03.png
04_frac_base_view_03. Ненавязчивая автоматизация ректификационной установки. Автоматика.

Из рисунков видно, как, изменив всего два параметра (выделены красным), мы сделали модель фракционника уже на 9 фракций (вместо исходных 6) и немного изменили геометрию всех ячеек.

Модель лейки с разрезом представлена на следующих рисунках. Соответствующий скрипт - в раскладушке ниже.
05_frac_spout_view_01.png
05_frac_spout_view_01. Ненавязчивая автоматизация ректификационной установки. Автоматика.
06_frac_spout_view_02.png
06_frac_spout_view_02. Ненавязчивая автоматизация ректификационной установки. Автоматика.

Скрипт модели лейки
from zencad import *
import math

r = 20 # Внутренний радиус секции (см. основание)
R = 40 # Внешний радиус секции (см. основание)
d = 2 # Толщина стенок
hc = 40 # Высота воронки
Rc = 6.5 # Внешний радиус воронки
rc = Rc - d # Внутренний радиус воронки
ra = 2.1 # Внутренний радиус шестерни
ha = 4
Na = 20 # Количество зубьев шестеренки на оси мотора
Rp = 2.5 # Внешний радиус гусака
rp = 1.5 # Внутренний радиус гусака

# Делаем шестеренку двигателя сервы
a = 2*math.pi*ra/Na
Ra = ra + (a/2)*math.tan(deg(60))
wrk = ngon(r=Ra, n=3)
wrk -= box(2*Ra, center=True).moveX(-Ra)
kink = wrk.extrude(ha) # Зубчик шестеренки двигателя сервы
gear = unify(rotate_array(n=Na)(kink)).rotZ(deg(180/Na)) # Сама шестеренка
# Делаем гусака без дырки
points = [(0, 0, 0), ((R+r)/2, 0, -(14+d+1.5-1))] # Опорные точки
tangs = [(1, 0, 0), (0, 0, -1)] # Векторы касательных к точкам
spine = interpolate(points, tangs) # Траектория экструзии гусака
pr1 = circle(r=Rp).rotY(deg(90)) # 
pipe = pipe_shell(profiles=[pr1], spine=spine) # Гусак без дырки
pipe = pipe.moveZ(ha+d+rp) # Смещаем гусака по Z в нужное место
# Делаем собственно саму лейку
modela = cylinder(r=Rc, h=hc) - gear + pipe # Заготовка лейки
modela -= cylinder(r=rc, h=hc).moveZ(ha+d) # Основное отверстие
# "Сверлим" дырку в гусаке 
pr2 = circle(r=rp).rotY(deg(90)) 
m2 = pipe_shell(profiles=[pr2], spine=spine).moveZ(ha+d+rp)
modela -= m2
modela = unify(modela)
modela = modela.rotX(deg(180)).moveZ(hc)
#disp(modela - halfspace().rotateX(deg(-90)))
disp(modela)
#disp(modela-halfspace().rotateX(deg(-90)))

show()

Примечание. Конечно же в Сети нашлись и другие скриптовые САПР. В частности, pythonOCC. Эта САПР тоже основана на python и использует такое же геометрическое ядро (OpenCascade). Но zencad показался мне более легким в освоении и вполне пригодным для решения всех моих 3D-задач. Поэтому выбор пал именно на него.

После экспорта моделей деталей фракционника в формат stl, начинается следующий этап их изготовления: выбор подходящего пластика, подготовка моделей к 3D-печати и собственно печать.

Печать деталей

Выбор подходящего пластика

При ректификации обе детали фракционника контактируют с водой, этанолом и относительно небольшими примесями других растворителей (в частности, ацетоном). Поэтому к выбору пластика для 3D-печати нужно отнестись внимательно. Информации по химической стойкости популярных пластиков, используемых в 3D печати, в Сети много. Есть неплохой ресурс по свойствам большого количества пластиков, используемых в 3D печати здесь. В том числе и по химической устойчивости пластиков. Неплохая сводная таблица химической устойчивости есть здесь. Недавно вышла статья, где результаты исследования химической стойкости пластиков представлены в виде удобной диаграммы, показанной на рисунке ниже.
07_plastic_chemical_resistance.png
07_plastic_chemical_resistance. Ненавязчивая автоматизация ректификационной установки. Автоматика.

В целом, авторы статьи разделили пластики на три группы:
1. Материалы, подверженные разрушению в большинстве исследованных органических растворителей. Это PLA, PLA-Cu, ABS, SBS, Ceramo, Primal-loy и HIPS.
2. Материалы устойчивые к большинству органических растворителей, за исключением лишь некоторых, особо злобных :) К таким материалам относятся фотополимерная смола и PETG.
3. Материалы, стабильные во всех исследованных растворителях. Это PP, PE, POM, Nylon и Nylon-C.

Из диаграмм мы видим, что такие популярные пластики, как PLA и ABS еще как-то могут немного посопротивляться этанолу, но они нестабильны в ацетоне (который присутствует в головах). Вполне доступные пластики PP (полипропилен) и Nylon демонстрируют отличную химическую стойкость, но они весьма сложны в 3D-печати. По крайней мере для моей квалификации ;)) Поэтому мой выбор пал на PETG. С одной стороны PETG доступен и не такой сложный в печати, как нейлон, а с другой стороны, это пищевой пластик, очень стойкий к этанолу и относительно стойкий к ацетону. Поработает фракционник с годик - там и посмотрим насколько будет (или не будет) отличаться коррозия воронок для голов, тела и хвостов.

Подготовка моделей к 3D-печати

После выбора пластика необходимо "порезать" модель на слои, которые будет печатать 3D-принтер и определиться с режимами работы принтера. Такая задача решается в специальных программах - слайсерах. Она сильно зависит не только от типа/марки принтера, но и от партии пластика. Поэтому тонкая подгонка параметров слайсера обычно осуществляется экспериментально на тестовых моделях. На эту тему в Сети очень много инструкций по подбору режимов работы принтера. Поэтому не имеет смысла здесь глубоко углубляться в эту тему. Для ориентировки, просто приведу основные параметры, которые я использовал при печати деталей фракционника (после устранения массы "соплей и волос" и других дефектов на тестовых моделях).

Слайсер: Cura
Пластик: PETG китайской фирмы DEXP
Температура сопла: 230°
Температура стола: 80°
Скорость: 25 мм/сек
Откат: 3 мм
Скорость отката: 85 мм/сек
Охлаждение: 100%
Поддержки: от стола
Угол нависания: 60°
Шаблон: Крест
Плотность поддержек: 25%

Печать

Ну про саму печать рассказывать особо нечего. Она долгая и скучная... В результате получились вот такие детали фракционника:
08_frac_parts.JPG
08_frac_parts. Ненавязчивая автоматизация ректификационной установки. Автоматика.

Сборка фракционника тривиальна. Единственный нюанс при креплении лейки: поскольку винт, вкручиваемый в ось сервопривода, в данной конструкции не используется, желательно скрепить лейку с осью сервы маленькой капелькой суперклея.

Вернуться к оглавлению
ruslan_ka Студент Железнодорожный 29 6
Отв.2061  26 Янв. 21, 17:01
Еще как вариант...
Для моделирования и работы с 3D принтером я использую бесплатный web ресурс tinkercad.com Работает из под любой платформы, все интуитивно понятно, мышкой потыкал, выгрузил в stl формате, после выгрузки сразу открывается в слайсере принтера. Свой проект доступен с любого рабочего места в личном кабинете.
воронка-1.png
воронка-1.png Ненавязчивая автоматизация ректификационной установки. Автоматика.
OldBean Доцент Красноярск 1K 1.4K
Отв.2062  27 Янв. 21, 12:48
Нормальное, легкое приложение. Немножко детское, конечно.
Но вот возможность полностью параметрического 3D моделирования (как, например, в zencad) - это слишком крутая фича, чтобы от нее отказываться в пользу той же простоты и наглядности мышиной работы.

Ну вот попробуйте сделать какие-нибудь более-менее радикальные изменения готовой модели (того же основания, как у Вас на картинке) в tinkercad. Ну, например, изменить количество воронок с 6 на 5. Я не знаю функциональности tinkercad, но, боюсь, что модель придется почти переконструировать заново. А в zencad нужно заменить лишь один параметр. Вместо n=6 написать n=5. И все перестроится автоматически.
BogAD Кандидат наук Красногорск - Белово 403 184
Отв.2063  27 Янв. 21, 13:20, через 33 мин
Требования к софтине были следующие: 1) это должно быть бесплатное приложение, нативное под Linux, 2) оно должно позволять создавать параметрические 3D-модели произвольной сложности, 3) поддерживать скрипты на python и 4) уметь генерировать файлы для 3D-печати. Все остальные вещи, связанные с конструкторской документацией, спецификациями, чертежами и т.п., меня мало интересовали.OldBean, 25 Янв. 21, 20:25

Сергей, доброго всего и подольше! Подмигивающий
Осмелюсь спросить, не рассматривал FreeCAD? Он под Linux, и под Windows. Абсолютно на халяву, имеет командную панель Python. По моему под твои условия соответствует. Я в нем не спец, но тихонько изучаю...
ruslan_ka Студент Железнодорожный 29 6
Отв.2064  27 Янв. 21, 13:38, через 18 мин
Но вот возможность полностью параметрического 3D моделирования (как, например, в zencad) - это слишком крутая фича, чтобы от нее отказываться в пользу той же простоты и наглядности мышиной работы.OldBean, 27 Янв. 21, 12:48
С этим трудно не согласиться.

Немного смущает, что фракционник "открытого типа" (Пары спирта, искра...или пыль и грязь из воздуха...).
Вот если сделать его в виде "шайбы" разрезанной вдоль. Нижняя часть как у вас с воронками, а верхняя с приемным стаканом в центре и одним каналом внутри. Шаговый двигатель вращает верхнюю часть относительно нижней.
воронка-2.png
воронка-2.png Ненавязчивая автоматизация ректификационной установки. Автоматика.
OldBean Доцент Красноярск 1K 1.4K
Отв.2065  27 Янв. 21, 14:24, через 47 мин
не рассматривал FreeCAD?BogAD, 27 Янв. 21, 13:20
Да. Конечно смотрел. Еще раньше. Как раз из-за питона. Неплохая программа. Даже кое что поделал в нем. Но чертежи и расстановка размеров так напрягли, что я (в то время) отказался от него. Впоследствии я как-то осознал, что чертежи с размерами станкам ЧПУ в общем-то не очень-то и нужны, но любовь уже прошла. А zencad как-то лихо "впрыгнул" в душу. Там и остался. :)) Возможно, потому что я человек "старорежимный" - мне больше нравится разговаривать с компьютерами, чем тыкать в кнопки и искать их на панелях и вкладках.

Вот если сделать его в виде "шайбы" разрезанной вдоль. Нижняя часть как у вас с воронками, а верхняя с приемным стаканом в центре и одним каналом внутри. Шаговый двигатель вращает верхнюю часть относительно нижней.ruslan_ka, 27 Янв. 21, 13:38
Может быть проще будет шайбу превратить в неподвижный кожух (с крышкой выше лейки и центральным отверстием под шланг, идущий от клапана) и в поставить его на основание фракционника?
ruslan_ka Студент Железнодорожный 29 6
Отв.2066  27 Янв. 21, 15:29
Может быть проще будет шайбу превратить в неподвижный кожух (с крышкой выше лейки и центральным отверстием под шланг, идущий от клапана) и в поставить его на основание фракционника?OldBean, 27 Янв. 21, 14:24
1. это уже будет 3 детали а не 2.
2. с "шайбой" держать штативом нужно только нижнюю часть (верхняя опирается на нижнюю). В принципе, нижнюю часть можно ремешком пристегнуть к колонне и отдельный штатив не понадобится (сделать выточку под колонну).
OldBean Доцент Красноярск 1K 1.4K
Отв.2067  27 Янв. 21, 16:59
Одной деталью больше, одной меньше... Это же не массовое производство. Кстати, можно защелкивать кожух на основание. Т.е. ничего дополнительного не понадобится. Впрочем, это уже конструкторские мелочи.

А штатив - штука полезная. Особенно, когда ворочаешь колонну, разгружая или загружая куб. ;) На штативе выше вкручивается еще штанга, на которой крепится этот датчик скорости отбора. Я его снял со штатива потому что не хотел усложнять описание фракционника. Да и софт для него еще корявый. Хочу добавить в библиотеку lite автоматическое обнаружение устройств с USB интерфейсом (весы всякие, датчики и исполнительные устройства на базе ардуинок с USB) и единообразную работу с ними (какой интерфейс у устройства, USB, i2c, 1 Wire скрыт от пользователя). Но, увы, пока еще не сильно продвинулся в этом направлении.
ruslan_ka Студент Железнодорожный 29 6
Отв.2068  28 Янв. 21, 13:39
А если нет 3D принтера, то можно из фанеры, медных заглушек и медной трубочки на 1/4" (или 6мм) сделать этот фракционник.
Воронки и лейку спаять из медной трубки и заглушек. Из фанеры выпилить основание для воронок с сервоприводом и крышку для крепления лейки. Крышка клеится на вал сервопривода Улыбающийся

PS
У меня вопрос, вот повернул сервопривод лейку на угол, а дальше пальцем можно довернуть или он удерживает её?
заглушка.jpg
заглушка.jpg Ненавязчивая автоматизация ректификационной установки. Автоматика.
kulijkin Специалист Камышин 106 58
Отв.2069  28 Янв. 21, 16:25
Пальцем не провернешь. За счёт редуктора в приводе нужно слишком большое усилие прикладывать.
OldBean Доцент Красноярск 1K 1.4K
Отв.2070  28 Янв. 21, 16:46, через 21 мин
По поводу сервы коллега kulijkin уже сказал, а про 3D печать:

А если нет 3D принтераruslan_ka, 28 Янв. 21, 13:39
то сейчас с этим проблем нет. Предложений по 3D печати очень много. В том числе и дистанционно: отправляешь изготовителю stl-файлы и через некоторое время получаешь по почте готовые детали.

,
Volume Кандидат наук Уфа 478 274
Отв.2071  28 Янв. 21, 20:07
Немного смущает, что фракционник "открытого типа" (Пары спирта, искра...или пыль и грязь из воздуха...).
Вот если сделать его в виде "шайбы" разрезанной вдоль.ruslan_ka, 27 Янв. 21, 13:38
отличная идея! Меня не столько грязь, сколько пары(==запах) открытой струи смущал. Но ведь 3дпринтеру пофиг что печатать-что "клювик" что шайбу с каналом внутри. Да, визуального контроля внутри на "воронках" не будет. Ну и ладно. Надо наружный визуальный контроль сделать - метки на верхней шайбе и метки на нижней детали. Совмещены - значит все ок

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

У меня вопрос, вот повернул сервопривод лейку на угол, а дальше пальцем можно довернуть или он удерживает её?ruslan_ka, 28 Янв. 21, 13:39
если питание и управляющий сигнал подается - "мозги" сервы держат заданный управлением угол. Если снять питание - можно вручную изменить положение. За счет редуктора что между высокооборотистым мотором сервы и "клювиком", сдвиг требует ненулевого усилия

Добавлено через 33дн. 15ч. 12мин.:

сугубо для информации: распечатал фракционник (спасибо за модельку!),при тестах обнаружил (сюрприз!) что зависимость угол-ширина импульса сервы нелинейная. Как проявляется: при точной настройке на центр первой и последней воронок, на промежуточных "клюв" смещен дальше центра, в пределах воронки, но ближе к краю чем к центру. Напрашивается настройка и запоминание ширины импульса под каждую позицию, расчет ШИМ "в лоб" по макс-мин ширине и кол-ву воронок не вполне приемлем
kulijkin Специалист Камышин 106 58
Отв.2072  03 Марта 21, 17:47
отличная идея! Меня не столько грязь, сколько пары(==запах) открытой струи смущал. Но ведь 3дпринтеру пофиг что печатать-что "клювик" что шайбу с каналом внутри. Да, визуального контроля внутри на "воронках" не будет. Ну и ладно. Надо наружный визуальный контроль сделать - метки на верхней шайбе и метки на нижней детали. Совмещены - значит все окVolume, 28 Янв. 21, 20:07
Скоро выложу этот же фракционник в закрытом корпусе. Для меня тоже важно чтобы запахи не распространялись.

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

сугубо для информации: распечатал фракционник (спасибо за модельку!),при тестах обнаружил (сюрприз!) что зависимость угол-ширина импульса сервы нелинейная. Как проявляется: при точной настройке на центр первой и последней воронок, на промежуточных "клюв" смещен дальше центра, в пределах воронки, но ближе к краю чем к центру. Напрашивается настройка и запоминание ширины импульса под каждую позицию, расчет ШИМ "в лоб" по макс-мин ширине и кол-ву воронок не вполне приемлемVolume, 28 Янв. 21, 20:07
Подтверждаю. Для примера 90 градусов заданных серве на самом деле дают где-то 80 реальных градусов.
Samogonich datchik Магистр Иваново 199 368
Отв.2073  13 Марта 21, 12:01
Почитал начало ветки. Модульная структура конечно хорошо, когда нужно из этих модулей разные хреновины в зависимости от ситуации собирать, либо если постоянно горят входа и нужно часто менять, либо производительности одного модуля в разы не хватает. Но если система известна, и это не вычисление криптовалюты, то чем меньше модулей-проводов, тем лучше. Медленная связь между модулями, разваливающиеся разъемы, незаметно под изоляцией обрывающиеся провода... Хорошо когда всё варится на одном кристалле со скоростью десятков миллионов операций в секунду.
Да и к линуксу-питону у меня тоже предубеждение. Операционная система, это всегда черный ящик. Как оно там чего варится... очень тяжело бывает ошибки найти, которые раз в несколько дней случаются. Всё же предпочитаю писать на чистом кристалле с известными приоритетами прерываний. Поменьше малинок и уровней иерархии. Так что STM32 + ПК - самая крутая связка, абсолютно ничего лишнего. А линукс - для любителей потрахаться с компьютером.
Не совсем понял, о каких "тиньках" идёт речь. Если о контроллерах от Texas Instruments, то в своё время я от них отказался как раз из-за того, что у них входа не защищены и постоянно выгорают. Может они конечно за 10 лет исправились.
Я бы не назвал это всё ненавязчивой автоматизацией. Название ветки должно быть типа "Автоматизация для асушника 80-го уровня", или "Ректификатор уровня БОГ"
P.S. Я понимаю, что это хобби и человеку интересно. Так что извиняюсь, что разбавил такую серьезную работу своими легкомысленными замечаниями.

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

С масленицей всех!!!
Время блеснуть своими спиртными напитками перед соседями )))
ruslan_ka Студент Железнодорожный 29 6
Отв.2074  15 Марта 21, 13:21
Не совсем понял, о каких "тиньках" идёт речь.Samogonich datchik, 13 Марта 21, 12:01
Читайте тему дальше. В конце концов тут остановились на ATMEGA 328P-PU DIP-28 недорогой программируемый AVR микроконтроллер.

Каждый такой микроконтроллер управляет своим оборудованием (клапан, тэн, реле, датчики) в зависимости от своей прошивки (написанной на языке Си). А "малинка" взаимодействует с юзером и передает команды юзера (сформулированные на языке Python) на микроконтроллеры.

Линукс гораздо стабильнее в работе и менее требователен к ресурсам ПК. У меня самая первая "малинка" 2011 года выпуска легко справляется со всеми задачами ректификации и позволяет контролировать и управлять процессом удаленно.

Система модульная, поскольку оборудование у всех разное. От недорого самопала (как у меня) до больших, почти промышленных, систем. Поэтому и программы управления на Python каждый сам пишет под своё оборудование.
И не смотря на то, что у всех всё разное, тут удалось прийти к общему "знаменателю" по автоматизации процесса.

И если вам наскучит ректификация, этим же набором оборудования вы сможете, например, теплицу на даче полностью автоматизировать или прокатный стан на заводе Улыбающийся
сообщение удалено
OldBean Доцент Красноярск 1K 1.4K
Отв.2075  21 Марта 21, 09:43
Извиняюсь за паузу - немножко некогда было.

обнаружил (сюрприз!) что зависимость угол-ширина импульса сервы нелинейная. Как проявляется: при точной настройке на центр первой и последней воронок, на промежуточных "клюв" смещен дальше центра, в пределах воронки, но ближе к краю чем к центру. Напрашивается настройка и запоминание ширины импульса под каждую позицию, расчет ШИМ "в лоб" по макс-мин ширине и кол-ву воронок не вполне приемлемVolume, 28 Янв. 21, 20:07
Подтверждаю. Для примера 90 градусов заданных серве на самом деле дают где-то 80 реальных градусов.kulijkin, 03 Марта 21, 17:47

Скорее всего, не вполне корректно определены уровни ШИМ для крайних положений (0 и 180 гр). Если сделать все правильно, то линейность вполне приличная. Я, конечно, транспортиром не измерял, но визуально клювик останавливается над соответствующими дырками воронок (см.рисунок ниже).

Провел уже три ректификации в полностью автоматическом режиме (с фракционником). Все работает четко. Фракционник для ректификации - действительно очень удобная вещь. Жаль, что никак раньше руки не доходили до завершения этого удобного девайса ;))))

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

фракц_углы.png
фракц_углы.png Ненавязчивая автоматизация ректификационной установки. Автоматика.
Volume Кандидат наук Уфа 478 274
Отв.2076  21 Марта 21, 10:09, через 27 мин
Скорее всего, не вполне корректно определены уровни ШИМ для крайних положений (0 и 180 гр).OldBean, 21 Марта 21, 09:43
ШИМ настраивал на точное позиционирование в первой и последней воронке, центр первой воронки не есть крайнее положение сервы: ШИМом можно сместить клюв от центра по часовой стрелке
Проблема в китайских сервах: скорее всего резистор нелинейный вместо линейного поставили, или дешевле или линейные кончились, поставили что есть
OldBean Доцент Красноярск 1K 1.4K
Отв.2077  21 Марта 21, 10:42, через 33 мин
Проблема в китайских сервах: скорее всего резистор нелинейный вместо линейного поставилиVolume, 21 Марта 21, 10:09
У меня тоже китайские. С али. Но, все возможно в этом мире... В этом случае можно снять калибровочную кривую (угол vs ШИМ) и ею (точнее - обратной) пользоваться при установке угла.
seagas Специалист Москва 122 5
Отв.2078  28 Марта 21, 07:18
по поводу запахов и закрытого фракционникаOldBean, 21 Марта 21, 09:43
Фракционник из какого пластика печатали?

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

OldBean, Первый раз вижу, что для 3D модели люди скрипт пишут. Снимаю перед Вами шляпу!!!! Я использую SketchUp, он русифицирован и в ютубе полно уроков. Меня приятели критикуют за мой выбор, но я въехал в этот скетчап без проблем. И для моих задач его на все 100% хватает.

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

Поэтому мой выбор пал на PETGOldBean, 25 Янв. 21, 20:25
Прочитал какой пластик был. По поводу PP (полипропилен) один раз пробовал, купив экспериментальный образец, так он оказался очень мягкий.
PETG - действительно стойкий к ацетону, но у меня PETG был от трех производителей. Все разные, один вонял так, что дышать не хотелось. Другие прилипали к столу по разному.
buddy Доктор наук Казань 770 197
Отв.2079  26 Мая 21, 12:50
Насчет фракционника - в качестве эксперимента для проверки работы наверное разумно выполнять из пластика, но для реальной работы отдаленные последствия для здоровья все же пугают.
Наверное можно ограничиться применением печати (пластика) для изготовления механических частей: водило, корпус, держатель приемных "воронок" и прочее.
А продукт ИМХО должен контактировать только с нержавейкой или силиконом.
Т.е. водило будет поворачивать непосредственно саму силик. трубку (просунуть ее через "носик"), а приемные воронки из нержи или даже стекла. А закрепить их можно в самом деле и в пластиковом ложе.
Ну, или... для первого раза хотя бы попробовать покрыть контактирующие с продуктом поверхности пластика "хорошим" (пищевым или хоть аквариумным) силиконом.