Перистальтический насос на 3D принтере

Форум самогонщиков, пивоваров, виноделов Оборудование Сделай сам
1 2 3 4 ... 9 1
Phisik Куратор Екатеринбург 209 610
05 Дек. 18, 21:17
Disclaimer (письменный отказ от ответственности)
Помните, что данный проект - это самодельное устройство. Я делал его для себя. Его надежность, ресурс и безопасность достоверно не подтверждены. Все, что вы делаете - вы делаете на свой страх и риск. Я не несу никакой ответственности ни за какие последствия правильного и неправильного использования этого устройства. Не надо приходить ко мне, когда 100 литров браги разольются по полу, если вы оставили оборудование без присмотра. Проверяйте и тестируйте все очень ответственно!

С чего все началось
Приобрел я себе НБК, а пока мне ее варили, я решил, что надо бы на коленке по-быстрому сварганить насос, потому-что что-то готовое из Китая не успело бы приехать, а на родине цены так себе. Полистал Thingiverse, там много подобных проектов, но все они либо под недоступные шланги,  либо с малой производительностью, т.к. качать надо было 20-30 литров. В итоге появился этот проект, полностью открытый, все 3д модели и прошивка для драйвера опубликованы на GitHub и Thingiverse.

Производительность
Первые версии использовали китайские тонкостенные шланги. Последняя версия головки с пружинным поджимом нормально работает с нашими шлангами. На данный момент я использую шланг 9*6мм, со стенкой 1,5мм. Используя шаговый драйвер TB6560, мне удалось разогнать двигатель 17HS4401S до 1000 RMP. Насос набирал 3х литровую банку за 1,5 минуты (~120-130 л/час). С драйвером A4988 максимальная скорость в районе 450-500 RPM . Для себя я ограничил обороты на 450 RPM, а ток двигателя снизил до 1А. В итоге качает 65л/час и практически не греется ни драйвер, ни двигатель.

Тестирование:
"Ресурсные испытания" проводил 3ое суток: первые на скорости - 50л/ч, вторые - 60л/ч, третьи - 65л/ч. Ничего не развалилось и не сгорело. Достоверно шланг 9/6мм без повреждения отработал 60 часов, за которые перекачал около 3.5 тонн воды. Это минимальная оценка, т.к. когда точно течь ночью появилась, сказать не могу.

3Д печать (обновлено 2018-12-23)
Напечатать надо 7 деталей: статор, упор для шланга, крышка статора, ротор, крышка ротора, 2 фиксатора для шланга, (опционально) 2 фитинга для шланга. Для печати лучше использовать термостойкий пластик, PLA ведет при нагреве мотора. Головку v3 я печатал ABS пластиком. Заливка ротора 100%, статора 30-50%. По результатам обсуждения в теме добавил версию ротора с направляющими для шланга. Но они царапают шланг, поэтому надо их зашкурить и загладить растворителем (проще всего с АБС, он легко шкурится и растворяется ацетоном).

Корпус рассчитан на печать соплом 0,4мм с extruction width 0.43-0.46мм, для этого боковые стенки сделаны немного шире, чем наклонные.
Печатные платы (добавлено 2018-12-23)
Развел печатки в DipTrace под Arduino pro mini & A4988. Исходники и pdf-ка под ЛУТ прицеплены ниже. Выглядит так:

pbc01.jpg  pbc03.jpg pbc02.jpg
Комплектующие
Из электроники нам понадобится следующее:
  • Шаговый мотор с максимально возможным моментом, например 17HS4401S. ~$8
  • Драйвер шагового мотора A4988/DRV8825 ~$1-2
  • Arduino mini/nano/uno/mega/giga ~ $2
  • Энкодер с кнопкой KY-040 ~ $1
  • 1602 LCD with I2C ~ $2
  • Подшипники 605zz. ~$2 за 10 шт
  • Блок питания 12V 1-2A. ~$3
  • Резиновые ножки ~$1
  • Пружинки от авторучки ~$1

