【问题标题】:ESP8266 5v Relay USB Disconnection issueESP8266 5v 继电器 USB 断开问题
【发布时间】:2020-03-21 08:24:42
【问题描述】:

问题

-当使用ESP8266以这种方式接线时,它会在给继电器供电时随机断开USB接口。然后它可能会重新连接,但只是零星的。

-代码如下所示,但本质上继电器通电 300 毫秒,然后等待 10 秒循环。

接线图https://i.stack.imgur.com/4mycx.png

测试:

我已经更换了继电器、泵、ESP8266,并多次重新接线电路以检查是否短路。我还有一个整数在每个循环周期递增,当 ESP8266 能够重新连接时,它会打印这个变量,这表明电路板没有崩溃:

串行输出 https://i.stack.imgur.com/ziM8g.png

然后我修改了图表,使 5v 电源不是并联的,而是两个不同的电源,一个用于 ESP8266,一个用于泵电路,但是观察到相同的问题:

测试接线图https://i.stack.imgur.com/7S0aP.png

问题:

为什么在向继电器发送控制信号时USB会断开连接? 有没有办法缓解这种情况?

代码:

int relayInput = 5; // the input to the relay pin
int debug_test = 0;

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  pinMode(relayInput, OUTPUT); // initialize pin as OUTPUT
}

void loop() {
  // put your main code here, to run repeatedly:

  debug_test ++ ;
  Serial.println(debug_test);
  digitalWrite(relayInput, HIGH); // turn relay on
  Serial.println("Water on!"); 
  delay(300);

  digitalWrite(relayInput, LOW); // turn relay off
  Serial.println("Water off!"); 
  Serial.println("Waiting 10 seconds");
  delay(10000);


} 

零件:

泵 - https://www.ebay.co.uk/itm/Mini-Water-Pump-DC-3V-4-5V-Fish-Tank-Fountain-Aquarium-Submersible-White-Parts/174211676084?hash=item288fd337b4:g:128AAOSwfQteYWF3

ESP8255 - https://www.amazon.co.uk/gp/product/B07F5FJSYZ/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

中继 - https://www.amazon.co.uk/gp/product/B07BVXT1ZK/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

【问题讨论】:

  • 阅读下面的文章,解释说从 PC 中拉出太多安培可能是一个问题,但是我也刚刚使用泵的外部电源(额定 4.4a)测试了电路, 将 ESP8266 USB 连接到 PC,但仍然有同样的问题:forum.arduino.cc/index.php?topic=496581.0

标签: esp8266 nodemcu arduino-esp8266


【解决方案1】:

好的,因此对此进行研究,似乎当泵开启时,它会拉出比 PC 所能提供的更多的电流(安培)。 这将用于连接到应为其提供足够电流的外部电源,但我还希望灵活地将其连接到具有串行连接的 PC 以进行故障排除。

所以最后是这样的: https://i.stack.imgur.com/MKD1h.png

【讨论】:

    【解决方案2】:

    您正在驱动一个具有 3.3v 输出的 5v 继电器模块,这对某些人来说非常有效,但这取决于继电器模​​块和电路板,这可能是问题所在。或者继电器消耗超过 12mA 的电流,这是 ESP8266 的 GPIO 可以提供的最大电流。

    所以我建议您为继电器使用外部电源并通过引脚(在您的情况下为 D1)控制它。

    或者只是使用带有外部 5v 电源的通用 5v 继电器并使用晶体管控制它,这是一个电路。

    其他信息:https://electronics.stackexchange.com/questions/213051/how-do-i-use-a-5v-relay-with-a-3-3v-arduino-pro-mini?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-15
      • 2017-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-26
      相关资源
      最近更新 更多