• Система автоматизации с открытым исходным кодом на базе 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 ну, конечно, инвертор на вход реле. Только в программе управление не забыть переделать на активный высокий уровень.
 
Сверху Снизу