Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Поднимайтесь как можно выше по дереву, собирайте цветы и дарите их близким.
Вас ждут уникальные награды и 22 выгодных промокода!

Пикаджамп

Аркады, Казуальные, На ловкость

Играть

Топ прошлой недели

  • ExtremeGrower ExtremeGrower 6 постов
  • POMBOP POMBOP 9 постов
  • Lio2142 Lio2142 1 пост
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
105
AlexZealot
1 год назад
Рукодельники

Кто празднику рад, тот накануне пьян, или как я "умную" гирлянду делал⁠⁠

Всем привет

Как известно, к Новому году всегда надо готовиться заранее. Вот и мне подумалось, что надо расчехлять паяльник и начинать делать праздничную иллюминацию в квартире. На данный момент готовы два устройства из трёх, для последней гирлянды едут адресные светодиоды. Но идея обкатана и показала себя вполне рабочей.

Этап первый. Теоретический.

Любое мало-мальски инженерное устройство должно начинаться с
1) Составления ТЗ
2) Подбора железа
3) Подбора ПО
Второй третий пункт взаимосвязаны, что логично.

Итак, техническое задание.

У меня работали две гирлянды, собранные на WS2812b под управлением маленькой платки Arduino Nano (родом из Китая) с микроконтроллером ATmega328p. Как это водится в Китае - маркировка чипа была почти нечитаемой, прошивка заливалась раза с третьего-четвёртого. Но система работала, и даже не тормозила.

Гирлянд было две: одна висела на ёлке и состояла из 126 последовательно соединённых светодиода, оконная гирлянда состояла из 74 светодиодов и представляла собой 9 линий светодиодов переменной длины, соединённых последовательно.

В старой гирлянде было крайне неудобно включать/выключать подсветку и переключать режимы. Это же необходимо встать с дивана, подойти к устройству, нажать кнопку. Соответственно, в новой системе необходимо реализовать управление через мобильный телефон. Так же, стоит учесть, что в моём доме ёлка стоит около окна, и будет видно сразу две гирлянды. Соответственно, стоит предусмотреть возможность обмена данными между этими гирляндами для возможности синхронизации режимов. Причём, синхронизация должна быть не "приколоченной намертво", а вполне себе опциональной.

Подбор железа

Исходя из ТЗ становится очевидно, что достаточно просто поменять контроллер с старой-доброй атмеги на что-то из семейства ESP. Эта система на кристалле (да, именно так её называет производитель, SoC) из коробки имеет на борту достаточно шустрое ядро, WiFi и приличный объём памяти. Но, имеет место быть небольшой конфликт: рабочее напряжение пинов ESP 3.3В. А напряжение питания WS2812b составляет от 3.5 до 5.3В, исходя из даташита. Причём, "протокол" передачи данных для светодиодов подразумевает формирование прямоугольных испульсов, кодирующих 24 бита цвета для каждого светодиода. Уровень "0" в этой последовательности должен быть <0.3VDD (напряжение питания), уровень "1" >0.7VDD.

Я покопался в своих закромах и обнаружил две платы Wemos D1 mini (на базе ESP8266) и одну плату LOLIN S2 mini (на базе ESP32-S2). Обе платы имеют всю необходимую обвязку для подключения внешнего питания 5В и подтягивающие резисторы для запуска МК. Там же, в закромах родины нашёл весьма удобные макетные платы под форм-фактор этих устройств.

Макетная плата для Wemos D1. К LOLIN S2 mini тоже подходит, но маркировака пинов не совпадёт

Макетная плата для Wemos D1. К LOLIN S2 mini тоже подходит, но маркировака пинов не совпадёт

Это снимает проблему согласования напряжения питания ESP и WS2812b. Но возникает опасение, что уровень логической "1" от контроллера будет недостаточным для формирования управляющего сигнала. Ведь, согласно даташиту, уровень "1" >0.7VDD. А питание светодиодов у нас 5В, соответственно, требуемый уровень логической единицы равен 0,7 * 5 = 3,5В. Тут я пошёл по пути экспериментов, быстренько набросал схемку на бредборде и проверил, а как оно, заведётся, или нет. Ведь, исходя из моего опыта общения с контроллерами семейства STM32, уровня 3.3В должно быть вполне достаточно. И оно завелось!

Подбор ПО