Я брал только шаговик с драйвером, мне все обошлось в 500р. Если закупаться с нуля придется отдать $20.
Функции, реализованные в прошивке
На данный момент насос умеет v2.3+:
1. Регулировать RPM
2. Регулировать поток в л/час или мл/мин
3. Качать заданное количество жидкости
4. Калибровка
5. Плавный старт/стоп
6. С датчиком влажности обнаруживать повреждение шланга
7. Поддерживает внешнее управление ШИМ или аналоговым сигналом

Режимы переключаются кликом, double click это быстрый старт/стоп. Удержание - вход в режим калибровки
История версий
v1 Первая версия головки, без пружин и корпуса
v2 Первая версия головки в пружинным поджимом шланга
v3 Рабочий вариант головки под шланг 9*6мм + 1ая версия корпуса
v4 Основание у головки сделал потолще. У корпуса сделал защелки для нижней панельки и резиновые ножки

NB! Последние версии файлов опубликованы на GitHub!

Видео обзор

Всем, кто интересуется моей НБК
Сейчас мне переделывают бардоотводчик, когда все приедет, я все сфотографирую, измерю производительность, сделаю видео и выложу сюда

Варианты изготовления и отзывы
  • Насос без 3Д принтера от бычёк
  • Вариант с Nema23 + YZ1515 от nic2015

Альтернативные разработки (здесь буду собирать ссылки на разработки наших коллег по форуму и другие проверенные модели)
  • Вариант насоса от golem73
3d-вид.png
1024x720 79Кб
disassembled.png
1024x480 27Кб
pump-v3-assembled.png
1024x698 38Кб
view1.png
1024x578 22Кб
view2.png
1024x578 31Кб
схема.jpg
1024x613 50Кб
bengoor Доцент Кронштадт 1401 819
Отв.1  05 Дек. 18, 22:41
Заказал комплект деталей. Принтера естественно нет, если вдруг кто сможет сделать на заказ очень буду рад.
Хотелось бы ещё согласование с автоматикой.
Maik2407 Кандидат наук Новосиб 341 62
Отв.2  05 Дек. 18, 23:21, через 41 мин
Если получается достаточно точно нппечать .. то лучше два ролика делать.
Дешевле, менее шумно, дольше прослужит шланг, и меньше нагрузки на моторчик.
Nike12 Кандидат наук Новосибирск 466 91
Отв.3  06 Дек. 18, 05:20
Phisik, под 608 подшипники головки нет?
SA1348 Профессор Саратов 3124 1395
Отв.4  06 Дек. 18, 08:17
Phisik, Получается печатаем три детали? stator.stl, rotor-cap.stl, rotor-bottom.stl?
Hose_adapter это покупное изделие?
Ну и конечно интересует стыковка дравйвера A4988 с автоматикой.
Phisik Куратор Екатеринбург 209 610
Отв.5  06 Дек. 18, 09:48
лучше два ролика делать
Я пробовал, точности печати не хватает. Воду не тянет, и застревает иногда, когда ролик к шлангу подходит. Когда 3 ролика, то 2 все время на шланге.
Получается печатаем три детали ... стыковка с автоматикой
Обновил шапку, добавил этапы сборки. С автоматикой что-нибудь придумаем. В планах I2C прикрутить и всю периферию у автоматики на I2C перевести. А на первых порах будем ШИМ выпрямлять скорее всего.
под 608 подшипники головки нет
У 608 OD 22 и минимальный радиус шланга будет 34мм, против 27 мм для 605. Значит понадобится на 25% больше крутящего момента, которого и так дефицит. Но ничего не мешает переделать под Nema23 и 608ые. Все настраивается в OpenSCAD.

