• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Nodemcu + LUA + Реле

Andrij

New member
Здравствуйте,

подключил реле, все работает хорошо, но при включение питания или ресета nodemcu реле щеткает

В ардуино проблема решалась инициализацией в разделе сетап
void setup()
{
pinMode(Relay, OUTPUT);
}

как сделать токое для nodemcu ?
 

Andrij

New member
интересно, что это могло решить? Может лучше правильно подключить реле?
подскажите тогда как правильно подключить? реле на 3 контакта - VCC GND IN

Мне кажется Вы не понимает суть вопроса, ардуина при старте опрашывает пины (ей надо подать HIGH на мнговение) и как раз в момент проверки порта реле включается на мнговение и потом отключается назад, но когда в разделе void setup() ей сразу сказать что OUTPUT она уже небудет подавать туда логическую единицу и щелчка небудет
 

Сергей_Ф

Moderator
Команда форума
ардуина при старте опрашывает пины (ей надо подать HIGH на мнговение) и как раз в момент проверки порта реле включается на мнговение и потом отключается назад, но когда в разделе void setup() ей сразу сказать что OUTPUT она уже небудет подавать туда логическую единицу и щелчка небудет
а можно ссылку на
источник этих неожиданных знаний?
 

Andrij

New member
а можно ссылку на
источник этих неожиданных знаний?
arduino-info - ArduinoPower

часть текста источника

IMPORTANT NOTE: There is a issue with start-up of Arduino programs that control these relays. All of these 2,4, or 8 relay boards input controls are Active LOW, meaning that setting a pin LOW turns them ON. To assure that no relays activate at Reset or Power-On until you want them to, the initialization sequence in SETUP should be:
  1. digitalWrite(Relay, HIGH);
  2. pinMode(Relay, OUTPUT);

если Вам не трудно - подскажите тогда как правильно подключить реле?
 

Сергей_Ф

Moderator
Команда форума
@Andrij вот то что Вы привели, говорит о том, что происходит всё наоборот, а не так как Вы написали. Более того, речь идет о плате с реле, а не о реле. А это большая разница.
Ардуино (не ESP) при старте до инициализации держит все пины притянутыми к земле = 0 на выходе. Вот отсюда и щелчок реле на плате расширения, поскольку они управляются активным Нулём.
И при чем тут esp и nodeMCU?
Может стоит Вашу схему подключения привести?
 

Andrij

New member
@Andrij вот то что Вы привели, говорит о том, что происходит всё наоборот, а не так как Вы написали. Более того, речь идет о плате с реле, а не о реле. А это большая разница.
Ардуино (не ESP) при старте до инициализации держит все пины притянутыми к земле = 0 на выходе. Вот отсюда и щелчок реле на плате расширения, поскольку они управляются активным Нулём.
И при чем тут esp и nodeMCU?
Может стоит Вашу схему подключения привести?
Ну я ж писал у меня плата nodemcu v3 з прошивкой 1.5.4.1 и обчное китайское реле модуль songle srd-05vdc
подключение
nodemcu <-> реле
GND <-> GND
3v3 <-> VCC
D3 <-> IN

Я понимаю что реле с логикой на 5 вольт но на 3.3 работает, возможно неправильно - но работает

Вопрос только в том как вот ето
  1. digitalWrite(Relay, HIGH);
  2. pinMode(Relay, OUTPUT);
сделать на nodemcu
 

Сергей_Ф

Moderator
Команда форума
Вас в Гугле забанили?
Как то так
Код:
relay= IO 4 = GPIO 3 (по таблице с API NodeMCU)
gpio.mode(relay, gpio.OUTPUT)
gpio.write(relay, gpio.HIGH);
Только это не поможет, имхо.
 

Andrij

New member
Вас в Гугле забанили?
Как то так
Код:
relay= IO 4 = GPIO 3 (по таблице с API NodeMCU)
gpio.mode(relay, gpio.OUTPUT)
gpio.write(relay, gpio.HIGH);
Только это не поможет, имхо.
Если б все было так просто я б не спрашивал, то что оно не поможет мне извесно

у меня остается вопрос от первого поста

как сделать токое для nodemcu ?

и возник второй вопрос

а почему оно не поможет, у nodemcu по другому реализирован процесс инициализации?
 

Сергей_Ф

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

nikolz

Well-known member
потому что Вы не понимаете или не хотите понять суть проблемы. Дело не в опросе пинов, которого нет, дело в управлении реле активным низким уровнем, т.е Нулём. Надо либо перейти на управление высоким уровнем, либо ставить аппаратную задержку на подачу питания у реле. Либо уходить от скриптового языка, чтобы реле не успевали щёлкать при отработки первоначальной инициализации.
Надо включить реле через транзистор . Реле в цепь коллектора, резистор с базы на пин esp и резистор с базы на землю эмиттер на землю.
 

Сергей_Ф

Moderator
Команда форума
@nikolz ну, конечно, инвертор на вход реле. Только в программе управление не забыть переделать на активный высокий уровень.
 
Сверху Снизу