Очевидно, что прошивка будет самописная. Надеяться, что вот сейчас я зайду в гугл, забью "прошивка ESP8266 с моими требованиями" и все найдётся и заработает достаточно наивно. Да и неспортивно это. В случае с ESP есть два основных фреймворка для написания прошивки. Профессиональный ESP-IDF с его ориентированностью на чистый С и Arduino IDE с ядром ESP. Причём второе - это, по сути своей, обёртка вокруг ESP-IDF. Так как у меня была хоть и ущёрбная, но рабочая прошивка для Arduino Nano, написанная в Arduino IDE, я остановился на втором варианте.

Этап второй. Практическая реализация в железе.

Схема в общем виде выглядит так:

Ничего сложного и интересного. Единственное, для одной из систем одна из кнопок была заменена на устройство bme280, работающее по протоколу I2C. Интересно отслеживать влажность в помещении и уровень давления. Показания температуры врут безбожно: датчик находится слишком близко к ESP, которая имеет привычку сильно нагреваться. Спаять устройство по этой схеме не представляет ничего сложного. Но ведь хочется сделать всё красиво. А значит нужен корпус для устройства и система крепления гирлянды. С корпусом всё довольно просто. Минут 30 в Компас3D, час работы 3D принтера и в руках корпус, подогнанный под конкретное спаянное устройство. Магия термоклея, и на выходе получается вполне себе симпатичный прибор:

Безусловным плюсом будет возможность заменить плату в случае необходимости

Безусловным плюсом будет возможность заменить плату в случае необходимости

С системой крепления всё чуточку интереснее. Если на ёлку крепить гирлянду не требуется (просто берём и обматываем гирлянду вокруг дерева), то на окно требуется крепёж. Тут возможно реализовать два варианта: установить гирлянду непосредственно перед окном, но за шторой. Тогда праздничное настроение будет создано людям, гуляющим на улице и смотрящим на мой седьмой этаж. Либо размещать гирлянду перед шторой. Тогда праздничное настроение будет у всех, находящихся в комнате. Я пошёл по второму пути. Штора крепится на гардину с Т-образными пазами. И вновь на помощь приходит компас и 3D-принтер. В каждой точке, из которой спускается светодиодная гирлянда была изготовлена вот такая сборка из двух деталей:

Бонусом, такая конструкция хорошо фиксирует сборки проводов, и конструкция получается довольно добротной. Следующей "железной" проблемой стало то, что провод со светодиодами достаточно лёгкий, и гирлянда отказывалась висеть вертикально. И вновь 3D принтер спасает положение. Я напечатал несколько тематических грузиков, и привязал их на тоненькие верёвочки. Получилось весьма достойно:

Этап третий. Программное обеспечение aka прошивка

А вот прошивку не скину в чистом виде. Только если кто-то хочет повторить - могу ему слить данное поделие. Ибо в коде есть ряд проблем, которые пока не решены.

Принцип работы системы прост до ужаса. Намертво зашиты константы с SSID/PASS моей локальной WiFi сети и IP адреса всех гирлянд, участвующих во взаимодействии. Arduino IDE хорош, в первую очередь, невероятным количеством библиотек. Итак, что есть сейчас, и для чего используется.

  1. Разумеется, WiFi, для подключения к локальной сети. SSID и пароль забиты в дефайны, что есть хардкод, и вообще моветон

  2. FastLED для управления WS2812b. Реализован простейший алгоритм отслеживания потребляемого гирляндой тока и ограничение оного к возможностям источника питания. Работает, на мой взгляд, лучше встроенного в библиотеку.

  3. WebServer для поднятия странички управления гирляндой, если сильно лень подходить и нажимать кнопку. Я не сильно дизайнер, но страничка получилась довольно простой и информативной.

  4. UDP для общения между гирляндами. Да, я знаю, что есть ненулевой шанс потери данных, поэтому пришлось реализовать достаточно простой алгоритм проверки корректности пришедших данных. Битые пакеты отбрасываются. Вроде бы это не очень хорошо, но я тут не космический корабль запускаю, и не ядерным реактором управляю. Если синхронизация произойдёт на 100мс позже, то ничего страшного. Хардкод в данном случае - IP-адреса гирлянд, участвующих в обмене информацией, жестко прописанные в роутере.

  5. ArduinoOTA. Лень каждый раз подключать ESP напрямую к компу, когда хочется что-то поменять в прошивке. А так всё выходит просто: обновились по воздуху, и радуемся.

