Перейти к содержимому

Open

Фотография
* * * * * 3 Голосов

ReefRhythm - Продвинутый контроллер шаговых моторов

diy stepper doser reef-pi reefpi

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 190

#101 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 048
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 30 Апрель 2024 - 22:29

Это очень просто проверить. Подруби питание к драйверу и в меню выбери "calibrate".
Оно покрутит помпу и будет видно работает или нет. Это в любом случае нужно сделать.
Только там же в меню выстави ток 1.4А(это не 12V*1.4A, а примерно 1.4A*3V т. к это ток обмоток), у тебя мотор не маленький.


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

Подрубил питание, поставил ток 1400мА (по умолчанию стояло 1200), врубил калибровку, а он мотор не крутит, только все время на небольшой угол вперед-назад дает. Видимо, как раз, обратную связь не может получить от магнитного датчика. У тебя магнит на каком уровне от задней крышки помпы? Вровень? Или выступает?

У меня есть еще магнит от второго комплекта, думаю, если его поверх первого накинуть, может уже будет ловить, тем более, по идее, магнитные поля от двух магнитиков должны суммироваться...



#102 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 01 Май 2024 - 00:34

Подрубил питание, поставил ток 1400мА (по умолчанию стояло 1200), врубил калибровку, а он мотор не крутит, только все время на небольшой угол вперед-назад дает. Видимо, как раз, обратную связь не может получить от магнитного датчика. У тебя магнит на каком уровне от задней крышки помпы? Вровень? Или выступает?
У меня есть еще магнит от второго комплекта, думаю, если его поверх первого накинуть, может уже будет ловить, тем более, по идее, магнитные поля от двух магнитиков должны суммироваться...

Не, крутитить будет в любом случае даже без магнита, тут просто обмотки мотора идут не в том порядке.
Смотри в разъёме драйвера пары обмоток будут одна за другой.
Прозвони и найди пары и поменяй контакты местами, они легко вынимаются если поддеть острым предметом

Прикрепленные изображения

  • A+ A-.png
  • B+ B-.png

  • vahegan это нравится

#103 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 048
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 01 Май 2024 - 15:38

Не, крутитить будет в любом случае даже без магнита, тут просто обмотки мотора идут не в том порядке.
Смотри в разъёме драйвера пары обмоток будут одна за другой.
Прозвони и найди пары и поменяй контакты местами, они легко вынимаются если поддеть острым предметом

Да, прозвонил, поменял местами два средних провода (синий и черный крест накрест), теперь при калибровке он крутит мотор сначала в одну сторону, потом через некоторое время в другую, после чего пишет на экране 0.0 градусов, 0.00err, 0clk. Я так понимаю, это значит, что калибровка прошла успешно, и датчик холла тоже работает?

Тогда, мне осталось доразобраться с прошивкой/настройкой ESP32, и потом подключить его к мотору.



#104 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 01 Май 2024 - 18:08

пишет на экране 0.0 градусов, 0.00err, 0clk. Я так понимаю, это значит, что калибровка прошла успешно, и датчик холла тоже работает?
Тогда, мне осталось доразобраться с прошивкой/настройкой ESP32, и потом подключить его к мотору.

Именно так, значит калибровка прошла и датчик пашет, если рукой ротор сдвинешь будет показывать градусы ошибки;)

#105 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 02 Май 2024 - 10:27

Куём железо пока горячо. 8)
Релиз v8.3 - поддержка пользовательских расширений(я попозже покажу пример проекта) и Лимитов для помпы

 

https://github.com/t...ases/tag/latest

 

Тут немного сложно будет объяснить тем кто не знаком с программированием, если по простому- контроллер теперь понимает программируемую логику которая будет контролировать дозировать или нет реагенты. Можно считать что это очень гибкая "защита" от всяких катастроф.

 

Теперь в UI можно задать "проверку" которая помпа будет делать перед тем как выполнять дозирование.

Как одно из возможных применений- можно выполнять проверку глобальных переменных что уже есть в контроллере.

 

Screenshot 2024-05-02 151645.png

 

Простой пример- подключаем к одному из разрешённых(5, 6, 7, 15, 16, 17, 18, 8, 3)) ADC пинов ESP32 внешний контроллер что будет подавать сигнал.

К примеру тот же случай с 0-10V подключенный к Pin 5 контроллера.

 

