Приложение Esp и Blynk
Можно ли управлять одним реле с помощью приложения Blynk, а также с помощью atmega? Чтобы лучше понять, подумайте о реле, которое включит вентилятор, когда вы используете приложение blynk. но когда у вас нет телефона рядом с вами, с помощью кнопки вы можете включить его оттуда (кнопка будет подключена к atmega)
void setup()
{
Serial.begin(9600);
pinMode(relCh1,OUTPUT);
pinMode(relCh2,OUTPUT);
pinMode(relCh3,OUTPUT);
pinMode(relCh4,OUTPUT);
digitalWrite(relCh1,HIGH);
pinMode(EspReadPin, INPUT);
digitalWrite(relCh3,HIGH);
}
void loop()
{
Serial.println(digitalRead(6));
delay(400);
if(digitalRead(EspReadPin == 1))
{
digitalWrite(relCh3,LOW);
}
else if(digitalRead(EspReadPin == 0))
{
digitalWrite(relCh3,HIGH);
}
}
@Iulian Chirvasa, 👍0
1 ответ
▲ 1
Да, это возможно.
Используйте пример скетча Blynk, чтобы активировать вывод esp8266. Считайте вывод esp8266 с помощью ATMega. Обработайте в скетче ATmega контакт esp8266 как вторую кнопку.
,
@Juraj
Смотрите также:
- Добавление WiFi к моему замку клавиатуры Arduino
- Как заставить 5-вольтовое реле работать с NodeMCU
- Когда следует использовать транзистор, МОП-транзистор, а когда следует использовать реле?
- Причины, по которым нельзя подключать реле непосредственно к цифровому контакту Arduino
- Esp8266 Vin контакт
- Правильный PIN для активации беспроводного реле с ESP8266 ESP-01
- Несколько неблокирующих таймеров обратного отсчета?
- Как инициализировать цифровой выходной контакт как LOW
я не могу понять. Не могли бы вы объяснить более подробно?, @Iulian Chirvasa
не могли бы вы переписать свой вопрос более подробно, @Juraj
Конечно ! в основном я хочу управлять одним реле из двух разных мест. Один будет в доме (панель с кнопками) - где будет и эта кнопка для реле. и будет управляться атмегой(когда нажмешь - включится реле). а еще "локация" будет с телефона. но для этой части я буду использовать blynk и esp., @Iulian Chirvasa
и у вас работает локальная часть и вы хотите добавить esp8266 с Blynk?, @Juraj
Я использую пин от atmega в качестве вывода. и на макетной плате подключен к реле (как сигнал), но на той же линии (на макетной плате) я поставил также контакт от esp. и возникает проблема, что если я нажму кнопку - реле включится. но если я использую приложение blynk - ничего не происходит., @Iulian Chirvasa
так что на данный момент я могу управлять им, используя только atmega. если я удалю контакт, идущий от atmega, blynk работает отлично., @Iulian Chirvasa
так что прочитайте мой ответ еще раз. часть про "прочитать вывод esp8266 с помощью ATmega", @Juraj
так как мне это сделать? я имею в виду ... единственное решение, о котором я сейчас думаю, - это определить другой вывод atmega как ВХОД и прочитать его., @Iulian Chirvasa
это проблема?, @Juraj
боюсь не получится., @Iulian Chirvasa
почему это не сработает? вот что делают микроконтроллеры, @Juraj
Я только что попробовал и ничего. .., @Iulian Chirvasa
он читает контакт как высокий, но только это, @Iulian Chirvasa
у тебя обычный esp8266? какой пин esp8266 вы использовали? (добавьте информацию к вопросу), @Juraj
нет, у меня есть NodeMCU и используется контакт D0 = GPIO 16, @Iulian Chirvasa
Вы загрузили скетч Blynk в NodeMcu?, @Juraj
да. Esp и blynk работают идеально. Проблема проявляется на стороне атмеги. даже релейный модуль сходит с ума. Даже если я установлю их в функции настройки открытыми, при загрузке скетча они закрываются. и я не могу понять почему., @Iulian Chirvasa
Я проверил то, что вы сказали мне сделать, на arduino nano, и я установил контакт в качестве входа. если он высокий, то встроенный светодиод будет гореть, иначе он должен быть выключен. и работает. Ничего страшного. а на мега... что-то сходит с ума., @Iulian Chirvasa
в любом случае, ты мне помог. Спасибо!, @Iulian Chirvasa
реле активны LOW?, @Juraj
да. если я ставлю их как низкие - они закрыты, @Iulian Chirvasa
здесь происходит что-то странное. Я написал скетч, чтобы проверить одну кнопку и, если она высока, включить реле. Хорошо ... я загрузил код, а затем, если я нажму кнопку, atmega увидит, что он высокий, и выполнит «digitalWrite (relay, HIGH); Проблема в том, что реле не замыкается. Я использую dmm для измерения напряжения на сигнальном контакте реле и составляет 4,7 В - обычно он должен замыкаться. но нет. светодиод перед реле еле светится., @Iulian Chirvasa
только подтягивание на контакте INPUT? не ВЫВОД? смотри номера пинов в скетче, @Juraj
теперь, если я проверю его, используя еще 2 условия - он работает, @Iulian Chirvasa
я разместил код выше. поэтому, если я удалю в операторах if && и все после. это не работает, @Iulian Chirvasa
if (b == HIGH || a == LOW) {} else {}
?, @Jurajя проверил с вашим предложением. вот что бывает. светодиод перед реле (тот, который показывает, получает ли реле напряжение) едва загорается в обеих ситуациях (если я использую приложение или нажимаю кнопку), НО если я нажимаю кнопку и использую приложение одновременно. реле закрыть., @Iulian Chirvasa
быстро включается и выключается?, @Juraj
нет. если я нажму кнопку на blynk, чтобы включить его. он не включится. вместо этого светодиод светится (едва-как будто он получает минимальное напряжение на переходе, чтобы пропустить ток), но если я измерю напряжение- будет 4,7 В, но реле не замкнется., @Iulian Chirvasa
Глядя в последовательный монитор, похоже, что реле закроется только тогда, когда получит 0, но это для НИЗКОГО уровня. и я установил его на ВЫСОКИЙ. У меня болит голова.. не знаю, что здесь происходит. Очень вероятно, что я сделал что-то не так., @Iulian Chirvasa
кнопка имеет подтягивающий резистор? лучше подключить кнопку к земле и использовать внутреннюю подтяжку с режимом INPUT_PULLUP, как в примере DigitalInputPullup, @Juraj