Web-страничка для управления гирляндой

Web-страничка для управления гирляндой

В качестве гирлянды-мастера выбрана ёлочная. На её страничке можно поставить галочку с требованиями синхронизации остальных гирлянд, и её режим будет транслироваться всем остальным.

Примеры гирлянды, которую мне лень снимать сейчас :)

Примеры гирлянды, которую мне лень снимать сейчас :)

Примеры гирлянды, которую мне лень снимать сейчас :)

Примеры гирлянды, которую мне лень снимать сейчас :)

Примеры гирлянды, которую мне лень снимать сейчас :)

Примеры гирлянды, которую мне лень снимать сейчас :)

В сухом остатке получилось несколько устройств, на которые не стыдно посмотреть, которые не стыдно показать и которые работают и радуют глаз. Возможно, когда разберусь с текущими проектами - вернусь к доработке гирлянд. Избавиться от хардкода, что не очень сложно и чуть улучшить синхронизацию (заставить гирлянду-мастера передавать не только свой текущий режим, но и конкретный тик из millis() для более эффектного внешнего вида) и всё, пожалуй. Сделать полноценное Android-приложение, управляющее гирляндами. Возможно, имеет смысл сделать отдельный сервер на полновесной ESP32, который собирал бы данные с гирлянд, и синхронизировал их при необходимости. Но это уже вопрос полноценного самописного умного дома, т.к. к такому серверу можно подключить любое устройство на базе ESP. Для работы с MQTT так же есть полноценные библиотеки. В общем, проект получился достаточно простым, но интересным с точки зрения возможности масштабирования.

На этом всё, спасибо, что дочитали. Ссылок на телегу не будет, это всё от лукавого :)

Показать полностью 9
[моё] Своими руками Esp8266 Esp32 Arduino Умный дом Самоделки Электроника Длиннопост Рукоделие с процессом
26
174
liman324
1 год назад
TECHNO BROTHER
Серия Arduino

ESP32 + PCM5102A — интернет радио (2) (Arduino)⁠⁠

Ранее в статье http://rcl-radio.ru/?p=111051 рассматривался пример создания интернет-радио на основе ESP32 (ESP32 DevKit v1 Wi-Fi Bluetooth ESP32-WROOM-32) и звукового ЦАП PMC5102A с использованием дисплея LCD1602 + I2C, в этой статье аналогичный пример, но с использованием дисплея 0.96′ I2C 128X64 OLED.

В Интернет радио использованы следующие компоненты:

  • ESP32 DevKit v1 Wi-Fi Bluetooth ESP32-WROOM-32

  • DAC PCM5102A

  • 0.96′ I2C 128X64 OLED

  • Энкодер KY-040 (модуль)

  • Тактовая кнопка  — 2 шт

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

Управление OLED дисплеем в данном примере осуществляется при помощи шины I2C.

Параметры дисплея SSD1306:

  • Технология дисплея: OLED

  • Разрешение дисплея: 128 на 64 точки

  • Диагональ дисплея: 0,96 дюйма

  • Угол обзора: 160°

  • Напряжение питания: 2.8 В ~ 5.5 В

  • Мощность: 0,08 Вт

  • Габариты: 27.3 мм х 27.8 мм х 3.7 мм

ESP32

ESP32 — серия недорогих микроконтроллеров с низким энергопотреблением. Представляют собой систему на кристалле с интегрированным Wi-Fi и Bluetooth контроллерами и антеннами. В серии ESP32 используется микроконтроллерное ядро Tensilica Xtensa LX6 в вариантах с двумя и одним ядром. В систему интегрирован радиочастотный тракт: симметрирующий трансформатор, встроенные антенные коммутаторы, радиочастотные компоненты, малошумящий усилитель, усилитель мощности, фильтры и модули управления питанием. ESP32 создан и разработан компанией Espressif Systems, китайской компанией, расположенной в Шанхае, а производится компанией TSMC по техпроцессу 40 нм. Серия является преемником микроконтроллеров ESP8266.

