Если бы у нас было ютуб-шоу про проекты на ардуино, то я бы рассказал что с охлаждением решили, и как раз приехала главная понижайка взамен сгоревшей.
Смотрите как здорово!
Всё поставил, всё работает, циферки горят, рекомендую проект к повторению, схема по ссылке в конце ролика, все реферальные ссылки на компоненты в закрепленном комментарии. 🔥🔥🔥
К сожалению это не шоу) а дневник с дилетантскими изысканиями 🤓. Этим девайсом я планирую пользоваться.
Проблема с шумом так и не решилась. Кулер случайным образом включался.
Пробовал еще пару раз решить проблему программно в итоге спалил микруху подключив вентилятор на горячую. Это уже 2я из 3х имевшихся в наличии дигиспарков. Первый спалил переполюсовкой при первом записывании схемы.
Сижу теперь варварскими методами пытаюсь отделить отладку от макетки. ✌️тыдыщ
Смотрите как здорово!
Всё поставил, всё работает, циферки горят, рекомендую проект к повторению, схема по ссылке в конце ролика, все реферальные ссылки на компоненты в закрепленном комментарии. 🔥🔥🔥
К сожалению это не шоу) а дневник с дилетантскими изысканиями 🤓. Этим девайсом я планирую пользоваться.
Проблема с шумом так и не решилась. Кулер случайным образом включался.
Пробовал еще пару раз решить проблему программно в итоге спалил микруху подключив вентилятор на горячую. Это уже 2я из 3х имевшихся в наличии дигиспарков. Первый спалил переполюсовкой при первом записывании схемы.
Сижу теперь варварскими методами пытаюсь отделить отладку от макетки. ✌️тыдыщ
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Будем считать что я победил.
Результат вполне устраивает.
Результат вполне устраивает.
👍2
IOT / Esp32 / FreeRTOS / Arduino / stm32
Крупным планом: - Впаянный опорник (TO-92 называется такой корпус как у ds18b20) - удаленный компонент на бумажном скотче - драйвер - квадратная штука рядом с пинцетом Справа ещё подмигивает нам приляпанный большой светодиод на место маленького 0402 (на нем…
Надо бы запрограммировать плату на stm32. Она уже больше месяца лежит на столе и радостно моргает светодиодами.
Я даж немного посидел и пораскидывал там код на разные файлики чтобы было удобнее писать бизнес-логику.
Но блин, каждый раз после ковыряния с CubeIDE (которая основана на еклипсе) хочется руки помыть. Прям неприятно, не нравится, радостно скатываюсь в любую другую прокрастинацию 🤓
Нам нужна маленькая быстрая победа! какой-нибудь небольшой проект на esp32 в которой куча инструментов для программиста внутри ESP-IDF, CPP с библиотеками, фриртос с отличными компонентами от UncleRus.
Запилю пожалуй девайс для счётчиков воды (они у меня импульсные) чтобы не ползать в шкаф за показателями и видеть расход в онлайне.
Я даж немного посидел и пораскидывал там код на разные файлики чтобы было удобнее писать бизнес-логику.
Но блин, каждый раз после ковыряния с CubeIDE (которая основана на еклипсе) хочется руки помыть. Прям неприятно, не нравится, радостно скатываюсь в любую другую прокрастинацию 🤓
Нам нужна маленькая быстрая победа! какой-нибудь небольшой проект на esp32 в которой куча инструментов для программиста внутри ESP-IDF, CPP с библиотеками, фриртос с отличными компонентами от UncleRus.
Запилю пожалуй девайс для счётчиков воды (они у меня импульсные) чтобы не ползать в шкаф за показателями и видеть расход в онлайне.
Отчистил от деталей и припоя плату которую до этого использовал для управления вентилятором блока.
Есть одна проблема, которую часто замечаю у других) и которая также есть и у меня.
Я просто хотел посчитать такты от счётчика и передать их по mqtt в инфлюкс.
Но на микроконтроллере столько ног!
У меня ADS1115 лежит в прошлый раз так и не доиспользованная, гештальт надо закрыть. Это возможность измерять температуру с 16-битной точностью по 4 каналам! Это же так круто! можно узнать насколько горячая вода действительно горячая, а холодная действительно холодная.
А ещё у меня есть клапаны с управлением, которые уже 3 года после ремонта стоят не использованные управляющиеся по 9V. Ими наверно тоже стоит поуправлять, для этого нужны транзисторы, приём входящих комманд по mqtt и кнопки на девайсе для локлаьного управления.
Есть одна проблема, которую часто замечаю у других) и которая также есть и у меня.
Я просто хотел посчитать такты от счётчика и передать их по mqtt в инфлюкс.
Но на микроконтроллере столько ног!
У меня ADS1115 лежит в прошлый раз так и не доиспользованная, гештальт надо закрыть. Это возможность измерять температуру с 16-битной точностью по 4 каналам! Это же так круто! можно узнать насколько горячая вода действительно горячая, а холодная действительно холодная.
А ещё у меня есть клапаны с управлением, которые уже 3 года после ремонта стоят не использованные управляющиеся по 9V. Ими наверно тоже стоит поуправлять, для этого нужны транзисторы, приём входящих комманд по mqtt и кнопки на девайсе для локлаьного управления.
👍2
Сетап такой.
Для начала померяем сопротивление резисторов которые планирую использовать для делителей напряжения. Померяем двумя способами - мультиметром и штукой для определения деталей.
Запомнился мне один рассказ от чуваков которые хотели получить точные резисторы с отклонением от номинала допустим 1%. План был такой: взять упаковку резисторов классом меньше (отклонение 5%) и все их перебрать. Выбрать оттуда те которые удовлетворяют нужному классу.
Думаю вы догадываетесь что они получили в итоге) Все резисторы в коробке были с отклонением от номинала 2-5% потому что эту процедуру выполнили перед ними на заводе отобрав удачные резисторы в другой вид продукта.
Итак у нас получилось следующие цифры:
А3 9,97 10,29
А2 9,87 10,18
А1 9,83 10,15
А0 9,82 10,14
мультиметр / штука
Больше всего в китайских компонентах конечно смущает то что все выводы у них магнитятся, те. выполнены из железа 😱
Для начала померяем сопротивление резисторов которые планирую использовать для делителей напряжения. Померяем двумя способами - мультиметром и штукой для определения деталей.
Запомнился мне один рассказ от чуваков которые хотели получить точные резисторы с отклонением от номинала допустим 1%. План был такой: взять упаковку резисторов классом меньше (отклонение 5%) и все их перебрать. Выбрать оттуда те которые удовлетворяют нужному классу.
Думаю вы догадываетесь что они получили в итоге) Все резисторы в коробке были с отклонением от номинала 2-5% потому что эту процедуру выполнили перед ними на заводе отобрав удачные резисторы в другой вид продукта.
Итак у нас получилось следующие цифры:
А3 9,97 10,29
А2 9,87 10,18
А1 9,83 10,15
А0 9,82 10,14
мультиметр / штука
Больше всего в китайских компонентах конечно смущает то что все выводы у них магнитятся, те. выполнены из железа 😱
This media is not supported in your browser
VIEW IN TELEGRAM
Кран управляется так:
Синий на минус.
Закрыть:
- красный
Открыть:
- красный + жёлтый
3 аккумулятора еле-еле ворочают кран. А раньше вроде это можно было делать кроной :/
Синий на минус.
Закрыть:
- красный
Открыть:
- красный + жёлтый
3 аккумулятора еле-еле ворочают кран. А раньше вроде это можно было делать кроной :/
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Крутит очень мощно. Рукой не остановить
This media is not supported in your browser
VIEW IN TELEGRAM
Готово!
Теперь 3 банки лития легко закрывают оба крана одновременно.
Нужно было немного разработать, а в холодной воде убрать лишнюю шайбу и не так сильно затягивать болты внутри.
Кайфушки прям от того как подскакивает стрелочка с давлением при открытии крана 🤩
Теперь 3 банки лития легко закрывают оба крана одновременно.
Нужно было немного разработать, а в холодной воде убрать лишнюю шайбу и не так сильно затягивать болты внутри.
Кайфушки прям от того как подскакивает стрелочка с давлением при открытии крана 🤩
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
На пути к подсчёту импульсов от счётчиков воды я на прошлых выходных:
- сделал кнопочки управления автоматическими кранами
- починил один кран
- сделал esp32 плату с двумя кнопками, ads1115 + 4 термистора, разъем для счетчика.
На этих выходных:
- сделал начальный проект, со своим айдишником и связал его с mqtt шиной
- сделал работу с кнопочками: быстрое нажатие = ОТКЛ, длинное = ВКЛ и передача состояния по mqtt
- разобрался как работать с библиотекой для ads1115, научился правильно считать температуру.
Теперь вот сижу и калибрую NTC термисторы. В весёлой чашечке с квадратиками и звёздочками у меня вода со льдом и датчики.
Держать фокус на конечной цели похоже не мой конёк 🎯
- сделал кнопочки управления автоматическими кранами
- починил один кран
- сделал esp32 плату с двумя кнопками, ads1115 + 4 термистора, разъем для счетчика.
На этих выходных:
- сделал начальный проект, со своим айдишником и связал его с mqtt шиной
- сделал работу с кнопочками: быстрое нажатие = ОТКЛ, длинное = ВКЛ и передача состояния по mqtt
- разобрался как работать с библиотекой для ads1115, научился правильно считать температуру.
Теперь вот сижу и калибрую NTC термисторы. В весёлой чашечке с квадратиками и звёздочками у меня вода со льдом и датчики.
Держать фокус на конечной цели похоже не мой конёк 🎯
🔥3
Я конечно же понятия не имею как калибровать NTC термисторы.
В формуле вычисления температуры присутствует "коэффициент B" наверно он служит как раз для этих целей.
Выставил его лениво в какие-то значения у которых температура близка к нулю:
Можно и точнее выставить, но не думаю что это отражает реальность.
Сделал чтобы температура отправлялась в mqtt. Вывел графики в инфлюксе. Почему-то значения меньше единицы инфлюкс обозначает как
Сейчас уберу лёд из стаканчика и на графиках посмотрю как водичка постепенно теплеет до комнатной температуры.
В формуле вычисления температуры присутствует "коэффициент B" наверно он служит как раз для этих целей.
Выставил его лениво в какие-то значения у которых температура близка к нулю:
V / T / raw
V[0]: 2443.199 mV, T= 0.31°C | 19545
V[1]: 2447.450 mV, T= 0.19°C | 19579
V[2]: 2361.697 mV, T= 0.30°C | 18893
V[3]: 2352.572 mV, T= 0.21°C | 18820
Можно и точнее выставить, но не думаю что это отражает реальность.
Сделал чтобы температура отправлялась в mqtt. Вывел графики в инфлюксе. Почему-то значения меньше единицы инфлюкс обозначает как
XXXm
. Может так и задумано, а может что-то пошло не по плану.Сейчас уберу лёд из стаканчика и на графиках посмотрю как водичка постепенно теплеет до комнатной температуры.
👍2
Вода из чайника.
На диапазоне 0 - 100 разброс получается в пару градусов.
Для моих бытовых наблюдений за водопроводом - вполне достаточно. Точнее разбираться лень.
Скриншётов с сырыми значениями и знания формулы достаточно чтобы свести 4 графика 1в1. Запомним это, для каких-нибудь будущих задач этим можно будет заняться.
ЗЫ: отредактировал сообещение - сначала разброс был в 5 градусов, но потом оно "устоялось" и разброс стал меньше.
На диапазоне 0 - 100 разброс получается в пару градусов.
Для моих бытовых наблюдений за водопроводом - вполне достаточно. Точнее разбираться лень.
Скриншётов с сырыми значениями и знания формулы достаточно чтобы свести 4 графика 1в1. Запомним это, для каких-нибудь будущих задач этим можно будет заняться.
ЗЫ: отредактировал сообещение - сначала разброс был в 5 градусов, но потом оно "устоялось" и разброс стал меньше.
🔥2👍1
Кстати я нифига не вдупляю в низкоуровневость Си, поэтому радостно ковыряюсь с esp32 у которой куча памяти и не нужно заботиться о всякой оптимизации.
Основная задача девайса - считать тики холодной и горячей воды. Как будем делать? Создадим 2 дополнительные таски! потому что внутри тасок код кажется изолированным друг от друга, его просто поддерживать и переносить из проекта в проект.
Вот на картинке как раз весь мой код в файле main:
- запускаем 2 новые таски
- делаем колбек для mqtt для реагирования на входящие команды, чтобы отправлять значения сразу в таску используя её хендл.
Как сравнивать 2 строчки в Си? а хрен его знает! Это последнее о чём хочется думать. Благо в стандартной библиотеке С++ (надеюсь не путаюсь в терминологии) есть объект
Ну и прекрасно! используем строки везде где нужно сравнение.
Основная задача девайса - считать тики холодной и горячей воды. Как будем делать? Создадим 2 дополнительные таски! потому что внутри тасок код кажется изолированным друг от друга, его просто поддерживать и переносить из проекта в проект.
Вот на картинке как раз весь мой код в файле main:
- запускаем 2 новые таски
- делаем колбек для mqtt для реагирования на входящие команды, чтобы отправлять значения сразу в таску используя её хендл.
Как сравнивать 2 строчки в Си? а хрен его знает! Это последнее о чём хочется думать. Благо в стандартной библиотеке С++ (надеюсь не путаюсь в терминологии) есть объект
string
у которого есть метод compare
. Ну и прекрасно! используем строки везде где нужно сравнение.
👍3🔥2