Всем привет! Такое дело, хочу в люстру встроить микроконтроллер какой-нибудь, чтобы управлять яркостью, включать/выключать свет и управлять всем этим через интернет с помощью ESP8266. С диммером и питанием всё понятно. Вопрос в микроконтроллере. Пробовал сделать все это с помощью одного ESP8266-12E, но на минимальной яркости лампы светили нестабильно и, как я предполагаю, он не успевает принимать сигналы и управлять светом одновременно. Потом пробовал приделать для этих дел Arduino Nano. Тоже работало не так как хотелось: свет включался как-то вспышкой и при включении Arduino начинало работать не моментально. Короче Arduino Nano тоже не то. Есть мысль поставить второй ESP8266, типа один принимает сигналы, другой управляет светом, но сначала хочу узнать мнение опытных людей. Есть ещё какие-то STM32. Короче, чё порекомендуете взять для осуществления такой идеи?
Комментарии: 70
Anonim
Esp-14
Alexandre
Неважно, на чем ты это делаешь. Разбирайся в причинах проблем. Обычно они тривиальные.
Anonim
вот именно поэтому 14 :) но с алгоритмами у тебя действительно какая-то беда, раз с реализацией на ардуине были проблемы
Grishka
Чем он лучше?
Anonim
там кроме есп ещё smt8 в том же корпусе (модуля в смысле)
Alex
Порекомендую взять мозги и изготовить самостоятельно плату с микроконтроллером, написав программу на чистом си... - очень увлекательный процесс, к тому же сильно прокачивает в отличии от рукрблудства с ардуинами и скетчами...
Kaktys
шутишь ? ты можешь с нуля написать ядро на esp8266 ?
Alex
Нах мне сдалось ядро писать, если под твои задачи максимум 10 строчек кода....
Kaktys
инициализция всего есп без ядра от espressif ?
Andrew
Откуда ты его напишешь Если ты не знаешь ни адресной карты, ни хе ра Все заблоблено настолько Что пизда рулю Потому что чип скорее всего спизженый И чтобы не раскрыть себя Espressiff заблобили всё до самого верхнего уровня
Kaktys
все вроде известно
Andrew
Да и спиздили можно сказать очень хуевасто
Kaktys
Processor: L106 32-bit RISC microprocessor core based on the Tensilica Xtensa Diamond Standard 106Micro running at 80 MHz
Anonim
на чистом си - в смысле без использования родного SDK? любопытно, любопытно...
Grishka
И лет на 5 выпасть из творчества остального. Зато спец по диммерам будет. Будут в институты и заводы приглашать
Alex
Уважаемый, я всего на 3 дня выпал, когда писал беспроводной протокол для умного дома, не надо всех ровнять по себе...
Grishka
Не хамите. Речь в том числе и про есп. А эта сраная темная лошадь та еще
Alex
Я пытаюсь мотивировать участников включать мозги, а не лепить конструкцию из трёх ESP
Kaktys
в ардуине (не устану повторять) тот же самый с++, и внутре gcc, просто порог вхождения резко снижен, но никто не запрещает напрямую работать с регистрами и прочим железом
Alex
Почему же тогда при компиляции одного и того же кода (при равном уровне оптимизации), в ардруино айдэи бинарник весит гораздо больше?
Kaktys
потому что там кучка "HAL" библиотек
Alex
А нах они мне, ясли я мигаю диодом и шлю данные в юарт?
Kaktys
которые прячут гемор с инициализацией камня и нюансы работы с регистрами, таймерами и пр железом
Shadowsoul
ужирая место и производительность
Kaktys
пиши напрямую в регистр вместо digitalWrite(), никто не запрещает зато порог вхождения - секунд 15
Alex
Ага, и этот "порог вхождения" рождает мысли соединить две еспехи для стабильного Шима
Kaktys
нет, шим там нюанс
Kaktys
а нах тебе геморроится с инициализацией всего барахла если тебе надо только помигать
Alex
Я умоляю, там инициализации, максимум на 5 строк...
Anonim
почему из трёх? из двух вроде...
Kaktys
твоя мотивация приведет к тому что все будет брошено через час
Grishka
Я мягко намекнул на то, что у есп шим-опция работает ужасно. Поэтомутсвязка с стм, человеку, который не особо опытен, будет сложнее чем связка с тиней. Вас же занесло в лес с самокодом
Kaktys
ну под avr/mega еще можно, но все что больше ...
Anonim
я к тому, что на esp, насколько я помню, доки по регистрам открытой нет. т.е. всё, что связано с сетью без родного сдк немножко не работает :)
Vvzvlad
Там 60мгц. Ты уверен, что такой скорости не хватит, чтобы управлять диммером? Вангую, что человек не понял принципы работы сетевого диммера и гнал на симистор шим без привязки к нулю
Kaktys
поэтому берем либо внешний шим, либо есп32 где он точно хардварный и это тоже
Vvzvlad
И в общем-то, проверяется тривиально: отрубаем wifi и хардкодим 50% диммирование
Grishka
Есп без вифи-уг
Vvzvlad
Уважаемый не понимает разницы между проверкой и работой?
Grishka
А чего там проверять? Умные головы уже проверяли и забили на это используя внешние шимы. Смысл на очередные грабли?
Vvzvlad
— У меня плохо едет велик — Мне кажется, твой обвес задевает за спицы колеса. Попробуй убрать его и попробовать поехать? — ВЕЛИК БЕЗ ОБВЕСА УГ!! НЕТ СМЫСЛА ТАК ЕЗДИТЬ!! Я ЛУЧШЕ НОВЫЙ ВЕЛИК КУПЛЮ!!
Kaktys
ну что вы хотите от первого чипа с полным комбайном на борту стоимостью менее 1$ ? в есп 32 уже все отлично вылизано
Shadowsoul
а, ну так фыр
Anonim
не хватит, ибо вайфайное прерывание иногда забирает ядро более чем на 10мс, как следствие при активном приёме-передаче в том же ssid (не с самой есп) диммируемая лампочка начинает моргать "а-ля контакт плохой"
Shadowsoul
а вторым ядром не того?
Anonim
есп8266 второго ядра не завезли :)
Mihail
Диммер использовал типа такого: https://robotdyn.ru/catalog/modules/relays-switches/ac_light_dimmer_module_1_channel_3_3v_5v_logic_ac_50_60hz_220v_110v.html Код брал из GitHub, ссылка на который на этом же сайте в разделе "GitHub"
Anonim
всё хорошо, только судя по плате термин PWM оттуда надо убрать
Kaktys
там стоит один оптрон для того что б ловить начало каждой полуволны и потом включать в нужный момент другим оптроном симистор, а не просто PWM
Vvzvlad
"диммер подключается по 2-м цифровым контактам. Один (Zero) для контроля прохождения нуля фазы переменного тока, который используется для запуска прерывания. " Подключал контроль нуля?
Anonim
вангую, PWM вместо PSM на нём написали чтоб лучше продавалось :)
Mihail
Да
Vvzvlad
Тогда это не шим уже
Mihail
Он работает хорошо на всех уровнях яркости кроме низкой
Vvzvlad
Тогда на на код смотреть А это может быть особенность лампы
Kaktys
это тоже, с диммерами даже накаливания на низких мощностях звенят и мерцают
Anonim
это в принципе беда всех диммеров, особенно если частота сети не очень стабильна
Nikolay
А частота сети может меняться настолько быстро, чтобы было заметно мерцание?
Anonim
скажем так, на том остатке полуволны остаётся не так много энергии, которую нужно вогнать в лампу, поэтому любые флуктуации (из-за флуктуации частоты сети, несинхронизированности тактового генератора с сетью (разумеется на 16мгц ардуины это врядли влияет), да и банально несоответствие формы напряжения сети ожидаемой синусоиде из-за повального распространения импульсных БП без корректора мощности) - очень заметно влияют на лампу.
Vvzvlad
Что за лампа?
Mihail
Хах, сейчас узнал, что лампа оказыапется не для диммирования) Может в этом проблема. Светодиодная, энергосберегающая лампочка.
Anonim
ты бы для начала тестил на обычных лампах накаливания... диммить светодиоды тиристором... ну такооооое...
Mihail
Да, попробую
Vvzvlad
1)симистором 2)зависит не от светодиодов, а от блока питания лампы
Anonim
1 - это ещё вопрос, зависит от схемотехники. во многих диммерах стоит тиристор после диодного моста.
Vvzvlad
Оу. Зачем?
Anonim
а 2 - я к тому, что сама идея диммить питание на БП, в котором встроены функции в том числе стабилизации - идея так себе. Но оно работает, да, и весьма распространено из-за удобства для потребителя
Vvzvlad
Ну и в вышеобозначенной плате симистор
Vvzvlad
Идея диммить питание на бп вполне себе норм, если он это поддерживает. Именно так делаются светодиодные лампы, которые можно диммировать
Anonim
банально дешевле? :)