Характеристики ESP32 DevKit v1:

  • микроконтроллер: ESP32-WROOM-32

  • процессор: 2-ядерный Xtensa Dual-Core 32-bit LX6

  • тактовая частота процессора: 80, 160 или 240 МГц

  • оперативная память: 520 Кбайт;

  • флэш-память: 448 Кбайт;

  • преобразователь USB – UART

  • количество выводов платы: 30;

  • Bluetooth: спецификации 4.2 с функциями  BR/EDR и Low Energy

  • WiFi: стандарта IEEE 802.11b/g/n/e/i безопасность WFA, WPA/WPA2 и WAPI на частоте 2,4 ГГц со скоростью до 150 Мбит/с, встроенный стек TCP/IP

  • антенна: PCB

  • режимы беспроводной связи: STA/AP/STA+AP

  • расстояние приема/передачи в идеальных условиях: 400 м;

  • периферия: АЦП 12 бит до 18 каналов, ЦАП 8 бит 2 канала, датчик температуры, 4x SPI, 2x I2S, 2x I2C, 3x UART, Ethernet контроллер, CAN 2.0, ведущий SD/eMMC/SDIO, ведомый SDIO/SPI, инфракрасный приемопередатчик, ШИМ до 16 каналов, датчик Холла, аналоговый предусилитель, шифровальщики, хешеры, генератор случайных чисел

  • поддерживаемые среды разработки: Arduino IDE, PlatformIO, Espressif IDF (IoT Development Framework), Micropython, JavaScript, LUA

PCM5102A

  • Напряжение однополярное … 3,3 В

  • Отношение сигнал/шум … 112 дБ

  • Динамический диапазон … 112 дБ

  • Уровень нелинейных искажений (THD+N) … -93 дБ

  • Выходное напряжение … 2.1 Vrms

  • Поддерживаемая частота дискретизации от 8 кГц до 384 кГц

  • Поддержка входных форматов данных … I2S, Left-Justified / 16, 24 и 32 бит

Схема Интернет радио

  1. Название станции (бегущая строка)

  2. Номер станции и скорость потока

  3. Настройки радио:

    • Громкость (0…22 уровень)

    • Баланс (±16 дБ)

    • Bass (-40…+16 дБ)

    • Middle (-40…+16 дБ)

    • Treble (-40…+16 дБ)

Интернет радио не содержит WEB страницы, все параметры и url адреса станций необходимо заносить в скетч:

авторизация в сети

String ssid =  "Keenetic-9009";  // ssid сети WI-FI  

String password = "32481975";  // пароль от сети WI-FI

список станций

"https://rusradio.hostingradio.ru/rusradio96.aacp",

"https://str.pcradio.ru/funradio_sk_80s90s-hi",

"http://radio.promodj.com:8000/186mph-192",

"http://live.novoeradio.by:8000/narodnoe-radio-128k",

"http://listen1.myradio24.com:9000/3355",

кол-во станций

#define CH  5  // кол-во станций

Управление Интернет радио осуществляется при помощи энкодера и двух кнопок. Кнопки позволяют переключать каналы станций, а энкодер регулировать параметры громкости, баланса и тембра. Кнопка энкодера осуществляет переход по пунктам меню.

Как добавить ESP32 в среду Ardiuno IDE можно узнать на странице http://rcl-radio.ru/?p=92558

Версия платы должна быть не ниже 1.0.5

Плата ESP32 Dev Module

Скетч - http://rcl-radio.ru/?p=120767

Показать полностью 7
Arduino Электроника Программирование Самоделки Длиннопост Esp32
29
13
ardublock
ardublock
2 года назад
ArduBlock

Первый летающий самолёт на основе платы ESP 32 Реальный тест и врезался в оператора - 1 видео оператор!⁠⁠

Показать полностью 1
[моё] YouTube Ardublock Видео ВК Arduino Русская озвучка Самолет Esp32 Видео Вертикальное видео
4
52
KakaiMalai
2 года назад
Умный дом
Серия Как я пилю умный дом

Как я пилю умный дом ч.2⁠⁠

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

Основными вопросами был:

Какая задача стояла изначально? Сформирую несколько проблем, которые хотелось решить:

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

  2. Так же на участке есть несколько емкостей с водой, и бывали случаи, когда забывали выключить насос и вода начинала вытекать.

  3. В межсезонье на даче холодно и приезжать в холодный дом, включать обогреватели и ждать около часа, пока все прогреется не хотелось.

  4. Как наверное в любом СНТ, бывают случаи отключения электричества и если отключение долгое, то нужно что-то решать с холодильником, увозить продукты. Хотелось сделать уведомления в виде смс или телеграмм сообщений.

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

Почему не использовал Home assistant? (ПО для связывания умных устройств и управления ими)
На самом деле, таких систем великое множество и выбирать есть из чего. У всех есть плюсы и минусы и самым распространенным наверное является Home assistant. Была идея использовать его в качестве основной системы, но на руках был только Raspberry pi zero W. который я купил в 2021 году за 700р. и которому как раз нашлось применение.

У него на борту всего 512 МБ оперативной памяти. И что-то тяжелое он однозначно не потянет. В комментариях писали, что устройств с 1 гб ОЗУ для всего хватает, но почитав тематические форумы понял, что нужно минимум 2 гб, даже если не применять большое количество плагинов.
И напомню, что я еще в процессе работ и не сделал даже половины из намеченного. Возможно в будущем обзаведусь каким-нибудь мини-сервером, желание есть.

Так же были комментарии, что готовые решения вышли бы дешевле. Возможно это так, но у готовых решений ограничен функционал и удовлетворить все хотелки врятли бы вышло.

Теперь обо всем по порядку

Остановились мы на том, что объединили устройства в одну сеть и подключили к MQTT брокеру. Теперь начнем с управления с телефона. Для этого подойдет любое приложение, которое может получать и отправлять MQTT сообщения. У всех них есть плюсы и минусы, можно выбрать любое, которое понравится фукционалом и визуально. Я остановился на IoT MQTT Panel.
После настройки в нем подключения к брокеру, необходимо добавить нужные вам кнопки, графики, индикаторы состояния и т.д.

Первым делом я добавил одно реле, которое будет управлять насосом и уже прошил в Tasmota.
Контроллеры ESP имеют так называемые GPIO, порты ввода/вывода, к которым подключаются датчики, кнопки, реле. Здесь так же не буду углубляться, скажу только что в готовых устройствах само реле привязывается к одному из GPIO и в настройках Tasmota нужно настроить режим его работы как Relay.

Теперь можно управлять этим реле по MQTT по беспроводной связи. Напомню: для общения по MQTT используются топики (Topic - условно тема сообщения) и само сообщение. Для управления реле нам нужно отправить на него MQTT сообщение которое выглядит следующим образом:
cmnd/relay1/POWER ON, где

relay1 это название устройства в настройках Tasmota
POWER это выход устройства relay1. Если на этом устройстве несколько реле можно управлять ими отдельно используя POWER1, POWER2 и т.д.
ON - наше сообщение для включения реле, может быть OFF для отключения или TOGGLE для переключения.

В ответ на эти сообщения Tasmota отправляет брокеру состояние данного выхода в топик stat/relay1/POWER с сообщением ON или OFF

В приложении, в поле Topic пишем cmnd/relay1/POWER
Payload ON - ON
Payload OFF - OFF
Subscribe Topic, это топик, подписываясь на который мы будем получать актуальное состояние нашего реле. В нашем случае stat/relay1/POWER

Ну и дальше на ваше усмотрение можно выбрать разные иконки, цвета. Можно включить запрос перед отправкой сообщения, который защитит от случайных нажатий. В конечном счете у нас появится первая кнопка.

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

Теперь мы можем включать устройства с телефона в домашней сети. Двигаемся дальше.
В процессе поиска системы для автоматизации всего что у меня будет, наткнулся на Node-red. Дальше речь пойдет о нем. Ни разу не пожалел о своем выборе, так как система может построить практически все сценарии, которые могут придти в голову. Оправка и получение данных по MQTT, работа с Telegram ботами, скачивание и отправка в интернет любой информации, интеграция с Алисой, Zigbee, SmartTV (по крайней мере с моим LG на WebOS), работа с почтой, ModBus, SNMP и многое дрегое. А строится все управление путем создания так называемых Нод и их соединения. К тому же абсолютно бесплатна и не требовательна к ресурсам.

И так я начал решать свою первую задачу с насосом. Напомню, что вода в скважине, после непродолжительной работы насоса заканчивается и нужно было сделать периодическое включение/отключение насоса. Но это время всегда разное. В какие-то дни можно качать по 10 минут, а в какие-то вода заканчивалась через 2-3 минуты. То есть нужно оставить возможность регулировки интервалов включения.

