Olá pessoal,

Estou tentando desenvolver uma máquina para corte e decape de cabos e criei este código, nem sei se está muito bom, sou novo com Arduino. Mas a minha questão é: como mudar da biblioteca Stepper do Arduino para a AccelStepper, haja visto que irei usar um driver a 3 fios (PUL, ENA, DIR)? Também pretendo adicionar um controle de velocidade com potenciômetro.

Será que alguém poderia ajudar? Estou lendo e tentando aprender a AccelStepper

Segue o código em anexo.

Grato!

Edgar

Exibições: 1791

Anexos

Responder esta

Respostas a este tópico

Edgar, como estão configurados os switches (chaves) do seu driver DM442 ?

José, configurei assim:

SW1 - OFF

SW2 - OFF

SW3 - OFF

SW4 - ON

SW5 - OFF

SW6 - ON

SW7 - ON

SW8 - ON

Implementei os botões liga e desliga e o potenciômetro para controle de velocidade, está assim:

Anexos

Fiz as ligações do último sketch, mas só aciona as saídas dos relés em looping, o motor não gira...

EJ, o unico erro que encontrei foi nesta linha:
passosDecap2 = round(compDecap + compEmcap - distFacas / passo);
corrija para
passosDecap2 = round((compDecap + compEmcap - distFacas) / passo);

Apesar disto não interferir se o motor gira ou não.
Voce tem como colocar um desenho de como está ligando o arduino no modulo de drive do step motor?

Rui

Primeira sugestão para teste >

Inverta essa sequencia 

stepper.setSpeed(veloc); // Envia o valor do potenciômetro em forma de frequencia para o driver
digitalWrite(ligaMotor, HIGH); // Habilita o Motor

para 

digitalWrite(ligaMotor, HIGH); // Habilita o Motor

stepper.setSpeed(veloc); // Envia o valor do potenciômetro em forma de frequencia para o driver

E imprima os valores das varíaveis na tela, para confirmar que esta fazendo os cálculos corretamente . 

Por exemplo :

void setup() {
  Serial.begin(9600);      // open the serial port at 9600 bps:  

    Serial.print(" Passos Decap 1 = ");  
    Serial.println(passosDecap1);

stepper.move(passosDecap1); // Aciona o motor para o 2o Decape
stepper.run();

 

Fiz a inversão das linhas, coloquei uma alguns Serial.print, o resultado segue abaixo, variando o potenciometro, que vais de 0 a 1998.

Porém, ainda não roda o motor.

Notei que ao desabilitar o motor no pushbotton, o motor trava, aquecendo um pouco. Ao liga-lo, o eixo fica leve.

É normal o step motor aquecer um pouco (fica até difícil toca-lo) qdo está parado e "draivado"

Rui

Este esquema

confere com suas ligações?

Rui

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço