Тема: Электронный ареометр iSpindel
Хочу поделиться своим опытом сборки и использование электронного ареометра для браги, сусла, пива iSpindel.
Сразу хочу сказать что высокой точности от него ожидать не стоит, этот прибор больше полезен не для измерений плотности, а для индикации изменения плотности, например видно когда началось брожение, как интенсивно идет, окончание брожения. Так же он измеряет и температуру сусла. Ссылка на проект гитхаб:
https://github.com/universam1/iSpindel
Архив можно взять тут: Утянуть с зеркала
Принцип основан на гироскопе, измеряющий угол поплавка, потом этот угол преобразуется в плато или SG (после калибровки).
Передача данных идет по WI-FI, у него есть свои сервисы в интернете, но я ими не пользовался, а подключался к другому устройству под названием BREWPILESS, он же строит графики и записывает логи.
Корпус поплавка из преформы пластиковой бутылки брал вот такие (Преформа для пэт бутылок 40х40х140):
Можно большего размера, меньше нет.
Из электроники:
Аккумулятор 18650-1шт.
Модуль зарядки TP4056-1шт.
DS18B20-1шт.
ESP8266-1шт. (ESP8266 D1 Mini V2 micro USB модуль на основе NodeMcu Lua ESP-12 (CH340)
GY521-1шт. (Гироскоп + акселерометр GY-521 Arduino MPU-6050)
Резистор 470 Ом
Резистор 230 кОм
Резистор 4.7 кОм
Любая удобная микрокнопка для включения, в первой своей конструкции обошелся просто штырьковым мама-папа разъёмом.
Схема выглядит так:
Все собирается навесным монтажом, на картинке указано как припаять гироскоп к модулю:
D4 -> SCL GY-521
D3 -> SDA GY-521
5V -> VCC
GND -> GND
Модуль с пропаянным гироскопом позиционируется в колбе USB разъёмом вверх к крышке.
Электроника и аккумулятор крепиться на печатную пластину, модель позже скину именно к этим преформам по ссылке. Но в первых своих конструкциях, я без заморочек тупо вырезал по внутренней колбе кусок твердого картона, и хомутами прикрепил всю электронику. Все работало.
Модуль TP4056 пока не припаивается к ESP
Прошивка: https://github.com/universam1/iSpindel/releases
Скачивается Frimware.bin и прошивается ESP любым удобным способом.
Если все прошилось нормально, необходимо нажать на кнопку ресет ESP быстро 2 раза, светодиод должен начать мигать раз в секунду.
Появится вайфай точка ispindel. Должно быть припаяны гироскоп и датчик температуры, иначе точка доступа не появится.
Подключаемся к точке, в браузере вводим адрес 192.168.4.1, заходим в меню CONFIGURATION.
Откроется такая форма:
Тут я использую свой локальный портал BREWPILESS, на него и опишу параметры. Если использовать другие интернет серверы, смотрите на гитхабе, я не пользовался ими, не подскажу.
SSID-имя вайфай точки( у меня brewpiless)
Passwor-соответственно пароль точки
iSpinel name- iSpindel000 (обязательно так и соблюдая заглавные буквы)
Update interval- интервал передачи данных, обычно ставлю в работе 3600с (1 час), за это время все равно плотность сильно не изменится. Но для калибровки нужно пока поставить 1 с.
Battery conversion factor-калибровка напряжения батареи, не трогаем.
Unit of temperature-Celsius
Service Type-HTTP
Token/API key-не трогаем
Server Address-192.168.4.1
Server Port-80
Patch/URI- /gravity
В окно Polynominal потом запишем данные после калибровки.
В самом низу жмём SAVE.
Дальше необходимо удалить диод на ESP рядом с USB разъемом:
Припаиваем TP4056, аккумулятор. С гироскопа желательно удалить светодиод, для экономии аккумулятора. В общем на данном этапе должно быть все собрано и помещено в колбу. Пример картинки:
Калибровки.
Дальше опять жмём reset 2 раза для перехода в режим конфигурации, подключаемся к сети, заходим на 192.168.4.1 и нажимаем меню iSpinel info откроется окно с параметрами:
Нас интересует TILT-угол. Закрываем крышку и помещаем колбу в чистую воду температурой 25 градусов или близко к ней. В идеале угол должен показать 25 градусов. Но естественно не попадешь точно. Для корректировки вытаскивается все из колбы и со стороны аккумулятора приклеиваются удобные грузики. Я использовал гайки. И добиваемся угла в чистой воде 25 градусов +- 5.
Далее берем ареометр или рефрактометр. Наливаем воды в подходящую емкость, насыпаем сахара для получения 18-20 P, и создаем табличку 1 графа P, вторая графа угол что показывает шпиндель. Дальше разбавляем воду до 15Р, 12Р, 10... Чем больше записей, чем точнее калибровка, особенно на нижнем диапазоне.
С этими записями идем сюда:
https://www.ispindel.de/tools/calibrati … ration.htm
Gravity unit-выбираем Plato
Выбираем рефрактометр или ареометр использовался.
Вводим значение плато, в TILT значение угла и add data.
Так повторяем со всеми значениями, построится график и внизу Degree3-нужный нам полином, сохраняем его куда ни будь, в формате:
-2894.66665468456 + 107.36666622451777 *tilt-1.3133333279357589 *tilt*tilt + 0.005333333311531284
Дальше идем в конфигурацию шпинделя и в самую нижнюю строчку полинома вставляем эту формулу, выставляем желаемый интервал передачи данных и жмем сейв.
Шпиндель перезапустится и будет каждый интервал просыпаться, измерять угол и температуру, угол преобразовывать в плато и отсылать.
Чуть попозже опишу локальный сервис BREWPILESS.