Сначала надо настроить приложение чтобы оно отправляло сообщения с разными цифровыми значениями на нужный топик. Для этого в приложении есть виджет Slider (ползунок).

Нужно задать топик для отправки. Его будет считывать Node-red, поэтому мы можем написать все что угодно. Например control/relay1. Payload min и payload max это крайние состояния ползунка. Для себя я сделал от 0 до 10 это мои минуты для управления. Slider step это шаг значений. Factor это наш множитель, который будет применяться к нашему числу для отправки. Unit просто обозначение наших единиц на виджете.

Теперь с помощью приложения мы отправим брокеру сообщение с топиком control/relay1 и значением от 0 до 10. Нужно обработать его в Node-red и отправить на реле. Переходим в Node-red. Его установка подробно описана на сайте, ее описывать не буду. После установки переходим на страницу его настройки по ip-адресу. Web-интерфейс выглядит так

Слева доступные ноды. Они выставляются на рабочую область и соединяются линиями. Есть ноды со входом, есть ноды с выходом, есть ноды у которых есть вход/выход. Немного про ноды

  • Switch позволяет разделять пути для сообщения, что-то вроде условия IF в языках программирования.

  • Delay добавляет задержку сообщениям или служить как фильтр выдавая сообщения определенный промежуток времени.

  • Trigger позволяет отправлять сообщение через определенный промежуток времени если не было "Стоп" сообщения.

  • Inject запускает внесенное сообщение вручную, служит для отладки. Но так же может отправлять сообщения по расписанию или с определенным интервалом.

  • Function для обработки сообщений с помощью ЯП JavaScript

Debug выводит сообщение в окно Debug, в правом краю окна. Служит для отладки.

и многие другие, с разными функциями.

Для получения сообщений MQTT используется нода mqtt in, для отправки mqtt out. После добавления ноды mqtt in в ее свойствах указываем параметры брокера. Добавляем нужные ноды и нажимаем Развернуть. Если ноды mqtt настроены правильно, то под ними появится надпись connected или подключен.


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

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

Показать полностью 8
[моё] Esp32 Esp8266 Home Assistant Умный дом Длиннопост
7
1618
KakaiMalai
2 года назад
Умный дом
Серия Как я пилю умный дом

Как я пилю умный дом ч.1⁠⁠

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

Началось все с того, что я зачем-то заказал 2 умных реле на Aliexpress. Типа вот таких:

Эти реле привязываются через приложение к облачному серверу и позволяют управлять через телефон включением и отключением нагрузки. Так же можно создавать сценарии на включение/отключение по времени. Я отложил их в дальний ящик и благополучно про них забыл, пока не наткнулся на просторах интернета на прошивки Tasmota для таких реле. Вкратце расскажу о начинке:
Наряду с известными всем микроконтроллерами Arduino есть такие контроллеры как ESP8266, ESP32 и им подобные.

Они недорогие, производительные и их легко купить. К ним можно подключать кнопки, датчики, реле и прочее. И эти же контроллеры устанавливают во многие умные устройства, включая реле которые я купил. Это я понял вскрыв корпус реле и осмотрев плату.

Теперь о программной части: на данные контроллеры устанавливаются разные прошивки. Можно установить microPython, можно программировать на них с помощью среды разработки для Arduino. А можно устанавливать готовые прошивки, которые сильно упрощают работу с устройством. В эти прошивки уже встроен Web интерфейс, работа с беспроводными сетями и многое другое. Одна из них это Tasmota и есть несколько довольно простых способов прошить ее на ESP. Готовые модули ESP уже имеют разъем MicroUSB, для голых плат придется приобрести программатор.

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

Следующие фото взял из интернета, но у меня было точно так же.

Так выглядит внутрянка реле:

Синяя перпендикулярная плата как раз та, на которой ESP8266.

Это она же с обратной стороны:

В правой нижней части видно контакты нашей целевой платы

К этим контактам нужно подпаять провода, которые в последствии подключатся в программатор

Питание 220В на плату подавать не нужно. Контроллер возьмет питание от программатора. Только будьте внимательны, сам контроллер ESP питается от 3,3В. А на программаторе может быть выход только 5В. Тогда нужно будет обеспечить 3,3В от другого источника. Подробно здесь этот вопрос описывать не буду.

После смены прошивки и подключения к Wi-Fi прошивальщик сам отправит нас по нужному ip-адресу и мы окажемся на главной странице нашего устройства

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

