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

Open

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

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

diy stepper doser reef-pi reefpi

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

#141 yury88

yury88

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

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

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

 

Конкретно по поводу второго проекта - а  где электронная схема аналоговой части рН измерителя? По поводу использования ADS1115 - они сейчас есть постоянно в наличии? Я помню, что после ковида большинство АЦП (да и не только они, и процессоры, и даже приличные операционники с высоким входным сопротивлением) показывались с лид-таймом около года, а то и более... Я тогда начал было разрабатывать какие-то схемы в Eagle, даже печатки получил для измерителя проводимости (ориентировался на подключение к ReefPi), и большинство нужных компонентов где-то валяется, но потом все опять заглохло, купил GHL, за отсутствием времени, после чего и в нем сильно разочаровался...

У меня сегодня выходной, я буду сегодня как раз рисофать схему и делать custom pcb для заказа.

Сложные вещи как PH я просто готовым модулем буду устанавливать на плату что бы не паять 100 деталей. Тут я больше думаю о изоляции питания измерительной схемы от всего. У меня так сейчас сделано для PH, всё прекрасно работает и на грошовых модулях.
ADS1115 сейчас навалом, их делают несколько фабрик в том числе в Китае)
 



#142 vahegan

vahegan

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

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

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

У меня сегодня выходной, я буду сегодня как раз рисофать схему и делать custom pcb для заказа.

Сложные вещи как PH я просто готовым модулем буду устанавливать на плату что бы не паять 100 деталей. Тут я больше думаю о изоляции питания измерительной схемы от всего. У меня так сейчас сделано для PH, всё прекрасно работает и на грошовых модулях.
ADS1115 сейчас навалом, их делают несколько фабрик в том числе в Китае)

Да, гальваническая изоляция архиважна. У меня на схеме, если обратил внимание, стоит ISO1540 для этой развязки по питанию. В качестве АЦП я тогда выбрал AD7793 - не помню уже по какой причине я именно на ней остановился, но ADS1115 тоже рассматривал тогда. Возможно, хотел больше бит иметь в запасе, проводимость чуть сложнее измерять. Но, увы, все осталось на уровне пакетика с набором компонентов и пачки с кастомными платками...



#143 yury88

yury88

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

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

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

Да, гальваническая изоляция архиважна. У меня на схеме, если обратил внимание, стоит ISO1540 для этой развязки по питанию. В качестве АЦП я тогда выбрал AD7793 - не помню уже по какой причине я именно на ней остановился, но ADS1115 тоже рассматривал тогда. Возможно, хотел больше бит иметь в запасе, проводимость чуть сложнее измерять. Но, увы, все осталось на уровне пакетика с набором компонентов и пачки с кастомными платками...

Ну вот ISO1540+ ADS1115 и будет стоять. у меня уже все детали лежат.
Не то что бы это "лучшие" компоненты. Лучшее как известно- враг хорошего, всё должно быть доступно для заказа отовсюду.

 

Эта плата по сути будет PH контроллером(силовые ключи на нагрузку тоже будут), а уж какую версию прошивки заливать- со встроенным дозером(для помпы КР или мешалки кальквассера) или просто PH/температура -это на выбор.
Я по сути хочу разработать систему модулей, полностью самостоятельных, но с возможностью интергации с Home Assistant.


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

#144 vahegan

vahegan

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

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

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

Вот, нашел свои платки для прототипа. Обидно, что валяются мертвым грузом...

IMG_1783.jpg



#145 yury88

yury88

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

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

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

Вот, нашел свои платки для прототипа. Обидно, что валяются мертвым грузом...

Я тоже таким страдаю. Сейчас я использую новую стратегию для всего что связано с пайкой- все проекты делаю нахрапом от и до.
Пока не доделаю- ничего нового даже не начинаю)



#146 vahegan

vahegan

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

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

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

Ну вот ISO1540+ ADS1115 и будет стоять. у меня уже все детали лежат.
Не то что бы это "лучшие" компоненты. Лучшее как известно- враг хорошего, всё должно быть доступно для заказа отовсюду.

Ты не показал схему аналоговой части. Для измерителя рН важно использовать операционник с максимально низким током смещения. Я хотел LMP7721, там 3 фемтоампера, в даташите его как раз рекомендуют для применения в качестве первичного усилителя для рН элетродов. Из более доступных подойдет LMC6061 (10 фемтоампер), но для него напряжение питания должно быть от 4.5В и выше, тогда как LMP7721 работает уже от 1.8В (однополярное питание). При использовании обычных операционников с токами смещения в диапазоне пикоампер или даже наноампер второй знак после запятой в значении рН начинает плавать



