Difficulté à commander un moteur pas à pas avec un DRV8825.
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Difficulté à commander un moteur pas à pas avec un DRV8825.



  1. #1
    cchristianm

    Difficulté à commander un moteur pas à pas avec un DRV8825.


    ------

    Bonjour.
    Nouveau sur le forum, donc une brève présentation : je m'intéresse à l'électronique depuis longtemps et m'y connais pas mal dans le domaine.
    Par contre, depuis peu de temps, je m'intéresse aux moteurs et à leur commande, sujet qui m'était plutôt inconnu, et si je commence à comprendre les différents aspects à prendre en compte, je bute sur certains problèmes, d'où cette discussion.

    L'application visée est la suivante : faire tourner un verre à vin d'un demi-tour, dans un temps non critique compris entre 0,2 et 0,4 s (soit entre 75 et 150 tours/mn).
    Pour cela, je souhaite utiliser un moteur pas à pas (pour la précision de positionnement) sur lequel :
    - Je fixe un moyeu sur son axe.
    - Au-dessus du moyeu, je fixe 2 disques légers en bois de 84 mm de diamètre.
    - Sur les disques en bois, je fixe le verre à vin.
    Les 2 disques en bois et le verre à vin pèsent 150 g au total.
    Voir la photo jointe (je vous rassure; ici le moteur n'est pas fixé, mais je le tiens fermement avec mes doigts quand je fais mes essais).

    Mes essais actuels se font avec :
    - Un moteur StepperOnline 14HS11-1004S (Nema 14 - 200 pas - 1 A max par phase - couple de maintien : 1,25 kg.cm).
    - Un support de driver DRV8825 de chez Pololu (fixé à "mixed decay mode").
    - Je travaille en "full step" (pas complet).
    - Le moteur est alimenté par une alimentation 12 V - 3 A.
    - Je commande les pas avec un microcontrôleur PIC12F629 de Microchip.
    - Quand j'appuie sur un bouton poussoir, le PIC12F629 délivre 100 pas de 2 ms (dans mon dernier essai).

    Ce que je constate :
    - Si je ne mets pas le verre sur les disques en bois, tout se passe bien. Je vois bien que mes disques en bois font un demi-tour.
    - Dès que je fixe le verre dessus les disques en bois, le moteur n'arrive plus à tourner d'un demi-tour; il tourne plutôt d'environ 1/4 de tour. L'ensemble fait aussi un bruit plus sourd.

    A partir de là, je ne sais plus quoi trop penser et quoi faire.
    Je me demande déjà. Le moteur choisi est-il adapté à mon application. J'aurais tendance à dire oui, vu le faible poids de la charge. Mais j'attends vos avis.
    Sinon, je me dis qu'il faudrait que je fasse des essais en "microstepping" et/ou avec une tension d'alimentation du moteur plus élevée. C'est ce que fait StepperOnline, au vu des données fournies pour leur courbe couple en fonction de la vitesse.
    Ou alors choisir un autre driver où je peux jouer sur le "decay mode".
    Mais j'aimerais quand même comprendre pourquoi ma façon de procéder ne fonctionne pas, avant de me lancer dans des manipulations au hasard.
    J'ai un peu l'impression qu'avec les moteurs pas à pas, il n'y a pas de méthode précise pour savoir quels sont les bons paramètres à appliquer. C'est un peu frustrant.
    Donc, si vous avez des idées, je suis preneur. Merci d'avance.

    -----
    Images attachées Images attachées  

  2. #2
    cchristianm

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    Je viens de faire un nouvel essai à une vitesse deux fois moindre (4 ms par pas, soit 75 tours/mn) : même problème.
    Je dois aussi préciser que quand le moteur ne tourne pas du demi-tour voulu, il peine à tourner du peu de rotation qu'il arrive à faire quand même.
    Dernière modification par cchristianm ; 01/01/2023 à 20h50.

  3. #3
    jiherve

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    bonsoir
    c'est du à la constante de temps du moteur, 3,5mH/3,5ohm = 1mS comme l'inertie du dispositif augmente il faut augmenter le couple donc il faut augmenter la durée des pas.
    https://www.motioncontroltips.com/st...chopper-drive/
    https://www.designworldonline.com/th...-motor-drives/
    JR
    l'électronique c'est pas du vaudou!

  4. #4
    cchristianm

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    Bonsoir Jiherve.
    Je comprends ce que vous m'avez répondu, j'avais déjà lu des informations similaires à celles contenues dans les liens fournis.
    Je ferai donc demain de nouveaux essais avec une durée de pas plus longue, mais il y a quelque chose qui je ne comprends pas.

    Je comprends bien qu'il y a une constante de temps qui joue sur le temps de croissance du courant dans les bobines.
    Plus on met de temps pour atteindre le courant max voulu dans une bobine du moteur, plus on met de temps pour atteindre le couple maximum, et moins il y a de temps pour conserver ce couple maximum sur un pas. Mais dans tout ce que j'ai lu, en utilisant une tension supérieure (12 V dans mon cas) au "rated voltage" du moteur (3,5 V dans mon cas), cela permet d'atteindre plus rapidement le courant max voulu, et le driver est là pour faire la gestion voulue (faire en sorte que le courant max voulu ne soit pas dépassé = "chopping"). Là c'est un peu comme si ma tension supérieure de 12 V ne servait pas à grand chose. Surtout qu'une vitesse de 75 tr/mn, c'est quand même une vitesse faible, et surtout que ma charge actuelle est légère je trouve.

    Donc à nouveau, je vais faire un essai à une vitesse inférieure à 75 tr/mn demain soir, comme demandé.

    Mais j'aimerais quand même savoir quelle serait la solution si je voulais une vitesse d'au moins 60 tr/mn avec la charge montrée sur ma photo, surtout qu'au final (j'ai oublié de le préciser), il y aura une charge supplémentaire dans le verre (90 g en plus, soit 240 g au total). Dans ce cas, c'est quoi la solution :
    - Augmenter la tension à 24 V par exemple.
    - Prendre un moteur pas à pas avec un couple plus important.
    - Utiliser un autre type de moteur que le moteur pas à pas (avec une autre gestion évidemment) car les moteurs pas à pas ne conviennent pas à mon application.
    Et en y réfléchissant, je me demande pourquoi StepperOnline recommande de faire fonctionner ses moteurs entre 200 et 600 tr/mn, alors que je n'arrive pas à faire fonctionner quelque chose correctement avec la charge voulue à 75 tr/mn. Je serais curieux de savoir quelle charge peut être entraînée par des moteurs pas à pas avec une vitesse comprise entre 200 et 600 tr/mn, suivant des références de moteur.

  5. A voir en vidéo sur Futura
  6. #5
    Forhorse

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    Sans avoir spécialement de compétences dans le domaine, je dirais qu'il y a quand même une différence entre la vitesse de croisière et le temps d’accélération.
    Là, vu le délais souhaité pour faire le 1/2 tour en question, ça fait quand même une accélération que je jugerais très brutale et qui demande donc une puissance non négligeable pour l'atteindre.
    Est-ce que la puissance théorique pour obtenir cette accélération à été calculée ? est-ce que la puissance du moteur choisit correspond à la puissance théorique calculée ?
    Tout projet flou conduit à une connerie précise !

  7. #6
    gienas
    Modérateur

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    Bonjour à tous et très bonne année 2023

    Citation Envoyé par cchristianm Voir le message
    … Je comprends bien qu'il y a une constante de temps qui joue sur le temps de croissance du courant dans les bobines.
    Plus on met de temps pour atteindre le courant max voulu dans une bobine du moteur, plus on met de temps pour atteindre le couple maximum, et moins il y a de temps pour conserver ce couple maximum sur un pas
    Attention!

    Je subodore une "erreur de raisonnement" liée au fait qu’il s’agit de moteur pas à pas.

    Comme le nom l’indique bien, le mouvement de l’arbre n’est pas continu comme sur un moteur asynchrone ou universel où le couple moteur est permanent (donc continu et constant).

    Là, il est saccadé et suivi d’un temps d’arrêt en attente de la sollicitation suivante.

    Si la sollicitation reçue n’a pas permis de sauter le pas, l’arbre revient à sa position antérieure ce qui fait qu’il n’a pas bougé, il a seulement tremblé.

    Il semble, au vu de tes expérimentations, que tu es en limite sans le verre, et le "peu" de charge du verre te fait dépasser la limite.

  8. #7
    antek

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    De plus, il pourrait y avoir un problème mécanique.
    Dû au fait qu'une force est exercée selon l'axe du moteur.
    Cette donnée est fournie par le fabricant (force longitudinale max).
    L'électronique c'est comme le violon. Soit on joue juste, soit on joue tzigane . . .

  9. #8
    Gyrocompas

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    Bonjour,

    Avec un moteur pas à pas, il ne faut jamais oublier l'inertie introduite par la 'charge' envisagée, faute de quoi, des pas seront incomplets jusqu'à ratés.
    Une accélération gérée par une rampe peut être nécessaire selon les phases accélération, plateau, arrêt.
    L'ancêtre du moteur pas à pas est le modèle Lavet que l'on trouve depuis la montre quartz analogique jusqu'aux horloges d'édifice.
    Un aimant est placé dans un champ qui s'inverse à chaque commande, produisant une rotation de 180° de l'axe.
    Associé à une démultiplication, il est très simple à commander, se trouve à un tarif abordable.

  10. #9
    cchristianm

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    Nouvel essai ce soir en allant dans la direction de "Gyrocompas", surtout qu'en parallèle, j'ai lu hier sur Internet, des sujets sur l'inertie, l'accélération et la décélération.
    J'ai donc découpé ma commande de moteur en 3 phases :
    - Une phase d'accélération linéaire sur 16 pas décroissant de 20 ms à 5 ms, avec 1 ms en moins à chaque pas suivant.
    - Une phase constante sur 68 pas de 4 ms.
    - Une phase de décélération linéaire sur 16 pas croissant de 5 ms à 20 ms, avec 1 ms en plus à chaque pas suivant.

    Ainsi, tout fonctionne correctement; mon verre avec une charge supplémentaire dedans tourne bien d'un demi-tour, à chaque fois que j'appuie sur le bouton poussoir de mon montage.

    Il me reste un problème à régler. Quand le moteur est à vide, il est assez silencieux. En charge, même avec seulement les 2 disques en bois qui sont très légers, le niveau sonore est plus élevé, comme si les vibrations du moteur se transmettaient aux disques en bois. Je voudrais que l'ensemble soit plus silencieux.
    J'envisage par exemple la solution suivante : sur le moteur, je mets juste une poulie. En parallèle, je mets une autre poulie, les 2 poulies étant reliées par une petite courroie. Et la charge, je la mets sur l'autre poulie, par sur celle entraînée par le moteur. Je me dis qu'ainsi, je devrais diminuer le bruit. Qu'en pensez-vous? Mais peut-être devrais ouvrir un autre fil de discussion pour cela.

  11. #10
    cchristianm

    Re : Difficulté à commander un moteur pas à pas avec un DRV8825.

    J'ai crié un peu trop vite "victoire".
    En effet, avec la charge prévue, et ma commande en 3 phases (accélération, phase constante, décélération), cela marche; certes avec un bruit, mais cela marche.
    Alors pour voir quel était le niveau sonore sans charge, j'ai tout enlevé sauf le petit moyeu fixé sur l'axe du moteur. Et là, cela tourne de manière erratique. Cela tourne juste un petit peu, comme si le moteur avait du mal à avancer. Et effectivement, quand j'avais fait des essais à basse vitesse constante (30 tr/mn - 10 ms par pas - sans phases d'accélération/décélération; test que je referai pour être sûr), sans charge, il me semble que j'avais le problème. En doublant la vitesse et donc en passant à 60 tr/mn (5 ms par pas), je n'avais plus ce problème. Bref, je suis sur le point d'abandonner l'utilisation d'un moteur pas à pas pour mon utilisation car il y a beaucoup trop de paramètres qui rentrent en jeu (tension d'alimentation du moteur, mode des pas (pas complet, demi-pas, "microstepping"), "decay mode", durée des pas (vitesse), moteur lui-même (il fautdrait faire des essais avec plusieurs moteurs), avec ou sans charge, vitesse minimale du moteur).

Discussions similaires

  1. [Outils/Fab/Comp] commander un moteur dc avec L298
    Par invitef8fc1962 dans le forum Électronique
    Réponses: 7
    Dernier message: 23/01/2016, 23h42
  2. [Energie] commander un moteur dc avec LMD18200
    Par invitef8fc1962 dans le forum Électronique
    Réponses: 16
    Dernier message: 20/01/2016, 19h36
  3. Commander un moteur avec un microcontrolleur
    Par invitefbf3fcff dans le forum Électronique
    Réponses: 2
    Dernier message: 25/11/2012, 08h14
  4. Commander un moteur CC avec un potentiomètre
    Par invitebd90bdd8 dans le forum Électronique
    Réponses: 4
    Dernier message: 17/09/2009, 11h00
  5. Commander Un Moteur Avec Transistor
    Par invite70772835 dans le forum Électronique
    Réponses: 5
    Dernier message: 27/03/2008, 17h54
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...