плохиш Студент Великий Новгород 26 6
Отв.6  06 Дек. 18, 19:55
Phisik,!
По поводу скетча.Супер!
Долгожданный розлив и тарирование появились! Я имею в виду тему mak, -а  [Перистальтический насос на шаговом двигателе и ардуино в качестве мозгов] ,где его не раз просили выложить эти режимы (они у него были в тестовом варианте).Он почему-то ссылался на недостаток памяти ардуины .
Будет время откорректирую скетч под разводку своего насоса(сделан по mak-у) и отпишусь по результатам.
Единственно чего хотелось бы добавить-внешнее управление:если на пине строба высокий уровень,то включаем насос,а скорость задаем уровнем напряжения от 0 до 5в на другом пине.
0 вольт- стоим,5 вольт-  максимум оборотов из скетча.
И можно схему подключения с более высоким разрешением,что бы было видно название пинов на платах?
Про схему -не прав.В прикрепленном архиве все как надо.
saniaxxx Магистр Кострома 242 27
Отв.7  07 Дек. 18, 10:45
Единственно чего хотелось бы добавить-внешнее управление:если на пине строба высокий уровень,то включаем насос,а скорость задаем уровнем напряжения от 0 до 5в на другом пине.
0 вольт- стоим,5 вольт-  максимум оборотов из скетча.плохиш, 06 Дек. 18, 19:55
На мой взгляд лучше управление по 1-wire или I2C. Тока I2C по идее уже как master под дисплей занят
плохиш Студент Великий Новгород 26 6
Отв.8  07 Дек. 18, 11:27, через 43 мин
Phisik,
Глянул схему подключения.
Возник вопрос.Скетч использует переключения драйвера в полушаговый и прочие режимы?
По какому алгоритму происходит разгон двигателя?
Phisik Куратор Екатеринбург 209 610
Отв.9  07 Дек. 18, 11:58, через 32 мин
На A4988 драйвере  режим шага выбирается подачей напряжения на MS1-MS3 пины. Устанавливается микрошаг в прошивке, контроллер сам подтягивает куда надо пины на драйвере. Больше микрошагов - плавнее движение, меньше момент. Скорость двигателя определяется частотой импульсов, подаваемой на STEP пин драйвера. Собственно разгон и торможение - это плавное увеличение/уменьшение частоты со скоростью rpmRate/haltRate импульсов в секунду.
плохиш Студент Великий Новгород 26 6
Отв.10  07 Дек. 18, 16:31
Я имел ввиду переключения режимов щаг-полушаг-микрошаг в прошивке.
У mak-а в ветке только один режим используется,а пользователь уже сам может в драйвере джамперами подобрать лучший режим для своего мотора и откорректировать в скетче максимальную скорость.
Это к вопросу адаптации твоего варианта под существующее железо.
gol_avto Магистр Москва > Анапа > Куток 260 59
Отв.11  07 Дек. 18, 17:26, через 55 мин
Phisik Фьюзы в новой ардуине надо менять (по идее) и на какие?
На эти?
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05
Phisik Куратор Екатеринбург 209 610
Отв.12  07 Дек. 18, 18:08, через 42 мин
Фьюзы в новой ардуине надо менять?gol_avto, 07 Дек. 18, 17:26
Вероятно надо, я не пробовал никогда чистые чипы ставить. Вообще я порекомендовал бы почитать по этому поводу что-нибудь . Arduino IDE шьет по умолчанию такие:
\arduino-1.8.5\hardware\arduino\avr\boards.txt

##############################################################
## Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328P
pro.menu.cpu.16MHzatmega328.bootloader.low_fuses=0xFF
pro.menu.cpu.16MHzatmega328.bootloader.high_fuses=0xDA
pro.menu.cpu.16MHzatmega328.bootloader.extended_fuses=0xFD

##############################################################
uno.name=Arduino/Genuino Uno

uno.bootloader.low_fuses=0xFF
uno.bootloader.high_fuses=0xDE
uno.bootloader.extended_fuses=0xFD

##############################################################
## Arduino Nano w/ ATmega328P
nano.menu.cpu.atmega328.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328.bootloader.high_fuses=0xDA
nano.menu.cpu.atmega328.bootloader.extended_fuses=0xFD

