Para montar este exemplo, usei uma ProtoShield. Para quem não conhece, é uma shield com uma pequena protoboard colada:
Coloquei o L283 na protoboard e fiz as ligações abaixo:
Para um primeiro teste preferi usar um LED bicolor, ligado a um resistor de 390R, ao invés de um motor. O LED irá acender verde ou vermelho conforme a polaridade das saídas da ponte H. O programa de teste é bem simples:
const int L293_ENA2 = 8; const int L293_INP3 = 9; const int L293_INP4 = 10; void setup() { pinMode (L293_ENA2, OUTPUT); pinMode (L293_INP3, OUTPUT); pinMode (L293_INP4, OUTPUT); digitalWrite (L293_ENA2, LOW); digitalWrite (L293_INP3, LOW); digitalWrite (L293_INP4, LOW); } void loop () { delay (3000); digitalWrite (L293_ENA2, HIGH); delay (100); digitalWrite (L293_INP3, HIGH); delay (1000); digitalWrite (L293_INP3, LOW); delay (100); digitalWrite (L293_INP4, HIGH); delay (1000); digitalWrite (L293_INP4, LOW); digitalWrite (L293_ENA2, LOW); }
O vídeo abaixo mostra o resultado deste primeiro teste.
Agora que já estou seguro que não tem nada de muito errado, é só trocar o LED por um motor DC de 5V, que não puxe muita corrente (pois estou usando a alimentação do cabo USB que está ligado no micro). O vídeo abaixo mostra o resultado:
4 comentários:
Muito bom Daniel... eu fiz um projetinho onde eu controlo a velocidade do motor 12v com PWM e a ponte H(PWM em 5v gera na saída 12v)...posso fazer isso usando o transistor FET?
Se a corrente for até 600mA, você pode controlar os 12V diretamente com o L293: ligue os 12V ao pino VS (8) e os 5V ao pino VSS (16).
sim eu fiz isso mas liguei o VSS e VS a 12V...eu queria controlar motores DC mais potentes com o PWM do Arduíno deixando o FET fazer a parte de potência da questão.é possível?você tem algum tutorial desse tipo?
Sim, é possível fazer uma ponte H com MOSFET. Não coloquei nenhum tutorial aqui, mas tem uma descrição muito boa no livre "Intermediate Robot Building" de David Cook.
Postar um comentário