O diodo é para fornecer um caminho seguro para o recuo indutivo do motor. Se você tentar desligar a corrente repentinamente em um indutor, ela produzirá a voltagem necessária para manter a corrente fluindo a curto prazo. Em outras palavras, a corrente através de um indutor nunca pode mudar instantaneamente. Sempre haverá alguma inclinação finita.
O motor é parcialmente um indutor. Se o transistor desligar rapidamente, a corrente que ainda deve fluir através do indutor por um tempo fluirá através do diodo e não causará danos. Sem o diodo, a tensão no motor ficaria tão grande quanto necessário para manter a corrente fluindo, o que provavelmente exigiria fritar o transistor.
Um pequeno capacitor do outro lado do motor reduzirá a velocidade das transições de tensão possivelmente rápidas, o que causa menos radiação e limita o dV / dt ao qual o transistor está sujeito. 100 nF é excessivo para isso e impedirá uma operação eficiente, exceto em baixas frequências PWM. Eu usaria 100 pF ou mais, talvez até 1 nF.
O resistor deve limitar a corrente que a saída digital deve fornecer e a base do transistor deve suportar. O transistor BE parece um diodo para o circuito externo. A tensão será, portanto, limitada a 750 mV ou mais. Manter uma saída digital em 750 mV quando está tentando conduzir a 5 V ou 3,3 V está fora da especificação. Isso pode danificar a saída digital. Ou, se a saída digital puder gerar muita corrente, isso poderá danificar o transistor.
1 kΩ é novamente um valor questionável. Mesmo com uma saída digital de 5 V, isso colocará apenas 4,3 mA ou mais na base. Você não mostra especificações para o transistor, então vamos descobrir que ele tem um ganho mínimo garantido de 50. Isso significa que você só pode contar com o transistor suportando 4,3 mA x 50 = 215 mA de corrente do motor. Isso parece baixo, especialmente para a inicialização, a menos que seja um motor muito pequeno. Eu veria o que a saída digital pode obter com segurança e ajustaria R1 para extrair a maior parte disso.
Outra questão é que o diodo 1N4004 é inadequado aqui, principalmente porque você ligará e desligará o motor rapidamente, como está implícito no "PWM". Esse diodo é um retificador de energia destinado a frequências normais de linha de energia como 50-60 Hz. Tem recuperação muito lenta. Use um diodo Schottky. Qualquer diodo Schottky 1 A 30 V genérico funciona bem e é melhor que um 1N4004.
Eu posso ver como esse circuito pode parecer funcionar, mas claramente não foi projetado por alguém que realmente sabia o que estava fazendo. Em geral, se você vê um arduino em um circuito encontrado na rede em algum lugar, especialmente um simples, suponha que ele foi publicado porque o autor considera uma grande conquista. Aqueles que sabem o que estão fazendo e desenham um circuito como esse em um minuto não consideram que vale a pena escrever uma página da web. Isso deixa aqueles que levaram duas semanas para fazer o motor girar sem o transistor explodir e eles não sabem ao certo o que tudo faz para escrever essas páginas da web.
Quando os enrolamentos do motor estão carregando corrente, eles geram um campo magnético. É preciso energia para fazer isso e a energia é armazenada no campo magnético. Se a corrente for subitamente cortada, o campo magnético entrará em colapso. Essa alteração do campo magnético induz uma corrente no enrolamento muito mais alta que o normal e produz uma tensão mais alta nos enrolamentos. É muito curto e pode ser bastante impressionante.
A chave para a corrente induzida é o campo de mudança. Você pode ver o mesmo efeito em um interruptor de luz doméstico. Se você tiver interruptores que não são do tipo mercúrio ("interruptores silenciosos"), às vezes poderá ver uma faísca ou um flash de luz quando desligar as luzes. Se você interromper a conexão enquanto a corrente CA passa perto de zero, nada acontece. Se você quebrar perto do pico da corrente, a fiação das luzes terá o campo magnético máximo ao seu redor e ela entrará em colapso com um pico de tensão suficiente para arcar no interruptor da luz.
Observe que seu diodo aponta para o lado + do seu circuito. A mudança de campo produz um "EMF de volta" ou voltagem na direção errada. A energia sai do tubo em que entrou. (Espero ter esse direito. Vou verificar e editar se o tiver ao contrário.) O diodo será conduzido se o potencial ou a tensão no enrolamento do motor for superior a 0,6 V na direção "errada". Para DC, isso é direto. Para PWM, isso é mais parecido com CA e um circuito confiável de qualidade é mais complicado.
Como o @OlinLathrop disse, seu resistor de base pode ser um pouco grande. Como exemplos típicos, 2N2222 e 2N3904 têm um ganho beta ou atual de cerca de 30 em CC que sobe com frequência para 300-400. Se você tiver um motor grande, o transistor não fornecerá a corrente ou queimará. Você pode calcular a dissipação de energia no transistor em cerca de 1W por Amp e muito mais se as coisas não estiverem ajustadas corretamente. (Você não pode colocar transistores bipolares em paralelo sem muito trabalho extra. À medida que aquecem, a resistência diminui e mais corrente flui e aquela que aquece os porcos mais rápidos da corrente - geralmente para destruição). Você pode ver que os pequenos drivers de motor vendidos para Arduinos têm um dissipador de calor ou uma grande parte com uma seção de metal destinada a ser usada com um dissipador de calor.
A tampa suaviza os picos atuais. À medida que aumentam no tempo, diminuem o pico de corrente e, portanto, a tensão que a corrente produz no circuito é menor. Se o seu motor tiver escovas, você estará recebendo o fluxo de corrente ligado / desligado na taxa em que o motor estiver girando. Novamente, voltamos a mudar as correntes e mudar os campos. É daí que vem o ruído de radiofrequência. Espalhar esses picos de corrente significa que a taxa de mudança de corrente é menor e, como resultado, a RFI (Interferência de radiofrequência) é menor. Aposto que, se você colocar um rádio AM perto do seu circuito e sintonizá-lo em um local sem estação de rádio, poderá saber quando o motor está funcionando. Tente limites de tamanhos diferentes e veja se você detecta alguma diferença.
fonte