http://www.blogeletronicaja.blogspot.com.br/2014/12/motor-de-passo-com-arduino-parte-03.html
#eletronicajá
BLOG: www.blogeletronicaja.blogspot.com
EMAIL: andrepenha@gmail.com
FACEBOOK: https://www.facebook.com/eletronicaja/
o diagrama completo está em:
http://www.mediafire.com/view/izoy5kvruwj7iz9/diagrama%20ligacao%20arduino%20motor%20de%20passo.jpg#
http://postimg.org/image/qs8ou29yz/
o mosfet foi o IRF840 o optoacoplador na prática usei o SFH610A no diagrama tá o 4n25, mas na montagem usei o SFH610A mesmo.
resistores:
3.3k - resistor de pull-down ligado no gate dos mosfets
1k - limitador de corrente do led do optoacoplador
390R - limitador de corrente do led sinalizador
Uso de opto-acopladores para acionamento de Mosfet's e configuração do Arduíno para acionamento dos drives do motor de passo.
Diagrama de ligação disponível no blog. Tem o link aqui embaixo também:
http://www.mediafire.com/view/izoy5kvruwj7iz9/diagrama%20ligacao%20arduino%20motor%20de%20passo.jpg
/*
acionamento motor de passo unipolar retirado impressora xerox
um passo por vez - gasta menos energia
pulso simples
full step - 1 fase
*/
void setup() {
//configurando os pinos como saídas
pinMode(9, OUTPUT); //1a
pinMode(10, OUTPUT);//2a
pinMode(11, OUTPUT);//1b
pinMode(12, OUTPUT);//2b
}
//tempo de 5 foi o que apresentou a melhor
//velocidade para o motor de scanner sem travar
//o motor da xerox com 3 nao gira
//com 4 tem a velocidade maxima
const int tempo = 4;
void loop() {
//sequencia
//1a - 2a - 1b - 2b - retorna
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
delay(tempo); // wait for a second
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
delay(tempo); // wait for a second
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
digitalWrite(12, LOW);
delay(tempo); // wait for a second
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, HIGH);
delay(tempo); // wait for a second
}
Comentários