#147 yury88

yury88

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

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

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

Ты не показал схему аналоговой части.

Так я и не собираюсь изобретать PH усилитель. Мне некогда изобретать велосипед)
Какой поставишь-такой и будет. Для своих плат я собираюсь сделать посадочное место под самый дешевый модуль PH-4502C, Dfrobot
https://www.e-tinker...h-sensor-board/

#148 vahegan

vahegan

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

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

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

Так я и не собираюсь изобретать PH усилитель. Мне некогда изобретать велосипед)
Какой поставишь-такой и будет. Для своих плат я собираюсь сделать посадочное место под самый дешевый модуль PH-4502C, Dfrobot
https://www.e-tinker...h-sensor-board/

Конечно, делать плату-кондиционер, имеющую на борту опторазвязку и АЦП, это здравая идея, даже можно сделать универсальную плату на несколько каналов, а какой будет источник для аналогового сигнала, это уже дело отдельное. Но не уверен, что pH платки от DFRobot достаточно хороши. Посмотрел, они используют tlc4502, не худший операционник для этого применения? но и далеко не лучший. КМК, если уж паять платки, то надо использовать лучшее решение. Я чертил в свое время универсальный усилитель для pH/ORP (режим работы выбирается джампером, у этих электродов разные диапазоны напряжений). А вот для измерения проводимости/солености нужна другая схема, при том, не припомню, чтобы кто-то делал подобные платки для нашего диапазона. Хотя, конечно, для сборки и наладки аналоговых платок с SMD компонентами требуются навыки, которые будут у гораздо меньшего числа пользователей проекта. Тут уже точно нужен кто-то, кто разработает, соберет, и будет предлагать по разумной цене.



#149 yury88

yury88

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

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

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

Конечно, делать плату-кондиционер, имеющую на борту опторазвязку и АЦП, это здравая идея, даже можно сделать универсальную плату на несколько каналов, а какой будет источник для аналогового сигнала, это уже дело отдельное. Но не уверен, что pH платки от DFRobot достаточно хороши. Посмотрел, они используют tlc4502, не худший операционник для этого применения? но и далеко не лучший. КМК, если уж паять платки, то надо использовать лучшее решение. Я чертил в свое время универсальный усилитель для pH/ORP (режим работы выбирается джампером, у этих электродов разные диапазоны напряжений). А вот для измерения проводимости/солености нужна другая схема, при том, не припомню, чтобы кто-то делал подобные платки для нашего диапазона. Хотя, конечно, для сборки и наладки аналоговых платок с SMD компонентами требуются навыки, которые будут у гораздо меньшего числа пользователей проекта. Тут уже точно нужен кто-то, кто разработает, соберет, и будет предлагать по разумной цене.

Меня лично вполне устраивает как работает даже плата 4502C за 6$ для аквариумных нужд.

Её нужно просто хорошо отмыть, проверить что пайка везде норм.
С гальванической развязкой и норм питанием он вполне +-0.03 PH тянет.

 

У большинства самодельщиков в из Reef-pi стоит этот DFRobot модуль даже без развязки и им норм.
Не вижу смысла сильно заморачиваться, если есть желание-можно подключить любой модуль. На Ali вон есть модули по 100$ по сравнению к которым GHL- поделка подвальная.

А по поводу паять свою плату- это надо во первых её разработать и протестить, а потом её никто повторять не будет потому что на ней будет 100500 мелких компонентов)

Тянет на отдельный проект что никому не нужен.



#150 yury88

yury88

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

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

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

Я тут наткнулся на фичу ESP-NOW что позволяет всем ESP друг другу данные перекидывать даже без wifi.
С низкой задержкой и т.д. И фича судя по документации и примерам очень хорошо реализована.

В таком случае проще PH модуль сразу отделить в отдельный проект и сделать просто поддержку ESP-NOW везде.
Соответственно все девайсы будут из коробки иметь показания всех датчиков.
А уж за пользователем будет выбор как эти датчики будут влиять на дозер.