Управлять включением/отключением реле из WEB интерфейса и в домашней сети мы теперь можем. Передо мной встали несколько вопросов:

  1. Как заставить устройства общаться между собой.

  2. Управление устройством через приложение, получать от него обратную связь.

  3. Сделать автоматизацию, управление по сценариям и событиям в целом.

  4. Удаленное управление из интернета.

Побродив по интернету понял что нужно идти в сторону протокола MQTT. Это протокол передачи данных между устройствами с помощью коротких сообщений.

Если коротко, то каждое устройство может рассылать и получать определенные топики вида
/статус/устройство/№реле "состояние" или команда/устройство/№реле "действие".
Для того чтобы устройства могли общаться между собой им нужен сервер. Слать сообщения напрямую они не могут. Применимо к MQTT сервер называется Брокер

Но брокер сам по себе не управляет устройствами, а лишь является связующим звеном, хранит и передает сообщения. На что поставить брокер? Так как для него не требуется больших вычислительных способностей я решил установить его прямо на роутер. Так как роутер всегда включен и к нему же подключаются беспроводные устройства. Если есть какое-то устройство которое будет работать 24/7 и управлять умным домом, можно воспользоваться им.

У меня уже имелся простенький роутер с 4G модемом. ZBT1626

Прочитав инструкцию на 4pda установил на нее кастомную прошивку OpenWRT. И затем установил на него брокер Mosquitto. В настройках Tasmota вводим ip-адрес mqtt брокера и теперь наши устройства могут общаться меджу собой. В следующих постах расскажу подробнее о настройке MQTT, из чего делал сервер умного дома и какие устройства уже есть в работе

Показать полностью 7
[моё] Умный дом Esp8266 Esp32 Длиннопост
351
17
sergsv1
2 года назад

Плата разработчика LILYGO® TTGO T-Display ESP32 Development Board WiFi и Bluetooth модуль с дисплеем⁠⁠

Плата разработчика LILYGO® TTGO T-Display

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

Для вас новинка:

Это плата позволяет очень быстро собрать какое-то конечное устройство. Особенно если оно у вас было реализовано на модуле Arduino и вы решили это переделать на более мощную и новую платформу.

Модуль TTGO T-Display ESP32 WiFi Bluetooth с контроллером ESP32, цветным дисплеем и схемой зарядки и питания от литиевого аккумулятора. Позволяет быстро собрать макет устройства сбора, отображения и обработки информации с датчиков. Использование контроллера ESP32 и схемы зарядки позволит собрать автономные и портативные устройства для которых важны быстродействие, малые размеры и малое потребление тока.

Характеристики:

  • Чипсет: ESPRESSIF-ESP32 240MHz Xtensa® двухядерный 32-бит LX6 микропроцессор

  • Память программ: QSPI flash 16МБ

  • Оперативная память:520 КБ SRAM

  • Кнопки: Сброс

  • Конвертер USB в TTL: CH9102

  • Интерфейсы: UART, SPI, SDIO, I2C, LED PWM, TV PWM, I2S, IRGPIO,ADC, интерфейс емкостного экрана, DACLNA предусилитель

  • Дисплей: IPS ST7789V 1.14 дюйма

  • Рабочее напряжение: 2.7В — 4.2В

  • Рабочий ток: примерно 60мА

  • Ток в спящем режиме: 120мкА

  • Диапазон рабочих температур: -40 ~ +85 °C

  • Размеры: 51.52 x 25.04 x 8.54мм

  • Питание модуля:

    • Источник питания: USB 5В/1А

    • Ток заряда аккумулятора: 500мА

    • Аккумулятор: 3.7В литиевый с JST разъёмом

    • Разъём питания: 2х контактный шаг 1.25мм

    • USB разъём: Type-C

  • Wi-Fi характеристики:

    • Стандарт: FCC/CE-RED/IC/TELEC/KCC/SRRC/NCC

    • Протоколы: 802.11 b/g/n (802.11n, скорость до 150Mbps) A-MPDU и A-MSDU полимеризация 0.4мкс

    • Частотный диапазон: 2.4ГГц ~ 2.5ГГц (2400МГц — 2483.5МГц)

    • Выходная мощность передатчика: 22dBm

    • Расстояние устойчивой связи: 300м

  • Bluetooth характеристики:

    • Протокол: Поддерживается bluetooth V4.2BR/EDR и BLE стандарт

    • Чувствительность приемника: -97dBm NZIF Class-1, Cl ass-2 & Class-3 emitter AFH

