Como controlar 2 motores de passo?

Projetos de arduino
frbabos
Membro
Mensagens: 3
Registrado em: 29/Jul/2020, 10:19

Como controlar 2 motores de passo?

Mensagem por frbabos » 29/Jul/2020, 10:28

Bom dia,

Eu preciso controlar dois motores de passo separadamente.
Cada um deles esta ligado ao arduino Mega 2560 através do driver L298N.
Estou tentando rodar um programa bem básico. Fazer um deles girar 3 vezes para cada lado e, em seguida, o outro fazer a mesma operação. Estou buscando resolver esse problema para meu artigo: https://flaviobabos.com.br/arduino/

Quando eu reseto o arduino o programa funciona perfeitamente no primeiro loop. Assim que ele começa a repetir o primeiro motor não roda mais. Parece que ele tenta rodar mas perdeu a força.

Normalmente eu tento limitar um pouco a corrente para não aquecer demais os drivers. Sem a limitação de corrente o motor gira mas com bem mais dificuldade, sempre a partir do segundo loop.

Se eu ligo só um motor no arduino (usando o exemplo da biblioteca stepper.h), ele roda sem nenhum problema. Com os dois o problema acima aparece toda vez.

O problema seria a alimentação ou alguma coisa do programa?

Outra coisa que eu percebi é que, para o movimento de um dos motores só, parece que os dois drivers estão sendo ativados (os leds nos dois ligam).

Aqui esta o código do programa:

Código: Selecionar todos

#include <Stepper.h>
// declara quantidade de passos por volta e onde os pinos do motor estão ligados
Stepper vert(200, 8 , 9 , 10 , 11 );
Stepper hor(200, 2, 3, 4, 5 );

void setup()
{
  Serial.begin(9600);
vert.setSpeed(100); // velocidade do motor
hor.setSpeed(100);
}

void loop ()
{
vert.step(600); // o motor gira horário 3 voltas
delay(500);
Serial.print("ok");

vert.step(-600); // o motor gira anti horário 3 voltas
delay(500);
Serial.print("ok2");

hor.step(600); // o motor gira horário 3 voltas
delay(500);
Serial.print("ok3");

hor.step(-600); // o motor gira anti horário 3 voltas
delay(500);
Serial.print("ok4");
}

dandrade
Membro
Mensagens: 9
Registrado em: 27/Ago/2020, 13:45

Re: Como controlar 2 motores de passo?

Mensagem por dandrade » 16/Out/2020, 16:32

Capacidade da fonte em fornecer corrente de pico. Os motores exige uma corrente alta para sair da inercia.
Troque a fonte ou, talvez adicione capacitores na alimentação para suprir a corrente de surto.

Quanto ao software, pode tentar sincronizar para que cada motor acione em um momento defasado, pra evitar queda de tensão.

Responder