Como pode não haver corrente suficiente?

Eu sou novo no mundo do Arduino. Eu tenho uma pergunta sobre corrente que o Arduino gera em sua porta de 5V. Por que a corrente no Arduino é muito fraca para o circuito atual de fome quando a única coisa que muda nessa equação V = IR é a corrente em si.

Por exemplo, a tensão em um Arduino é restrita a 5 volts. Assumindo que a resistência da corrente permaneça a mesma, a corrente também não deve aumentar (seguindo a lei de Ohm) acima da sua porta de 5V? Mais especificamente, estou falando de alimentar o ESP8266 com um Arduino.

1
Quando eu enumero meu Arduino usando USB eu vejo isso: MaxPower 100mA - então ele está apenas solicitando 100 mA da porta USB. Você pode esclarecer o que entende por: Supondo que a resistência da corrente permaneça a mesma ...
adicionado o autor Nick Gammon, fonte
Por que a corrente no arduino é muito fraca para o atual circuito com fome ... não há "corrente no Arduino" em primeiro lugar.
adicionado o autor Nick Gammon, fonte
Você está falando sobre os pinos dos microcontroladores ou o ponto de energia de 5V, a razão pela qual o último seria restrito seria por causa do tipo de regulador não ser projetado para aplicações atuais com fome.
adicionado o autor RSM, fonte

2 Respostas

O problema não é que "não há corrente suficiente", mas que você não pode dissipar energia suficiente.

Vamos supor que você esteja alimentando a placa de uma fonte externa de 12V. Agora, os 5V são obtidos a partir de 12V com um regulador resistivo: isto significa que o regulador (veja esta imagem se você estiver interessado em saber qual componente é) simplesmente se comporta como um resistor variável, dissipando a energia em excesso. Agora, vamos supor que você queira desenhar 4A a partir do trilho de 5V, já que você quer ativar muitos LEDs e outras coisas. Desde P = VI, o regulador (esse componente muito pequeno) tem que se dissipar (12V-5V) * 4A = quase 30W. Isso significa que se torna um pequeno aquecedor e ... Puff! quebra.

Agora, 4A é uma corrente muito alta, mas esse regulador pode suportar muito pouca dissipação de energia. De acordo com a folha de dados, e estimando um 1cm x 2cm aquecendo sob ele, podemos estimar uma resistência térmica de 25 K/W, o que significa que cada watt que você dissipar aumenta a temperatura interna em 25K (= 25 ° C). Você não pode ir além de 150 ° C sem danificar o componente, o que significa que se o seu quarto estiver a 25 ° C, você pode dissipar MAIS 5W. Na prática, nunca ultrapasse 3W. De qualquer forma, mesmo 5W significa que, a 12V, você não pode obter mais que 5W/7V = 0,7A.

By the way, o regulador é avaliado 0,8A, então você nunca deve ir além desse valor em qualquer caso.

Agora, esse era o regulador externo. Quanto ao usb, você não pode obter mais de 500mA dessa fonte de alimentação. Isso está escrito nas especificações. Por esse motivo, um fusível de 500 mA está no trilho, portanto, ultrapassar 500 mA irá detoná-lo, interrompendo sua energia. Bem, isso é um fusível de autocura, então depois de algum tempo (talvez horas?), Ele funcionará novamente, mas ... Não tente isso.

No final, o pino digital atual. A folha de dados da atmega diz que

  1. A corrente máxima absoluta por pino de E/S é 40,0mA
  2. A corrente máxima absoluta dentro dos pinos VCC e GND é de 200,0 mA

Isso significa que de cada pino você pode obter no máximo 40mA (mas eu sugiro que você nunca ultrapasse 20mA), e a soma de todas as correntes (e dos periféricos internos) nunca deve exceder 200mA. Então, se você precisa energizar 2 leds, você pode dar a cada um deles 20mA, se você precisar alimentar 15 deles, você não pode (você está limitado a, digamos, 10mA). Se você precisar de mais, use transistores para separar os caminhos atuais.

5
adicionado
É mais do que provável que a razão para os limites absolutos/seguros de 20mA/40m por pino não seja um corte atual, mas como sua primeira sentença indica, a incapacidade de dissipar energia suficiente - especificamente, calor - para excedê-los sem danos eventuais. Eles provavelmente passariam mais de 40 vezes, mas falham, fazendo isso.
adicionado o autor caryden, fonte
Os limites por pino são obviamente devidos ao design térmico do CI. Provavelmente por causa do diâmetro de ligação do fio, ou a largura dos traços IC, ou o resistor parasita, ou ... Seja como for, o Atmel caracterizou o IC e afirmou que você não deve excedê-lo, caso contrário, você PODERIA danificá-lo. Claro, talvez receber 10A por 1ps pode deixar você com um IC sã, mas .. Ei, não há garantia;)
adicionado o autor Tom Collins, fonte
@steven bem, se você conectar uma base NPN a uma saída arduino através de um resistor (normalmente na faixa de 10k-47k), emissor à terra e carga ao coletor, você acabou de separar os dois caminhos de corrente, pois agora a carga descarrega através o NPN em vez do arduino. Então ... usar um NPN como switch realmente "separa" eles. Pessoalmente, tendem a preferir nMOSs ao invés de NPN (e pMOS ao invés de PNP) porque eles se comportam mais "idealmente" em minha mente;)
adicionado o autor Tom Collins, fonte
Você poderia explicar como você usaria um transistor para separar o caminho atual? Eu testei algumas coisas com transistores PNP e NPN, mas eu não sabia que você poderia usar isso para separar o caminho atual. Eu apenas os usei como portas lógicas.
adicionado o autor Justin Stenning, fonte

Uma resposta muito simples: O Arduino é limitado a um valor absoluto de 40 mA por pino, porque dentro do chip controlador (normalmente o ATMega328) o caminho que a corrente segue é muito pequeno. Mais atual pode destruir os pequenos transistores no chip. Melhor caso, você queima esse alfinete.

Se você tiver um problema que exija mais de 40mA (e realmente, como outros cartazes indicam, 20mA!) Você deve estar usando um transistor, mosfet ou relé controlado pelo Arduino, em vez de alimentar diretamente o dispositivo final.

1
adicionado