WEGA-Mixer - это устройство для автоматизированного изготовления двухкомпонентных комплексных удобрений в жидком виде путем точного смешивания их составляющих.
WEGA-Mixer автономное самостоятельное устройство на базе ESP8266
с управлением через веб интерфейс со встроенными весами и группой насосов (помп).
Целью данного миксера, является автоматизированное изготовление порций удобрений с индивидуальной рецептурой рассчитаных на изготовление необходимого количества (объема) рабочего раствора. Разовая порция удобрений от нескольких капель, на 1 и менее литра, до 1 кг, чего достаточого для приготовления 100-200 литров.
WEGA-Mixer является отличным/важным дополнением к WEGA-HPG калькулятору из которого можно дозировать(печатать) раствор на прямую.
Так же WEGA-Mixer является важным звеном в WEGA ecosystem
- Минимальные требования и знания
- Что потребуется купить(ардуино, драйвера, АЦП ...)
- Законченные варианты миксеров
- Скачать проект WEGA-Mixer
- Подключение по схеме компонентов для миксера
- Установка Visual Studio Code (vscode) и прошивка
- Калибровка весов/стола
- Важно
- Где искать помощь
Для того, чтобы собрать этот миксер необходимо:
- Минимальные знания в электронике (знать что такое
+
илиGND
) - Умение читать схему, да-да, именно читать, а не разглядывать и смотреть
- Знание, что такое паяльник и как с ним работать
- Понимание как соединить три проводка в одной точке
- Умение собирать компоненты по схеме
- Знать и уметь, как прошивать ардуину и вообще знать, что это такое
- Минимальные знания в программировании. Мы попытались минимизировать необходимость ковыряние в коде, но все же придется изменять некоторые значения, о которых речь пойдет ниже
Если, всего выше перечисленного или одного из выше перечисленного не знаешь, не умеешь, не понимаешь, найди человека, который соберет этот миксер за тебя.
Предположим, что у вас есть желание собрать миксер, и вы обладаете, минимальными требованиями и знаниями для того, что бы все это собрать, спаять, залить и настроить. Отлично. Значит уже самое время закупить все необходимые компоненты.
Ниже я приведу список, того, что покупалось лично мной и из чего собрал миксер лично я. Вы вправе подобрать аналоги, которые могут отличаться, а может быть и нет, в связи с этим нет никаких гарантий, что у вас будет все работать.
Для данного миксера потребуются:
- Насосы перистальтические на 12 вольт. Такие или такие как минимум 6, но лучше 8шт. Диаметр шлангов лучше всего 2Х4мм
- Модули L293D управления насосами (по одному на 2 насоса с реверсом) 3 или 4 соответственно
- 16 канальный MCP23017 расширитель GPIO
- ESP8266
- LCD Экран I2C 1602 с модулем на i2c
- АЦП датчика веса HX711 с дополнительным экранированием (это важно именно такой)
- Тензодатчик на 1 кг
Здесь можно посмотреть варианты корпусов для миксера и законченные работы.
В целом каждый делает то, что работает и подходит именно для него. Для кого-то основной момент это минимализм и стремление сделать его как можно меньше, для кого-то это максимальная вместимость монорастворов. Каждый выбирает сам, что важно и подходит для него.
Скачать проект можно несколькими путями, самый просто это скачать архив текущего репозитория или со страницы релизов. Последний стабильный релиз можно найти здесь.
Важно!!! Релизы ниже v2.2.0
предназначены для сборки прошивки под Arduino IDE
и не работают с vscode
и platformio
.
Нажимаем на Source code(zip)
выбранного релиза, скачиваем. Распаковываем архив в удобное место на диске.
Важно, что бы в путях до проекта не было пробелов и русских названий.
Например так будет работать D:\WEGA-Mixer-2.1.5
Так не будет работать D:\Вега проект\WEGA-Mixer-2.1.5
Здесь можно видеть текущую схему подключения.
Здесь находится диаграмма.
-
Для питания миксера необходим блок питания на 12 вольт и минимум 1А.
-
Питание экрана и других компонентов происходит от первого, верхнего по схеме, драйвера, на который в данном случае и подключается/подается 12 вольт. Никакого дополнительного питания больше не требуется.
-
USB провод нельзя использовать для питания схемы, это всего лишь консольный кабель, который используется только для прошивки ESP
Скачать и установить vscode
Если у вас Windows OS
, то скорее всего потребуется установить драйвера, которые можно скачать здесь
В большинстве случаев подходят CP210x Universal Windows Driver
Запускаем vscode
идем в extensions
и устанавливаем platformio
.
Открываем папку с проектом.
Копируем файл src/config.h.rename
вставляем в ту же папку и переименовываем новый файл в config.h
.
Открываем config.h
.
- Обновляем
ssid
- имя вашей сети - Обновляем
password
- пароль для вашего WiFi
const char* ssid = "YOUR_WIFI_NETWORK_NAME";
const char* password = "YOUR_WIFI_PASSWORD";
- Обновляем имена насосов, если это требуется. Если вы собирали точно по схеме, то скорее всего ничего обновлять не нужно.
- Пример имен насосов в коде
// Port 1
:
// Pump #1
#define pump1 A0 // Port 1
#define pump1r B0 // Port 2
#define pump1n "1:Ca" // Display name
#define pump1p 4000 // Preload (ms)
- Сохраняем код
- Нажимаем
build
, что бы проверить что прошивка собирается
Особенность Windows
Если vscode на windows 10 не видит и не может сам подключить библиотеки из проекта в main.cpp онлайн, можно воспользоваться советом с форумов и сделать следующее:
1. Не закрывая текущий проект - открыть новое окно (File-New Window)
2. Снова открыть папку проекта (File-Open Folder...) и выбрать повторно main.cpp. Проблема должна исчезнуть и можно старое окно закрыть
Если все хорошо, то в терминале будет что-то подобное.
Если в терминале видим SUCCESS
то подключаем ESP8266
через консольный кабель.
Нажимаем кнопку Upload
и заливаем проект на ESP8266
В большинстве случаев platformio
найдет подключеное устроиство через консольный кабель автоматически, если этого не произошло то добавляем строчку в самом низу в файле platformio.ini
Для Widows OS
систем
upload_port = COM[13]
- после прошивки ESP
по консольному кабелю строчку необходимо удалить.
Для Linux
и MacOS
систем
upload_port = /dev/ttyUSB*
- после прошивки ESP
по консольному кабелю строчку необходимо удалить.
Больше про настройки upload_port
можно прочитать здесь
При условии, что сборка компонентов была выполнена правильно, то как только прошивка будет загружена на плату и произойдет перезагрузка, на экране должна появится надпись Ready
.
В дальнейшем, если будет желание или необходимость перепрошивки ESP
это можно будет сделать через Wi-Fi.
Для этого нужно будет раскоментировать строчку в platformio.ini
и указать свой IP
адрес миксера, адрес можно видеть каждый раз на экране миксера при включении.
Мы постарались, минимизировать ручной труд и время потраченное для калибровки весов.
Что потребуется:
- Весы с точностью 0.01
- Что-то, что имеет постоянный вес в районе 500г(стакан, гиря, и так далее)
- Листок бумаги и карандаш
- Взвешиваем ваш вес и записываем это значение, для большей точности, можно взвесить раз 5 и найти средний вес. Допустим этот вес получился 500г
Для того, что бы выполнить полу-автоматическую калибровку необходимо запустить миксер и зайти по IP
адресу на страницу миксера, о том, как найти IP
адрес, уже было описано ранее в разделе Прошивка по Wi-Fi(через WiFi).
Открываем веб страницу миксера и нажимаем Calibrate scales
Для калибровки точки А потребуется сделать следующие действия:
- Копируем значение из поля
Current RAW
и вставляем в полеRAW on Zero
и нажимаемSubmit
- Ставим на весы, наш заранее подготовленный вес на точку А(точка/поле, где будет стоять стакан для раствора А) и нажимаем
Submit
- Копируем значение из поля
Current RAW
и вставляем в полеRAW value with load
, заполняем полеValue with load (gramm)
значением, которое получи при взвешивании нашего веса на весах(как мы уже договорились этот вес 500г) и нажимаемSubmit
- После нажатия кнопки
Submit
мы получим коэфициентscale_calibration
, который нужно записать в файлsrc/config.h
в полеscale_calibration_A
Теперь, все то же самое проделываем для точки B
Как только вы получили значение scale_calibration
записываем его в файл src/config.h
в поле scale_calibration_B
, сохраняем файл и заливаем прошивку
- Нужно взять точно известный вес в районе 500 грамм
- Отметить две точки на которых будут стоять бутылки(стаканы) А и B
- Перезагрузить систему с пустым столом.
- Поставить на точку А известный вес и подбирать значение
scale_calibration_A
Если вес ниже эталлонного то значение scale_calibration_A
уменьшаем
Например:
- scale_calibration_A = 2045
- эталлоный вес 470.90
- ставим его на весы(стол) и если значение ниже эталонного
- вес на столе 470.50
- scale_calibration_A уменьшаем
- scale_calibration_A = 2040.35
- прошиваем
- повторяем процедуру
- ставим эталлоный вес на весы(стол) и если значение ниже эталонного
- вес на столе 470.64
- scale_calibration_A уменьшаем
- scale_calibration_A = 2040.25
Записываем полученное значение на листок бумаги или запоминаем, что-то вроде scale_calibration_A = 2040.25
Теперь проделываем ту же саму процедуру для точки Б.
- Ставим известный вес на точку Б
- scale_calibration_A = 2045
- эталлоный вес 470.90
- ставим его на весы(стол) и если значение ниже эталонного
- вес на столе 470.50
- scale_calibration_A уменьшаем
- scale_calibration_A = 2040.35
- прошиваем
- повторяем процедуру
Записываем полученное значение на листок бумаги или запоминаем, что-то вроде scale_calibration_B = 2043.65
Т.е. теперь мы получили коэффициент для точки Б
Теперь открываем файл src/config.h
и изменяем значения на полученные.
// scale_calibration, side A and B
float scale_calibration_A = 2040.35;
float scale_calibration_B = 2043.65;
Теперь стол откалиброван.
Заливаем прошивку с обновленныйми параметрами.
Варианты как залить прошивку описаны здесь: Прошивка по Wi-Fi или через консоль
Есть несколько ньюансов, которые необходио учитывать.
- Если вы планируете часто делать(печатать) растворы на объем до 10 литров, то стоит изменить концентрацию ваших монорастворов таким образом, что бы значения в поле гр.жидкости были больше 1.5 грамм. Это позволит делать растворы гораздо быстрее. Почему так? потому что в логике миксера заложенно по капельное дозирование, если вес желаемой дозы удобрений меньше 1.5 грамм.
Если у вас все еще есть вопросы по настройке, заливке и гонфигурированни этого дозера/миксера, то их всегда можно задать в официальном телеграмм канале WEGA-Mixer
!!! ВАЖНО !!!
Ответы на вопросы, а что такое плюс или GND, а как быть с проводами и так далее в телеграмм канале дававться не будут.