переключения режимов щаг-полушаг-микрошаг в прошивкеплохиш, 07 Дек. 18, 18:31
#############################################################
## Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328P
pro.menu.cpu.8MHzatmega328.bootloader.low_fuses=0xFF
pro.menu.cpu.8MHzatmega328.bootloader.high_fuses=0xDA
pro.menu.cpu.8MHzatmega328.bootloader.extended_fuses=0xFD
переключения режимов щаг-полушаг-микрошаг в прошивкеплохиш, 07 Дек. 18, 18:31
const int8_t microStepping = 16;
Надо, чтобы совпадал с настройками драйвера, чтобы правильно RPM считал. И вот это тоже должно мотору соответствовать
const float degreePerStep = 1.8; // rather common value for widespread motors
плохиш Студент Великий Новгород 26 6
Отв.13  07 Дек. 18, 19:01, через 54 мин
Т.е.,если я правильно понял,  режим шаг-полушаг-микрошаг не меняется при работе .
Какой установили в прошивке,тот и используется постоянно.Так?
Phisik Куратор Екатеринбург 209 610
Отв.14  07 Дек. 18, 19:25, через 24 мин
Да, как прошили, так и работает. Я ставлю 16 или 8, если на 16 не тянет. Вроде бы менять его незачем.
Crossraccoon Студент Екатеринбург 27 7
Отв.15  10 Дек. 18, 13:52
а можно кому заказать печать насосика?
китайские и так, и так крутил - фигня получается
saniaxxx Магистр Кострома 242 27
Отв.16  10 Дек. 18, 14:08, через 16 мин
Вопрос где взять такую трубку, лучше сначала дождаться тестов шланга на 8
Phisik Куратор Екатеринбург 209 610
Отв.17  10 Дек. 18, 14:25, через 18 мин
Да вот вопрос, что делать с трубкой. Последнюю неделю экспериментировал со шлангом китайским на 8*0.85. Качает нормально, но шланг ужасен. Он в месте сгиба начинает через 100 литров разваливаться. Еще одна проблема с шагом на 8мм, оказалась в двигателе. Обычные Nema17 40N*cm, если тока добавить греются так, что PLA плывет. Видимо надо брать Nema23 и печатать головку под 9*1,5 шланг наш нормального качества. Пока не печатайте ничего, если шланга 7*0,75 нет.
VladPP Доктор наук Новосибирск 907 337
Отв.18  10 Дек. 18, 15:46
вопрос, что делать с трубкой.Phisik, 10 Дек. 18, 14:25
Я немного занимался изготовлением - громко сказано конечно, потуги сделать что то нормально работящее не удались, в том числе и напечатаные на принтере, зато активной эксплуатацией  таких насосов - почти каждый день, и мне кажется нужно уходить от статического прижима роликов к трубке, во первых очень точно нужно подгонять размеры, для того чтобы трубка служила дольше, и второе, мы не критично привязываемся к размеру трубки. Потом, ежли есть возможность, то нужно предусмотреть при заправки трубки в головку типа какой то откидушки, т.есть, отщелкнули, уложили трубку на ролики, защелкнули, бывает труба в процессе работы забивается, и при таком конструктиве как сейчас, не очень оперативно получится ее достать, потом  вставить на место. Насчет двигателя, опять же мое мнение, надо двигун брать с небольшим запасом мощности, потому как бывает, что насос трудится не час и не два, и качает не сахарную брагу, а некую сметанообразную субстанцию, греется это одно, а вот обеспечить самую маленькую подачу маломошный двигатель не сможет, а бывает иногда ситуации когда надо чтоб насос надежно работал с минимальной подачей. Понятно, что это сильно усложняет проект, но ведь для себя пытаемся сделать, как говорят сделал и забыл.
Phisik Куратор Екатеринбург 209 610
Отв.19  10 Дек. 18, 16:19, через 33 мин
мне кажется нужно уходить от статического прижима роликов к трубке
Это было бы замечательно, но пока я не придумал как это конструктивно сделать. Если кто поможет с проектирование, то будет здорово. Что касается крышки, то я как раз ее сделал, правда на винтах, но снять можно. Выглядит пока так:
P81210-181822.jpg
1024x899 78Кб
P81210-181836.jpg
1024x759 54Кб
v2.png
1024x614 37Кб