Меня вот другой вопрос беспокоит - температурная компенсация.
Я пока не видел ни одной статьи которая объясняет как сделать температурную компенсация если юзер тыкает щупом в реагенты разной температуры.
К примеру при калибровке:
1)реагент PH 9.18@25C при температуре 20C имеет PH 9.23
Screenshot 2024-05-10 145130.png
2)Реагент 6.86@25C при температуре 20С имеет 6.88C
Screenshot 2024-05-10 145124.png

И вопросы из разряда- а как вообще калибровать электрод и детать температурную коррекцию если калибровка проводилась при 20C, а в акве 28C?
Тут сразу три технические проблемы:
- реагенты могут быть разной температуры(тут самый ад и я даже не представляю как это решать)
- реагенты могут быть температуры отличной от 25C и пользователю нужно вводить скоректированные значения по таблице.
- разница между температурой при которой проводилась калибровка и температурой в акве может быть значительной

Я могу представить как сделать точную калибровку и температурную компенсацию только если калибровка во всех реагентах будет проводиться при одинаковой температуре.
В идеале, что бы не усложнять интерфейс, просить юзера проводить калибровку при 25C.
Стаканы с реагентом в кастрюлю с водой и льдом/кипятком довести до 25C и дать стабилизироваться
Тогда можно будет составить автоматически корректировать значения PH по температуре автоматически

Те код что гуляет в интернете использует "Nernst equation". Это по сути "теоретическая" компенсация которая не обязательно будет совпадать характеристиками конкретного электрода. В добавок для неё нужно точно калибровать при 25C, вносить значения точки равновесия.
Ух, наверное я сильно мозги себе парю, сомневаюсь что будет хоть один юзер что захочет для каждого реагента делать два замера при разной температуре по типу 20C и 30C
  • vahegan это нравится

#151 vahegan

vahegan

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

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

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

Я тут наткнулся на фичу ESP-NOW что позволяет всем ESP друг другу данные перекидывать даже без wifi.
С низкой задержкой и т.д. И фича судя по документации и примерам очень хорошо реализована.

В таком случае проще PH модуль сразу отделить в отдельный проект и сделать просто поддержку ESP-NOW везде.
Соответственно все девайсы будут из коробки иметь показания всех датчиков.
А уж за пользователем будет выбор как эти датчики будут влиять на дозер.

 

О! Это очень здорово. Можно все устройства сделать со своими контроллерами (благо, у ESP32 стоимость копеечная), тогда система будет более надежной, и неисправность одного из устройств больше ни на что влиять не будет.

 

Меня вот другой вопрос беспокоит - температурная компенсация.
Я пока не видел ни одной статьи которая объясняет как сделать температурную компенсация если юзер тыкает щупом в реагенты разной температуры.
К примеру при калибровке:
1)реагент PH 9.18@25C при температуре 20C имеет PH 9.23
attachicon.gifScreenshot 2024-05-10 145130.png
2)Реагент 6.86@25C при температуре 20С имеет 6.88C
attachicon.gifScreenshot 2024-05-10 145124.png

И вопросы из разряда- а как вообще калибровать электрод и детать температурную коррекцию если калибровка проводилась при 20C, а в акве 28C?
Тут сразу три технические проблемы:
- реагенты могут быть разной температуры(тут самый ад и я даже не представляю как это решать)
- реагенты могут быть температуры отличной от 25C и пользователю нужно вводить скоректированные значения по таблице.
- разница между температурой при которой проводилась калибровка и температурой в акве может быть значительной

Я могу представить как сделать точную калибровку и температурную компенсацию только если калибровка во всех реагентах будет проводиться при одинаковой температуре.
В идеале, что бы не усложнять интерфейс, просить юзера проводить калибровку при 25C.
Стаканы с реагентом в кастрюлю с водой и льдом/кипятком довести до 25C и дать стабилизироваться
Тогда можно будет составить автоматически корректировать значения PH по температуре автоматически

Те код что гуляет в интернете использует "Nernst equation". Это по сути "теоретическая" компенсация которая не обязательно будет совпадать характеристиками конкретного электрода. В добавок для неё нужно точно калибровать при 25C, вносить значения точки равновесия.
Ух, наверное я сильно мозги себе парю, сомневаюсь что будет хоть один юзер что захочет для каждого реагента делать два замера при разной температуре по типу 20C и 30C


