sexta-feira, 7 de agosto de 2015

Dando “vida” ao chassi TG007 usando um Arduino e dois transistores TIP 102

Caso não tenha visto ainda Como controlar um motor DC, veja o tutorial , pois será necessário para realizar os procedimentos abaixo.
Outro jeito de por pra funcionar o chassi TG007 é usar dois transistores TIP 102, cada transistor para o respectivo motor, assim os motores serão independentes.
Materiais utilizados:
2 transistores TIP 102
2 resistores de 1k?
2 resistores de 220?
2 LEDs
É importante fazer uma ressalva que utilizando os transistores o chassi não andará diretamente para trás, porém é possível virá-lo 180° e depois andar para frente.
Vamos começar!
Solde dois fios de cobre em ambos os motores DC

Fixe o arduino e o protoboard ao chassi.
Depois de fixado, disponha os dois transistores e os dois resistores de 1k? no protoboard, sendo que os resistores são conectados a base de cada transistor.

Conecte a outra extremidade dos resistores na saída digital do arduino

Ligue os pinos terra (GND) do arduino ao emissor dos transistores

Conecte os dois polos da fonte de alimentação (pilhas) nas conexões verticais do protoboard para facilitar a montagem do circuito.

Conecte o positivo do motor DC no positivo da fonte de alimentação e o negativo no coletor do transistor. Fazer o mesmo para o outro motor.
Obs: Para saber qual o positivo e o negativo do motor basta ligar os fios na fonte de alimentação, caso o motor gire para frente os fios colocados são o positivo e o negativo, caso gire para trás é só inverter.

Vincule o negativo da fonte de alimentação ao emissor de cada transistor.

Agora para efeitos visuais acople os resistores de 220? nas extremidades dos resistores de 1k?, em seguida o anodo dos LEDs conectados com os resistores de 220? e o catodo ao emissor.

Após as conexões basta ir ao ambiente de desenvolvimento oferecido pelo arduino e colocar o seguinte exemplo que fará seu chassi andar para frente e parar por 5 segundos.
int MotorDireita = 2;
int MotorEsquerda = 3;
void setup(){
pinMode(MotorDireita, OUTPUT);
pinMode(MotorEsquerda, OUTPUT);
}
void loop(){
digitalWrite(MotorDireita, HIGH);
digitalWrite(MotorEsquerda, HIGH);
delay(1000);
digitalWrite(MotorDireita, LOW);
digitalWrite(MotorEsquerda, LOW);
delay(5000);
 
}
 


← Postagem mais recente Postagem mais antiga → Página inicial

0 comentários:

Postar um comentário