Характеристики контроллера и интегрированных модулей

Характеристики встроенного дисплея и ещё некоторые доп. параметры

На борту контроллера встроен цветной LCD дисплей

Возможности по питанию

Плата имеет возможность использовать в качестве источника питания литиевой аккумулятор. Также она имеет контроллер заряда этих аккумуляторов.

Распиновка МОДУЛЯ

Расположение внешних выводов модуля микроконтроллера.

Многие выводы поддерживают различные функции.

Габаритные РАЗМЕРЫ

Габаритные размеры платы модуля а также расстояние между выводами

Ссылки: Статья с САЙТА : http://schip.com.ua/plata-razrabotchika-lilygo-ttgo-display/

Показать полностью 7
Электроника Электрика Arduino Esp8266 Esp32 Микроконтроллеры Микрокомпьютер Радиоэлектроника Радиотехника Радиоуправление Радиолюбители Умный дом Интернет вещей Длиннопост
7
156
sergsv1
2 года назад

Комплект КИТ -Микроконтроллер ESP32 и Модуль камеры 2MP с режимом ночного видения⁠⁠

Комплект КИТ -Контроллер ESP32 CAM 2,4 ГГц WiFi Bluetooth 8 МБ PSRAM OV2640 Модуль камеры

Кто интересуется микроконтроллерами Arduino, ESP и им подобными.

Для вас новинка:

Модуль ESP32-CAM-MB представляет собой небольшой модуль Кит. Микроконтроллер и камера размером .

Этот модуль может работать независимо. Совершенно новая плата разработки + WiFi + Bluetooth основана на конструкции ESP32, использует встроенные антенны на печатной плате.

Оснащена двухъядерным высокопроизводительным 32-разрядным процессорам LX6, использует 7-ступенчатую конвейерную структуру и возможность регулировки частоты — составляет от 80 МГц до 240 МГц.

Сверхнизкое энергопотребление, ток глубокого сна всего 6 мА.

HK-ESP32-CAM-MB использует интерфейс micro USB, который удобен и надежен в режиме подключения, который удобен и подходит для различных аппаратных терминалов IoT.

Распиновка МОДУЛЯ

Этот модуль можно использовать независимо от камеры как полноценный микроконтроллер ESP

Комплектация

В этом комплекте Кит могут на выбор поставляться различные типы камер.

Но они различаются не только внешним видом но и шлейфом подключения а также углом Обзора:

Основные параметры производительности

1 Двухъядерный процессор можно использовать в различных режимах.

2 Основная частота до 240 МГц, а вычислительная мощность до 600 dmips.

3 Встроенная SRAM 520 КБ, внешняя PSRAM 8 МБ

4 Поддержка UART/SPI/I2C/PWM/ADC/DAC и других интерфейсов

5 Поддержка вспышки OV70 и OV2640

6 Поддержка загрузки изображения по Wi-Fi

7 Поддержка TF-карты

8 Поддержка нескольких режимов сна.

9 Встроенный Lwip и FreeRTOS

10 Поддержка режима работы STA/AP/STA+AP

11 Поддержка интеллектуальной конфигурации/конфигурации сети с одним ключом AirKiss

12 Поддержка вторичного развития

* * * * * * Дополнительно -Сценарий приложения

1 Передача изображения домашнего смарт-устройства

2 Для беспроводного мониторинга

3 Умное сельское хозяйство

4 Беспроводная идентификация 4QR

5 беспроводной сигнал системы позиционирования

6 и другие IoT-приложения

Образцы фотографий с камеры и камерой

Статья с сайта http://schip.com.ua/kit-kontroller-esp32-i-kamery-2mp/

Показать полностью 7
Электроника Самоделки Esp32 Esp8266 Микроконтроллеры Умный дом Интернет вещей Радиоэлектроника Радиотехника Радиоуправление Длиннопост
17
50
Spoilyou
Spoilyou
2 года назад
Инженериум DIY

Робот с камерой и всенаправленным движением на базе ESP32 | makermoekoe⁠⁠

Своими руками Esp32 Робототехника Видео YouTube
7
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии