Wemos d1 и 8 relay module

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем kt315where, 3 ноя 2017.

  1. kt315where

    kt315where Гик

    Всем привет

    подключил модуль из 8 реле к плате wemos, все работает, но есть проблема:

    при включении/перезагрузке (reset) wemos, все релюхи на 1 раз мгновенно на долю секунды включаются, ну а дальше переходят в состояние в зависимости от скетча

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

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

    rkit Гуру

    Да надо просто код написать как положено, я думаю.
     
  3. ИгорьК

    ИгорьК Гуру


    И да и нет. У ESP-8266 минимум 2 ноги при включении подтянуты к питанию. У этого модуля возможно больше - смотрите схему.
    Есть релейные модули, которые перекидывают реле не единицей, а нулем. Вот они то удобны для ESP-8266, в ином случае надо городить какое-то железное решение для задержки или инвертирования сигнала управления.
     
  4. kt315where

    kt315where Гик

    итак продолжаю разбираться с данным явлением. странно, неужели я первый кто столкнулся с этим?

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

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

    получается в своем проекте я не смогу использовать 1 и 8 реле, т.к мне категорически важно чтобы они не включались ни на какие доли секунды при перезагрузке платы
     
  5. ИгорьК

    ИгорьК Гуру

    Удивительно!
     
  6. kt315where

    kt315where Гик

    Понимаете в чем дело, если бы эти 2 ноги были статично подтянуты к питанию то проблема бы решилась сменой пинов, но я пробовал подключаться к другим выводам, ситуация не меняется.
     
  7. ИгорьК

    ИгорьК Гуру

    Значит прошивка во время старта до запуска программы сама поднимает ноги в единицу. Вы же программно точно это не делаете?

    Попробуйте стянуть 10 ком резистором ноги в ноль, но для GPIO0 и GPIO2 это делать категорически нельзя.
     
  8. kt315where

    kt315where Гик

    Сейчас попробовал еще в другие пины подключить - и проблема решилась. По факту оказалось, что питание у вемоса подтянуто более чем к двум ногам, если не ошибаюсь то в моем случае это оказались D1, D8, D9, D10. Видимо так совпало, что я именно между этими пинами пробовал переключаться. по факту логическая единица приходит именно на эти пины кратковременно при первом запуске или рестарте, т.е до начала работы скетча. Надо еще оставшиеся пины проверить, я думаю на форуме такая информация лишней не будет

    Ну и назревает вопрос, можно ли все-таки как-то перепрошить сам ESP, чтобы он не посылал единицы на эти пины до запуска скетча? или тут всё завязано на железе?
     
  9. ИгорьК

    ИгорьК Гуру

    Вроде я так и предполагал сразу.

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