Все эти выводы контроллер автоматически опрашивает каждую секунду и складывает в словарь adc_dict

К примеру если на выводе Pin5 подать 3.3V, то adc_dict[5] = 4095(adc в micropython 12-битный)

 

Теперь можно добавить проверку помпе 1(для примера) что бы она проверяла перед тем как дозировать что то состояние этой переменной что бы она была больше 1000(примерно 0.8V)

Соответвенно если на Pin5 будет меньше 0.8V - дозирование выполняться НЕ будет.

 

Это можно использовать к примеру что бы выключать помпу по каким-либо триггерам. К примеру по 8.3 PH сигналу от GHL.

Screenshot 2024-05-02 152830.png

 

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

Подробную инструкцию как это использовать с примерами я сделаю на выходных.


  • CryX, Diplo и Danchik это нравится

#106 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 02 Май 2024 - 11:05

Сам себя не похвалишь -никто не похвалит. :ah:
Я собой так доволен что не передать.
Теперь помпа поддерживает простую программируемую логику из коробки и безлимитно гибкую логику через закидывание python скрипта на диск контроллера, причём проверять новую логику можно на компе.
Нигде такого нет :biggrin:

А на самом деле я всё это сделал из-за того что хочется на базе этого контроллера делать всякие умные железки типа мешалки кальквассера с датчиками.
Или автоматического тестера параметров воды.
В итоге пишешь только нехватающую функцию, а "базу" используешь готовую. Даже сборки можно своих прошивок делать из коробки т. к на гитхабе есть бесплатные виртуалки для сборок.

Кстати для тех кому хочется контроллировать помпы со внешнего контроллнра "по времени" эта фича даже удобнее чем управлять сигналом 0-10V т. к тут нет никаких шума сигнала и дозирование будет всегда стабильно. Плюс можно использовать просто цифровой сигнал вкл/выкл
  • Boston это нравится

#107 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 02 Май 2024 - 16:35

Пример использования фичи с "Расширениями"

https://www.reef2ree...6/post-12462419

И сам проект на github:

https://github.com/t...thm-Lime-a-thon

 

В данном случае я добавил в дозер функционал PH котроллера в UI и в серверную часть.  Мне это нужно для умной мешалки кальквассера.
И далее используя фичу "Limits" я смогу выставить контроллеру проверку что бы отключал дозирование если PH станет слишком высоким.

 

И эти мини проекты с расширениями автоматически получают все фичи из основного проекта, автоматические сборки кастомных прошивок для OTA обновлений в том числе!



#108 donius

donius

    Новичок

  • Пользователи
  • Pip
  • Cообщений: 16
  • Откуда:Челябинск

Отправлено 04 Май 2024 - 04:56

Здравствуйте. Всë собрал на помпе kamoer kcm, калибровку на драйвере проходит, управление выставил по uart, скорости uart пробовал менять и токи мотора тоже. Калибровку с esp не хочет крутить. В чëм может быть дело? Куда копать?

#109 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Май 2024 - 05:11

Здравствуйте. Всë собрал на помпе kamoer kcm, калибровку на драйвере проходит, управление выставил по uart, скорости uart пробовал менять и токи мотора тоже. Калибровку с esp не хочет крутить. В чëм может быть дело? Куда копать?

крутить. В чëм может быть дело? Куда копать?

Привет, пришли фото на всякий случай проводков.
Tx контроллера к Rx драйвера
RX контроллера к Tx драйвера
GND-GND, только если разные изолированные БП

 

Настройки драйвера:
Mode CR_UART
Uart 38400
UartAddr 0xe0(для одной помпы)
После смены настроек драйвера надо перезагрузить-выкл и вкл питание

 

Кроме этого ничего шаманить не нужно- настраивается автоматически.



#110 donius

donius

    Новичок

  • Пользователи
  • Pip
  • Cообщений: 16
  • Откуда:Челябинск

Отправлено 04 Май 2024 - 05:24

Полез проверять Rx TX и начал причину, оторвал провод. Переобжал и теперь всë норм. Спасибо.

#111 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Май 2024 - 05:30

По калибровке нижних значений 0.58RPM(оборот/мин) - рекомендую использовать микровесы.
Ставишь 0.58RPM и Duration 1200(20мин) литься в какой-нибудь небольшой стаканчик.
Потом стакан на микровесах взвешиваешь, выливаешь, протираешь насухо и ещё раз взвешиваешь. Разница в весе/20 будет искомый flow ml/min

По-моему только так реально откалибровать такие малые значения когда льётся 0.1-0.2мл(гр в случае воды)/мин

Да и вообще с весами удобнее калибровать чем с объёмами.
Мои головки имеют почти линейную зависимость, но они 6-ти роликовые. 3-х роликовые могут иметь не линейную, контроллер это переварит в том числе.


  • vahegan это нравится

#112 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Май 2024 - 06:07

Ну и не забываем писать отзывы, можно не стесняясь - вот "это прям кривое не понятное, лучше бы сделать так..."
Я не совсем разраб, а QA, так что критику перенощу прекрасно ;)
Сейчас стадия активной разработки, потому всё сделано наспех. Но вот-вот основной функционал будет завершён и я уже буду обновлять то что есть что бы оно было удобнее и понятнее.


  • Danchik и Konstant1n это нравится

#113 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Май 2024 - 07:58

В фиче лимитов есть баги. Временно её откатил.
Просьба обновиться на v0.8.4

Т. к появляются реальные юзеры(на reef2reef тоже уже кто-то дособирают дозеры на этих выходных), цикл будет теперь:
master - стабильная ветка
develop - ветка с новыми фичами.

develop будет гоняться на автотестах и на моём личном аквариуме 1-2+ недели и только потом сливаться в master
Следующий апдейт мастера соответственно уже будет с публикацией MQTT статистики на брокере.

Контроллер поддерживает Dual Boot, у него для этого два загрузочных раздела с номером 0 и 1.
ota_partition.png

 

Новая прошивка всегда грузится на второй, не основной раздел.
Если загрузка будет не успешная- контроллер автоматом откатится и загрузится с основного раздела.

Таким образом окирпичить девайс маловероятно.

После обновления грузится новая прошибка, но финальное решение оставлять ли новую прошивку за пользователем.
Если перезагрузить контроллер по питания- загрузится старая прошивка.

Инструкция по OTA обновлениям:
1)В разделе ota upgrade жмём start upgrade

 

ota_progress.png

2)Появится статус бар загрузки прошивки, операции с дозированием прекратятся на время.

Выйти из состояния можно только перезагрузкой, сломать это ничего не может.
Сейчас статус бар показывает только прогресс загрузки после которого ещё минуты 3 контроллер прошивает файл на диск.

 

3)Через минут 10 перезагружаем web страницу - заходим опять в OTA Upgrade

Видим что ota partition сменился 0->1 или 1->0 и версия прошивки тоже.
Походили по вкладкам- если норм то просто в этом разделе жмём "Cancel Rollback" - после этого контроллер будет всегда грузится с новой прошивкой
Если что не нравится- перезагружаем контроллер по питанию что бы загрузить старую прошивку.

 

ota_cancell_rollback.png



#114 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 048
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 04 Май 2024 - 09:06

Силён! Юра, тебе уже пора производство открывать, скоро все чаще и чаще будут спрашивать о возможности покупки готового продукта. Следующим этапом появятся самодельщики, которые будут этим заниматься, если автор не хочет. Как для РифПи - есть мужик, который платки делает и корпуса на 3D-принтере. А здесь, я уверен, будет продолжение проекта, ты уже озвучивал тот же измеритель КН, ну и стандартные измерители рН, ОРП и солености напрашиваются, как и датчики потока, и прочая.


  • Boston это нравится

#115 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Май 2024 - 09:09

Силён! Юра, тебе уже пора производство открывать, скоро все чаще и чаще будут спрашивать о возможности покупки готового продукта. Следующим этапом появятся самодельщики, которые будут этим заниматься, если автор не хочет. Как для РифПи - есть мужик, который платки делает и корпуса на 3D-принтере. А здесь, я уверен, будет продолжение проекта, ты уже озвучивал тот же измеритель КН, ну и стандартные измерители рН, ОРП и солености напрашиваются, как и датчики потока, и прочая.

Может быть, но не сейчас- после переезда в EU будет проще с логистикой.
А вообще проект мне денег принесёт и без продажи дозеров- я тут помимо развлечений расширяю свои навыки что в перспективе скажется и на моей ЗП;)


  • vahegan и Boston это нравится

#116 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 048
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 04 Май 2024 - 09:53

По калибровке нижних значений 0.58RPM(оборот/мин) - рекомендую использовать микровесы.
Ставишь 0.58RPM и Duration 1200(20мин) литься в какой-нибудь небольшой стаканчик.
Потом стакан на микровесах взвешиваешь, выливаешь, протираешь насухо и ещё раз взвешиваешь. Разница в весе/20 будет искомый flow ml/min

По-моему только так реально откалибровать такие малые значения когда льётся 0.1-0.2мл(гр в случае воды)/мин

Да и вообще с весами удобнее калибровать чем с объёмами.
Мои головки имеют почти линейную зависимость, но они 6-ти роликовые. 3-х роликовые могут иметь не линейную, контроллер это переварит в том числе.

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

Для окончательной точной подгонки по объему, наверное, можно использовать мерную колбу, скажем, на 500мл. Потому что, скажем, у миллиграммовых весов, верхний предел измерения 20г, а у весов на 500г точность измеения будет около одного грамма. Но, скажем, предварительно откалибровав дозатор миллиграммовыми весами по навеске 10г, можно поставить его на длительное дозирование в мерную колбу, и уже точно подогнать калибровку по метке. Не уверен, правда, нужна ли такая точность для обычного дозатора для аквариума. Другое дело, если речь идет о титрующей помпе в измерителе КН - тут желательно иметь максимальную точность.



#117 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 048
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 04 Май 2024 - 10:00

Может быть, но не сейчас- после переезда в EU будет проще с логистикой.

Ну, не обязательно все собственноручно делать. Можно договориться с какими-нибудь китайцами, чтобы собирали и отправляли. Или хотя бы, набирали "DIY kit", в котором уже есть все нужное, и пользователь сделал окончательную сборку на уровне отвертки и инструкций "поткни красную пимпочку в синюю дырочку". При этом начальную прошивку лучше уже иметь в контроллере, далеко не все люди технари, которые могут поставить у себя питон и разбираться с непонятными командами.
 

А вообще проект мне денег принесёт и без продажи дозеров- я тут помимо развлечений расширяю свои навыки что в перспективе скажется и на моей ЗП ;)

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


  • Konstant1n это нравится

#118 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Май 2024 - 10:10

Ну, не обязательно все собственноручно делать. Можно договориться с какими-нибудь китайцами, чтобы собирали и отправляли. Или хотя бы, набирали "DIY kit", в котором уже есть все нужное, и пользователь сделал окончательную сборку на уровне отвертки и инструкций "поткни красную пимпочку в синюю дырочку". При этом начальную прошивку лучше уже иметь в контроллере, далеко не все люди технари, которые могут поставить у себя питон и разбираться с непонятными командами.
 

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

Тут даже всё серьёзней, вот у меня тут у больше части народа даже компьютеров нет, ни в каком виде...
Сматфон и всё ^^



#119 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 560
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 06 Май 2024 - 20:31

Релиз v0.9 Develop.
https://github.com/t...0240506-f69a7fa


Это не "master", если есть желание потестить -для OTA обновления нужно в линк прописать путь
https://github.com/t...micropython.bin


Новые фичи UI:
- Имена для помп
- Поддержка светлой/тёмной темы
- Много цветовых тем на выбор

 

Screenshot 2024-05-06 221549.png Screenshot 2024-05-06 221558.png

Screenshot 2024-05-06 221608.png Screenshot 2024-05-06 221617.png

 

Новые фичи дозера:
- Кнопка остановки помпы
- Програмная инверсия помпы
- Трекер расхода реагентов
- Публикация всех прошедших дозирований на MQTT брокере
- Программируемая логика для дозера

Screenshot 2024-05-06 221706.png Screenshot 2024-05-06 221722.png

Screenshot 2024-05-07 012356.png

 

После обкатки на моей акве пару недель и исправления найденных дефектов будет залито в стабильную ветку

Но ветка норм, ничего особо не ломал, можно пользоваться.


  • Danchik это нравится

#120 donius

donius

    Новичок

  • Пользователи
  • Pip
  • Cообщений: 16
  • Откуда:Челябинск

Отправлено 07 Май 2024 - 16:41

Не пойму в чём дело, не крутит помпу через analog control? Источник сигнала 100%, помпа on, применяю и тишина(поток для 100% прописан). При этом некоторое время не работает веб морда. Через расписание всё работает.





Темы с аналогичными тегами: diy, stepper, doser, reef-pi, reefpi

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Ветка управляется: