Ir ao conteúdo
  • Cadastre-se

Servo Motor girando em um único sentido


Posts recomendados

Boa Tarde, eu estou montando uma plotter e estou com um problema que nunca tinha visto.

O meu motor de passo esta girando em um único sentido, mesmo fazendo a inversão do sentido na programação ele continua por girar no mesmo sentido, até se eu inverter a posição dos pinos ele continua fazendo a mesma coisa sempre girando no sentido horário.

 

O modelo do meu motor de passo é 28BYJ-48. Segue a programação utilizada:

 


// Interação Arduino com Motor de Passo

#include <Stepper.h> // Incluindo a biblioteca do Motor de Passo
 
const int stepsPerRevolution = 200; // Numero de passo por volta
 
Stepper myStepper(stepsPerRevolution, 13,12,11,10); // Faz a inicialização da Biblioteca usando as portas 13,12,11,10
// setup (executado apenas uma vez)
void setup() {
        myStepper.setSpeed(60); // velocidade do motor definida em 60
}
// laço principal (executado indefinidamente)
void loop() {
  // Estrutura de repetição usada para limitar o tempo que o motor vai girar no sentido anti-horário       
  for (int i = 0; i < 10; i++){
                 myStepper.step(stepsPerRevolution); // sentido anti-horario
                
        }
        delay(5000);
   // Estrutura de repetição usada para limitar o tempo que o motor vai girar no sentido horário             
  for (int i = 0; i < 10; i++){
                myStepper.step(-stepsPerRevolution); // sentido horario
                
       }
       delay(5000);
}

Segue também a imagem com as ligações entre o arduino o shield ULN2003 e o motor de passo.

Circuito_Uno_Motor_de_passo_5v1.thumb.png.9ed8b026995ff810117cbaf9a1f9568e.png

 

Se alguém poder me ajudar acho que não fiz nada errado, então isso pode significa que o problema são os motores no pior cao podem estar queimados.

Link para o comentário
Compartilhar em outros sites

Testa o Arduino com um led nessa portas ai para ver se não tem problema estão respondendo aos comando e não tem nada com problema com com baixa tensão.

 

Eu colocaria em último o de caso o motor com problema... trocaria essa esse circuito de controle ai para ver se erro não é nele.

 

O código parece os mais comum aplicado por ai, a primeira vista não é o problema (na minha opinião, mas posso estar errado huauhahua ).

 

Espere outro ai em baixo para lhe ajudar melhor ^^

Link para o comentário
Compartilhar em outros sites

Então eu já testei com portas diferentes, vários uln2003 que tenho aqui, e ainda testei com dois motores de passo que tenho e os dois estão dando o mesmo problema, esses dois motores de passo eu tenho faz 6 anos e utilizei muito pouco tipo umas de 3 ou 4 vezes, tipo esta muito estranho. Tipo um problema bem zoado.

Link para o comentário
Compartilhar em outros sites

@Thiago Felipe Soares Gonçalves,

 

Cara modifiquei teu código tenta essa ai em baixo... depois disso se não tem problema no Arduino (teste dos leds que pedi para você fazer, não é besteira...), depois de testar outros controladores (se é que não deram problema) você pode ir para o teste do motor para ver se ele não é o problema.

 

Por enquanto só dê o resultado no que deu o código abaixo e veja se o problema continua.

 

// Interação Arduino com Motor de Passo

#include <Stepper.h> // Incluindo a biblioteca do Motor de Passo
 
const int stepsPerRevolution = 500; // Numero de passo por volta
 
Stepper myStepper(stepsPerRevolution, 13,12,11,10); // Faz a inicialização da Biblioteca usando as portas 13,12,11,10
// setup (executado apenas uma vez)
void setup() {
        myStepper.setSpeed(60); // velocidade do motor definida em 60
}
// laço principal (executado indefinidamente)
void loop() {
  // Estrutura de repetição usada para limitar o tempo que o motor vai girar no sentido anti-horário       
  for (int i = 0; i < 10; i++){
                 myStepper.step(-512);
              delay(2000);  
        }
       
   // Estrutura de repetição usada para limitar o tempo que o motor vai girar no sentido horário             
  for (int i = 0; i < 10; i++){
                myStepper.step(682); 
                delay(2000);
       }
    
}

 

Link para o comentário
Compartilhar em outros sites

@Thiago Felipe Soares Gonçalves

 

Busquei o assunto na gringa e achei a solução

 

AQUI

Pode ser um problema físico (de hardware) como da biblioteca para a programação. Basicamente esses motores baratos tem problema segundo os gringos.

 

São duas soluções logo de cara mudar a biblioteca ou inverter alguns cabos. A mais fácil é do Zaplady no tópico deles.

"Hi
From your picture, your stepper motor looks suspiciously like the 28BYJ-48 unipolar stepper motor I bought on ebay (as a package with a ULN2003). I had a similar problem with it not turning backwards with the example code for stepper_oneRevolution.

It may be that your problem (like mine) was because the wires on the motor were not in the expected order. I had to order my stepper pins as 8, 10, 9, 11 rather than 8,9,10,11 when creating the stepper instance. This enabled the motor to go backwards and forwards as expected. You could try other permutations to see which work for your stepper. (connect 8,9,10,11 to in1, in2, in3, in4 on the ULN)

For the speed/revolutions per minute issue I found combinations with speed * revolutions = about 2^13 (i.e.8192) would work as this is used to calculate the delay needed for the stepper to move. The most accurate one for my stepper was speed = 4 (used for setSpeed) and stepsPerRevolution = 2048 as my stepper moved at about 4 revs per minute."

 

 

 

Não acredito que seja o Arduino como você falou está funcionando... e ter problema com vários controladores é esquisito... ficando com o motor.

Link para o comentário
Compartilhar em outros sites

deve ser uma biblioteca modificada ou outra do que você estava usando. Como uma das soluções sugeridas era uma mudança na biblioteca ^^ Bom que achou uma já funcional sem precisar algo a mais. Fica ai para quem tiver mesmo problema.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!