Если нужна точная калибровка, то

  • Нужно, чтобы у рН элетрода был свой термодатчик - желательно совмещенный в одном корпусе, либо механически к нему прикрепленный. В устройстве, которое я разрабаотывал, я собирался использовать PT100
  • При калибровке, надо иметь термостабилизированную емкость, в которую помещается электрод с термодатчиком, и туда наиливается калибровочная жидкость

 

При калибровке лучше подогреть жидкость до заданной температуры (определяемой по показаниям датчика) и потом калибровать элетрод для этой температуры. Альтернативно, можно просто снимать показание датчика, считать это температурой калибровочной жидкости, и калиброва элетрод по табличным значениям для этой температуры.

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

 

Если хочется совсем босяцкую, но более-менее точную калибровку, то с GHL я поступаю так: ставлю в настройках, чтобы использовались показания его родного датчика температуры. Пробирку с калибровочной жидкостью ставлю плавать в аквариуме, и жду минут 15, пока установится такая же температура, как в аквариуме, и потом калибрую. Поскольку объем воды в аквариуме в десятки тысяч раз больше, чем количество калибровочной жидкости в пробирке, температура в процессе калибровки будет намного меньше плавать, соответственно и результат бует точнее.



#152 yury88

yury88

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

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

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

Прошивка 0.9.x по-моему без проблем работает.
У меня сейчас на ней работают две независивые помпы- на 3 головы дозируют трейсы:
Screenshot 2024-05-12 010202.png Screenshot 2024-05-12 010157.png Screenshot 2024-05-12 010138.png

 

И встроенная в мешалку кальквассера с PH на борту дозируют кальквассер до лимита 8.35PH.

Судя по моим графикам PH всё пашет стабильно

 

Тем временем я заказал платы под PH контроллер, с возможностью подрубить помпы если захочется 2в1

Screenshot 2024-05-12 005352.png Screenshot 2024-05-12 005419.png Screenshot 2024-05-12 005431.png

 

+ Упрощённые платы чисто под мешалку кальквассера без PH, со встроенным автодоливом и сенсорами для него:
Screenshot 2024-05-12 010426.png Screenshot 2024-05-12 010421.png


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

#153 Igor "Boroda"

Igor "Boroda"

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

  • Пользователи
  • PipPipPip
  • Cообщений: 388
  • Меня зовут:Игорь

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

Переходные отверстия без маски :)



#154 yury88

yury88

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

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

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

Апдейт wiki:
1)установка прошивки
https://github.com/t...2-Using-esptool

2)Настройка драйверов MKS Servo42C
https://github.com/t...2C-Driver-Setup
  • vahegan это нравится

#155 yury88

yury88

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

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

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

Гайд -Настройка MQTT сенсоров в Home Assistant

Screenshot 2024-05-16 134705.png


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

#156 yury88

yury88

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

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

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

Гайд по добавлению UI для контроля помп в Home Assistand

 

Screenshot 2024-05-16 202332.png Screenshot 2024-05-16 202317.png


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

#157 yury88

yury88

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

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

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

Release v0.9.6 - MQTT Stop command

MQTT topic:
/ReefRhythm/<unique_id>/stop

JSON данные в теле:
{"id":1}

Где id номер помпы 1-9

 


#158 vahegan

vahegan

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

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

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

Юра, ты крут! :)



#159 yury88

yury88

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

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

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

Юра, ты крут! :)

Спасибо)
Вообще это невероятно редко бывает когда разраб сам пользуются своим продуктом, даже когда ему за это доплачивают, но не в случае этого проекта ;)
Я тут погружаюсь в Home Assistant и MQTT, потому пытаюсь сделать всё удобно. Вообще конечно порог входа выше, но ChatGPT вполне помогает.
Но вот как разберешься к этим reef-pi и GHL c "захардкожено всё" даже возвращаться не хочется.

 

/////////////////

Release v0.9.7 - MQTT команда пополнения контейнера:

 

/ReefRhythm/<уникальный id>/refill

data in JSON:

{"id":1}

  • Где id- номер помпы 1-9

 

Wiki тоже обновлёна

Screenshot 2024-05-17 134748.png

 



#160 yury88

yury88

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

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

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

Релиз v1.0:

- Поддержка дней недели в расписании

- Хелпер в расписании(отображает запланированный график дозирования списком)

 

Screenshot 2024-05-22 101051.png Screenshot 2024-05-22 101101.png


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





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

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

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

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