DRV 8825 - fonctionnement aléatoire dans un gamme précise de vitesse

Bonjour,

Je viens de recevoir le kit ramps 1.4 avec DRV8825 et NEMA 17.

N’ayant jamais utilisé de moteur pap, j’ai voulu un peu tester le fonctionnement de l’ensemble DRV8825+moteur histoire de m’amuser en utilisant le schield Ramp1.4

Le programme est donc simple, il passe à 1 puis à 0 la sortie step puis attend un temps fixé par un poti pour pour recommencer la boucle loop. ( ceci me permet de fixer la vitesse )

Tout fonctionne comme prévu. Oui mais sauf que dans une plage de vitesse très restreinte ( 1puls / 4300 microsS - 1puls / 4500 microsS), le fonctionnement du moteur est aléatoire ( sons sens et sa vitesse ).

J’ai donc décidé d’utiliser un autre DRV8825 et un autre moteur ( même modèle ) sur une plaquette de test avec un nano et le problème est identique.

Les microsteps sont à 1

Moteur: NEMA17HD48002H-22B

J’aime comprendre les choses et je ne m’imagine pas poursuivre mon projet d’imprimante 3d sans avoir réglé ou compris ce problème. je viens de commander un A4988 pour voir sir le phénomène apparaît aussi…

Qu’en pensez-vous, je suis décu de ne pas comprendre ce qu’il se passe.

Bien à vous

Benoit

//#define X_EN    A2
//#define X_STEP  A6
//#define X_DIR   A7 
//#define N_PAS   200 
//#define POTI   A5 

#define X_EN    4
#define X_STEP  3
#define X_DIR   2 
#define POTI   A0 

#include <Mago.h>
T_cycle CyclePrincipal('m');

unsigned int i=1000;

void setup() {
Serial.begin (57600);
  
pinMode(X_EN, OUTPUT);  
pinMode(X_STEP, OUTPUT); 
pinMode(X_DIR, OUTPUT);   
digitalWrite(X_DIR, LOW);
digitalWrite(X_EN, LOW);
}

void loop() 
{
  CyclePrincipal.newCycle();
  i=400+(10*(analogRead(POTI)));
  
  digitalWrite(X_STEP, HIGH);
  digitalWrite(X_STEP, LOW);
  delayMicroseconds(i);

 Serial.println(CyclePrincipal.getTcycle());
}

Erratum: Non pas sur le sens.

juste des gros à-coups sur l'axe. ( l'axe étant libre )

b.

Peut-être fréquence de résonance ? Essayez de bien maintenir le moteur.

Cordialement.

Pierre

Ca ne change rien, ces phénomènes semblent avoir le même couple que le couple nominal du moteur.

Le phénomène n’apparaît plus du tout lorsque je paramètre les microsteps en 1/2. Je suis cependant étonné de pas avoir trouvé des gens sur la toile qui ont un problème similaire.

Je me demande si il n'y a pas un lien avec la fréquence de découpage du DRV8825.

Benoit

Peut-être un problème de pompage par les alimentations. Sont-elles bien filtrées ?

Cordialement.

Pierre

Je viens d'essayer avec ou sans batterie de condos mais ça ne change rien. En effet la tension d’alimentation est beaucoup plus stable avec mais ça ne change rien à mon problème.

Je regardais l'axe et c'est comme si il tourne difficilement avec la tremblote.

Comment vois-tu que l'alimentation est plus stable ? quel(s) moyen(s) de mesure as-tu?

Cordialement.

Pierre

J'ai branché l'alim sur un pt diviseur 1/3 que j'a branché sur la pin ana d'un arduino nano qui renvoie dans le plotter de l'IDE.

On voit bien que la stabilité de l'alimentation s'améliore en fct du nbre de condo que je mets.

Je tiens à signaler que les problèmes sont aussi sur la carte ramps 1.4 avec ses condos.

Hier soir j'ai essayé avec une tension de 9.5V et ca ne fonctionnait pas alors qu'en théorie ca doit fonctionner. Je vais récupérer une alim 15ou24V 10A pour faire un essai.

b